Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nexpie-grafana-theme
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
Registry
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kornkitt Poolsup
nexpie-grafana-theme
Commits
bc8418ad
Commit
bc8418ad
authored
Feb 12, 2019
by
Torkel Ödegaard
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of github.com:grafana/grafana
parents
342aa0ad
38a74c64
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
71 additions
and
44 deletions
+71
-44
public/app/features/datasources/settings/ButtonRow.test.tsx
+1
-0
public/app/features/datasources/settings/ButtonRow.tsx
+7
-1
public/app/features/datasources/settings/DataSourceSettingsPage.tsx
+52
-43
public/app/features/datasources/settings/__snapshots__/ButtonRow.test.tsx.snap
+7
-0
public/app/features/datasources/settings/__snapshots__/DataSourceSettingsPage.test.tsx.snap
+4
-0
No files found.
public/app/features/datasources/settings/ButtonRow.test.tsx
View file @
bc8418ad
...
...
@@ -7,6 +7,7 @@ const setup = (propOverrides?: object) => {
isReadOnly
:
true
,
onSubmit
:
jest
.
fn
(),
onDelete
:
jest
.
fn
(),
onTest
:
jest
.
fn
(),
};
Object
.
assign
(
props
,
propOverrides
);
...
...
public/app/features/datasources/settings/ButtonRow.tsx
View file @
bc8418ad
...
...
@@ -4,14 +4,20 @@ export interface Props {
isReadOnly
:
boolean
;
onDelete
:
()
=>
void
;
onSubmit
:
(
event
)
=>
void
;
onTest
:
(
event
)
=>
void
;
}
const
ButtonRow
:
FC
<
Props
>
=
({
isReadOnly
,
onDelete
,
onSubmit
})
=>
{
const
ButtonRow
:
FC
<
Props
>
=
({
isReadOnly
,
onDelete
,
onSubmit
,
onTest
})
=>
{
return
(
<
div
className=
"gf-form-button-row"
>
<
button
type=
"submit"
className=
"btn btn-primary"
disabled=
{
isReadOnly
}
onClick=
{
event
=>
onSubmit
(
event
)
}
>
Save
&
Test
</
button
>
{
isReadOnly
&&
(
<
button
type=
"submit"
className=
"btn btn-success"
onClick=
{
onTest
}
>
Test
</
button
>
)
}
<
button
type=
"submit"
className=
"btn btn-danger"
disabled=
{
isReadOnly
}
onClick=
{
onDelete
}
>
Delete
</
button
>
...
...
public/app/features/datasources/settings/DataSourceSettingsPage.tsx
View file @
bc8418ad
...
...
@@ -72,6 +72,12 @@ export class DataSourceSettingsPage extends PureComponent<Props, State> {
this
.
testDataSource
();
};
onTest
=
async
(
evt
:
React
.
FormEvent
<
HTMLFormElement
>
)
=>
{
evt
.
preventDefault
();
this
.
testDataSource
();
};
onDelete
=
()
=>
{
appEvents
.
emit
(
'confirm-modal'
,
{
title
:
'Delete'
,
...
...
@@ -180,52 +186,55 @@ export class DataSourceSettingsPage extends PureComponent<Props, State> {
return
(
<
Page
navModel=
{
navModel
}
>
<
Page
.
Contents
isLoading=
{
!
this
.
hasDataSource
}
>
{
this
.
hasDataSource
&&
<
div
className=
"page-container page-body"
>
<
div
>
<
form
onSubmit=
{
this
.
onSubmit
}
>
{
this
.
isReadOnly
()
&&
this
.
renderIsReadOnlyMessage
()
}
{
this
.
shouldRenderInfoBox
()
&&
<
div
className=
"grafana-info-box"
>
{
this
.
getInfoText
()
}
</
div
>
}
<
BasicSettings
dataSourceName=
{
dataSource
.
name
}
isDefault=
{
dataSource
.
isDefault
}
onDefaultChange=
{
state
=>
setIsDefault
(
state
)
}
onNameChange=
{
name
=>
setDataSourceName
(
name
)
}
/>
{
dataSourceMeta
.
module
&&
(
<
PluginSettings
dataSource=
{
dataSource
}
dataSourceMeta=
{
dataSourceMeta
}
onModelChange=
{
this
.
onModelChange
}
{
this
.
hasDataSource
&&
(
<
div
className=
"page-container page-body"
>
<
div
>
<
form
onSubmit=
{
this
.
onSubmit
}
>
{
this
.
isReadOnly
()
&&
this
.
renderIsReadOnlyMessage
()
}
{
this
.
shouldRenderInfoBox
()
&&
<
div
className=
"grafana-info-box"
>
{
this
.
getInfoText
()
}
</
div
>
}
<
BasicSettings
dataSourceName=
{
dataSource
.
name
}
isDefault=
{
dataSource
.
isDefault
}
onDefaultChange=
{
state
=>
setIsDefault
(
state
)
}
onNameChange=
{
name
=>
setDataSourceName
(
name
)
}
/>
)
}
<
div
className=
"gf-form-group section"
>
{
testingMessage
&&
(
<
div
className=
{
`alert-${testingStatus} alert`
}
>
<
div
className=
"alert-icon"
>
{
testingStatus
===
'error'
?
(
<
i
className=
"fa fa-exclamation-triangle"
/>
)
:
(
<
i
className=
"fa fa-check"
/>
)
}
</
div
>
<
div
className=
"alert-body"
>
<
div
className=
"alert-title"
>
{
testingMessage
}
</
div
>
</
div
>
</
div
>
{
dataSourceMeta
.
module
&&
(
<
PluginSettings
dataSource=
{
dataSource
}
dataSourceMeta=
{
dataSourceMeta
}
onModelChange=
{
this
.
onModelChange
}
/>
)
}
</
div
>
<
ButtonRow
onSubmit=
{
event
=>
this
.
onSubmit
(
event
)
}
isReadOnly=
{
this
.
isReadOnly
()
}
onDelete=
{
this
.
onDelete
}
/>
</
form
>
<
div
className=
"gf-form-group section"
>
{
testingMessage
&&
(
<
div
className=
{
`alert-${testingStatus} alert`
}
>
<
div
className=
"alert-icon"
>
{
testingStatus
===
'error'
?
(
<
i
className=
"fa fa-exclamation-triangle"
/>
)
:
(
<
i
className=
"fa fa-check"
/>
)
}
</
div
>
<
div
className=
"alert-body"
>
<
div
className=
"alert-title"
>
{
testingMessage
}
</
div
>
</
div
>
</
div
>
)
}
</
div
>
<
ButtonRow
onSubmit=
{
event
=>
this
.
onSubmit
(
event
)
}
isReadOnly=
{
this
.
isReadOnly
()
}
onDelete=
{
this
.
onDelete
}
onTest=
{
event
=>
this
.
onTest
(
event
)
}
/>
</
form
>
</
div
>
</
div
>
</
div
>
}
)
}
</
Page
.
Contents
>
</
Page
>
);
...
...
public/app/features/datasources/settings/__snapshots__/ButtonRow.test.tsx.snap
View file @
bc8418ad
...
...
@@ -13,6 +13,13 @@ exports[`Render should render component 1`] = `
Save & Test
</button>
<button
className="btn btn-success"
onClick={[MockFunction]}
type="submit"
>
Test
</button>
<button
className="btn btn-danger"
disabled={true}
onClick={[MockFunction]}
...
...
public/app/features/datasources/settings/__snapshots__/DataSourceSettingsPage.test.tsx.snap
View file @
bc8418ad
...
...
@@ -97,6 +97,7 @@ exports[`Render should render alpha info text 1`] = `
isReadOnly={false}
onDelete={[Function]}
onSubmit={[Function]}
onTest={[Function]}
/>
</form>
</div>
...
...
@@ -202,6 +203,7 @@ exports[`Render should render beta info text 1`] = `
isReadOnly={false}
onDelete={[Function]}
onSubmit={[Function]}
onTest={[Function]}
/>
</form>
</div>
...
...
@@ -302,6 +304,7 @@ exports[`Render should render component 1`] = `
isReadOnly={false}
onDelete={[Function]}
onSubmit={[Function]}
onTest={[Function]}
/>
</form>
</div>
...
...
@@ -407,6 +410,7 @@ exports[`Render should render is ready only message 1`] = `
isReadOnly={true}
onDelete={[Function]}
onSubmit={[Function]}
onTest={[Function]}
/>
</form>
</div>
...
...
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