Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
2859ddde
Commit
2859ddde
authored
Mar 06, 2018
by
Mike Greiling
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
coerce hasMetrics to a boolean value before instantiating the Vue component
parent
de382f5c
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
7 deletions
+11
-7
app/assets/javascripts/monitoring/components/dashboard.vue
app/assets/javascripts/monitoring/components/dashboard.vue
+4
-4
app/assets/javascripts/monitoring/monitoring_bundle.js
app/assets/javascripts/monitoring/monitoring_bundle.js
+5
-1
spec/javascripts/monitoring/dashboard_spec.js
spec/javascripts/monitoring/dashboard_spec.js
+2
-2
No files found.
app/assets/javascripts/monitoring/components/dashboard.vue
View file @
2859ddde
...
@@ -7,7 +7,6 @@
...
@@ -7,7 +7,6 @@
import
EmptyState
from
'
./empty_state.vue
'
;
import
EmptyState
from
'
./empty_state.vue
'
;
import
MonitoringStore
from
'
../stores/monitoring_store
'
;
import
MonitoringStore
from
'
../stores/monitoring_store
'
;
import
eventHub
from
'
../event_hub
'
;
import
eventHub
from
'
../event_hub
'
;
import
{
convertPermissionToBoolean
}
from
'
../../lib/utils/common_utils
'
;
export
default
{
export
default
{
components
:
{
components
:
{
...
@@ -18,8 +17,9 @@
...
@@ -18,8 +17,9 @@
props
:
{
props
:
{
hasMetrics
:
{
hasMetrics
:
{
type
:
String
,
type
:
Boolean
,
required
:
true
,
required
:
false
,
default
:
true
,
},
},
showLegend
:
{
showLegend
:
{
type
:
Boolean
,
type
:
Boolean
,
...
@@ -108,7 +108,7 @@
...
@@ -108,7 +108,7 @@
mounted
()
{
mounted
()
{
this
.
resizeThrottled
=
_
.
throttle
(
this
.
resize
,
600
);
this
.
resizeThrottled
=
_
.
throttle
(
this
.
resize
,
600
);
if
(
!
convertPermissionToBoolean
(
this
.
hasMetrics
)
)
{
if
(
!
this
.
hasMetrics
)
{
this
.
state
=
'
gettingStarted
'
;
this
.
state
=
'
gettingStarted
'
;
}
else
{
}
else
{
this
.
getGraphsData
();
this
.
getGraphsData
();
...
...
app/assets/javascripts/monitoring/monitoring_bundle.js
View file @
2859ddde
import
Vue
from
'
vue
'
;
import
Vue
from
'
vue
'
;
import
{
convertPermissionToBoolean
}
from
'
~/lib/utils/common_utils
'
;
import
Dashboard
from
'
./components/dashboard.vue
'
;
import
Dashboard
from
'
./components/dashboard.vue
'
;
export
default
()
=>
{
export
default
()
=>
{
...
@@ -10,7 +11,10 @@ export default () => {
...
@@ -10,7 +11,10 @@ export default () => {
el
,
el
,
render
(
createElement
)
{
render
(
createElement
)
{
return
createElement
(
Dashboard
,
{
return
createElement
(
Dashboard
,
{
props
:
el
.
dataset
,
props
:
{
...
el
.
dataset
,
hasMetrics
:
convertPermissionToBoolean
(
el
.
dataset
.
hasMetrics
),
},
});
});
},
},
});
});
...
...
spec/javascripts/monitoring/dashboard_spec.js
View file @
2859ddde
...
@@ -9,7 +9,7 @@ describe('Dashboard', () => {
...
@@ -9,7 +9,7 @@ describe('Dashboard', () => {
let
DashboardComponent
;
let
DashboardComponent
;
let
component
;
let
component
;
const
propsData
=
{
const
propsData
=
{
hasMetrics
:
'
false
'
,
hasMetrics
:
false
,
documentationPath
:
'
/path/to/docs
'
,
documentationPath
:
'
/path/to/docs
'
,
settingsPath
:
'
/path/to/settings
'
,
settingsPath
:
'
/path/to/settings
'
,
clustersPath
:
'
/path/to/clusters
'
,
clustersPath
:
'
/path/to/clusters
'
,
...
@@ -58,7 +58,7 @@ describe('Dashboard', () => {
...
@@ -58,7 +58,7 @@ describe('Dashboard', () => {
it
(
'
shows up a loading state
'
,
(
done
)
=>
{
it
(
'
shows up a loading state
'
,
(
done
)
=>
{
component
=
new
DashboardComponent
({
component
=
new
DashboardComponent
({
el
:
document
.
querySelector
(
'
#prometheus-graphs
'
),
el
:
document
.
querySelector
(
'
#prometheus-graphs
'
),
propsData
:
{
...
propsData
,
hasMetrics
:
'
true
'
},
propsData
:
{
...
propsData
,
hasMetrics
:
true
},
});
});
component
.
$mount
();
component
.
$mount
();
Vue
.
nextTick
(()
=>
{
Vue
.
nextTick
(()
=>
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment