diff --git a/app/components/dashboard-row.js b/app/components/dashboard-row.js index 49a010fa..184b83b8 100644 --- a/app/components/dashboard-row.js +++ b/app/components/dashboard-row.js @@ -5,10 +5,11 @@ import config from 'travis/config/environment'; export default Ember.Component.extend({ tagName: 'li', classNameBindings: ['repo.default_branch.last_build.state'], - classNames: ['dashboard-row', 'row-li'], + classNames: ['rows', 'rows--dashboard'], isLoading: false, isTriggering: false, hasTriggered: false, + dropupIsOpen: false, urlGithubCommit: function() { return githubCommitUrl(this.get('repo.slug'), this.get('repo.default_branch.last_build.commit.sha')); @@ -18,6 +19,9 @@ export default Ember.Component.extend({ tiggerBuild(branch) { this.set('isTriggering', true); return this.triggerBuild(); + }, + openDropup() { + this.toggleProperty('dropupIsOpen'); } } }); diff --git a/app/components/lastbuild-tile.js b/app/components/lastbuild-tile.js new file mode 100644 index 00000000..a008daf4 --- /dev/null +++ b/app/components/lastbuild-tile.js @@ -0,0 +1,8 @@ +import Ember from 'ember'; + +export default Ember.Component.extend({ + + tagName: 'li', + classNameBindings: ['build.state'] + +}); diff --git a/app/components/request-icon.js b/app/components/request-icon.js index ac668b0d..d19bef6e 100644 --- a/app/components/request-icon.js +++ b/app/components/request-icon.js @@ -2,7 +2,7 @@ import Ember from 'ember'; export default Ember.Component.extend({ tagName: 'span', - classNames: ['status-icon', 'icon'], + classNames: ['request-icon', 'icon'], classNameBindings: ['event', 'state'], isPush: function() { diff --git a/app/styles/app.scss b/app/styles/app.scss index 0026dbd6..f848da8c 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -3,6 +3,7 @@ @import "app/legacy/_grid"; @import "app/vars"; +@import "app/data"; @import "app/mixins"; @import "app/base"; @import "app/userlike"; @@ -26,11 +27,11 @@ @import "app/modules/build-header"; @import "app/modules/avatar"; @import "app/modules/popup"; - -@import "app/components/sync-button"; -@import "app/components/loading-indicator"; -@import "app/components/build-tile"; -@import "app/components/status-icon"; +@import "app/modules/lastbuild"; +@import "app/modules/sync-button"; +@import "app/modules/loading-indicator"; +@import "app/modules/build-tile"; +@import "app/modules/status-icon"; @import "app/animation/tractor"; diff --git a/app/styles/app/base.sass b/app/styles/app/base.sass index 5e478c82..003f598f 100644 --- a/app/styles/app/base.sass +++ b/app/styles/app/base.sass @@ -18,6 +18,9 @@ body line-height: 1.45 font-family: $font-family-sans-serif +h1, h2, h3, h4, h5, h6 + font-weight: $font-weight-normal + img max-width: 100% height: auto @@ -63,9 +66,8 @@ a text-decoration: underline .small-title - font-size: 20px + font-size: 18px color: $oxide-blue - font-weight: 400 .blank-list @include resetul diff --git a/app/styles/app/data.scss b/app/styles/app/data.scss new file mode 100644 index 00000000..fdcec9d3 --- /dev/null +++ b/app/styles/app/data.scss @@ -0,0 +1,38 @@ +$stateMap: ( + passed: ( + color: $turf-green, + color-bg: $seed-green + ), + failed: ( + color: $brick-red, + color-bg: $quartz-red + ), + errored: ( + color: $brick-red, + color-bg: $quartz-red + ), + canceled: ( + color: $cement-grey, + color-bg: $pebble-grey + ), + created: ( + color: $canary-yellow, + color-bg: $dozer-yellow + ), + started: ( + color: $canary-yellow, + color-bg: $dozer-yellow + ), + booting: ( + color: $canary-yellow, + color-bg: $dozer-yellow + ), + queued: ( + color: $canary-yellow, + color-bg: $dozer-yellow + ), + received: ( + color: $canary-yellow, + color-bg: $dozer-yellow + ) +); diff --git a/app/styles/app/layouts/broadcasts.sass b/app/styles/app/layouts/broadcasts.sass index 77548dd2..cfe8ffbe 100644 --- a/app/styles/app/layouts/broadcasts.sass +++ b/app/styles/app/layouts/broadcasts.sass @@ -3,7 +3,7 @@ height: $top-height width: 40px margin-left: 1em - line-height: $top-height + line-height: 2.5 cursor: pointer vertical-align: middle @media #{$medium-up} @@ -57,15 +57,14 @@ height: auto .icon-close + @extend %icon-line-failed position: absolute bottom: 0 right: 0 display: inline-block width: 1.2em height: 1.2em - background: - image: inline-image('line-icons/icon-failed.svg') - repeat: no-repeat + background-repeat: no-repeat @media #{$medium-up} position: absolute @@ -94,61 +93,33 @@ &.announcement background-color: $turf-green - .icon-broadcast display: inline-block - width: 1.3em - height: 2em + width: 16px + height: 16px vertical-align: middle svg overflow: visible - .tower-path - fill: #AEAEAE - .radio-wave--right, - .radio-wave--left - display: none + .path + stroke: $cement-grey + fill: none &:hover, &.is-open - .tower-path - fill: #818181 + .path + stroke: $asphalt-grey &.warning - .tower-path - fill: #DB4141 + .path + stroke: $brick-red &:hover, &.is-open - .tower-path - fill: #BA1717 + .path + stroke: $brick-red &.announcement - .tower-path - fill: #3CA85B + .path + stroke: $turf-green &:hover, &.is-open - .tower-path - fill: #238C3E - - &.announcement, - &.warning - .radio-wave--right, - .radio-wave--left - display: block - - .radio-wave--right - .tower-path - transform-origin: left center - animation: pulsating-right 1.5s linear infinite - - .radio-wave--left - .tower-path - transform-origin: right center - animation: pulsating-left 1.5s linear infinite - - -// @keyframes pulsating-right -// 40% -// transform: translateX(1px) scale(1.1) - -//@keyframes pulsating-left -// 40% -// transform: translateX(-1px) scale(1.1) + .path + stroke: $turf-green diff --git a/app/styles/app/layouts/caches.sass b/app/styles/app/layouts/caches.sass index 3174db80..4fe1ff36 100644 --- a/app/styles/app/layouts/caches.sass +++ b/app/styles/app/layouts/caches.sass @@ -20,33 +20,25 @@ list-style: none .cache-item - border: 1px solid $cream-dark + border: 1px solid rgba($cement-grey, 0.2) margin-bottom: 5px font-size: 15px padding: 0 1em - .status-icon - width: 1.5em - height: 1.5em - vertical-align: middle - .icon-scale - width: 1.2em - height: 1.2em - vertical-align: middle - margin-right: .3em &:hover, &:active - background-color: #F5F5F5 + background-color: $pebble-grey @media #{$medium-up} display: flex justify-content: space-between - flex-flow: row wrap + flex-flow: row nowrap align-items: center padding: .3em 0 white-space: nowrap .row-item:first-of-type flex: 1 0 30% padding-left: 1em + overflow: hidden .row-item:nth-of-type(2) flex: 1 0 30% .row-item:nth-of-type(3) diff --git a/app/styles/app/layouts/dashboard.sass b/app/styles/app/layouts/dashboard.sass index 214227e9..772112ed 100644 --- a/app/styles/app/layouts/dashboard.sass +++ b/app/styles/app/layouts/dashboard.sass @@ -2,6 +2,9 @@ list-style: none padding: 0 +.dashboard .centered + @media #{$small-only} + padding: 0 1em .dashboard-header width: 100% @@ -26,3 +29,83 @@ padding: 2rem 0 font-size: 20px color: $cement-grey + +.dash-star + &:hover, + &:active + svg path + stroke-width: 2px + + &.is-starred + svg path + stroke: $dozer-yellow + fill: $canary-yellow + +.dash-header + order: 2 + flex: 0 0 20% + +.dash-head + flex: 0 0 2% + display: flex + padding: 0 1em + margin-bottom: 1em + justify-content: space-between + align-items: flex-end + @media #{$medium-up} + flex: 0 0 3em + display: block + margin-bottom: 0 + height: 55px + border-right: 1px solid rgba($asphalt-grey, .2) + +.dash-body + flex-grow: 1 + position: relative + + @media #{$medium-up} + padding: 0 1.5em 0 + +.dash-aside + @media #{$medium-up} + position: absolute + width: 100% + bottom: 0 + overflow: hidden + +.dash-main + @media #{$small-only} + padding: 0 1em + @media #{$medium-up} + display: flex + flex-flow: row wrap + align-items: center + justify-content: space-between + height: 80px + +.dash-default + order: 3 + flex: 0 0 20% + + @media #{$small-only} + margin-top: 2em + +.dash-menu + order: 5 + flex: 0 0 3% + +.dash-last-build + display: flex + order: 4 + flex: 0 0 55% + flex-flow: row wrap + justify-content: space-between + + @media #{$small-only} + margin-top: 2em + @media #{$medium-up} + align-items: center + padding-right: 3em + + > div + flex: 0 0 33% diff --git a/app/styles/app/layouts/jobs.sass b/app/styles/app/layouts/jobs.sass index dc140e9e..e372a039 100644 --- a/app/styles/app/layouts/jobs.sass +++ b/app/styles/app/layouts/jobs.sass @@ -70,10 +70,6 @@ &.received, &.created line-height: 3 - .icon - width: 24px - height: 24px - vertical-align: middle .job-number display: inline-block @@ -81,24 +77,15 @@ flex: 0 0 7em padding-right: 1em border-right: 1px solid $cream-dark -.icon-hash - width: 20px - height: 20px - vertical-align: middle - @extend %icon - @extend %icon-line-hash .job-os position: relative pointer-events: none .icon - width: 16px + width: 18px height: 20px vertical-align: middle padding-left: 1.5em - background: - size: auto 18px - repeat: no-repeat @media #{$medium-up} flex: 0 0 4em text-align: center @@ -127,11 +114,8 @@ @include fadeOut(right, -90deg, white) .icon-lang - width: 16px - height: 13px margin-right: .3em - vertical-align: middle - @extend %icon + @extend .icon @extend %icon-line-language .job-env @@ -149,7 +133,6 @@ width: 14px height: 14px margin-right: .3em - vertical-align: middle @extend %icon @extend %icon-line-environment diff --git a/app/styles/app/layouts/log.sass b/app/styles/app/layouts/log.sass index fec3ce50..44bf04ff 100644 --- a/app/styles/app/layouts/log.sass +++ b/app/styles/app/layouts/log.sass @@ -15,10 +15,10 @@ padding: 0.1em 0.5em 0.1em 1.5em cursor: pointer background: - color: #777777 + color: $cement-grey repeat: no-repeat size: auto 12px - position: 6px 4px + position: 6px 5px border-radius: 2px color: $pebble-grey @extend %icon-arrow-down diff --git a/app/styles/app/layouts/owner.sass b/app/styles/app/layouts/owner.sass index 8f223750..cf6a73a0 100644 --- a/app/styles/app/layouts/owner.sass +++ b/app/styles/app/layouts/owner.sass @@ -15,10 +15,6 @@ .owner-handle margin: 0 font-size: $font-size-ml - .icon - width: 1.1em - height: 1.2em - vertical-align: middle a:hover text-decoration: underline img diff --git a/app/styles/app/layouts/profile.sass b/app/styles/app/layouts/profile.sass index 05c838e5..caaace62 100644 --- a/app/styles/app/layouts/profile.sass +++ b/app/styles/app/layouts/profile.sass @@ -133,9 +133,6 @@ p.profile-user-last display: inline-block padding: .2em .2em .2em .5em height: 28px - .icon - width: 14px - height: 14px .profile-hooklist .sync-spinner display: inline !important @@ -219,23 +216,23 @@ p.profile-user-last .icon-eye vertical-align: middle path - fill: #B6B7B9 + fill: $cement-grey circle - stroke: #B6B7B9 + stroke: $cement-grey fill: #fff &:hover path - fill: #666666 + fill: $asphalt-grey circle - stroke: #666666 + stroke: $asphalt-grey fill: #fff &.is-visible .icon-eye circle - fill: #B6B7B9 + fill: $cement-grey &:hover circle - fill: #666666 + fill: $asphalt-grey #unadministerable-hooks p diff --git a/app/styles/app/layouts/requests.sass b/app/styles/app/layouts/requests.sass index 1d439816..78715ef0 100644 --- a/app/styles/app/layouts/requests.sass +++ b/app/styles/app/layouts/requests.sass @@ -29,13 +29,6 @@ font-weight: $font-weight-bold margin-right: .5em - .status-icon - width: 1.3em - height: 1.3em - vertical-align: middle - &.api - width: 1.2em !important - a:hover, a:active text-decoration: underline diff --git a/app/styles/app/layouts/settings.sass b/app/styles/app/layouts/settings.sass index 8cbceb29..5d1b0b20 100644 --- a/app/styles/app/layouts/settings.sass +++ b/app/styles/app/layouts/settings.sass @@ -1,11 +1,10 @@ - .settings padding-top: .8em .settings-section padding: 0 0 1em margin-bottom: 3em - border-bottom: 2px solid #f2f3ef + border-bottom: 2px solid $pebble-grey &:last-of-type border-bottom: none .small-title @@ -53,10 +52,8 @@ box-shadow: none %settings-row - border-radius: 4px - background-color: #F6F5F5 - @media #{$medium-up} - height: 36px + border-radius: 2px + background-color: $pebble-grey .settings-envvar @extend %settings-row @@ -79,10 +76,10 @@ vertical-align: middle overflow: hidden white-space: nowrap - color: #8e8f8e + color: $asphalt-grey &:after content: "" - @include fadeOut(right, -90deg, #F6F5F5) + @include fadeOut(right, -90deg, $pebble-grey) .ssh-key-name @extend %settings-name-section @@ -104,7 +101,7 @@ display: inline-block vertical-align: middle overflow: hidden - color: #8e8f8e + color: $asphalt-grey .ssh-key-value @extend %settings-value-section @@ -124,10 +121,10 @@ display: inline-block width: 100% padding: 0.6em 0.5em 0.7em 1.1em - border-radius: 4px + border-radius: 2px border: none - background-color: #eeedec - color: #8e8f8e + background-color: lighten($cement-grey, 20) + color: $asphalt-grey @extend .icon-lock background: size: 14px @@ -146,12 +143,6 @@ width: 24% vertical-align: middle text-align: center - .icon-delete - @extend %icon - @extend .icon-delete - width: 1.1em - height: 1.6em - background-position: 0 2px &:hover .icon-delete @extend .icon-delete-hover @@ -173,11 +164,7 @@ .icon-delete margin: .2em auto 0 .icon-delete-disabled - @extend %icon + @extend .icon @extend .icon-delete-disabled display: block - width: 1.1em - height: 1.4em margin: .2em auto 0 - - diff --git a/app/styles/app/layouts/sidebar.sass b/app/styles/app/layouts/sidebar.sass index 81ea5dff..369381c2 100644 --- a/app/styles/app/layouts/sidebar.sass +++ b/app/styles/app/layouts/sidebar.sass @@ -46,10 +46,15 @@ width: 22% a:hover text-decoration: underline - .icon - width: 1.3em - height: 1.4em - vertical-align: middle + + .icon-clock, + .icon-calendar, + .icon-hash + width: 14px + height: 14px + .status-icon + width: 12px + height: 16px .tabnav--sidebar font-size: 14px @@ -75,7 +80,8 @@ margin-right: 0.8em @media (min-width: #{lower-bound($large-range)}) ul - height: 2em + height: 2em + margin-bottom: -5px @media (max-width: #{lower-bound($large-range)}) li display: block !important diff --git a/app/styles/app/mixins.sass b/app/styles/app/mixins.sass index 27e64b4f..236090fe 100644 --- a/app/styles/app/mixins.sass +++ b/app/styles/app/mixins.sass @@ -36,15 +36,6 @@ bottom: 0 margin: auto -%inline-block - display: inline-block - -%section-title - font-size: $font-size-sm - color: $cement-grey - font-weight: 400 - - =linkStyle a text-decoration: none @@ -67,9 +58,34 @@ // @todo simplyfiy coloring mixins =colorStatusIcons($color, $status) - .status-icon.#{$status} + .status-icon.#{$status}, + .request-icon.#{$status} svg * - fill: $color + stroke: $color + +=rowBorder + border: 1px solid lighten($cement-grey, 20) + border-radius: 2px + +=rowColor($status, $color, $color-bg: $color) + &.#{$status} + .color + color: $color + a + color: $color + text-decoration: none + &:hover, + &:active + border-bottom: 1px solid $color + .status-icon g > *, + .request-icon g > * + stroke: $color-bg + .background + background-color: $color-bg + +=rowBg($width, $status, $color) + &.#{$status} + background: linear-gradient(to right, $color 0%, $color $width, white $width, white 100%) no-repeat =statusColors($color, $status, $width, $color2: $color, $building:false) &.#{$status} @@ -80,9 +96,9 @@ color: $color &:hover border-color: $color - .row-name .status-icon g > *, - .row-request .icon-request g > * - fill: $color + .status-icon g > *, + .request-icon g > * + stroke: $color .build a, .repo-title a diff --git a/app/styles/app/modules/avatar.sass b/app/styles/app/modules/avatar.sass index c2c60b5f..0bcfa56e 100644 --- a/app/styles/app/modules/avatar.sass +++ b/app/styles/app/modules/avatar.sass @@ -44,8 +44,9 @@ .commit-author .avatar - width: 20px - height: 20px + width: 18px + height: 18px + margin-right: .3rem .pseudo-avatar:after font-size: .7em line-height: 1.7 diff --git a/app/styles/app/modules/build-header.sass b/app/styles/app/modules/build-header.sass index 2056412d..0ed2212e 100644 --- a/app/styles/app/modules/build-header.sass +++ b/app/styles/app/modules/build-header.sass @@ -52,14 +52,9 @@ font-weight: $font-weight-normal font-size: 16px - .status-icon - width: 1.7rem - height: 1.8rem - vertical-align: middle - .build-title .status-icon - margin-left: -2rem + margin-left: -1.8rem .commit-info font-size: 15px diff --git a/app/styles/app/components/build-tile.sass b/app/styles/app/modules/build-tile.sass similarity index 92% rename from app/styles/app/components/build-tile.sass rename to app/styles/app/modules/build-tile.sass index 5bb1ba1a..d97f5489 100644 --- a/app/styles/app/components/build-tile.sass +++ b/app/styles/app/modules/build-tile.sass @@ -1,13 +1,12 @@ @mixin buildTileColors($color, $bg, $status, $extra-hover: $color) > .#{$status} background-color: $bg - .icon-request g > *, .status-icon g > * - fill: $color + stroke: $color &:hover background-color: $extra-hover - .status-icon.#{$status} g > * - fill: white + .status-icon g > * + stroke: white .status-icon .circle border-color: white border-width: 2px @@ -33,8 +32,8 @@ right: 0 bottom: 0 left: 0 - width: 2.5rem !important - height: 2.5rem !important + width: 18px + height: 18px margin: auto !important background-color: transparent transition: top 200ms ease diff --git a/app/styles/app/modules/buttons.sass b/app/styles/app/modules/buttons.sass index 4c8b14b7..1d3b090c 100644 --- a/app/styles/app/modules/buttons.sass +++ b/app/styles/app/modules/buttons.sass @@ -124,8 +124,9 @@ $button-border-color: #d4d4d4 overflow: hidden width: 28px height: 28px - border: solid 1px #E4E6E6 + border: solid 1px rgba($cement-grey, 0.2) border-radius: 50% + cursor: pointer &:hover border-color: $oxide-blue @@ -140,8 +141,9 @@ $button-border-color: #d4d4d4 @extend %circle-button @extend %icon-line-cross background: + position: 6px 6px repeat: no-repeat - size: auto 100% + size: 14px 14px &:hover @extend %icon-line-cross-teal @@ -149,9 +151,9 @@ $button-border-color: #d4d4d4 @extend %circle-button @extend %icon-line-trigger background: - position: 2px 1px + position: 6px 5px repeat: no-repeat - size: 24px 24px + size: 16px 16px &:hover @extend %icon-line-trigger-teal @@ -213,4 +215,4 @@ $button-border-color: #d4d4d4 position: 4px 1px cursor: pointer @extend .button--grey - @extend %icon-line-eye + @extend %icon-line-eye-white diff --git a/app/styles/app/modules/dropdown.sass b/app/styles/app/modules/dropdown.sass index c61b40b8..0dc871f1 100644 --- a/app/styles/app/modules/dropdown.sass +++ b/app/styles/app/modules/dropdown.sass @@ -1,20 +1,25 @@ .option-button position: relative width: 17em + &:hover + .option-dropdown + display: block + .option-display + color: $oxide-blue + border-color: $oxide-blue + .option-tofu + @extend %icon-line-tofu-teal + border-color: $oxide-blue + .option-arrow + @extend %icon-line-arrowtabs-teal + border-color: $oxide-blue + transform: rotate(-90deg) + border-bottom: none + border-top: 1px solid $oxide-blue @media #{$small-only} &.display .option-dropdown display: block - @media #{$medium-up} - &:hover - .option-dropdown - display: block - .option-display - color: $oxide-blue - border-color: $oxide-blue - .option-tofu - border-color: $oxide-blue - background-image: inline-image('/line-icons/icon-tofuburger-teal.svg') $dropdown-button-height: 30px $dropdown-button-margin: -9px @@ -45,19 +50,29 @@ $dropdown-button-margin: -9px border-radius: 50% overflow: hidden -.option-tofu +.option-tofu, +.option-arrow width: 2em height: 2em display: inline-block vertical-align: top background: - image: inline-image('/line-icons/icon-tofuburger.svg') repeat: no-repeat - size: 20px position: 50% + +.option-tofu + @extend %icon-line-tofu + background-size: 20px @media #{$medium-up} border-left: 1px solid $pebble-grey +.option-arrow + @extend %icon-line-arrowtabs + transform: rotate(90deg) + background-size: 14px + @media #{$medium-up} + border-bottom: 1px solid $pebble-grey + .option-dropdown display: none position: absolute @@ -78,7 +93,6 @@ $dropdown-button-margin: -9px color: white background-color: $oxide-blue - .option-search input[type="text"] display: block @@ -87,7 +101,6 @@ $dropdown-button-margin: -9px border-bottom: 1px solid $oxide-blue border-radius: 0 - .option-list list-style: none padding: 0 @@ -101,3 +114,90 @@ $dropdown-button-margin: -9px vertical-align: top margin-right: .3em border-radius: 50% + + + +.dropup + &.is-open + .dropup-list + display: block + .dropup-tofu + @extend %icon-line-tofu-teal + outline: none + +.dropup-tofu + @extend %icon-line-tofu + background: + color: transparent + size: 100% + repeat: no-repeat + position: 0 5px + width: 2.5em + height: 2.5em + border: none + text-indent: 999% + overflow: hidden + white-space: nowrap + cursor: pointer + display: none + @media #{$medium-up} + display: inline-block + &:hover, + &:active + @extend %icon-line-tofu-teal + outline: none + +.dropup-list + list-style: none + padding: 0 + margin: 2em 0 0 + background-color: white + text-align: center + + li + display: inline-block + a + display: inline-block + width: 100% + padding: 0.5em 1em + background-color: white + [class^="icon-"] + margin-right: .3rem + &:hover, + &:active + background: $oxide-blue + color: white + .icon-trigger + @extend %icon-line-trigger-white + .icon-deactivate + @extend %icon-line-cross-white + border-color: white + .icon-settings + @extend %icon-line-cog-white + + @media #{$medium-up} + position: absolute + right: 0 + top: -7em + margin: 0 + background-color: white + border: 1px solid $oxide-blue + border-radius: 2px + display: none + z-index: 2 + text-align: left + li + display: block + &:last-of-type + &:after + content: "" + display: block + width: 1.6em + height: 1.6em + border: 1px solid $oxide-blue + background: white + transform: rotate(45deg) + position: absolute + bottom: -0.7em + right: 1.7em + z-index: -1 diff --git a/app/styles/app/modules/flash.sass b/app/styles/app/modules/flash.sass index c9080f25..c5b125b1 100644 --- a/app/styles/app/modules/flash.sass +++ b/app/styles/app/modules/flash.sass @@ -32,20 +32,14 @@ .success, .notice - color: #3ba85b - background-color: #deebdd + color: $turf-green + background-color: $seed-green .close @extend .icon--dismiss-green - .broadcast - color: #D8C500 - background-color: #FFFBD7 - .close - @extend .icon--dismiss-yellow - .error - color: #de4248 - background-color: #f1b6ad + color: $brick-red + background-color: $quartz-red .close @extend .icon--dismiss-red diff --git a/app/styles/app/modules/icons.sass b/app/styles/app/modules/icons.sass index 2f20d3ea..e5bbe766 100644 --- a/app/styles/app/modules/icons.sass +++ b/app/styles/app/modules/icons.sass @@ -6,34 +6,49 @@ repeat: no-repeat .icon - width: 1em - height: 1em + width: 15px + height: 15px @extend %icon +.status-icon *, +.request-icon * + fill: none + stroke: $cement-grey + stroke-linecap: round + stroke-linejoin: round + stroke-miterlimit: 10 + stroke-width: 2px + +.status-icon + @extend %icon + width: 13px + height: 20px + margin-right: .3rem + +.request-icon + @extend %icon + width: 16px + height: 19px + margin-right: .1rem + %icon-download-log - background-image: url('data:image/svg+xml;utf8,') + background-image: inline-image('stroke-icons/icon-downloadlogs.svg') .icon-download-log - @extend %icon + @extend .icon @extend %icon-download-log - width: 1.5em - height: 1.1em - vertical-align: middle - background-size: auto 14px + background-position: 0 -1px %icon-remove-log - background-image: url('data:image/svg+xml;utf8,') + background-image: inline-image('stroke-icons/icon-deletelogs.svg') .icon-remove-log - @extend %icon + @extend .icon @extend %icon-remove-log - width: 1.5em - height: 1.1em - vertical-align: middle - background-size: auto 14px + background-position: 0 -1px %icon-arrow-down - background-image: inline-image('line-icons/icon-arrow-down.svg') + background-image: inline-image('stroke-icons/icon-arrowdown.svg') .icon--search - background-image: inline-image('ui/search.svg') + background-image: inline-image('stroke-icons/icon-search.svg') .icon--dismiss-yellow background-image: inline-image('ui/icon-warning-dismiss.svg') @@ -45,105 +60,92 @@ .icon--dismiss-grey background-image: inline-image('ui/dismiss.svg') -%icon-hook-on - background-image: inline-image('ui/hooks-on.svg') -%icon-hook-off - background-image: inline-image('ui/hooks-off.svg') - %icon-line-trashcan - background-image: inline-image('line-icons/icon-trash.svg') + background-image: inline-image('stroke-icons/icon-trash.svg') %icon-line-trashcan-red - background-image: inline-image('line-icons/icon-trash-red.svg') + background-image: inline-image('stroke-icons/icon-trash-red.svg') %icon-line-trashcan-disabled - background-image: inline-image('line-icons/icon-trash-disabled.svg') + background-image: inline-image('stroke-icons/icon-trash-disabled.svg') .icon-delete + @extend .icon @extend %icon-line-trashcan .icon-delete-hover @extend %icon-line-trashcan-red .icon-delete-disabled @extend %icon-line-trashcan-disabled +%icon-line-arrowtabs + background-image: inline-image('stroke-icons/icon-arrowtabs.svg') +%icon-line-arrowtabs-teal + background-image: inline-image('stroke-icons/icon-arrowtabs-teal.svg') + %icon-line-key - background-image: inline-image('line-icons/icon-key.svg') + background-image: inline-image('stroke-icons/icon-key.svg') .icon-key - @extend %icon + @extend .icon @extend %icon-line-key - width: 20px - height: 20px - background-position: 0 6px - margin-right: .1em + margin-right: .3rem %icon-line-fingerprint - background-image: inline-image('line-icons/icon-fingerprint.svg') + background-image: inline-image('stroke-icons/icon-fingerprint.svg') .icon-fingerprint - @extend %icon + @extend .icon @extend %icon-line-fingerprint - width: 20px - height: 20px - margin-right: .1em + margin-right: .3rem %icon-line-calendar - background-image: inline-image('line-icons/icon-cal.svg') + background-image: inline-image('stroke-icons/icon-calendar.svg') .icon-line-calendar, .icon-cal, .icon-calendar - @extend %icon + @extend .icon @extend %icon-line-calendar - width: 20px - height: 18px - margin-right: .1em - background: - size: auto 20px - position: -1px 0 + margin-right: .3rem %icon-line-clock - background-image: inline-image('line-icons/icon-clock.svg') + background-image: inline-image('stroke-icons/icon-clock.svg') .icon-clock - @extend %icon + @extend .icon @extend %icon-line-clock - width: 20px - height: 20px - margin-right: .1em - background: - size: auto 21px - position: -2px 0 + margin-right: .2rem %icon-line-stopwatch - background-image: inline-image('line-icons/icon-stopwatch.svg') + background-image: inline-image('stroke-icons/icon-stopwatch.svg') .icon-stopwatch @extend %icon @extend %icon-line-stopwatch - width: 20px - height: 18px - margin-right: .1em - background-size: auto 18px - background-position: 1px 0 + width: 17px + height: 19px + margin-right: .2rem .icon-line-build @extend %icon - background-image: inline-image('line-icons/icon-build.svg') + background-image: inline-image('stroke-icons/icon-builds.svg') -%icon-line-commit - background-image: inline-image('line-icons/icon-commit.svg') +%icon-line-commit, +%icon-github + background-image: inline-image('stroke-icons/icon-github.svg') .icon-line-commit @extend %icon @extend %icon-line-commit %icon-line-eye - background-image:inline-image('line-icons/icon-view.svg') + background-image:inline-image('stroke-icons/icon-seemore.svg') +%icon-line-eye-white + background-image:inline-image('stroke-icons/icon-seemore-white.svg') %icon-line-question - background-image: inline-image('line-icons/icon-help.svg') + background-image: inline-image('stroke-icons/icon-help.svg') %icon-line-question-teal - background-image: inline-image('line-icons/icon-help-teal.svg') + background-image: inline-image('stroke-icons/icon-help-teal.svg') .icon-question - width: 1em - height: 1em + width: 18px + height: 18px background: repeat: no-repeat - position: 4px 2px + position: 3px 3px size: auto 10px display: inline-block border: solid 1px #E4E6E6 @@ -154,68 +156,102 @@ @extend %icon-line-question-teal %icon-line-hash - background-image: inline-image('line-icons/icon-hash.svg') + background-image: inline-image('stroke-icons/icon-hash.svg') +.icon-hash + @extend .icon + @extend %icon-line-hash + %icon-line-linux - background-image: inline-image('line-icons/icon-linux.svg') + background-image: inline-image('stroke-icons/icon-linux.svg') %icon-line-mac - background-image: inline-image('line-icons/icon-mac.svg') + background-image: inline-image('stroke-icons/icon-mac.svg') %icon-line-language - background-image: inline-image('line-icons/icon-lang.svg') + background-image: inline-image('stroke-icons/icon-language.svg') %icon-line-environment - background-image: inline-image('line-icons/icon-environment.svg') + background-image: inline-image('stroke-icons/icon-environment.svg') %icon-line-cog - background-image: inline-image('line-icons/icon-settings.svg') + background-image: inline-image('stroke-icons/icon-settings.svg') %icon-line-cog-teal - background-image: inline-image('line-icons/icon-settings-teal.svg') + background-image: inline-image('stroke-icons/icon-settings-teal.svg') +%icon-line-cog-white + background-image: inline-image('stroke-icons/icon-settings-white.svg') + +%icon-line-tofu + background-image: inline-image('stroke-icons/icon-tofuburger.svg') +%icon-line-tofu-teal + background-image: inline-image('stroke-icons/icon-tofuburger-teal.svg') .icon-settings @extend %icon-line-cog - width: 1em - height: 1em - vertical-align: middle - display: inline-block - background: - repeat: no-repeat - position: 0 0 + @extend .icon &:hover @extend %icon-line-cog-teal %icon-line-dropdown - background-image: inline-image('line-icons/icon-arrow-dropdown.svg') + background-image: inline-image('stroke-icons/icon-arrow-dropdown.svg') %icon-line-dropdown-teal - background-image: inline-image('line-icons/icon-arrow-dropdown-teal.svg') + background-image: inline-image('stroke-icons/icon-arrow-dropdown-teal.svg') %icon-line-cross - background-image: inline-image('line-icons/icon-failed.svg') + background-image: inline-image('stroke-icons/icon-failed.svg') %icon-line-cross-white - background-image: inline-image('line-icons/icon-failed-white.svg') + background-image: inline-image('stroke-icons/icon-failed-white.svg') %icon-line-cross-teal - background-image: inline-image('line-icons/icon-failed-teal.svg') + background-image: inline-image('stroke-icons/icon-failed-teal.svg') + +.icon-deactivate + @extend .icon + @extend %icon-line-cross + border: 1px solid $cement-grey + border-radius: 50% + &:hover, + &:active + @extend %icon-line-cross-white + border-color: white %icon-line-trigger - background-image: inline-image('line-icons/icon-trigger.svg') + background-image: inline-image('stroke-icons/icon-restart.svg') %icon-line-trigger-white - background-image: inline-image('line-icons/icon-trigger-white.svg') + background-image: inline-image('stroke-icons/icon-restart-white.svg') %icon-line-trigger-teal - background-image: inline-image('line-icons/icon-trigger-teal.svg') + background-image: inline-image('stroke-icons/icon-restart-teal.svg') + +.icon-trigger + @extend .icon + @extend %icon-line-trigger + &:hover, + &:active + @extend %icon-line-trigger-white + +%icon-line-lock + background-image: inline-image('stroke-icons/icon-private.svg') +.icon-lock + @extend %icon + @extend %icon-line-lock + width: 18px + height: 18px + margin-top: 1em + white-space: nowrap + text-indent: 999px + overflow: hidden + +.icon-star + @extend %icon + width: 18px + height: 18px + +%icon-line-passed + background-image: inline-image('stroke-icons/icon-passed.svg') -%icon-github - background-image: inline-image('line-icons/icon-commit.svg') .icon-github - display: inline-block - width: 1.1em - height: 1.1em margin-right: 0.3em vertical-align: middle - background: - repeat: no-repeat - size: 36px 21px - position: -9px -3px + @extend .icon @extend %icon-github %icon-github-circle - background-image: inline-image('line-icons/icon-github-outline.svg') + background-image: inline-image('stroke-icons/icon-repooctocat.svg') .icon-github-circle display: inline-block width: 1.2em @@ -226,16 +262,17 @@ @extend %icon-github-circle %icon-line-flag-teal - background-image: inline-image('line-icons/icon-flag.svg') + background-image: inline-image('stroke-icons/icon-flag.svg') %icon-line-flag-yellow - background-image: inline-image('line-icons/icon-flag-yellow.svg') + background-image: inline-image('stroke-icons/icon-flag-yellow.svg') %icon-line-scale - background-image: inline-image('line-icons/icon-scales.svg') + background-image: inline-image('stroke-icons/icon-scales.svg') .icon-scale - @extend %icon + @extend .icon @extend %icon-line-scale + margin-right: .3rem .icon--plus width: 1.1rem diff --git a/app/styles/app/modules/lastbuild.sass b/app/styles/app/modules/lastbuild.sass new file mode 100644 index 00000000..2c799133 --- /dev/null +++ b/app/styles/app/modules/lastbuild.sass @@ -0,0 +1,38 @@ +.lastbuilds + list-style: none + margin: 0 + padding: 0 + width: 100% + display: flex + justify-content: flex-start + @media #{$small-only} + flex-flow: row wrap + margin-top: 1em + + li + flex: 0 0 20% + height: 30px + @each $key, $value in $stateMap + &.#{$key} + background-color: map-get($value, color) + + @media #{$medium-up} + flex: 0 0 10% + margin-right: 2px + transform: translateY(25px) + transition: transform 150ms ease + &:hover + transform: translateY(0) + a + display: block + width: 100% + height: 30% + padding-top: 4px + color: white + text-align: center + + .status-icon + svg * + stroke: white !important + .circle + border-color: white !important diff --git a/app/styles/app/components/loading-indicator.sass b/app/styles/app/modules/loading-indicator.sass similarity index 100% rename from app/styles/app/components/loading-indicator.sass rename to app/styles/app/modules/loading-indicator.sass diff --git a/app/styles/app/modules/notice.sass b/app/styles/app/modules/notice.sass index 5d009316..7270c017 100644 --- a/app/styles/app/modules/notice.sass +++ b/app/styles/app/modules/notice.sass @@ -23,12 +23,12 @@ .notice--blue padding: 0.3em 0.5em 0.3em margin-bottom: .5em - background-color: #d2f5f9 - color: #40a3ad + background-color: $agate-blue + color: $oxide-blue border-radius: 2px font-size: 15px a - color: #40a3ad + color: $oxide-blue text-decoration: underline .icon-flag @@ -36,7 +36,7 @@ @extend %icon-line-flag-teal display: inline-block background: - color: #40a3ad + color: $oxide-blue size: auto 13px position: 6px 4px repeat: no-repeat diff --git a/app/styles/app/modules/popup.sass b/app/styles/app/modules/popup.sass index 1cac4ad0..11ad6d40 100644 --- a/app/styles/app/modules/popup.sass +++ b/app/styles/app/modules/popup.sass @@ -1,15 +1,12 @@ .help - display: inline-block + @extend %icon-line-question + @extend %icon height: 19px width: 16px margin: -4px 0 0 3px - vertical-align: middle background: - image: inline-image('ui/help.svg') - repeat: no-repeat position: 0 1px color: transparent - size: 100% cursor: pointer .popup @@ -19,25 +16,23 @@ transform: translate(-50%, -50%) height: auto padding: 2em - color: #565656 + color: $asphalt-grey z-index: 99 background-color: white border-radius: 2px - display: none background-color: #fff - border: solid 10px #f1f1f1 + border: solid 10px $pebble-grey &:before content: "" - .close position: absolute display: block right: 5px top: 8px - width: 30px - height: 30px + width: 20px + height: 20px text-indent: 999% overflow: hidden white-space: nowrap diff --git a/app/styles/app/modules/row.sass b/app/styles/app/modules/row.sass index cb1d70de..2b0bfe64 100644 --- a/app/styles/app/modules/row.sass +++ b/app/styles/app/modules/row.sass @@ -11,6 +11,46 @@ vertical-align: middle line-height: 1.5 +.rows + +rowBorder + display: flex + flex-flow: column wrap + margin-bottom: 1rem + @each $key, $value in $stateMap + +rowColor(#{$key}, map-get($value, color)) + + @media #{$medium-up} + position: relative + flex-flow: row nowrap + justify-content: space-between + align-items: center + + .label + margin: 0 + font-size: 10px + color: $cement-grey + text-transform: uppercase + font-weight: 600 + + .row-label, + .row-label a + font-size: $font-size-m + color: $cement-grey + + .row-label + margin: 0 + a:hover, + a:active + border-bottom: 1px solid $cement-grey + + .row-content + margin: 0 + font-size: 16px + a:hover, + a:active + border-bottom: 1px solid $asphalt-grey + +// old! remove this .row-li position: relative border: 1px solid $cream-dark @@ -20,7 +60,6 @@ h2, h3, small margin: 0 - font-weight: $font-weight-normal font-size: 16px small font-weight: $font-weight-bold @@ -72,11 +111,7 @@ display: block .icon - width: 1.3em - height: 1.3em margin-right: .2em - display: inline-block - vertical-align: middle .avatar display: inline-block diff --git a/app/styles/app/components/status-icon.sass b/app/styles/app/modules/status-icon.sass similarity index 100% rename from app/styles/app/components/status-icon.sass rename to app/styles/app/modules/status-icon.sass diff --git a/app/styles/app/modules/switch.sass b/app/styles/app/modules/switch.sass index ac62680c..7c6e2d7d 100644 --- a/app/styles/app/modules/switch.sass +++ b/app/styles/app/modules/switch.sass @@ -79,6 +79,6 @@ background-position: 50% background-repeat: no-repeat .off - @extend %icon-hook-off + @extend %icon-line-cross-white .on - @extend %icon-hook-on + @extend %icon-line-passed diff --git a/app/styles/app/components/sync-button.sass b/app/styles/app/modules/sync-button.sass similarity index 92% rename from app/styles/app/components/sync-button.sass rename to app/styles/app/modules/sync-button.sass index 82b74087..551c23ed 100644 --- a/app/styles/app/components/sync-button.sass +++ b/app/styles/app/modules/sync-button.sass @@ -33,11 +33,8 @@ .icon-trigger @extend %icon-line-trigger-white - @extend %icon - width: 1.5em - height: 1.5em - margin-right: 0.3em - + @extend .icon + margin-right: 0.3rem .loading-indicator--white vertical-align: top diff --git a/app/styles/app/modules/tabs.sass b/app/styles/app/modules/tabs.sass index 5c674194..e22928f0 100644 --- a/app/styles/app/modules/tabs.sass +++ b/app/styles/app/modules/tabs.sass @@ -10,6 +10,7 @@ width: 100% @media #{$medium-up} margin-top: 0 + margin-bottom: 4px display: block li flex: 0 0 8em @@ -76,13 +77,13 @@ left: .5em .tab-arrow + @extend %icon-line-arrowtabs display: inline-block position: absolute - top: 5px - left: -19px - width: .7em + top: 1px + left: -22px + width: 1em height: 1.3em background: size: auto 100% repeat: no-repeat - image: inline-image('line-icons/icon-arrow-tabs.svg') diff --git a/app/styles/app/modules/tofuburger.sass b/app/styles/app/modules/tofuburger.sass index 0c153479..481709ed 100644 --- a/app/styles/app/modules/tofuburger.sass +++ b/app/styles/app/modules/tofuburger.sass @@ -1,5 +1,5 @@ - .tofuburger + @extend %icon-line-tofu height: $top-height width: 30px border: none @@ -7,7 +7,6 @@ outline: none text-indent: -9999px background: - image: inline-image('line-icons/icon-tofuburger.svg') size: 100% position: center center repeat: no-repeat diff --git a/app/templates/caches.hbs b/app/templates/caches.hbs index f7ee4306..e2d3dc7a 100644 --- a/app/templates/caches.hbs +++ b/app/templates/caches.hbs @@ -1,7 +1,7 @@ {{#if cachesExist}}
diff --git a/app/templates/components/branch-row.hbs b/app/templates/components/branch-row.hbs index d6cd40b4..5c7702db 100644 --- a/app/templates/components/branch-row.hbs +++ b/app/templates/components/branch-row.hbs @@ -5,21 +5,7 @@