@mediusinc/mng-commons 0.4.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/api/services/api.abstract.service.mjs +15 -4
- package/esm2020/lib/api/services/crud-api.abstract.service.mjs +3 -3
- package/esm2020/lib/components/action/action.component.mjs +52 -8
- package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +25 -1
- package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +12 -3
- package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +26 -1
- package/esm2020/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +17 -0
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +8 -4
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +3 -3
- package/esm2020/lib/components/form/formly/fields/index.mjs +2 -1
- package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
- package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +3 -3
- package/esm2020/lib/config/formly.config.mjs +7 -2
- package/esm2020/lib/config/models/mng-config.model.mjs +1 -1
- package/esm2020/lib/descriptors/action.descriptor.mjs +34 -6
- package/esm2020/lib/descriptors/field.descriptor.mjs +48 -10
- package/esm2020/lib/descriptors/table.descriptor.mjs +3 -13
- package/esm2020/lib/mng-commons.module.mjs +9 -4
- package/esm2020/lib/pipes/enum.pipe.mjs +2 -2
- package/esm2020/lib/services/action-executor.service.mjs +28 -5
- package/esm2020/lib/services/commons.service.mjs +9 -10
- package/esm2020/lib/services/configuration.service.mjs +53 -19
- package/esm2020/lib/services/internal/commons-init.provider.mjs +4 -0
- package/esm2020/lib/services/internal/commons-init.service.mjs +44 -0
- package/esm2020/lib/services/internal/index.mjs +3 -0
- package/esm2020/lib/services/providers/config-service.provider.mjs +13 -3
- package/esm2020/lib/services/providers/index.mjs +1 -2
- package/esm2020/lib/services/tokens/commons-init.token.mjs +3 -0
- package/esm2020/lib/services/tokens/index.mjs +2 -1
- package/esm2020/lib/utils/editor-formly.util.mjs +5 -5
- package/esm2020/public-api.mjs +3 -1
- package/fesm2015/mediusinc-mng-commons.mjs +395 -92
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +381 -89
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/lib/api/services/api.abstract.service.d.ts +1 -1
- package/lib/api/services/crud-api.abstract.service.d.ts +8 -8
- package/lib/components/action/action.component.d.ts +13 -2
- package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +4 -2
- package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +7 -1
- package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +4 -2
- package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +6 -0
- package/lib/components/form/formly/fields/index.d.ts +1 -0
- package/lib/config/models/mng-config.model.d.ts +1 -1
- package/lib/descriptors/action.descriptor.d.ts +28 -3
- package/lib/descriptors/field.descriptor.d.ts +26 -12
- package/lib/descriptors/table.descriptor.d.ts +0 -1
- package/lib/mng-commons.module.d.ts +58 -57
- package/lib/pipes/enum.pipe.d.ts +2 -1
- package/lib/services/commons.service.d.ts +4 -4
- package/lib/services/configuration.service.d.ts +3 -2
- package/lib/services/internal/commons-init.provider.d.ts +3 -0
- package/lib/services/internal/commons-init.service.d.ts +16 -0
- package/lib/services/internal/index.d.ts +2 -0
- package/lib/services/providers/config-service.provider.d.ts +2 -1
- package/lib/services/providers/index.d.ts +0 -1
- package/lib/services/tokens/commons-init.token.d.ts +3 -0
- package/lib/services/tokens/index.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/scss/mng-overrides/_layout_dialog.scss +44 -14
- package/scss/mng-overrides/_theme_dialog.scss +2 -3
- package/esm2020/lib/services/providers/commons-init.provider.mjs +0 -4
- package/lib/services/providers/commons-init.provider.d.ts +0 -2
|
@@ -72,7 +72,7 @@ import * as i4$3 from 'primeng/toolbar';
|
|
|
72
72
|
import { ToolbarModule } from 'primeng/toolbar';
|
|
73
73
|
import * as i9 from 'primeng/tooltip';
|
|
74
74
|
import { TooltipModule } from 'primeng/tooltip';
|
|
75
|
-
import { throwError, of, Subject, Observable, from, BehaviorSubject, ReplaySubject,
|
|
75
|
+
import { throwError, of, Subject, Observable, from, combineLatest, tap, BehaviorSubject, ReplaySubject, distinctUntilChanged, switchMap, mergeMap as mergeMap$1 } from 'rxjs';
|
|
76
76
|
import 'reflect-metadata';
|
|
77
77
|
import { map, mergeMap, first, catchError, filter, finalize, startWith } from 'rxjs/operators';
|
|
78
78
|
import * as i4$1 from '@angular/platform-browser';
|
|
@@ -526,6 +526,9 @@ class ActionDescriptor {
|
|
|
526
526
|
get runConfirmationRejectTitle() {
|
|
527
527
|
return this._runConfirmationRejectTitle;
|
|
528
528
|
}
|
|
529
|
+
get runConfirmationConfigMapFn() {
|
|
530
|
+
return this._runConfirmationConfigMapFn;
|
|
531
|
+
}
|
|
529
532
|
get hasRunNotificationSuccess() {
|
|
530
533
|
return this._hasRunNotificationSuccess;
|
|
531
534
|
}
|
|
@@ -617,13 +620,24 @@ class ActionDescriptor {
|
|
|
617
620
|
this._position = position;
|
|
618
621
|
return this;
|
|
619
622
|
}
|
|
620
|
-
|
|
623
|
+
/**
|
|
624
|
+
* Add a confirmation dialogue to the action
|
|
625
|
+
* @param icon the icon to display on the confirmation dialogue
|
|
626
|
+
* @param title the title of the confirmation dialogue
|
|
627
|
+
* @param message the message on the confirmation dialogue
|
|
628
|
+
* @param acceptTitle the title of the accepting button
|
|
629
|
+
* @param rejectTitle the title of the rejecting button
|
|
630
|
+
* @param runConfirmationConfigMapFn function used to generate the confirmation dialogue. **WARNING** changing the *accept* and *reject* methods of the *confirmConfig* parameter
|
|
631
|
+
* may lead to unexpected behaviour
|
|
632
|
+
*/
|
|
633
|
+
withRunConfirmation(icon = 'pi pi-exclamation-triangle', title, message, acceptTitle, rejectTitle, runConfirmationConfigMapFn) {
|
|
621
634
|
this._hasRunConfirmation = true;
|
|
622
635
|
this._runConfirmationIcon = icon;
|
|
623
636
|
this._runConfirmationTitle = title;
|
|
624
637
|
this._runConfirmationMessage = message;
|
|
625
638
|
this._runConfirmationAcceptTitle = acceptTitle;
|
|
626
639
|
this._runConfirmationRejectTitle = rejectTitle;
|
|
640
|
+
this._runConfirmationConfigMapFn = runConfirmationConfigMapFn;
|
|
627
641
|
return this;
|
|
628
642
|
}
|
|
629
643
|
withRunNotificationSuccess(title, message, hasNotification = true) {
|
|
@@ -659,7 +673,7 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
659
673
|
this._editorActions = [];
|
|
660
674
|
this._editorTitle = undefined;
|
|
661
675
|
this._hasFetchNotificationSuccess = false;
|
|
662
|
-
this.
|
|
676
|
+
this._dialogSize = ActionEditorDescriptor.DialogSizeEnum.Normal;
|
|
663
677
|
this._type = ActionTypeEnum.Editor;
|
|
664
678
|
this._editorDescriptor = editorDescriptor;
|
|
665
679
|
this._editorActions.push(new ActionEditorSubmitDescriptor(this), new ActionEditorSubmitDescriptor(this, ActionEditorSubmitDescriptor.TypeEnum.Cancel));
|
|
@@ -670,6 +684,9 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
670
684
|
get editorDescriptor() {
|
|
671
685
|
return this._editorDescriptor;
|
|
672
686
|
}
|
|
687
|
+
get dialogSize() {
|
|
688
|
+
return this._dialogSize;
|
|
689
|
+
}
|
|
673
690
|
get dialogClassName() {
|
|
674
691
|
return this._dialogClassName;
|
|
675
692
|
}
|
|
@@ -721,6 +738,10 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
721
738
|
this._dataProvider = new EditorDataProvider(this._model.type, serviceType);
|
|
722
739
|
return this;
|
|
723
740
|
}
|
|
741
|
+
withDialogSize(size = ActionEditorDescriptor.DialogSizeEnum.Normal) {
|
|
742
|
+
this._dialogSize = size;
|
|
743
|
+
return this;
|
|
744
|
+
}
|
|
724
745
|
withDialogClassName(className) {
|
|
725
746
|
this._dialogClassName = className;
|
|
726
747
|
return this;
|
|
@@ -755,6 +776,16 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
755
776
|
return this;
|
|
756
777
|
}
|
|
757
778
|
}
|
|
779
|
+
(function (ActionEditorDescriptor) {
|
|
780
|
+
let DialogSizeEnum;
|
|
781
|
+
(function (DialogSizeEnum) {
|
|
782
|
+
DialogSizeEnum[DialogSizeEnum["ExtraSmall"] = 0] = "ExtraSmall";
|
|
783
|
+
DialogSizeEnum[DialogSizeEnum["Small"] = 1] = "Small";
|
|
784
|
+
DialogSizeEnum[DialogSizeEnum["Normal"] = 2] = "Normal";
|
|
785
|
+
DialogSizeEnum[DialogSizeEnum["Large"] = 3] = "Large";
|
|
786
|
+
DialogSizeEnum[DialogSizeEnum["ExtraLarge"] = 4] = "ExtraLarge";
|
|
787
|
+
})(DialogSizeEnum = ActionEditorDescriptor.DialogSizeEnum || (ActionEditorDescriptor.DialogSizeEnum = {}));
|
|
788
|
+
})(ActionEditorDescriptor || (ActionEditorDescriptor = {}));
|
|
758
789
|
class ActionEditorSubmitDescriptor extends ActionDescriptor {
|
|
759
790
|
constructor(editorAction, submitType = ActionEditorSubmitDescriptor.TypeEnum.Submit) {
|
|
760
791
|
super(editorAction.model, submitType === ActionEditorSubmitDescriptor.TypeEnum.Submit ? 'submit' : 'cancel');
|
|
@@ -783,7 +814,6 @@ class ActionEditorDetailsDescriptor extends ActionEditorDescriptor {
|
|
|
783
814
|
? ctx.dataProvider.fetch(ctx.data?.itemId, ctx.serviceInstance)
|
|
784
815
|
: throwError(new Error(`Data provider fetch function or item id ${ctx.data?.itemId} is missing.`)));
|
|
785
816
|
this.withEditorActions([new ActionEditorSubmitDescriptor(this, ActionEditorSubmitDescriptor.TypeEnum.Cancel)]);
|
|
786
|
-
this.withDialogClassName('mng-details-dynamic-dialog');
|
|
787
817
|
}
|
|
788
818
|
withServiceType(serviceType) {
|
|
789
819
|
return this.withServiceFetchFunction(serviceType);
|
|
@@ -806,7 +836,6 @@ class ActionEditorAddDescriptor extends ActionEditorDescriptor {
|
|
|
806
836
|
this.withSubmitFunction(ctx => ctx.dataProvider?.create ? ctx.dataProvider.create(ctx.data?.item, ctx.serviceInstance) : throwError(new Error(`Data provider create function is missing.`)));
|
|
807
837
|
this.withLevel(ActionLevelEnum.Success);
|
|
808
838
|
this.withIcon('pi pi-plus');
|
|
809
|
-
this.withDialogClassName('mng-details-dynamic-dialog');
|
|
810
839
|
}
|
|
811
840
|
withServiceType(serviceType) {
|
|
812
841
|
return this.withServiceSubmitFunction(serviceType);
|
|
@@ -837,7 +866,6 @@ class ActionEditorEditDescriptor extends ActionEditorDescriptor {
|
|
|
837
866
|
? ctx.dataProvider.update(ctx.data.itemId, ctx.data?.item, ctx.serviceInstance)
|
|
838
867
|
: throwError(new Error(`Data provider update function or item id ${ctx.data?.itemId} is missing.`)));
|
|
839
868
|
this.withIcon('pi pi-pencil');
|
|
840
|
-
this.withDialogClassName('mng-details-dynamic-dialog');
|
|
841
869
|
}
|
|
842
870
|
withServiceType(serviceType) {
|
|
843
871
|
return this.withServiceSubmitFunction(serviceType);
|
|
@@ -1663,6 +1691,9 @@ class AFieldDescriptor extends AGenericFieldDescriptor {
|
|
|
1663
1691
|
get className() {
|
|
1664
1692
|
return this._className;
|
|
1665
1693
|
}
|
|
1694
|
+
get fieldClassName() {
|
|
1695
|
+
return this._fieldClassName;
|
|
1696
|
+
}
|
|
1666
1697
|
get labelClassName() {
|
|
1667
1698
|
return this._labelClassName;
|
|
1668
1699
|
}
|
|
@@ -1724,10 +1755,11 @@ class AFieldDescriptor extends AGenericFieldDescriptor {
|
|
|
1724
1755
|
this._validators.push(new FieldValidator(name, expression, message));
|
|
1725
1756
|
return this;
|
|
1726
1757
|
}
|
|
1727
|
-
withClassName(className, labelClassName = '', inputClassName = '') {
|
|
1758
|
+
withClassName(className, labelClassName = '', inputClassName = '', fieldClassName) {
|
|
1728
1759
|
this._className = className;
|
|
1729
1760
|
this._labelClassName = labelClassName;
|
|
1730
1761
|
this._inputClassName = inputClassName;
|
|
1762
|
+
this._fieldClassName = fieldClassName;
|
|
1731
1763
|
return this;
|
|
1732
1764
|
}
|
|
1733
1765
|
withSize(size = FieldDescriptor.SizeEnum.Normal) {
|
|
@@ -1836,6 +1868,10 @@ class FieldInputDescriptor extends AFieldDescriptor {
|
|
|
1836
1868
|
this._fieldType = FieldInputDescriptor.TypeEnum.Hidden;
|
|
1837
1869
|
return this;
|
|
1838
1870
|
}
|
|
1871
|
+
asLabel() {
|
|
1872
|
+
this._fieldType = FieldInputDescriptor.TypeEnum.Label;
|
|
1873
|
+
return this;
|
|
1874
|
+
}
|
|
1839
1875
|
asText(minLength, maxLength, pattern, isEmail) {
|
|
1840
1876
|
this._fieldType = FieldInputDescriptor.TypeEnum.Text;
|
|
1841
1877
|
this._minLength = minLength;
|
|
@@ -1931,14 +1967,15 @@ class FieldInputDescriptor extends AFieldDescriptor {
|
|
|
1931
1967
|
let TypeEnum;
|
|
1932
1968
|
(function (TypeEnum) {
|
|
1933
1969
|
TypeEnum[TypeEnum["Hidden"] = 0] = "Hidden";
|
|
1934
|
-
TypeEnum[TypeEnum["
|
|
1935
|
-
TypeEnum[TypeEnum["
|
|
1936
|
-
TypeEnum[TypeEnum["
|
|
1937
|
-
TypeEnum[TypeEnum["
|
|
1938
|
-
TypeEnum[TypeEnum["
|
|
1939
|
-
TypeEnum[TypeEnum["
|
|
1940
|
-
TypeEnum[TypeEnum["
|
|
1941
|
-
TypeEnum[TypeEnum["
|
|
1970
|
+
TypeEnum[TypeEnum["Label"] = 1] = "Label";
|
|
1971
|
+
TypeEnum[TypeEnum["Text"] = 2] = "Text";
|
|
1972
|
+
TypeEnum[TypeEnum["Textarea"] = 3] = "Textarea";
|
|
1973
|
+
TypeEnum[TypeEnum["Number"] = 4] = "Number";
|
|
1974
|
+
TypeEnum[TypeEnum["Switch"] = 5] = "Switch";
|
|
1975
|
+
TypeEnum[TypeEnum["Radio"] = 6] = "Radio";
|
|
1976
|
+
TypeEnum[TypeEnum["Datepicker"] = 7] = "Datepicker";
|
|
1977
|
+
TypeEnum[TypeEnum["Mask"] = 8] = "Mask";
|
|
1978
|
+
TypeEnum[TypeEnum["Custom"] = 9] = "Custom";
|
|
1942
1979
|
})(TypeEnum = FieldInputDescriptor.TypeEnum || (FieldInputDescriptor.TypeEnum = {}));
|
|
1943
1980
|
})(FieldInputDescriptor || (FieldInputDescriptor = {}));
|
|
1944
1981
|
class FieldLookupDescriptor extends AFieldDescriptor {
|
|
@@ -2096,6 +2133,16 @@ class FieldLookupEnumDescriptor extends FieldLookupDescriptor {
|
|
|
2096
2133
|
}
|
|
2097
2134
|
return this;
|
|
2098
2135
|
}
|
|
2136
|
+
withDefaultValueEnum(defaultValue) {
|
|
2137
|
+
const defaultOptionValue = this._nameAsValue ? EnumUtil.getConstantName(this._enumType, defaultValue) : defaultValue;
|
|
2138
|
+
if (defaultOptionValue) {
|
|
2139
|
+
const option = this._optionEnumValues.find(o => o.value === defaultOptionValue);
|
|
2140
|
+
if (option) {
|
|
2141
|
+
this.withDefaultValue(option);
|
|
2142
|
+
}
|
|
2143
|
+
}
|
|
2144
|
+
return this;
|
|
2145
|
+
}
|
|
2099
2146
|
asAutocomplete(openOnFocus = true) {
|
|
2100
2147
|
super.asAutocomplete(openOnFocus, true);
|
|
2101
2148
|
return this;
|
|
@@ -2318,6 +2365,13 @@ class FieldTabGroupDescriptor extends AFieldGroupDescriptor {
|
|
|
2318
2365
|
class FieldGroupDescriptor extends AFieldGroupDescriptor {
|
|
2319
2366
|
constructor(editor, name) {
|
|
2320
2367
|
super(editor, name);
|
|
2368
|
+
this._type = FieldGroupDescriptor.TypeEnum.Fieldset;
|
|
2369
|
+
if (this._default) {
|
|
2370
|
+
this.asLogical();
|
|
2371
|
+
}
|
|
2372
|
+
}
|
|
2373
|
+
get type() {
|
|
2374
|
+
return this._type;
|
|
2321
2375
|
}
|
|
2322
2376
|
get fields() {
|
|
2323
2377
|
return this._fields;
|
|
@@ -2329,13 +2383,25 @@ class FieldGroupDescriptor extends AFieldGroupDescriptor {
|
|
|
2329
2383
|
this._fields.push(field);
|
|
2330
2384
|
return this;
|
|
2331
2385
|
}
|
|
2386
|
+
asLogical() {
|
|
2387
|
+
this._type = FieldGroupDescriptor.TypeEnum.Logical;
|
|
2388
|
+
return this;
|
|
2389
|
+
}
|
|
2332
2390
|
copy() {
|
|
2333
2391
|
const group = new FieldGroupDescriptor(this._editor, this.name.substring(this.baseName.length));
|
|
2392
|
+
group._type = this._type;
|
|
2334
2393
|
group._title = this._title;
|
|
2335
2394
|
group._fields = this.fields.map(f => f.copy());
|
|
2336
2395
|
return group;
|
|
2337
2396
|
}
|
|
2338
2397
|
}
|
|
2398
|
+
(function (FieldGroupDescriptor) {
|
|
2399
|
+
let TypeEnum;
|
|
2400
|
+
(function (TypeEnum) {
|
|
2401
|
+
TypeEnum[TypeEnum["Fieldset"] = 0] = "Fieldset";
|
|
2402
|
+
TypeEnum[TypeEnum["Logical"] = 1] = "Logical";
|
|
2403
|
+
})(TypeEnum = FieldGroupDescriptor.TypeEnum || (FieldGroupDescriptor.TypeEnum = {}));
|
|
2404
|
+
})(FieldGroupDescriptor || (FieldGroupDescriptor = {}));
|
|
2339
2405
|
|
|
2340
2406
|
class FieldValidator {
|
|
2341
2407
|
constructor(name, expression, message, options) {
|
|
@@ -2403,6 +2469,7 @@ class TableDescriptor {
|
|
|
2403
2469
|
this._rowHeight = 45;
|
|
2404
2470
|
this._tableFullHeightOffset = 315;
|
|
2405
2471
|
this._model = new ModelDescriptor(modelType, idProperty, titleProperty);
|
|
2472
|
+
this._dataKeyProperty = idProperty ?? ModelUtil.findIdAttribute(modelType) ?? undefined;
|
|
2406
2473
|
}
|
|
2407
2474
|
get filterDisplay() {
|
|
2408
2475
|
return this._filterDisplay;
|
|
@@ -2442,48 +2509,41 @@ class TableDescriptor {
|
|
|
2442
2509
|
}
|
|
2443
2510
|
addColumnDescriptor(column) {
|
|
2444
2511
|
this._columns.push(column);
|
|
2445
|
-
this.setDataKeyFromColumn();
|
|
2446
2512
|
return this;
|
|
2447
2513
|
}
|
|
2448
2514
|
addColumn(property) {
|
|
2449
2515
|
const column = new ColumnDescriptor(this, property);
|
|
2450
2516
|
this._columns.push(column);
|
|
2451
|
-
this.setDataKeyFromColumn();
|
|
2452
2517
|
return column;
|
|
2453
2518
|
}
|
|
2454
2519
|
addColumnNumber(property, displayFormat) {
|
|
2455
2520
|
const column = new ColumnDescriptor(this, property);
|
|
2456
2521
|
column.asNumber(displayFormat);
|
|
2457
2522
|
this._columns.push(column);
|
|
2458
|
-
this.setDataKeyFromColumn();
|
|
2459
2523
|
return column;
|
|
2460
2524
|
}
|
|
2461
2525
|
addColumnDate(property, displayFormat) {
|
|
2462
2526
|
const column = new ColumnDescriptor(this, property);
|
|
2463
2527
|
column.asDate(displayFormat);
|
|
2464
2528
|
this._columns.push(column);
|
|
2465
|
-
this.setDataKeyFromColumn();
|
|
2466
2529
|
return column;
|
|
2467
2530
|
}
|
|
2468
2531
|
addColumnBoolean(property, yes, no, asIcon = false) {
|
|
2469
2532
|
const column = new ColumnDescriptor(this, property);
|
|
2470
2533
|
column.asBoolean(yes, no, asIcon);
|
|
2471
2534
|
this._columns.push(column);
|
|
2472
|
-
this.setDataKeyFromColumn();
|
|
2473
2535
|
return column;
|
|
2474
2536
|
}
|
|
2475
2537
|
addColumnEnum(property, enumType, nameAsValue = false, titlePath) {
|
|
2476
2538
|
const column = new ColumnDescriptor(this, property);
|
|
2477
2539
|
column.asEnum(enumType, nameAsValue, titlePath);
|
|
2478
2540
|
this._columns.push(column);
|
|
2479
|
-
this.setDataKeyFromColumn();
|
|
2480
2541
|
return column;
|
|
2481
2542
|
}
|
|
2482
2543
|
addColumnCustomComponent(property, customComponentType) {
|
|
2483
2544
|
const column = new ColumnDescriptor(this, property);
|
|
2484
2545
|
column.asCustomComponent(customComponentType);
|
|
2485
2546
|
this._columns.push(column);
|
|
2486
|
-
this.setDataKeyFromColumn();
|
|
2487
2547
|
return column;
|
|
2488
2548
|
}
|
|
2489
2549
|
withFilterDisplay(filterDisplayType) {
|
|
@@ -2531,11 +2591,6 @@ class TableDescriptor {
|
|
|
2531
2591
|
descriptor._filterDisplay = this._filterDisplay;
|
|
2532
2592
|
return descriptor;
|
|
2533
2593
|
}
|
|
2534
|
-
setDataKeyFromColumn() {
|
|
2535
|
-
if (!this._dataKeyProperty && this._columns.length === 1) {
|
|
2536
|
-
this._dataKeyProperty = this._columns[0].property;
|
|
2537
|
-
}
|
|
2538
|
-
}
|
|
2539
2594
|
}
|
|
2540
2595
|
(function (TableDescriptor) {
|
|
2541
2596
|
let PaginationModeEnum;
|
|
@@ -2770,16 +2825,16 @@ class EditorFormlyUtil {
|
|
|
2770
2825
|
// assign default field width through entire row
|
|
2771
2826
|
className = 'col-12';
|
|
2772
2827
|
}
|
|
2773
|
-
if (className.indexOf('col-') < 0) {
|
|
2774
|
-
// class was provided, but does not contain col- definition
|
|
2775
|
-
className = `col-12 ${descriptor.className}`;
|
|
2776
|
-
}
|
|
2777
2828
|
field.className = className;
|
|
2778
2829
|
field.templateOptions['descriptor'] = descriptor;
|
|
2779
2830
|
if (descriptor instanceof FieldInputDescriptor) {
|
|
2780
2831
|
switch (descriptor.fieldType) {
|
|
2781
2832
|
case FieldInputDescriptor.TypeEnum.Hidden:
|
|
2782
2833
|
break;
|
|
2834
|
+
case FieldInputDescriptor.TypeEnum.Label:
|
|
2835
|
+
field.type = 'label';
|
|
2836
|
+
delete field.key;
|
|
2837
|
+
break;
|
|
2783
2838
|
case FieldInputDescriptor.TypeEnum.Textarea:
|
|
2784
2839
|
field.type = 'textarea';
|
|
2785
2840
|
break;
|
|
@@ -3799,6 +3854,8 @@ const MNG_BROWSER_STORAGE_IT = new InjectionToken('Browser storage', {
|
|
|
3799
3854
|
factory: () => localStorage
|
|
3800
3855
|
});
|
|
3801
3856
|
|
|
3857
|
+
const MNG_COMMONS_INITIALIZER_IT = new InjectionToken('MNG Commons Initializer');
|
|
3858
|
+
|
|
3802
3859
|
const ACTION_EDITOR_DIALOG_COMPONENT_SETTING = new InjectionToken('ACTION_EDITOR_DIALOG_COMPONENT_SETTING');
|
|
3803
3860
|
|
|
3804
3861
|
const MNG_MODULE_CONFIG_IT = new InjectionToken('MngModuleConfig');
|
|
@@ -3887,7 +3944,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
3887
3944
|
|
|
3888
3945
|
class MngEnumPipe {
|
|
3889
3946
|
transform(value, enumObj, i18nPath, nameAsValue = false) {
|
|
3890
|
-
if (!value || !enumObj) {
|
|
3947
|
+
if (!value || (typeof value !== 'number' && typeof value !== 'string') || !enumObj) {
|
|
3891
3948
|
return value;
|
|
3892
3949
|
}
|
|
3893
3950
|
const enumConstantName = nameAsValue ? value : EnumUtil.getConstantNameFromEnumObject(enumObj, value);
|
|
@@ -4064,7 +4121,7 @@ class MngActionExecutorService {
|
|
|
4064
4121
|
throw Error(`Source component ${sourceComponent} should be implementing IConfirmationService interface to be able to provide confirmation functionality.`);
|
|
4065
4122
|
}
|
|
4066
4123
|
const srcConfirmComponent = sourceComponent;
|
|
4067
|
-
|
|
4124
|
+
let confirmParams = {
|
|
4068
4125
|
key: srcConfirmComponent.getConfirmationServiceInstanceKey(action),
|
|
4069
4126
|
acceptVisible: false,
|
|
4070
4127
|
rejectVisible: false
|
|
@@ -4110,6 +4167,9 @@ class MngActionExecutorService {
|
|
|
4110
4167
|
confirmParams.reject = () => {
|
|
4111
4168
|
observer.error(new ActionRunResult(context, undefined, new ActionError(null, true)));
|
|
4112
4169
|
};
|
|
4170
|
+
if (action.runConfirmationConfigMapFn) {
|
|
4171
|
+
confirmParams = action.runConfirmationConfigMapFn(context, confirmParams);
|
|
4172
|
+
}
|
|
4113
4173
|
srcConfirmComponent.getConfirmationService().confirm(confirmParams);
|
|
4114
4174
|
});
|
|
4115
4175
|
return observable;
|
|
@@ -4230,13 +4290,33 @@ class MngActionExecutorService {
|
|
|
4230
4290
|
let dialogComponent = this.defaultEditorDialogComponent;
|
|
4231
4291
|
let dialogClassName = '';
|
|
4232
4292
|
if (action instanceof ActionEditorDescriptor) {
|
|
4293
|
+
dialogClassName = action.dialogClassName ?? 'mng-action-editor-dialog';
|
|
4294
|
+
let dialogSizeClassName = '';
|
|
4295
|
+
switch (action.dialogSize) {
|
|
4296
|
+
case ActionEditorDescriptor.DialogSizeEnum.ExtraSmall:
|
|
4297
|
+
dialogSizeClassName = 'mng-action-editor-dialog-xs';
|
|
4298
|
+
break;
|
|
4299
|
+
case ActionEditorDescriptor.DialogSizeEnum.Small:
|
|
4300
|
+
dialogSizeClassName = 'mng-action-editor-dialog-sm';
|
|
4301
|
+
break;
|
|
4302
|
+
case ActionEditorDescriptor.DialogSizeEnum.Large:
|
|
4303
|
+
dialogSizeClassName = 'mng-action-editor-dialog-lg';
|
|
4304
|
+
break;
|
|
4305
|
+
case ActionEditorDescriptor.DialogSizeEnum.ExtraLarge:
|
|
4306
|
+
dialogSizeClassName = 'mng-action-editor-dialog-xl';
|
|
4307
|
+
break;
|
|
4308
|
+
case ActionEditorDescriptor.DialogSizeEnum.Normal:
|
|
4309
|
+
default:
|
|
4310
|
+
break;
|
|
4311
|
+
}
|
|
4312
|
+
if (dialogSizeClassName.length) {
|
|
4313
|
+
dialogClassName += ` ${dialogSizeClassName}`;
|
|
4314
|
+
}
|
|
4233
4315
|
if (action.editorComponent) {
|
|
4234
4316
|
dialogComponent = action.editorComponent;
|
|
4235
4317
|
}
|
|
4236
|
-
if (action.dialogClassName) {
|
|
4237
|
-
dialogClassName = action.dialogClassName;
|
|
4238
|
-
}
|
|
4239
4318
|
}
|
|
4319
|
+
console.log(dialogClassName);
|
|
4240
4320
|
const dialogConfig = {
|
|
4241
4321
|
data: {
|
|
4242
4322
|
action
|
|
@@ -4362,7 +4442,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
4362
4442
|
class MngConfigurationService {
|
|
4363
4443
|
constructor(http) {
|
|
4364
4444
|
this.http = http;
|
|
4365
|
-
this.
|
|
4445
|
+
this.jsonSources = [];
|
|
4366
4446
|
this.configuration = { ...this.projectEnvironment };
|
|
4367
4447
|
}
|
|
4368
4448
|
static init(httpClient) {
|
|
@@ -4389,23 +4469,55 @@ class MngConfigurationService {
|
|
|
4389
4469
|
* Adds new config source from JSON file.
|
|
4390
4470
|
* @param url Url to JSON file.
|
|
4391
4471
|
*/
|
|
4392
|
-
addJsonSource(url = this.projectEnvironment.configurationJsonSource) {
|
|
4472
|
+
addJsonSource(url = this.projectEnvironment.configurationJsonSource, load = false) {
|
|
4393
4473
|
if (!url) {
|
|
4394
|
-
console.
|
|
4474
|
+
console.debug('No path to configuration file specified. Setting default.');
|
|
4395
4475
|
url = 'assets/config/env{{environment}}.json';
|
|
4396
4476
|
}
|
|
4397
|
-
const
|
|
4398
|
-
|
|
4399
|
-
|
|
4400
|
-
|
|
4401
|
-
|
|
4402
|
-
|
|
4403
|
-
|
|
4404
|
-
|
|
4405
|
-
this.
|
|
4406
|
-
|
|
4407
|
-
|
|
4408
|
-
|
|
4477
|
+
const sourceInfo = {
|
|
4478
|
+
url: url,
|
|
4479
|
+
isEnvironment: false,
|
|
4480
|
+
isLoaded: false
|
|
4481
|
+
};
|
|
4482
|
+
this.jsonSources.push(sourceInfo);
|
|
4483
|
+
console.debug(`Added JSON source: ${url}`);
|
|
4484
|
+
if (load) {
|
|
4485
|
+
return this.loadJsonSources();
|
|
4486
|
+
}
|
|
4487
|
+
else {
|
|
4488
|
+
return of(true);
|
|
4489
|
+
}
|
|
4490
|
+
}
|
|
4491
|
+
loadJsonSources() {
|
|
4492
|
+
return combineLatest(this.jsonSources
|
|
4493
|
+
.filter(source => !source.isLoaded)
|
|
4494
|
+
.map(sourceInfo => {
|
|
4495
|
+
let url = sourceInfo.url;
|
|
4496
|
+
if (url.indexOf('{{environment}}') >= 0) {
|
|
4497
|
+
sourceInfo.isEnvironment = true;
|
|
4498
|
+
sourceInfo.environment = this.projectEnvironment.name || (this.projectEnvironment.production ? 'prod' : 'dev');
|
|
4499
|
+
url = url.replace('{{environment}}', '.' + sourceInfo.environment);
|
|
4500
|
+
}
|
|
4501
|
+
console.debug(`Loading JSON source: ${sourceInfo.url} with env ${sourceInfo.environment ?? '/'}`);
|
|
4502
|
+
return this.http.get(url).pipe(catchError((err) => {
|
|
4503
|
+
if (sourceInfo.isEnvironment) {
|
|
4504
|
+
const noEnvUrl = sourceInfo.url.replace('{{environment}}', '');
|
|
4505
|
+
sourceInfo.environment = null;
|
|
4506
|
+
console.debug(`Reloading JSON source: ${sourceInfo.url} with env ${sourceInfo.environment ?? '/'}`);
|
|
4507
|
+
return this.http.get(noEnvUrl);
|
|
4508
|
+
}
|
|
4509
|
+
else {
|
|
4510
|
+
const message = `Configuration file ${url} not loaded (${err.status}): ${err.message}.`;
|
|
4511
|
+
console.error(message);
|
|
4512
|
+
return throwError(() => new Error(message));
|
|
4513
|
+
}
|
|
4514
|
+
}), map(configuration => {
|
|
4515
|
+
sourceInfo.configuration = configuration;
|
|
4516
|
+
sourceInfo.isLoaded = true;
|
|
4517
|
+
console.debug(`JSON source loaded: ${sourceInfo.url}`);
|
|
4518
|
+
return true;
|
|
4519
|
+
}));
|
|
4520
|
+
})).pipe(map(sourceResults => sourceResults.every(sr => sr)), tap(sourceResults => this.mergeConfigs()));
|
|
4409
4521
|
}
|
|
4410
4522
|
/**
|
|
4411
4523
|
* Get configuration.
|
|
@@ -4425,9 +4537,10 @@ class MngConfigurationService {
|
|
|
4425
4537
|
*/
|
|
4426
4538
|
mergeConfigs() {
|
|
4427
4539
|
let config = { ...this.projectEnvironment };
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
|
|
4540
|
+
const jsonConfigs = this.jsonSources.filter(source => source.isLoaded && typeof source.configuration === 'object').map(source => source.configuration);
|
|
4541
|
+
if (jsonConfigs.length) {
|
|
4542
|
+
for (const jsonConfig of jsonConfigs) {
|
|
4543
|
+
config = { ...config, ...jsonConfig };
|
|
4431
4544
|
}
|
|
4432
4545
|
}
|
|
4433
4546
|
this.configuration = config;
|
|
@@ -4436,12 +4549,11 @@ class MngConfigurationService {
|
|
|
4436
4549
|
MngConfigurationService._instance = null;
|
|
4437
4550
|
|
|
4438
4551
|
class MngCommonsService {
|
|
4439
|
-
constructor(router, primengConfig, translate, titleService,
|
|
4552
|
+
constructor(router, primengConfig, translate, titleService, moduleConfig, localStorage) {
|
|
4440
4553
|
this.router = router;
|
|
4441
4554
|
this.primengConfig = primengConfig;
|
|
4442
4555
|
this.translate = translate;
|
|
4443
4556
|
this.titleService = titleService;
|
|
4444
|
-
this.configurationService = configurationService;
|
|
4445
4557
|
this.moduleConfig = moduleConfig;
|
|
4446
4558
|
this.localStorage = localStorage;
|
|
4447
4559
|
// menu
|
|
@@ -4570,8 +4682,7 @@ class MngCommonsService {
|
|
|
4570
4682
|
get user$() {
|
|
4571
4683
|
return this.userSubject.asObservable();
|
|
4572
4684
|
}
|
|
4573
|
-
|
|
4574
|
-
// menu
|
|
4685
|
+
reset() {
|
|
4575
4686
|
this._menuMode = this.moduleConfig?.menu?.mode ?? 'sidebar';
|
|
4576
4687
|
this._menuModeSubject.next(this._menuMode);
|
|
4577
4688
|
this._menuItems = this.moduleConfig?.menu?.menuItems ?? [];
|
|
@@ -4605,7 +4716,8 @@ class MngCommonsService {
|
|
|
4605
4716
|
this.translate.langs = this.appLanguages;
|
|
4606
4717
|
this.translate.use(this.appLanguage);
|
|
4607
4718
|
this.translate.get('mngPrime').subscribe(value => this.primengConfig.setTranslation(value));
|
|
4608
|
-
this.
|
|
4719
|
+
this.routerEventsSubscription?.unsubscribe();
|
|
4720
|
+
this.routerEventsSubscription = this.router.events
|
|
4609
4721
|
.pipe(
|
|
4610
4722
|
// Filter the NavigationEnd events as the breadcrumb is updated only when the route reaches its end
|
|
4611
4723
|
filter(event => event instanceof NavigationEnd))
|
|
@@ -4613,7 +4725,8 @@ class MngCommonsService {
|
|
|
4613
4725
|
this.updateBreadcrumbs();
|
|
4614
4726
|
this.setPageTitle();
|
|
4615
4727
|
});
|
|
4616
|
-
this.
|
|
4728
|
+
this.translateLangChangeSubscription?.unsubscribe();
|
|
4729
|
+
this.translateLangChangeSubscription = this.translate.onLangChange.subscribe(() => {
|
|
4617
4730
|
this.updateBreadcrumbs();
|
|
4618
4731
|
this.setPageTitle();
|
|
4619
4732
|
});
|
|
@@ -4756,11 +4869,11 @@ class MngCommonsService {
|
|
|
4756
4869
|
return titlePieces.join(' - ');
|
|
4757
4870
|
}
|
|
4758
4871
|
}
|
|
4759
|
-
MngCommonsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsService, deps: [{ token: i1.Router }, { token: i2.PrimeNGConfig }, { token: i1$1.TranslateService }, { token: i4$1.Title }, { token:
|
|
4872
|
+
MngCommonsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsService, deps: [{ token: i1.Router }, { token: i2.PrimeNGConfig }, { token: i1$1.TranslateService }, { token: i4$1.Title }, { token: MNG_MODULE_CONFIG_IT }, { token: MNG_BROWSER_STORAGE_IT }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4760
4873
|
MngCommonsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsService });
|
|
4761
4874
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsService, decorators: [{
|
|
4762
4875
|
type: Injectable
|
|
4763
|
-
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.PrimeNGConfig }, { type: i1$1.TranslateService }, { type: i4$1.Title }, { type:
|
|
4876
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.PrimeNGConfig }, { type: i1$1.TranslateService }, { type: i4$1.Title }, { type: undefined, decorators: [{
|
|
4764
4877
|
type: Inject,
|
|
4765
4878
|
args: [MNG_MODULE_CONFIG_IT]
|
|
4766
4879
|
}] }, { type: Storage, decorators: [{
|
|
@@ -4821,17 +4934,25 @@ class MngActionComponent {
|
|
|
4821
4934
|
this.loadingSubject = new ReplaySubject(1);
|
|
4822
4935
|
this.$loading = this.loadingSubject.asObservable();
|
|
4823
4936
|
this.cmpId = Math.random().toString(36).substring(2);
|
|
4937
|
+
this.isVisibleSubject = new ReplaySubject(1);
|
|
4938
|
+
this.$isVisible = this.isVisibleSubject.asObservable().pipe(distinctUntilChanged());
|
|
4939
|
+
this.isEnabledSubject = new ReplaySubject(1);
|
|
4940
|
+
this.$isEnabled = this.isEnabledSubject.asObservable().pipe(distinctUntilChanged());
|
|
4941
|
+
this.labelSubject = new ReplaySubject(1);
|
|
4942
|
+
this.$label = this.labelSubject.asObservable().pipe(distinctUntilChanged());
|
|
4943
|
+
this.tooltipSubject = new ReplaySubject(1);
|
|
4944
|
+
this.$tooltip = this.tooltipSubject.asObservable().pipe(distinctUntilChanged());
|
|
4824
4945
|
this.hasNoTitle = false;
|
|
4825
4946
|
this.loadingSubject.next(false);
|
|
4826
4947
|
}
|
|
4827
4948
|
ngOnInit() {
|
|
4828
4949
|
this.viewContainer = this.viewContainerInit ?? this.viewContainerService ?? undefined;
|
|
4829
4950
|
this.hasNoTitle = this.action.title === null;
|
|
4830
|
-
|
|
4831
|
-
this
|
|
4832
|
-
this
|
|
4833
|
-
this
|
|
4834
|
-
this
|
|
4951
|
+
this.isEnabledSubject.next(true);
|
|
4952
|
+
this.isVisibleSubject.next(true);
|
|
4953
|
+
this.labelSubject.next(null);
|
|
4954
|
+
this.tooltipSubject.next(null);
|
|
4955
|
+
this.processSubscriptions();
|
|
4835
4956
|
if (this.action instanceof ActionLinkDescriptor) {
|
|
4836
4957
|
this.actionLink = this.action;
|
|
4837
4958
|
}
|
|
@@ -4839,6 +4960,17 @@ class MngActionComponent {
|
|
|
4839
4960
|
this.hostClass = this.action.className;
|
|
4840
4961
|
}
|
|
4841
4962
|
}
|
|
4963
|
+
ngOnChanges(changes) {
|
|
4964
|
+
if (!(changes['item']?.firstChange ?? true) || !(changes['itemId']?.firstChange ?? true) || !(changes['actionData']?.firstChange ?? true)) {
|
|
4965
|
+
this.processSubscriptions();
|
|
4966
|
+
}
|
|
4967
|
+
}
|
|
4968
|
+
ngOnDestroy() {
|
|
4969
|
+
this.isVisibleSubscription?.unsubscribe();
|
|
4970
|
+
this.isEnabledSubscription?.unsubscribe();
|
|
4971
|
+
this.labelSubscription?.unsubscribe();
|
|
4972
|
+
this.tooltipSubscription?.unsubscribe();
|
|
4973
|
+
}
|
|
4842
4974
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
4843
4975
|
triggerAction(event) {
|
|
4844
4976
|
this.loadingSubject.next(true);
|
|
@@ -4864,9 +4996,34 @@ class MngActionComponent {
|
|
|
4864
4996
|
getConfirmationServiceInstanceKey(action) {
|
|
4865
4997
|
return `${action.actionName}_${this.cmpId}`;
|
|
4866
4998
|
}
|
|
4999
|
+
processSubscriptions() {
|
|
5000
|
+
const context = this.actionExecutor.prepareActionExecContext(this.action, this.itemId, this.item, this.dataProvider, this.viewContainer ?? undefined, this, this.actionData);
|
|
5001
|
+
if (typeof this.action.isVisibleFunction === 'function') {
|
|
5002
|
+
this.isVisibleSubscription?.unsubscribe();
|
|
5003
|
+
this.isVisibleSubscription = this.action.isVisibleFunction(context).subscribe({
|
|
5004
|
+
next: res => this.isVisibleSubject.next(res)
|
|
5005
|
+
});
|
|
5006
|
+
}
|
|
5007
|
+
if (typeof this.action.isEnabledFunction === 'function') {
|
|
5008
|
+
this.isEnabledSubscription?.unsubscribe();
|
|
5009
|
+
this.isEnabledSubscription = this.action.isEnabledFunction(context).subscribe({
|
|
5010
|
+
next: res => this.isEnabledSubject.next(res)
|
|
5011
|
+
});
|
|
5012
|
+
}
|
|
5013
|
+
if (!this.hasNoTitle) {
|
|
5014
|
+
this.labelSubscription?.unsubscribe();
|
|
5015
|
+
this.labelSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'title', this.action?.title ?? undefined, this.item).subscribe({
|
|
5016
|
+
next: i18n => this.labelSubject.next(i18n)
|
|
5017
|
+
});
|
|
5018
|
+
}
|
|
5019
|
+
this.tooltipSubscription?.unsubscribe();
|
|
5020
|
+
this.tooltipSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'tooltip', this.action?.tooltip ?? undefined, this.item).subscribe({
|
|
5021
|
+
next: i18n => this.tooltipSubject.next(i18n)
|
|
5022
|
+
});
|
|
5023
|
+
}
|
|
4867
5024
|
}
|
|
4868
5025
|
MngActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngActionComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1$1.TranslateService }, { token: MngActionExecutorService }, { token: i2.ConfirmationService }, { token: MngViewContainerComponentService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
4869
|
-
MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData", dataProvider: "dataProvider", inputDisabled: ["disabled", "inputDisabled"], inputLoading: ["loading", "inputLoading"], viewContainerInit: ["viewContainer", "viewContainerInit"] }, outputs: { triggerEventEmitter: "trigger" }, host: { properties: { "class": "this.hostClass" } }, providers: [ConfirmationService], ngImport: i0, template: "<ng-container *ngIf=\"$isVisible | async\">\n <a\n *ngIf=\"actionLink && actionLink.url !== ''; else routerLink\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [href]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : actionLink.url\"\n [target]=\"actionLink.target\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n <ng-template #routerLink>\n <a\n *ngIf=\"actionLink; else button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [target]=\"actionLink.target\"\n [replaceUrl]=\"actionLink.replaceUrl\"\n [routerLink]=\"\n ($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.pathSegments | linkFormatter: itemId:item:action.model:actionData)\n \"\n [queryParams]=\"actionLink.queryParams\"\n [queryParamsHandling]=\"actionLink.queryParamsHandling\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n </ng-template>\n <ng-template #button>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [pTooltip]=\"$any($tooltip | async)\"\n [loading]=\"(($loading | async) ?? false) || ((inputLoading | async) ?? false)\"\n [disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n (click)=\"triggerAction($event)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n", styles: [":host{display:inline-block}\n"], components: [{ type: i5.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i8.Ripple, selector: "[pRipple]" }, { type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i9.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], pipes: { "async": i4.AsyncPipe, "linkFormatter": MngLinkFormatterPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5026
|
+
MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData", dataProvider: "dataProvider", inputDisabled: ["disabled", "inputDisabled"], inputLoading: ["loading", "inputLoading"], viewContainerInit: ["viewContainer", "viewContainerInit"] }, outputs: { triggerEventEmitter: "trigger" }, host: { properties: { "class": "this.hostClass" } }, providers: [ConfirmationService], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"$isVisible | async\">\n <a\n *ngIf=\"actionLink && actionLink.url !== ''; else routerLink\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [href]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : actionLink.url\"\n [target]=\"actionLink.target\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n <ng-template #routerLink>\n <a\n *ngIf=\"actionLink; else button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [target]=\"actionLink.target\"\n [replaceUrl]=\"actionLink.replaceUrl\"\n [routerLink]=\"\n ($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.pathSegments | linkFormatter: itemId:item:action.model:actionData)\n \"\n [queryParams]=\"actionLink.queryParams\"\n [queryParamsHandling]=\"actionLink.queryParamsHandling\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n </ng-template>\n <ng-template #button>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [pTooltip]=\"$any($tooltip | async)\"\n [loading]=\"(($loading | async) ?? false) || ((inputLoading | async) ?? false)\"\n [disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n (click)=\"triggerAction($event)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n", styles: [":host{display:inline-block}\n"], components: [{ type: i5.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i8.Ripple, selector: "[pRipple]" }, { type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i9.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], pipes: { "async": i4.AsyncPipe, "linkFormatter": MngLinkFormatterPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4870
5027
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngActionComponent, decorators: [{
|
|
4871
5028
|
type: Component,
|
|
4872
5029
|
args: [{ selector: 'mng-action', changeDetection: ChangeDetectionStrategy.OnPush, providers: [ConfirmationService], template: "<ng-container *ngIf=\"$isVisible | async\">\n <a\n *ngIf=\"actionLink && actionLink.url !== ''; else routerLink\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [href]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : actionLink.url\"\n [target]=\"actionLink.target\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n <ng-template #routerLink>\n <a\n *ngIf=\"actionLink; else button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [target]=\"actionLink.target\"\n [replaceUrl]=\"actionLink.replaceUrl\"\n [routerLink]=\"\n ($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.pathSegments | linkFormatter: itemId:item:action.model:actionData)\n \"\n [queryParams]=\"actionLink.queryParams\"\n [queryParamsHandling]=\"actionLink.queryParamsHandling\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-link]=\"actionLink.isStyleLink\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"\n >{{ ($label | async) ?? '' }}</a\n >\n </ng-template>\n <ng-template #button>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [pTooltip]=\"$any($tooltip | async)\"\n [loading]=\"(($loading | async) ?? false) || ((inputLoading | async) ?? false)\"\n [disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n (click)=\"triggerAction($event)\"\n [class.p-button-rounded]=\"hasNoTitle\"\n [class.mng-action-button-icon]=\"hasNoTitle\"\n [class.p-button-text]=\"action.isStyleText\"\n [class.p-button-raised]=\"action.isStyleRaised\"\n [class.p-button-outlined]=\"action.isStyleOutlined\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-default]=\"action.level === levelDefault\"\n [class.p-button-primary]=\"action.level === levelPrimary\"\n [class.p-button-secondary]=\"action.level === levelSecondary\"\n [class.p-button-info]=\"action.level === levelInfo\"\n [class.p-button-help]=\"action.level === levelHelp\"\n [class.p-button-success]=\"action.level === levelSuccess\"\n [class.p-button-warning]=\"action.level === levelWarning\"\n [class.p-button-danger]=\"action.level === levelDanger\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n", styles: [":host{display:inline-block}\n"] }]
|
|
@@ -5901,13 +6058,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
5901
6058
|
}] });
|
|
5902
6059
|
|
|
5903
6060
|
class MngFormlyFieldInputComponent extends FieldType {
|
|
6061
|
+
constructor() {
|
|
6062
|
+
super(...arguments);
|
|
6063
|
+
this.subscriptions = [];
|
|
6064
|
+
}
|
|
5904
6065
|
ngOnInit() {
|
|
5905
6066
|
this.iFormControl = this.formControl;
|
|
5906
6067
|
this.descriptor = this.to['descriptor'];
|
|
6068
|
+
// emit lifecycle event
|
|
6069
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.Component, MngFormlyFieldInputComponent, this, {
|
|
6070
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_INIT
|
|
6071
|
+
});
|
|
6072
|
+
// init values
|
|
5907
6073
|
if (this.to.type === 'datepicker' && typeof this.iFormControl.value === 'string') {
|
|
5908
6074
|
const dateObject = new Date(this.iFormControl.value);
|
|
5909
6075
|
this.iFormControl.setValue(dateObject);
|
|
5910
6076
|
}
|
|
6077
|
+
const subscription = this.formControl.valueChanges.pipe(startWith(this.formControl.value), distinctUntilChanged()).subscribe(v => {
|
|
6078
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.ValueChange, MngFormlyFieldInputComponent, this, {
|
|
6079
|
+
value: v
|
|
6080
|
+
});
|
|
6081
|
+
});
|
|
6082
|
+
this.subscriptions.push(subscription);
|
|
6083
|
+
}
|
|
6084
|
+
ngOnDestroy() {
|
|
6085
|
+
this.subscriptions.forEach(s => s.unsubscribe());
|
|
6086
|
+
// emit lifecycle event
|
|
6087
|
+
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.Component, MngFormlyFieldInputComponent, this, {
|
|
6088
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_DESTROY
|
|
6089
|
+
});
|
|
5911
6090
|
}
|
|
5912
6091
|
}
|
|
5913
6092
|
MngFormlyFieldInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -5917,10 +6096,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
5917
6096
|
args: [{ selector: 'mng-formly-field-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngSwitch]=\"to.type\">\n <p-inputNumber\n *ngSwitchCase=\"'number'\"\n [id]=\"$any(key)\"\n [formControl]=\"iFormControl\"\n [formlyAttributes]=\"field\"\n [min]=\"$any(descriptor.numberMin)\"\n [max]=\"$any(descriptor.numberMax)\"\n [step]=\"$any(descriptor.numberStep)\"\n [useGrouping]=\"$any(descriptor.numberUseGrouping)\"\n [minFractionDigits]=\"descriptor.numberMinFractionDigits || 0\"\n [maxFractionDigits]=\"descriptor.numberMaxFractionDigits || 0\"\n [inputStyleClass]=\"descriptor.inputClassName\">\n </p-inputNumber>\n\n <div *ngSwitchCase=\"'switch'\" class=\"flex flex-column\">\n <label [for]=\"key\" [class]=\"descriptor.labelClassName\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <p-inputSwitch [id]=\"$any(key)\" [formControl]=\"iFormControl\" [formlyAttributes]=\"field\" [styleClass]=\"descriptor.inputClassName\"></p-inputSwitch>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n </div>\n\n <ng-container *ngSwitchCase=\"'radio'\">\n <div *ngFor=\"let option of descriptor.radioOptions\" [id]=\"$any(key)\" class=\"field-radiobutton\">\n <p-radioButton\n [name]=\"$any(key)\"\n [value]=\"option.value\"\n [formControl]=\"iFormControl\"\n [formlyAttributes]=\"field\"\n [styleClass]=\"descriptor.inputClassName\"></p-radioButton>\n <label [for]=\"option.value\" [class]=\"'mng-radio-button-label ' + descriptor.labelClassName\">{{ option.title | translate }}</label>\n </div>\n </ng-container>\n\n <textarea\n *ngSwitchCase=\"'textarea'\"\n [id]=\"$any(key)\"\n [formControl]=\"iFormControl\"\n [formlyAttributes]=\"field\"\n [rows]=\"descriptor.rows ?? 3\"\n pInputTextarea\n [class]=\"descriptor.inputClassName\">\n </textarea>\n\n <p-calendar\n *ngSwitchCase=\"'datepicker'\"\n appendTo=\"body\"\n [formControl]=\"iFormControl\"\n [formlyAttributes]=\"field\"\n [dateFormat]=\"$any(descriptor.datePickerFormat)\"\n [minDate]=\"$any(descriptor.datePickerMin)\"\n [maxDate]=\"$any(descriptor.datePickerMax)\"\n [showTime]=\"descriptor.datePickerShowTime\"\n [showIcon]=\"true\"\n [inputStyleClass]=\"descriptor.inputClassName\">\n </p-calendar>\n\n <p-inputMask\n *ngSwitchCase=\"'mask'\"\n [formControl]=\"iFormControl\"\n [formlyAttributes]=\"field\"\n [mask]=\"$any(descriptor.mask)\"\n [placeholder]=\"$any(descriptor.placeholder)\"\n [slotChar]=\"$any(descriptor.slotChar)\"\n [styleClass]=\"descriptor.inputClassName\">\n </p-inputMask>\n\n <input *ngSwitchDefault pInputText [id]=\"$any(key)\" [type]=\"to.type || 'text'\" [formControl]=\"iFormControl\" [formlyAttributes]=\"field\" />\n</ng-container>\n" }]
|
|
5918
6097
|
}] });
|
|
5919
6098
|
|
|
6099
|
+
class MngFormlyFieldLabelComponent {
|
|
6100
|
+
constructor() {
|
|
6101
|
+
this.className = 'hidden';
|
|
6102
|
+
}
|
|
6103
|
+
}
|
|
6104
|
+
MngFormlyFieldLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6105
|
+
MngFormlyFieldLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldLabelComponent, selector: "mng-formly-field-label", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldLabelComponent, decorators: [{
|
|
6107
|
+
type: Component,
|
|
6108
|
+
args: [{ selector: 'mng-formly-field-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "" }]
|
|
6109
|
+
}], propDecorators: { className: [{
|
|
6110
|
+
type: HostBinding,
|
|
6111
|
+
args: ['class']
|
|
6112
|
+
}] } });
|
|
6113
|
+
|
|
5920
6114
|
class MngFormlyFieldDropdownComponent extends FieldType {
|
|
6115
|
+
constructor() {
|
|
6116
|
+
super(...arguments);
|
|
6117
|
+
this.subscriptions = [];
|
|
6118
|
+
}
|
|
5921
6119
|
ngOnInit() {
|
|
5922
6120
|
this.dFormControl = this.formControl;
|
|
5923
6121
|
this.descriptor = this.to['descriptor'];
|
|
6122
|
+
// emit lifecycle event
|
|
6123
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.Component, MngFormlyFieldDropdownComponent, this, {
|
|
6124
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_INIT
|
|
6125
|
+
});
|
|
6126
|
+
const subscription = this.formControl.valueChanges.pipe(startWith(this.formControl.value), distinctUntilChanged()).subscribe(v => {
|
|
6127
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.ValueChange, MngFormlyFieldDropdownComponent, this, {
|
|
6128
|
+
value: v
|
|
6129
|
+
});
|
|
6130
|
+
});
|
|
6131
|
+
this.subscriptions.push(subscription);
|
|
6132
|
+
}
|
|
6133
|
+
ngOnDestroy() {
|
|
6134
|
+
this.subscriptions.forEach(s => s.unsubscribe());
|
|
6135
|
+
// emit lifecycle event
|
|
6136
|
+
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.Component, MngFormlyFieldDropdownComponent, this, {
|
|
6137
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_DESTROY
|
|
6138
|
+
});
|
|
5924
6139
|
}
|
|
5925
6140
|
}
|
|
5926
6141
|
MngFormlyFieldDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -6693,6 +6908,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
6693
6908
|
}] } });
|
|
6694
6909
|
|
|
6695
6910
|
var SizeEnum = ActionDescriptor.SizeEnum;
|
|
6911
|
+
var DialogSizeEnum = ActionEditorDescriptor.DialogSizeEnum;
|
|
6696
6912
|
class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
6697
6913
|
constructor(actionExecutor) {
|
|
6698
6914
|
super();
|
|
@@ -6716,7 +6932,8 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
6716
6932
|
const viewAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.viewEditor, 'details', this.descriptor.editor.model.type, this.descriptor.property)
|
|
6717
6933
|
.withPosition(ActionPositionEnum.RowClick)
|
|
6718
6934
|
.withTitle(null)
|
|
6719
|
-
.withDialogClassName('mng-
|
|
6935
|
+
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
6936
|
+
.withDialogSize(DialogSizeEnum.Small);
|
|
6720
6937
|
viewAction.withEditorActions([new ActionEditorSubmitDescriptor(viewAction, ActionEditorSubmitDescriptor.TypeEnum.Cancel)]);
|
|
6721
6938
|
this.rowClickActions.push(viewAction);
|
|
6722
6939
|
}
|
|
@@ -6725,7 +6942,8 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
6725
6942
|
.withPosition(ActionPositionEnum.ToolbarRight)
|
|
6726
6943
|
.withTitle(null)
|
|
6727
6944
|
.withIcon('pi pi-plus')
|
|
6728
|
-
.withDialogClassName('mng-
|
|
6945
|
+
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
6946
|
+
.withDialogSize(DialogSizeEnum.Small)
|
|
6729
6947
|
.withSize(SizeEnum.ExtraSmall)
|
|
6730
6948
|
.withSubmitFunction(ctx => {
|
|
6731
6949
|
if (!ctx.data?.item) {
|
|
@@ -6745,7 +6963,8 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
6745
6963
|
const editAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.editEditor, 'edit', this.descriptor.editor.model.type, this.descriptor.property)
|
|
6746
6964
|
.withTitle(null)
|
|
6747
6965
|
.withIcon('pi pi-pencil')
|
|
6748
|
-
.withDialogClassName('mng-
|
|
6966
|
+
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
6967
|
+
.withDialogSize(DialogSizeEnum.Small)
|
|
6749
6968
|
.withSize(SizeEnum.ExtraSmall)
|
|
6750
6969
|
.withSubmitFunction(ctx => {
|
|
6751
6970
|
if (!ctx.data?.item) {
|
|
@@ -6946,10 +7165,10 @@ class MngFormlyFieldTableDialogMultiselectComponent extends FieldType {
|
|
|
6946
7165
|
}
|
|
6947
7166
|
}
|
|
6948
7167
|
MngFormlyFieldTableDialogMultiselectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
6949
|
-
MngFormlyFieldTableDialogMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldTableDialogMultiselectComponent, selector: "mng-formly-table-multiselect-add-field", usesInheritance: true, ngImport: i0, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label!}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-
|
|
7168
|
+
MngFormlyFieldTableDialogMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldTableDialogMultiselectComponent, selector: "mng-formly-table-multiselect-add-field", usesInheritance: true, ngImport: i0, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label!}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n </ng-template>\n\n <ng-template pTemplate=\"footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-text\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </ng-template>\n</p-dialog>\n", components: [{ type: MngTableComponent, selector: "mng-table", inputs: ["descriptor", "items", "queryResult", "loading", "dataProvider", "useQueryParams", "selectionMode", "selectionEnabled", "isColumnClickable", "viewContainer", "captionComponent", "columnActionComponent"], outputs: ["tableLoad", "cellClick", "selectionChange", "captionComponentInstance", "columnActionComponentInstance"] }, { type: i1$3.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { type: i3$2.Messages, selector: "p-messages", inputs: ["value", "closable", "style", "styleClass", "enableService", "key", "escape", "severity", "showTransitionOptions", "hideTransitionOptions"], outputs: ["valueChange"] }], directives: [{ type: MngTemplateDirective, selector: "[mngTemplate]", inputs: ["type", "mngTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i8.Ripple, selector: "[pRipple]" }, { type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], pipes: { "translate": i1$1.TranslatePipe, "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6950
7169
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, decorators: [{
|
|
6951
7170
|
type: Component,
|
|
6952
|
-
args: [{ selector: 'mng-formly-table-multiselect-add-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label!}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-
|
|
7171
|
+
args: [{ selector: 'mng-formly-table-multiselect-add-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label!}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n </ng-template>\n\n <ng-template pTemplate=\"footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-text\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </ng-template>\n</p-dialog>\n" }]
|
|
6953
7172
|
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
6954
7173
|
|
|
6955
7174
|
class MngFormlyFieldTabsComponent extends FieldType {
|
|
@@ -6962,30 +7181,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
6962
7181
|
}] });
|
|
6963
7182
|
|
|
6964
7183
|
class MngFormlyFieldFieldsetComponent extends FieldType {
|
|
7184
|
+
constructor() {
|
|
7185
|
+
super(...arguments);
|
|
7186
|
+
this.typeFieldset = FieldGroupDescriptor.TypeEnum.Fieldset;
|
|
7187
|
+
this.typeLogical = FieldGroupDescriptor.TypeEnum.Logical;
|
|
7188
|
+
}
|
|
7189
|
+
ngOnInit() {
|
|
7190
|
+
this.descriptor = this.to['descriptor'];
|
|
7191
|
+
}
|
|
6965
7192
|
}
|
|
6966
7193
|
MngFormlyFieldFieldsetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldFieldsetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
6967
|
-
MngFormlyFieldFieldsetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldFieldsetComponent, selector: "mng-formly-field-fieldset", usesInheritance: true, ngImport: i0, template: "<ng-container *ngFor=\"let group of field.fieldGroup; let i = index; let last = last\">\n <p-fieldset *
|
|
7194
|
+
MngFormlyFieldFieldsetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldFieldsetComponent, selector: "mng-formly-field-fieldset", usesInheritance: true, ngImport: i0, template: "<ng-container *ngFor=\"let group of field.fieldGroup; let i = index; let last = last\">\n <ng-container [ngSwitch]=\"descriptor?.type\">\n <p-fieldset *ngSwitchCase=\"typeFieldset\" [legend]=\"group.templateOptions?.label! | translate\">\n <formly-field [field]=\"group\"></formly-field>\n </p-fieldset>\n <formly-field *ngSwitchDefault [field]=\"group\"></formly-field>\n </ng-container>\n</ng-container>\n", components: [{ type: i1$5.Fieldset, selector: "p-fieldset", inputs: ["legend", "toggleable", "collapsed", "style", "styleClass", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { type: i3$1.FormlyField, selector: "formly-field", inputs: ["field"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": i1$1.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6968
7195
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldFieldsetComponent, decorators: [{
|
|
6969
7196
|
type: Component,
|
|
6970
|
-
args: [{ selector: 'mng-formly-field-fieldset', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let group of field.fieldGroup; let i = index; let last = last\">\n <p-fieldset *
|
|
7197
|
+
args: [{ selector: 'mng-formly-field-fieldset', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let group of field.fieldGroup; let i = index; let last = last\">\n <ng-container [ngSwitch]=\"descriptor?.type\">\n <p-fieldset *ngSwitchCase=\"typeFieldset\" [legend]=\"group.templateOptions?.label! | translate\">\n <formly-field [field]=\"group\"></formly-field>\n </p-fieldset>\n <formly-field *ngSwitchDefault [field]=\"group\"></formly-field>\n </ng-container>\n</ng-container>\n" }]
|
|
6971
7198
|
}] });
|
|
6972
7199
|
|
|
6973
7200
|
class MngFormlyFieldWrapperComponent extends FieldWrapper {
|
|
6974
7201
|
}
|
|
6975
7202
|
MngFormlyFieldWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
6976
|
-
MngFormlyFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldWrapperComponent, selector: "mng-formly-field-wrapper", usesInheritance: true, ngImport: i0, template: "<div class=\"field\">\n <label [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ $any(to?.label) | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", components: [{ type: i3$1.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1$1.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7203
|
+
MngFormlyFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyFieldWrapperComponent, selector: "mng-formly-field-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ $any(to?.label) | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", components: [{ type: i3$1.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1$1.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6977
7204
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyFieldWrapperComponent, decorators: [{
|
|
6978
7205
|
type: Component,
|
|
6979
|
-
args: [{ selector: 'mng-formly-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"field\">\n <label [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ $any(to?.label) | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
7206
|
+
args: [{ selector: 'mng-formly-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ $any(to?.label) | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
6980
7207
|
}] });
|
|
6981
7208
|
|
|
6982
7209
|
class MngFormlyTableWrapperComponent extends FieldWrapper {
|
|
6983
7210
|
}
|
|
6984
7211
|
MngFormlyTableWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyTableWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
6985
|
-
MngFormlyTableWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyTableWrapperComponent, selector: "mng-formly-table-wrapper", usesInheritance: true, ngImport: i0, template: "<div class=\"field table\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", components: [{ type: i3$1.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1$1.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7212
|
+
MngFormlyTableWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngFormlyTableWrapperComponent, selector: "mng-formly-table-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", components: [{ type: i3$1.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1$1.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6986
7213
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngFormlyTableWrapperComponent, decorators: [{
|
|
6987
7214
|
type: Component,
|
|
6988
|
-
args: [{ selector: 'mng-formly-table-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"field table\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
7215
|
+
args: [{ selector: 'mng-formly-table-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
6989
7216
|
}] });
|
|
6990
7217
|
|
|
6991
7218
|
class MngBreadcrumbComponent {
|
|
@@ -7504,10 +7731,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
7504
7731
|
args: ['window:resize', ['$event']]
|
|
7505
7732
|
}] } });
|
|
7506
7733
|
|
|
7507
|
-
function mngCommonsInitializerProvider(
|
|
7508
|
-
return () =>
|
|
7734
|
+
function mngCommonsInitializerProvider(mngCommonsInit) {
|
|
7735
|
+
return () => mngCommonsInit.initialize();
|
|
7509
7736
|
}
|
|
7510
7737
|
|
|
7738
|
+
class MngCommonsInitService {
|
|
7739
|
+
constructor(translate, configurationService, mngCommons, commonsInitializers) {
|
|
7740
|
+
this.translate = translate;
|
|
7741
|
+
this.configurationService = configurationService;
|
|
7742
|
+
this.mngCommons = mngCommons;
|
|
7743
|
+
this.commonsInitializers = commonsInitializers;
|
|
7744
|
+
this.isInitialized = false;
|
|
7745
|
+
}
|
|
7746
|
+
initialize() {
|
|
7747
|
+
if (this.isInitialized) {
|
|
7748
|
+
return of(void 0);
|
|
7749
|
+
}
|
|
7750
|
+
console.debug(`Initializing @mediusinc/mng-commons.`);
|
|
7751
|
+
return this.configurationService.loadJsonSources().pipe(mergeMap$1(() => {
|
|
7752
|
+
if (this.commonsInitializers) {
|
|
7753
|
+
console.debug(`Module initializers for @mediusinc/mng-commons.`);
|
|
7754
|
+
return combineLatest(this.commonsInitializers.map(ci => ci())).pipe(map(res => res));
|
|
7755
|
+
}
|
|
7756
|
+
else {
|
|
7757
|
+
return of(true);
|
|
7758
|
+
}
|
|
7759
|
+
}), map(() => this.mngCommons.reset()));
|
|
7760
|
+
this.isInitialized = true;
|
|
7761
|
+
}
|
|
7762
|
+
}
|
|
7763
|
+
MngCommonsInitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsInitService, deps: [{ token: i1$1.TranslateService }, { token: MngConfigurationService }, { token: MngCommonsService }, { token: MNG_COMMONS_INITIALIZER_IT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7764
|
+
MngCommonsInitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsInitService });
|
|
7765
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngCommonsInitService, decorators: [{
|
|
7766
|
+
type: Injectable
|
|
7767
|
+
}], ctorParameters: function () { return [{ type: i1$1.TranslateService }, { type: MngConfigurationService }, { type: MngCommonsService }, { type: undefined, decorators: [{
|
|
7768
|
+
type: Inject,
|
|
7769
|
+
args: [MNG_COMMONS_INITIALIZER_IT]
|
|
7770
|
+
}, {
|
|
7771
|
+
type: Optional
|
|
7772
|
+
}] }]; } });
|
|
7773
|
+
|
|
7511
7774
|
const mngConfigurationServiceProvider = (httpClient, moduleConfig) => {
|
|
7512
7775
|
const service = MngConfigurationService.init(httpClient);
|
|
7513
7776
|
if (moduleConfig?.configuration?.projectEnvironment) {
|
|
@@ -7521,7 +7784,16 @@ function mngConfigJsonAppInitializerProvider(configService, moduleConfig) {
|
|
|
7521
7784
|
return of(false);
|
|
7522
7785
|
}
|
|
7523
7786
|
else {
|
|
7524
|
-
|
|
7787
|
+
const jsonSource = moduleConfig?.configuration?.jsonSource;
|
|
7788
|
+
if (!jsonSource) {
|
|
7789
|
+
return configService.addJsonSource();
|
|
7790
|
+
}
|
|
7791
|
+
else if (Array.isArray(jsonSource)) {
|
|
7792
|
+
return combineLatest(jsonSource.map(source => configService.addJsonSource(source))).pipe(map(sourcesRes => sourcesRes.every(s => s)));
|
|
7793
|
+
}
|
|
7794
|
+
else {
|
|
7795
|
+
return configService.addJsonSource(jsonSource);
|
|
7796
|
+
}
|
|
7525
7797
|
}
|
|
7526
7798
|
};
|
|
7527
7799
|
}
|
|
@@ -7531,6 +7803,11 @@ const formlyWrappersConfig = [
|
|
|
7531
7803
|
{ name: 'field-table', component: MngFormlyTableWrapperComponent }
|
|
7532
7804
|
];
|
|
7533
7805
|
const formlyTypesConfig = [
|
|
7806
|
+
{
|
|
7807
|
+
name: 'label',
|
|
7808
|
+
component: MngFormlyFieldLabelComponent,
|
|
7809
|
+
wrappers: ['field']
|
|
7810
|
+
},
|
|
7534
7811
|
{
|
|
7535
7812
|
name: 'input',
|
|
7536
7813
|
component: MngFormlyFieldInputComponent,
|
|
@@ -7774,6 +8051,7 @@ const declarations = [
|
|
|
7774
8051
|
MngFormlyTableWrapperComponent,
|
|
7775
8052
|
// formly fields
|
|
7776
8053
|
MngFormlyFieldInputComponent,
|
|
8054
|
+
MngFormlyFieldLabelComponent,
|
|
7777
8055
|
MngFormlyFieldDropdownComponent,
|
|
7778
8056
|
MngFormlyFieldAutocompleteComponent,
|
|
7779
8057
|
MngFormlyFieldLookupDialogComponent,
|
|
@@ -7802,6 +8080,7 @@ class MngCommonsModule {
|
|
|
7802
8080
|
DialogService,
|
|
7803
8081
|
MessageService,
|
|
7804
8082
|
ConfirmationService,
|
|
8083
|
+
MngCommonsInitService,
|
|
7805
8084
|
MngActionExecutorService,
|
|
7806
8085
|
MngNavigationService,
|
|
7807
8086
|
MngCommonsService,
|
|
@@ -7831,7 +8110,7 @@ class MngCommonsModule {
|
|
|
7831
8110
|
{
|
|
7832
8111
|
provide: APP_INITIALIZER,
|
|
7833
8112
|
useFactory: mngCommonsInitializerProvider,
|
|
7834
|
-
deps: [
|
|
8113
|
+
deps: [MngCommonsInitService],
|
|
7835
8114
|
multi: true
|
|
7836
8115
|
},
|
|
7837
8116
|
{
|
|
@@ -7878,6 +8157,7 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
|
|
|
7878
8157
|
MngFormlyTableWrapperComponent,
|
|
7879
8158
|
// formly fields
|
|
7880
8159
|
MngFormlyFieldInputComponent,
|
|
8160
|
+
MngFormlyFieldLabelComponent,
|
|
7881
8161
|
MngFormlyFieldDropdownComponent,
|
|
7882
8162
|
MngFormlyFieldAutocompleteComponent,
|
|
7883
8163
|
MngFormlyFieldLookupDialogComponent,
|
|
@@ -7991,6 +8271,7 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
|
|
|
7991
8271
|
MngFormlyTableWrapperComponent,
|
|
7992
8272
|
// formly fields
|
|
7993
8273
|
MngFormlyFieldInputComponent,
|
|
8274
|
+
MngFormlyFieldLabelComponent,
|
|
7994
8275
|
MngFormlyFieldDropdownComponent,
|
|
7995
8276
|
MngFormlyFieldAutocompleteComponent,
|
|
7996
8277
|
MngFormlyFieldLookupDialogComponent,
|
|
@@ -8082,11 +8363,22 @@ class AMngBaseApiService {
|
|
|
8082
8363
|
this.objectSerializer = ObjectSerializer.get();
|
|
8083
8364
|
}
|
|
8084
8365
|
getUrl(...pathSegments) {
|
|
8085
|
-
let
|
|
8086
|
-
if (
|
|
8366
|
+
let baseUrl = this.getBasePath();
|
|
8367
|
+
if (baseUrl.endsWith('/')) {
|
|
8368
|
+
baseUrl = baseUrl.substring(0, baseUrl.length - 1);
|
|
8369
|
+
}
|
|
8370
|
+
const serviceBasePath = this.getServiceBasePath();
|
|
8371
|
+
let path = [serviceBasePath, ...pathSegments].filter(s => s && s.length).join('/');
|
|
8372
|
+
// omit first and last '/'
|
|
8373
|
+
if (path.startsWith('/')) {
|
|
8087
8374
|
path = path.substring(1);
|
|
8088
8375
|
}
|
|
8089
|
-
|
|
8376
|
+
if (path.endsWith('/')) {
|
|
8377
|
+
path = path.substring(0, path.length - 1);
|
|
8378
|
+
}
|
|
8379
|
+
// replace any double '//' from path that could come from joining paths
|
|
8380
|
+
path = path.replace('//', '/');
|
|
8381
|
+
return `${baseUrl}/${path}`;
|
|
8090
8382
|
}
|
|
8091
8383
|
serializeQueryParam(queryParam, type = 'QueryParam') {
|
|
8092
8384
|
return this.objectSerializer.serialize(queryParam, type);
|
|
@@ -8146,7 +8438,7 @@ class AMngCrudApiService extends AMngGetAllApiService {
|
|
|
8146
8438
|
super(type, queryResultType, http);
|
|
8147
8439
|
}
|
|
8148
8440
|
createPost(item, params) {
|
|
8149
|
-
const url = this.getUrl(this.getCreatePostPath());
|
|
8441
|
+
const url = this.getUrl(this.getCreatePostPath(item));
|
|
8150
8442
|
return this.http
|
|
8151
8443
|
.post(url, this.serialize(item), {
|
|
8152
8444
|
withCredentials: true,
|
|
@@ -8190,7 +8482,7 @@ class AMngCrudApiService extends AMngGetAllApiService {
|
|
|
8190
8482
|
})
|
|
8191
8483
|
.pipe(map(res => this.deserialize(res)));
|
|
8192
8484
|
}
|
|
8193
|
-
getCreatePostPath() {
|
|
8485
|
+
getCreatePostPath(item) {
|
|
8194
8486
|
return '';
|
|
8195
8487
|
}
|
|
8196
8488
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -8666,5 +8958,5 @@ class RouteDataBuilder {
|
|
|
8666
8958
|
* Generated bundle index. Do not edit.
|
|
8667
8959
|
*/
|
|
8668
8960
|
|
|
8669
|
-
export { AFieldDescriptor, AFieldGroupDescriptor, AGenericFieldDescriptor, AMngApiService, AMngBaseApiService, AMngCrudApiService, AMngGetAllApiService, AMngTableviewRouteComponent, ActionActivationResult, ActionActivationTriggerEnum, ActionDeleteDescriptor, ActionDescriptor, ActionEditorAddDescriptor, ActionEditorDescriptor, ActionEditorDetailsDescriptor, ActionEditorEditDescriptor, ActionEditorSubmitDescriptor, ActionError, ActionExecContext, ActionLevelEnum, ActionLinkDescriptor, ActionPositionEnum, ActionRunResult, ActionSimpleDescriptor, ActionTriggerResult, ActionTypeEnum, ColumnDescriptor, DataProvider, DefaultMngErrorMapperService, EditorDataProvider, EditorDescriptor, EditorFormlyUtil, EnumName, EnumUtil, FieldDescriptor, FieldGroupDescriptor, FieldInputDescriptor, FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldManyEditorDescriptor, FieldManyToManyEditorDescriptor, FieldTabGroupDescriptor, FieldValidator, FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor, I18nUtils, JsonPathPipe, LookupDataProvider, MNG_AUTOCOMPLETE_VALUE_ACCESSOR, MNG_DROPDOWN_VALUE_ACCESSOR, MediusFilterMatchType, MediusFilterParam, MediusQueryMode, MediusQueryParam, MediusQueryParamBuilder, MediusQueryResult, MediusRestUtil, MngActionComponent, MngActionEditorComponent, MngActionExecutorService, MngActionRouteComponent, MngAutocompleteComponent, MngBooleanPipe, MngBreadcrumbComponent, MngCommonsModule, MngCommonsService, MngComponentDirective, MngConfigurationService, MngDropdownComponent, MngEnumPipe, MngErrorMapperService, MngFooterComponent, MngFormEditorComponent, MngFormEditorSubmitEvent, MngFormFieldEvent, MngFormFieldEventComponentSubtype, MngFormFieldEventDialogSubtype, MngFormFieldEventTypeEnum, MngFormlyFieldAutocompleteComponent, MngFormlyFieldDropdownComponent, MngFormlyFieldFieldsetComponent, MngFormlyFieldInputComponent, MngFormlyFieldLookupDialogComponent, MngFormlyFieldTableDialogFormComponent, MngFormlyFieldTableDialogMultiselectComponent, MngFormlyFieldTabsComponent, MngFormlyFieldWrapperComponent, MngFormlyTableWrapperComponent, MngI18nPropertyPipe, MngLinkFormatterPipe, MngMainLayoutComponent, MngMainLayoutComponentService, MngMenuComponent, MngMenuItemComponent, MngNavigationService, MngTableCellClickEvent, MngTableColumnFilterComponent, MngTableColumnValueComponent, MngTableComponent, MngTableLoadEvent, MngTableReloadEvent, MngTableviewComponent, MngTableviewRouteComponent, MngTemplateDirective, MngTopbarComponent, MngViewContainerComponentService, ModelDescriptor, ModelUtil, NotificationUtil, ObjectSerializer, RouteBuilder, RouteDataBuilder, RoutesBuilder, TableDataProvider, TableDescriptor, TableviewDataProvider, TableviewDescriptor, TypeName, TypeUtil, enumNameDecoratorPropertyName, enumsMapBase, formlyTypesConfig, formlyWrappersConfig, getEmailValidationMessage, getFormlyValidationMessages, getMaxLengthValidationMessage, getMinLengthValidationMessage, getRequiredValidationMessage, getTextPatternValidationMessage,
|
|
8961
|
+
export { ACTION_EDITOR_DIALOG_COMPONENT_SETTING, AFieldDescriptor, AFieldGroupDescriptor, AGenericFieldDescriptor, AMngApiService, AMngBaseApiService, AMngCrudApiService, AMngGetAllApiService, AMngTableviewRouteComponent, ActionActivationResult, ActionActivationTriggerEnum, ActionDeleteDescriptor, ActionDescriptor, ActionEditorAddDescriptor, ActionEditorDescriptor, ActionEditorDetailsDescriptor, ActionEditorEditDescriptor, ActionEditorSubmitDescriptor, ActionError, ActionExecContext, ActionLevelEnum, ActionLinkDescriptor, ActionPositionEnum, ActionRunResult, ActionSimpleDescriptor, ActionTriggerResult, ActionTypeEnum, ColumnDescriptor, DataProvider, DefaultMngErrorMapperService, EditorDataProvider, EditorDescriptor, EditorFormlyUtil, EnumName, EnumUtil, FieldDescriptor, FieldGroupDescriptor, FieldInputDescriptor, FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldManyEditorDescriptor, FieldManyToManyEditorDescriptor, FieldTabGroupDescriptor, FieldValidator, FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor, I18nUtils, JsonPathPipe, LookupDataProvider, MNG_AUTOCOMPLETE_VALUE_ACCESSOR, MNG_BROWSER_STORAGE_IT, MNG_COMMONS_INITIALIZER_IT, MNG_DROPDOWN_VALUE_ACCESSOR, MNG_MODULE_CONFIG_IT, MediusFilterMatchType, MediusFilterParam, MediusQueryMode, MediusQueryParam, MediusQueryParamBuilder, MediusQueryResult, MediusRestUtil, MngActionComponent, MngActionEditorComponent, MngActionExecutorService, MngActionRouteComponent, MngAutocompleteComponent, MngBooleanPipe, MngBreadcrumbComponent, MngCommonsModule, MngCommonsService, MngComponentDirective, MngConfigurationService, MngDropdownComponent, MngEnumPipe, MngErrorMapperService, MngFooterComponent, MngFormEditorComponent, MngFormEditorSubmitEvent, MngFormFieldEvent, MngFormFieldEventComponentSubtype, MngFormFieldEventDialogSubtype, MngFormFieldEventTypeEnum, MngFormlyFieldAutocompleteComponent, MngFormlyFieldDropdownComponent, MngFormlyFieldFieldsetComponent, MngFormlyFieldInputComponent, MngFormlyFieldLabelComponent, MngFormlyFieldLookupDialogComponent, MngFormlyFieldTableDialogFormComponent, MngFormlyFieldTableDialogMultiselectComponent, MngFormlyFieldTabsComponent, MngFormlyFieldWrapperComponent, MngFormlyTableWrapperComponent, MngI18nPropertyPipe, MngLinkFormatterPipe, MngMainLayoutComponent, MngMainLayoutComponentService, MngMenuComponent, MngMenuItemComponent, MngNavigationService, MngTableCellClickEvent, MngTableColumnFilterComponent, MngTableColumnValueComponent, MngTableComponent, MngTableLoadEvent, MngTableReloadEvent, MngTableviewComponent, MngTableviewRouteComponent, MngTemplateDirective, MngTopbarComponent, MngViewContainerComponentService, ModelDescriptor, ModelUtil, NotificationUtil, ObjectSerializer, RouteBuilder, RouteDataBuilder, RoutesBuilder, TableDataProvider, TableDescriptor, TableviewDataProvider, TableviewDescriptor, TypeName, TypeUtil, enumNameDecoratorPropertyName, enumsMapBase, formlyTypesConfig, formlyWrappersConfig, getEmailValidationMessage, getFormlyValidationMessages, getMaxLengthValidationMessage, getMinLengthValidationMessage, getRequiredValidationMessage, getTextPatternValidationMessage, mngConfigJsonAppInitializerProvider, mngConfigurationServiceProvider, mngFormlyConfigProvider, primeNgModules, typeMapBase, typeNameDecoratorPropertyName };
|
|
8670
8962
|
//# sourceMappingURL=mediusinc-mng-commons.mjs.map
|