@mediusinc/mng-commons 0.12.2 → 0.13.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/components/action/action.component.mjs +8 -8
- package/esm2020/lib/components/action/editor/action-editor.component.mjs +5 -5
- package/esm2020/lib/components/button/button.component.mjs +46 -0
- package/esm2020/lib/components/button/index.mjs +2 -0
- package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +8 -3
- package/esm2020/lib/components/form/editor/form-editor.component.mjs +3 -2
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +10 -13
- package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +27 -11
- package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +5 -3
- package/esm2020/lib/data-providers/index.mjs +2 -1
- package/esm2020/lib/data-providers/tableview-crud.data-provider.mjs +24 -0
- package/esm2020/lib/descriptors/action/action-confirmation.descriptor.mjs +106 -0
- package/esm2020/lib/descriptors/action.descriptor.mjs +53 -154
- package/esm2020/lib/descriptors/button.descriptor.mjs +111 -0
- package/esm2020/lib/descriptors/column.descriptor.mjs +17 -1
- package/esm2020/lib/descriptors/field.descriptor.mjs +1 -1
- package/esm2020/lib/descriptors/index.mjs +3 -1
- package/esm2020/lib/mng-commons.module.mjs +24 -9
- package/esm2020/lib/pipes/getter.pipe.mjs +20 -0
- package/esm2020/lib/pipes/index.mjs +4 -2
- package/esm2020/lib/pipes/json-path.pipe.mjs +1 -2
- package/esm2020/lib/pipes/parametrize.pipe.mjs +85 -0
- package/esm2020/lib/pipes/template.pipe.mjs +24 -0
- package/esm2020/lib/services/action-executor.service.mjs +34 -23
- package/esm2020/lib/styles/button-style.builder.mjs +59 -8
- package/esm2020/lib/styles/styles.util.mjs +2 -2
- package/esm2020/lib/utils/string.util.mjs +4 -1
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/mediusinc-mng-commons.mjs +627 -266
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +628 -262
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/lib/components/button/button.component.d.ts +16 -0
- package/lib/components/button/index.d.ts +1 -0
- package/lib/components/form/dropdown/dropdown.component.d.ts +2 -0
- package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +1 -0
- package/lib/data-providers/index.d.ts +1 -0
- package/lib/data-providers/tableview-crud.data-provider.d.ts +8 -0
- package/lib/descriptors/action/action-confirmation.descriptor.d.ts +48 -0
- package/lib/descriptors/action.descriptor.d.ts +26 -83
- package/lib/descriptors/button.descriptor.d.ts +40 -0
- package/lib/descriptors/column.descriptor.d.ts +6 -0
- package/lib/descriptors/field.descriptor.d.ts +9 -9
- package/lib/descriptors/index.d.ts +2 -0
- package/lib/mng-commons.module.d.ts +74 -71
- package/lib/pipes/getter.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +3 -1
- package/lib/pipes/parametrize.pipe.d.ts +13 -0
- package/lib/pipes/template.pipe.d.ts +10 -0
- package/lib/services/action-executor.service.d.ts +3 -3
- package/lib/styles/button-style.builder.d.ts +43 -2
- package/package.json +3 -3
- package/public-api.d.ts +1 -0
- package/version-info.json +5 -5
- package/esm2020/lib/pipes/link-formatter.pipe.mjs +0 -39
- package/lib/pipes/link-formatter.pipe.d.ts +0 -11
|
@@ -558,6 +558,27 @@ class TableviewDataProvider extends EditorDataProvider {
|
|
|
558
558
|
}
|
|
559
559
|
}
|
|
560
560
|
|
|
561
|
+
class TableviewCrudDataProvider extends TableviewDataProvider {
|
|
562
|
+
constructor(modelType, serviceType, idPropertyName, useGetAllForFetch = false) {
|
|
563
|
+
var _a;
|
|
564
|
+
super(modelType, serviceType);
|
|
565
|
+
this.withGetAll((queryParam, service) => service.getAllPost(queryParam));
|
|
566
|
+
if (useGetAllForFetch) {
|
|
567
|
+
const selectedIdPropertyName = (_a = idPropertyName !== null && idPropertyName !== void 0 ? idPropertyName : ModelUtil.findIdAttribute(modelType)) !== null && _a !== void 0 ? _a : 'id';
|
|
568
|
+
this.withFetch((id, service) => {
|
|
569
|
+
const qp = MediusQueryParamBuilder.create(10, 0).withFilter(selectedIdPropertyName, id, id, MediusFilterMatchType.Equals, true).build();
|
|
570
|
+
return service.getAllPost(qp).pipe(map(res => res.pageData[0]));
|
|
571
|
+
});
|
|
572
|
+
}
|
|
573
|
+
else {
|
|
574
|
+
this.withFetch((id, service) => service.getByIdGet(id));
|
|
575
|
+
}
|
|
576
|
+
this.withCreate((item, service) => service.createPost(item));
|
|
577
|
+
this.withUpdate((id, item, service) => service.updatePut(id, item));
|
|
578
|
+
this.withDelete((id, item, service) => service.removeDelete(id, item));
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
|
|
561
582
|
var AuthorizationTypeEnum;
|
|
562
583
|
(function (AuthorizationTypeEnum) {
|
|
563
584
|
AuthorizationTypeEnum["All"] = "ALL";
|
|
@@ -850,7 +871,7 @@ class StylesUtil {
|
|
|
850
871
|
}
|
|
851
872
|
}
|
|
852
873
|
static getActionButtonRoundedWidth(action) {
|
|
853
|
-
switch (action.size) {
|
|
874
|
+
switch (action.buttonDescriptor.styleClass.size) {
|
|
854
875
|
case ActionSizeEnum.ExtraSmall:
|
|
855
876
|
return StylesUtil.BUTTON_ROUNDED_WIDTH_XS;
|
|
856
877
|
case ActionSizeEnum.Small:
|
|
@@ -874,17 +895,18 @@ StylesUtil.TABLE_CELL_PADDING_X_SM = 4;
|
|
|
874
895
|
StylesUtil.TABLE_CELL_PADDING_X_LG = 12;
|
|
875
896
|
|
|
876
897
|
class ButtonStyleBuilder {
|
|
877
|
-
constructor(level, customClass) {
|
|
898
|
+
constructor(level = ActionLevelEnum.Default, customClass) {
|
|
878
899
|
this._size = ActionSizeEnum.Normal;
|
|
879
900
|
this._textButton = false;
|
|
880
901
|
this._outlineButton = false;
|
|
881
902
|
this._raisedButton = false;
|
|
903
|
+
this._roundedStyle = ButtonStyleRoundedEnum.DEFAULT;
|
|
882
904
|
this._actionLevel = level;
|
|
883
905
|
this._customClass = customClass;
|
|
884
906
|
}
|
|
885
907
|
getButtonClass(hasNoTitle = false) {
|
|
886
908
|
const styles = [this.convertActionLevelToStyleClass(), this.convertSizeToStyleClass(), this._customClass];
|
|
887
|
-
if (hasNoTitle) {
|
|
909
|
+
if (hasNoTitle && this._roundedStyle === ButtonStyleRoundedEnum.DEFAULT) {
|
|
888
910
|
styles.push(`p-button-rounded mng-action-button-icon`);
|
|
889
911
|
}
|
|
890
912
|
if (this._textButton) {
|
|
@@ -896,37 +918,78 @@ class ButtonStyleBuilder {
|
|
|
896
918
|
if (this._raisedButton) {
|
|
897
919
|
styles.push(`p-button-raised`);
|
|
898
920
|
}
|
|
921
|
+
if (this._roundedStyle === ButtonStyleRoundedEnum.ROUNDED) {
|
|
922
|
+
styles.push('p-button-rounded');
|
|
923
|
+
}
|
|
899
924
|
return styles.join(' ');
|
|
900
925
|
}
|
|
901
|
-
|
|
926
|
+
/**
|
|
927
|
+
* creates instance of style builder with custom properties
|
|
928
|
+
* @param actionLevel ActionLevelEnum
|
|
929
|
+
* @param size ActionSizeEnum
|
|
930
|
+
* @param textButton if true, text button will be applied
|
|
931
|
+
* @param outlineButton if true, outlined button will be applied
|
|
932
|
+
* @param raisedButton if true, raised button will be applied
|
|
933
|
+
* @param customClass additional custom classes (will be added at generating)
|
|
934
|
+
*/
|
|
935
|
+
create(actionLevel, size, textButton, outlineButton, raisedButton, roundedButton, customClass) {
|
|
902
936
|
this._actionLevel = actionLevel !== null && actionLevel !== void 0 ? actionLevel : this._actionLevel;
|
|
903
937
|
this._size = size !== null && size !== void 0 ? size : this._size;
|
|
904
938
|
this._textButton = textButton !== null && textButton !== void 0 ? textButton : this._textButton;
|
|
905
939
|
this._outlineButton = outlineButton !== null && outlineButton !== void 0 ? outlineButton : this._outlineButton;
|
|
906
940
|
this._raisedButton = raisedButton !== null && raisedButton !== void 0 ? raisedButton : this._raisedButton;
|
|
941
|
+
this._roundedStyle = roundedButton !== null && roundedButton !== void 0 ? roundedButton : this._roundedStyle;
|
|
907
942
|
this._customClass = customClass;
|
|
908
943
|
return this;
|
|
909
944
|
}
|
|
945
|
+
/**
|
|
946
|
+
* sets custom action level and returns this object
|
|
947
|
+
* @param actionLevel
|
|
948
|
+
*/
|
|
910
949
|
withActionLevel(actionLevel) {
|
|
911
950
|
this._actionLevel = actionLevel;
|
|
912
951
|
return this;
|
|
913
952
|
}
|
|
953
|
+
/**
|
|
954
|
+
* sets custom size and return this object
|
|
955
|
+
* @param size
|
|
956
|
+
*/
|
|
914
957
|
withSize(size) {
|
|
915
958
|
this._size = size;
|
|
916
959
|
return this;
|
|
917
960
|
}
|
|
961
|
+
/**
|
|
962
|
+
* sets text button property
|
|
963
|
+
* @param withText default true
|
|
964
|
+
*/
|
|
918
965
|
withTextButton(withText = true) {
|
|
919
966
|
this._textButton = withText;
|
|
920
967
|
return this;
|
|
921
968
|
}
|
|
969
|
+
/**
|
|
970
|
+
* sets outline button property
|
|
971
|
+
* @param withOutline default true
|
|
972
|
+
*/
|
|
922
973
|
withOutlineButton(withOutline = true) {
|
|
923
974
|
this._outlineButton = withOutline;
|
|
924
975
|
return this;
|
|
925
976
|
}
|
|
977
|
+
/**
|
|
978
|
+
* sets raised button property
|
|
979
|
+
* @param withRaised default true
|
|
980
|
+
*/
|
|
926
981
|
withRaisedButton(withRaised = true) {
|
|
927
982
|
this._raisedButton = withRaised;
|
|
928
983
|
return this;
|
|
929
984
|
}
|
|
985
|
+
withRoundedButton(roundedStyle = ButtonStyleRoundedEnum.ROUNDED) {
|
|
986
|
+
this._roundedStyle = roundedStyle;
|
|
987
|
+
return this;
|
|
988
|
+
}
|
|
989
|
+
/**
|
|
990
|
+
* sets custom style class
|
|
991
|
+
* @param customClass
|
|
992
|
+
*/
|
|
930
993
|
withCustomClass(customClass) {
|
|
931
994
|
this._customClass = customClass;
|
|
932
995
|
return this;
|
|
@@ -953,15 +1016,15 @@ class ButtonStyleBuilder {
|
|
|
953
1016
|
convertSizeToStyleClass() {
|
|
954
1017
|
switch (this._size) {
|
|
955
1018
|
case ActionSizeEnum.ExtraSmall:
|
|
956
|
-
return 'mng-button-xs';
|
|
1019
|
+
return 'p-button-sm mng-button-xs';
|
|
957
1020
|
case ActionSizeEnum.Small:
|
|
958
|
-
return 'mng-button-sm';
|
|
1021
|
+
return 'p-button-sm mng-button-sm';
|
|
959
1022
|
case ActionSizeEnum.Normal:
|
|
960
1023
|
return '';
|
|
961
1024
|
case ActionSizeEnum.Large:
|
|
962
|
-
return 'mng-button-lg';
|
|
1025
|
+
return 'p-button-lg mng-button-lg';
|
|
963
1026
|
case ActionSizeEnum.ExtraLarge:
|
|
964
|
-
return 'mng-button-xl';
|
|
1027
|
+
return 'p-button-lg mng-button-xl';
|
|
965
1028
|
}
|
|
966
1029
|
}
|
|
967
1030
|
get actionLevel() {
|
|
@@ -979,10 +1042,123 @@ class ButtonStyleBuilder {
|
|
|
979
1042
|
get raisedButton() {
|
|
980
1043
|
return this._raisedButton;
|
|
981
1044
|
}
|
|
1045
|
+
get roundedStyle() {
|
|
1046
|
+
return this._roundedStyle;
|
|
1047
|
+
}
|
|
982
1048
|
get customClass() {
|
|
983
1049
|
return this._customClass;
|
|
984
1050
|
}
|
|
985
1051
|
}
|
|
1052
|
+
var ButtonStyleRoundedEnum;
|
|
1053
|
+
(function (ButtonStyleRoundedEnum) {
|
|
1054
|
+
ButtonStyleRoundedEnum[ButtonStyleRoundedEnum["DEFAULT"] = 0] = "DEFAULT";
|
|
1055
|
+
ButtonStyleRoundedEnum[ButtonStyleRoundedEnum["ROUNDED"] = 1] = "ROUNDED";
|
|
1056
|
+
ButtonStyleRoundedEnum[ButtonStyleRoundedEnum["SQUARE"] = 2] = "SQUARE";
|
|
1057
|
+
})(ButtonStyleRoundedEnum || (ButtonStyleRoundedEnum = {}));
|
|
1058
|
+
|
|
1059
|
+
class ActionConfirmationDialogDescriptor {
|
|
1060
|
+
constructor() {
|
|
1061
|
+
this._closeOnEscape = true; // Defines if dialog closes when esc key is pressed.
|
|
1062
|
+
this._closable = true; // Defines if dialog is closable.
|
|
1063
|
+
this._acceptButtonStyle = new ButtonStyleBuilder(ActionLevelEnum.Default);
|
|
1064
|
+
this._rejectButtonStyle = new ButtonStyleBuilder(ActionLevelEnum.Default).withTextButton();
|
|
1065
|
+
this._icon = 'pi pi-exclamation-triangle';
|
|
1066
|
+
this._acceptIcon = 'pi pi-check';
|
|
1067
|
+
this._rejectIcon = 'pi pi-times';
|
|
1068
|
+
}
|
|
1069
|
+
withIcon(icon) {
|
|
1070
|
+
this._icon = icon;
|
|
1071
|
+
return this;
|
|
1072
|
+
}
|
|
1073
|
+
withTitle(title) {
|
|
1074
|
+
this._title = title;
|
|
1075
|
+
return this;
|
|
1076
|
+
}
|
|
1077
|
+
withMessage(message) {
|
|
1078
|
+
this._message = message;
|
|
1079
|
+
return this;
|
|
1080
|
+
}
|
|
1081
|
+
withAcceptLabel(acceptLabel) {
|
|
1082
|
+
this._acceptLabel = acceptLabel;
|
|
1083
|
+
return this;
|
|
1084
|
+
}
|
|
1085
|
+
withAcceptIcon(acceptIcon) {
|
|
1086
|
+
this._acceptIcon = acceptIcon;
|
|
1087
|
+
return this;
|
|
1088
|
+
}
|
|
1089
|
+
withAcceptButtonStyle(buttonStyle) {
|
|
1090
|
+
this._acceptButtonStyle = buttonStyle;
|
|
1091
|
+
return this;
|
|
1092
|
+
}
|
|
1093
|
+
withRejectLabel(rejectLabel) {
|
|
1094
|
+
this._rejectLabel = rejectLabel;
|
|
1095
|
+
return this;
|
|
1096
|
+
}
|
|
1097
|
+
withRejectIcon(rejectIcon) {
|
|
1098
|
+
this._rejectIcon = rejectIcon;
|
|
1099
|
+
return this;
|
|
1100
|
+
}
|
|
1101
|
+
withRejectButtonStyle(buttonStyle) {
|
|
1102
|
+
this._rejectButtonStyle = buttonStyle;
|
|
1103
|
+
return this;
|
|
1104
|
+
}
|
|
1105
|
+
/**
|
|
1106
|
+
* set if dialog can be closed on escaped pressed
|
|
1107
|
+
* if true, then closable is also set to true
|
|
1108
|
+
* @param closeOnEscape
|
|
1109
|
+
*/
|
|
1110
|
+
withCloseOnEscape(closeOnEscape) {
|
|
1111
|
+
if (closeOnEscape) {
|
|
1112
|
+
this._closable = true;
|
|
1113
|
+
}
|
|
1114
|
+
this._closeOnEscape = closeOnEscape;
|
|
1115
|
+
return this;
|
|
1116
|
+
}
|
|
1117
|
+
withClosable(closable) {
|
|
1118
|
+
this._closable = closable;
|
|
1119
|
+
return this;
|
|
1120
|
+
}
|
|
1121
|
+
withRunConfirmationConfigMapFn(runConfirmationConfigMapFn) {
|
|
1122
|
+
this._runConfirmationConfigMapFn = runConfirmationConfigMapFn;
|
|
1123
|
+
return this;
|
|
1124
|
+
}
|
|
1125
|
+
get icon() {
|
|
1126
|
+
return this._icon;
|
|
1127
|
+
}
|
|
1128
|
+
get title() {
|
|
1129
|
+
return this._title;
|
|
1130
|
+
}
|
|
1131
|
+
get message() {
|
|
1132
|
+
return this._message;
|
|
1133
|
+
}
|
|
1134
|
+
get acceptLabel() {
|
|
1135
|
+
return this._acceptLabel;
|
|
1136
|
+
}
|
|
1137
|
+
get acceptIcon() {
|
|
1138
|
+
return this._acceptIcon;
|
|
1139
|
+
}
|
|
1140
|
+
get acceptButtonStyle() {
|
|
1141
|
+
return this._acceptButtonStyle;
|
|
1142
|
+
}
|
|
1143
|
+
get rejectLabel() {
|
|
1144
|
+
return this._rejectLabel;
|
|
1145
|
+
}
|
|
1146
|
+
get rejectIcon() {
|
|
1147
|
+
return this._rejectIcon;
|
|
1148
|
+
}
|
|
1149
|
+
get rejectButtonStyle() {
|
|
1150
|
+
return this._rejectButtonStyle;
|
|
1151
|
+
}
|
|
1152
|
+
get closeOnEscape() {
|
|
1153
|
+
return this._closeOnEscape;
|
|
1154
|
+
}
|
|
1155
|
+
get closable() {
|
|
1156
|
+
return this._closable;
|
|
1157
|
+
}
|
|
1158
|
+
get runConfirmationConfigMapFn() {
|
|
1159
|
+
return this._runConfirmationConfigMapFn;
|
|
1160
|
+
}
|
|
1161
|
+
}
|
|
986
1162
|
|
|
987
1163
|
class ActionDescriptor {
|
|
988
1164
|
constructor(model, actionName, parentType, parentProperty) {
|
|
@@ -991,10 +1167,10 @@ class ActionDescriptor {
|
|
|
991
1167
|
this._position = ActionPositionEnum.ToolbarRight;
|
|
992
1168
|
this._level = ActionLevelEnum.Default;
|
|
993
1169
|
this._routeUrl = null;
|
|
994
|
-
this._buttonStyle = new ButtonStyleBuilder(this._level);
|
|
995
|
-
this._hasRunConfirmation = false;
|
|
996
1170
|
this._hasRunNotificationSuccess = true;
|
|
997
1171
|
this._hasRunNotificationError = true;
|
|
1172
|
+
//button
|
|
1173
|
+
this._buttonDescriptor = new ButtonDescriptor();
|
|
998
1174
|
this._model = model;
|
|
999
1175
|
this._actionName = actionName;
|
|
1000
1176
|
if ((parentType && !parentProperty) || (!parentProperty && parentProperty)) {
|
|
@@ -1043,15 +1219,6 @@ class ActionDescriptor {
|
|
|
1043
1219
|
get routeUrl() {
|
|
1044
1220
|
return this._routeUrl;
|
|
1045
1221
|
}
|
|
1046
|
-
get title() {
|
|
1047
|
-
return this._title;
|
|
1048
|
-
}
|
|
1049
|
-
get icon() {
|
|
1050
|
-
return this._icon;
|
|
1051
|
-
}
|
|
1052
|
-
get tooltip() {
|
|
1053
|
-
return this._tooltip;
|
|
1054
|
-
}
|
|
1055
1222
|
get dataProvider() {
|
|
1056
1223
|
return this._dataProvider;
|
|
1057
1224
|
}
|
|
@@ -1076,83 +1243,14 @@ class ActionDescriptor {
|
|
|
1076
1243
|
get actionNameLong() {
|
|
1077
1244
|
return this._actionNameLong;
|
|
1078
1245
|
}
|
|
1079
|
-
get buttonStyle() {
|
|
1080
|
-
return this._buttonStyle;
|
|
1081
|
-
}
|
|
1082
|
-
/**
|
|
1083
|
-
* @deprecated use _buttonStyle instead
|
|
1084
|
-
*/
|
|
1085
1246
|
get className() {
|
|
1086
|
-
return this.
|
|
1087
|
-
}
|
|
1088
|
-
/**
|
|
1089
|
-
* @deprecated use _buttonStyle instead
|
|
1090
|
-
*/
|
|
1091
|
-
get isStyleText() {
|
|
1092
|
-
return this._buttonStyle.textButton;
|
|
1093
|
-
}
|
|
1094
|
-
/**
|
|
1095
|
-
* @deprecated use _buttonStyle instead
|
|
1096
|
-
*/
|
|
1097
|
-
get isStyleOutlined() {
|
|
1098
|
-
return this._buttonStyle.outlineButton;
|
|
1247
|
+
return this.buttonDescriptor.styleClass.customClass;
|
|
1099
1248
|
}
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
*/
|
|
1103
|
-
get isStyleRaised() {
|
|
1104
|
-
return this._buttonStyle.raisedButton;
|
|
1105
|
-
}
|
|
1106
|
-
/**
|
|
1107
|
-
* @deprecated use _buttonStyle instead
|
|
1108
|
-
*/
|
|
1109
|
-
get size() {
|
|
1110
|
-
return this._buttonStyle.size;
|
|
1111
|
-
}
|
|
1112
|
-
/**
|
|
1113
|
-
* @deprecated use _buttonStyle instead
|
|
1114
|
-
*/
|
|
1115
|
-
get isSizeExtraSmall() {
|
|
1116
|
-
return this._buttonStyle.size === ActionSizeEnum.ExtraSmall;
|
|
1117
|
-
}
|
|
1118
|
-
/**
|
|
1119
|
-
* @deprecated use _buttonStyle instead
|
|
1120
|
-
*/
|
|
1121
|
-
get isSizeSmall() {
|
|
1122
|
-
return this._buttonStyle.size === ActionSizeEnum.Small;
|
|
1123
|
-
}
|
|
1124
|
-
/**
|
|
1125
|
-
* @deprecated use _buttonStyle instead
|
|
1126
|
-
*/
|
|
1127
|
-
get isSizeLarge() {
|
|
1128
|
-
return this._buttonStyle.size === ActionSizeEnum.Large;
|
|
1129
|
-
}
|
|
1130
|
-
/**
|
|
1131
|
-
* @deprecated use _buttonStyle instead
|
|
1132
|
-
*/
|
|
1133
|
-
get isSizeExtraLarge() {
|
|
1134
|
-
return this._buttonStyle.size === ActionSizeEnum.ExtraLarge;
|
|
1249
|
+
get runConfirmationDialogDescriptor() {
|
|
1250
|
+
return this._runConfirmationDialogDescriptor;
|
|
1135
1251
|
}
|
|
1136
1252
|
get hasRunConfirmation() {
|
|
1137
|
-
return this.
|
|
1138
|
-
}
|
|
1139
|
-
get runConfirmationIcon() {
|
|
1140
|
-
return this._runConfirmationIcon;
|
|
1141
|
-
}
|
|
1142
|
-
get runConfirmationTitle() {
|
|
1143
|
-
return this._runConfirmationTitle;
|
|
1144
|
-
}
|
|
1145
|
-
get runConfirmationMessage() {
|
|
1146
|
-
return this._runConfirmationMessage;
|
|
1147
|
-
}
|
|
1148
|
-
get runConfirmationAcceptTitle() {
|
|
1149
|
-
return this._runConfirmationAcceptTitle;
|
|
1150
|
-
}
|
|
1151
|
-
get runConfirmationRejectTitle() {
|
|
1152
|
-
return this._runConfirmationRejectTitle;
|
|
1153
|
-
}
|
|
1154
|
-
get runConfirmationConfigMapFn() {
|
|
1155
|
-
return this._runConfirmationConfigMapFn;
|
|
1253
|
+
return this._runConfirmationDialogDescriptor !== null && this._runConfirmationDialogDescriptor !== undefined;
|
|
1156
1254
|
}
|
|
1157
1255
|
get hasRunNotificationSuccess() {
|
|
1158
1256
|
return this._hasRunNotificationSuccess;
|
|
@@ -1184,6 +1282,9 @@ class ActionDescriptor {
|
|
|
1184
1282
|
get permissionsRouteType() {
|
|
1185
1283
|
return this._permissionsRouteType;
|
|
1186
1284
|
}
|
|
1285
|
+
get buttonDescriptor() {
|
|
1286
|
+
return this._buttonDescriptor;
|
|
1287
|
+
}
|
|
1187
1288
|
withDataProvider(dataProvider) {
|
|
1188
1289
|
this._dataProvider = dataProvider;
|
|
1189
1290
|
return this;
|
|
@@ -1212,70 +1313,25 @@ class ActionDescriptor {
|
|
|
1212
1313
|
this._routeUrl = routeUrl;
|
|
1213
1314
|
return this;
|
|
1214
1315
|
}
|
|
1215
|
-
|
|
1216
|
-
this.
|
|
1217
|
-
this._buttonStyle = this._buttonStyle.withActionLevel(level);
|
|
1316
|
+
withPosition(position) {
|
|
1317
|
+
this._position = position;
|
|
1218
1318
|
return this;
|
|
1219
1319
|
}
|
|
1220
1320
|
/**
|
|
1221
|
-
*
|
|
1321
|
+
* creates confirmation action with default style based on action descriptor
|
|
1222
1322
|
*/
|
|
1223
|
-
|
|
1224
|
-
this.
|
|
1225
|
-
|
|
1323
|
+
withRunConfirmation() {
|
|
1324
|
+
this._runConfirmationDialogDescriptor = new ActionConfirmationDialogDescriptor();
|
|
1325
|
+
this._runConfirmationDialogDescriptor.acceptButtonStyle.withActionLevel(this._level);
|
|
1326
|
+
this._runConfirmationDialogDescriptor.rejectButtonStyle.withActionLevel(this._level);
|
|
1327
|
+
return this._runConfirmationDialogDescriptor;
|
|
1226
1328
|
}
|
|
1227
1329
|
/**
|
|
1228
|
-
*
|
|
1229
|
-
* @param
|
|
1330
|
+
* Add a configuration dialogue to action using ActionConfigurationDescriptor
|
|
1331
|
+
* @param confirmationDescriptor descriptor with customizable information for dialog
|
|
1230
1332
|
*/
|
|
1231
|
-
|
|
1232
|
-
this.
|
|
1233
|
-
return this;
|
|
1234
|
-
}
|
|
1235
|
-
withIcon(icon) {
|
|
1236
|
-
this._icon = icon;
|
|
1237
|
-
return this;
|
|
1238
|
-
}
|
|
1239
|
-
withTooltip(tooltip) {
|
|
1240
|
-
this._tooltip = tooltip;
|
|
1241
|
-
return this;
|
|
1242
|
-
}
|
|
1243
|
-
withClassName(className) {
|
|
1244
|
-
this._buttonStyle = this._buttonStyle.withCustomClass(className);
|
|
1245
|
-
return this;
|
|
1246
|
-
}
|
|
1247
|
-
withSize(size = ActionSizeEnum.Normal) {
|
|
1248
|
-
this._buttonStyle = this._buttonStyle.withSize(size);
|
|
1249
|
-
return this;
|
|
1250
|
-
}
|
|
1251
|
-
withStyle(styleText = false, styleOutlined = false, styleRaised = false) {
|
|
1252
|
-
this._buttonStyle = this._buttonStyle.withOutlineButton(styleOutlined);
|
|
1253
|
-
this._buttonStyle = this._buttonStyle.withRaisedButton(styleRaised);
|
|
1254
|
-
this._buttonStyle = this._buttonStyle.withTextButton(styleText);
|
|
1255
|
-
return this;
|
|
1256
|
-
}
|
|
1257
|
-
withPosition(position) {
|
|
1258
|
-
this._position = position;
|
|
1259
|
-
return this;
|
|
1260
|
-
}
|
|
1261
|
-
/**
|
|
1262
|
-
* Add a confirmation dialogue to the action
|
|
1263
|
-
* @param icon the icon to display on the confirmation dialogue
|
|
1264
|
-
* @param title the title of the confirmation dialogue
|
|
1265
|
-
* @param message the message on the confirmation dialogue
|
|
1266
|
-
* @param acceptTitle the title of the accepting button
|
|
1267
|
-
* @param rejectTitle the title of the rejecting button
|
|
1268
|
-
* @param runConfirmationConfigMapFn function used to generate the confirmation dialogue. **WARNING** changing the *accept* and *reject* methods of the *confirmConfig* parameter
|
|
1269
|
-
* may lead to unexpected behaviour
|
|
1270
|
-
*/
|
|
1271
|
-
withRunConfirmation(icon = 'pi pi-exclamation-triangle', title, message, acceptTitle, rejectTitle, runConfirmationConfigMapFn) {
|
|
1272
|
-
this._hasRunConfirmation = true;
|
|
1273
|
-
this._runConfirmationIcon = icon;
|
|
1274
|
-
this._runConfirmationTitle = title;
|
|
1275
|
-
this._runConfirmationMessage = message;
|
|
1276
|
-
this._runConfirmationAcceptTitle = acceptTitle;
|
|
1277
|
-
this._runConfirmationRejectTitle = rejectTitle;
|
|
1278
|
-
this._runConfirmationConfigMapFn = runConfirmationConfigMapFn;
|
|
1333
|
+
withRunConfirmationDescriptor(runConfirmationDialogDescriptor) {
|
|
1334
|
+
this._runConfirmationDialogDescriptor = runConfirmationDialogDescriptor;
|
|
1279
1335
|
return this;
|
|
1280
1336
|
}
|
|
1281
1337
|
withRunNotificationSuccess(title, message, hasNotification = true) {
|
|
@@ -1309,6 +1365,10 @@ class ActionDescriptor {
|
|
|
1309
1365
|
this._permissionsRouteType = permissionsRouteType;
|
|
1310
1366
|
return this;
|
|
1311
1367
|
}
|
|
1368
|
+
withButtonDescriptor(buttonDescriptor) {
|
|
1369
|
+
this._buttonDescriptor = buttonDescriptor;
|
|
1370
|
+
return this;
|
|
1371
|
+
}
|
|
1312
1372
|
}
|
|
1313
1373
|
class ActionSimpleDescriptor extends ActionDescriptor {
|
|
1314
1374
|
constructor(actionName, modelType, idProperty, titleProperty) {
|
|
@@ -1325,7 +1385,7 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
1325
1385
|
this._dialogSize = ActionEditorDialogSizeEnum.Normal;
|
|
1326
1386
|
this._type = ActionTypeEnum.Editor;
|
|
1327
1387
|
this._editorDescriptor = editorDescriptor;
|
|
1328
|
-
this._editorActions.push(
|
|
1388
|
+
this._editorActions.push(ActionEditorSubmitDescriptor.forPrimary(this), ActionEditorSubmitDescriptor.forSecondary(this));
|
|
1329
1389
|
}
|
|
1330
1390
|
get editorTitle() {
|
|
1331
1391
|
return this._editorTitle;
|
|
@@ -1432,7 +1492,23 @@ class ActionEditorSubmitDescriptor extends ActionDescriptor {
|
|
|
1432
1492
|
this._editorAction = editorAction;
|
|
1433
1493
|
this._submitType = submitType;
|
|
1434
1494
|
this._position = ActionPositionEnum.FooterRight;
|
|
1435
|
-
this.
|
|
1495
|
+
this.buttonDescriptor.styleClass.withActionLevel(editorAction.level).withTextButton();
|
|
1496
|
+
}
|
|
1497
|
+
/**
|
|
1498
|
+
* creates primary action with primary button style
|
|
1499
|
+
* @param editorAction
|
|
1500
|
+
* @param submitType
|
|
1501
|
+
*/
|
|
1502
|
+
static forPrimary(editorAction, submitType = ActionEditorSubmitTypeEnum.Submit) {
|
|
1503
|
+
return new ActionEditorSubmitDescriptor(editorAction, submitType).withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder()));
|
|
1504
|
+
}
|
|
1505
|
+
/**
|
|
1506
|
+
* creates secondary button with text button style
|
|
1507
|
+
* @param editorAction
|
|
1508
|
+
* @param submitType
|
|
1509
|
+
*/
|
|
1510
|
+
static forSecondary(editorAction, submitType = ActionEditorSubmitTypeEnum.Cancel) {
|
|
1511
|
+
return new ActionEditorSubmitDescriptor(editorAction, submitType).withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder().withTextButton()));
|
|
1436
1512
|
}
|
|
1437
1513
|
get submitType() {
|
|
1438
1514
|
return this._submitType;
|
|
@@ -1466,8 +1542,8 @@ class ActionEditorAddDescriptor extends ActionEditorDescriptor {
|
|
|
1466
1542
|
this.withPosition(ActionPositionEnum.ToolbarLeft);
|
|
1467
1543
|
this.withRouteTrigger('add');
|
|
1468
1544
|
this.withSubmitFunction(ActionDataProviderUtil.runCreateOrFail);
|
|
1469
|
-
this.
|
|
1470
|
-
this.withIcon('pi pi-plus');
|
|
1545
|
+
this.buttonDescriptor.styleClass.withActionLevel(ActionLevelEnum.Success);
|
|
1546
|
+
this.buttonDescriptor.withIcon('pi pi-plus');
|
|
1471
1547
|
this.withPermissionsRouteType(Permissions.ActionTypes.ADD);
|
|
1472
1548
|
}
|
|
1473
1549
|
withServiceType(serviceType) {
|
|
@@ -1490,12 +1566,11 @@ class ActionEditorEditDescriptor extends ActionEditorDescriptor {
|
|
|
1490
1566
|
constructor(editorDescriptor) {
|
|
1491
1567
|
super(editorDescriptor, ActionEditorEditDescriptor.ACTION_NAME);
|
|
1492
1568
|
this.withPosition(ActionPositionEnum.RowInline);
|
|
1493
|
-
this.withTitle(null);
|
|
1494
1569
|
this.withRouteTrigger(':itemId/edit');
|
|
1495
1570
|
this.withFetchFunction(ActionDataProviderUtil.runFetchOrFail);
|
|
1496
1571
|
this.withSubmitFunction(ActionDataProviderUtil.runUpdateOrFail);
|
|
1497
|
-
this.withIcon('pi pi-pencil');
|
|
1498
1572
|
this.withPermissionsRouteType(Permissions.ActionTypes.EDIT);
|
|
1573
|
+
this.buttonDescriptor.withLabel(null).withIcon('pi pi-pencil');
|
|
1499
1574
|
}
|
|
1500
1575
|
withServiceType(serviceType) {
|
|
1501
1576
|
return this.withServiceSubmitFunction(serviceType);
|
|
@@ -1517,12 +1592,11 @@ class ActionDeleteDescriptor extends ActionDescriptor {
|
|
|
1517
1592
|
constructor(model) {
|
|
1518
1593
|
super(model, ActionDeleteDescriptor.ACTION_NAME);
|
|
1519
1594
|
this.withPosition(ActionPositionEnum.RowInline);
|
|
1520
|
-
this.withTitle(null);
|
|
1521
1595
|
this.withRunFunction(ActionDataProviderUtil.runDeleteOrFail);
|
|
1522
|
-
this.
|
|
1523
|
-
this.
|
|
1524
|
-
this.withRunConfirmation(undefined);
|
|
1596
|
+
this.buttonDescriptor.styleClass.withActionLevel(ActionLevelEnum.Danger);
|
|
1597
|
+
this.withRunConfirmation();
|
|
1525
1598
|
this.withPermissionsRouteType(Permissions.ActionTypes.DELETE);
|
|
1599
|
+
this.buttonDescriptor.withLabel(null).withIcon('pi pi-trash');
|
|
1526
1600
|
}
|
|
1527
1601
|
withServiceType(serviceType) {
|
|
1528
1602
|
return this.withServiceDeleteFunction(serviceType);
|
|
@@ -1980,6 +2054,12 @@ class ColumnDescriptor {
|
|
|
1980
2054
|
get hasCopyToClipboard() {
|
|
1981
2055
|
return this._hasCopyToClipboard;
|
|
1982
2056
|
}
|
|
2057
|
+
get template() {
|
|
2058
|
+
return this._template;
|
|
2059
|
+
}
|
|
2060
|
+
get getter() {
|
|
2061
|
+
return this._getter;
|
|
2062
|
+
}
|
|
1983
2063
|
asType(type = ColumnTypeEnum.String) {
|
|
1984
2064
|
this._columnType = type;
|
|
1985
2065
|
return this;
|
|
@@ -2115,6 +2195,14 @@ class ColumnDescriptor {
|
|
|
2115
2195
|
this._hasCopyToClipboard = hasCopyToCliboard;
|
|
2116
2196
|
return this;
|
|
2117
2197
|
}
|
|
2198
|
+
withTemplate(template) {
|
|
2199
|
+
this._template = template;
|
|
2200
|
+
return this;
|
|
2201
|
+
}
|
|
2202
|
+
withGetter(getter) {
|
|
2203
|
+
this._getter = getter;
|
|
2204
|
+
return this;
|
|
2205
|
+
}
|
|
2118
2206
|
copy() {
|
|
2119
2207
|
var _a;
|
|
2120
2208
|
const descriptor = new ColumnDescriptor(this._table, this._property);
|
|
@@ -2142,6 +2230,8 @@ class ColumnDescriptor {
|
|
|
2142
2230
|
descriptor._minWidth = this._minWidth;
|
|
2143
2231
|
descriptor._maxWidth = this._maxWidth;
|
|
2144
2232
|
descriptor._hasCopyToClipboard = this._hasCopyToClipboard;
|
|
2233
|
+
descriptor._template = this._template;
|
|
2234
|
+
descriptor._getter = this._getter;
|
|
2145
2235
|
return descriptor;
|
|
2146
2236
|
}
|
|
2147
2237
|
}
|
|
@@ -3525,6 +3615,116 @@ class TableviewDescriptor {
|
|
|
3525
3615
|
}
|
|
3526
3616
|
}
|
|
3527
3617
|
|
|
3618
|
+
class ButtonDescriptor {
|
|
3619
|
+
constructor() {
|
|
3620
|
+
this._disabled = false;
|
|
3621
|
+
this._iconPosition = 'left';
|
|
3622
|
+
this._styleClass = new ButtonStyleBuilder();
|
|
3623
|
+
this._loading = false;
|
|
3624
|
+
this._loadingIcon = 'pi pi-spinner pi-spin';
|
|
3625
|
+
}
|
|
3626
|
+
withLabel(label) {
|
|
3627
|
+
this._label = label;
|
|
3628
|
+
return this;
|
|
3629
|
+
}
|
|
3630
|
+
withDisabled(disabled = true) {
|
|
3631
|
+
this._disabled = disabled;
|
|
3632
|
+
return this;
|
|
3633
|
+
}
|
|
3634
|
+
withIcon(icon) {
|
|
3635
|
+
this._icon = icon;
|
|
3636
|
+
return this;
|
|
3637
|
+
}
|
|
3638
|
+
withIconPosition(iconPosition) {
|
|
3639
|
+
this._iconPosition = iconPosition;
|
|
3640
|
+
return this;
|
|
3641
|
+
}
|
|
3642
|
+
withStyleClass(style) {
|
|
3643
|
+
this._styleClass = style;
|
|
3644
|
+
return this;
|
|
3645
|
+
}
|
|
3646
|
+
withOnClick(onClick) {
|
|
3647
|
+
this._onClick = onClick;
|
|
3648
|
+
return this;
|
|
3649
|
+
}
|
|
3650
|
+
withOnFocus(onFocus) {
|
|
3651
|
+
this._onFocus = onFocus;
|
|
3652
|
+
return this;
|
|
3653
|
+
}
|
|
3654
|
+
withOnBlur(onBlur) {
|
|
3655
|
+
this._onBlur = onBlur;
|
|
3656
|
+
return this;
|
|
3657
|
+
}
|
|
3658
|
+
withLoading(loading = true) {
|
|
3659
|
+
this._loading = loading;
|
|
3660
|
+
return this;
|
|
3661
|
+
}
|
|
3662
|
+
withLoadingIcon(loadingIcon) {
|
|
3663
|
+
this._loadingIcon = loadingIcon;
|
|
3664
|
+
return this;
|
|
3665
|
+
}
|
|
3666
|
+
withBadge(badge) {
|
|
3667
|
+
this._badge = badge;
|
|
3668
|
+
return this;
|
|
3669
|
+
}
|
|
3670
|
+
withTooltip(tooltip) {
|
|
3671
|
+
this._tooltip = tooltip;
|
|
3672
|
+
return this;
|
|
3673
|
+
}
|
|
3674
|
+
get label() {
|
|
3675
|
+
return this._label;
|
|
3676
|
+
}
|
|
3677
|
+
get disabled() {
|
|
3678
|
+
return this._disabled;
|
|
3679
|
+
}
|
|
3680
|
+
get icon() {
|
|
3681
|
+
return this._icon;
|
|
3682
|
+
}
|
|
3683
|
+
get iconPosition() {
|
|
3684
|
+
return this._iconPosition;
|
|
3685
|
+
}
|
|
3686
|
+
get styleClass() {
|
|
3687
|
+
return this._styleClass;
|
|
3688
|
+
}
|
|
3689
|
+
get onClick() {
|
|
3690
|
+
return this._onClick;
|
|
3691
|
+
}
|
|
3692
|
+
get onFocus() {
|
|
3693
|
+
return this._onFocus;
|
|
3694
|
+
}
|
|
3695
|
+
get onBlur() {
|
|
3696
|
+
return this._onBlur;
|
|
3697
|
+
}
|
|
3698
|
+
get loading() {
|
|
3699
|
+
return this._loading;
|
|
3700
|
+
}
|
|
3701
|
+
get loadingIcon() {
|
|
3702
|
+
return this._loadingIcon;
|
|
3703
|
+
}
|
|
3704
|
+
get badge() {
|
|
3705
|
+
return this._badge;
|
|
3706
|
+
}
|
|
3707
|
+
get tooltip() {
|
|
3708
|
+
return this._tooltip;
|
|
3709
|
+
}
|
|
3710
|
+
copy() {
|
|
3711
|
+
const descriptor = new ButtonDescriptor();
|
|
3712
|
+
descriptor._label = this._label;
|
|
3713
|
+
descriptor._disabled = this._disabled;
|
|
3714
|
+
descriptor._icon = this._icon;
|
|
3715
|
+
descriptor._iconPosition = this._iconPosition;
|
|
3716
|
+
descriptor._styleClass = this._styleClass;
|
|
3717
|
+
descriptor._onClick = this._onClick;
|
|
3718
|
+
descriptor._onFocus = this._onFocus;
|
|
3719
|
+
descriptor._onBlur = this._onBlur;
|
|
3720
|
+
descriptor._loading = this._loading;
|
|
3721
|
+
descriptor._loadingIcon = this._loadingIcon;
|
|
3722
|
+
descriptor._badge = this._badge;
|
|
3723
|
+
descriptor._tooltip = this._tooltip;
|
|
3724
|
+
return descriptor;
|
|
3725
|
+
}
|
|
3726
|
+
}
|
|
3727
|
+
|
|
3528
3728
|
class EditorFormlyUtil {
|
|
3529
3729
|
static createFormlyConfigFromDescriptor(descriptor) {
|
|
3530
3730
|
const fields = [];
|
|
@@ -4305,6 +4505,9 @@ class StringUtil {
|
|
|
4305
4505
|
else if (typeof value[key] === 'object') {
|
|
4306
4506
|
escapedValue[key] = StringUtil.escapeHtmlAny(value[key]);
|
|
4307
4507
|
}
|
|
4508
|
+
else {
|
|
4509
|
+
escapedValue[key] = value[key];
|
|
4510
|
+
}
|
|
4308
4511
|
}
|
|
4309
4512
|
return escapedValue;
|
|
4310
4513
|
}
|
|
@@ -5205,44 +5408,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
5205
5408
|
}]
|
|
5206
5409
|
}] });
|
|
5207
5410
|
|
|
5208
|
-
class MngLinkFormatterPipe {
|
|
5209
|
-
parseUrl(s, itemId, itemAny, model, actionData) {
|
|
5210
|
-
var _a, _b;
|
|
5211
|
-
if (s === ':itemId') {
|
|
5212
|
-
return itemId;
|
|
5213
|
-
}
|
|
5214
|
-
else if (model && s.startsWith(`:${model.typeName}.`)) {
|
|
5215
|
-
return (_a = itemAny[s.substring(model.typeName.length + 2)]) !== null && _a !== void 0 ? _a : '';
|
|
5216
|
-
}
|
|
5217
|
-
else if (s.startsWith(':')) {
|
|
5218
|
-
return (_b = actionData === null || actionData === void 0 ? void 0 : actionData[s.substring(1)]) !== null && _b !== void 0 ? _b : '';
|
|
5219
|
-
}
|
|
5220
|
-
else {
|
|
5221
|
-
return s;
|
|
5222
|
-
}
|
|
5223
|
-
}
|
|
5224
|
-
transform(value, itemId, item, model, actionData) {
|
|
5225
|
-
const itemAny = (item !== null && item !== void 0 ? item : {});
|
|
5226
|
-
if (typeof value === 'string') {
|
|
5227
|
-
return value.split('/').map(s => this.parseUrl(s, itemId, itemAny, model, actionData));
|
|
5228
|
-
}
|
|
5229
|
-
else {
|
|
5230
|
-
const transformedItems = [];
|
|
5231
|
-
value.forEach(val => transformedItems.push(...val.split('/').map(s => this.parseUrl(s, itemId, itemAny, model, actionData))));
|
|
5232
|
-
return transformedItems;
|
|
5233
|
-
}
|
|
5234
|
-
}
|
|
5235
|
-
}
|
|
5236
|
-
MngLinkFormatterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngLinkFormatterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5237
|
-
MngLinkFormatterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.0", ngImport: i0, type: MngLinkFormatterPipe, name: "linkFormatter" });
|
|
5238
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngLinkFormatterPipe, decorators: [{
|
|
5239
|
-
type: Pipe,
|
|
5240
|
-
args: [{
|
|
5241
|
-
name: 'linkFormatter',
|
|
5242
|
-
pure: true
|
|
5243
|
-
}]
|
|
5244
|
-
}] });
|
|
5245
|
-
|
|
5246
5411
|
/**
|
|
5247
5412
|
* Imitation of JSONPath Syntax. Supports:
|
|
5248
5413
|
* - Root object notation with '$'
|
|
@@ -5280,7 +5445,6 @@ class JsonPathPipe {
|
|
|
5280
5445
|
const arrayPath = p.substring(0, leftBracketIdx);
|
|
5281
5446
|
const arrayIdx = +p.substring(leftBracketIdx + 1, p.length - 1);
|
|
5282
5447
|
const array = currValue[arrayPath];
|
|
5283
|
-
console.log(arrayPath, arrayIdx, array);
|
|
5284
5448
|
if (Array.isArray(array)) {
|
|
5285
5449
|
if (arrayIdx >= 0 && arrayIdx < array.length) {
|
|
5286
5450
|
// valid index, continue on the path
|
|
@@ -5321,8 +5485,120 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
5321
5485
|
}]
|
|
5322
5486
|
}] });
|
|
5323
5487
|
|
|
5488
|
+
class MngParametrizePipe {
|
|
5489
|
+
constructor() {
|
|
5490
|
+
this.jsonPath = new JsonPathPipe();
|
|
5491
|
+
}
|
|
5492
|
+
transform(value, itemId, item, actionData) {
|
|
5493
|
+
let params = {};
|
|
5494
|
+
if (actionData) {
|
|
5495
|
+
params = Object.assign(Object.assign({}, params), actionData);
|
|
5496
|
+
}
|
|
5497
|
+
if (item) {
|
|
5498
|
+
params = Object.assign(Object.assign({}, params), { item: StringUtil.escapeHtmlAny(item) });
|
|
5499
|
+
}
|
|
5500
|
+
if (itemId) {
|
|
5501
|
+
params = Object.assign(Object.assign({}, params), { itemId: itemId });
|
|
5502
|
+
}
|
|
5503
|
+
if (typeof value === 'string') {
|
|
5504
|
+
return this.transformString(value, params);
|
|
5505
|
+
}
|
|
5506
|
+
else if (Array.isArray(value) && value.length > 0 && typeof value[0] === 'string') {
|
|
5507
|
+
return value.map((s) => this.transformString(s, params));
|
|
5508
|
+
}
|
|
5509
|
+
else if (typeof value === 'object') {
|
|
5510
|
+
// process only first level citizens
|
|
5511
|
+
const obj = Object.assign({}, value);
|
|
5512
|
+
for (const key in obj) {
|
|
5513
|
+
const objProp = obj[key];
|
|
5514
|
+
if (typeof objProp === 'string') {
|
|
5515
|
+
obj[key] = this.transformString(objProp, params);
|
|
5516
|
+
}
|
|
5517
|
+
}
|
|
5518
|
+
return obj;
|
|
5519
|
+
}
|
|
5520
|
+
else {
|
|
5521
|
+
return value;
|
|
5522
|
+
}
|
|
5523
|
+
}
|
|
5524
|
+
transformString(s, params) {
|
|
5525
|
+
if ((s.indexOf('/') >= 0 && s.indexOf(':') >= 0) || s.startsWith(':')) {
|
|
5526
|
+
// this is url
|
|
5527
|
+
return s
|
|
5528
|
+
.split('/')
|
|
5529
|
+
.map(s => this.parametrizeStringAsUrl(s, params))
|
|
5530
|
+
.join('/');
|
|
5531
|
+
}
|
|
5532
|
+
else {
|
|
5533
|
+
// parametrize normally
|
|
5534
|
+
return this.parametrizeString(s, params);
|
|
5535
|
+
}
|
|
5536
|
+
}
|
|
5537
|
+
parametrizeStringAsUrl(s, params) {
|
|
5538
|
+
var _a;
|
|
5539
|
+
if (s.startsWith(':')) {
|
|
5540
|
+
const itemProperty = s.substring(1);
|
|
5541
|
+
return (_a = this.jsonPath.transform(params, itemProperty)) !== null && _a !== void 0 ? _a : '';
|
|
5542
|
+
}
|
|
5543
|
+
else {
|
|
5544
|
+
return s;
|
|
5545
|
+
}
|
|
5546
|
+
}
|
|
5547
|
+
parametrizeString(s, params) {
|
|
5548
|
+
return s.replace(/{{\s?([^{}\s]*)\s?}}/g, (subs, key) => { var _a; return (_a = this.jsonPath.transform(params, key)) !== null && _a !== void 0 ? _a : subs; });
|
|
5549
|
+
}
|
|
5550
|
+
}
|
|
5551
|
+
MngParametrizePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngParametrizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5552
|
+
MngParametrizePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.0", ngImport: i0, type: MngParametrizePipe, name: "parametrize" });
|
|
5553
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngParametrizePipe, decorators: [{
|
|
5554
|
+
type: Pipe,
|
|
5555
|
+
args: [{
|
|
5556
|
+
name: 'parametrize',
|
|
5557
|
+
pure: true
|
|
5558
|
+
}]
|
|
5559
|
+
}] });
|
|
5560
|
+
|
|
5561
|
+
class MngGetterPipe {
|
|
5562
|
+
transform(value, getterFunction) {
|
|
5563
|
+
if (typeof getterFunction === 'function') {
|
|
5564
|
+
return getterFunction(value);
|
|
5565
|
+
}
|
|
5566
|
+
return value;
|
|
5567
|
+
}
|
|
5568
|
+
}
|
|
5569
|
+
MngGetterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngGetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5570
|
+
MngGetterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.0", ngImport: i0, type: MngGetterPipe, name: "getter" });
|
|
5571
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngGetterPipe, decorators: [{
|
|
5572
|
+
type: Pipe,
|
|
5573
|
+
args: [{
|
|
5574
|
+
name: 'getter',
|
|
5575
|
+
pure: true
|
|
5576
|
+
}]
|
|
5577
|
+
}] });
|
|
5578
|
+
|
|
5579
|
+
class MngTemplatePipe {
|
|
5580
|
+
constructor(parametrizePipe) {
|
|
5581
|
+
this.parametrizePipe = parametrizePipe;
|
|
5582
|
+
}
|
|
5583
|
+
transform(value, template) {
|
|
5584
|
+
if (typeof template === 'string') {
|
|
5585
|
+
return this.parametrizePipe.transform(template, undefined, value);
|
|
5586
|
+
}
|
|
5587
|
+
return value;
|
|
5588
|
+
}
|
|
5589
|
+
}
|
|
5590
|
+
MngTemplatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngTemplatePipe, deps: [{ token: MngParametrizePipe }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5591
|
+
MngTemplatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.0", ngImport: i0, type: MngTemplatePipe, name: "template" });
|
|
5592
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngTemplatePipe, decorators: [{
|
|
5593
|
+
type: Pipe,
|
|
5594
|
+
args: [{
|
|
5595
|
+
name: 'template',
|
|
5596
|
+
pure: true
|
|
5597
|
+
}]
|
|
5598
|
+
}], ctorParameters: function () { return [{ type: MngParametrizePipe }]; } });
|
|
5599
|
+
|
|
5324
5600
|
class MngActionExecutorService {
|
|
5325
|
-
constructor(injector, router, dialogService, confirmationService, translate, configurationService, navigationService, errorMapper,
|
|
5601
|
+
constructor(injector, router, dialogService, confirmationService, translate, configurationService, navigationService, errorMapper, parametrize, defaultEditorDialogComponent) {
|
|
5326
5602
|
this.injector = injector;
|
|
5327
5603
|
this.router = router;
|
|
5328
5604
|
this.dialogService = dialogService;
|
|
@@ -5331,7 +5607,7 @@ class MngActionExecutorService {
|
|
|
5331
5607
|
this.configurationService = configurationService;
|
|
5332
5608
|
this.navigationService = navigationService;
|
|
5333
5609
|
this.errorMapper = errorMapper;
|
|
5334
|
-
this.
|
|
5610
|
+
this.parametrize = parametrize;
|
|
5335
5611
|
this.defaultEditorDialogComponent = defaultEditorDialogComponent;
|
|
5336
5612
|
this.debug = false;
|
|
5337
5613
|
// this.debug = true;
|
|
@@ -5576,7 +5852,7 @@ class MngActionExecutorService {
|
|
|
5576
5852
|
* @return Action context for run function.
|
|
5577
5853
|
*/
|
|
5578
5854
|
runAction(action, parameters, dataProvider, instance, previousActionInstance) {
|
|
5579
|
-
var _a, _b, _c, _d;
|
|
5855
|
+
var _a, _b, _c, _d, _e, _f;
|
|
5580
5856
|
if (!instance) {
|
|
5581
5857
|
// create new instance if non provided
|
|
5582
5858
|
instance = new ActionInstance(action, ActionInstanceStateEnum.ActivationEnd, this.debug);
|
|
@@ -5584,33 +5860,44 @@ class MngActionExecutorService {
|
|
|
5584
5860
|
const context = this.prepareActionContext(instance, parameters, dataProvider, previousActionInstance);
|
|
5585
5861
|
if (action.hasRunConfirmation) {
|
|
5586
5862
|
const sourceComponent = parameters === null || parameters === void 0 ? void 0 : parameters.sourceComponent;
|
|
5863
|
+
const confirmationDescriptor = action.runConfirmationDialogDescriptor;
|
|
5587
5864
|
if (typeof (sourceComponent === null || sourceComponent === void 0 ? void 0 : sourceComponent.getConfirmationService) !== 'function' || typeof (sourceComponent === null || sourceComponent === void 0 ? void 0 : sourceComponent.getConfirmationServiceInstanceKey) !== 'function') {
|
|
5588
5865
|
throw new Error(`Source component ${sourceComponent} should be implementing IConfirmationService interface to be able to provide confirmation functionality.`);
|
|
5589
5866
|
}
|
|
5867
|
+
const item = parameters.item;
|
|
5590
5868
|
const srcConfirmComponent = sourceComponent;
|
|
5591
5869
|
let confirmParams = {
|
|
5592
5870
|
key: srcConfirmComponent.getConfirmationServiceInstanceKey(action),
|
|
5593
|
-
|
|
5594
|
-
|
|
5871
|
+
icon: confirmationDescriptor.icon,
|
|
5872
|
+
acceptVisible: true,
|
|
5873
|
+
acceptIcon: (_a = confirmationDescriptor.acceptIcon) !== null && _a !== void 0 ? _a : undefined,
|
|
5874
|
+
acceptButtonStyleClass: confirmationDescriptor.acceptButtonStyle.getButtonClass(),
|
|
5875
|
+
rejectVisible: true,
|
|
5876
|
+
rejectIcon: (_b = confirmationDescriptor.rejectIcon) !== null && _b !== void 0 ? _b : undefined,
|
|
5877
|
+
rejectButtonStyleClass: confirmationDescriptor.rejectButtonStyle.getButtonClass(),
|
|
5878
|
+
closeOnEscape: confirmationDescriptor.closeOnEscape
|
|
5595
5879
|
};
|
|
5596
|
-
|
|
5597
|
-
|
|
5598
|
-
confirmParams.header = (_a = I18nUtils.Action.get(this.translate, action, 'confirm.title', action.runConfirmationTitle, item, 'general.confirmation')) !== null && _a !== void 0 ? _a : undefined;
|
|
5880
|
+
if (confirmationDescriptor.title !== null) {
|
|
5881
|
+
confirmParams.header = (_c = I18nUtils.Action.get(this.translate, action, 'confirm.title', confirmationDescriptor.title, item, 'general.confirmation')) !== null && _c !== void 0 ? _c : undefined;
|
|
5599
5882
|
}
|
|
5600
|
-
if (
|
|
5883
|
+
if (confirmationDescriptor.message !== null) {
|
|
5601
5884
|
confirmParams.message =
|
|
5602
|
-
(
|
|
5885
|
+
(_d = I18nUtils.Action.get(this.translate, action, 'confirm.message', confirmationDescriptor.message, StringUtil.escapeHtmlAny(item), 'general.confirmation')) !== null && _d !== void 0 ? _d : undefined;
|
|
5603
5886
|
}
|
|
5604
|
-
if (
|
|
5605
|
-
confirmParams.
|
|
5887
|
+
if (confirmationDescriptor.acceptLabel !== null) {
|
|
5888
|
+
confirmParams.acceptLabel = (_e = I18nUtils.Action.get(this.translate, action, 'confirm.accept', confirmationDescriptor.acceptLabel, item, 'general.yes')) !== null && _e !== void 0 ? _e : undefined;
|
|
5606
5889
|
}
|
|
5607
|
-
if (
|
|
5608
|
-
confirmParams.
|
|
5609
|
-
confirmParams.acceptVisible = true;
|
|
5890
|
+
if (confirmationDescriptor.acceptIcon !== null) {
|
|
5891
|
+
confirmParams.acceptIcon = confirmationDescriptor.acceptIcon;
|
|
5610
5892
|
}
|
|
5611
|
-
if (
|
|
5612
|
-
confirmParams.
|
|
5613
|
-
|
|
5893
|
+
if (confirmationDescriptor.rejectIcon !== null) {
|
|
5894
|
+
confirmParams.rejectIcon = confirmationDescriptor.rejectIcon;
|
|
5895
|
+
}
|
|
5896
|
+
if (confirmationDescriptor.rejectLabel !== null) {
|
|
5897
|
+
confirmParams.rejectLabel = (_f = I18nUtils.Action.get(this.translate, action, 'confirm.reject', confirmationDescriptor.rejectLabel, item, 'general.no')) !== null && _f !== void 0 ? _f : undefined;
|
|
5898
|
+
}
|
|
5899
|
+
if (confirmationDescriptor.rejectLabel === null && confirmationDescriptor.rejectIcon === null) {
|
|
5900
|
+
confirmParams.rejectVisible = false;
|
|
5614
5901
|
}
|
|
5615
5902
|
confirmParams.accept = () => {
|
|
5616
5903
|
instance.state = ActionInstanceStateEnum.RunConfirmationEndAccept;
|
|
@@ -5620,8 +5907,8 @@ class MngActionExecutorService {
|
|
|
5620
5907
|
instance.state = ActionInstanceStateEnum.RunConfirmationEndReject;
|
|
5621
5908
|
this.deactivateAction(instance);
|
|
5622
5909
|
};
|
|
5623
|
-
if (
|
|
5624
|
-
confirmParams =
|
|
5910
|
+
if (confirmationDescriptor.runConfirmationConfigMapFn) {
|
|
5911
|
+
confirmParams = confirmationDescriptor.runConfirmationConfigMapFn(context, confirmParams);
|
|
5625
5912
|
}
|
|
5626
5913
|
context.confirmation = confirmParams;
|
|
5627
5914
|
instance.state = ActionInstanceStateEnum.RunConfirmationStart;
|
|
@@ -5778,7 +6065,7 @@ class MngActionExecutorService {
|
|
|
5778
6065
|
if (actionUrl.startsWith('/')) {
|
|
5779
6066
|
actionUrl = actionUrl.substring(1);
|
|
5780
6067
|
}
|
|
5781
|
-
const actionUrlSegments = this.
|
|
6068
|
+
const actionUrlSegments = this.parametrize.transform(actionUrl, parameters.itemId, parameters.item, parameters.actionData).split('/');
|
|
5782
6069
|
instance.triggerRouteNavigation = from(this.router.navigate([baseUrl, ...actionUrlSegments], { relativeTo: parameters.route, queryParams: parsedUrl.queryParams }));
|
|
5783
6070
|
return instance;
|
|
5784
6071
|
}
|
|
@@ -5842,12 +6129,12 @@ class MngActionExecutorService {
|
|
|
5842
6129
|
return this.errorMapper.toMngError(error, actionError);
|
|
5843
6130
|
}
|
|
5844
6131
|
}
|
|
5845
|
-
MngActionExecutorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionExecutorService, deps: [{ token: i0.Injector }, { token: i1.Router }, { token: i3.DialogService }, { token: i2.ConfirmationService }, { token: i1$2.TranslateService }, { token: MngConfigurationService }, { token: MngNavigationService }, { token: MngErrorMapperService }, { token:
|
|
6132
|
+
MngActionExecutorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionExecutorService, deps: [{ token: i0.Injector }, { token: i1.Router }, { token: i3.DialogService }, { token: i2.ConfirmationService }, { token: i1$2.TranslateService }, { token: MngConfigurationService }, { token: MngNavigationService }, { token: MngErrorMapperService }, { token: MngParametrizePipe }, { token: ACTION_EDITOR_DIALOG_COMPONENT_SETTING }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5846
6133
|
MngActionExecutorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionExecutorService });
|
|
5847
6134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionExecutorService, decorators: [{
|
|
5848
6135
|
type: Injectable
|
|
5849
6136
|
}], ctorParameters: function () {
|
|
5850
|
-
return [{ type: i0.Injector }, { type: i1.Router }, { type: i3.DialogService }, { type: i2.ConfirmationService }, { type: i1$2.TranslateService }, { type: MngConfigurationService }, { type: MngNavigationService }, { type: MngErrorMapperService }, { type:
|
|
6137
|
+
return [{ type: i0.Injector }, { type: i1.Router }, { type: i3.DialogService }, { type: i2.ConfirmationService }, { type: i1$2.TranslateService }, { type: MngConfigurationService }, { type: MngNavigationService }, { type: MngErrorMapperService }, { type: MngParametrizePipe }, { type: i0.Type, decorators: [{
|
|
5851
6138
|
type: Inject,
|
|
5852
6139
|
args: [ACTION_EDITOR_DIALOG_COMPONENT_SETTING]
|
|
5853
6140
|
}] }];
|
|
@@ -6322,7 +6609,7 @@ class MngActionComponent {
|
|
|
6322
6609
|
ngOnInit() {
|
|
6323
6610
|
var _a, _b;
|
|
6324
6611
|
this.viewContainer = (_b = (_a = this.viewContainerInit) !== null && _a !== void 0 ? _a : this.viewContainerService) !== null && _b !== void 0 ? _b : undefined;
|
|
6325
|
-
this.hasNoTitle = this.action.
|
|
6612
|
+
this.hasNoTitle = this.action.buttonDescriptor.label === null;
|
|
6326
6613
|
this.isEnabledSubject.next(true);
|
|
6327
6614
|
this.isVisibleSubject.next(true);
|
|
6328
6615
|
this.isPermittedSubject.next(true);
|
|
@@ -6345,7 +6632,7 @@ class MngActionComponent {
|
|
|
6345
6632
|
this.isHostHidden = !isVisible || !isPermitted;
|
|
6346
6633
|
});
|
|
6347
6634
|
this.subscriptions.push(hostVisibilitySubscription);
|
|
6348
|
-
this.buttonClass = this.action.
|
|
6635
|
+
this.buttonClass = this.action.buttonDescriptor.styleClass.getButtonClass(this.hasNoTitle);
|
|
6349
6636
|
}
|
|
6350
6637
|
ngOnChanges(changes) {
|
|
6351
6638
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -6396,7 +6683,7 @@ class MngActionComponent {
|
|
|
6396
6683
|
return `${action.actionName}_${this.cmpId}`;
|
|
6397
6684
|
}
|
|
6398
6685
|
processSubscriptions() {
|
|
6399
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
6686
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
6400
6687
|
const parameters = new ActionParameters(this.itemId, this.item)
|
|
6401
6688
|
.withActionData(this.actionData)
|
|
6402
6689
|
.withViewContainer((_a = this.viewContainer) !== null && _a !== void 0 ? _a : undefined)
|
|
@@ -6425,21 +6712,21 @@ class MngActionComponent {
|
|
|
6425
6712
|
}
|
|
6426
6713
|
if (!this.hasNoTitle) {
|
|
6427
6714
|
(_f = this.labelSubscription) === null || _f === void 0 ? void 0 : _f.unsubscribe();
|
|
6428
|
-
this.labelSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'title', (
|
|
6715
|
+
this.labelSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'title', (_g = this.action.buttonDescriptor.label) !== null && _g !== void 0 ? _g : undefined, this.item).subscribe({
|
|
6429
6716
|
next: i18n => this.labelSubject.next(i18n)
|
|
6430
6717
|
});
|
|
6431
6718
|
}
|
|
6432
|
-
(
|
|
6433
|
-
this.tooltipSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'tooltip',
|
|
6719
|
+
(_h = this.tooltipSubscription) === null || _h === void 0 ? void 0 : _h.unsubscribe();
|
|
6720
|
+
this.tooltipSubscription = I18nUtils.Action.getAsync(this.translate, this.action, 'tooltip', this.action.buttonDescriptor.tooltip, this.item).subscribe({
|
|
6434
6721
|
next: i18n => this.tooltipSubject.next(i18n)
|
|
6435
6722
|
});
|
|
6436
6723
|
}
|
|
6437
6724
|
}
|
|
6438
6725
|
MngActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1$2.TranslateService }, { token: MngAuthorizationService }, { token: MngActionExecutorService }, { token: i2.ConfirmationService }, { token: MngViewContainerComponentService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
6439
|
-
MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData", queryParam: "queryParam", dataProvider: "dataProvider", inputDisabled: ["disabled", "inputDisabled"], inputLoading: ["loading", "inputLoading"], viewContainerInit: ["viewContainer", "viewContainerInit"] }, outputs: { finishEventEmitter: "finish" }, host: { properties: { "class": "this.hostClass", "class.m-0": "this.isHostHidden" } }, providers: [ConfirmationService], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"($isVisible | async) && ($isPermitted | 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]=\"buttonClass\"\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]=\"
|
|
6726
|
+
MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData", queryParam: "queryParam", dataProvider: "dataProvider", inputDisabled: ["disabled", "inputDisabled"], inputLoading: ["loading", "inputLoading"], viewContainerInit: ["viewContainer", "viewContainerInit"] }, outputs: { finishEventEmitter: "finish" }, host: { properties: { "class": "this.hostClass", "class.m-0": "this.isHostHidden" } }, providers: [ConfirmationService], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"($isVisible | async) && ($isPermitted | async)\">\n <a\n *ngIf=\"actionLink && actionLink.url !== ''; else routerLink\"\n pButton\n pRipple\n [icon]=\"$any(action.buttonDescriptor.icon)\"\n [href]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.url | parametrize: itemId:item:actionData)\"\n [target]=\"actionLink.target\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class]=\"buttonClass\"\n >{{ ($label | async) ?? '' }}</a\n >\n <ng-template #routerLink>\n <a\n *ngIf=\"actionLink; else button\"\n pButton\n pRipple\n [icon]=\"$any(action.buttonDescriptor.icon)\"\n [target]=\"actionLink.target\"\n [replaceUrl]=\"actionLink.replaceUrl\"\n [routerLink]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.pathSegments | parametrize: itemId:item:actionData)\"\n [queryParams]=\"actionLink.queryParams | parametrize: itemId:item:actionData\"\n [queryParamsHandling]=\"actionLink.queryParamsHandling\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class]=\"buttonClass\"\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.buttonDescriptor.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]=\"buttonClass\"></button>\n </ng-template>\n <p-confirmDialog\n *ngIf=\"action.runConfirmationDialogDescriptor\"\n [key]=\"action.actionName + '_' + cmpId\"\n [baseZIndex]=\"50\"\n appendTo=\"body\"\n [closable]=\"action.runConfirmationDialogDescriptor.closable\"></p-confirmDialog>\n</ng-container>\n", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i4$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.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"] }, { kind: "directive", type: i6.Ripple, selector: "[pRipple]" }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: MngParametrizePipe, name: "parametrize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6440
6727
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionComponent, decorators: [{
|
|
6441
6728
|
type: Component,
|
|
6442
|
-
args: [{ selector: 'mng-action', changeDetection: ChangeDetectionStrategy.OnPush, providers: [ConfirmationService], template: "<ng-container *ngIf=\"($isVisible | async) && ($isPermitted | 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]=\"buttonClass\"\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]=\"
|
|
6729
|
+
args: [{ selector: 'mng-action', changeDetection: ChangeDetectionStrategy.OnPush, providers: [ConfirmationService], template: "<ng-container *ngIf=\"($isVisible | async) && ($isPermitted | async)\">\n <a\n *ngIf=\"actionLink && actionLink.url !== ''; else routerLink\"\n pButton\n pRipple\n [icon]=\"$any(action.buttonDescriptor.icon)\"\n [href]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.url | parametrize: itemId:item:actionData)\"\n [target]=\"actionLink.target\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class]=\"buttonClass\"\n >{{ ($label | async) ?? '' }}</a\n >\n <ng-template #routerLink>\n <a\n *ngIf=\"actionLink; else button\"\n pButton\n pRipple\n [icon]=\"$any(action.buttonDescriptor.icon)\"\n [target]=\"actionLink.target\"\n [replaceUrl]=\"actionLink.replaceUrl\"\n [routerLink]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false) ? null : (actionLink.pathSegments | parametrize: itemId:item:actionData)\"\n [queryParams]=\"actionLink.queryParams | parametrize: itemId:item:actionData\"\n [queryParamsHandling]=\"actionLink.queryParamsHandling\"\n [class.disabled]=\"($isEnabled | async) === false || ((inputDisabled | async) ?? false)\"\n [class]=\"buttonClass\"\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.buttonDescriptor.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]=\"buttonClass\"></button>\n </ng-template>\n <p-confirmDialog\n *ngIf=\"action.runConfirmationDialogDescriptor\"\n [key]=\"action.actionName + '_' + cmpId\"\n [baseZIndex]=\"50\"\n appendTo=\"body\"\n [closable]=\"action.runConfirmationDialogDescriptor.closable\"></p-confirmDialog>\n</ng-container>\n", styles: [":host{display:inline-block}\n"] }]
|
|
6443
6730
|
}], ctorParameters: function () {
|
|
6444
6731
|
return [{ type: i1.ActivatedRoute }, { type: i1$2.TranslateService }, { type: MngAuthorizationService }, { type: MngActionExecutorService }, { type: i2.ConfirmationService }, { type: MngViewContainerComponentService, decorators: [{
|
|
6445
6732
|
type: Optional
|
|
@@ -6729,13 +7016,14 @@ class MngFormEditorComponent {
|
|
|
6729
7016
|
if (field && field.setter) {
|
|
6730
7017
|
const splitPath = field.property.split('.');
|
|
6731
7018
|
let fieldValue = formValue;
|
|
6732
|
-
for (let i = 0; i < splitPath.length; i++) {
|
|
7019
|
+
for (let i = 0; i < splitPath.length - 1; i++) {
|
|
6733
7020
|
const currentSubPath = splitPath[i];
|
|
6734
7021
|
if (typeof fieldValue[currentSubPath] !== 'object') {
|
|
6735
7022
|
fieldValue[currentSubPath] = {};
|
|
6736
7023
|
}
|
|
6737
7024
|
fieldValue = fieldValue[currentSubPath];
|
|
6738
7025
|
}
|
|
7026
|
+
fieldValue = fieldValue[splitPath[splitPath.length - 1]];
|
|
6739
7027
|
field.setter(formValue, fieldValue);
|
|
6740
7028
|
}
|
|
6741
7029
|
});
|
|
@@ -7179,6 +7467,8 @@ class MngDropdownComponent {
|
|
|
7179
7467
|
this.className = null;
|
|
7180
7468
|
this.dropdownClassName = null;
|
|
7181
7469
|
this.changeValueOnBlur = false;
|
|
7470
|
+
this.loadingSubject = new ReplaySubject(1);
|
|
7471
|
+
this.$loading = this.loadingSubject.asObservable();
|
|
7182
7472
|
this.valueChangeEventEmitter = new EventEmitter();
|
|
7183
7473
|
this.itemsSubject = new ReplaySubject(1);
|
|
7184
7474
|
this.dataProviderService = null;
|
|
@@ -7188,6 +7478,7 @@ class MngDropdownComponent {
|
|
|
7188
7478
|
this.onTouchedFn = () => { };
|
|
7189
7479
|
this.dropdownFormControl = new FormControl();
|
|
7190
7480
|
this.items$ = this.itemsSubject.asObservable();
|
|
7481
|
+
this.loadingSubject.next(false);
|
|
7191
7482
|
}
|
|
7192
7483
|
ngOnInit() {
|
|
7193
7484
|
var _a;
|
|
@@ -7199,6 +7490,7 @@ class MngDropdownComponent {
|
|
|
7199
7490
|
}
|
|
7200
7491
|
});
|
|
7201
7492
|
if (this.dataProvider) {
|
|
7493
|
+
this.loadingSubject.next(true);
|
|
7202
7494
|
this.dataProviderService = this.dataProvider.serviceType ? this.injector.get(this.dataProvider.serviceType) : null;
|
|
7203
7495
|
const queryParamBuilder = MediusQueryParamBuilder.create();
|
|
7204
7496
|
if (this.itemsLabelTranslate) {
|
|
@@ -7246,6 +7538,7 @@ class MngDropdownComponent {
|
|
|
7246
7538
|
}))
|
|
7247
7539
|
.subscribe(res => {
|
|
7248
7540
|
this.itemsSubject.next(res);
|
|
7541
|
+
this.loadingSubject.next(false);
|
|
7249
7542
|
});
|
|
7250
7543
|
if (this.selectFirstItem && !((_a = this.dropdownFormControl) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
7251
7544
|
this.items$.pipe(first()).subscribe(res => {
|
|
@@ -7300,10 +7593,10 @@ class MngDropdownComponent {
|
|
|
7300
7593
|
}
|
|
7301
7594
|
}
|
|
7302
7595
|
MngDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngDropdownComponent, deps: [{ token: i0.Injector }, { token: i1$2.TranslateService }, { token: MngFormlyFieldWrapperComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
7303
|
-
MngDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngDropdownComponent, selector: "mng-dropdown", inputs: { dataProvider: "dataProvider", dataKeyProperty: "dataKeyProperty", itemsLabelPropertyInit: ["itemsLabelProperty", "itemsLabelPropertyInit"], itemsLabelTranslate: "itemsLabelTranslate", itemsValuePropertyInit: ["itemsValueProperty", "itemsValuePropertyInit"], itemsDisabledProperty: "itemsDisabledProperty", multiselect: "multiselect", placeholder: "placeholder", showClear: "showClear", selectFirstItem: "selectFirstItem", className: "className", dropdownClassName: "dropdownClassName", changeValueOnBlur: "changeValueOnBlur" }, outputs: { valueChangeEventEmitter: "valueChange" }, providers: [MNG_DROPDOWN_VALUE_ACCESSOR], viewQueries: [{ propertyName: "primeDropdown", first: true, predicate: Dropdown, descendants: true }], ngImport: i0, template: "<p-dropdown\n *ngIf=\"!multiselect; else pMultiselect\"\n [formControl]=\"dropdownFormControl\"\n [placeholder]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"$any(items$ | async)\"\n [showClear]=\"showClear\"\n [autoDisplayFirst]=\"false\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n (onBlur)=\"onDropdownBlur($event)\"\n appendTo=\"body\">\n</p-dropdown>\n<ng-template #pMultiselect>\n <p-multiSelect\n [maxSelectedLabels]=\"1\"\n [selectedItemsLabel]=\"'mngDropdown.multiselectOverMaxDisplayLimit' | translate\"\n [formControl]=\"dropdownFormControl\"\n [defaultLabel]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"(items$ | async) ?? []\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n [filter]=\"true\"\n [showToggleAll]=\"false\"\n (onPanelHide)=\"onPanelHide($event)\"\n appendTo=\"body\">\n </p-multiSelect>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5$1.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "disabled", "itemSize", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i6$1.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "autoZIndex", "baseZIndex", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7596
|
+
MngDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngDropdownComponent, selector: "mng-dropdown", inputs: { dataProvider: "dataProvider", dataKeyProperty: "dataKeyProperty", itemsLabelPropertyInit: ["itemsLabelProperty", "itemsLabelPropertyInit"], itemsLabelTranslate: "itemsLabelTranslate", itemsValuePropertyInit: ["itemsValueProperty", "itemsValuePropertyInit"], itemsDisabledProperty: "itemsDisabledProperty", multiselect: "multiselect", placeholder: "placeholder", showClear: "showClear", selectFirstItem: "selectFirstItem", className: "className", dropdownClassName: "dropdownClassName", changeValueOnBlur: "changeValueOnBlur" }, outputs: { valueChangeEventEmitter: "valueChange" }, providers: [MNG_DROPDOWN_VALUE_ACCESSOR], viewQueries: [{ propertyName: "primeDropdown", first: true, predicate: Dropdown, descendants: true }], ngImport: i0, template: "<p-dropdown\n *ngIf=\"!multiselect; else pMultiselect\"\n [formControl]=\"dropdownFormControl\"\n [placeholder]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"$any(items$ | async)\"\n [showClear]=\"showClear\"\n [autoDisplayFirst]=\"false\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n (onBlur)=\"onDropdownBlur($event)\"\n [dropdownIcon]=\"($loading | async) ?? false ? 'pi pi-spinner pi-spin' : 'pi pi-chevron-down'\"\n appendTo=\"body\">\n</p-dropdown>\n<ng-template #pMultiselect>\n <p-multiSelect\n [maxSelectedLabels]=\"1\"\n [selectedItemsLabel]=\"'mngDropdown.multiselectOverMaxDisplayLimit' | translate\"\n [formControl]=\"dropdownFormControl\"\n [defaultLabel]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"(items$ | async) ?? []\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n [filter]=\"true\"\n [showToggleAll]=\"false\"\n (onPanelHide)=\"onPanelHide($event)\"\n appendTo=\"body\">\n </p-multiSelect>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5$1.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "disabled", "itemSize", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i6$1.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "autoZIndex", "baseZIndex", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7304
7597
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngDropdownComponent, decorators: [{
|
|
7305
7598
|
type: Component,
|
|
7306
|
-
args: [{ selector: 'mng-dropdown', providers: [MNG_DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-dropdown\n *ngIf=\"!multiselect; else pMultiselect\"\n [formControl]=\"dropdownFormControl\"\n [placeholder]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"$any(items$ | async)\"\n [showClear]=\"showClear\"\n [autoDisplayFirst]=\"false\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n (onBlur)=\"onDropdownBlur($event)\"\n appendTo=\"body\">\n</p-dropdown>\n<ng-template #pMultiselect>\n <p-multiSelect\n [maxSelectedLabels]=\"1\"\n [selectedItemsLabel]=\"'mngDropdown.multiselectOverMaxDisplayLimit' | translate\"\n [formControl]=\"dropdownFormControl\"\n [defaultLabel]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"(items$ | async) ?? []\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n [filter]=\"true\"\n [showToggleAll]=\"false\"\n (onPanelHide)=\"onPanelHide($event)\"\n appendTo=\"body\">\n </p-multiSelect>\n</ng-template>\n" }]
|
|
7599
|
+
args: [{ selector: 'mng-dropdown', providers: [MNG_DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-dropdown\n *ngIf=\"!multiselect; else pMultiselect\"\n [formControl]=\"dropdownFormControl\"\n [placeholder]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"$any(items$ | async)\"\n [showClear]=\"showClear\"\n [autoDisplayFirst]=\"false\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n (onBlur)=\"onDropdownBlur($event)\"\n [dropdownIcon]=\"($loading | async) ?? false ? 'pi pi-spinner pi-spin' : 'pi pi-chevron-down'\"\n appendTo=\"body\">\n</p-dropdown>\n<ng-template #pMultiselect>\n <p-multiSelect\n [maxSelectedLabels]=\"1\"\n [selectedItemsLabel]=\"'mngDropdown.multiselectOverMaxDisplayLimit' | translate\"\n [formControl]=\"dropdownFormControl\"\n [defaultLabel]=\"$any(placeholder)\"\n [dataKey]=\"$any(dataKeyProperty)\"\n [optionLabel]=\"$any(itemsLabelProperty)\"\n [optionValue]=\"$any(itemsValueProperty)\"\n [optionDisabled]=\"$any(itemsDisabledProperty)\"\n [options]=\"(items$ | async) ?? []\"\n [styleClass]=\"$any(className)\"\n [panelStyleClass]=\"$any(dropdownClassName)\"\n [filter]=\"true\"\n [showToggleAll]=\"false\"\n (onPanelHide)=\"onPanelHide($event)\"\n appendTo=\"body\">\n </p-multiSelect>\n</ng-template>\n" }]
|
|
7307
7600
|
}], ctorParameters: function () {
|
|
7308
7601
|
return [{ type: i0.Injector }, { type: i1$2.TranslateService }, { type: MngFormlyFieldWrapperComponent, decorators: [{
|
|
7309
7602
|
type: Optional
|
|
@@ -7403,11 +7696,11 @@ class MngActionEditorComponent {
|
|
|
7403
7696
|
this.setTitle();
|
|
7404
7697
|
for (const action of this.action.editorActions) {
|
|
7405
7698
|
if (action instanceof ActionEditorSubmitDescriptor) {
|
|
7406
|
-
if (typeof action.icon === 'undefined') {
|
|
7407
|
-
action.withIcon(action.submitType === ActionEditorSubmitTypeEnum.Submit ? 'pi pi-check' : 'pi pi-times');
|
|
7699
|
+
if (typeof action.buttonDescriptor.icon === 'undefined') {
|
|
7700
|
+
action.buttonDescriptor.withIcon(action.submitType === ActionEditorSubmitTypeEnum.Submit ? 'pi pi-check' : 'pi pi-times');
|
|
7408
7701
|
}
|
|
7409
|
-
if (typeof action.
|
|
7410
|
-
action.
|
|
7702
|
+
if (typeof action.buttonDescriptor.label === 'undefined') {
|
|
7703
|
+
action.buttonDescriptor.withLabel(action.submitType === ActionEditorSubmitTypeEnum.Submit ? 'general.save' : this.isDialog ? 'general.close' : 'general.cancel');
|
|
7411
7704
|
}
|
|
7412
7705
|
// assign run operations
|
|
7413
7706
|
action.withRunNotificationSuccess(undefined, undefined, false);
|
|
@@ -7577,6 +7870,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
7577
7870
|
args: [MngFormEditorComponent]
|
|
7578
7871
|
}] } });
|
|
7579
7872
|
|
|
7873
|
+
class MngButtonComponent {
|
|
7874
|
+
constructor() {
|
|
7875
|
+
this.clickEmitter = new EventEmitter();
|
|
7876
|
+
this.focusEmitter = new EventEmitter();
|
|
7877
|
+
this.blurEmitter = new EventEmitter();
|
|
7878
|
+
this.buttonClass = 'p-button';
|
|
7879
|
+
}
|
|
7880
|
+
ngOnInit() {
|
|
7881
|
+
this.buttonClass = `${this.descriptor.styleClass.getButtonClass(this.descriptor.label == null)}`;
|
|
7882
|
+
}
|
|
7883
|
+
onClick(event) {
|
|
7884
|
+
var _a, _b;
|
|
7885
|
+
this.clickEmitter.next(event);
|
|
7886
|
+
(_b = (_a = this.descriptor).onClick) === null || _b === void 0 ? void 0 : _b.call(_a, event);
|
|
7887
|
+
}
|
|
7888
|
+
onFocus(event) {
|
|
7889
|
+
var _a, _b;
|
|
7890
|
+
this.focusEmitter.next(event);
|
|
7891
|
+
(_b = (_a = this.descriptor).onFocus) === null || _b === void 0 ? void 0 : _b.call(_a, event);
|
|
7892
|
+
}
|
|
7893
|
+
onBlur(event) {
|
|
7894
|
+
var _a, _b;
|
|
7895
|
+
this.blurEmitter.next(event);
|
|
7896
|
+
(_b = (_a = this.descriptor).onBlur) === null || _b === void 0 ? void 0 : _b.call(_a, event);
|
|
7897
|
+
}
|
|
7898
|
+
}
|
|
7899
|
+
MngButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7900
|
+
MngButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngButtonComponent, selector: "mng-button", inputs: { descriptor: "descriptor" }, outputs: { clickEmitter: "buttonClick", focusEmitter: "buttonFocus", blurEmitter: "buttonBlur" }, ngImport: i0, template: "<p-button\n #button\n type=\"button\"\n [label]=\"$any(descriptor.label) | translate\"\n [icon]=\"$any(descriptor.icon)\"\n [iconPos]=\"$any(descriptor.iconPosition)\"\n [loading]=\"$any(descriptor.loading)\"\n [loadingIcon]=\"$any(descriptor.loadingIcon)\"\n [disabled]=\"$any(descriptor.disabled)\"\n [styleClass]=\"buttonClass\"\n [pTooltip]=\"$any(descriptor.tooltip) | translate\"\n [badge]=\"$any(descriptor.badge)\"\n (onClick)=\"onClick($event)\"\n (onBlur)=\"onBlur($event)\"\n (onFocus)=\"onFocus($event)\"></p-button>\n", dependencies: [{ kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i4$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7901
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngButtonComponent, decorators: [{
|
|
7902
|
+
type: Component,
|
|
7903
|
+
args: [{ selector: 'mng-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-button\n #button\n type=\"button\"\n [label]=\"$any(descriptor.label) | translate\"\n [icon]=\"$any(descriptor.icon)\"\n [iconPos]=\"$any(descriptor.iconPosition)\"\n [loading]=\"$any(descriptor.loading)\"\n [loadingIcon]=\"$any(descriptor.loadingIcon)\"\n [disabled]=\"$any(descriptor.disabled)\"\n [styleClass]=\"buttonClass\"\n [pTooltip]=\"$any(descriptor.tooltip) | translate\"\n [badge]=\"$any(descriptor.badge)\"\n (onClick)=\"onClick($event)\"\n (onBlur)=\"onBlur($event)\"\n (onFocus)=\"onFocus($event)\"></p-button>\n" }]
|
|
7904
|
+
}], propDecorators: { descriptor: [{
|
|
7905
|
+
type: Input
|
|
7906
|
+
}], clickEmitter: [{
|
|
7907
|
+
type: Output,
|
|
7908
|
+
args: ['buttonClick']
|
|
7909
|
+
}], focusEmitter: [{
|
|
7910
|
+
type: Output,
|
|
7911
|
+
args: ['buttonFocus']
|
|
7912
|
+
}], blurEmitter: [{
|
|
7913
|
+
type: Output,
|
|
7914
|
+
args: ['buttonBlur']
|
|
7915
|
+
}] } });
|
|
7916
|
+
|
|
7580
7917
|
class MngFormlyFieldAutocompleteComponent extends FieldType {
|
|
7581
7918
|
constructor() {
|
|
7582
7919
|
super(...arguments);
|
|
@@ -7822,10 +8159,10 @@ class MngTableColumnValueComponent {
|
|
|
7822
8159
|
}
|
|
7823
8160
|
}
|
|
7824
8161
|
MngTableColumnValueComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngTableColumnValueComponent, deps: [{ token: i0.ElementRef }, { token: i2.MessageService }, { token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7825
|
-
MngTableColumnValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngTableColumnValueComponent, selector: "mng-table-column-value", inputs: { descriptor: "descriptor", item: "item" }, host: { properties: { "style.max-width.px": "this.styleMaxWidth", "class": "this.className" } }, ngImport: i0, template: "<ng-container [ngSwitch]=\"descriptor.columnType\">\n <ng-container *ngSwitchCase=\"columnTypeString\">\n {{ item | jsonPath: jsonPath }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeNumber\">\n {{ item | jsonPath: jsonPath | number: descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCurrency\">\n {{ item | jsonPath: jsonPath | currency: currency:descriptor.currencyDisplay:descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeDate\">\n {{ item | jsonPath: jsonPath | date: descriptor.displayFormat }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeBoolean\">\n <ng-container *ngIf=\"descriptor.booleanAsIcon; else booleanText\"></ng-container>\n <i [class]=\"item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo:true\"></i>\n <ng-template #booleanText>\n {{ item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo | translate }}\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeEnum\">\n {{ item | jsonPath: jsonPath | enum: descriptor.enumType:descriptor.enumTitlePath:descriptor.enumNameAsValue | translate }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCustom\">\n <ng-container\n [mngComponent]=\"descriptor.customComponentType!\"\n [inputs]=\"{\n value: item | jsonPath: jsonPath,\n item: item,\n descriptor: descriptor\n }\"></ng-container>\n </ng-container>\n</ng-container>\n<div class=\"help-buttons\" *ngIf=\"descriptor.hasCopyToClipboard\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-copy\" class=\"p-button-rounded p-button-info p-button-sm\" (click)=\"copyToClipboard($event)\"></button>\n</div>\n", styles: [":host{display:inline-block;overflow:hidden}:host.nowrap{white-space:nowrap;text-overflow:ellipsis}:host:hover .help-buttons{display:block}.help-buttons{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.help-buttons .p-button{height:1.9rem;width:1.9rem;padding:0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i6.Ripple, selector: "[pRipple]" }, { kind: "directive", type: MngComponentDirective, selector: "[mngComponent]", inputs: ["mngComponent", "inputs"], outputs: ["instanceCreated"] }, { kind: "pipe", type: i1$1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1$1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }, { kind: "pipe", type: JsonPathPipe, name: "jsonPath" }, { kind: "pipe", type: MngEnumPipe, name: "enum" }, { kind: "pipe", type: MngBooleanPipe, name: "boolean" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8162
|
+
MngTableColumnValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngTableColumnValueComponent, selector: "mng-table-column-value", inputs: { descriptor: "descriptor", item: "item" }, host: { properties: { "style.max-width.px": "this.styleMaxWidth", "class": "this.className" } }, ngImport: i0, template: "<ng-container [ngSwitch]=\"descriptor.columnType\">\n <ng-container *ngSwitchCase=\"columnTypeString\">\n {{ item | jsonPath: jsonPath | getter: descriptor.getter | template: descriptor.template }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeNumber\">\n {{ item | jsonPath: jsonPath | number: descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCurrency\">\n {{ item | jsonPath: jsonPath | currency: currency:descriptor.currencyDisplay:descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeDate\">\n {{ item | jsonPath: jsonPath | date: descriptor.displayFormat }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeBoolean\">\n <ng-container *ngIf=\"descriptor.booleanAsIcon; else booleanText\"></ng-container>\n <i [class]=\"item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo:true\"></i>\n <ng-template #booleanText>\n {{ item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo | translate }}\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeEnum\">\n {{ item | jsonPath: jsonPath | enum: descriptor.enumType:descriptor.enumTitlePath:descriptor.enumNameAsValue | translate }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCustom\">\n <ng-container\n [mngComponent]=\"descriptor.customComponentType!\"\n [inputs]=\"{\n value: item | jsonPath: jsonPath,\n item: item,\n descriptor: descriptor\n }\"></ng-container>\n </ng-container>\n</ng-container>\n<div class=\"help-buttons\" *ngIf=\"descriptor.hasCopyToClipboard\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-copy\" class=\"p-button-rounded p-button-info p-button-sm\" (click)=\"copyToClipboard($event)\"></button>\n</div>\n", styles: [":host{display:inline-block;overflow:hidden}:host.nowrap{white-space:nowrap;text-overflow:ellipsis}:host:hover .help-buttons{display:block}.help-buttons{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.help-buttons .p-button{height:1.9rem;width:1.9rem;padding:0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i6.Ripple, selector: "[pRipple]" }, { kind: "directive", type: MngComponentDirective, selector: "[mngComponent]", inputs: ["mngComponent", "inputs"], outputs: ["instanceCreated"] }, { kind: "pipe", type: i1$1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1$1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }, { kind: "pipe", type: JsonPathPipe, name: "jsonPath" }, { kind: "pipe", type: MngEnumPipe, name: "enum" }, { kind: "pipe", type: MngBooleanPipe, name: "boolean" }, { kind: "pipe", type: MngGetterPipe, name: "getter" }, { kind: "pipe", type: MngTemplatePipe, name: "template" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7826
8163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngTableColumnValueComponent, decorators: [{
|
|
7827
8164
|
type: Component,
|
|
7828
|
-
args: [{ selector: 'mng-table-column-value', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngSwitch]=\"descriptor.columnType\">\n <ng-container *ngSwitchCase=\"columnTypeString\">\n {{ item | jsonPath: jsonPath }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeNumber\">\n {{ item | jsonPath: jsonPath | number: descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCurrency\">\n {{ item | jsonPath: jsonPath | currency: currency:descriptor.currencyDisplay:descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeDate\">\n {{ item | jsonPath: jsonPath | date: descriptor.displayFormat }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeBoolean\">\n <ng-container *ngIf=\"descriptor.booleanAsIcon; else booleanText\"></ng-container>\n <i [class]=\"item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo:true\"></i>\n <ng-template #booleanText>\n {{ item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo | translate }}\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeEnum\">\n {{ item | jsonPath: jsonPath | enum: descriptor.enumType:descriptor.enumTitlePath:descriptor.enumNameAsValue | translate }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCustom\">\n <ng-container\n [mngComponent]=\"descriptor.customComponentType!\"\n [inputs]=\"{\n value: item | jsonPath: jsonPath,\n item: item,\n descriptor: descriptor\n }\"></ng-container>\n </ng-container>\n</ng-container>\n<div class=\"help-buttons\" *ngIf=\"descriptor.hasCopyToClipboard\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-copy\" class=\"p-button-rounded p-button-info p-button-sm\" (click)=\"copyToClipboard($event)\"></button>\n</div>\n", styles: [":host{display:inline-block;overflow:hidden}:host.nowrap{white-space:nowrap;text-overflow:ellipsis}:host:hover .help-buttons{display:block}.help-buttons{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.help-buttons .p-button{height:1.9rem;width:1.9rem;padding:0}\n"] }]
|
|
8165
|
+
args: [{ selector: 'mng-table-column-value', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngSwitch]=\"descriptor.columnType\">\n <ng-container *ngSwitchCase=\"columnTypeString\">\n {{ item | jsonPath: jsonPath | getter: descriptor.getter | template: descriptor.template }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeNumber\">\n {{ item | jsonPath: jsonPath | number: descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCurrency\">\n {{ item | jsonPath: jsonPath | currency: currency:descriptor.currencyDisplay:descriptor.displayFormat:descriptor.locale }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeDate\">\n {{ item | jsonPath: jsonPath | date: descriptor.displayFormat }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeBoolean\">\n <ng-container *ngIf=\"descriptor.booleanAsIcon; else booleanText\"></ng-container>\n <i [class]=\"item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo:true\"></i>\n <ng-template #booleanText>\n {{ item | jsonPath: jsonPath | boolean: descriptor.booleanYes:descriptor.booleanNo | translate }}\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeEnum\">\n {{ item | jsonPath: jsonPath | enum: descriptor.enumType:descriptor.enumTitlePath:descriptor.enumNameAsValue | translate }}\n </ng-container>\n <ng-container *ngSwitchCase=\"columnTypeCustom\">\n <ng-container\n [mngComponent]=\"descriptor.customComponentType!\"\n [inputs]=\"{\n value: item | jsonPath: jsonPath,\n item: item,\n descriptor: descriptor\n }\"></ng-container>\n </ng-container>\n</ng-container>\n<div class=\"help-buttons\" *ngIf=\"descriptor.hasCopyToClipboard\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-copy\" class=\"p-button-rounded p-button-info p-button-sm\" (click)=\"copyToClipboard($event)\"></button>\n</div>\n", styles: [":host{display:inline-block;overflow:hidden}:host.nowrap{white-space:nowrap;text-overflow:ellipsis}:host:hover .help-buttons{display:block}.help-buttons{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.help-buttons .p-button{height:1.9rem;width:1.9rem;padding:0}\n"] }]
|
|
7829
8166
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.MessageService }, { type: i1$2.TranslateService }]; }, propDecorators: { descriptor: [{
|
|
7830
8167
|
type: Input
|
|
7831
8168
|
}], item: [{
|
|
@@ -8511,13 +8848,14 @@ class AMngTableviewRouteComponent {
|
|
|
8511
8848
|
this.actions = this.createActionDescriptors();
|
|
8512
8849
|
}
|
|
8513
8850
|
createActionDescriptors() {
|
|
8514
|
-
|
|
8515
|
-
|
|
8516
|
-
|
|
8517
|
-
|
|
8518
|
-
|
|
8519
|
-
|
|
8520
|
-
|
|
8851
|
+
return [
|
|
8852
|
+
this.createActionDescriptorForDetails(),
|
|
8853
|
+
this.createActionDescriptorForAdd(),
|
|
8854
|
+
this.createActionDescriptorForEdit(),
|
|
8855
|
+
this.createActionDescriptorForDelete(),
|
|
8856
|
+
this.createActionDescriptorForRefresh(),
|
|
8857
|
+
this.createActionDescriptorForExport()
|
|
8858
|
+
];
|
|
8521
8859
|
}
|
|
8522
8860
|
createActionDescriptorForDetails(descriptor = this.descriptor.viewEditor) {
|
|
8523
8861
|
return new ActionEditorDetailsDescriptor(descriptor);
|
|
@@ -8532,7 +8870,7 @@ class AMngTableviewRouteComponent {
|
|
|
8532
8870
|
return new ActionDeleteDescriptor(descriptor);
|
|
8533
8871
|
}
|
|
8534
8872
|
createActionDescriptorForExport(descriptor = this.descriptor.model) {
|
|
8535
|
-
|
|
8873
|
+
const action = new ActionDescriptor(descriptor, 'export')
|
|
8536
8874
|
.withRunFunction(ctx => {
|
|
8537
8875
|
const queryParamBuilder = ctx.parameters.queryParam ? MediusQueryParamBuilder.createFromExisting(ctx.parameters.queryParam) : MediusQueryParamBuilder.create();
|
|
8538
8876
|
queryParamBuilder.withItemsOffset(0).withItemsPerPage(1000);
|
|
@@ -8545,8 +8883,21 @@ class AMngTableviewRouteComponent {
|
|
|
8545
8883
|
return undefined;
|
|
8546
8884
|
}));
|
|
8547
8885
|
})
|
|
8886
|
+
.withPosition(ActionPositionEnum.ToolbarRight);
|
|
8887
|
+
action.buttonDescriptor.withIcon('pi pi-upload');
|
|
8888
|
+
return action;
|
|
8889
|
+
}
|
|
8890
|
+
createActionDescriptorForRefresh(descriptor = this.descriptor.model) {
|
|
8891
|
+
const action = new ActionDescriptor(descriptor, 'refresh')
|
|
8548
8892
|
.withPosition(ActionPositionEnum.ToolbarRight)
|
|
8549
|
-
.
|
|
8893
|
+
.withPermissionsRouteType(Permissions.ActionTypes.READ)
|
|
8894
|
+
.withRunNotificationSuccess(undefined, undefined, false)
|
|
8895
|
+
.withRunFunction(ctx => {
|
|
8896
|
+
ctx.parameters.viewContainer.triggerTableReload({});
|
|
8897
|
+
return of(null);
|
|
8898
|
+
});
|
|
8899
|
+
action.buttonDescriptor.withIcon('pi pi-refresh').styleClass.withActionLevel(ActionLevelEnum.Secondary);
|
|
8900
|
+
return action;
|
|
8550
8901
|
}
|
|
8551
8902
|
}
|
|
8552
8903
|
AMngTableviewRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: AMngTableviewRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -8800,20 +9151,18 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8800
9151
|
if (hasViewAction) {
|
|
8801
9152
|
const viewAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.viewEditor, 'details', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8802
9153
|
.withPosition(ActionPositionEnum.RowClick)
|
|
8803
|
-
.withTitle(null)
|
|
8804
9154
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8805
9155
|
.withDialogSize(ActionEditorDialogSizeEnum.Small);
|
|
8806
9156
|
viewAction.withEditorActions([new ActionEditorSubmitDescriptor(viewAction, ActionEditorSubmitTypeEnum.Cancel)]);
|
|
9157
|
+
viewAction.buttonDescriptor.withLabel(null);
|
|
8807
9158
|
this.actions.push(viewAction);
|
|
8808
9159
|
}
|
|
8809
9160
|
if (hasAddAction) {
|
|
8810
9161
|
const addAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.addEditor, 'add', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8811
9162
|
.withPosition(ActionPositionEnum.ToolbarRight)
|
|
8812
|
-
.withTitle(null)
|
|
8813
|
-
.withIcon('pi pi-plus')
|
|
8814
9163
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8815
9164
|
.withDialogSize(ActionEditorDialogSizeEnum.Small)
|
|
8816
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9165
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder().withSize(ActionSizeEnum.ExtraSmall)))
|
|
8817
9166
|
.withSubmitFunction(ctx => {
|
|
8818
9167
|
if (!ctx.parameters.item) {
|
|
8819
9168
|
return throwError(() => new Error(`No item was provided in context, edit cannot be done.`));
|
|
@@ -8826,16 +9175,15 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8826
9175
|
})
|
|
8827
9176
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.options) === null || _a === void 0 ? void 0 : _a.formState.disabled)); })
|
|
8828
9177
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9178
|
+
addAction.buttonDescriptor.withLabel(null).withIcon('pi pi-plus');
|
|
8829
9179
|
this.actions.push(addAction);
|
|
8830
9180
|
}
|
|
8831
9181
|
if (hasEditAction) {
|
|
8832
9182
|
const editAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.editEditor, 'edit', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8833
9183
|
.withPosition(ActionPositionEnum.RowInline)
|
|
8834
|
-
.withTitle(null)
|
|
8835
|
-
.withIcon('pi pi-pencil')
|
|
8836
9184
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8837
9185
|
.withDialogSize(ActionEditorDialogSizeEnum.Small)
|
|
8838
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9186
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder().withSize(ActionSizeEnum.ExtraSmall)))
|
|
8839
9187
|
.withSubmitFunction(ctx => {
|
|
8840
9188
|
var _a;
|
|
8841
9189
|
if (!ctx.parameters.item) {
|
|
@@ -8849,15 +9197,13 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8849
9197
|
})
|
|
8850
9198
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.disabled)); })
|
|
8851
9199
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9200
|
+
editAction.buttonDescriptor.withLabel(null).withIcon('pi pi-pencil');
|
|
8852
9201
|
this.actions.push(editAction);
|
|
8853
9202
|
}
|
|
8854
9203
|
if (hasDeleteAction) {
|
|
8855
9204
|
const deleteAction = new ActionDescriptor(this.descriptor.tableviewDescriptor.model, 'delete', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8856
9205
|
.withPosition(ActionPositionEnum.RowInline)
|
|
8857
|
-
.
|
|
8858
|
-
.withTitle(null)
|
|
8859
|
-
.withIcon('pi pi-trash')
|
|
8860
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9206
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder(ActionLevelEnum.Danger).withSize(ActionSizeEnum.ExtraSmall)))
|
|
8861
9207
|
.withRunFunction(ctx => {
|
|
8862
9208
|
var _a;
|
|
8863
9209
|
if (!ctx.parameters.item) {
|
|
@@ -8883,6 +9229,7 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8883
9229
|
})
|
|
8884
9230
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.options) === null || _a === void 0 ? void 0 : _a.formState.disabled)); })
|
|
8885
9231
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9232
|
+
deleteAction.buttonDescriptor.withLabel(null).withIcon('pi pi-trash');
|
|
8886
9233
|
this.actions.push(deleteAction);
|
|
8887
9234
|
}
|
|
8888
9235
|
this.actions.push(...this.descriptor.actions);
|
|
@@ -10062,7 +10409,9 @@ const declarations = [
|
|
|
10062
10409
|
MngEnumPipe,
|
|
10063
10410
|
MngBooleanPipe,
|
|
10064
10411
|
MngI18nPropertyPipe,
|
|
10065
|
-
|
|
10412
|
+
MngParametrizePipe,
|
|
10413
|
+
MngGetterPipe,
|
|
10414
|
+
MngTemplatePipe,
|
|
10066
10415
|
// layout components
|
|
10067
10416
|
MngBreadcrumbComponent,
|
|
10068
10417
|
MngFooterComponent,
|
|
@@ -10097,7 +10446,9 @@ const declarations = [
|
|
|
10097
10446
|
MngFormEditorComponent,
|
|
10098
10447
|
MngActionComponent,
|
|
10099
10448
|
MngActionEditorComponent,
|
|
10100
|
-
MngActionRouteComponent
|
|
10449
|
+
MngActionRouteComponent,
|
|
10450
|
+
//button
|
|
10451
|
+
MngButtonComponent
|
|
10101
10452
|
];
|
|
10102
10453
|
class MngCommonsModule {
|
|
10103
10454
|
static forRoot(config) {
|
|
@@ -10122,7 +10473,9 @@ class MngCommonsModule {
|
|
|
10122
10473
|
MngEnumPipe,
|
|
10123
10474
|
MngBooleanPipe,
|
|
10124
10475
|
MngI18nPropertyPipe,
|
|
10125
|
-
|
|
10476
|
+
MngParametrizePipe,
|
|
10477
|
+
MngGetterPipe,
|
|
10478
|
+
MngTemplatePipe,
|
|
10126
10479
|
// component service
|
|
10127
10480
|
MngMainLayoutComponentService,
|
|
10128
10481
|
MngViewContainerComponentService,
|
|
@@ -10179,7 +10532,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10179
10532
|
MngEnumPipe,
|
|
10180
10533
|
MngBooleanPipe,
|
|
10181
10534
|
MngI18nPropertyPipe,
|
|
10182
|
-
|
|
10535
|
+
MngParametrizePipe,
|
|
10536
|
+
MngGetterPipe,
|
|
10537
|
+
MngTemplatePipe,
|
|
10183
10538
|
// layout components
|
|
10184
10539
|
MngBreadcrumbComponent,
|
|
10185
10540
|
MngFooterComponent,
|
|
@@ -10214,7 +10569,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10214
10569
|
MngFormEditorComponent,
|
|
10215
10570
|
MngActionComponent,
|
|
10216
10571
|
MngActionEditorComponent,
|
|
10217
|
-
MngActionRouteComponent
|
|
10572
|
+
MngActionRouteComponent,
|
|
10573
|
+
//button
|
|
10574
|
+
MngButtonComponent
|
|
10218
10575
|
], imports: [
|
|
10219
10576
|
// angular modules
|
|
10220
10577
|
CommonModule,
|
|
@@ -10296,7 +10653,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10296
10653
|
MngEnumPipe,
|
|
10297
10654
|
MngBooleanPipe,
|
|
10298
10655
|
MngI18nPropertyPipe,
|
|
10299
|
-
|
|
10656
|
+
MngParametrizePipe,
|
|
10657
|
+
MngGetterPipe,
|
|
10658
|
+
MngTemplatePipe,
|
|
10300
10659
|
// layout components
|
|
10301
10660
|
MngBreadcrumbComponent,
|
|
10302
10661
|
MngFooterComponent,
|
|
@@ -10331,7 +10690,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10331
10690
|
MngFormEditorComponent,
|
|
10332
10691
|
MngActionComponent,
|
|
10333
10692
|
MngActionEditorComponent,
|
|
10334
|
-
MngActionRouteComponent
|
|
10693
|
+
MngActionRouteComponent,
|
|
10694
|
+
//button
|
|
10695
|
+
MngButtonComponent] });
|
|
10335
10696
|
MngCommonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngCommonsModule, imports: [
|
|
10336
10697
|
// angular modules
|
|
10337
10698
|
CommonModule,
|
|
@@ -11148,5 +11509,5 @@ class TableviewRouteBuilder {
|
|
|
11148
11509
|
* Generated bundle index. Do not edit.
|
|
11149
11510
|
*/
|
|
11150
11511
|
|
|
11151
|
-
export { ACTION_EDITOR_DIALOG_COMPONENT_SETTING, AFieldDescriptor, AFieldGroupDescriptor, AGenericFieldDescriptor, AMngApiService, AMngBaseApiService, AMngCrudApiService, AMngGetAllApiService, AMngTableviewRouteComponent, APermissions, ActionActivationTriggerEnum, ActionContext, ActionContextValidation, ActionDataProviderUtil, ActionDeleteDescriptor, ActionDescriptor, ActionEditorAddDescriptor, ActionEditorDescriptor, ActionEditorDetailsDescriptor, ActionEditorDialogSizeEnum, ActionEditorEditDescriptor, ActionEditorSubmitDescriptor, ActionEditorSubmitTypeEnum, ActionError, ActionInstance, ActionInstanceStateEnum, ActionLevelEnum, ActionLinkDescriptor, ActionParameters, ActionPositionEnum, ActionSimpleDescriptor, ActionSizeEnum, ActionTypeEnum, AuthorizationTypeEnum, AuthorizationUtil, ButtonStyleBuilder, ColumnDescriptor, ColumnTypeEnum, DataProvider, DefaultMngErrorMapperService, EditorDataProvider, EditorDescriptor, EditorFormlyUtil, EnumName, EnumUtil, FieldGroupDescriptor, FieldGroupTypeEnum, FieldInputDescriptor, FieldInputTypeEnum, FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldLookupTypeEnum, FieldManyEditorActionEnum, FieldManyEditorDescriptor, FieldManyEditorTypeEnum, FieldManyToManyEditorActionEnum, FieldManyToManyEditorDescriptor, FieldManyToManyEditorTypeEnum, FieldSizeEnum, FieldTabGroupDescriptor, FieldValidationDescriptor, FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor, FilterLookupTypeEnum, FilterMatchModeEnum, FilterTypeEnum, 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, MngAuthorizationGuard, MngAuthorizationService, 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,
|
|
11512
|
+
export { ACTION_EDITOR_DIALOG_COMPONENT_SETTING, AFieldDescriptor, AFieldGroupDescriptor, AGenericFieldDescriptor, AMngApiService, AMngBaseApiService, AMngCrudApiService, AMngGetAllApiService, AMngTableviewRouteComponent, APermissions, ActionActivationTriggerEnum, ActionConfirmationDialogDescriptor, ActionContext, ActionContextValidation, ActionDataProviderUtil, ActionDeleteDescriptor, ActionDescriptor, ActionEditorAddDescriptor, ActionEditorDescriptor, ActionEditorDetailsDescriptor, ActionEditorDialogSizeEnum, ActionEditorEditDescriptor, ActionEditorSubmitDescriptor, ActionEditorSubmitTypeEnum, ActionError, ActionInstance, ActionInstanceStateEnum, ActionLevelEnum, ActionLinkDescriptor, ActionParameters, ActionPositionEnum, ActionSimpleDescriptor, ActionSizeEnum, ActionTypeEnum, AuthorizationTypeEnum, AuthorizationUtil, ButtonDescriptor, ButtonStyleBuilder, ButtonStyleRoundedEnum, ColumnDescriptor, ColumnTypeEnum, DataProvider, DefaultMngErrorMapperService, EditorDataProvider, EditorDescriptor, EditorFormlyUtil, EnumName, EnumUtil, FieldGroupDescriptor, FieldGroupTypeEnum, FieldInputDescriptor, FieldInputTypeEnum, FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldLookupTypeEnum, FieldManyEditorActionEnum, FieldManyEditorDescriptor, FieldManyEditorTypeEnum, FieldManyToManyEditorActionEnum, FieldManyToManyEditorDescriptor, FieldManyToManyEditorTypeEnum, FieldSizeEnum, FieldTabGroupDescriptor, FieldValidationDescriptor, FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor, FilterLookupTypeEnum, FilterMatchModeEnum, FilterTypeEnum, 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, MngAuthorizationGuard, MngAuthorizationService, MngAutocompleteComponent, MngBooleanPipe, MngBreadcrumbComponent, MngButtonComponent, 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, MngGetterPipe, MngI18nPropertyPipe, MngMainLayoutComponent, MngMainLayoutComponentService, MngMenuComponent, MngMenuItemComponent, MngNavigationService, MngParametrizePipe, MngTableCellClickEvent, MngTableColumnFilterComponent, MngTableColumnValueComponent, MngTableComponent, MngTableLoadEvent, MngTableReloadEvent, MngTableviewComponent, MngTableviewRouteComponent, MngTemplateDirective, MngTemplatePipe, MngTopbarComponent, MngVersionComponent, MngViewContainerComponentService, ModelDescriptor, ModelUtil, NotificationUtil, ObjectSerializer, Permissions, RouteBuilder, RoutesBuilder, StringUtil, StylesUtil, TableDataProvider, TableDescriptor, TableFilterDisplayEnum, TablePaginationModeEnum, TableSizeEnum, TableviewCrudDataProvider, TableviewDataProvider, TableviewDescriptor, TableviewRouteBuilder, TableviewTypeEnum, TypeName, TypeUtil, enumNameDecoratorPropertyName, enumsMapBase, formlyTypesConfig, formlyWrappersConfig, getEmailValidationMessage, getFormlyValidationMessages, getMaxLengthValidationMessage, getMinLengthValidationMessage, getRequiredValidationMessage, getTextPatternValidationMessage, mngConfigJsonAppInitializerProvider, mngConfigurationServiceProvider, mngFormlyConfigProvider, primeNgModules, typeMapBase, typeNameDecoratorPropertyName };
|
|
11152
11513
|
//# sourceMappingURL=mediusinc-mng-commons.mjs.map
|