2017-01-03 00:32:29 +02:00
|
|
|
const React = require('react');
|
|
|
|
|
|
|
|
const BaseObject = {
|
|
|
|
uuid: React.PropTypes.string,
|
|
|
|
id: React.PropTypes.string,
|
|
|
|
name: React.PropTypes.string
|
|
|
|
};
|
|
|
|
|
2017-01-03 00:54:38 +02:00
|
|
|
const Account = React.PropTypes.shape({
|
|
|
|
...BaseObject
|
|
|
|
});
|
|
|
|
|
2017-01-03 01:17:12 +02:00
|
|
|
const Link = React.PropTypes.shape({
|
|
|
|
name: React.PropTypes.string,
|
|
|
|
pathname: React.PropTypes.string
|
|
|
|
});
|
|
|
|
|
2017-01-03 00:32:29 +02:00
|
|
|
const Org = React.PropTypes.shape({
|
|
|
|
...BaseObject,
|
|
|
|
owner: React.PropTypes.string
|
|
|
|
});
|
|
|
|
|
|
|
|
const Project = React.PropTypes.shape({
|
|
|
|
...BaseObject
|
|
|
|
});
|
|
|
|
|
|
|
|
const Service = React.PropTypes.shape({
|
|
|
|
...BaseObject
|
|
|
|
});
|
|
|
|
|
2017-01-09 21:08:47 +02:00
|
|
|
const Instance = React.PropTypes.shape({
|
|
|
|
...BaseObject,
|
|
|
|
datacenter: React.PropTypes.string,
|
|
|
|
service: React.PropTypes.string,
|
|
|
|
project: React.PropTypes.string
|
|
|
|
});
|
|
|
|
|
2017-01-11 12:14:56 +02:00
|
|
|
const Metric = React.PropTypes.shape({
|
2017-01-24 19:37:08 +02:00
|
|
|
...BaseObject,
|
|
|
|
min: React.PropTypes.number,
|
|
|
|
max: React.PropTypes.number,
|
|
|
|
measurement: React.PropTypes.string
|
2017-01-11 12:14:56 +02:00
|
|
|
});
|
|
|
|
|
2017-01-16 21:45:15 +02:00
|
|
|
const MetricType = React.PropTypes.shape({
|
|
|
|
...BaseObject
|
|
|
|
});
|
|
|
|
|
2017-01-11 23:11:48 +02:00
|
|
|
const Dataset = React.PropTypes.shape({
|
|
|
|
uuid: React.PropTypes.string,
|
2017-01-24 19:37:08 +02:00
|
|
|
type: MetricType,
|
2017-01-11 23:11:48 +02:00
|
|
|
data: React.PropTypes.arrayOf(
|
|
|
|
React.PropTypes.shape({
|
2017-01-12 18:13:45 +02:00
|
|
|
firstQuartile: React.PropTypes.number,
|
|
|
|
thirdQuartile: React.PropTypes.number,
|
|
|
|
median: React.PropTypes.number,
|
|
|
|
max: React.PropTypes.number,
|
|
|
|
min: React.PropTypes.number
|
2017-01-11 23:11:48 +02:00
|
|
|
})
|
|
|
|
)
|
|
|
|
});
|
|
|
|
|
2017-01-03 00:32:29 +02:00
|
|
|
const Sections = React.PropTypes.arrayOf(
|
|
|
|
React.PropTypes.string
|
|
|
|
);
|
|
|
|
|
|
|
|
module.exports = {
|
2017-01-03 00:54:38 +02:00
|
|
|
account: Account,
|
2017-01-03 01:17:12 +02:00
|
|
|
link: Link,
|
2017-01-03 00:32:29 +02:00
|
|
|
org: Org,
|
|
|
|
project: Project,
|
|
|
|
sections: Sections,
|
2017-01-09 21:08:47 +02:00
|
|
|
service: Service,
|
2017-01-11 12:14:56 +02:00
|
|
|
instance: Instance,
|
|
|
|
metric: Metric,
|
2017-01-16 21:45:15 +02:00
|
|
|
metricType: MetricType,
|
2017-01-23 13:48:20 +02:00
|
|
|
dataset: Dataset
|
2017-01-03 00:32:29 +02:00
|
|
|
};
|