@wizishop/angular-components 15.1.29 → 15.1.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.
@@ -12,11 +12,11 @@ import { Subject, merge, takeUntil as takeUntil$1, startWith, fromEvent, ReplayS
12
12
  import { takeUntil, debounceTime, distinctUntilChanged, tap, filter, map, takeWhile } from 'rxjs/operators';
13
13
  import * as i1$1 from '@angular/cdk/overlay';
14
14
  import { TAB, DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, A, Z, ZERO, NINE, ENTER, hasModifierKey, ESCAPE } from '@angular/cdk/keycodes';
15
+ import * as i1$2 from '@ngx-translate/core';
16
+ import { TranslateModule } from '@ngx-translate/core';
15
17
  import { CdkTableModule } from '@angular/cdk/table';
16
18
  import { trigger, transition, style, animate, state, animation, query, stagger } from '@angular/animations';
17
19
  import { TagInputModule } from 'ngx-chips';
18
- import * as i1$2 from '@ngx-translate/core';
19
- import { TranslateModule } from '@ngx-translate/core';
20
20
  import * as i3$1 from 'ngx-autosize';
21
21
  import { AutosizeModule } from 'ngx-autosize';
22
22
  import * as i1$3 from '@angular/router';
@@ -99,57 +99,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
99
99
  args: ['keyup', ['$event']]
100
100
  }] } });
101
101
 
102
- class InputSearchComponent {
103
- constructor() {
104
- this.placeholder = '';
105
- this.withoutgrey = false;
106
- this.smallPadding = false; // todo Try to be more flexible like changing type : export type PaddingConfig = "default" | "small" | "big" | "no-padding";
107
- this.innerValue = '';
108
- this.changeDebounced = new EventEmitter(); // debounced
109
- this.onTouchedCallback = () => { };
110
- this.onChangeCallback = () => { };
111
- }
112
- get value() {
113
- return this.innerValue;
114
- }
115
- set value(v) {
116
- if (v !== this.innerValue) {
117
- this.innerValue = v;
118
- this.onChangeCallback(v);
119
- }
120
- }
121
- writeValue(value) {
122
- if (value !== this.innerValue) {
123
- this.innerValue = value;
124
- }
125
- }
126
- registerOnChange(fn) {
127
- this.onChangeCallback = fn;
128
- }
129
- registerOnTouched(fn) {
130
- this.onTouchedCallback = fn;
131
- }
132
- handleDebouncedKeyUp() {
133
- this.changeDebounced.emit(this.value);
134
- }
135
- }
136
- InputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
137
- InputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputSearchComponent, selector: "wac-input-search", inputs: { placeholder: "placeholder", withoutgrey: "withoutgrey", smallPadding: "smallPadding", id: "id" }, outputs: { changeDebounced: "changeDebounced" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]" }] });
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchComponent, decorators: [{
139
- type: Component,
140
- args: [{ selector: 'wac-input-search', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], template: "<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n" }]
141
- }], propDecorators: { placeholder: [{
142
- type: Input
143
- }], withoutgrey: [{
144
- type: Input
145
- }], smallPadding: [{
146
- type: Input
147
- }], id: [{
148
- type: Input
149
- }], changeDebounced: [{
150
- type: Output
151
- }] } });
152
-
153
102
  class DomService {
154
103
  constructor(componentFactoryResolver, appRef, injector, overlayContainer) {
155
104
  this.componentFactoryResolver = componentFactoryResolver;
@@ -1019,37 +968,164 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
1019
968
  }]
1020
969
  }] });
1021
970
 
1022
- const inOutY = trigger('inOutYAnimation', [
1023
- transition(':enter', [
1024
- style({ transform: 'scaleY(0)', height: 0, opacity: 0 }),
1025
- animate('.3s ease-out', style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }))
1026
- ]),
1027
- transition(':leave', [
1028
- style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }),
1029
- animate('.3s ease-in', style({ transform: 'scaleY(0)', height: 0, opacity: 0 }))
1030
- ])
1031
- ]);
971
+ class TooltipComponent {
972
+ constructor() {
973
+ this.tooltipText = '';
974
+ this.tooltipLink = '';
975
+ this.tooltipUrl = '#';
976
+ }
977
+ ngOnInit() {
978
+ if (this.tooltipIcon === '') {
979
+ this.tooltipIcon = 'fas fa-info-circle';
980
+ }
981
+ }
982
+ }
983
+ TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
984
+ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: TooltipComponent, selector: "wac-tooltip", inputs: { tooltipIcon: "tooltipIcon", tooltipText: "tooltipText", tooltipLink: "tooltipLink", tooltipUrl: "tooltipUrl" }, ngImport: i0, template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
985
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipComponent, decorators: [{
986
+ type: Component,
987
+ args: [{ selector: 'wac-tooltip', template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n" }]
988
+ }], ctorParameters: function () { return []; }, propDecorators: { tooltipIcon: [{
989
+ type: Input
990
+ }], tooltipText: [{
991
+ type: Input
992
+ }], tooltipLink: [{
993
+ type: Input
994
+ }], tooltipUrl: [{
995
+ type: Input
996
+ }] } });
1032
997
 
1033
- class CheckboxComponent {
1034
- set value(value) {
1035
- this._value = value;
1036
- this._onChange(value);
1037
- this._onTouched();
998
+ class TooltipModule {
999
+ }
1000
+ TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1001
+ TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, declarations: [TooltipComponent], imports: [CommonModule,
1002
+ FormsModule], exports: [TooltipComponent] });
1003
+ TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, imports: [CommonModule,
1004
+ FormsModule] });
1005
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, decorators: [{
1006
+ type: NgModule,
1007
+ args: [{
1008
+ imports: [
1009
+ CommonModule,
1010
+ FormsModule
1011
+ ],
1012
+ exports: [TooltipComponent],
1013
+ declarations: [TooltipComponent],
1014
+ providers: [],
1015
+ }]
1016
+ }] });
1017
+
1018
+ class ProgressBarComponent {
1019
+ constructor(translateService) {
1020
+ this.translateService = translateService;
1021
+ this.valueLength = null;
1022
+ this.min = null;
1023
+ this.max = null;
1038
1024
  }
1039
- get value() {
1040
- return this._value;
1025
+ progressBarClass(spanNumber = -1) {
1026
+ const length = this.valueLength;
1027
+ const min = this.min;
1028
+ const max = this.max;
1029
+ if (spanNumber === 1) {
1030
+ return {
1031
+ 'is-danger': length > max,
1032
+ 'is-success': length >= min && length <= max
1033
+ };
1034
+ }
1035
+ else if (spanNumber === 2) {
1036
+ return {
1037
+ 'is-success': length === max,
1038
+ 'is-danger': length > max
1039
+ };
1040
+ }
1041
+ else {
1042
+ return {
1043
+ 'is-warning': length < min,
1044
+ 'is-danger': length > max,
1045
+ 'is-success': length >= min && length <= max
1046
+ };
1047
+ }
1048
+ }
1049
+ progressBarSpanPosition(index) {
1050
+ const min = this.min;
1051
+ const max = this.max;
1052
+ const maxSize = this.progressBarGetMaxSize(max);
1053
+ const successMin = (min / maxSize) * 100;
1054
+ const successMax = (max / maxSize) * 100;
1055
+ return index === 1 ? successMin : successMax;
1056
+ }
1057
+ progressBarGetMaxSize(max) {
1058
+ return max + max / 4;
1059
+ }
1060
+ progressBarGetTextInfo() {
1061
+ const length = this.valueLength;
1062
+ const min = this.min;
1063
+ const max = this.max;
1064
+ if (length < min) {
1065
+ return this.translateService.instant('wac.input.progressbar.information.too.short');
1066
+ }
1067
+ else if (length > max) {
1068
+ return this.translateService.instant('wac.input.progressbar.information.too.long');
1069
+ }
1070
+ else {
1071
+ return this.translateService.instant('wac.input.progressbar.information.good');
1072
+ }
1041
1073
  }
1074
+ }
1075
+ ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProgressBarComponent, deps: [{ token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
1076
+ ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: ProgressBarComponent, isStandalone: true, selector: "wac-progress-bar", inputs: { valueLength: "valueLength", min: "min", max: "max" }, ngImport: i0, template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1077
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProgressBarComponent, decorators: [{
1078
+ type: Component,
1079
+ args: [{ selector: 'wac-progress-bar', standalone: true, imports: [CommonModule], template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n" }]
1080
+ }], ctorParameters: function () { return [{ type: i1$2.TranslateService }]; }, propDecorators: { valueLength: [{
1081
+ type: Input
1082
+ }], min: [{
1083
+ type: Input
1084
+ }], max: [{
1085
+ type: Input
1086
+ }] } });
1087
+
1088
+ class InputComponent {
1042
1089
  constructor() {
1043
1090
  this.label = '';
1044
- this.type = 'checkbox';
1045
- this.alone = false;
1046
- this.checked = false;
1047
- this.hasInput = false; // todo remove from it ! That is not a part of a checkbox
1048
- this.inputPlaceholder = ''; // todo remove from it ! That is not a part of a checkbox
1049
- this.id = ''; // todo maybe create a static property for unique id
1050
- this.whiteSpace = true;
1091
+ this.value = '';
1092
+ this.type = 'text';
1093
+ this.placeholder = ''; // todo could be handle with ng-content
1094
+ this.textInfo = null; // todo should be handle with ng-content
1095
+ this.textError = null; // todo should be handle with ng-content
1096
+ this.size = null;
1097
+ this.isNumber = null;
1098
+ this.withoutBlock = false;
1099
+ this.icon = '';
1100
+ this.big = false;
1101
+ this.medium = false;
1102
+ this.boldLabel = 'false'; // todo refacto to boolean
1103
+ this.min = null;
1104
+ this.max = null;
1105
+ this.disableMargin = false;
1106
+ this.textPrepend = null; // todo should be handle with ng-content
1107
+ this.textAppend = null; // todo should be handle with ng-content
1108
+ this.progressBar = false;
1109
+ this.extraClasses = '';
1110
+ this.keyPreventDefault = [];
1111
+ this.showTooltip = false;
1112
+ this.textTooltip = '';
1113
+ this.iconTooltip = '';
1114
+ this.urlTooltip = '';
1115
+ this.linkTooltip = '';
1116
+ this.padding = false;
1051
1117
  this.disabled = false;
1052
- this.valueChange = new EventEmitter();
1118
+ this.indication = ''; // todo should be handle with ng-content
1119
+ this.success = false;
1120
+ this.error = false;
1121
+ this.indicationLeft = false;
1122
+ this.keypressEnter = new EventEmitter();
1123
+ this.blurred = new EventEmitter();
1124
+ this.KEYPRESS_ENTER = "Enter";
1125
+ this.id = 'wz-input_' +
1126
+ Math.random()
1127
+ .toString(36)
1128
+ .substr(2, 9);
1053
1129
  this._onChange = (value) => { };
1054
1130
  this._onTouched = () => { };
1055
1131
  }
@@ -1062,26 +1138,246 @@ class CheckboxComponent {
1062
1138
  setDisabledState(isDisabled) {
1063
1139
  this.disabled = isDisabled;
1064
1140
  }
1065
- writeValue(isChecked) {
1066
- this._value = isChecked;
1141
+ writeValue(obj) {
1142
+ this.value = obj;
1067
1143
  }
1068
1144
  onChange(value) {
1069
- this._onChange(value);
1145
+ if (this._onChange) {
1146
+ this._onChange(value);
1147
+ }
1070
1148
  }
1071
- inputClick($event) {
1072
- $event.stopPropagation();
1149
+ onBlur() {
1150
+ if (this._onTouched) {
1151
+ this._onTouched();
1152
+ }
1153
+ this.blurred.next();
1073
1154
  }
1074
- }
1075
- CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1076
- CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CheckboxComponent, selector: "wac-checkbox", inputs: { label: "label", value: "value", type: "type", alone: "alone", checked: "checked", hasInput: "hasInput", inputPlaceholder: "inputPlaceholder", id: "id", name: "name", whiteSpace: "whiteSpace", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <!-- TODO handle radio styles -->\n <input\n [type]=\"type\"\n [id]=\"id\"\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [checked]=\"value\"\n (change)=\"value = !value\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [inOutY], encapsulation: i0.ViewEncapsulation.None });
1077
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CheckboxComponent, decorators: [{
1078
- type: Component,
1079
- args: [{ selector: 'wac-checkbox', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], animations: [inOutY], encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <!-- TODO handle radio styles -->\n <input\n [type]=\"type\"\n [id]=\"id\"\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [checked]=\"value\"\n (change)=\"value = !value\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n" }]
1080
- }], ctorParameters: function () { return []; }, propDecorators: { label: [{
1081
- type: Input
1082
- }], value: [{
1083
- type: Input
1084
- }], type: [{
1155
+ checkNumberValue(value) {
1156
+ if (this.min && this.min > value) {
1157
+ this.value = this.min;
1158
+ }
1159
+ if (this.max && this.max < value) {
1160
+ this.value = this.max;
1161
+ }
1162
+ }
1163
+ onFocusOut() {
1164
+ if (this.type === 'number') {
1165
+ this.checkNumberValue(this.value);
1166
+ }
1167
+ }
1168
+ keyPress(event) {
1169
+ if (this.keyPreventDefault.includes(event.key)) {
1170
+ event.preventDefault();
1171
+ }
1172
+ if (event.key === this.KEYPRESS_ENTER) {
1173
+ this.keypressEnter.next(true);
1174
+ }
1175
+ }
1176
+ }
1177
+ InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1178
+ InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputComponent, isStandalone: true, selector: "wac-input", inputs: { label: "label", value: "value", type: "type", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", size: "size", isNumber: "isNumber", withoutBlock: "withoutBlock", icon: "icon", big: "big", medium: "medium", boldLabel: "boldLabel", min: "min", max: "max", disableMargin: "disableMargin", textPrepend: "textPrepend", textAppend: "textAppend", progressBar: "progressBar", extraClasses: "extraClasses", keyPreventDefault: "keyPreventDefault", showTooltip: "showTooltip", textTooltip: "textTooltip", iconTooltip: "iconTooltip", urlTooltip: "urlTooltip", linkTooltip: "linkTooltip", padding: "padding", disabled: "disabled", indication: "indication", success: "success", error: "error", maxlength: "maxlength", minlength: "minlength", indicationLeft: "indicationLeft" }, outputs: { keypressEnter: "keypressEnter", blurred: "blurred" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], ngImport: i0, template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': (textError || error) && !disabled,\n 'is-empty': value === '',\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SharedDirectives }, { kind: "ngmodule", type: TooltipModule }, { kind: "component", type: TooltipComponent, selector: "wac-tooltip", inputs: ["tooltipIcon", "tooltipText", "tooltipLink", "tooltipUrl"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }] });
1179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputComponent, decorators: [{
1180
+ type: Component,
1181
+ args: [{ selector: 'wac-input', standalone: true, imports: [
1182
+ CommonModule,
1183
+ FormsModule,
1184
+ SharedDirectives,
1185
+ TooltipModule,
1186
+ ProgressBarComponent
1187
+ ], providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': (textError || error) && !disabled,\n 'is-empty': value === '',\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
1188
+ }], propDecorators: { label: [{
1189
+ type: Input
1190
+ }], value: [{
1191
+ type: Input
1192
+ }], type: [{
1193
+ type: Input
1194
+ }], placeholder: [{
1195
+ type: Input
1196
+ }], textInfo: [{
1197
+ type: Input
1198
+ }], textError: [{
1199
+ type: Input
1200
+ }], size: [{
1201
+ type: Input
1202
+ }], isNumber: [{
1203
+ type: Input
1204
+ }], withoutBlock: [{
1205
+ type: Input
1206
+ }], icon: [{
1207
+ type: Input
1208
+ }], big: [{
1209
+ type: Input
1210
+ }], medium: [{
1211
+ type: Input
1212
+ }], boldLabel: [{
1213
+ type: Input
1214
+ }], min: [{
1215
+ type: Input
1216
+ }], max: [{
1217
+ type: Input
1218
+ }], disableMargin: [{
1219
+ type: Input
1220
+ }], textPrepend: [{
1221
+ type: Input
1222
+ }], textAppend: [{
1223
+ type: Input
1224
+ }], progressBar: [{
1225
+ type: Input
1226
+ }], extraClasses: [{
1227
+ type: Input
1228
+ }], keyPreventDefault: [{
1229
+ type: Input
1230
+ }], showTooltip: [{
1231
+ type: Input
1232
+ }], textTooltip: [{
1233
+ type: Input
1234
+ }], iconTooltip: [{
1235
+ type: Input
1236
+ }], urlTooltip: [{
1237
+ type: Input
1238
+ }], linkTooltip: [{
1239
+ type: Input
1240
+ }], padding: [{
1241
+ type: Input
1242
+ }], disabled: [{
1243
+ type: Input
1244
+ }], indication: [{
1245
+ type: Input
1246
+ }], success: [{
1247
+ type: Input
1248
+ }], error: [{
1249
+ type: Input
1250
+ }], maxlength: [{
1251
+ type: Input
1252
+ }], minlength: [{
1253
+ type: Input
1254
+ }], indicationLeft: [{
1255
+ type: Input
1256
+ }], keypressEnter: [{
1257
+ type: Output
1258
+ }], blurred: [{
1259
+ type: Output
1260
+ }] } });
1261
+
1262
+ class InputSearchComponent {
1263
+ constructor() {
1264
+ this.placeholder = '';
1265
+ this.withoutgrey = false;
1266
+ this.smallPadding = false; // todo Try to be more flexible like changing type : export type PaddingConfig = "default" | "small" | "big" | "no-padding";
1267
+ this.innerValue = '';
1268
+ this.changeDebounced = new EventEmitter(); // debounced
1269
+ this.onTouchedCallback = () => { };
1270
+ this.onChangeCallback = () => { };
1271
+ }
1272
+ get value() {
1273
+ return this.innerValue;
1274
+ }
1275
+ set value(v) {
1276
+ if (v !== this.innerValue) {
1277
+ this.innerValue = v;
1278
+ this.onChangeCallback(v);
1279
+ }
1280
+ }
1281
+ writeValue(value) {
1282
+ if (value !== this.innerValue) {
1283
+ this.innerValue = value;
1284
+ }
1285
+ }
1286
+ registerOnChange(fn) {
1287
+ this.onChangeCallback = fn;
1288
+ }
1289
+ registerOnTouched(fn) {
1290
+ this.onTouchedCallback = fn;
1291
+ }
1292
+ handleDebouncedKeyUp() {
1293
+ this.changeDebounced.emit(this.value);
1294
+ }
1295
+ }
1296
+ InputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1297
+ InputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputSearchComponent, isStandalone: true, selector: "wac-input-search", inputs: { placeholder: "placeholder", withoutgrey: "withoutgrey", smallPadding: "smallPadding", id: "id" }, outputs: { changeDebounced: "changeDebounced" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SharedDirectives }, { kind: "directive", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]" }] });
1298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchComponent, decorators: [{
1299
+ type: Component,
1300
+ args: [{ selector: 'wac-input-search', standalone: true, imports: [
1301
+ CommonModule,
1302
+ FormsModule,
1303
+ InputComponent,
1304
+ SharedDirectives
1305
+ ], providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], template: "<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n" }]
1306
+ }], propDecorators: { placeholder: [{
1307
+ type: Input
1308
+ }], withoutgrey: [{
1309
+ type: Input
1310
+ }], smallPadding: [{
1311
+ type: Input
1312
+ }], id: [{
1313
+ type: Input
1314
+ }], changeDebounced: [{
1315
+ type: Output
1316
+ }] } });
1317
+
1318
+ const inOutY = trigger('inOutYAnimation', [
1319
+ transition(':enter', [
1320
+ style({ transform: 'scaleY(0)', height: 0, opacity: 0 }),
1321
+ animate('.3s ease-out', style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }))
1322
+ ]),
1323
+ transition(':leave', [
1324
+ style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }),
1325
+ animate('.3s ease-in', style({ transform: 'scaleY(0)', height: 0, opacity: 0 }))
1326
+ ])
1327
+ ]);
1328
+
1329
+ class CheckboxComponent {
1330
+ set value(value) {
1331
+ this._value = value;
1332
+ this._onChange(value);
1333
+ this._onTouched();
1334
+ }
1335
+ get value() {
1336
+ return this._value;
1337
+ }
1338
+ constructor() {
1339
+ this.label = '';
1340
+ this.type = 'checkbox';
1341
+ this.alone = false;
1342
+ this.checked = false;
1343
+ this.hasInput = false; // todo remove from it ! That is not a part of a checkbox
1344
+ this.inputPlaceholder = ''; // todo remove from it ! That is not a part of a checkbox
1345
+ this.id = ''; // todo maybe create a static property for unique id
1346
+ this.whiteSpace = true;
1347
+ this.disabled = false;
1348
+ this.valueChange = new EventEmitter();
1349
+ this._onChange = (value) => { };
1350
+ this._onTouched = () => { };
1351
+ }
1352
+ registerOnChange(fn) {
1353
+ this._onChange = fn;
1354
+ }
1355
+ registerOnTouched(fn) {
1356
+ this._onTouched = fn;
1357
+ }
1358
+ setDisabledState(isDisabled) {
1359
+ this.disabled = isDisabled;
1360
+ }
1361
+ writeValue(isChecked) {
1362
+ this._value = isChecked;
1363
+ }
1364
+ onChange(value) {
1365
+ this._onChange(value);
1366
+ }
1367
+ inputClick($event) {
1368
+ $event.stopPropagation();
1369
+ }
1370
+ }
1371
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1372
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CheckboxComponent, selector: "wac-checkbox", inputs: { label: "label", value: "value", type: "type", alone: "alone", checked: "checked", hasInput: "hasInput", inputPlaceholder: "inputPlaceholder", id: "id", name: "name", whiteSpace: "whiteSpace", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <!-- TODO handle radio styles -->\n <input\n [type]=\"type\"\n [id]=\"id\"\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [checked]=\"value\"\n (change)=\"value = !value\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [inOutY], encapsulation: i0.ViewEncapsulation.None });
1373
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CheckboxComponent, decorators: [{
1374
+ type: Component,
1375
+ args: [{ selector: 'wac-checkbox', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], animations: [inOutY], encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <!-- TODO handle radio styles -->\n <input\n [type]=\"type\"\n [id]=\"id\"\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [checked]=\"value\"\n (change)=\"value = !value\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n" }]
1376
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
1377
+ type: Input
1378
+ }], value: [{
1379
+ type: Input
1380
+ }], type: [{
1085
1381
  type: Input
1086
1382
  }], alone: [{
1087
1383
  type: Input
@@ -2549,365 +2845,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
2549
2845
  args: ['input']
2550
2846
  }] } });
2551
2847
 
2552
- class ProgressBarComponent {
2553
- constructor(translateService) {
2554
- this.translateService = translateService;
2555
- this.valueLength = null;
2848
+ class TextAreaComponent {
2849
+ constructor() {
2850
+ // todo simplify and improve progress bar
2851
+ this.label = '';
2852
+ this.value = '';
2853
+ this.placeholder = '';
2854
+ this.textInfo = '';
2855
+ this.textError = '';
2856
+ this.size = null;
2556
2857
  this.min = null;
2557
2858
  this.max = null;
2558
- }
2559
- progressBarClass(spanNumber = -1) {
2560
- const length = this.valueLength;
2561
- const min = this.min;
2562
- const max = this.max;
2563
- if (spanNumber === 1) {
2564
- return {
2565
- 'is-danger': length > max,
2566
- 'is-success': length >= min && length <= max
2567
- };
2568
- }
2569
- else if (spanNumber === 2) {
2570
- return {
2571
- 'is-success': length === max,
2572
- 'is-danger': length > max
2573
- };
2574
- }
2575
- else {
2576
- return {
2577
- 'is-warning': length < min,
2578
- 'is-danger': length > max,
2579
- 'is-success': length >= min && length <= max
2580
- };
2581
- }
2582
- }
2583
- progressBarSpanPosition(index) {
2584
- const min = this.min;
2585
- const max = this.max;
2586
- const maxSize = this.progressBarGetMaxSize(max);
2587
- const successMin = (min / maxSize) * 100;
2588
- const successMax = (max / maxSize) * 100;
2589
- return index === 1 ? successMin : successMax;
2590
- }
2591
- progressBarGetMaxSize(max) {
2592
- return max + max / 4;
2593
- }
2594
- progressBarGetTextInfo() {
2595
- const length = this.valueLength;
2596
- const min = this.min;
2597
- const max = this.max;
2598
- if (length < min) {
2599
- return this.translateService.instant('wac.input.progressbar.information.too.short');
2600
- }
2601
- else if (length > max) {
2602
- return this.translateService.instant('wac.input.progressbar.information.too.long');
2603
- }
2604
- else {
2605
- return this.translateService.instant('wac.input.progressbar.information.good');
2606
- }
2607
- }
2608
- }
2609
- ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProgressBarComponent, deps: [{ token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
2610
- ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: ProgressBarComponent, isStandalone: true, selector: "wac-progress-bar", inputs: { valueLength: "valueLength", min: "min", max: "max" }, ngImport: i0, template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
2611
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProgressBarComponent, decorators: [{
2612
- type: Component,
2613
- args: [{ selector: 'wac-progress-bar', standalone: true, imports: [CommonModule], template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n" }]
2614
- }], ctorParameters: function () { return [{ type: i1$2.TranslateService }]; }, propDecorators: { valueLength: [{
2615
- type: Input
2616
- }], min: [{
2617
- type: Input
2618
- }], max: [{
2619
- type: Input
2620
- }] } });
2621
-
2622
- class TextAreaComponent {
2623
- constructor() {
2624
- // todo simplify and improve progress bar
2625
- this.label = '';
2626
- this.value = '';
2627
- this.placeholder = '';
2628
- this.textInfo = '';
2629
- this.textError = '';
2630
- this.size = null;
2631
- this.min = null;
2632
- this.max = null;
2633
- this.dynamicSize = false;
2634
- this.progressBar = false;
2635
- this.disabled = false;
2636
- this.disableResize = false;
2637
- this.id = 'wac-textarea__' +
2638
- Math.random()
2639
- .toString(36)
2640
- .substr(2, 9);
2641
- }
2642
- registerOnChange(fn) {
2643
- this._onChange = fn;
2644
- }
2645
- registerOnTouched(fn) {
2646
- this._onTouched = fn;
2647
- }
2648
- setDisabledState(isDisabled) {
2649
- this.disabled = isDisabled;
2650
- }
2651
- writeValue(obj) {
2652
- this.value = obj;
2653
- }
2654
- onChange(value) {
2655
- if (this._onChange) {
2656
- this._onChange(value);
2657
- this.writeValue(value);
2658
- }
2659
- }
2660
- onBlur() {
2661
- if (this._onTouched) {
2662
- this._onTouched();
2663
- }
2664
- }
2665
- }
2666
- TextAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2667
- TextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: TextAreaComponent, isStandalone: true, selector: "wac-text-area", inputs: { label: "label", value: "value", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", error: "error", success: "success", size: "size", min: "min", max: "max", dynamicSize: "dynamicSize", progressBar: "progressBar", disabled: "disabled", maxlength: "maxlength", minlength: "minlength", disableResize: "disableResize" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], ngImport: i0, template: "<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\n <textarea\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n [autosize]=\"dynamicSize\"\n [onlyGrow]=\"true\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n ></textarea>\n <!-- Icon error -->\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }, { kind: "ngmodule", type: AutosizeModule }, { kind: "directive", type: i3$1.AutosizeDirective, selector: "[autosize]", inputs: ["minRows", "autosize", "maxRows", "onlyGrow", "useImportant"], outputs: ["resized"] }] });
2668
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TextAreaComponent, decorators: [{
2669
- type: Component,
2670
- args: [{ selector: 'wac-text-area', standalone: true, imports: [
2671
- CommonModule,
2672
- FormsModule,
2673
- ProgressBarComponent,
2674
- AutosizeModule
2675
- ], providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], template: "<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\n <textarea\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n [autosize]=\"dynamicSize\"\n [onlyGrow]=\"true\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n ></textarea>\n <!-- Icon error -->\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
2676
- }], propDecorators: { label: [{
2677
- type: Input
2678
- }], value: [{
2679
- type: Input
2680
- }], placeholder: [{
2681
- type: Input
2682
- }], textInfo: [{
2683
- type: Input
2684
- }], textError: [{
2685
- type: Input
2686
- }], error: [{
2687
- type: Input
2688
- }], success: [{
2689
- type: Input
2690
- }], size: [{
2691
- type: Input
2692
- }], min: [{
2693
- type: Input
2694
- }], max: [{
2695
- type: Input
2696
- }], dynamicSize: [{
2697
- type: Input
2698
- }], progressBar: [{
2699
- type: Input
2700
- }], disabled: [{
2701
- type: Input
2702
- }], maxlength: [{
2703
- type: Input
2704
- }], minlength: [{
2705
- type: Input
2706
- }], disableResize: [{
2707
- type: Input
2708
- }] } });
2709
-
2710
- class H1Component {
2711
- constructor() {
2712
- this.annotation = '';
2713
- this.withImg = false;
2714
- this.center = false;
2715
- this.color = null;
2716
- }
2717
- }
2718
- H1Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H1Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2719
- H1Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H1Component, selector: "wac-h1", inputs: { annotation: "annotation", withImg: "withImg", center: "center", color: "color" }, ngImport: i0, template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\"><ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small></h1>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2720
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H1Component, decorators: [{
2721
- type: Component,
2722
- args: [{ selector: 'wac-h1', template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\"><ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small></h1>\n" }]
2723
- }], ctorParameters: function () { return []; }, propDecorators: { annotation: [{
2724
- type: Input
2725
- }], withImg: [{
2726
- type: Input
2727
- }], center: [{
2728
- type: Input
2729
- }], color: [{
2730
- type: Input
2731
- }] } });
2732
-
2733
- class H2Component {
2734
- constructor() { }
2735
- ngOnInit() { }
2736
- }
2737
- H2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2738
- H2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H2Component, selector: "wac-h2", ngImport: i0, template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" });
2739
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H2Component, decorators: [{
2740
- type: Component,
2741
- args: [{ selector: 'wac-h2', template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" }]
2742
- }], ctorParameters: function () { return []; } });
2743
-
2744
- class H3Component {
2745
- constructor() {
2746
- this.grey = false;
2747
- }
2748
- ngOnInit() { }
2749
- }
2750
- H3Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H3Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2751
- H3Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H3Component, selector: "wac-h3", inputs: { grey: "grey" }, ngImport: i0, template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2752
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H3Component, decorators: [{
2753
- type: Component,
2754
- args: [{ selector: 'wac-h3', template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n" }]
2755
- }], ctorParameters: function () { return []; }, propDecorators: { grey: [{
2756
- type: Input
2757
- }] } });
2758
-
2759
- class HistoryService {
2760
- constructor(router) {
2761
- this.router = router;
2762
- this.history = [];
2763
- }
2764
- registerHistory() {
2765
- this.router.events.subscribe((event) => {
2766
- if (event instanceof NavigationStart) {
2767
- if (this.history.length > 0 && this.history[this.history.length - 1] === event.url.split('?')[0]) {
2768
- return;
2769
- }
2770
- this.history.push(event.url.split('?')[0]);
2771
- }
2772
- });
2773
- }
2774
- back(link) {
2775
- this.history.pop();
2776
- if (this.history.length > 0) {
2777
- const lastlink = this.history[this.history.length - 1];
2778
- this.router.navigate(lastlink.split('/'));
2779
- }
2780
- else {
2781
- this.redirect(link);
2782
- }
2783
- }
2784
- redirect(link) {
2785
- if (link[0].indexOf('http') !== -1) {
2786
- this.redirectToExternalLink(link);
2787
- }
2788
- else {
2789
- this.redirectToInternalLink(link);
2790
- }
2791
- }
2792
- redirectToExternalLink(link) {
2793
- window.location.href = link[0];
2794
- }
2795
- redirectToInternalLink(link) {
2796
- this.router.navigate(link);
2797
- }
2798
- }
2799
- HistoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
2800
- HistoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, providedIn: 'root' });
2801
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, decorators: [{
2802
- type: Injectable,
2803
- args: [{
2804
- providedIn: 'root'
2805
- }]
2806
- }], ctorParameters: function () { return [{ type: i1$3.Router }]; } });
2807
-
2808
- class HeaderPageComponent {
2809
- constructor(historyService, location) {
2810
- this.historyService = historyService;
2811
- this.location = location;
2812
- this.withImg = false;
2813
- this.center = false;
2814
- this.useHistory = false;
2815
- }
2816
- back() {
2817
- if (!this.useHistory) {
2818
- this.historyService.redirect(this.linkBack);
2819
- return;
2820
- }
2821
- this.historyService.back(this.linkBack);
2822
- }
2823
- }
2824
- HeaderPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HeaderPageComponent, deps: [{ token: HistoryService }, { token: i1.Location }], target: i0.ɵɵFactoryTarget.Component });
2825
- HeaderPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: HeaderPageComponent, selector: "wac-header-page", inputs: { title: "title", linkBack: "linkBack", withImg: "withImg", center: "center", useHistory: "useHistory" }, ngImport: i0, template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\n <a *ngIf=\"linkBack\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: H1Component, selector: "wac-h1", inputs: ["annotation", "withImg", "center", "color"] }] });
2826
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HeaderPageComponent, decorators: [{
2827
- type: Component,
2828
- args: [{ selector: 'wac-header-page', template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\n <a *ngIf=\"linkBack\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n" }]
2829
- }], ctorParameters: function () { return [{ type: HistoryService }, { type: i1.Location }]; }, propDecorators: { title: [{
2830
- type: Input
2831
- }], linkBack: [{
2832
- type: Input
2833
- }], withImg: [{
2834
- type: Input
2835
- }], center: [{
2836
- type: Input
2837
- }], useHistory: [{
2838
- type: Input
2839
- }] } });
2840
-
2841
- class TooltipComponent {
2842
- constructor() {
2843
- this.tooltipText = '';
2844
- this.tooltipLink = '';
2845
- this.tooltipUrl = '#';
2846
- }
2847
- ngOnInit() {
2848
- if (this.tooltipIcon === '') {
2849
- this.tooltipIcon = 'fas fa-info-circle';
2850
- }
2851
- }
2852
- }
2853
- TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2854
- TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: TooltipComponent, selector: "wac-tooltip", inputs: { tooltipIcon: "tooltipIcon", tooltipText: "tooltipText", tooltipLink: "tooltipLink", tooltipUrl: "tooltipUrl" }, ngImport: i0, template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2855
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipComponent, decorators: [{
2856
- type: Component,
2857
- args: [{ selector: 'wac-tooltip', template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n" }]
2858
- }], ctorParameters: function () { return []; }, propDecorators: { tooltipIcon: [{
2859
- type: Input
2860
- }], tooltipText: [{
2861
- type: Input
2862
- }], tooltipLink: [{
2863
- type: Input
2864
- }], tooltipUrl: [{
2865
- type: Input
2866
- }] } });
2867
-
2868
- class InputComponent {
2869
- constructor() {
2870
- this.label = '';
2871
- this.value = '';
2872
- this.type = 'text';
2873
- this.placeholder = ''; // todo could be handle with ng-content
2874
- this.textInfo = null; // todo should be handle with ng-content
2875
- this.textError = null; // todo should be handle with ng-content
2876
- this.size = null;
2877
- this.isNumber = null;
2878
- this.withoutBlock = false;
2879
- this.icon = '';
2880
- this.big = false;
2881
- this.medium = false;
2882
- this.boldLabel = 'false'; // todo refacto to boolean
2883
- this.min = null;
2884
- this.max = null;
2885
- this.disableMargin = false;
2886
- this.textPrepend = null; // todo should be handle with ng-content
2887
- this.textAppend = null; // todo should be handle with ng-content
2888
- this.progressBar = false;
2889
- this.extraClasses = '';
2890
- this.keyPreventDefault = [];
2891
- this.showTooltip = false;
2892
- this.textTooltip = '';
2893
- this.iconTooltip = '';
2894
- this.urlTooltip = '';
2895
- this.linkTooltip = '';
2896
- this.padding = false;
2897
- this.disabled = false;
2898
- this.indication = ''; // todo should be handle with ng-content
2899
- this.success = false;
2900
- this.error = false;
2901
- this.indicationLeft = false;
2902
- this.keypressEnter = new EventEmitter();
2903
- this.blurred = new EventEmitter();
2904
- this.KEYPRESS_ENTER = "Enter";
2905
- this.id = 'wz-input_' +
2906
- Math.random()
2907
- .toString(36)
2908
- .substr(2, 9);
2909
- this._onChange = (value) => { };
2910
- this._onTouched = () => { };
2859
+ this.dynamicSize = false;
2860
+ this.progressBar = false;
2861
+ this.disabled = false;
2862
+ this.disableResize = false;
2863
+ this.id = 'wac-textarea__' +
2864
+ Math.random()
2865
+ .toString(36)
2866
+ .substr(2, 9);
2911
2867
  }
2912
2868
  registerOnChange(fn) {
2913
2869
  this._onChange = fn;
@@ -2924,113 +2880,188 @@ class InputComponent {
2924
2880
  onChange(value) {
2925
2881
  if (this._onChange) {
2926
2882
  this._onChange(value);
2883
+ this.writeValue(value);
2927
2884
  }
2928
2885
  }
2929
- onBlur() {
2930
- if (this._onTouched) {
2931
- this._onTouched();
2932
- }
2933
- this.blurred.next();
2934
- }
2935
- checkNumberValue(value) {
2936
- if (this.min && this.min > value) {
2937
- this.value = this.min;
2938
- }
2939
- if (this.max && this.max < value) {
2940
- this.value = this.max;
2941
- }
2942
- }
2943
- onFocusOut() {
2944
- if (this.type === 'number') {
2945
- this.checkNumberValue(this.value);
2946
- }
2947
- }
2948
- keyPress(event) {
2949
- if (this.keyPreventDefault.includes(event.key)) {
2950
- event.preventDefault();
2951
- }
2952
- if (event.key === this.KEYPRESS_ENTER) {
2953
- this.keypressEnter.next(true);
2886
+ onBlur() {
2887
+ if (this._onTouched) {
2888
+ this._onTouched();
2954
2889
  }
2955
2890
  }
2956
2891
  }
2957
- InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2958
- InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputComponent, selector: "wac-input", inputs: { label: "label", value: "value", type: "type", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", size: "size", isNumber: "isNumber", withoutBlock: "withoutBlock", icon: "icon", big: "big", medium: "medium", boldLabel: "boldLabel", min: "min", max: "max", disableMargin: "disableMargin", textPrepend: "textPrepend", textAppend: "textAppend", progressBar: "progressBar", extraClasses: "extraClasses", keyPreventDefault: "keyPreventDefault", showTooltip: "showTooltip", textTooltip: "textTooltip", iconTooltip: "iconTooltip", urlTooltip: "urlTooltip", linkTooltip: "linkTooltip", padding: "padding", disabled: "disabled", indication: "indication", success: "success", error: "error", maxlength: "maxlength", minlength: "minlength", indicationLeft: "indicationLeft" }, outputs: { keypressEnter: "keypressEnter", blurred: "blurred" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], ngImport: i0, template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': (textError || error) && !disabled,\n 'is-empty': value === '',\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TooltipComponent, selector: "wac-tooltip", inputs: ["tooltipIcon", "tooltipText", "tooltipLink", "tooltipUrl"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }] });
2959
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputComponent, decorators: [{
2892
+ TextAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2893
+ TextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: TextAreaComponent, isStandalone: true, selector: "wac-text-area", inputs: { label: "label", value: "value", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", error: "error", success: "success", size: "size", min: "min", max: "max", dynamicSize: "dynamicSize", progressBar: "progressBar", disabled: "disabled", maxlength: "maxlength", minlength: "minlength", disableResize: "disableResize" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], ngImport: i0, template: "<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\n <textarea\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n [autosize]=\"dynamicSize\"\n [onlyGrow]=\"true\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n ></textarea>\n <!-- Icon error -->\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }, { kind: "ngmodule", type: AutosizeModule }, { kind: "directive", type: i3$1.AutosizeDirective, selector: "[autosize]", inputs: ["minRows", "autosize", "maxRows", "onlyGrow", "useImportant"], outputs: ["resized"] }] });
2894
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TextAreaComponent, decorators: [{
2960
2895
  type: Component,
2961
- args: [{ selector: 'wac-input', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': (textError || error) && !disabled,\n 'is-empty': value === '',\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
2896
+ args: [{ selector: 'wac-text-area', standalone: true, imports: [
2897
+ CommonModule,
2898
+ FormsModule,
2899
+ ProgressBarComponent,
2900
+ AutosizeModule
2901
+ ], providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], template: "<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\n <textarea\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n [autosize]=\"dynamicSize\"\n [onlyGrow]=\"true\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n ></textarea>\n <!-- Icon error -->\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
2962
2902
  }], propDecorators: { label: [{
2963
2903
  type: Input
2964
2904
  }], value: [{
2965
2905
  type: Input
2966
- }], type: [{
2967
- type: Input
2968
2906
  }], placeholder: [{
2969
2907
  type: Input
2970
2908
  }], textInfo: [{
2971
2909
  type: Input
2972
2910
  }], textError: [{
2973
2911
  type: Input
2974
- }], size: [{
2975
- type: Input
2976
- }], isNumber: [{
2977
- type: Input
2978
- }], withoutBlock: [{
2979
- type: Input
2980
- }], icon: [{
2981
- type: Input
2982
- }], big: [{
2912
+ }], error: [{
2983
2913
  type: Input
2984
- }], medium: [{
2914
+ }], success: [{
2985
2915
  type: Input
2986
- }], boldLabel: [{
2916
+ }], size: [{
2987
2917
  type: Input
2988
2918
  }], min: [{
2989
2919
  type: Input
2990
2920
  }], max: [{
2991
2921
  type: Input
2992
- }], disableMargin: [{
2993
- type: Input
2994
- }], textPrepend: [{
2995
- type: Input
2996
- }], textAppend: [{
2922
+ }], dynamicSize: [{
2997
2923
  type: Input
2998
2924
  }], progressBar: [{
2999
2925
  type: Input
3000
- }], extraClasses: [{
3001
- type: Input
3002
- }], keyPreventDefault: [{
2926
+ }], disabled: [{
3003
2927
  type: Input
3004
- }], showTooltip: [{
2928
+ }], maxlength: [{
3005
2929
  type: Input
3006
- }], textTooltip: [{
2930
+ }], minlength: [{
3007
2931
  type: Input
3008
- }], iconTooltip: [{
2932
+ }], disableResize: [{
3009
2933
  type: Input
3010
- }], urlTooltip: [{
2934
+ }] } });
2935
+
2936
+ class H1Component {
2937
+ constructor() {
2938
+ this.annotation = '';
2939
+ this.withImg = false;
2940
+ this.center = false;
2941
+ this.color = null;
2942
+ }
2943
+ }
2944
+ H1Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H1Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2945
+ H1Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H1Component, selector: "wac-h1", inputs: { annotation: "annotation", withImg: "withImg", center: "center", color: "color" }, ngImport: i0, template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\"><ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small></h1>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2946
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H1Component, decorators: [{
2947
+ type: Component,
2948
+ args: [{ selector: 'wac-h1', template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\"><ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small></h1>\n" }]
2949
+ }], ctorParameters: function () { return []; }, propDecorators: { annotation: [{
3011
2950
  type: Input
3012
- }], linkTooltip: [{
2951
+ }], withImg: [{
3013
2952
  type: Input
3014
- }], padding: [{
2953
+ }], center: [{
3015
2954
  type: Input
3016
- }], disabled: [{
2955
+ }], color: [{
3017
2956
  type: Input
3018
- }], indication: [{
2957
+ }] } });
2958
+
2959
+ class H2Component {
2960
+ constructor() { }
2961
+ ngOnInit() { }
2962
+ }
2963
+ H2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2964
+ H2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H2Component, selector: "wac-h2", ngImport: i0, template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" });
2965
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H2Component, decorators: [{
2966
+ type: Component,
2967
+ args: [{ selector: 'wac-h2', template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" }]
2968
+ }], ctorParameters: function () { return []; } });
2969
+
2970
+ class H3Component {
2971
+ constructor() {
2972
+ this.grey = false;
2973
+ }
2974
+ ngOnInit() { }
2975
+ }
2976
+ H3Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H3Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2977
+ H3Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: H3Component, selector: "wac-h3", inputs: { grey: "grey" }, ngImport: i0, template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2978
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: H3Component, decorators: [{
2979
+ type: Component,
2980
+ args: [{ selector: 'wac-h3', template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n" }]
2981
+ }], ctorParameters: function () { return []; }, propDecorators: { grey: [{
3019
2982
  type: Input
3020
- }], success: [{
2983
+ }] } });
2984
+
2985
+ class HistoryService {
2986
+ constructor(router) {
2987
+ this.router = router;
2988
+ this.history = [];
2989
+ }
2990
+ registerHistory() {
2991
+ this.router.events.subscribe((event) => {
2992
+ if (event instanceof NavigationStart) {
2993
+ if (this.history.length > 0 && this.history[this.history.length - 1] === event.url.split('?')[0]) {
2994
+ return;
2995
+ }
2996
+ this.history.push(event.url.split('?')[0]);
2997
+ }
2998
+ });
2999
+ }
3000
+ back(link) {
3001
+ this.history.pop();
3002
+ if (this.history.length > 0) {
3003
+ const lastlink = this.history[this.history.length - 1];
3004
+ this.router.navigate(lastlink.split('/'));
3005
+ }
3006
+ else {
3007
+ this.redirect(link);
3008
+ }
3009
+ }
3010
+ redirect(link) {
3011
+ if (link[0].indexOf('http') !== -1) {
3012
+ this.redirectToExternalLink(link);
3013
+ }
3014
+ else {
3015
+ this.redirectToInternalLink(link);
3016
+ }
3017
+ }
3018
+ redirectToExternalLink(link) {
3019
+ window.location.href = link[0];
3020
+ }
3021
+ redirectToInternalLink(link) {
3022
+ this.router.navigate(link);
3023
+ }
3024
+ }
3025
+ HistoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
3026
+ HistoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, providedIn: 'root' });
3027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HistoryService, decorators: [{
3028
+ type: Injectable,
3029
+ args: [{
3030
+ providedIn: 'root'
3031
+ }]
3032
+ }], ctorParameters: function () { return [{ type: i1$3.Router }]; } });
3033
+
3034
+ class HeaderPageComponent {
3035
+ constructor(historyService, location) {
3036
+ this.historyService = historyService;
3037
+ this.location = location;
3038
+ this.withImg = false;
3039
+ this.center = false;
3040
+ this.useHistory = false;
3041
+ }
3042
+ back() {
3043
+ if (!this.useHistory) {
3044
+ this.historyService.redirect(this.linkBack);
3045
+ return;
3046
+ }
3047
+ this.historyService.back(this.linkBack);
3048
+ }
3049
+ }
3050
+ HeaderPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HeaderPageComponent, deps: [{ token: HistoryService }, { token: i1.Location }], target: i0.ɵɵFactoryTarget.Component });
3051
+ HeaderPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: HeaderPageComponent, selector: "wac-header-page", inputs: { title: "title", linkBack: "linkBack", withImg: "withImg", center: "center", useHistory: "useHistory" }, ngImport: i0, template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\n <a *ngIf=\"linkBack\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: H1Component, selector: "wac-h1", inputs: ["annotation", "withImg", "center", "color"] }] });
3052
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: HeaderPageComponent, decorators: [{
3053
+ type: Component,
3054
+ args: [{ selector: 'wac-header-page', template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\n <a *ngIf=\"linkBack\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n" }]
3055
+ }], ctorParameters: function () { return [{ type: HistoryService }, { type: i1.Location }]; }, propDecorators: { title: [{
3021
3056
  type: Input
3022
- }], error: [{
3057
+ }], linkBack: [{
3023
3058
  type: Input
3024
- }], maxlength: [{
3059
+ }], withImg: [{
3025
3060
  type: Input
3026
- }], minlength: [{
3061
+ }], center: [{
3027
3062
  type: Input
3028
- }], indicationLeft: [{
3063
+ }], useHistory: [{
3029
3064
  type: Input
3030
- }], keypressEnter: [{
3031
- type: Output
3032
- }], blurred: [{
3033
- type: Output
3034
3065
  }] } });
3035
3066
 
3036
3067
  class LinkComponent {
@@ -3262,81 +3293,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
3262
3293
  }]
3263
3294
  }] });
3264
3295
 
3265
- class TooltipModule {
3266
- }
3267
- TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3268
- TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, declarations: [TooltipComponent], imports: [CommonModule,
3269
- FormsModule], exports: [TooltipComponent] });
3270
- TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, imports: [CommonModule,
3271
- FormsModule] });
3272
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TooltipModule, decorators: [{
3273
- type: NgModule,
3274
- args: [{
3275
- imports: [
3276
- CommonModule,
3277
- FormsModule
3278
- ],
3279
- exports: [TooltipComponent],
3280
- declarations: [TooltipComponent],
3281
- providers: [],
3282
- }]
3283
- }] });
3284
-
3285
- class InputModule {
3286
- }
3287
- InputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3288
- InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: InputModule, declarations: [InputComponent], imports: [CommonModule,
3289
- FormsModule,
3290
- SharedDirectives,
3291
- TooltipModule,
3292
- ProgressBarComponent], exports: [InputComponent] });
3293
- InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputModule, imports: [CommonModule,
3294
- FormsModule,
3295
- SharedDirectives,
3296
- TooltipModule,
3297
- ProgressBarComponent] });
3298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputModule, decorators: [{
3299
- type: NgModule,
3300
- args: [{
3301
- imports: [
3302
- CommonModule,
3303
- FormsModule,
3304
- SharedDirectives,
3305
- TooltipModule,
3306
- ProgressBarComponent
3307
- ],
3308
- exports: [InputComponent],
3309
- declarations: [InputComponent],
3310
- providers: [],
3311
- }]
3312
- }] });
3313
-
3314
- class InputSearchModule {
3315
- }
3316
- InputSearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3317
- InputSearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: InputSearchModule, declarations: [InputSearchComponent], imports: [CommonModule,
3318
- FormsModule,
3319
- InputModule,
3320
- SharedDirectives], exports: [InputSearchComponent] });
3321
- InputSearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchModule, imports: [CommonModule,
3322
- FormsModule,
3323
- InputModule,
3324
- SharedDirectives] });
3325
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputSearchModule, decorators: [{
3326
- type: NgModule,
3327
- args: [{
3328
- imports: [
3329
- CommonModule,
3330
- FormsModule,
3331
- InputModule,
3332
- SharedDirectives
3333
- ],
3334
- exports: [InputSearchComponent],
3335
- declarations: [InputSearchComponent],
3336
- providers: [],
3337
- }]
3338
- }] });
3339
-
3340
3296
  class TableColumn {
3341
3297
  constructor(currentCell, renderer, document) {
3342
3298
  this.currentCell = currentCell;
@@ -3579,13 +3535,13 @@ class TableModule {
3579
3535
  TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3580
3536
  TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: TableModule, declarations: [TableComponent, TableColumn, CheckBoxRow, TableColumnHeader, TableRow], imports: [CommonModule,
3581
3537
  FormsModule,
3582
- InputSearchModule,
3538
+ InputSearchComponent,
3583
3539
  LoaderComponent,
3584
3540
  CheckboxModule,
3585
3541
  PaginationModule], exports: [TableComponent, TableColumn, CheckBoxRow, TableColumnHeader, TableRow] });
3586
3542
  TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TableModule, imports: [CommonModule,
3587
3543
  FormsModule,
3588
- InputSearchModule,
3544
+ InputSearchComponent,
3589
3545
  LoaderComponent,
3590
3546
  CheckboxModule,
3591
3547
  PaginationModule] });
@@ -3595,7 +3551,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
3595
3551
  imports: [
3596
3552
  CommonModule,
3597
3553
  FormsModule,
3598
- InputSearchModule,
3554
+ InputSearchComponent,
3599
3555
  LoaderComponent,
3600
3556
  CheckboxModule,
3601
3557
  PaginationModule
@@ -3962,10 +3918,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
3962
3918
  class InputWithSelectComponent {
3963
3919
  }
3964
3920
  InputWithSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputWithSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3965
- InputWithSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputWithSelectComponent, selector: "wac-input-with-select", queries: [{ propertyName: "label", first: true, predicate: LabelComponent, descendants: true }], ngImport: i0, template: "<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div class=\"wac-input-with-select\">\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\">\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"wac-select\"></ng-content>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <ng-content select=\"[text]\"></ng-content>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
3921
+ InputWithSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: InputWithSelectComponent, isStandalone: true, selector: "wac-input-with-select", queries: [{ propertyName: "label", first: true, predicate: LabelComponent, descendants: true }], ngImport: i0, template: "<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div class=\"wac-input-with-select\">\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\">\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"wac-select\"></ng-content>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <ng-content select=\"[text]\"></ng-content>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
3966
3922
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: InputWithSelectComponent, decorators: [{
3967
3923
  type: Component,
3968
- args: [{ selector: 'wac-input-with-select', encapsulation: ViewEncapsulation.None, template: "<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div class=\"wac-input-with-select\">\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\">\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"wac-select\"></ng-content>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <ng-content select=\"[text]\"></ng-content>\n </div>\n </div>\n</div>\n" }]
3924
+ args: [{ selector: 'wac-input-with-select', encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule], template: "<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div class=\"wac-input-with-select\">\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\">\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"wac-select\"></ng-content>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <ng-content select=\"[text]\"></ng-content>\n </div>\n </div>\n</div>\n" }]
3969
3925
  }], propDecorators: { label: [{
3970
3926
  type: ContentChild,
3971
3927
  args: [LabelComponent]
@@ -6004,7 +5960,6 @@ const components = [
6004
5960
  SelectInTextComponent,
6005
5961
  MultipleSearchComponent,
6006
5962
  MultipleSearchPlusComponent,
6007
- InputWithSelectComponent,
6008
5963
  PopinComponent,
6009
5964
  FreePopinComponent,
6010
5965
  BlockTitleLegacyComponent,
@@ -6044,8 +5999,6 @@ const exportsFromModule = [
6044
5999
  CheckBoxRow,
6045
6000
  TableColumnHeader,
6046
6001
  TableRow,
6047
- InputSearchComponent,
6048
- InputComponent,
6049
6002
  TooltipComponent,
6050
6003
  CheckboxComponent,
6051
6004
  LoaderComponent,
@@ -6059,6 +6012,9 @@ const standaloneComponents = [
6059
6012
  LoaderComponent,
6060
6013
  TextAreaComponent,
6061
6014
  ProgressBarComponent,
6015
+ InputComponent,
6016
+ InputSearchComponent,
6017
+ InputWithSelectComponent,
6062
6018
  ];
6063
6019
  class SharedComponentsModule {
6064
6020
  }
@@ -6091,7 +6047,6 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6091
6047
  SelectInTextComponent,
6092
6048
  MultipleSearchComponent,
6093
6049
  MultipleSearchPlusComponent,
6094
- InputWithSelectComponent,
6095
6050
  PopinComponent,
6096
6051
  FreePopinComponent,
6097
6052
  BlockTitleLegacyComponent,
@@ -6132,10 +6087,8 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6132
6087
  DragDropModule,
6133
6088
  PaginationModule,
6134
6089
  TableModule,
6135
- InputSearchModule,
6136
6090
  TooltipModule,
6137
6091
  CheckboxModule,
6138
- InputModule,
6139
6092
  PerfectScrollbarModule,
6140
6093
  AlertPopupModule,
6141
6094
  RouterModule,
@@ -6148,7 +6101,10 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6148
6101
  BlockComponent,
6149
6102
  LoaderComponent,
6150
6103
  TextAreaComponent,
6151
- ProgressBarComponent], exports: [TagComponent,
6104
+ ProgressBarComponent,
6105
+ InputComponent,
6106
+ InputSearchComponent,
6107
+ InputWithSelectComponent], exports: [TagComponent,
6152
6108
  ButtonComponent,
6153
6109
  InfoComponent,
6154
6110
  SettingsComponent,
@@ -6176,7 +6132,6 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6176
6132
  SelectInTextComponent,
6177
6133
  MultipleSearchComponent,
6178
6134
  MultipleSearchPlusComponent,
6179
- InputWithSelectComponent,
6180
6135
  PopinComponent,
6181
6136
  FreePopinComponent,
6182
6137
  BlockTitleLegacyComponent,
@@ -6213,8 +6168,6 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6213
6168
  CheckBoxRow,
6214
6169
  TableColumnHeader,
6215
6170
  TableRow,
6216
- InputSearchComponent,
6217
- InputComponent,
6218
6171
  TooltipComponent,
6219
6172
  CheckboxComponent,
6220
6173
  LoaderComponent,
@@ -6223,7 +6176,10 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6223
6176
  BlockComponent,
6224
6177
  LoaderComponent,
6225
6178
  TextAreaComponent,
6226
- ProgressBarComponent] });
6179
+ ProgressBarComponent,
6180
+ InputComponent,
6181
+ InputSearchComponent,
6182
+ InputWithSelectComponent] });
6227
6183
  SharedComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: SharedComponentsModule, imports: [CommonModule,
6228
6184
  FormsModule,
6229
6185
  NwbAllModule,
@@ -6236,10 +6192,8 @@ SharedComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
6236
6192
  DragDropModule,
6237
6193
  PaginationModule,
6238
6194
  TableModule,
6239
- InputSearchModule,
6240
6195
  TooltipModule,
6241
6196
  CheckboxModule,
6242
- InputModule,
6243
6197
  PerfectScrollbarModule,
6244
6198
  AlertPopupModule,
6245
6199
  RouterModule,
@@ -6264,10 +6218,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
6264
6218
  DragDropModule,
6265
6219
  PaginationModule,
6266
6220
  TableModule,
6267
- InputSearchModule,
6268
6221
  TooltipModule,
6269
6222
  CheckboxModule,
6270
- InputModule,
6271
6223
  PerfectScrollbarModule,
6272
6224
  AlertPopupModule,
6273
6225
  RouterModule,