ru.coon 2.7.41 → 2.7.43
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/.gitattributes +1 -1
- package/.husky/pre-commit +4 -4
- package/.lintstagedrc.json +2 -2
- package/CHANGELOG.md +18 -0
- package/Readme.md +24 -24
- package/TODO.md +7 -7
- package/doc/changelog.md +118 -118
- package/doc/shortcuts.md +5 -5
- package/jsdoc.config.json +29 -29
- package/package.json +78 -78
- package/sass/src/common/plugin/form/PeriodPicker.scss +8 -8
- package/src/Function.scss +4 -4
- package/src/app/viewPort/Main.scss +133 -133
- package/src/command/Readme.md +4 -4
- package/src/common/component/ColorPalette.scss +102 -102
- package/src/common/component/ExternalFrame.scss +8 -8
- package/src/common/component/HotkeyHelpText.scss +34 -34
- package/src/common/component/TreeComponentStructure.scss +5 -5
- package/src/common/component/editor/CharacteristicGridEditor.scss +66 -66
- package/src/common/component/editor/TypedCharacteristicEditor.scss +7 -7
- package/src/common/component/formeditor/UiCustomFilterForm.scss +7 -7
- package/src/common/component/formeditor/UiCustomFormEditor.scss +42 -42
- package/src/common/component/visualeditor/UiCPVisualEditor.scss +108 -108
- package/src/common/field/EditorJs.scss +41 -41
- package/src/common/field/FieldsHelper.js +0 -0
- package/src/common/field/ReportValueField.scss +2 -2
- package/src/common/field/combo/CommandComboBox.scss +19 -19
- package/src/common/panel/DayPicker.scss +15 -15
- package/src/common/panel/MainUploadPanel.js +6 -6
- package/src/common/panel/MainUploadPanel.scss +13 -13
- package/src/common/panel/SelectIconClassPanel.scss +38 -38
- package/src/common/panel/SelectIconClassPanelTemplate.scss +14 -14
- package/src/common/panel/WindowWrap.js +0 -0
- package/src/common/panel/WindowWrap.scss +8 -8
- package/src/common/panel/dropzone/UniversalMultiUploadForm.scss +29 -29
- package/src/common/panel/dropzone/UploadDropZone.scss +36 -36
- package/src/common/panel/widget/WidgetPanel.scss +157 -157
- package/src/info.scss +12 -12
- package/src/nav/AppNavTab.scss +20 -20
- package/src/nav/AppNavigationBar.scss +9 -9
- package/src/nav/AppNavigationMenu.scss +60 -60
- package/src/nav/AppNavigationToggleButton.scss +6 -6
- package/src/nav/editor/menu/NavMenuTreeView.scss +104 -104
- package/src/nav/editor/menu/form/NavMenuFormView.js +1 -1
- package/src/nav/editor/menu/form/NavMenuFormViewController.js +3 -4
- package/src/nav/editor/workspace/NavWorkspaceListView.scss +35 -35
- package/src/nav/editor/workspace/form/NavWorkspaceFormController.js +38 -6
- package/src/nav/menu/NavMenuPanel.scss +11 -11
- package/src/nav/menu/WorkspaceMenuView.scss +218 -218
- package/src/nav/windowHolderTab.scss +13 -13
- package/src/report/column/MultiFilesColumn.scss +8 -8
- package/src/report/component/BoundListPagingToolbar.scss +7 -7
- package/src/report/component/ErrorWindow.scss +15 -15
- package/src/report/component/ParameterizedReportCombo.scss +85 -85
- package/src/report/component/ReportPanel.scss +69 -69
- package/src/report/component/SimpleReportTag.scss +22 -22
- package/src/report/component/reportpanel/CopyReportPanel.scss +14 -14
- package/src/report/component/reportpanel/FilterPanel.scss +16 -16
- package/src/report/component/reportpanel/FilterPanelLegend.scss +23 -23
- package/src/report/component/reportpanel/NorthPanel.scss +18 -18
- package/src/report/component/reportpanel/ReportGrid.scss +37 -37
- package/src/report/component/settings/ReportFormEditPanel.scss +87 -87
- package/src/report/component/settings/ReportPropertiesGrid.scss +25 -25
- package/src/report/component/settings/field/ReportFormFieldsGrid.scss +5 -5
- package/src/report/component/settings/property/ReportPropertiesPanel.scss +12 -12
- package/src/report/plugin/SettingsManagerPlugin/view/SMPMainView.scss +3 -3
- package/src/report/plugin/configPanel/AddFilterConditionPluginConfigPanel.scss +53 -53
- package/src/report/plugin/configPanel/CopyRowsFromGridConfigPanel.js +34 -14
- package/src/report/plugin/configPanel/ExecuteCommandButtonPluginConfigPanel.scss +5 -5
- package/src/report/plugin/configPanel/GroupRowsPluginConfigPanel.scss +3 -3
- package/src/report/plugin/configPanel/UiAceEditorField.scss +20 -20
- package/src/report/plugin/configPanel/common/pluginDescriptionLabel.scss +8 -8
- package/src/report/plugin/grid/CopyRowsFromGrid.js +17 -11
- package/src/report/plugin/grid/GridRowStylePlugin.scss +56 -56
- package/src/report/plugin/grid/ReportTabContainerPlugin.scss +3 -3
- package/src/report/plugin/grid/ToggleColumnsPlugin.scss +7 -7
- package/src/report/plugin/grid/ToolbarButtonPlugin.scss +3 -3
- package/src/report/plugin/grid/TreeNestingToolbarButtonPlugin.js +14 -4
- package/src/research/ResearchTreeView.scss +19 -19
- package/src/security/component/RoleFileUploadForm.scss +4 -4
- package/src/security/component/ui/UiCPRestrictionEditor.scss +4 -4
- package/src/security/securitySettingComponent/RoleEditPanel.scss +16 -16
- package/src/uielement/component/MenuItemList.scss +35 -35
- package/src/uielement/component/formchips/FilterConditionToolbar.scss +74 -74
- package/src/uielement/component/settings/UiCustomPanelEditor.scss +9 -9
- package/src/uielement/component/settings/config/UiCPConfigPanelController.scss +24 -24
- package/src/uielement/component/settings/plugin/UiCustomPanelPluginGrid.js +18 -2
- package/src/uielement/component/settings/plugin/UiCustomPanelPluginGrid.scss +11 -11
- package/src/uielement/component/settings/plugin/UiCustomPanelPluginGridController.js +10 -0
- package/src/uielement/component/settings/plugin/UiCustomPanelPluginPanel.scss +30 -30
- package/src/uielement/component/settings/version/UiCPVersionPanel.scss +15 -15
- package/src/uielement/component/settings/version/UiCPVersionPanelController.js +2 -1
- package/src/uielement/plugin/AddOutputParamsPlugin.js +1 -1
- package/src/uielement/plugin/configPanel/AddBindingsPluginConfigPanelFormEditor.scss +29 -29
- package/src/uielement/plugin/configPanel/executeCommand/ExecuteCommandPluginConfigPanelFormEditor.scss +22 -22
- package/src/version.js +1 -1
- package/src/common/panel/StopwatchWindow.js +0 -44
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
.AppNavigationMenu {
|
|
2
|
-
|
|
3
|
-
.x-btn-arrow-right:after {
|
|
4
|
-
color: white;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
.x-panel-body-default {
|
|
8
|
-
.x-box-inner {
|
|
9
|
-
width: 260px !important;
|
|
10
|
-
|
|
11
|
-
.x-box-target {
|
|
12
|
-
width: 260px !important;
|
|
13
|
-
|
|
14
|
-
.x-btn-default-small {
|
|
15
|
-
width: 260px !important;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.x-menuview {
|
|
19
|
-
width: 260px !important;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.x-panel-body-default {
|
|
26
|
-
background-color: $base-color;
|
|
27
|
-
scrollbar-width: none;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.x-treelist-menu {
|
|
31
|
-
width: 260px !important;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.x-btn-button-default-small {
|
|
35
|
-
.x-btn-icon-el {
|
|
36
|
-
&.svg-icon {
|
|
37
|
-
background-color: lighten(lightgray, 5%);
|
|
38
|
-
width: 24px;
|
|
39
|
-
height: 24px;
|
|
40
|
-
margin-left: 2px;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.x-btn-default-small {
|
|
46
|
-
padding: 4px 6px;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
.x-btn-inner-default-small {
|
|
50
|
-
letter-spacing: 0.03em;
|
|
51
|
-
font-size: 16px;
|
|
52
|
-
font-weight: 500;
|
|
53
|
-
padding-left: 8px;
|
|
54
|
-
color: white;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.x-btn-arrow-right:after {
|
|
58
|
-
color: white;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
1
|
+
.AppNavigationMenu {
|
|
2
|
+
|
|
3
|
+
.x-btn-arrow-right:after {
|
|
4
|
+
color: white;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.x-panel-body-default {
|
|
8
|
+
.x-box-inner {
|
|
9
|
+
width: 260px !important;
|
|
10
|
+
|
|
11
|
+
.x-box-target {
|
|
12
|
+
width: 260px !important;
|
|
13
|
+
|
|
14
|
+
.x-btn-default-small {
|
|
15
|
+
width: 260px !important;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.x-menuview {
|
|
19
|
+
width: 260px !important;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.x-panel-body-default {
|
|
26
|
+
background-color: $base-color;
|
|
27
|
+
scrollbar-width: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.x-treelist-menu {
|
|
31
|
+
width: 260px !important;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.x-btn-button-default-small {
|
|
35
|
+
.x-btn-icon-el {
|
|
36
|
+
&.svg-icon {
|
|
37
|
+
background-color: lighten(lightgray, 5%);
|
|
38
|
+
width: 24px;
|
|
39
|
+
height: 24px;
|
|
40
|
+
margin-left: 2px;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.x-btn-default-small {
|
|
46
|
+
padding: 4px 6px;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.x-btn-inner-default-small {
|
|
50
|
+
letter-spacing: 0.03em;
|
|
51
|
+
font-size: 16px;
|
|
52
|
+
font-weight: 500;
|
|
53
|
+
padding-left: 8px;
|
|
54
|
+
color: white;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.x-btn-arrow-right:after {
|
|
58
|
+
color: white;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
.AppNavigationToggleButton{
|
|
2
|
-
.x-btn-icon-el.svg-icon{
|
|
3
|
-
width: 33px;
|
|
4
|
-
height: 24px;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
1
|
+
.AppNavigationToggleButton{
|
|
2
|
+
.x-btn-icon-el.svg-icon{
|
|
3
|
+
width: 33px;
|
|
4
|
+
height: 24px;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
.NavMenuTreeView{
|
|
2
|
-
.svg-icon{
|
|
3
|
-
height: 24px;
|
|
4
|
-
width: 24px;
|
|
5
|
-
}
|
|
6
|
-
.fa{
|
|
7
|
-
height: 24px;
|
|
8
|
-
width: 24px;
|
|
9
|
-
padding-top: 6px;
|
|
10
|
-
color: black;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.rootText{
|
|
14
|
-
font-size:18px;
|
|
15
|
-
font-family: Bold;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.rootTextWorkspace{
|
|
19
|
-
color: #4c4c4ced;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.titleNavMenuTree{
|
|
23
|
-
color:grey;
|
|
24
|
-
}
|
|
25
|
-
.x-segmented-button-item{
|
|
26
|
-
background-color: transparent;
|
|
27
|
-
}
|
|
28
|
-
.x-segmented-button-item:hover{
|
|
29
|
-
background-color: rgba(61, 103, 128, 0.04);
|
|
30
|
-
}
|
|
31
|
-
.x-segmented-button-item:active{
|
|
32
|
-
background-color: rgba(61, 103, 128, 0.12);
|
|
33
|
-
}
|
|
34
|
-
.x-segmented-button .x-segmented-button-item .x-btn-inner{
|
|
35
|
-
color: #3D6780;
|
|
36
|
-
}
|
|
37
|
-
.x-segmented-button .x-segmented-button-item .x-btn-icon-el{
|
|
38
|
-
color: #3D6780;
|
|
39
|
-
}
|
|
40
|
-
.x-btn-icon-el{
|
|
41
|
-
color: #3D6780;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
@include extjs-button-small-ui(
|
|
46
|
-
$ui: 'NavMenuTreeButton',
|
|
47
|
-
$padding: 8px 12px,
|
|
48
|
-
$color: #3D6780,
|
|
49
|
-
$icon-size: 16px,
|
|
50
|
-
|
|
51
|
-
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
52
|
-
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
53
|
-
|
|
54
|
-
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
55
|
-
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
$border-color: 'none',
|
|
59
|
-
$background-color: transparent,
|
|
60
|
-
$border-color-focus: #3D6780
|
|
61
|
-
);
|
|
62
|
-
|
|
63
|
-
@include extjs-button-small-ui(
|
|
64
|
-
$ui: 'NavMenuTreeSegmentedButton',
|
|
65
|
-
$padding: 8px 12px,
|
|
66
|
-
$color: #3D6780,
|
|
67
|
-
$icon-size: 16px,
|
|
68
|
-
|
|
69
|
-
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
70
|
-
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
71
|
-
|
|
72
|
-
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
73
|
-
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
$border-color: 'none',
|
|
77
|
-
$background-color: transparent,
|
|
78
|
-
$border-color-focus: #3D6780,
|
|
79
|
-
$background-color-focus: rgba(61, 103, 128, 0.12)
|
|
80
|
-
);
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
.NavMenuTreeSplitMenu{
|
|
84
|
-
.x-menu-item-icon-default{
|
|
85
|
-
width: 24px;
|
|
86
|
-
height: 24px;
|
|
87
|
-
top: 4px;
|
|
88
|
-
left: 16px;
|
|
89
|
-
line-height: 24px;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
.invisibleMenuIcon{
|
|
94
|
-
.svg-icon{
|
|
95
|
-
height: 24px;
|
|
96
|
-
width: 24px;
|
|
97
|
-
background-color: #6b6b6b;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
@include extjs-menu-ui(
|
|
102
|
-
$ui: 'NavMenuTreeContextMenu',
|
|
103
|
-
$ui-item-icon-size : 24px,
|
|
104
|
-
);
|
|
1
|
+
.NavMenuTreeView{
|
|
2
|
+
.svg-icon{
|
|
3
|
+
height: 24px;
|
|
4
|
+
width: 24px;
|
|
5
|
+
}
|
|
6
|
+
.fa{
|
|
7
|
+
height: 24px;
|
|
8
|
+
width: 24px;
|
|
9
|
+
padding-top: 6px;
|
|
10
|
+
color: black;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.rootText{
|
|
14
|
+
font-size:18px;
|
|
15
|
+
font-family: Bold;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.rootTextWorkspace{
|
|
19
|
+
color: #4c4c4ced;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.titleNavMenuTree{
|
|
23
|
+
color:grey;
|
|
24
|
+
}
|
|
25
|
+
.x-segmented-button-item{
|
|
26
|
+
background-color: transparent;
|
|
27
|
+
}
|
|
28
|
+
.x-segmented-button-item:hover{
|
|
29
|
+
background-color: rgba(61, 103, 128, 0.04);
|
|
30
|
+
}
|
|
31
|
+
.x-segmented-button-item:active{
|
|
32
|
+
background-color: rgba(61, 103, 128, 0.12);
|
|
33
|
+
}
|
|
34
|
+
.x-segmented-button .x-segmented-button-item .x-btn-inner{
|
|
35
|
+
color: #3D6780;
|
|
36
|
+
}
|
|
37
|
+
.x-segmented-button .x-segmented-button-item .x-btn-icon-el{
|
|
38
|
+
color: #3D6780;
|
|
39
|
+
}
|
|
40
|
+
.x-btn-icon-el{
|
|
41
|
+
color: #3D6780;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@include extjs-button-small-ui(
|
|
46
|
+
$ui: 'NavMenuTreeButton',
|
|
47
|
+
$padding: 8px 12px,
|
|
48
|
+
$color: #3D6780,
|
|
49
|
+
$icon-size: 16px,
|
|
50
|
+
|
|
51
|
+
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
52
|
+
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
53
|
+
|
|
54
|
+
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
55
|
+
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
$border-color: 'none',
|
|
59
|
+
$background-color: transparent,
|
|
60
|
+
$border-color-focus: #3D6780
|
|
61
|
+
);
|
|
62
|
+
|
|
63
|
+
@include extjs-button-small-ui(
|
|
64
|
+
$ui: 'NavMenuTreeSegmentedButton',
|
|
65
|
+
$padding: 8px 12px,
|
|
66
|
+
$color: #3D6780,
|
|
67
|
+
$icon-size: 16px,
|
|
68
|
+
|
|
69
|
+
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
70
|
+
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
71
|
+
|
|
72
|
+
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
73
|
+
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
$border-color: 'none',
|
|
77
|
+
$background-color: transparent,
|
|
78
|
+
$border-color-focus: #3D6780,
|
|
79
|
+
$background-color-focus: rgba(61, 103, 128, 0.12)
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
.NavMenuTreeSplitMenu{
|
|
84
|
+
.x-menu-item-icon-default{
|
|
85
|
+
width: 24px;
|
|
86
|
+
height: 24px;
|
|
87
|
+
top: 4px;
|
|
88
|
+
left: 16px;
|
|
89
|
+
line-height: 24px;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.invisibleMenuIcon{
|
|
94
|
+
.svg-icon{
|
|
95
|
+
height: 24px;
|
|
96
|
+
width: 24px;
|
|
97
|
+
background-color: #6b6b6b;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
@include extjs-menu-ui(
|
|
102
|
+
$ui: 'NavMenuTreeContextMenu',
|
|
103
|
+
$ui-item-icon-size : 24px,
|
|
104
|
+
);
|
|
@@ -23,7 +23,7 @@ Ext.define('Coon.nav.editor.menu.form.NavMenuFormViewController', {
|
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
25
|
* получение данных об элементе меню по id при откртыии формы для редактирования
|
|
26
|
-
* @param {String}
|
|
26
|
+
* @param {String} menuId
|
|
27
27
|
*/
|
|
28
28
|
|
|
29
29
|
doInit: function(menuId) {
|
|
@@ -98,8 +98,8 @@ Ext.define('Coon.nav.editor.menu.form.NavMenuFormViewController', {
|
|
|
98
98
|
params: {reportId: 'MENU_ALLITEMS', parameterList: `[{"type":"MENU_ENTRY_CD","value":"${data.menuId}"}]`},
|
|
99
99
|
})
|
|
100
100
|
.then((resp) => {
|
|
101
|
-
if (resp.totalCount > 0) {
|
|
102
|
-
Ext.Msg.alert('Ошибка', `Пункт
|
|
101
|
+
if (vm.get('newMenu') && resp.totalCount > 0) {
|
|
102
|
+
Ext.Msg.alert('Ошибка', `Пункт меню с идентификатором ${data.menuId} уже существует`);
|
|
103
103
|
} else {
|
|
104
104
|
Coon.util.promisifyCmd('command.' + commandClass, data)
|
|
105
105
|
.then((menuBean) => {
|
|
@@ -149,7 +149,6 @@ Ext.define('Coon.nav.editor.menu.form.NavMenuFormViewController', {
|
|
|
149
149
|
win.show();
|
|
150
150
|
win.content.doInit('UI_ELEMENTS_LIST', {
|
|
151
151
|
UI_ELEMENT_CD: editorField.getValue(),
|
|
152
|
-
UI_ELEMENT_CD: editorField.getValue(),
|
|
153
152
|
}, !!editorField.getValue());
|
|
154
153
|
},
|
|
155
154
|
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
.NavWorkspaceListView{
|
|
2
|
-
.svg-icon{
|
|
3
|
-
height: 24px;
|
|
4
|
-
width: 24px;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
.titleNavWorkspaceList{
|
|
8
|
-
color: grey;
|
|
9
|
-
}
|
|
10
|
-
.x-btn-icon-el{
|
|
11
|
-
color: #3D6780;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
@include extjs-button-small-ui(
|
|
16
|
-
$ui: 'NavMenuWorkspaceButton',
|
|
17
|
-
$padding: 8px 12px,
|
|
18
|
-
$color: #3D6780,
|
|
19
|
-
$icon-size: 16px,
|
|
20
|
-
|
|
21
|
-
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
22
|
-
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
23
|
-
|
|
24
|
-
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
25
|
-
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
$border-color: 'none',
|
|
29
|
-
$background-color: transparent
|
|
30
|
-
);
|
|
31
|
-
|
|
32
|
-
@include extjs-menu-ui(
|
|
33
|
-
$ui: 'NavWorkspaceListContextMenu',
|
|
34
|
-
$ui-item-icon-size : 24px,
|
|
35
|
-
);
|
|
1
|
+
.NavWorkspaceListView{
|
|
2
|
+
.svg-icon{
|
|
3
|
+
height: 24px;
|
|
4
|
+
width: 24px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.titleNavWorkspaceList{
|
|
8
|
+
color: grey;
|
|
9
|
+
}
|
|
10
|
+
.x-btn-icon-el{
|
|
11
|
+
color: #3D6780;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
@include extjs-button-small-ui(
|
|
16
|
+
$ui: 'NavMenuWorkspaceButton',
|
|
17
|
+
$padding: 8px 12px,
|
|
18
|
+
$color: #3D6780,
|
|
19
|
+
$icon-size: 16px,
|
|
20
|
+
|
|
21
|
+
$background-color-over: rgba(61, 103, 128, 0.04),
|
|
22
|
+
$background-color-focus-over: rgba(61, 103, 128, 0.04),
|
|
23
|
+
|
|
24
|
+
$background-color-pressed: rgba(61, 103, 128, 0.12),
|
|
25
|
+
$background-color-focus-pressed: rgba(61, 103, 128, 0.12),
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
$border-color: 'none',
|
|
29
|
+
$background-color: transparent
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
@include extjs-menu-ui(
|
|
33
|
+
$ui: 'NavWorkspaceListContextMenu',
|
|
34
|
+
$ui-item-icon-size : 24px,
|
|
35
|
+
);
|
|
@@ -85,6 +85,22 @@ Ext.define('Coon.nav.editor.workspace.form.NavWorkspaceFormController', {
|
|
|
85
85
|
iconClassButton && iconClassButton.setIconCls(iconClassField.getValue());
|
|
86
86
|
},
|
|
87
87
|
|
|
88
|
+
/**
|
|
89
|
+
* Срабатывает при сохранении формы
|
|
90
|
+
* Пелучаем данные формы и обрабатывает пустые значения (для postgres)
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
getSavedData() {
|
|
94
|
+
const vmData = this.getViewModel().get('workspace');
|
|
95
|
+
const data = {};
|
|
96
|
+
if (Ext.isObject(vmData)) {
|
|
97
|
+
for (const [key, value] of Object.entries(vmData)) {
|
|
98
|
+
data[key] = !Ext.isString(value) || value.trim() ? value : null;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return data;
|
|
102
|
+
},
|
|
103
|
+
|
|
88
104
|
/**
|
|
89
105
|
* Срабатывает при сохранении формы
|
|
90
106
|
* Вызывает команду по добавлению/сохранению данных о рабочем пространстве
|
|
@@ -94,15 +110,31 @@ Ext.define('Coon.nav.editor.workspace.form.NavWorkspaceFormController', {
|
|
|
94
110
|
if (this.validate()) {
|
|
95
111
|
const vm = this.getViewModel();
|
|
96
112
|
const commandClass = vm.get('newWorkspace') ? 'AddWorkspaceCommand' : 'SaveWorkspaceCommand';
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
113
|
+
const data = this.getSavedData();
|
|
114
|
+
Coon.util.promisifyCmd({
|
|
115
|
+
command: 'command.GetDynamicReportDataCommand',
|
|
116
|
+
params: {reportId: 'WORKSPACE_LIST'},
|
|
117
|
+
})
|
|
118
|
+
.then((resp) => {
|
|
119
|
+
const isDuplicateWorkspace = resp.list.find((workspace) => workspace.WORKSPACE_CD === data.workspaceId);
|
|
120
|
+
if (vm.get('newWorkspace') && isDuplicateWorkspace) {
|
|
121
|
+
Ext.Msg.alert('Ошибка', `Рабочее пространство с идентификатором ${data.workspaceId} уже существует`);
|
|
122
|
+
} else {
|
|
123
|
+
Coon.util.promisifyCmd('command.' + commandClass, vm.get('workspace'))
|
|
124
|
+
.then((workspaceBean) => {
|
|
125
|
+
vm.set('workspace', workspaceBean);
|
|
126
|
+
Ext.fireEvent('nav:reload');
|
|
127
|
+
this.getView().close();
|
|
128
|
+
})
|
|
129
|
+
.catch((error) => {
|
|
130
|
+
Coon.log.debug(error);
|
|
131
|
+
Ext.Msg.alert(error.toString());
|
|
132
|
+
});
|
|
133
|
+
}
|
|
102
134
|
})
|
|
103
135
|
.catch((error) => {
|
|
104
136
|
Coon.log.debug(error);
|
|
105
|
-
Ext.Msg.alert(error.toString());
|
|
137
|
+
Ext.Msg.alert('Ошибка', error.toString());
|
|
106
138
|
});
|
|
107
139
|
}
|
|
108
140
|
},
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
.NavMenuPanel {
|
|
2
|
-
.menu-wrapper-ct {
|
|
3
|
-
display: flex;
|
|
4
|
-
flex-flow: row nowrap;
|
|
5
|
-
justify-content: flex-start;
|
|
6
|
-
align-items: flex-start;
|
|
7
|
-
gap: 10px 10px;
|
|
8
|
-
.menu-ct {
|
|
9
|
-
display: inline-block;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
1
|
+
.NavMenuPanel {
|
|
2
|
+
.menu-wrapper-ct {
|
|
3
|
+
display: flex;
|
|
4
|
+
flex-flow: row nowrap;
|
|
5
|
+
justify-content: flex-start;
|
|
6
|
+
align-items: flex-start;
|
|
7
|
+
gap: 10px 10px;
|
|
8
|
+
.menu-ct {
|
|
9
|
+
display: inline-block;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
12
|
}
|