@mediusinc/mng-commons 0.12.5 → 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 +7 -7
- 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/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/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 +20 -5
- package/esm2020/lib/pipes/getter.pipe.mjs +20 -0
- package/esm2020/lib/pipes/index.mjs +3 -1
- package/esm2020/lib/pipes/template.pipe.mjs +24 -0
- package/esm2020/lib/services/action-executor.service.mjs +30 -19
- package/esm2020/lib/styles/button-style.builder.mjs +59 -8
- package/esm2020/lib/styles/styles.util.mjs +2 -2
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/mediusinc-mng-commons.mjs +515 -217
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +509 -214
- 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/tableview/route/tableview-route.abstract.component.d.ts +1 -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 +73 -70
- package/lib/pipes/getter.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +2 -0
- package/lib/pipes/template.pipe.d.ts +10 -0
- package/lib/styles/button-style.builder.d.ts +43 -2
- package/package.json +2 -2
- package/public-api.d.ts +1 -0
- package/version-info.json +5 -5
|
@@ -871,7 +871,7 @@ class StylesUtil {
|
|
|
871
871
|
}
|
|
872
872
|
}
|
|
873
873
|
static getActionButtonRoundedWidth(action) {
|
|
874
|
-
switch (action.size) {
|
|
874
|
+
switch (action.buttonDescriptor.styleClass.size) {
|
|
875
875
|
case ActionSizeEnum.ExtraSmall:
|
|
876
876
|
return StylesUtil.BUTTON_ROUNDED_WIDTH_XS;
|
|
877
877
|
case ActionSizeEnum.Small:
|
|
@@ -895,17 +895,18 @@ StylesUtil.TABLE_CELL_PADDING_X_SM = 4;
|
|
|
895
895
|
StylesUtil.TABLE_CELL_PADDING_X_LG = 12;
|
|
896
896
|
|
|
897
897
|
class ButtonStyleBuilder {
|
|
898
|
-
constructor(level, customClass) {
|
|
898
|
+
constructor(level = ActionLevelEnum.Default, customClass) {
|
|
899
899
|
this._size = ActionSizeEnum.Normal;
|
|
900
900
|
this._textButton = false;
|
|
901
901
|
this._outlineButton = false;
|
|
902
902
|
this._raisedButton = false;
|
|
903
|
+
this._roundedStyle = ButtonStyleRoundedEnum.DEFAULT;
|
|
903
904
|
this._actionLevel = level;
|
|
904
905
|
this._customClass = customClass;
|
|
905
906
|
}
|
|
906
907
|
getButtonClass(hasNoTitle = false) {
|
|
907
908
|
const styles = [this.convertActionLevelToStyleClass(), this.convertSizeToStyleClass(), this._customClass];
|
|
908
|
-
if (hasNoTitle) {
|
|
909
|
+
if (hasNoTitle && this._roundedStyle === ButtonStyleRoundedEnum.DEFAULT) {
|
|
909
910
|
styles.push(`p-button-rounded mng-action-button-icon`);
|
|
910
911
|
}
|
|
911
912
|
if (this._textButton) {
|
|
@@ -917,37 +918,78 @@ class ButtonStyleBuilder {
|
|
|
917
918
|
if (this._raisedButton) {
|
|
918
919
|
styles.push(`p-button-raised`);
|
|
919
920
|
}
|
|
921
|
+
if (this._roundedStyle === ButtonStyleRoundedEnum.ROUNDED) {
|
|
922
|
+
styles.push('p-button-rounded');
|
|
923
|
+
}
|
|
920
924
|
return styles.join(' ');
|
|
921
925
|
}
|
|
922
|
-
|
|
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) {
|
|
923
936
|
this._actionLevel = actionLevel !== null && actionLevel !== void 0 ? actionLevel : this._actionLevel;
|
|
924
937
|
this._size = size !== null && size !== void 0 ? size : this._size;
|
|
925
938
|
this._textButton = textButton !== null && textButton !== void 0 ? textButton : this._textButton;
|
|
926
939
|
this._outlineButton = outlineButton !== null && outlineButton !== void 0 ? outlineButton : this._outlineButton;
|
|
927
940
|
this._raisedButton = raisedButton !== null && raisedButton !== void 0 ? raisedButton : this._raisedButton;
|
|
941
|
+
this._roundedStyle = roundedButton !== null && roundedButton !== void 0 ? roundedButton : this._roundedStyle;
|
|
928
942
|
this._customClass = customClass;
|
|
929
943
|
return this;
|
|
930
944
|
}
|
|
945
|
+
/**
|
|
946
|
+
* sets custom action level and returns this object
|
|
947
|
+
* @param actionLevel
|
|
948
|
+
*/
|
|
931
949
|
withActionLevel(actionLevel) {
|
|
932
950
|
this._actionLevel = actionLevel;
|
|
933
951
|
return this;
|
|
934
952
|
}
|
|
953
|
+
/**
|
|
954
|
+
* sets custom size and return this object
|
|
955
|
+
* @param size
|
|
956
|
+
*/
|
|
935
957
|
withSize(size) {
|
|
936
958
|
this._size = size;
|
|
937
959
|
return this;
|
|
938
960
|
}
|
|
961
|
+
/**
|
|
962
|
+
* sets text button property
|
|
963
|
+
* @param withText default true
|
|
964
|
+
*/
|
|
939
965
|
withTextButton(withText = true) {
|
|
940
966
|
this._textButton = withText;
|
|
941
967
|
return this;
|
|
942
968
|
}
|
|
969
|
+
/**
|
|
970
|
+
* sets outline button property
|
|
971
|
+
* @param withOutline default true
|
|
972
|
+
*/
|
|
943
973
|
withOutlineButton(withOutline = true) {
|
|
944
974
|
this._outlineButton = withOutline;
|
|
945
975
|
return this;
|
|
946
976
|
}
|
|
977
|
+
/**
|
|
978
|
+
* sets raised button property
|
|
979
|
+
* @param withRaised default true
|
|
980
|
+
*/
|
|
947
981
|
withRaisedButton(withRaised = true) {
|
|
948
982
|
this._raisedButton = withRaised;
|
|
949
983
|
return this;
|
|
950
984
|
}
|
|
985
|
+
withRoundedButton(roundedStyle = ButtonStyleRoundedEnum.ROUNDED) {
|
|
986
|
+
this._roundedStyle = roundedStyle;
|
|
987
|
+
return this;
|
|
988
|
+
}
|
|
989
|
+
/**
|
|
990
|
+
* sets custom style class
|
|
991
|
+
* @param customClass
|
|
992
|
+
*/
|
|
951
993
|
withCustomClass(customClass) {
|
|
952
994
|
this._customClass = customClass;
|
|
953
995
|
return this;
|
|
@@ -974,15 +1016,15 @@ class ButtonStyleBuilder {
|
|
|
974
1016
|
convertSizeToStyleClass() {
|
|
975
1017
|
switch (this._size) {
|
|
976
1018
|
case ActionSizeEnum.ExtraSmall:
|
|
977
|
-
return 'mng-button-xs';
|
|
1019
|
+
return 'p-button-sm mng-button-xs';
|
|
978
1020
|
case ActionSizeEnum.Small:
|
|
979
|
-
return 'mng-button-sm';
|
|
1021
|
+
return 'p-button-sm mng-button-sm';
|
|
980
1022
|
case ActionSizeEnum.Normal:
|
|
981
1023
|
return '';
|
|
982
1024
|
case ActionSizeEnum.Large:
|
|
983
|
-
return 'mng-button-lg';
|
|
1025
|
+
return 'p-button-lg mng-button-lg';
|
|
984
1026
|
case ActionSizeEnum.ExtraLarge:
|
|
985
|
-
return 'mng-button-xl';
|
|
1027
|
+
return 'p-button-lg mng-button-xl';
|
|
986
1028
|
}
|
|
987
1029
|
}
|
|
988
1030
|
get actionLevel() {
|
|
@@ -1000,10 +1042,123 @@ class ButtonStyleBuilder {
|
|
|
1000
1042
|
get raisedButton() {
|
|
1001
1043
|
return this._raisedButton;
|
|
1002
1044
|
}
|
|
1045
|
+
get roundedStyle() {
|
|
1046
|
+
return this._roundedStyle;
|
|
1047
|
+
}
|
|
1003
1048
|
get customClass() {
|
|
1004
1049
|
return this._customClass;
|
|
1005
1050
|
}
|
|
1006
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
|
+
}
|
|
1007
1162
|
|
|
1008
1163
|
class ActionDescriptor {
|
|
1009
1164
|
constructor(model, actionName, parentType, parentProperty) {
|
|
@@ -1012,10 +1167,10 @@ class ActionDescriptor {
|
|
|
1012
1167
|
this._position = ActionPositionEnum.ToolbarRight;
|
|
1013
1168
|
this._level = ActionLevelEnum.Default;
|
|
1014
1169
|
this._routeUrl = null;
|
|
1015
|
-
this._buttonStyle = new ButtonStyleBuilder(this._level);
|
|
1016
|
-
this._hasRunConfirmation = false;
|
|
1017
1170
|
this._hasRunNotificationSuccess = true;
|
|
1018
1171
|
this._hasRunNotificationError = true;
|
|
1172
|
+
//button
|
|
1173
|
+
this._buttonDescriptor = new ButtonDescriptor();
|
|
1019
1174
|
this._model = model;
|
|
1020
1175
|
this._actionName = actionName;
|
|
1021
1176
|
if ((parentType && !parentProperty) || (!parentProperty && parentProperty)) {
|
|
@@ -1064,15 +1219,6 @@ class ActionDescriptor {
|
|
|
1064
1219
|
get routeUrl() {
|
|
1065
1220
|
return this._routeUrl;
|
|
1066
1221
|
}
|
|
1067
|
-
get title() {
|
|
1068
|
-
return this._title;
|
|
1069
|
-
}
|
|
1070
|
-
get icon() {
|
|
1071
|
-
return this._icon;
|
|
1072
|
-
}
|
|
1073
|
-
get tooltip() {
|
|
1074
|
-
return this._tooltip;
|
|
1075
|
-
}
|
|
1076
1222
|
get dataProvider() {
|
|
1077
1223
|
return this._dataProvider;
|
|
1078
1224
|
}
|
|
@@ -1097,83 +1243,14 @@ class ActionDescriptor {
|
|
|
1097
1243
|
get actionNameLong() {
|
|
1098
1244
|
return this._actionNameLong;
|
|
1099
1245
|
}
|
|
1100
|
-
get buttonStyle() {
|
|
1101
|
-
return this._buttonStyle;
|
|
1102
|
-
}
|
|
1103
|
-
/**
|
|
1104
|
-
* @deprecated use _buttonStyle instead
|
|
1105
|
-
*/
|
|
1106
1246
|
get className() {
|
|
1107
|
-
return this.
|
|
1247
|
+
return this.buttonDescriptor.styleClass.customClass;
|
|
1108
1248
|
}
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
*/
|
|
1112
|
-
get isStyleText() {
|
|
1113
|
-
return this._buttonStyle.textButton;
|
|
1114
|
-
}
|
|
1115
|
-
/**
|
|
1116
|
-
* @deprecated use _buttonStyle instead
|
|
1117
|
-
*/
|
|
1118
|
-
get isStyleOutlined() {
|
|
1119
|
-
return this._buttonStyle.outlineButton;
|
|
1120
|
-
}
|
|
1121
|
-
/**
|
|
1122
|
-
* @deprecated use _buttonStyle instead
|
|
1123
|
-
*/
|
|
1124
|
-
get isStyleRaised() {
|
|
1125
|
-
return this._buttonStyle.raisedButton;
|
|
1126
|
-
}
|
|
1127
|
-
/**
|
|
1128
|
-
* @deprecated use _buttonStyle instead
|
|
1129
|
-
*/
|
|
1130
|
-
get size() {
|
|
1131
|
-
return this._buttonStyle.size;
|
|
1132
|
-
}
|
|
1133
|
-
/**
|
|
1134
|
-
* @deprecated use _buttonStyle instead
|
|
1135
|
-
*/
|
|
1136
|
-
get isSizeExtraSmall() {
|
|
1137
|
-
return this._buttonStyle.size === ActionSizeEnum.ExtraSmall;
|
|
1138
|
-
}
|
|
1139
|
-
/**
|
|
1140
|
-
* @deprecated use _buttonStyle instead
|
|
1141
|
-
*/
|
|
1142
|
-
get isSizeSmall() {
|
|
1143
|
-
return this._buttonStyle.size === ActionSizeEnum.Small;
|
|
1144
|
-
}
|
|
1145
|
-
/**
|
|
1146
|
-
* @deprecated use _buttonStyle instead
|
|
1147
|
-
*/
|
|
1148
|
-
get isSizeLarge() {
|
|
1149
|
-
return this._buttonStyle.size === ActionSizeEnum.Large;
|
|
1150
|
-
}
|
|
1151
|
-
/**
|
|
1152
|
-
* @deprecated use _buttonStyle instead
|
|
1153
|
-
*/
|
|
1154
|
-
get isSizeExtraLarge() {
|
|
1155
|
-
return this._buttonStyle.size === ActionSizeEnum.ExtraLarge;
|
|
1249
|
+
get runConfirmationDialogDescriptor() {
|
|
1250
|
+
return this._runConfirmationDialogDescriptor;
|
|
1156
1251
|
}
|
|
1157
1252
|
get hasRunConfirmation() {
|
|
1158
|
-
return this.
|
|
1159
|
-
}
|
|
1160
|
-
get runConfirmationIcon() {
|
|
1161
|
-
return this._runConfirmationIcon;
|
|
1162
|
-
}
|
|
1163
|
-
get runConfirmationTitle() {
|
|
1164
|
-
return this._runConfirmationTitle;
|
|
1165
|
-
}
|
|
1166
|
-
get runConfirmationMessage() {
|
|
1167
|
-
return this._runConfirmationMessage;
|
|
1168
|
-
}
|
|
1169
|
-
get runConfirmationAcceptTitle() {
|
|
1170
|
-
return this._runConfirmationAcceptTitle;
|
|
1171
|
-
}
|
|
1172
|
-
get runConfirmationRejectTitle() {
|
|
1173
|
-
return this._runConfirmationRejectTitle;
|
|
1174
|
-
}
|
|
1175
|
-
get runConfirmationConfigMapFn() {
|
|
1176
|
-
return this._runConfirmationConfigMapFn;
|
|
1253
|
+
return this._runConfirmationDialogDescriptor !== null && this._runConfirmationDialogDescriptor !== undefined;
|
|
1177
1254
|
}
|
|
1178
1255
|
get hasRunNotificationSuccess() {
|
|
1179
1256
|
return this._hasRunNotificationSuccess;
|
|
@@ -1205,6 +1282,9 @@ class ActionDescriptor {
|
|
|
1205
1282
|
get permissionsRouteType() {
|
|
1206
1283
|
return this._permissionsRouteType;
|
|
1207
1284
|
}
|
|
1285
|
+
get buttonDescriptor() {
|
|
1286
|
+
return this._buttonDescriptor;
|
|
1287
|
+
}
|
|
1208
1288
|
withDataProvider(dataProvider) {
|
|
1209
1289
|
this._dataProvider = dataProvider;
|
|
1210
1290
|
return this;
|
|
@@ -1233,70 +1313,25 @@ class ActionDescriptor {
|
|
|
1233
1313
|
this._routeUrl = routeUrl;
|
|
1234
1314
|
return this;
|
|
1235
1315
|
}
|
|
1236
|
-
|
|
1237
|
-
this.
|
|
1238
|
-
this._buttonStyle = this._buttonStyle.withActionLevel(level);
|
|
1239
|
-
return this;
|
|
1240
|
-
}
|
|
1241
|
-
/**
|
|
1242
|
-
* Overrides default title key with model action key (${model.typeName}.actions.${actionName}). Not relevant if parentType name is provided.
|
|
1243
|
-
*/
|
|
1244
|
-
withModelTitle() {
|
|
1245
|
-
this._title = `${this._i18nModelActionBaseKey}.title`;
|
|
1316
|
+
withPosition(position) {
|
|
1317
|
+
this._position = position;
|
|
1246
1318
|
return this;
|
|
1247
1319
|
}
|
|
1248
1320
|
/**
|
|
1249
|
-
*
|
|
1250
|
-
* @param title Title i18n key or title.
|
|
1321
|
+
* creates confirmation action with default style based on action descriptor
|
|
1251
1322
|
*/
|
|
1252
|
-
|
|
1253
|
-
this.
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
this._icon = icon;
|
|
1258
|
-
return this;
|
|
1259
|
-
}
|
|
1260
|
-
withTooltip(tooltip) {
|
|
1261
|
-
this._tooltip = tooltip;
|
|
1262
|
-
return this;
|
|
1263
|
-
}
|
|
1264
|
-
withClassName(className) {
|
|
1265
|
-
this._buttonStyle = this._buttonStyle.withCustomClass(className);
|
|
1266
|
-
return this;
|
|
1267
|
-
}
|
|
1268
|
-
withSize(size = ActionSizeEnum.Normal) {
|
|
1269
|
-
this._buttonStyle = this._buttonStyle.withSize(size);
|
|
1270
|
-
return this;
|
|
1271
|
-
}
|
|
1272
|
-
withStyle(styleText = false, styleOutlined = false, styleRaised = false) {
|
|
1273
|
-
this._buttonStyle = this._buttonStyle.withOutlineButton(styleOutlined);
|
|
1274
|
-
this._buttonStyle = this._buttonStyle.withRaisedButton(styleRaised);
|
|
1275
|
-
this._buttonStyle = this._buttonStyle.withTextButton(styleText);
|
|
1276
|
-
return this;
|
|
1277
|
-
}
|
|
1278
|
-
withPosition(position) {
|
|
1279
|
-
this._position = position;
|
|
1280
|
-
return this;
|
|
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;
|
|
1281
1328
|
}
|
|
1282
1329
|
/**
|
|
1283
|
-
* Add a
|
|
1284
|
-
* @param
|
|
1285
|
-
* @param title the title of the confirmation dialogue
|
|
1286
|
-
* @param message the message on the confirmation dialogue
|
|
1287
|
-
* @param acceptTitle the title of the accepting button
|
|
1288
|
-
* @param rejectTitle the title of the rejecting button
|
|
1289
|
-
* @param runConfirmationConfigMapFn function used to generate the confirmation dialogue. **WARNING** changing the *accept* and *reject* methods of the *confirmConfig* parameter
|
|
1290
|
-
* may lead to unexpected behaviour
|
|
1330
|
+
* Add a configuration dialogue to action using ActionConfigurationDescriptor
|
|
1331
|
+
* @param confirmationDescriptor descriptor with customizable information for dialog
|
|
1291
1332
|
*/
|
|
1292
|
-
|
|
1293
|
-
this.
|
|
1294
|
-
this._runConfirmationIcon = icon;
|
|
1295
|
-
this._runConfirmationTitle = title;
|
|
1296
|
-
this._runConfirmationMessage = message;
|
|
1297
|
-
this._runConfirmationAcceptTitle = acceptTitle;
|
|
1298
|
-
this._runConfirmationRejectTitle = rejectTitle;
|
|
1299
|
-
this._runConfirmationConfigMapFn = runConfirmationConfigMapFn;
|
|
1333
|
+
withRunConfirmationDescriptor(runConfirmationDialogDescriptor) {
|
|
1334
|
+
this._runConfirmationDialogDescriptor = runConfirmationDialogDescriptor;
|
|
1300
1335
|
return this;
|
|
1301
1336
|
}
|
|
1302
1337
|
withRunNotificationSuccess(title, message, hasNotification = true) {
|
|
@@ -1330,6 +1365,10 @@ class ActionDescriptor {
|
|
|
1330
1365
|
this._permissionsRouteType = permissionsRouteType;
|
|
1331
1366
|
return this;
|
|
1332
1367
|
}
|
|
1368
|
+
withButtonDescriptor(buttonDescriptor) {
|
|
1369
|
+
this._buttonDescriptor = buttonDescriptor;
|
|
1370
|
+
return this;
|
|
1371
|
+
}
|
|
1333
1372
|
}
|
|
1334
1373
|
class ActionSimpleDescriptor extends ActionDescriptor {
|
|
1335
1374
|
constructor(actionName, modelType, idProperty, titleProperty) {
|
|
@@ -1346,7 +1385,7 @@ class ActionEditorDescriptor extends ActionDescriptor {
|
|
|
1346
1385
|
this._dialogSize = ActionEditorDialogSizeEnum.Normal;
|
|
1347
1386
|
this._type = ActionTypeEnum.Editor;
|
|
1348
1387
|
this._editorDescriptor = editorDescriptor;
|
|
1349
|
-
this._editorActions.push(
|
|
1388
|
+
this._editorActions.push(ActionEditorSubmitDescriptor.forPrimary(this), ActionEditorSubmitDescriptor.forSecondary(this));
|
|
1350
1389
|
}
|
|
1351
1390
|
get editorTitle() {
|
|
1352
1391
|
return this._editorTitle;
|
|
@@ -1453,7 +1492,23 @@ class ActionEditorSubmitDescriptor extends ActionDescriptor {
|
|
|
1453
1492
|
this._editorAction = editorAction;
|
|
1454
1493
|
this._submitType = submitType;
|
|
1455
1494
|
this._position = ActionPositionEnum.FooterRight;
|
|
1456
|
-
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()));
|
|
1457
1512
|
}
|
|
1458
1513
|
get submitType() {
|
|
1459
1514
|
return this._submitType;
|
|
@@ -1487,8 +1542,8 @@ class ActionEditorAddDescriptor extends ActionEditorDescriptor {
|
|
|
1487
1542
|
this.withPosition(ActionPositionEnum.ToolbarLeft);
|
|
1488
1543
|
this.withRouteTrigger('add');
|
|
1489
1544
|
this.withSubmitFunction(ActionDataProviderUtil.runCreateOrFail);
|
|
1490
|
-
this.
|
|
1491
|
-
this.withIcon('pi pi-plus');
|
|
1545
|
+
this.buttonDescriptor.styleClass.withActionLevel(ActionLevelEnum.Success);
|
|
1546
|
+
this.buttonDescriptor.withIcon('pi pi-plus');
|
|
1492
1547
|
this.withPermissionsRouteType(Permissions.ActionTypes.ADD);
|
|
1493
1548
|
}
|
|
1494
1549
|
withServiceType(serviceType) {
|
|
@@ -1511,12 +1566,11 @@ class ActionEditorEditDescriptor extends ActionEditorDescriptor {
|
|
|
1511
1566
|
constructor(editorDescriptor) {
|
|
1512
1567
|
super(editorDescriptor, ActionEditorEditDescriptor.ACTION_NAME);
|
|
1513
1568
|
this.withPosition(ActionPositionEnum.RowInline);
|
|
1514
|
-
this.withTitle(null);
|
|
1515
1569
|
this.withRouteTrigger(':itemId/edit');
|
|
1516
1570
|
this.withFetchFunction(ActionDataProviderUtil.runFetchOrFail);
|
|
1517
1571
|
this.withSubmitFunction(ActionDataProviderUtil.runUpdateOrFail);
|
|
1518
|
-
this.withIcon('pi pi-pencil');
|
|
1519
1572
|
this.withPermissionsRouteType(Permissions.ActionTypes.EDIT);
|
|
1573
|
+
this.buttonDescriptor.withLabel(null).withIcon('pi pi-pencil');
|
|
1520
1574
|
}
|
|
1521
1575
|
withServiceType(serviceType) {
|
|
1522
1576
|
return this.withServiceSubmitFunction(serviceType);
|
|
@@ -1538,12 +1592,11 @@ class ActionDeleteDescriptor extends ActionDescriptor {
|
|
|
1538
1592
|
constructor(model) {
|
|
1539
1593
|
super(model, ActionDeleteDescriptor.ACTION_NAME);
|
|
1540
1594
|
this.withPosition(ActionPositionEnum.RowInline);
|
|
1541
|
-
this.withTitle(null);
|
|
1542
1595
|
this.withRunFunction(ActionDataProviderUtil.runDeleteOrFail);
|
|
1543
|
-
this.
|
|
1544
|
-
this.
|
|
1545
|
-
this.withRunConfirmation(undefined);
|
|
1596
|
+
this.buttonDescriptor.styleClass.withActionLevel(ActionLevelEnum.Danger);
|
|
1597
|
+
this.withRunConfirmation();
|
|
1546
1598
|
this.withPermissionsRouteType(Permissions.ActionTypes.DELETE);
|
|
1599
|
+
this.buttonDescriptor.withLabel(null).withIcon('pi pi-trash');
|
|
1547
1600
|
}
|
|
1548
1601
|
withServiceType(serviceType) {
|
|
1549
1602
|
return this.withServiceDeleteFunction(serviceType);
|
|
@@ -2001,6 +2054,12 @@ class ColumnDescriptor {
|
|
|
2001
2054
|
get hasCopyToClipboard() {
|
|
2002
2055
|
return this._hasCopyToClipboard;
|
|
2003
2056
|
}
|
|
2057
|
+
get template() {
|
|
2058
|
+
return this._template;
|
|
2059
|
+
}
|
|
2060
|
+
get getter() {
|
|
2061
|
+
return this._getter;
|
|
2062
|
+
}
|
|
2004
2063
|
asType(type = ColumnTypeEnum.String) {
|
|
2005
2064
|
this._columnType = type;
|
|
2006
2065
|
return this;
|
|
@@ -2136,6 +2195,14 @@ class ColumnDescriptor {
|
|
|
2136
2195
|
this._hasCopyToClipboard = hasCopyToCliboard;
|
|
2137
2196
|
return this;
|
|
2138
2197
|
}
|
|
2198
|
+
withTemplate(template) {
|
|
2199
|
+
this._template = template;
|
|
2200
|
+
return this;
|
|
2201
|
+
}
|
|
2202
|
+
withGetter(getter) {
|
|
2203
|
+
this._getter = getter;
|
|
2204
|
+
return this;
|
|
2205
|
+
}
|
|
2139
2206
|
copy() {
|
|
2140
2207
|
var _a;
|
|
2141
2208
|
const descriptor = new ColumnDescriptor(this._table, this._property);
|
|
@@ -2163,6 +2230,8 @@ class ColumnDescriptor {
|
|
|
2163
2230
|
descriptor._minWidth = this._minWidth;
|
|
2164
2231
|
descriptor._maxWidth = this._maxWidth;
|
|
2165
2232
|
descriptor._hasCopyToClipboard = this._hasCopyToClipboard;
|
|
2233
|
+
descriptor._template = this._template;
|
|
2234
|
+
descriptor._getter = this._getter;
|
|
2166
2235
|
return descriptor;
|
|
2167
2236
|
}
|
|
2168
2237
|
}
|
|
@@ -3546,6 +3615,116 @@ class TableviewDescriptor {
|
|
|
3546
3615
|
}
|
|
3547
3616
|
}
|
|
3548
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
|
+
|
|
3549
3728
|
class EditorFormlyUtil {
|
|
3550
3729
|
static createFormlyConfigFromDescriptor(descriptor) {
|
|
3551
3730
|
const fields = [];
|
|
@@ -5379,6 +5558,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
5379
5558
|
}]
|
|
5380
5559
|
}] });
|
|
5381
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
|
+
|
|
5382
5600
|
class MngActionExecutorService {
|
|
5383
5601
|
constructor(injector, router, dialogService, confirmationService, translate, configurationService, navigationService, errorMapper, parametrize, defaultEditorDialogComponent) {
|
|
5384
5602
|
this.injector = injector;
|
|
@@ -5634,7 +5852,7 @@ class MngActionExecutorService {
|
|
|
5634
5852
|
* @return Action context for run function.
|
|
5635
5853
|
*/
|
|
5636
5854
|
runAction(action, parameters, dataProvider, instance, previousActionInstance) {
|
|
5637
|
-
var _a, _b, _c, _d;
|
|
5855
|
+
var _a, _b, _c, _d, _e, _f;
|
|
5638
5856
|
if (!instance) {
|
|
5639
5857
|
// create new instance if non provided
|
|
5640
5858
|
instance = new ActionInstance(action, ActionInstanceStateEnum.ActivationEnd, this.debug);
|
|
@@ -5642,33 +5860,44 @@ class MngActionExecutorService {
|
|
|
5642
5860
|
const context = this.prepareActionContext(instance, parameters, dataProvider, previousActionInstance);
|
|
5643
5861
|
if (action.hasRunConfirmation) {
|
|
5644
5862
|
const sourceComponent = parameters === null || parameters === void 0 ? void 0 : parameters.sourceComponent;
|
|
5863
|
+
const confirmationDescriptor = action.runConfirmationDialogDescriptor;
|
|
5645
5864
|
if (typeof (sourceComponent === null || sourceComponent === void 0 ? void 0 : sourceComponent.getConfirmationService) !== 'function' || typeof (sourceComponent === null || sourceComponent === void 0 ? void 0 : sourceComponent.getConfirmationServiceInstanceKey) !== 'function') {
|
|
5646
5865
|
throw new Error(`Source component ${sourceComponent} should be implementing IConfirmationService interface to be able to provide confirmation functionality.`);
|
|
5647
5866
|
}
|
|
5867
|
+
const item = parameters.item;
|
|
5648
5868
|
const srcConfirmComponent = sourceComponent;
|
|
5649
5869
|
let confirmParams = {
|
|
5650
5870
|
key: srcConfirmComponent.getConfirmationServiceInstanceKey(action),
|
|
5651
|
-
|
|
5652
|
-
|
|
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
|
|
5653
5879
|
};
|
|
5654
|
-
|
|
5655
|
-
|
|
5656
|
-
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;
|
|
5657
5882
|
}
|
|
5658
|
-
if (
|
|
5883
|
+
if (confirmationDescriptor.message !== null) {
|
|
5659
5884
|
confirmParams.message =
|
|
5660
|
-
(
|
|
5885
|
+
(_d = I18nUtils.Action.get(this.translate, action, 'confirm.message', confirmationDescriptor.message, StringUtil.escapeHtmlAny(item), 'general.confirmation')) !== null && _d !== void 0 ? _d : undefined;
|
|
5886
|
+
}
|
|
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;
|
|
5661
5889
|
}
|
|
5662
|
-
if (
|
|
5663
|
-
confirmParams.
|
|
5890
|
+
if (confirmationDescriptor.acceptIcon !== null) {
|
|
5891
|
+
confirmParams.acceptIcon = confirmationDescriptor.acceptIcon;
|
|
5664
5892
|
}
|
|
5665
|
-
if (
|
|
5666
|
-
confirmParams.
|
|
5667
|
-
confirmParams.acceptVisible = true;
|
|
5893
|
+
if (confirmationDescriptor.rejectIcon !== null) {
|
|
5894
|
+
confirmParams.rejectIcon = confirmationDescriptor.rejectIcon;
|
|
5668
5895
|
}
|
|
5669
|
-
if (
|
|
5670
|
-
confirmParams.rejectLabel = (
|
|
5671
|
-
|
|
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;
|
|
5672
5901
|
}
|
|
5673
5902
|
confirmParams.accept = () => {
|
|
5674
5903
|
instance.state = ActionInstanceStateEnum.RunConfirmationEndAccept;
|
|
@@ -5678,8 +5907,8 @@ class MngActionExecutorService {
|
|
|
5678
5907
|
instance.state = ActionInstanceStateEnum.RunConfirmationEndReject;
|
|
5679
5908
|
this.deactivateAction(instance);
|
|
5680
5909
|
};
|
|
5681
|
-
if (
|
|
5682
|
-
confirmParams =
|
|
5910
|
+
if (confirmationDescriptor.runConfirmationConfigMapFn) {
|
|
5911
|
+
confirmParams = confirmationDescriptor.runConfirmationConfigMapFn(context, confirmParams);
|
|
5683
5912
|
}
|
|
5684
5913
|
context.confirmation = confirmParams;
|
|
5685
5914
|
instance.state = ActionInstanceStateEnum.RunConfirmationStart;
|
|
@@ -5836,7 +6065,7 @@ class MngActionExecutorService {
|
|
|
5836
6065
|
if (actionUrl.startsWith('/')) {
|
|
5837
6066
|
actionUrl = actionUrl.substring(1);
|
|
5838
6067
|
}
|
|
5839
|
-
const actionUrlSegments = this.parametrize.transform(actionUrl, parameters.itemId, parameters.item, parameters.actionData);
|
|
6068
|
+
const actionUrlSegments = this.parametrize.transform(actionUrl, parameters.itemId, parameters.item, parameters.actionData).split('/');
|
|
5840
6069
|
instance.triggerRouteNavigation = from(this.router.navigate([baseUrl, ...actionUrlSegments], { relativeTo: parameters.route, queryParams: parsedUrl.queryParams }));
|
|
5841
6070
|
return instance;
|
|
5842
6071
|
}
|
|
@@ -6380,7 +6609,7 @@ class MngActionComponent {
|
|
|
6380
6609
|
ngOnInit() {
|
|
6381
6610
|
var _a, _b;
|
|
6382
6611
|
this.viewContainer = (_b = (_a = this.viewContainerInit) !== null && _a !== void 0 ? _a : this.viewContainerService) !== null && _b !== void 0 ? _b : undefined;
|
|
6383
|
-
this.hasNoTitle = this.action.
|
|
6612
|
+
this.hasNoTitle = this.action.buttonDescriptor.label === null;
|
|
6384
6613
|
this.isEnabledSubject.next(true);
|
|
6385
6614
|
this.isVisibleSubject.next(true);
|
|
6386
6615
|
this.isPermittedSubject.next(true);
|
|
@@ -6403,7 +6632,7 @@ class MngActionComponent {
|
|
|
6403
6632
|
this.isHostHidden = !isVisible || !isPermitted;
|
|
6404
6633
|
});
|
|
6405
6634
|
this.subscriptions.push(hostVisibilitySubscription);
|
|
6406
|
-
this.buttonClass = this.action.
|
|
6635
|
+
this.buttonClass = this.action.buttonDescriptor.styleClass.getButtonClass(this.hasNoTitle);
|
|
6407
6636
|
}
|
|
6408
6637
|
ngOnChanges(changes) {
|
|
6409
6638
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -6454,7 +6683,7 @@ class MngActionComponent {
|
|
|
6454
6683
|
return `${action.actionName}_${this.cmpId}`;
|
|
6455
6684
|
}
|
|
6456
6685
|
processSubscriptions() {
|
|
6457
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
6686
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
6458
6687
|
const parameters = new ActionParameters(this.itemId, this.item)
|
|
6459
6688
|
.withActionData(this.actionData)
|
|
6460
6689
|
.withViewContainer((_a = this.viewContainer) !== null && _a !== void 0 ? _a : undefined)
|
|
@@ -6483,21 +6712,21 @@ class MngActionComponent {
|
|
|
6483
6712
|
}
|
|
6484
6713
|
if (!this.hasNoTitle) {
|
|
6485
6714
|
(_f = this.labelSubscription) === null || _f === void 0 ? void 0 : _f.unsubscribe();
|
|
6486
|
-
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({
|
|
6487
6716
|
next: i18n => this.labelSubject.next(i18n)
|
|
6488
6717
|
});
|
|
6489
6718
|
}
|
|
6490
|
-
(
|
|
6491
|
-
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({
|
|
6492
6721
|
next: i18n => this.tooltipSubject.next(i18n)
|
|
6493
6722
|
});
|
|
6494
6723
|
}
|
|
6495
6724
|
}
|
|
6496
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 });
|
|
6497
|
-
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 | 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.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.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
|
|
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 });
|
|
6498
6727
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngActionComponent, decorators: [{
|
|
6499
6728
|
type: Component,
|
|
6500
|
-
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 | 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.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.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
|
|
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"] }]
|
|
6501
6730
|
}], ctorParameters: function () {
|
|
6502
6731
|
return [{ type: i1.ActivatedRoute }, { type: i1$2.TranslateService }, { type: MngAuthorizationService }, { type: MngActionExecutorService }, { type: i2.ConfirmationService }, { type: MngViewContainerComponentService, decorators: [{
|
|
6503
6732
|
type: Optional
|
|
@@ -6787,13 +7016,14 @@ class MngFormEditorComponent {
|
|
|
6787
7016
|
if (field && field.setter) {
|
|
6788
7017
|
const splitPath = field.property.split('.');
|
|
6789
7018
|
let fieldValue = formValue;
|
|
6790
|
-
for (let i = 0; i < splitPath.length; i++) {
|
|
7019
|
+
for (let i = 0; i < splitPath.length - 1; i++) {
|
|
6791
7020
|
const currentSubPath = splitPath[i];
|
|
6792
7021
|
if (typeof fieldValue[currentSubPath] !== 'object') {
|
|
6793
7022
|
fieldValue[currentSubPath] = {};
|
|
6794
7023
|
}
|
|
6795
7024
|
fieldValue = fieldValue[currentSubPath];
|
|
6796
7025
|
}
|
|
7026
|
+
fieldValue = fieldValue[splitPath[splitPath.length - 1]];
|
|
6797
7027
|
field.setter(formValue, fieldValue);
|
|
6798
7028
|
}
|
|
6799
7029
|
});
|
|
@@ -7466,11 +7696,11 @@ class MngActionEditorComponent {
|
|
|
7466
7696
|
this.setTitle();
|
|
7467
7697
|
for (const action of this.action.editorActions) {
|
|
7468
7698
|
if (action instanceof ActionEditorSubmitDescriptor) {
|
|
7469
|
-
if (typeof action.icon === 'undefined') {
|
|
7470
|
-
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');
|
|
7471
7701
|
}
|
|
7472
|
-
if (typeof action.
|
|
7473
|
-
action.
|
|
7702
|
+
if (typeof action.buttonDescriptor.label === 'undefined') {
|
|
7703
|
+
action.buttonDescriptor.withLabel(action.submitType === ActionEditorSubmitTypeEnum.Submit ? 'general.save' : this.isDialog ? 'general.close' : 'general.cancel');
|
|
7474
7704
|
}
|
|
7475
7705
|
// assign run operations
|
|
7476
7706
|
action.withRunNotificationSuccess(undefined, undefined, false);
|
|
@@ -7640,6 +7870,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
7640
7870
|
args: [MngFormEditorComponent]
|
|
7641
7871
|
}] } });
|
|
7642
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
|
+
|
|
7643
7917
|
class MngFormlyFieldAutocompleteComponent extends FieldType {
|
|
7644
7918
|
constructor() {
|
|
7645
7919
|
super(...arguments);
|
|
@@ -7885,10 +8159,10 @@ class MngTableColumnValueComponent {
|
|
|
7885
8159
|
}
|
|
7886
8160
|
}
|
|
7887
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 });
|
|
7888
|
-
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 });
|
|
7889
8163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngTableColumnValueComponent, decorators: [{
|
|
7890
8164
|
type: Component,
|
|
7891
|
-
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"] }]
|
|
7892
8166
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.MessageService }, { type: i1$2.TranslateService }]; }, propDecorators: { descriptor: [{
|
|
7893
8167
|
type: Input
|
|
7894
8168
|
}], item: [{
|
|
@@ -8574,13 +8848,14 @@ class AMngTableviewRouteComponent {
|
|
|
8574
8848
|
this.actions = this.createActionDescriptors();
|
|
8575
8849
|
}
|
|
8576
8850
|
createActionDescriptors() {
|
|
8577
|
-
|
|
8578
|
-
|
|
8579
|
-
|
|
8580
|
-
|
|
8581
|
-
|
|
8582
|
-
|
|
8583
|
-
|
|
8851
|
+
return [
|
|
8852
|
+
this.createActionDescriptorForDetails(),
|
|
8853
|
+
this.createActionDescriptorForAdd(),
|
|
8854
|
+
this.createActionDescriptorForEdit(),
|
|
8855
|
+
this.createActionDescriptorForDelete(),
|
|
8856
|
+
this.createActionDescriptorForRefresh(),
|
|
8857
|
+
this.createActionDescriptorForExport()
|
|
8858
|
+
];
|
|
8584
8859
|
}
|
|
8585
8860
|
createActionDescriptorForDetails(descriptor = this.descriptor.viewEditor) {
|
|
8586
8861
|
return new ActionEditorDetailsDescriptor(descriptor);
|
|
@@ -8595,7 +8870,7 @@ class AMngTableviewRouteComponent {
|
|
|
8595
8870
|
return new ActionDeleteDescriptor(descriptor);
|
|
8596
8871
|
}
|
|
8597
8872
|
createActionDescriptorForExport(descriptor = this.descriptor.model) {
|
|
8598
|
-
|
|
8873
|
+
const action = new ActionDescriptor(descriptor, 'export')
|
|
8599
8874
|
.withRunFunction(ctx => {
|
|
8600
8875
|
const queryParamBuilder = ctx.parameters.queryParam ? MediusQueryParamBuilder.createFromExisting(ctx.parameters.queryParam) : MediusQueryParamBuilder.create();
|
|
8601
8876
|
queryParamBuilder.withItemsOffset(0).withItemsPerPage(1000);
|
|
@@ -8608,8 +8883,21 @@ class AMngTableviewRouteComponent {
|
|
|
8608
8883
|
return undefined;
|
|
8609
8884
|
}));
|
|
8610
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')
|
|
8611
8892
|
.withPosition(ActionPositionEnum.ToolbarRight)
|
|
8612
|
-
.
|
|
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;
|
|
8613
8901
|
}
|
|
8614
8902
|
}
|
|
8615
8903
|
AMngTableviewRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: AMngTableviewRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -8863,20 +9151,18 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8863
9151
|
if (hasViewAction) {
|
|
8864
9152
|
const viewAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.viewEditor, 'details', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8865
9153
|
.withPosition(ActionPositionEnum.RowClick)
|
|
8866
|
-
.withTitle(null)
|
|
8867
9154
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8868
9155
|
.withDialogSize(ActionEditorDialogSizeEnum.Small);
|
|
8869
9156
|
viewAction.withEditorActions([new ActionEditorSubmitDescriptor(viewAction, ActionEditorSubmitTypeEnum.Cancel)]);
|
|
9157
|
+
viewAction.buttonDescriptor.withLabel(null);
|
|
8870
9158
|
this.actions.push(viewAction);
|
|
8871
9159
|
}
|
|
8872
9160
|
if (hasAddAction) {
|
|
8873
9161
|
const addAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.addEditor, 'add', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8874
9162
|
.withPosition(ActionPositionEnum.ToolbarRight)
|
|
8875
|
-
.withTitle(null)
|
|
8876
|
-
.withIcon('pi pi-plus')
|
|
8877
9163
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8878
9164
|
.withDialogSize(ActionEditorDialogSizeEnum.Small)
|
|
8879
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9165
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder().withSize(ActionSizeEnum.ExtraSmall)))
|
|
8880
9166
|
.withSubmitFunction(ctx => {
|
|
8881
9167
|
if (!ctx.parameters.item) {
|
|
8882
9168
|
return throwError(() => new Error(`No item was provided in context, edit cannot be done.`));
|
|
@@ -8889,16 +9175,15 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8889
9175
|
})
|
|
8890
9176
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.options) === null || _a === void 0 ? void 0 : _a.formState.disabled)); })
|
|
8891
9177
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9178
|
+
addAction.buttonDescriptor.withLabel(null).withIcon('pi pi-plus');
|
|
8892
9179
|
this.actions.push(addAction);
|
|
8893
9180
|
}
|
|
8894
9181
|
if (hasEditAction) {
|
|
8895
9182
|
const editAction = new ActionEditorDescriptor(this.descriptor.tableviewDescriptor.editEditor, 'edit', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8896
9183
|
.withPosition(ActionPositionEnum.RowInline)
|
|
8897
|
-
.withTitle(null)
|
|
8898
|
-
.withIcon('pi pi-pencil')
|
|
8899
9184
|
.withDialogClassName('mng-field-dialog mng-action-editor-dialog')
|
|
8900
9185
|
.withDialogSize(ActionEditorDialogSizeEnum.Small)
|
|
8901
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9186
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder().withSize(ActionSizeEnum.ExtraSmall)))
|
|
8902
9187
|
.withSubmitFunction(ctx => {
|
|
8903
9188
|
var _a;
|
|
8904
9189
|
if (!ctx.parameters.item) {
|
|
@@ -8912,15 +9197,13 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8912
9197
|
})
|
|
8913
9198
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.disabled)); })
|
|
8914
9199
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9200
|
+
editAction.buttonDescriptor.withLabel(null).withIcon('pi pi-pencil');
|
|
8915
9201
|
this.actions.push(editAction);
|
|
8916
9202
|
}
|
|
8917
9203
|
if (hasDeleteAction) {
|
|
8918
9204
|
const deleteAction = new ActionDescriptor(this.descriptor.tableviewDescriptor.model, 'delete', this.descriptor.editor.model.type, this.descriptor.property)
|
|
8919
9205
|
.withPosition(ActionPositionEnum.RowInline)
|
|
8920
|
-
.
|
|
8921
|
-
.withTitle(null)
|
|
8922
|
-
.withIcon('pi pi-trash')
|
|
8923
|
-
.withSize(ActionSizeEnum.ExtraSmall)
|
|
9206
|
+
.withButtonDescriptor(new ButtonDescriptor().withStyleClass(new ButtonStyleBuilder(ActionLevelEnum.Danger).withSize(ActionSizeEnum.ExtraSmall)))
|
|
8924
9207
|
.withRunFunction(ctx => {
|
|
8925
9208
|
var _a;
|
|
8926
9209
|
if (!ctx.parameters.item) {
|
|
@@ -8946,6 +9229,7 @@ class MngFormlyFieldTableDialogFormComponent extends FieldType {
|
|
|
8946
9229
|
})
|
|
8947
9230
|
.withIsVisibleFunction(() => { var _a; return of(!((_a = this.options) === null || _a === void 0 ? void 0 : _a.formState.disabled)); })
|
|
8948
9231
|
.withIsEnabledFunction(() => this.isEnabled$);
|
|
9232
|
+
deleteAction.buttonDescriptor.withLabel(null).withIcon('pi pi-trash');
|
|
8949
9233
|
this.actions.push(deleteAction);
|
|
8950
9234
|
}
|
|
8951
9235
|
this.actions.push(...this.descriptor.actions);
|
|
@@ -10126,6 +10410,8 @@ const declarations = [
|
|
|
10126
10410
|
MngBooleanPipe,
|
|
10127
10411
|
MngI18nPropertyPipe,
|
|
10128
10412
|
MngParametrizePipe,
|
|
10413
|
+
MngGetterPipe,
|
|
10414
|
+
MngTemplatePipe,
|
|
10129
10415
|
// layout components
|
|
10130
10416
|
MngBreadcrumbComponent,
|
|
10131
10417
|
MngFooterComponent,
|
|
@@ -10160,7 +10446,9 @@ const declarations = [
|
|
|
10160
10446
|
MngFormEditorComponent,
|
|
10161
10447
|
MngActionComponent,
|
|
10162
10448
|
MngActionEditorComponent,
|
|
10163
|
-
MngActionRouteComponent
|
|
10449
|
+
MngActionRouteComponent,
|
|
10450
|
+
//button
|
|
10451
|
+
MngButtonComponent
|
|
10164
10452
|
];
|
|
10165
10453
|
class MngCommonsModule {
|
|
10166
10454
|
static forRoot(config) {
|
|
@@ -10186,6 +10474,8 @@ class MngCommonsModule {
|
|
|
10186
10474
|
MngBooleanPipe,
|
|
10187
10475
|
MngI18nPropertyPipe,
|
|
10188
10476
|
MngParametrizePipe,
|
|
10477
|
+
MngGetterPipe,
|
|
10478
|
+
MngTemplatePipe,
|
|
10189
10479
|
// component service
|
|
10190
10480
|
MngMainLayoutComponentService,
|
|
10191
10481
|
MngViewContainerComponentService,
|
|
@@ -10243,6 +10533,8 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10243
10533
|
MngBooleanPipe,
|
|
10244
10534
|
MngI18nPropertyPipe,
|
|
10245
10535
|
MngParametrizePipe,
|
|
10536
|
+
MngGetterPipe,
|
|
10537
|
+
MngTemplatePipe,
|
|
10246
10538
|
// layout components
|
|
10247
10539
|
MngBreadcrumbComponent,
|
|
10248
10540
|
MngFooterComponent,
|
|
@@ -10277,7 +10569,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10277
10569
|
MngFormEditorComponent,
|
|
10278
10570
|
MngActionComponent,
|
|
10279
10571
|
MngActionEditorComponent,
|
|
10280
|
-
MngActionRouteComponent
|
|
10572
|
+
MngActionRouteComponent,
|
|
10573
|
+
//button
|
|
10574
|
+
MngButtonComponent
|
|
10281
10575
|
], imports: [
|
|
10282
10576
|
// angular modules
|
|
10283
10577
|
CommonModule,
|
|
@@ -10360,6 +10654,8 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10360
10654
|
MngBooleanPipe,
|
|
10361
10655
|
MngI18nPropertyPipe,
|
|
10362
10656
|
MngParametrizePipe,
|
|
10657
|
+
MngGetterPipe,
|
|
10658
|
+
MngTemplatePipe,
|
|
10363
10659
|
// layout components
|
|
10364
10660
|
MngBreadcrumbComponent,
|
|
10365
10661
|
MngFooterComponent,
|
|
@@ -10394,7 +10690,9 @@ MngCommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
10394
10690
|
MngFormEditorComponent,
|
|
10395
10691
|
MngActionComponent,
|
|
10396
10692
|
MngActionEditorComponent,
|
|
10397
|
-
MngActionRouteComponent
|
|
10693
|
+
MngActionRouteComponent,
|
|
10694
|
+
//button
|
|
10695
|
+
MngButtonComponent] });
|
|
10398
10696
|
MngCommonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngCommonsModule, imports: [
|
|
10399
10697
|
// angular modules
|
|
10400
10698
|
CommonModule,
|
|
@@ -11211,5 +11509,5 @@ class TableviewRouteBuilder {
|
|
|
11211
11509
|
* Generated bundle index. Do not edit.
|
|
11212
11510
|
*/
|
|
11213
11511
|
|
|
11214
|
-
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, MngI18nPropertyPipe, MngMainLayoutComponent, MngMainLayoutComponentService, MngMenuComponent, MngMenuItemComponent, MngNavigationService, MngParametrizePipe, MngTableCellClickEvent, MngTableColumnFilterComponent, MngTableColumnValueComponent, MngTableComponent, MngTableLoadEvent, MngTableReloadEvent, MngTableviewComponent, MngTableviewRouteComponent, MngTemplateDirective, 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 };
|
|
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 };
|
|
11215
11513
|
//# sourceMappingURL=mediusinc-mng-commons.mjs.map
|