dashboard-shell-shell 0.0.1000000000001128 → 0.0.1000000000001133
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/assets/styles/base/_functions.scss +0 -0
- package/assets/styles/base/_mixins.scss +1 -1
- package/assets/styles/global/_button.scss +10 -17
- package/assets/styles/global/_form.scss +2 -2
- package/assets/styles/global/_labeled-input.scss +3 -6
- package/assets/styles/global/_select.scss +6 -5
- package/assets/styles/global/_tooltip.scss +1 -8
- package/assets/styles/themes/_dark.scss +0 -2
- package/assets/styles/themes/_light.scss +2 -5
- package/assets/styles/vendor/vue-select.scss +1 -2
- package/components/ActionDropdown.vue +0 -1
- package/components/ActionMenuShell.vue +1 -6
- package/components/BrandImage.vue +0 -21
- package/components/ClusterIconMenu.vue +1 -1
- package/components/CodeMirror.vue +0 -1
- package/components/CruResource.vue +0 -1
- package/components/CruResourceFooter.vue +1 -1
- package/components/IndentedPanel.vue +10 -4
- package/components/PromptRemove.vue +2 -2
- package/components/ResourceDetail/Masthead.vue +232 -161
- package/components/ResourceDetail/index.vue +1 -20
- package/components/ResourceList/Masthead.vue +68 -102
- package/components/ResourceList/ResourceLoadingIndicator.vue +2 -5
- package/components/ResourceList/index.vue +1 -27
- package/components/ResourceTable.vue +1 -71
- package/components/SideNav.vue +17 -24
- package/components/SortableTable/THead.vue +0 -6
- package/components/SortableTable/index.vue +366 -474
- package/components/Tabbed/index.vue +5 -4
- package/components/auth/Principal.vue +2 -3
- package/components/auth/RoleDetailEdit.vue +3 -56
- package/components/auth/SelectPrincipal.vue +0 -1
- package/components/form/BannerSettings.vue +16 -18
- package/components/form/ChangePassword.vue +4 -4
- package/components/form/ColorInput.vue +8 -32
- package/components/form/Footer.vue +1 -1
- package/components/form/InputWithSelect.vue +0 -2
- package/components/form/KeyValue.vue +7 -31
- package/components/form/LabeledSelect.vue +178 -178
- package/components/form/Members/ClusterPermissionsEditor.vue +2 -1
- package/components/form/Members/MembershipEditor.vue +1 -1
- package/components/form/NameNsDescription.vue +11 -24
- package/components/form/Password.vue +2 -6
- package/components/form/Select.vue +2 -2
- package/components/nav/Favorite.vue +1 -5
- package/components/nav/Group.vue +24 -45
- package/components/nav/Header.vue +14 -103
- package/components/nav/HeaderPageActionMenu.vue +0 -1
- package/components/nav/TopLevelMenu.vue +23 -63
- package/components/nav/Type.vue +5 -24
- package/composables/useClickOutside.ts +1 -1
- package/config/product/auth.js +1 -1
- package/config/product/explorer.js +1 -1
- package/config/product/settings.js +10 -10
- package/detail/management.cattle.io.user.vue +0 -1
- package/edit/management.cattle.io.user.vue +4 -17
- package/list/management.cattle.io.user.vue +12 -23
- package/list/provisioning.cattle.io.cluster.vue +7 -6
- package/mixins/brand.js +0 -17
- package/package.json +1 -1
- package/pages/auth/login.vue +22 -8
- package/pages/c/_cluster/auth/roles/index.vue +14 -48
- package/pages/c/_cluster/settings/banners.vue +101 -164
- package/pages/c/_cluster/settings/brand.vue +301 -338
- package/pages/c/_cluster/settings/performance.vue +38 -53
- package/pages/home.vue +8 -64
- package/pages/prefs.vue +21 -23
- package/rancher-components/RcDropdown/RcDropdownMenu.vue +2 -2
- package/scripts/clean +0 -0
- package/scripts/extension/bundle +0 -0
- package/scripts/extension/helm/scripts/package +0 -0
- package/scripts/extension/helm/scripts/patch +0 -0
- package/scripts/extension/helm/scripts/version +0 -0
- package/scripts/extension/helmpatch +0 -0
- package/scripts/extension/parse-tag-name +0 -0
- package/scripts/extension/publish +0 -0
- package/scripts/publish-shell.sh +13 -24
- package/scripts/serve-pkgs +0 -0
- package/scripts/sync-shell-deps +0 -0
- package/scripts/typegen.sh +28 -44
- package/store/i18n.js +5 -5
- package/store/prefs.js +1 -1
- package/store/type-map.js +1 -2
- package/types/cloud-shell/index.d.ts +11014 -0
- package/utils/router.js +1 -1
- package/assets/images/action.svg +0 -6
- package/components/ResourceList/Masthead-btn.vue +0 -231
|
File without changes
|
|
@@ -159,5 +159,5 @@
|
|
|
159
159
|
@mixin focus-outline {
|
|
160
160
|
// Focus for form like elements (not to be confused with basic :focus style)
|
|
161
161
|
// we need to use !important because it needs to superseed other classes that might impact outlines
|
|
162
|
-
|
|
162
|
+
outline: 2px solid var(--primary-keyboard-focus);
|
|
163
163
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
$btn-padding: 0 10px;
|
|
1
|
+
$btn-padding: 0 10px 0 10px;
|
|
2
2
|
$btn-sm-padding: 0 7px 0 7px;
|
|
3
3
|
$btn-height: 32px;
|
|
4
4
|
$btn-sm-height: 32px;
|
|
@@ -20,14 +20,13 @@ button,
|
|
|
20
20
|
-ms-user-select: none;
|
|
21
21
|
user-select: none;
|
|
22
22
|
border: 0;
|
|
23
|
-
padding: $btn-padding;
|
|
23
|
+
// padding: $btn-padding;
|
|
24
24
|
border-radius: var(--border-radius);
|
|
25
|
-
|
|
25
|
+
color: var(--lightest);
|
|
26
26
|
line-height: $btn-height !important;
|
|
27
27
|
height: $btn-height !important;
|
|
28
28
|
min-width: 100px;
|
|
29
29
|
justify-content: center;
|
|
30
|
-
|
|
31
30
|
|
|
32
31
|
> .icon:not(:only-child) {
|
|
33
32
|
margin-right: 6px;
|
|
@@ -35,7 +34,7 @@ button,
|
|
|
35
34
|
|
|
36
35
|
&:hover {
|
|
37
36
|
text-decoration: none;
|
|
38
|
-
|
|
37
|
+
color: var(--lightest);
|
|
39
38
|
}
|
|
40
39
|
|
|
41
40
|
&.bg-transparent {
|
|
@@ -43,10 +42,6 @@ button,
|
|
|
43
42
|
}
|
|
44
43
|
}
|
|
45
44
|
|
|
46
|
-
.bg-primary {
|
|
47
|
-
color: var(--lightest);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
45
|
//icon button
|
|
51
46
|
.icon-btn {
|
|
52
47
|
padding: 0;
|
|
@@ -68,7 +63,7 @@ button,
|
|
|
68
63
|
padding: $btn-sm-padding;
|
|
69
64
|
min-height: $btn-sm-height;
|
|
70
65
|
line-height: 32px;
|
|
71
|
-
|
|
66
|
+
width: 100px;
|
|
72
67
|
}
|
|
73
68
|
|
|
74
69
|
//btn roles
|
|
@@ -99,11 +94,10 @@ button,
|
|
|
99
94
|
// border: solid 1px var(--primary);
|
|
100
95
|
border: solid 1px #d9d9d9;
|
|
101
96
|
line-height: $btn-height - 2px;
|
|
102
|
-
|
|
97
|
+
width: 100px;
|
|
103
98
|
|
|
104
99
|
&:hover, &._hover {
|
|
105
|
-
|
|
106
|
-
color: var(--input-label) !important;
|
|
100
|
+
color: var(--lightest) !important;
|
|
107
101
|
box-shadow: 0 4px 6px 0 rgba(0,0,0,.2)!important;
|
|
108
102
|
}
|
|
109
103
|
|
|
@@ -111,8 +105,7 @@ button,
|
|
|
111
105
|
background: transparent;
|
|
112
106
|
box-shadow: 0 4px 6px 0 rgba(0,0,0,.2)!important;
|
|
113
107
|
// background-color: var(--primary-hover-bg);
|
|
114
|
-
|
|
115
|
-
color: var(--input-label) !important;
|
|
108
|
+
color: var(--lightest) !important;
|
|
116
109
|
// color: var(--primary-text) !important;
|
|
117
110
|
}
|
|
118
111
|
|
|
@@ -169,8 +162,8 @@ button,
|
|
|
169
162
|
}
|
|
170
163
|
|
|
171
164
|
.role-multi-action {
|
|
172
|
-
|
|
173
|
-
|
|
165
|
+
// background: var(--accent-btn);
|
|
166
|
+
border: solid thin var(--primary);
|
|
174
167
|
color: var(--primary) !important;
|
|
175
168
|
border-radius: 2px;
|
|
176
169
|
min-width: 32px;
|
|
@@ -20,11 +20,11 @@ TEXTAREA,
|
|
|
20
20
|
box-sizing: border-box;
|
|
21
21
|
width: 100%;
|
|
22
22
|
// padding: 4px 11px;
|
|
23
|
+
// background-color: var(--input-bg);
|
|
23
24
|
// border-radius: var(--border-radius);
|
|
25
|
+
// border: solid var(--border-width) var(--input-border);
|
|
24
26
|
|
|
25
27
|
color: var(--input-text);
|
|
26
|
-
background-color: var(--input-bg);
|
|
27
|
-
border: solid var(--border-width) var(--input-border);
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
@include input-status-color;
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
&.compact-input {
|
|
12
12
|
min-height: $unlabeled-input-height;
|
|
13
|
-
|
|
13
|
+
padding: 0 10px;
|
|
14
14
|
|
|
15
15
|
INPUT.no-label {
|
|
16
16
|
line-height: $input-line-height;
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
padding: 0 0 0 0;
|
|
75
75
|
// line-height: calc(#{$input-line-height} + 1px);
|
|
76
76
|
line-height: calc(29px + 1px);
|
|
77
|
-
|
|
77
|
+
border: solid var(--border-width) var(--input-border);
|
|
78
78
|
padding: 0px 11px;
|
|
79
79
|
box-sizing: border-box;
|
|
80
80
|
border-radius: 2px;
|
|
@@ -123,10 +123,7 @@
|
|
|
123
123
|
font-weight: normal;
|
|
124
124
|
line-height: 1;
|
|
125
125
|
text-align: center;
|
|
126
|
-
|
|
127
|
-
top: 5px;
|
|
128
|
-
right: 5px;
|
|
129
|
-
// background-color: #fff;
|
|
126
|
+
background-color: #fff;
|
|
130
127
|
}
|
|
131
128
|
}
|
|
132
129
|
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
cursor: text;
|
|
3
3
|
padding: 0;
|
|
4
4
|
width: 100%;
|
|
5
|
-
|
|
5
|
+
&:hover{
|
|
6
|
+
box-shadow: 0 4px 6px 0 var(--input-border-box-shadow);
|
|
7
|
+
}
|
|
6
8
|
.selected {
|
|
7
9
|
padding-top: $input-padding-lg;
|
|
8
10
|
}
|
|
@@ -21,7 +23,7 @@
|
|
|
21
23
|
.labeled-select,
|
|
22
24
|
.unlabeled-select {
|
|
23
25
|
min-width: 75px;
|
|
24
|
-
|
|
26
|
+
height: 32px;
|
|
25
27
|
width: $input-width;
|
|
26
28
|
|
|
27
29
|
.required {
|
|
@@ -104,8 +106,7 @@
|
|
|
104
106
|
width: unset !important;
|
|
105
107
|
|
|
106
108
|
&:not(:only-child) {
|
|
107
|
-
margin-bottom:
|
|
108
|
-
margin-top: 2px;
|
|
109
|
+
margin-bottom: 3px;
|
|
109
110
|
}
|
|
110
111
|
}
|
|
111
112
|
}
|
|
@@ -196,6 +197,6 @@
|
|
|
196
197
|
}
|
|
197
198
|
|
|
198
199
|
.labeled-tooltip .status-icon {
|
|
199
|
-
|
|
200
|
+
top: $input-padding-sm;
|
|
200
201
|
}
|
|
201
202
|
}
|
|
@@ -126,7 +126,6 @@
|
|
|
126
126
|
border-radius: var(--border-radius-lg);
|
|
127
127
|
|
|
128
128
|
.v-popper__inner {
|
|
129
|
-
border-radius: 4px;
|
|
130
129
|
background: $color;
|
|
131
130
|
color: var(--popover-text);
|
|
132
131
|
padding: 10px;
|
|
@@ -147,9 +146,7 @@
|
|
|
147
146
|
}
|
|
148
147
|
|
|
149
148
|
.v-popper__popper.v-popper--theme-dropdown {
|
|
150
|
-
border-radius: 4px;
|
|
151
149
|
z-index: z-index('tooltip');
|
|
152
|
-
border: 1px solid #d9d9d9 !important;
|
|
153
150
|
|
|
154
151
|
&.containerLogsDropdown, &.fleet-summary-tooltip{
|
|
155
152
|
.v-popper__arrow-container {
|
|
@@ -206,8 +203,4 @@
|
|
|
206
203
|
.v-popper__inner {
|
|
207
204
|
padding: 0px;
|
|
208
205
|
}
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
// .v-popper__arrow-container {
|
|
212
|
-
// display: none;
|
|
213
|
-
// }
|
|
206
|
+
}
|
|
@@ -6,7 +6,7 @@ $darkest : #333;
|
|
|
6
6
|
$darker : #333;
|
|
7
7
|
|
|
8
8
|
//light disabled
|
|
9
|
-
$dark : #
|
|
9
|
+
$dark : #B6B6C2;
|
|
10
10
|
|
|
11
11
|
//light border and buttons
|
|
12
12
|
$medium : #d7d7d7;
|
|
@@ -30,7 +30,7 @@ $secondary : $darker;
|
|
|
30
30
|
$link : #1890FF;
|
|
31
31
|
|
|
32
32
|
// Status colors
|
|
33
|
-
$success : #
|
|
33
|
+
$success : #5D995D;
|
|
34
34
|
$warning : #DAC342;
|
|
35
35
|
$error : #F64747;
|
|
36
36
|
// $error : #A30014;
|
|
@@ -112,8 +112,6 @@ BODY, .theme-light {
|
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
--lightest : #{rgba($lightest, 1)};
|
|
116
|
-
|
|
117
115
|
--default : #{$light};
|
|
118
116
|
--default-text : #{contrast-color($light)};
|
|
119
117
|
--default-hover-bg : #{darken($light, 10%)};
|
|
@@ -339,7 +337,6 @@ BODY, .theme-light {
|
|
|
339
337
|
--nav-hover : #{$medium};
|
|
340
338
|
--nav-hover-color :#1890FF;
|
|
341
339
|
--nav-expander-hover : #{darken($medium, 10%)};
|
|
342
|
-
--nav-icon-badge-bg : #{$dark};
|
|
343
340
|
--nav-border : #{$medium};
|
|
344
341
|
--nav-border-size : 1px;
|
|
345
342
|
|
|
@@ -321,7 +321,6 @@ $transition-duration: 150ms;
|
|
|
321
321
|
}
|
|
322
322
|
.vs__selected {
|
|
323
323
|
color: var(--input-text);
|
|
324
|
-
background-color: rgba(0, 0, 0, 0);
|
|
325
324
|
}
|
|
326
325
|
}
|
|
327
326
|
|
|
@@ -331,7 +330,7 @@ $transition-duration: 150ms;
|
|
|
331
330
|
}
|
|
332
331
|
.vs__dropdown-toggle {
|
|
333
332
|
background-color: var(--input-bg);
|
|
334
|
-
border: none
|
|
333
|
+
border: none;
|
|
335
334
|
padding: none;
|
|
336
335
|
border-radius: var(--border-radius);
|
|
337
336
|
border: 1px solid var(--dropdown-border);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import { computed
|
|
2
|
+
import { computed } from 'vue';
|
|
3
3
|
import { useStore } from 'vuex';
|
|
4
4
|
import { useRoute } from 'vue-router';
|
|
5
5
|
|
|
@@ -83,7 +83,6 @@ const execute = (action: any, event: MouseEvent, args?: any) => {
|
|
|
83
83
|
const options = computed(() => store.getters['action-menu/optionsArray']);
|
|
84
84
|
|
|
85
85
|
const menuOptions = () => {
|
|
86
|
-
|
|
87
86
|
if (props.customActions && props.customActions.length > 0) {
|
|
88
87
|
return props.customActions;
|
|
89
88
|
}
|
|
@@ -91,9 +90,6 @@ const menuOptions = () => {
|
|
|
91
90
|
return options.value;
|
|
92
91
|
};
|
|
93
92
|
|
|
94
|
-
onMounted(() => {
|
|
95
|
-
})
|
|
96
|
-
|
|
97
93
|
</script>
|
|
98
94
|
|
|
99
95
|
<template>
|
|
@@ -106,6 +102,5 @@ onMounted(() => {
|
|
|
106
102
|
:data-testid="dataTestid"
|
|
107
103
|
@update:open="openChanged"
|
|
108
104
|
@select="(e: MouseEvent, option: object) => execute(option, e)"
|
|
109
|
-
:showIcon="false"
|
|
110
105
|
/>
|
|
111
106
|
</template>
|
|
@@ -79,56 +79,37 @@ export default {
|
|
|
79
79
|
},
|
|
80
80
|
|
|
81
81
|
pathToBrandedImage() {
|
|
82
|
-
|
|
83
|
-
console.log(this.fileName, ' this.fileName;')
|
|
84
|
-
|
|
85
82
|
if (this.fileName === 'rancher-logo.svg' || this.supportCustomLogo) {
|
|
86
83
|
if (this.theme === 'dark' && this.uiLogoDark) {
|
|
87
|
-
|
|
88
|
-
console.log(this.uiLogoDark, ' this.uiLogoDark;')
|
|
89
|
-
|
|
90
84
|
return this.uiLogoDark;
|
|
91
85
|
}
|
|
92
86
|
|
|
93
87
|
if (this.uiLogoLight) {
|
|
94
|
-
console.log(this.uiLogoLight, ' this.uiLogoLight;')
|
|
95
|
-
|
|
96
88
|
return this.uiLogoLight;
|
|
97
89
|
}
|
|
98
90
|
}
|
|
99
91
|
|
|
100
92
|
if (this.fileName === 'banner.svg') {
|
|
101
93
|
if (this.theme === 'dark' && this.uiBannerDark) {
|
|
102
|
-
console.log(this.uiBannerDark, ' this.uiBannerDark;')
|
|
103
|
-
|
|
104
94
|
return this.uiBannerDark;
|
|
105
95
|
}
|
|
106
96
|
|
|
107
97
|
if (this.uiBannerLight) {
|
|
108
|
-
console.log(this.uiBannerLight, ' this.uiBannerLight;')
|
|
109
|
-
|
|
110
98
|
return this.uiBannerLight;
|
|
111
99
|
}
|
|
112
100
|
}
|
|
113
101
|
|
|
114
102
|
if (this.fileName === 'login-landscape.svg') {
|
|
115
103
|
if (this.theme === 'dark' && this.uiLoginBackgroundDark) {
|
|
116
|
-
console.log(this.uiLoginBackgroundDark, ' this.uiLoginBackgroundDark;')
|
|
117
|
-
|
|
118
104
|
return this.uiLoginBackgroundDark;
|
|
119
105
|
}
|
|
120
106
|
|
|
121
107
|
if (this.uiLoginBackgroundLight) {
|
|
122
|
-
console.log(this.uiLoginBackgroundLight, ' this.uiLoginBackgroundLight;')
|
|
123
|
-
|
|
124
108
|
return this.uiLoginBackgroundLight;
|
|
125
109
|
}
|
|
126
110
|
}
|
|
127
111
|
|
|
128
112
|
if (!this.brand) {
|
|
129
|
-
|
|
130
|
-
console.log(this.defaultPathToBrandedImage, ' this.defaultPathToBrandedImage;')
|
|
131
|
-
|
|
132
113
|
return this.defaultPathToBrandedImage;
|
|
133
114
|
} else {
|
|
134
115
|
if (this.theme === 'dark' || this.dark) {
|
|
@@ -140,8 +121,6 @@ export default {
|
|
|
140
121
|
return require(`~shell/assets/brand/${ this.brand }/${ this.fileName }`);
|
|
141
122
|
} catch {}
|
|
142
123
|
|
|
143
|
-
console.log(this.defaultPathToBrandedImage, ' this.defaultPathToBrandedImage;')
|
|
144
|
-
|
|
145
124
|
return this.defaultPathToBrandedImage;
|
|
146
125
|
}
|
|
147
126
|
},
|
|
@@ -159,7 +159,7 @@ export default {
|
|
|
159
159
|
display: flex;
|
|
160
160
|
align-items: center;
|
|
161
161
|
justify-content: center;
|
|
162
|
-
color: var(--
|
|
162
|
+
color: var(--default-active-text);
|
|
163
163
|
font-weight: bold;
|
|
164
164
|
background: var(--nav-icon-badge-bg);
|
|
165
165
|
border: 1px solid var(--border);
|
|
@@ -4,17 +4,23 @@ export default {};
|
|
|
4
4
|
|
|
5
5
|
<template>
|
|
6
6
|
<div
|
|
7
|
-
class="indented-
|
|
7
|
+
class="indented-panel"
|
|
8
8
|
>
|
|
9
9
|
<slot />
|
|
10
10
|
</div>
|
|
11
11
|
</template>
|
|
12
12
|
|
|
13
13
|
<style lang="scss">
|
|
14
|
-
.indented-
|
|
14
|
+
.indented-panel {
|
|
15
15
|
height: 100%;
|
|
16
|
-
width:
|
|
17
|
-
|
|
16
|
+
width: 90%;
|
|
17
|
+
margin-left: 5%;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
+
@media only screen and (max-width: map-get($breakpoints, '--viewport-9')) {
|
|
21
|
+
.indented-panel {
|
|
22
|
+
margin: 0 20px;
|
|
23
|
+
width: initial;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
20
26
|
</style>
|