@pepperi-addons/ngx-lib 0.4.0-angular14.9 → 0.4.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/chips/chips.component.d.ts +93 -0
- package/chips/chips.component.theme.scss +58 -0
- package/chips/chips.model.d.ts +13 -0
- package/chips/chips.module.d.ts +20 -0
- package/chips/chips.service.d.ts +15 -0
- package/{plugin → chips}/index.d.ts +1 -1
- package/chips/public-api.d.ts +3 -0
- package/color/color-picker.component.d.ts +1 -1
- package/core/common/model/wapi.model.d.ts +1 -0
- package/core/common/services/addon.service.d.ts +13 -9
- package/core/common/services/utilities.service.d.ts +5 -4
- package/core/customization/customization.model.d.ts +7 -0
- package/esm2020/address/address.component.mjs +1 -1
- package/esm2020/attachment/attachment.component.mjs +1 -1
- package/esm2020/checkbox/checkbox.component.mjs +1 -1
- package/esm2020/chips/chips.component.mjs +158 -0
- package/esm2020/chips/chips.model.mjs +2 -0
- package/esm2020/chips/chips.module.mjs +81 -0
- package/esm2020/chips/chips.service.mjs +44 -0
- package/esm2020/chips/pepperi-addons-ngx-lib-chips.mjs +5 -0
- package/esm2020/chips/public-api.mjs +7 -0
- package/esm2020/color/color-picker.component.mjs +4 -4
- package/esm2020/color/color.component.mjs +1 -1
- package/esm2020/core/common/model/wapi.model.mjs +1 -1
- package/esm2020/core/common/services/addon.service.mjs +43 -38
- package/esm2020/core/common/services/utilities.service.mjs +66 -13
- package/esm2020/core/customization/customization.model.mjs +10 -1
- package/esm2020/core/http/interceptors/loader.interceptor.mjs +4 -5
- package/esm2020/core/http/services/loader.service.mjs +4 -4
- package/esm2020/date/date.component.mjs +3 -3
- package/esm2020/field-title/field-title.component.mjs +6 -3
- package/esm2020/form/field-generator.component.mjs +7 -7
- package/esm2020/form/form.component.mjs +12 -3
- package/esm2020/form/internal-button.component.mjs +1 -1
- package/esm2020/form/internal-field-generator.component.mjs +3 -3
- package/esm2020/form/internal-form.component.mjs +4 -2
- package/esm2020/form/internal-list.component.mjs +5 -2
- package/esm2020/group-buttons/group-buttons.component.mjs +8 -4
- package/esm2020/icon/icon-generated-all.model.mjs +8 -1
- package/esm2020/icon/icon-generated.model.mjs +29 -1
- package/esm2020/image/image.component.mjs +1 -1
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +3 -91
- package/esm2020/images-filmstrip/images-filmstrip.module.mjs +1 -56
- package/esm2020/link/link.component.mjs +1 -1
- package/esm2020/list/list-pager.component.mjs +1 -1
- package/esm2020/list/list.component.mjs +5 -2
- package/esm2020/list/virtual-scroller.mjs +11 -10
- package/esm2020/menu/menu.component.mjs +11 -3
- package/esm2020/page-layout/page-layout.component.mjs +3 -3
- package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +1 -1
- package/esm2020/quantity-selector/quantity-selector.component.mjs +24 -4
- package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +1 -1
- package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +1 -1
- package/esm2020/remote-loader/addon-block-loader.component.mjs +23 -5
- package/esm2020/remote-loader/addon-block-loader.service.mjs +9 -8
- package/esm2020/remote-loader/public-api.mjs +2 -1
- package/esm2020/remote-loader/remote-loader-element.component.mjs +109 -0
- package/esm2020/remote-loader/remote-loader.component.mjs +37 -59
- package/esm2020/remote-loader/remote-loader.model.mjs +1 -1
- package/esm2020/remote-loader/remote-loader.module.mjs +12 -3
- package/esm2020/remote-loader/remote-loader.service.mjs +50 -26
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +1 -1
- package/esm2020/select/select.component.mjs +33 -7
- package/esm2020/side-bar/side-bar.component.mjs +11 -27
- package/esm2020/side-bar/side-bar.module.mjs +7 -3
- package/esm2020/signature/signature.component.mjs +1 -1
- package/esm2020/size-detector/size-detector.component.mjs +2 -2
- package/esm2020/slider/slider.component.mjs +1 -1
- package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +1 -1
- package/esm2020/smart-filters/date-filter/date-filter.component.mjs +1 -1
- package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +1 -1
- package/esm2020/smart-filters/number-filter/number-filter.component.mjs +3 -3
- package/esm2020/smart-filters/text-filter/text-filter.component.mjs +1 -1
- package/esm2020/textarea/textarea.component.mjs +1 -1
- package/esm2020/textbox/textbox.component.mjs +48 -7
- package/esm2020/textbox-icon/textbox-icon.component.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +287 -0
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +4 -4
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +23 -12
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs +7 -3
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs +36 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +2 -129
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs +15 -11
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +10 -2
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +23 -3
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +249 -105
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +32 -6
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +15 -27
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +6 -6
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +49 -8
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.mjs +128 -57
- package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +287 -0
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +4 -4
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +26 -12
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs +7 -3
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs +36 -1
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +2 -129
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs +15 -11
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +10 -2
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +23 -3
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +230 -98
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +32 -6
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs +15 -27
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +6 -6
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +48 -8
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib.mjs +125 -58
- package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/field-title/field-title.component.d.ts +2 -1
- package/form/field-generator.component.d.ts +1 -1
- package/group-buttons/group-buttons.component.d.ts +2 -1
- package/icon/icon-generated-all.model.d.ts +7 -0
- package/icon/icon-generated.model.d.ts +29 -1
- package/menu/menu.component.d.ts +2 -0
- package/package.json +14 -13
- package/page-layout/page-layout.component.d.ts +1 -1
- package/quantity-selector/quantity-selector.component.d.ts +7 -1
- package/remote-loader/addon-block-loader.component.d.ts +10 -6
- package/remote-loader/addon-block-loader.service.d.ts +2 -3
- package/remote-loader/public-api.d.ts +1 -0
- package/remote-loader/remote-loader-element.component.d.ts +30 -0
- package/remote-loader/remote-loader.component.d.ts +3 -5
- package/remote-loader/remote-loader.model.d.ts +16 -11
- package/remote-loader/remote-loader.module.d.ts +8 -6
- package/remote-loader/remote-loader.service.d.ts +5 -7
- package/select/select.component.d.ts +10 -4
- package/side-bar/side-bar.component.d.ts +3 -3
- package/src/assets/i18n/en.ngx-lib.json +4 -0
- package/src/core/style/components/checkbox.scss +20 -1
- package/src/core/style/components/general.scss +5 -4
- package/textbox/textbox.component.d.ts +16 -1
- package/esm2020/plugin/pepperi-addons-ngx-lib-plugin.mjs +0 -5
- package/esm2020/plugin/plugin-proxy.component.mjs +0 -90
- package/esm2020/plugin/plugin.model.mjs +0 -2
- package/esm2020/plugin/public-api.mjs +0 -6
- package/fesm2015/pepperi-addons-ngx-lib-plugin.mjs +0 -107
- package/fesm2015/pepperi-addons-ngx-lib-plugin.mjs.map +0 -1
- package/fesm2020/pepperi-addons-ngx-lib-plugin.mjs +0 -101
- package/fesm2020/pepperi-addons-ngx-lib-plugin.mjs.map +0 -1
- package/plugin/plugin-proxy.component.d.ts +0 -22
- package/plugin/plugin.model.d.ts +0 -5
- package/plugin/public-api.d.ts +0 -2
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, Directive, Optional, Pipe, Input, HostListener, Inject, PLATFORM_ID, NgModule } from '@angular/core';
|
|
3
|
-
import {
|
|
3
|
+
import { DOCUMENT, isPlatformBrowser, CommonModule } from '@angular/common';
|
|
4
4
|
import * as i3 from '@angular/common/http';
|
|
5
5
|
import { HttpResponse, HTTP_INTERCEPTORS, HttpHeaders, HttpClientModule } from '@angular/common/http';
|
|
6
6
|
import * as i3$1 from '@angular/forms';
|
|
7
7
|
import { FormControl, Validators, ReactiveFormsModule, FormBuilder } from '@angular/forms';
|
|
8
8
|
import { throwError, BehaviorSubject, Subject } from 'rxjs';
|
|
9
|
-
import { catchError, distinctUntilChanged, finalize, tap } from 'rxjs/operators';
|
|
9
|
+
import { catchError, filter, distinctUntilChanged, finalize, tap } from 'rxjs/operators';
|
|
10
10
|
import * as i1 from '@ngx-translate/core';
|
|
11
11
|
import { TranslateModule } from '@ngx-translate/core';
|
|
12
12
|
import * as i1$1 from '@angular/platform-browser';
|
|
13
13
|
import { _isNumberValue, coerceNumberProperty } from '@angular/cdk/coercion';
|
|
14
|
+
import { createCustomElement } from '@angular/elements';
|
|
14
15
|
import { MultiTranslateHttpLoader } from 'ngx-translate-multi-http-loader';
|
|
15
16
|
import * as i6 from '@angular/router';
|
|
16
17
|
|
|
@@ -40,7 +41,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
40
41
|
class PepLoaderService {
|
|
41
42
|
constructor() {
|
|
42
43
|
this.counter = 0;
|
|
43
|
-
this.showLoaderSubject = new BehaviorSubject(
|
|
44
|
+
this.showLoaderSubject = new BehaviorSubject(undefined);
|
|
44
45
|
// Raise custom event for showing the loader.
|
|
45
46
|
this.onChanged$.subscribe((show) => {
|
|
46
47
|
this.showLoaderChanged(show);
|
|
@@ -49,7 +50,7 @@ class PepLoaderService {
|
|
|
49
50
|
get onChanged$() {
|
|
50
51
|
return this.showLoaderSubject
|
|
51
52
|
.asObservable()
|
|
52
|
-
.pipe(distinctUntilChanged());
|
|
53
|
+
.pipe(filter(v => v !== undefined), distinctUntilChanged());
|
|
53
54
|
}
|
|
54
55
|
showLoaderChanged(show) {
|
|
55
56
|
const eventData = {
|
|
@@ -89,14 +90,13 @@ class PepLoaderInterceptor {
|
|
|
89
90
|
}
|
|
90
91
|
intercept(req, next) {
|
|
91
92
|
// console.warn('LoaderInterceptor');
|
|
93
|
+
let newVer = 2;
|
|
92
94
|
const loaderService = this.injector.get(PepLoaderService);
|
|
95
|
+
// console.log('show', req.url);
|
|
93
96
|
loaderService.show();
|
|
94
97
|
return next.handle(req).pipe(
|
|
95
98
|
// delay(3000),
|
|
96
|
-
catchError((err) =>
|
|
97
|
-
loaderService.hide();
|
|
98
|
-
return throwError(err);
|
|
99
|
-
}), finalize(() => loaderService.hide()));
|
|
99
|
+
catchError((err) => throwError(err)), finalize(() => loaderService.hide()));
|
|
100
100
|
// return next.handle(req).pipe(map(event => {
|
|
101
101
|
// if (event instanceof HttpResponse) {
|
|
102
102
|
// loaderService.hide();
|
|
@@ -689,6 +689,9 @@ class PepUtilitiesService {
|
|
|
689
689
|
this.translate = translate;
|
|
690
690
|
this.culture = 'en-US';
|
|
691
691
|
this.culture = this.translate?.getBrowserCultureLang() || 'en-US';
|
|
692
|
+
// try {
|
|
693
|
+
// import(`@angular/common/locales/global/${this.culture}`);
|
|
694
|
+
// } catch {}
|
|
692
695
|
}
|
|
693
696
|
changeDecimalSeperator(value, reverse = false) {
|
|
694
697
|
// If the decimal separator is ','
|
|
@@ -729,6 +732,19 @@ class PepUtilitiesService {
|
|
|
729
732
|
str = new Array(size).join('0').concat(str);
|
|
730
733
|
return str;
|
|
731
734
|
}
|
|
735
|
+
isCurrencyShouldBeOnRight(currencySymbol) {
|
|
736
|
+
let res = false;
|
|
737
|
+
if (currencySymbol == "€" ||
|
|
738
|
+
currencySymbol == "₪" ||
|
|
739
|
+
currencySymbol == "Ft" ||
|
|
740
|
+
currencySymbol == "Kč" ||
|
|
741
|
+
currencySymbol == "руб" ||
|
|
742
|
+
currencySymbol == "zł" ||
|
|
743
|
+
currencySymbol == "kr.") {
|
|
744
|
+
res = true;
|
|
745
|
+
}
|
|
746
|
+
return res;
|
|
747
|
+
}
|
|
732
748
|
parseDate(dateStr, showTime = false) {
|
|
733
749
|
let retVal = null;
|
|
734
750
|
if (dateStr !== '') {
|
|
@@ -790,44 +806,80 @@ class PepUtilitiesService {
|
|
|
790
806
|
const div = document.createElement('DIV');
|
|
791
807
|
// div.className = 'svg-icon';
|
|
792
808
|
// Add class svg-icon
|
|
793
|
-
|
|
809
|
+
if (svgContent?.length > 0) {
|
|
810
|
+
div.innerHTML = svgContent.replace('<svg ', '<svg class="svg-icon" ');
|
|
811
|
+
}
|
|
794
812
|
return (div.querySelector('svg') ||
|
|
795
813
|
document.createElementNS('http://www.w3.org/2000/svg', 'path'));
|
|
796
814
|
}
|
|
797
|
-
formatPercent(value, digitsInfo = '1.0-2') {
|
|
815
|
+
// formatPercent(value: any, digitsInfo = '1.0-2') {
|
|
816
|
+
formatPercent(value, minFractionDigits = 0, maxFractionDigits = 2) {
|
|
817
|
+
minFractionDigits = this.coerceNumberProperty(minFractionDigits, null);
|
|
818
|
+
maxFractionDigits = this.coerceNumberProperty(maxFractionDigits, null);
|
|
798
819
|
const number = this.coerceNumberProperty(value);
|
|
799
820
|
if (number === 0) {
|
|
800
821
|
return '0%';
|
|
801
822
|
}
|
|
802
823
|
else {
|
|
803
|
-
return formatPercent(number / 100, this.culture, digitsInfo);
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
824
|
+
// return formatPercent(number / 100, this.culture, digitsInfo);
|
|
825
|
+
return new Intl.NumberFormat(this.culture, {
|
|
826
|
+
style: 'percent',
|
|
827
|
+
minimumFractionDigits: minFractionDigits || 0,
|
|
828
|
+
maximumFractionDigits: maxFractionDigits || Math.max(2, minFractionDigits),
|
|
829
|
+
}).format(number / 100);
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
// formatCurrency(value: any, currencySign = '', digitsInfo = '1.2-2') {
|
|
833
|
+
formatCurrency(value, currencySign = '', minFractionDigits = 0, maxFractionDigits = 2) {
|
|
834
|
+
minFractionDigits = this.coerceNumberProperty(minFractionDigits, null);
|
|
835
|
+
maxFractionDigits = this.coerceNumberProperty(maxFractionDigits, null);
|
|
836
|
+
let res = '';
|
|
807
837
|
const number = this.coerceNumberProperty(value);
|
|
838
|
+
const styleOptions = {
|
|
839
|
+
// style: 'currency',
|
|
840
|
+
// currencySign: currencySign,
|
|
841
|
+
minimumFractionDigits: minFractionDigits || 0,
|
|
842
|
+
maximumFractionDigits: maxFractionDigits || Math.max(2, minFractionDigits),
|
|
843
|
+
};
|
|
808
844
|
if (number === 0) {
|
|
809
|
-
return formatCurrency(0, this.culture, currencySign, undefined, digitsInfo);
|
|
845
|
+
// return formatCurrency(0, this.culture, currencySign, undefined, digitsInfo);
|
|
846
|
+
res = new Intl.NumberFormat(this.culture, styleOptions).format(0);
|
|
810
847
|
}
|
|
811
848
|
else {
|
|
812
|
-
return formatCurrency(value, this.culture, currencySign, undefined, digitsInfo);
|
|
849
|
+
// return formatCurrency(value, this.culture, currencySign, undefined, digitsInfo);
|
|
850
|
+
res = new Intl.NumberFormat(this.culture, styleOptions).format(number);
|
|
813
851
|
}
|
|
852
|
+
res = this.isCurrencyShouldBeOnRight(currencySign) ? `${res} ${currencySign}` : `${currencySign} ${res}`;
|
|
853
|
+
return res;
|
|
814
854
|
}
|
|
815
|
-
formatDecimal(value, digitsInfo = '1.2-2') {
|
|
855
|
+
// formatDecimal(value: any, digitsInfo = '1.2-2') {
|
|
856
|
+
formatDecimal(value, minFractionDigits = 2, maxFractionDigits = 2) {
|
|
857
|
+
minFractionDigits = this.coerceNumberProperty(minFractionDigits, null);
|
|
858
|
+
maxFractionDigits = this.coerceNumberProperty(maxFractionDigits, null);
|
|
816
859
|
const number = this.coerceNumberProperty(value);
|
|
817
860
|
if (number === 0) {
|
|
818
861
|
return '0';
|
|
819
862
|
}
|
|
820
863
|
else {
|
|
821
|
-
return formatNumber(value, this.culture, digitsInfo);
|
|
864
|
+
// return formatNumber(value, this.culture, digitsInfo);
|
|
865
|
+
return new Intl.NumberFormat(this.culture, {
|
|
866
|
+
minimumFractionDigits: minFractionDigits || Math.min(2, maxFractionDigits),
|
|
867
|
+
maximumFractionDigits: maxFractionDigits || Math.max(2, minFractionDigits),
|
|
868
|
+
}).format(number);
|
|
822
869
|
}
|
|
823
870
|
}
|
|
824
|
-
formatNumber(value, digitsInfo = '1.0-0') {
|
|
871
|
+
// formatNumber(value: any, digitsInfo = '1.0-0'): string {
|
|
872
|
+
formatNumber(value) {
|
|
825
873
|
const number = this.coerceNumberProperty(value);
|
|
826
874
|
if (number === 0) {
|
|
827
875
|
return '0';
|
|
828
876
|
}
|
|
829
877
|
else {
|
|
830
|
-
return formatNumber(value, this.culture, digitsInfo);
|
|
878
|
+
// return formatNumber(value, this.culture, digitsInfo);
|
|
879
|
+
return new Intl.NumberFormat(this.culture, {
|
|
880
|
+
minimumFractionDigits: 0,
|
|
881
|
+
maximumFractionDigits: 0,
|
|
882
|
+
}).format(number);
|
|
831
883
|
}
|
|
832
884
|
}
|
|
833
885
|
/**
|
|
@@ -874,7 +926,9 @@ class PepUtilitiesService {
|
|
|
874
926
|
}
|
|
875
927
|
coerceNumberProperty(value, fallbackValue = 0) {
|
|
876
928
|
// If the decimal separator is ',' change it to '.'
|
|
877
|
-
value
|
|
929
|
+
if (value?.length > 0) {
|
|
930
|
+
value = this.changeDecimalSeperator(value);
|
|
931
|
+
}
|
|
878
932
|
return coerceNumberProperty(value, fallbackValue);
|
|
879
933
|
}
|
|
880
934
|
}
|
|
@@ -2314,38 +2368,36 @@ class PepAddonService {
|
|
|
2314
2368
|
this.fileService = fileService;
|
|
2315
2369
|
this.route = route;
|
|
2316
2370
|
this.PAGES_ADDON_UUID = '50062e0c-9967-4ed4-9102-f2bc50602d41';
|
|
2317
|
-
|
|
2371
|
+
// private readonly ADDON_ASSETS_PATH_KEY = 'AddonAssetsPath';
|
|
2318
2372
|
this.ADDONS_DICTIONARY_ASSETS_PATH_KEY = 'AddonsDictionaryAssetsPath';
|
|
2319
2373
|
this.ADDON_API_RELATIVE_PATH = '/addons/api';
|
|
2320
2374
|
this.ADDON_API_ASYNC_RELATIVE_PATH = `${this.ADDON_API_RELATIVE_PATH}/async`;
|
|
2321
2375
|
//
|
|
2322
2376
|
}
|
|
2323
2377
|
get devServer() {
|
|
2324
|
-
return this.route.snapshot.queryParamMap.get('devServer') === 'true';
|
|
2378
|
+
return this.route ? this.route.snapshot.queryParamMap.get('devServer') === 'true' : false;
|
|
2325
2379
|
}
|
|
2326
2380
|
getAddonBaseRelativePath(isAsync = false) {
|
|
2327
2381
|
return isAsync
|
|
2328
2382
|
? this.ADDON_API_ASYNC_RELATIVE_PATH
|
|
2329
2383
|
: this.ADDON_API_RELATIVE_PATH;
|
|
2330
2384
|
}
|
|
2331
|
-
getAddonStaticFolder(
|
|
2332
|
-
if (
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
}
|
|
2336
|
-
|
|
2337
|
-
|
|
2338
|
-
|
|
2339
|
-
|
|
2340
|
-
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
|
|
2344
|
-
|
|
2345
|
-
|
|
2346
|
-
|
|
2347
|
-
return this.sessionService.setObject(this.ADDON_ASSETS_PATH_KEY, path);
|
|
2348
|
-
}
|
|
2385
|
+
getAddonStaticFolder(addonUUID) {
|
|
2386
|
+
// if (addonUUID.length > 0) {
|
|
2387
|
+
const addonsDictionary = this.sessionService.getObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY);
|
|
2388
|
+
return addonsDictionary && addonsDictionary[addonUUID] ? addonsDictionary[addonUUID] : '';
|
|
2389
|
+
// } else {
|
|
2390
|
+
// return this.sessionService.getObject(this.ADDON_ASSETS_PATH_KEY) || '';
|
|
2391
|
+
// }
|
|
2392
|
+
}
|
|
2393
|
+
setAddonStaticFolder(path, addonUUID) {
|
|
2394
|
+
// if (addonUUID.length > 0) {
|
|
2395
|
+
const addonsDictionary = this.sessionService.getObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY) ?? {};
|
|
2396
|
+
addonsDictionary[addonUUID] = path;
|
|
2397
|
+
this.sessionService.setObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY, addonsDictionary);
|
|
2398
|
+
// } else {
|
|
2399
|
+
// return this.sessionService.setObject(this.ADDON_ASSETS_PATH_KEY, path);
|
|
2400
|
+
// }
|
|
2349
2401
|
}
|
|
2350
2402
|
getServerBaseUrl(addonUUID, fileName = '', isAsync = false, localhostPort = 4500) {
|
|
2351
2403
|
const fileToAdd = fileName.length > 0 ? `/${fileName}` : '';
|
|
@@ -2386,8 +2438,8 @@ class PepAddonService {
|
|
|
2386
2438
|
this.loaderService.hide();
|
|
2387
2439
|
});
|
|
2388
2440
|
}
|
|
2389
|
-
getNgxLibTranslationResource(
|
|
2390
|
-
const addonStaticFolder = this.getAddonStaticFolder(
|
|
2441
|
+
getNgxLibTranslationResource(addonUUID, libName = 'ngx-lib') {
|
|
2442
|
+
const addonStaticFolder = this.getAddonStaticFolder(addonUUID);
|
|
2391
2443
|
const translationsPath = this.fileService.getAssetsTranslationsPath(addonStaticFolder, libName);
|
|
2392
2444
|
const translationsSuffix = this.fileService.getAssetsTranslationsSuffix(libName);
|
|
2393
2445
|
return {
|
|
@@ -2395,8 +2447,8 @@ class PepAddonService {
|
|
|
2395
2447
|
suffix: translationsSuffix,
|
|
2396
2448
|
};
|
|
2397
2449
|
}
|
|
2398
|
-
getAddonTranslationResource(
|
|
2399
|
-
const addonStaticFolder = this.getAddonStaticFolder(
|
|
2450
|
+
getAddonTranslationResource(addonUUID) {
|
|
2451
|
+
const addonStaticFolder = this.getAddonStaticFolder(addonUUID);
|
|
2400
2452
|
const defaultSubFolder = 'assets/i18n/';
|
|
2401
2453
|
return {
|
|
2402
2454
|
prefix: addonStaticFolder.length > 0 ? `${addonStaticFolder}${defaultSubFolder}` : `/${defaultSubFolder}`,
|
|
@@ -2409,38 +2461,44 @@ class PepAddonService {
|
|
|
2409
2461
|
getPagesAddonUUID() {
|
|
2410
2462
|
return this.PAGES_ADDON_UUID;
|
|
2411
2463
|
}
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2464
|
+
setShellRouterData(data) {
|
|
2465
|
+
const eventData = {
|
|
2466
|
+
detail: data,
|
|
2467
|
+
};
|
|
2468
|
+
const customEvent = new CustomEvent('set-router-data', eventData);
|
|
2469
|
+
window.dispatchEvent(customEvent);
|
|
2470
|
+
}
|
|
2471
|
+
defineCustomElement(elementName, component, injector) {
|
|
2472
|
+
customElements.upgrade;
|
|
2473
|
+
if (!customElements.get(elementName)) {
|
|
2474
|
+
customElements.define(elementName, createCustomElement(component, { injector: injector }));
|
|
2475
|
+
}
|
|
2420
2476
|
}
|
|
2421
|
-
static createMultiTranslateLoader(addonService, libsName = ['ngx-lib']
|
|
2477
|
+
static createMultiTranslateLoader(addonUUID, addonService, libsName = ['ngx-lib']) {
|
|
2422
2478
|
const ngxLibTranslationResources = [];
|
|
2423
2479
|
if (libsName?.length > 0) {
|
|
2424
2480
|
for (let index = 0; index < libsName.length; index++) {
|
|
2425
2481
|
const libName = libsName[index];
|
|
2426
|
-
ngxLibTranslationResources.push(addonService.getNgxLibTranslationResource(
|
|
2482
|
+
ngxLibTranslationResources.push(addonService.getNgxLibTranslationResource(addonUUID, libName));
|
|
2427
2483
|
}
|
|
2428
2484
|
}
|
|
2429
|
-
const addonTranslationResource = addonService.getAddonTranslationResource(
|
|
2485
|
+
const addonTranslationResource = addonService.getAddonTranslationResource(addonUUID);
|
|
2430
2486
|
return addonService.translateService.createMultiTranslateLoader([
|
|
2431
2487
|
...ngxLibTranslationResources,
|
|
2432
2488
|
addonTranslationResource
|
|
2433
2489
|
]);
|
|
2434
2490
|
}
|
|
2435
2491
|
}
|
|
2436
|
-
PepAddonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepAddonService, deps: [{ token: PepSessionService }, { token: PepHttpService }, { token: PepLoaderService }, { token: PepTranslateService }, { token: PepFileService }, { token: i6.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2492
|
+
PepAddonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepAddonService, deps: [{ token: PepSessionService }, { token: PepHttpService }, { token: PepLoaderService }, { token: PepTranslateService }, { token: PepFileService }, { token: i6.ActivatedRoute, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2437
2493
|
PepAddonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepAddonService, providedIn: 'root' });
|
|
2438
2494
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepAddonService, decorators: [{
|
|
2439
2495
|
type: Injectable,
|
|
2440
2496
|
args: [{
|
|
2441
2497
|
providedIn: 'root',
|
|
2442
2498
|
}]
|
|
2443
|
-
}], ctorParameters: function () { return [{ type: PepSessionService }, { type: PepHttpService }, { type: PepLoaderService }, { type: PepTranslateService }, { type: PepFileService }, { type: i6.ActivatedRoute
|
|
2499
|
+
}], ctorParameters: function () { return [{ type: PepSessionService }, { type: PepHttpService }, { type: PepLoaderService }, { type: PepTranslateService }, { type: PepFileService }, { type: i6.ActivatedRoute, decorators: [{
|
|
2500
|
+
type: Optional
|
|
2501
|
+
}] }]; } });
|
|
2444
2502
|
|
|
2445
2503
|
class PepColorService {
|
|
2446
2504
|
constructor() {
|
|
@@ -3320,11 +3378,14 @@ class PepTextboxField extends PepFieldBase {
|
|
|
3320
3378
|
super(options);
|
|
3321
3379
|
this.controlType = 'textbox';
|
|
3322
3380
|
this.type = 'text';
|
|
3381
|
+
this.digitsNumberAfterDecimalPoint = NaN;
|
|
3323
3382
|
this.type = options.type || 'text';
|
|
3383
|
+
this.regex = options.regex;
|
|
3324
3384
|
this.update(options);
|
|
3325
3385
|
}
|
|
3326
3386
|
update(options) {
|
|
3327
3387
|
super.update(options);
|
|
3388
|
+
this.digitsNumberAfterDecimalPoint = options.digitsNumberAfterDecimalPoint ?? NaN;
|
|
3328
3389
|
if (this.type === 'link') {
|
|
3329
3390
|
// DI-11292 - add changes for link field for the "Read Only display value" prop
|
|
3330
3391
|
this.formattedValue =
|
|
@@ -3350,6 +3411,9 @@ class PepTextboxField extends PepFieldBase {
|
|
|
3350
3411
|
validators.push(Validators.max(this.maxValue));
|
|
3351
3412
|
}
|
|
3352
3413
|
}
|
|
3414
|
+
if (this.type === 'text' && this.regex) {
|
|
3415
|
+
validators.push(Validators.pattern(this.regex));
|
|
3416
|
+
}
|
|
3353
3417
|
return validators;
|
|
3354
3418
|
}
|
|
3355
3419
|
}
|
|
@@ -3420,12 +3484,14 @@ class PepQuantitySelectorField extends PepFieldBase {
|
|
|
3420
3484
|
super(options);
|
|
3421
3485
|
this.controlType = 'qs';
|
|
3422
3486
|
this.notificationInfo = {};
|
|
3487
|
+
this.digitsNumberAfterDecimalPoint = NaN;
|
|
3423
3488
|
this.updatedDataCount = 0;
|
|
3424
3489
|
this.type = options.type || 'qs';
|
|
3425
3490
|
this.update(options);
|
|
3426
3491
|
}
|
|
3427
3492
|
update(options) {
|
|
3428
3493
|
super.update(options);
|
|
3494
|
+
this.digitsNumberAfterDecimalPoint = options.digitsNumberAfterDecimalPoint ?? NaN;
|
|
3429
3495
|
this.allowDecimal = options.allowDecimal || false;
|
|
3430
3496
|
this.notificationInfo = options.notificationInfo;
|
|
3431
3497
|
this.updatedDataCount += 1;
|
|
@@ -3455,6 +3521,7 @@ class PepSelectField extends PepFieldBase {
|
|
|
3455
3521
|
this.controlType = 'select';
|
|
3456
3522
|
this.options = [];
|
|
3457
3523
|
this.type = options.type || 'select';
|
|
3524
|
+
this.emptyOption = options.emptyOption;
|
|
3458
3525
|
this.update(options);
|
|
3459
3526
|
}
|
|
3460
3527
|
update(options) {
|