mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-02-06 22:52:26 +00:00
updating styles
This commit is contained in:
parent
4ab17dd9d9
commit
f1a9058191
25 changed files with 1188 additions and 2020 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -10,6 +10,7 @@ drone
|
|||
*~
|
||||
~*
|
||||
*.sqlite
|
||||
*.sqlite3
|
||||
*.deb
|
||||
*.deb.*
|
||||
*.rpm
|
||||
|
|
Binary file not shown.
|
@ -1,17 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<html ng-app="drone" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<base href="/"/>
|
||||
<link href='//fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700' rel='stylesheet' type='text/css'>
|
||||
<link href='//fonts.googleapis.com/css?family=Open+Sans:400,600,300' rel='stylesheet' type='text/css'>
|
||||
<link href='//fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css'>
|
||||
<link href='//fonts.googleapis.com/icon?family=Material+Icons' rel='stylesheet' type='text/css'>
|
||||
<link href='//cdnjs.cloudflare.com/ajax/libs/octicons/2.1.2/octicons.min.css' rel='stylesheet' type='text/css'>
|
||||
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Droid+Sans+Mono"/>
|
||||
<link href='/static/styles/drone.css' rel='stylesheet' type='text/css'>
|
||||
<link rel="stylesheet" href="/static/styles/reset.css" />
|
||||
<link rel="stylesheet" href="/static/styles/fonts.css" />
|
||||
<link rel="stylesheet" href="/static/styles/alert.css" />
|
||||
<link rel="stylesheet" href="/static/styles/blankslate.css" />
|
||||
<link rel="stylesheet" href="/static/styles/list.css" />
|
||||
<link rel="stylesheet" href="/static/styles/range.css" />
|
||||
<link rel="stylesheet" href="/static/styles/switch.css" />
|
||||
<link rel="stylesheet" href="/static/styles/main.css" />
|
||||
<link rel="icon" href="/static/favicon.png">
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -1,18 +1,33 @@
|
|||
<main>
|
||||
<article>
|
||||
<section>
|
||||
<a class="row build-row" ng-repeat="build in builds | orderBy:'-number'" ng-href="/{{ repo.full_name }}/{{ build.number }}">
|
||||
|
||||
<section class="search">
|
||||
<input type="search" spellcheck="false" placeholder="Filter commits for {{ repo.full_name}}" />
|
||||
<menu>
|
||||
<button type="button" ng-click="unwatch(repo)" ng-if="repo.starred && user">
|
||||
<i class="material-icons">visibility</i>
|
||||
</button>
|
||||
<button type="button" ng-click="watch(repo)" ng-if="!repo.starred && user">
|
||||
<i class="material-icons">visibility_off</i>
|
||||
</button>
|
||||
<a href="/{{ repo.full_name }}/edit">
|
||||
<i class="material-icons">tune</i>
|
||||
</a>
|
||||
</menu>
|
||||
</section>
|
||||
|
||||
<div>
|
||||
<div ng-class="[ 'build-num', build.status ]"></div>
|
||||
<div class="list">
|
||||
<a ng-repeat="build in builds | orderBy:'-number'" ng-href="/{{ repo.full_name }}/{{ build.number}}">
|
||||
<div class="column-status">
|
||||
<div class="status {{ build.status }}"></div>
|
||||
</div>
|
||||
<div>
|
||||
<h3>{{ build.head_commit.message }}</h3>
|
||||
|
||||
<p>
|
||||
<strong>{{ build.head_commit.author.login }}</strong> pushed to <strong>{{ build.head_commit.branch}}</strong> {{ build.started_at | fromNow }}
|
||||
</p>
|
||||
|
||||
<div style="position:absolute;top:30px;right:30px;color:#CCC;"># {{build.number}}</div>
|
||||
<div class="column-fill">
|
||||
<h2>{{ build.head_commit.message }}</h2>
|
||||
<p><em>{{ build.head_commit.author.login }}</em> pushed to <em>{{ build.head_commit.branch }}</em> {{ build.started_at | fromNow }}</p>
|
||||
</div>
|
||||
</a>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</main>
|
|
@ -1,18 +1,8 @@
|
|||
<div class="breadcrumb" style="position:relative;top:0px;">
|
||||
<a href="/" class="icon icon-home">
|
||||
<i class="material-icons md-18">home</i>
|
||||
<ol>
|
||||
<li>
|
||||
<a href="/">
|
||||
<i class="material-icons">arrow_back</i>
|
||||
</a>
|
||||
<a href="#">{{ repo.owner }} / {{ repo.name }}</a>
|
||||
</div>
|
||||
|
||||
<div class="menu">
|
||||
<a ng-href="/{{ repo.full_name }}/edit" class="nav-item settings float-right" ng-if="repo.permissions.pull">
|
||||
<i class="material-icons md-18">edit</i>
|
||||
</a>
|
||||
<button ng-click="watch(repo)" ng-if="!repo.starred && user" class="nav-item star float-right">
|
||||
<i class="material-icons md-18">star_border</i>
|
||||
</button>
|
||||
<button ng-click="unwatch(repo)" ng-if="repo.starred && user" class="nav-item unstar float-right">
|
||||
<i class="material-icons md-18">star</i>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li>{{repo.owner}} / {{repo.name}}</li>
|
||||
</ol>
|
|
@ -18,3 +18,14 @@
|
|||
<i class="material-icons md-18">star</i>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<ol>
|
||||
<li>
|
||||
<a ng-href="/{{ repo.full_name }}">
|
||||
<i class="material-icons">arrow_back</i>
|
||||
</a>
|
||||
</li>
|
||||
<li>{{repo.owner}} / {{repo.name}}</li>
|
||||
<li><i class="material-icons">chevron_right</i></li>
|
||||
<li>{{build.number}}</li>
|
||||
</ol>
|
|
@ -1,15 +1,71 @@
|
|||
<header>
|
||||
<a class="logo float-left" href="/"></a>
|
||||
<a class="menu-item help float-right" href="http://readme.drone.io" target="_blank">
|
||||
<i class="material-icons md-18">help</i>
|
||||
</a>
|
||||
<a class="menu-item users float-right" href="/users" ng-if="user.admin">
|
||||
<i class="material-icons md-18">supervisor_account</i>
|
||||
</a>
|
||||
<a class="menu-item settings float-right" href="/profile">
|
||||
<i class="material-icons md-18">settings</i>
|
||||
</a>
|
||||
<a class="menu-item user-name float-right" href="/profile">{{ "+"+user.login }}</a>
|
||||
</header>
|
||||
<div class="toolbar" ui-view="toolbar"></div>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<img src="https://avatars1.githubusercontent.com/u/817538" />
|
||||
</li>
|
||||
<li ng-init="show=false">
|
||||
<a href="#" ng-click="show=true">
|
||||
<span>{{user.login}}</span>
|
||||
<i class="material-icons">more_vert</i>
|
||||
</a>
|
||||
<div class="backdrop" ng-show="show" ng-click="show=false"></div>
|
||||
<div class="dropdown" ng-show="show" ng-click="show=false">
|
||||
<ul>
|
||||
<li><a href="/profile">Profile</a></li>
|
||||
<li><a href="/users">Users</a></li>
|
||||
<li><a href="/profile">Workers</a></li>
|
||||
<li><a href="/help">Help</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</header>
|
||||
|
||||
<div ui-view="content"></div>
|
||||
|
||||
<style>
|
||||
header ul li a i {
|
||||
cursor:pointer;
|
||||
}
|
||||
header li {
|
||||
position:relative;
|
||||
}
|
||||
.backdrop {
|
||||
position:fixed;
|
||||
top:0px;
|
||||
left:0px;
|
||||
right:0px;
|
||||
bottom:0px;
|
||||
z-index:99;
|
||||
cursor:default;
|
||||
}
|
||||
.dropdown {
|
||||
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
|
||||
position: absolute;
|
||||
top: 60px;
|
||||
right: 15px;
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background: #FFF;
|
||||
z-index:999;
|
||||
padding: 10px 0px;
|
||||
}
|
||||
.dropdown ul {
|
||||
float:inherit;
|
||||
margin:0px;
|
||||
}
|
||||
.dropdown li {
|
||||
display:block;
|
||||
}
|
||||
.dropdown li > a {
|
||||
padding: 15px 20px;
|
||||
display: block;
|
||||
line-height: inherit;
|
||||
text-transform: none;
|
||||
}
|
||||
.dropdown li > a:hover {
|
||||
background:#F5F7F9;
|
||||
}
|
||||
</style>
|
|
@ -1,3 +1,4 @@
|
|||
<main>
|
||||
<article>
|
||||
<section>
|
||||
<h2>Login info</h2>
|
||||
|
@ -52,3 +53,4 @@
|
|||
</table>
|
||||
</section>
|
||||
</article>
|
||||
</main>
|
|
@ -1,6 +1,8 @@
|
|||
<div class="breadcrumb" style="position:relative;top:0px;">
|
||||
<a href="/" class="icon icon-home">
|
||||
<i class="material-icons md-18">home</i>
|
||||
<ol>
|
||||
<li>
|
||||
<a href="/">
|
||||
<i class="material-icons">arrow_back</i>
|
||||
</a>
|
||||
<a href="#">Profile</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>Profile</li>
|
||||
</ol>
|
|
@ -1,3 +1,4 @@
|
|||
<main>
|
||||
<article>
|
||||
<section>
|
||||
<h2>Settings</h2>
|
||||
|
@ -73,3 +74,4 @@
|
|||
</div>
|
||||
</section>
|
||||
</article>
|
||||
</main>
|
|
@ -1,14 +1,20 @@
|
|||
<main>
|
||||
<article>
|
||||
<section>
|
||||
<a class="row build-row" ng-repeat="repo in repos | orderBy:'full_name'" ng-href="/{{ repo.full_name }}">
|
||||
<div>
|
||||
<div class="icon icon-repo"></div>
|
||||
|
||||
<section class="search">
|
||||
<input type="search" spellcheck="false" placeholder="Create or find a repository" ng-model="login" />
|
||||
</section>
|
||||
|
||||
<ul class="list cozy">
|
||||
<a class="row row-repo" ng-repeat="repo in repos" ng-href="/{{ repo.full_name }}">
|
||||
<div class="column-avatar">
|
||||
<img ng-src="{{ repo.gravatar_id | gravatar }}" />
|
||||
</div>
|
||||
<div>
|
||||
<h3>{{ repo.owner }} / {{ repo.name }}</h3>
|
||||
<p>{{ repo.clone_url }}</p>
|
||||
<div class="column-fill">
|
||||
<h2>{{ repo.name }}</h2>
|
||||
</div>
|
||||
</a>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
</article>
|
||||
</main>
|
|
@ -1,9 +1 @@
|
|||
<div class="breadcrumb" style="position:relative;top:0px;">
|
||||
<a href="#">Dashboard</a>
|
||||
</div>
|
||||
|
||||
<div class="menu">
|
||||
<a ng-href="/new" class="nav-item add float-right">
|
||||
<i class="material-icons">add</i>
|
||||
</a>
|
||||
</div>
|
||||
<a href="/" class="logo"></a>
|
|
@ -1,18 +1,8 @@
|
|||
<div class="breadcrumb">
|
||||
<a href="/{{ repo.full_name }}/edit" class="icon icon-home">
|
||||
<i class="material-icons md-18">home</i>
|
||||
<ol>
|
||||
<li>
|
||||
<a ng-href="/{{ repo.full_name}}">
|
||||
<i class="material-icons">arrow_back</i>
|
||||
</a>
|
||||
<a ng-href="/{{ repo.full_name }}">{{ repo.owner }} / {{ repo.name }}</a>
|
||||
</div>
|
||||
|
||||
<div class="menu">
|
||||
<a ng-href="/{{ repo.full_name }}/edit" class="nav-item settings float-right" ng-if="repo.permissions.pull">
|
||||
<i class="material-icons md-18">edit</i>
|
||||
</a>
|
||||
<button ng-click="watch(repo)" ng-if="!repo.starred && user" class="nav-item star float-right">
|
||||
<i class="material-icons md-18">star_border</i>
|
||||
</button>
|
||||
<button ng-click="unwatch(repo)" ng-if="repo.starred && user" class="nav-item unstar float-right">
|
||||
<i class="material-icons md-18">star</i>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li>{{repo.owner}} / {{repo.name}}</li>
|
||||
</ol>
|
|
@ -1,36 +1,20 @@
|
|||
<main>
|
||||
<article>
|
||||
|
||||
<section>
|
||||
<form style="padding:30px">
|
||||
<input type="text" ng-model="login" placeholder="i.e. octocat"
|
||||
style="font-size:14px;padding:10px 20px;width:400px;border: 1px solid #d9d9d9;outline:none;"/>
|
||||
<button ng-click="add(login)"
|
||||
style="display: inline-block;background:#EEE;font-size:14px; padding:0px 20px;text-transform:uppercase;cursor:pointer;color:#616161;height:39px;line-height:41px;margin-left:10px;">
|
||||
Add User
|
||||
</button>
|
||||
|
||||
</form>
|
||||
<section class="search">
|
||||
<input type="search" spellcheck="false" placeholder="Create or find a user" ng-model="login" />
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<div class="row row-user" ng-repeat="user in users">
|
||||
<div>
|
||||
<ul class="list cozy">
|
||||
<li class="row row-user" ng-repeat="user in users">
|
||||
<div class="column-avatar">
|
||||
<img ng-src="{{ user.gravatar_id | gravatar }}" />
|
||||
</div>
|
||||
<div>
|
||||
<h3>{{ user.login }}
|
||||
<small ng-if="user.admin">Admin</small>
|
||||
</h3>
|
||||
<p>{{ user.email }}</p>
|
||||
<button ng-click="toggle(user)" ng-class="{'btn-admin':true, 'btn-checked': user.admin}">
|
||||
<i class="material-icons md-18">account_circle</i>
|
||||
</button>
|
||||
<button ng-click="remove(user)" class="btn-remove">
|
||||
<i class="material-icons md-18">delete</i>
|
||||
</button>
|
||||
<div class="column-fill">
|
||||
<h2>{{ user.login }}</h2>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
</main>
|
|
@ -1,6 +1,8 @@
|
|||
<div class="breadcrumb" style="position:relative;top:0px;">
|
||||
<a href="/" class="icon icon-home">
|
||||
<i class="material-icons md-18">home</i>
|
||||
<ol>
|
||||
<li>
|
||||
<a href="/">
|
||||
<i class="material-icons">arrow_back</i>
|
||||
</a>
|
||||
<a href="#">Users</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>Users</li>
|
||||
</ol>
|
48
cmd/drone-server/static/styles/alert.css
Normal file
48
cmd/drone-server/static/styles/alert.css
Normal file
|
@ -0,0 +1,48 @@
|
|||
.alert {
|
||||
padding: 40px;
|
||||
background-color: #F5F7F9;
|
||||
color: #4f5b66;
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
border-radius:3px;
|
||||
margin-bottom:30px;
|
||||
position:relative;
|
||||
}
|
||||
.alert em {
|
||||
font-weight: bold;
|
||||
color: #2b303b;
|
||||
}
|
||||
.alert i.material-icons {
|
||||
font-size: 42px;
|
||||
display: block;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.alert-error {
|
||||
background: #bf616a;
|
||||
color: #fff;
|
||||
}
|
||||
.alert-create-not-found {
|
||||
color: rgba(255,255,255,0.95);
|
||||
background:#ebcb8b;
|
||||
outline:none;
|
||||
border:none;
|
||||
width:100%;
|
||||
cursor: pointer;
|
||||
font-family: Roboto;
|
||||
}
|
||||
.alert-error em,
|
||||
.alert-create-not-found em {
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
font-size: 120%;
|
||||
margin-left:10px;
|
||||
}
|
||||
|
||||
/* I'm not sure at the moment if we want
|
||||
* to display these icons or not
|
||||
*/
|
||||
.alert-create-not-found i.material-icons {
|
||||
display:none;
|
||||
}
|
13
cmd/drone-server/static/styles/blankslate.css
Normal file
13
cmd/drone-server/static/styles/blankslate.css
Normal file
|
@ -0,0 +1,13 @@
|
|||
.blankslate {
|
||||
padding: 40px 20px;
|
||||
background-color: #eff1f5;
|
||||
color: #303030;
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
}
|
||||
.blankslate.clean-background {
|
||||
|
||||
}
|
||||
.blankslate.spacious {
|
||||
|
||||
}
|
File diff suppressed because it is too large
Load diff
3
cmd/drone-server/static/styles/fonts.css
Normal file
3
cmd/drone-server/static/styles/fonts.css
Normal file
|
@ -0,0 +1,3 @@
|
|||
@import url(//fonts.googleapis.com/css?family=Roboto:400,300,500,700);
|
||||
@import url(//fonts.googleapis.com/css?family=Roboto+Mono:400,300,500);
|
||||
@import url(//fonts.googleapis.com/icon?family=Material+Icons);
|
71
cmd/drone-server/static/styles/list.css
Normal file
71
cmd/drone-server/static/styles/list.css
Normal file
|
@ -0,0 +1,71 @@
|
|||
.list > a,
|
||||
.list > li {
|
||||
display: flex;
|
||||
padding: 30px 0px;
|
||||
border-top: 1px solid #f0f4f7;
|
||||
color:#4c555a;
|
||||
text-decoration: none;
|
||||
position: relative;
|
||||
}
|
||||
.list > a:first-child,
|
||||
.list > li:first-child {
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.list .column-avatar {
|
||||
width: 60px;
|
||||
min-width: 60px;
|
||||
}
|
||||
.list .column-status {
|
||||
width: 45px;
|
||||
min-width: 45px;
|
||||
}
|
||||
.list .column-fill {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.comfortable > a,
|
||||
.comfortable > div,
|
||||
.comfortable > li {
|
||||
padding-top:30px;
|
||||
padding-bottom:30px;
|
||||
}
|
||||
|
||||
.cozy > a,
|
||||
.cozy > div,
|
||||
.cozy > li {
|
||||
padding-top:15px;
|
||||
padding-bottom:15px;
|
||||
}
|
||||
|
||||
.compact > a,
|
||||
.compact > div,
|
||||
.compact > li {
|
||||
padding-top:10px;
|
||||
padding-bottom:10px;
|
||||
}
|
||||
|
||||
.list .column-avatar img {
|
||||
width:32px;
|
||||
height:32px;
|
||||
border-radius:50%;
|
||||
margin-left:5px;
|
||||
}
|
||||
.list h2 {
|
||||
line-height:32px;
|
||||
font-size:18px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
margin-bottom:1px;
|
||||
}
|
||||
.list p {
|
||||
color:#a7adba;
|
||||
margin-top:3px;
|
||||
font-size:14px;
|
||||
line-height:20px;
|
||||
}
|
||||
.list em,
|
||||
.list em {
|
||||
color:#65737e;
|
||||
}
|
645
cmd/drone-server/static/styles/main.css
Normal file
645
cmd/drone-server/static/styles/main.css
Normal file
|
@ -0,0 +1,645 @@
|
|||
html, body {
|
||||
background:#fff;
|
||||
color:#4c555a;
|
||||
font-size:14px;
|
||||
font-family:"Roboto";
|
||||
min-height:100vh;
|
||||
}
|
||||
|
||||
body > div {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
/*
|
||||
* Header and Logo
|
||||
*/
|
||||
|
||||
.logo {
|
||||
float: left;
|
||||
height: 36px;
|
||||
width: 36px;
|
||||
opacity: 1;
|
||||
margin: 14px 0px 0px 14px;
|
||||
margin: 14px 0px 0px 18px;
|
||||
background: url(data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+DQo8IS0tIENyZWF0ZWQgd2l0aCBJbmtzY2FwZSAoaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvKSAtLT4NCg0KPHN2Zw0KICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIg0KICAgeG1sbnM6Y2M9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL25zIyINCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyINCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiDQogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSINCiAgIHdpZHRoPSIzMiINCiAgIGhlaWdodD0iMzIiDQogICBpZD0ic3ZnMiINCiAgIHZlcnNpb249IjEuMSINCiAgIGlua3NjYXBlOnZlcnNpb249IjAuNDguMy4xIHI5ODg2Ig0KICAgc29kaXBvZGk6ZG9jbmFtZT0iZHJvbmVfMzIucG5nIj4NCiAgPGRlZnMNCiAgICAgaWQ9ImRlZnM0IiAvPg0KICA8c29kaXBvZGk6bmFtZWR2aWV3DQogICAgIGlkPSJiYXNlIg0KICAgICBwYWdlY29sb3I9IiNmZmZmZmYiDQogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2Ig0KICAgICBib3JkZXJvcGFjaXR5PSIxLjAiDQogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiDQogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiDQogICAgIGlua3NjYXBlOnpvb209IjcuOTE5NTk1OSINCiAgICAgaW5rc2NhcGU6Y3g9IjkuNjYyNzY2NCINCiAgICAgaW5rc2NhcGU6Y3k9IjYuMzk3Njg2NCINCiAgICAgaW5rc2NhcGU6ZG9jdW1lbnQtdW5pdHM9InB4Ig0KICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjEiDQogICAgIHNob3dncmlkPSJ0cnVlIg0KICAgICBpbmtzY2FwZTpzbmFwLWdsb2JhbD0iZmFsc2UiDQogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTI5NSINCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iNzQ0Ig0KICAgICBpbmtzY2FwZTp3aW5kb3cteD0iNjUiDQogICAgIGlua3NjYXBlOndpbmRvdy15PSIyNCINCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMSINCiAgICAgZml0LW1hcmdpbi10b3A9IjAiDQogICAgIGZpdC1tYXJnaW4tbGVmdD0iMCINCiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCINCiAgICAgZml0LW1hcmdpbi1ib3R0b209IjAiPg0KICAgIDxpbmtzY2FwZTpncmlkDQogICAgICAgdHlwZT0ieHlncmlkIg0KICAgICAgIGlkPSJncmlkMjk5NiINCiAgICAgICBlbXBzcGFjaW5nPSI1Ig0KICAgICAgIHZpc2libGU9InRydWUiDQogICAgICAgZW5hYmxlZD0idHJ1ZSINCiAgICAgICBzbmFwdmlzaWJsZWdyaWRsaW5lc29ubHk9InRydWUiDQogICAgICAgb3JpZ2lueD0iLTIxLjcyMDc3OXB4Ig0KICAgICAgIG9yaWdpbnk9Ii05OTAuMzcxODhweCIgLz4NCiAgPC9zb2RpcG9kaTpuYW1lZHZpZXc+DQogIDxtZXRhZGF0YQ0KICAgICBpZD0ibWV0YWRhdGE3Ij4NCiAgICA8cmRmOlJERj4NCiAgICAgIDxjYzpXb3JrDQogICAgICAgICByZGY6YWJvdXQ9IiI+DQogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0Pg0KICAgICAgICA8ZGM6dHlwZQ0KICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPg0KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4NCiAgICAgIDwvY2M6V29yaz4NCiAgICA8L3JkZjpSREY+DQogIDwvbWV0YWRhdGE+DQogIDxnDQogICAgIGlua3NjYXBlOmxhYmVsPSJMYXllciAxIg0KICAgICBpbmtzY2FwZTpncm91cG1vZGU9ImxheWVyIg0KICAgICBpZD0ibGF5ZXIxIg0KICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjEuNzIwNzc5LC0yOS45OTAyODcpIj4NCiAgICA8cGF0aA0KICAgICAgIHNvZGlwb2RpOnR5cGU9ImFyYyINCiAgICAgICBzdHlsZT0iZmlsbDojMjQyNzI5O2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtZGFzaGFycmF5Om5vbmUiDQogICAgICAgaWQ9InBhdGgyOTk4Ig0KICAgICAgIHNvZGlwb2RpOmN4PSIxNzIuMTA0NzQiDQogICAgICAgc29kaXBvZGk6Y3k9IjQ1OC4zOTI0OSINCiAgICAgICBzb2RpcG9kaTpyeD0iNS40Mjk1Njk3Ig0KICAgICAgIHNvZGlwb2RpOnJ5PSI1LjA1MDc2MjciDQogICAgICAgZD0ibSAxNzcuNTM0MzEsNDU4LjM5MjQ5IGEgNS40Mjk1Njk3LDUuMDUwNzYyNyAwIDEgMSAtMTAuODU5MTQsMCA1LjQyOTU2OTcsNS4wNTA3NjI3IDAgMSAxIDEwLjg1OTE0LDAgeiINCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjc1NDE4MzA2LDAsMCwwLjgxMDc0NjgxLC05Mi4wNzA0MDEsLTMyMy4wMDQpIiAvPg0KICAgIDxwYXRoDQogICAgICAgc3R5bGU9ImZpbGw6IzI0MjcyOTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MDtzdHJva2UtbWl0ZXJsaW1pdDo0Ig0KICAgICAgIGQ9Im0gMzcuNzI4MDc1LDMyLjkyNjc2MiBjIDcuMTQ4NjU3LDAuMDU1OTkgMTUuMjc2MDY3LDUuMDk1MzgzIDE2LjAwNzI5NSwxNC41OTI2OTggbCAtOS42Nzg4MywwIGMgMCwwIC0xLjI0Njg3MSwtNS4yNDY5MTYgLTYuMzI4NDY1LC01LjIxMTY3OCAtNS4wODE1OTUsMC4wMzUyMiAtNi4zMjg0NjYsNS4yMTE2NzggLTYuMzI4NDY2LDUuMjExNjc4IGwgLTkuNjc4ODMsMCBjIDAuNDcwMjUsLTkuMzI5NDQ3IDguNDYyMDk3LC0xNC42NTE3NzYgMTYuMDA3Mjk2LC0xNC41OTI2OTggeiINCiAgICAgICBpZD0icmVjdDM4MTAiDQogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCINCiAgICAgICBzb2RpcG9kaTpub2RldHlwZXM9InNjY3pjY3MiIC8+DQogICAgPHBhdGgNCiAgICAgICBzdHlsZT0iZmlsbDojMjQyNzI5O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowO3N0cm9rZS1taXRlcmxpbWl0OjQiDQogICAgICAgZD0iTSAzNy43OTQ1NTMsNTkuOTkwMjYgQyAzMi40NjQyMDIsNjAuMDA0NDQgMjcuNDg0NjczLDU1Ljk4MjIyMSAyNS40NDM0MDYsNDkuNzUzMDM2IGwgNS45NTYyMDMsMCBjIDAsMCAxLjI4NDg2NSw1LjE4NzcxOSA2LjM2NjQ1OSw1LjE1MjQ4IDUuMDgxNTk0LC0wLjAzNTIyIDYuMjkwNDcyLC01LjE1MjQ4IDYuMjkwNDcyLC01LjE1MjQ4IGwgNS45NTYyMDMsMCBjIC0xLjMyNzc1LDYuNTg5Nzc0IC02Ljg4NzgzOCwxMC4yMjMwMzggLTEyLjIxODE5LDEwLjIzNzIyNCB6Ig0KICAgICAgIGlkPSJyZWN0MzgxMC0xIg0KICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiDQogICAgICAgc29kaXBvZGk6bm9kZXR5cGVzPSJzY2N6Y2NzIiAvPg0KICA8L2c+DQo8L3N2Zz4=) no-repeat center center;
|
||||
}
|
||||
header {
|
||||
height:60px;
|
||||
min-height:60px;
|
||||
max-height:60px;
|
||||
/*border-bottom:1px solid #f2f2f2;*/
|
||||
box-sizing: border-box;
|
||||
}
|
||||
header ul {
|
||||
float:right;
|
||||
margin-right:20px;
|
||||
}
|
||||
header ul li span {
|
||||
margin-right:7px;
|
||||
margin-right:3px;
|
||||
}
|
||||
header li {
|
||||
display:inline-block;
|
||||
}
|
||||
header li a {
|
||||
line-height:60px;
|
||||
display:inline-block;
|
||||
vertical-align: middle;
|
||||
padding:0px 10px;
|
||||
text-transform: lowercase;
|
||||
color:#4c555a;
|
||||
text-decoration: none;
|
||||
font-size:15px;
|
||||
}
|
||||
header li i {
|
||||
vertical-align: middle;
|
||||
}
|
||||
header li.active a {
|
||||
color:#0099e5;
|
||||
}
|
||||
|
||||
header li img {
|
||||
border-radius:50%;
|
||||
width:32px;
|
||||
height:32px;
|
||||
vertical-align: middle;
|
||||
margin-right:3px;
|
||||
}
|
||||
|
||||
header ol {
|
||||
float:left;
|
||||
margin-left:15px;
|
||||
}
|
||||
header ol li {
|
||||
line-height:60px;
|
||||
display:inline-block;
|
||||
vertical-align: middle;
|
||||
font-size:21px;
|
||||
}
|
||||
header ol li:first-child {
|
||||
font-size:0px;
|
||||
}
|
||||
header ol li i {
|
||||
vertical-align: middle;
|
||||
font-size:28px;
|
||||
}
|
||||
header ol li a {
|
||||
line-height:inherit;
|
||||
vertical-align: middle;
|
||||
font-size:0px;
|
||||
}
|
||||
header ol li a i.material-icons {
|
||||
vertical-align: middle;
|
||||
font-size:25px;
|
||||
}
|
||||
header .private {
|
||||
color: #ebcb8b;
|
||||
opacity: 0.8;
|
||||
/*color: #000;
|
||||
opacity:0.25;*/
|
||||
padding-left:15px;
|
||||
margin-top:-5px;
|
||||
display:none;
|
||||
}
|
||||
header .private i {
|
||||
font-size:27px;
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
font-family:Roboto;
|
||||
}
|
||||
|
||||
/*
|
||||
* Main Seciton / Layout
|
||||
*/
|
||||
|
||||
.flex {
|
||||
display:flex;
|
||||
flex:1 1 auto;
|
||||
margin-top:0px;
|
||||
}
|
||||
main article {
|
||||
margin:0px auto;
|
||||
max-width:900px;
|
||||
padding:30px 40px;
|
||||
}
|
||||
.flex article {
|
||||
padding-bottom:0px;
|
||||
}
|
||||
.flex article pre {
|
||||
min-height: calc(100vh - 120px);
|
||||
margin-bottom:20px;
|
||||
}
|
||||
main aside {
|
||||
min-width:500px;
|
||||
width:500px;
|
||||
box-sizing: border-box;
|
||||
padding:40px 50px;
|
||||
}
|
||||
main aside > div {
|
||||
position: sticky;
|
||||
top:0px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Build Console
|
||||
*/
|
||||
|
||||
.console {
|
||||
margin:0px;
|
||||
flex: 1 1 auto;
|
||||
/*margin-top: -1px;*/
|
||||
max-width:auto;
|
||||
padding:30px 40px 20px 0px;
|
||||
}
|
||||
|
||||
.console pre {
|
||||
color:#eff1f5;
|
||||
border-radius:2px;
|
||||
background:#2b303b;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
box-sizing: border-box;
|
||||
padding:35px 40px;
|
||||
line-height:18px;
|
||||
font-family: "RobotoMono";
|
||||
font-size:12px;
|
||||
font-weight:300;
|
||||
}
|
||||
|
||||
/*
|
||||
* Repo List
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Build List
|
||||
*/
|
||||
|
||||
.repo-list { }
|
||||
.repo-list li {
|
||||
display:flex;
|
||||
padding:30px 0px;
|
||||
border-top:1px solid #f0f4f7;
|
||||
position:relative;
|
||||
}
|
||||
.repo-list img {
|
||||
width:32px;
|
||||
height:32px;
|
||||
border-radius:50%;
|
||||
margin-left:5px;
|
||||
}
|
||||
.repo-list li:first-child {
|
||||
border-top:none;
|
||||
}
|
||||
.repo-list li > div:first-child {
|
||||
width:60px;
|
||||
min-width:60px;
|
||||
}
|
||||
.repo-list li > div:nth-child(2) {
|
||||
flex:1 1 auto;
|
||||
}
|
||||
.repo-list h2 {
|
||||
line-height:32px;
|
||||
font-size:18px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
margin-bottom:1px;
|
||||
}
|
||||
.repo-list p {
|
||||
color:#a7adba;
|
||||
margin-top:3px;
|
||||
font-size:14px;
|
||||
line-height:20px;
|
||||
display:none;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Build List
|
||||
*/
|
||||
|
||||
.build-list { }
|
||||
.build-list li {
|
||||
display:flex;
|
||||
/*padding:30px 0px 30px 35px;*/
|
||||
padding:30px 0px;
|
||||
border-top:1px solid #f0f4f7;
|
||||
position:relative;
|
||||
}
|
||||
/*.build-list li:nth-child(even) {
|
||||
background:#FAFBFC;
|
||||
}*/
|
||||
.build-list li:first-child {
|
||||
border-top:none;
|
||||
}
|
||||
.build-list li > div:first-child {
|
||||
width:60px;
|
||||
min-width:60px;
|
||||
}
|
||||
.build-list li > div:nth-child(2) {
|
||||
flex:1 1 auto;
|
||||
}
|
||||
.build-list h2 {
|
||||
line-height:32px;
|
||||
font-size:18px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
margin-bottom:1px;
|
||||
}
|
||||
.build-section p,
|
||||
.build-list p {
|
||||
color:#a7adba;
|
||||
margin-top:3px;
|
||||
font-size:14px;
|
||||
line-height:20px;
|
||||
}
|
||||
.build-section em,
|
||||
.build-list em {
|
||||
color:#65737e;
|
||||
}
|
||||
.build-list h2 small:before {
|
||||
content:"#";
|
||||
margin-right:3px;
|
||||
}
|
||||
.build-list h2 small:after {
|
||||
content:" ";
|
||||
margin-right:10px;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Build Details
|
||||
*/
|
||||
|
||||
.build-section {
|
||||
margin-bottom:40px;
|
||||
display:flex;
|
||||
}
|
||||
.build-section > div:first-child {
|
||||
min-width:60px;
|
||||
width:60px;
|
||||
display:none;
|
||||
}
|
||||
.build-section > div:last-child {
|
||||
flex: 1 1 auto;
|
||||
padding-top:4px;
|
||||
font-size:17px;
|
||||
line-height:22px;
|
||||
}
|
||||
.build-detail {
|
||||
padding-left:50px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.build-summary h2 {
|
||||
line-height:25px;
|
||||
}
|
||||
.build-summary p {
|
||||
margin-top:15px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Job List
|
||||
*/
|
||||
|
||||
.job-list { }
|
||||
.job-list li {
|
||||
display:flex;
|
||||
padding:20px 0px;
|
||||
border-top:1px solid #f0f4f7;
|
||||
}
|
||||
.job-list li > div:first-child {
|
||||
width:50px;
|
||||
min-width:50px;
|
||||
}
|
||||
.job-list li > div:nth-child(2) { /** TEMPORARILY HIDDEN. MAY DECIDE TO REMOVE */
|
||||
min-width:25px;
|
||||
font-size:13px;
|
||||
text-align:right;
|
||||
padding: 10px 20px 0px 10px;
|
||||
font-weight:bold;
|
||||
font-size:15px;
|
||||
display:none;
|
||||
}
|
||||
.job-list li > div:nth-child(3) {
|
||||
flex:1 1 auto;
|
||||
font-size:13px;
|
||||
}
|
||||
.job-list li div.param {
|
||||
margin-top:5px;
|
||||
}
|
||||
.job-list li div.param:first-child {
|
||||
margin-top:10px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
li menu {
|
||||
position:absolute;
|
||||
top:15px;
|
||||
right:0px;
|
||||
}
|
||||
li menu .button {
|
||||
border-radius:50%;
|
||||
width:36px;
|
||||
height:36px;
|
||||
line-height:36px;
|
||||
padding:0px;
|
||||
|
||||
color:#dfe1e8;
|
||||
background: #fff;
|
||||
}
|
||||
li menu .button:hover {
|
||||
border:1px solid #a7adba;
|
||||
background:#FFF;
|
||||
color:#a7adba;
|
||||
}
|
||||
li menu .button i {
|
||||
font-size:22px;
|
||||
}
|
||||
|
||||
li menu .button.success {
|
||||
color: #FFF;
|
||||
border:1px solid #a3be8c;
|
||||
background: #a3be8c;
|
||||
|
||||
color: #a3be8c;
|
||||
background:#FFF;
|
||||
}
|
||||
li menu .button.danger:hover {
|
||||
color: #FFF;
|
||||
background: #bf616a;
|
||||
|
||||
color:#bf616a;
|
||||
background:#FFF;
|
||||
border:1px solid #bf616a;
|
||||
}
|
||||
|
||||
/*
|
||||
* Tail button to follow a build
|
||||
*/
|
||||
|
||||
.button-tail {
|
||||
position: fixed;
|
||||
bottom: 50px;
|
||||
right: 80px;
|
||||
width: 38px;
|
||||
height: 38px;
|
||||
background: rgba(255,255,255,0.2);
|
||||
border-radius: 50%;
|
||||
box-shadow: 1px 2px 2px rgba(0,0,0,0.2);
|
||||
cursor: pointer;
|
||||
|
||||
bottom: 15px;
|
||||
right: 60px;
|
||||
}
|
||||
.button-tail i {
|
||||
text-align:center;
|
||||
color:rgba(255,255,255,0.5);
|
||||
width:38px;
|
||||
line-height:38px;
|
||||
display:inline-block;
|
||||
}
|
||||
|
||||
/*
|
||||
* Random buttons used throughtout
|
||||
*/
|
||||
/*
|
||||
menu {
|
||||
display:block;
|
||||
text-align:right;
|
||||
margin-bottom:20px;
|
||||
}
|
||||
|
||||
menu .button {
|
||||
margin-left:5px;
|
||||
border:1px solid #f0f0f0;
|
||||
}
|
||||
menu .button span {
|
||||
margin:0px 10px;
|
||||
text-transform: uppercase;
|
||||
}*/
|
||||
.button {
|
||||
border-radius:2px;
|
||||
line-height:32px;
|
||||
display:inline-block;
|
||||
vertical-align: middle;
|
||||
padding:4px 15px 4px 15px;
|
||||
text-decoration: none;
|
||||
font-size:13px;
|
||||
background:#eff1f5;
|
||||
color: rgba(0,0,0,0.5);
|
||||
}
|
||||
.button:hover {
|
||||
background:#dfe1e8;
|
||||
}
|
||||
/*
|
||||
.button-watch {
|
||||
background: #a7adba;
|
||||
}
|
||||
.button-settings {
|
||||
background:#d08770;
|
||||
}
|
||||
*/
|
||||
.button i {
|
||||
vertical-align: middle;
|
||||
/*margin-right:5px;*/
|
||||
line-height:17px;
|
||||
font-size:18px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Status Indicator
|
||||
*/
|
||||
|
||||
.status {
|
||||
width: 36px;
|
||||
height: 36px;
|
||||
border-radius: 50%;
|
||||
display: inline-block;
|
||||
}
|
||||
.status i {
|
||||
line-height: 36px;
|
||||
width: 36px;
|
||||
vertical-align: middle;
|
||||
text-align: center;
|
||||
font-size:32px;
|
||||
}
|
||||
.status-small {
|
||||
|
||||
}
|
||||
.status.error,
|
||||
.status.killed,
|
||||
.status.failure {
|
||||
color: #bf616a;
|
||||
}
|
||||
.status.success {
|
||||
color:#a3be8c;
|
||||
}
|
||||
|
||||
/* Search Form */
|
||||
.search {
|
||||
display:block;
|
||||
width:100%;
|
||||
margin:0px 0px 37px 0px;
|
||||
}
|
||||
input[type="search"] {
|
||||
background: #eff1f5;
|
||||
line-height: 50px;
|
||||
border:none;
|
||||
border-radius:3px;
|
||||
display:block;
|
||||
width:100%;
|
||||
font-size:14px;
|
||||
padding:0px 15px;
|
||||
font-family:"Roboto";
|
||||
|
||||
}
|
||||
|
||||
/* SETTINGS SECTION */
|
||||
|
||||
|
||||
section .row {
|
||||
display: flex;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
section .row > div:first-child {
|
||||
padding: 30px 0px;
|
||||
border-bottom: 1px solid #f0f4f7;
|
||||
width: 200px;
|
||||
min-width: 200px;
|
||||
font-size:15px;
|
||||
color: #343d46;
|
||||
}
|
||||
|
||||
section .row > div:last-child {
|
||||
flex: 1 1 auto;
|
||||
padding: 30px;
|
||||
border-bottom: 1px solid #f0f4f7;
|
||||
overflow:hidden;
|
||||
color: #65737e;
|
||||
}
|
||||
|
||||
section .row:last-child > div {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
pre.snippet-padding {
|
||||
padding: 30px 0px;
|
||||
}
|
||||
pre.snippet {
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
font-size: 13px;
|
||||
line-height: 18px;
|
||||
font-family: "RobotoMono";
|
||||
}
|
||||
.slider-label {
|
||||
display: inline-block;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
|
||||
::-webkit-input-placeholder { /* WebKit browsers */
|
||||
color: #a7adba;
|
||||
}
|
||||
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
|
||||
color: #a7adba;
|
||||
opacity: 1;
|
||||
}
|
||||
::-moz-placeholder { /* Mozilla Firefox 19+ */
|
||||
color: #a7adba;
|
||||
opacity: 1;
|
||||
}
|
||||
:-ms-input-placeholder { /* Internet Explorer 10+ */
|
||||
color: #a7adba;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* ROUND INDICATORS */
|
||||
.status {
|
||||
width:12px;
|
||||
height:12px;
|
||||
border-radius:50px;
|
||||
margin-top:10px;
|
||||
}
|
||||
.status i {
|
||||
font-size:0px;
|
||||
}
|
||||
.status.error,
|
||||
.status.killed,
|
||||
.status.failure {
|
||||
background: #bf616a;
|
||||
}
|
||||
.status.success {
|
||||
background:#a3be8c;
|
||||
}
|
||||
.build-list li > div:first-child,
|
||||
.job-list li > div:first-child {
|
||||
width: 45px;
|
||||
min-width: 45px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Search Menu
|
||||
*/
|
||||
|
||||
section.search {
|
||||
background: #eff1f5;
|
||||
margin: 0px 0px 37px 0px;
|
||||
border-radius: 3px;
|
||||
display:flex;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
section.search input[type="search"] {
|
||||
line-height: 50px;
|
||||
border: none;
|
||||
border-radius: 3px;
|
||||
display: block;
|
||||
width: 100%;
|
||||
font-size: 16px;
|
||||
padding: 0px 15px;
|
||||
flex:1 1 auto;
|
||||
font-family:"Roboto";
|
||||
}
|
||||
section.search menu {
|
||||
display:flex;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
section.search menu button,
|
||||
section.search menu a {
|
||||
line-height: 50px;
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
padding: 0px 15px;
|
||||
color: rgba(0,0,0,0.3);
|
||||
background:transparent;
|
||||
border:none;
|
||||
border-left: 1px solid #FFF;
|
||||
cursor:pointer;
|
||||
outline:none;
|
||||
}
|
||||
section.search menu i {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Lists
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
109
cmd/drone-server/static/styles/range.css
Normal file
109
cmd/drone-server/static/styles/range.css
Normal file
|
@ -0,0 +1,109 @@
|
|||
input[type="range"]:focus ~ .slider-label {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
input[type=range] {
|
||||
-webkit-appearance: none;
|
||||
margin: 6px 0;
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
input[type=range]:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
input[type=range]::-webkit-slider-runnable-track {
|
||||
width: 100%;
|
||||
height: 8px;
|
||||
cursor: pointer;
|
||||
animate: 0.2s;
|
||||
box-shadow: none;
|
||||
background: rgba(0, 150, 136, 0.5);
|
||||
background: rgba(102, 187, 106, 0.5);
|
||||
border-radius: 5px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
input[type=range]::-webkit-slider-thumb {
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
height: 26px;
|
||||
width: 26px;
|
||||
border-radius: 50px;
|
||||
background: #009688;
|
||||
background: #66bb6a;
|
||||
cursor: pointer;
|
||||
-webkit-appearance: none;
|
||||
margin-top: -10px;
|
||||
}
|
||||
|
||||
input[type=range]:focus::-webkit-slider-runnable-track {
|
||||
background: rgba(0, 150, 136, 0.5);
|
||||
background: rgba(102, 187, 106, 0.5);
|
||||
}
|
||||
|
||||
input[type=range]::-moz-range-track {
|
||||
width: 100%;
|
||||
height: 8px;
|
||||
cursor: pointer;
|
||||
animate: 0.2s;
|
||||
box-shadow: none;
|
||||
background: rgba(0, 150, 136, 0.5);
|
||||
background: rgba(102, 187, 106, 0.5);
|
||||
border-radius: 5px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
input[type=range]::-moz-range-thumb {
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
height: 26px;
|
||||
width: 26px;
|
||||
border-radius: 50px;
|
||||
background: #009688;
|
||||
background: #66bb6a;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
input[type=range]::-ms-track {
|
||||
width: 100%;
|
||||
height: 8.4px;
|
||||
cursor: pointer;
|
||||
animate: 0.2s;
|
||||
background: transparent;
|
||||
border-color: transparent;
|
||||
border-width: 16px 0;
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
input[type=range]::-ms-fill-lower {
|
||||
background: #2a6495;
|
||||
border: 0.2px solid #010101;
|
||||
border-radius: 2.6px;
|
||||
box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
|
||||
}
|
||||
|
||||
input[type=range]::-ms-fill-upper {
|
||||
background: #3071a9;
|
||||
border: 0.2px solid #010101;
|
||||
border-radius: 2.6px;
|
||||
box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
|
||||
}
|
||||
|
||||
input[type=range]::-ms-thumb {
|
||||
box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
|
||||
border: 1px solid #000000;
|
||||
height: 36px;
|
||||
width: 16px;
|
||||
border-radius: 3px;
|
||||
background: #ffffff;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
input[type=range]:focus::-ms-fill-lower {
|
||||
background: #3071a9;
|
||||
}
|
||||
|
||||
input[type=range]:focus::-ms-fill-upper {
|
||||
background: #367ebd;
|
||||
}
|
47
cmd/drone-server/static/styles/reset.css
Normal file
47
cmd/drone-server/static/styles/reset.css
Normal file
|
@ -0,0 +1,47 @@
|
|||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
html, body, div, span, applet, object, iframe,
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
||||
a, abbr, acronym, address, big, cite, code,
|
||||
del, dfn, em, img, ins, kbd, q, s, samp,
|
||||
small, strike, strong, sub, sup, tt, var,
|
||||
b, u, i, center,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td,
|
||||
article, aside, canvas, details, embed,
|
||||
figure, figcaption, footer, header, hgroup,
|
||||
menu, nav, output, ruby, section, summary,
|
||||
time, mark, audio, video {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: 100%;
|
||||
font: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
article, aside, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section {
|
||||
display: block;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: none;
|
||||
}
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
textarea, input { outline: none; }
|
52
cmd/drone-server/static/styles/switch.css
Normal file
52
cmd/drone-server/static/styles/switch.css
Normal file
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
http://codepen.io/batazor/pen/KwKryj
|
||||
*/
|
||||
|
||||
.switch {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
width: 40px;
|
||||
height: 8px;
|
||||
border-radius: 10.416666666666668px;
|
||||
background: #E0E0E0;
|
||||
-webkit-transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
vertical-align: middle;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.switch::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: -8.604166666666667px;
|
||||
left: -2.604166666666667px;
|
||||
width: 26.04166666666667px;
|
||||
height: 26.04166666666667px;
|
||||
background: #bdbdbd;
|
||||
border-radius: 50%;
|
||||
-webkit-transition: left 0.28s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition: left 0.28s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
}
|
||||
|
||||
.switch:active::before {
|
||||
box-shadow: 0 2px 10.416666666666668px rgba(0, 0, 0, 0.28), 0 0 0 25px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.switch:active::before {
|
||||
box-shadow: 0 2px 10.416666666666668px rgba(0, 0, 0, 0.28), 0 0 0 25px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
input:checked + .switch {
|
||||
background: rgba(0, 150, 136, 0.5);
|
||||
background: rgba(102, 187, 106, 0.5);
|
||||
}
|
||||
|
||||
input:checked + .switch::before {
|
||||
left: 20.562499999999996px;
|
||||
background: #009688;
|
||||
background: #66bb6a;
|
||||
}
|
||||
|
||||
input:checked + .switch:active::before {
|
||||
box-shadow: 0 2px 10.416666666666668px rgba(0, 0, 0, 0.28), 0 0 0 25px rgba(0, 150, 136, 0.2);
|
||||
}
|
|
@ -8,7 +8,7 @@ import (
|
|||
"strings"
|
||||
|
||||
log "github.com/drone/drone/Godeps/_workspace/src/github.com/Sirupsen/logrus"
|
||||
"github.com/drone/drone/Godeps/_workspace/src/github.com/naoina/toml"
|
||||
// "github.com/drone/drone/Godeps/_workspace/src/github.com/naoina/toml"
|
||||
"github.com/drone/drone/Godeps/_workspace/src/github.com/vrischmann/envconfig"
|
||||
)
|
||||
|
||||
|
@ -108,11 +108,11 @@ func Load(path string) (*Config, error) {
|
|||
// reads parameters from environment variables.
|
||||
func LoadBytes(data []byte) (*Config, error) {
|
||||
conf := &Config{}
|
||||
err := toml.Unmarshal(data, conf)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
err = envconfig.InitWithPrefix(conf, "DRONE")
|
||||
// err := toml.Unmarshal(data, conf)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
err := envconfig.InitWithPrefix(conf, "DRONE")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue