shipyard-framework 0.5.69 → 0.5.70

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0c683a0fb4c6119e84121a865a862637812e24beb773c3decd8dded350f2293c
4
- data.tar.gz: 589dc97db40a3d04eb72e06ad72486d70f724668f3a4da8c096042df621df42c
3
+ metadata.gz: 9ffe0c591ade0072321117debf737834f8b996c1c241c201c1b5a235e4c835c9
4
+ data.tar.gz: 5ea90413b10bd35bb92e5dfe80ab621af420f2385a2ab48f464b0ae0d17ace30
5
5
  SHA512:
6
- metadata.gz: 12bafc1e15ce24ceb9b3655d90c5fae198cc7a9c7842cbbf836e2a5f50162a131134c8394b89a0a9ac7bb06a0d692b4cf72f01e33a7f530013ad1f2c74fca5c7
7
- data.tar.gz: 6d0c18b96f87f1300b5843297f2a498bac6c08f55c74191ae22b65e95044a633197db61fa678c55cd675cd6e32fbbeae8758bed8ce43dd051c2e81f8d6a885ff
6
+ metadata.gz: 435f65ebc2cbe2dbe8f08e51278b6a4a7771e6488e1de82e807f5aa225f3e8c01cf2c6310e06385a8d67ede150f4cc7be0ae17b90340ebf48d869ee9e1aa2ea1
7
+ data.tar.gz: 469eaf26a4e08013c2b2233ad5524fdb1ef4a86a77a8d53d1a8bcff0ee3b376149e1bf01fd37d9ec306b856c570c4a43bbe7749ea574374e91e7808b7e577def
@@ -13,3 +13,4 @@
13
13
  @import shipyard/components/tooltips
14
14
  @import shipyard/components/hamburger
15
15
  @import shipyard/components/tables
16
+ @import shipyard/components/horizontal-rules
@@ -17,7 +17,7 @@
17
17
  +btn-hover(darken($bg, 10%), #fff)
18
18
 
19
19
  @mixin btn-color($color, $text-color: null, $border-color: null)
20
- background: $color
20
+ background-color: $color
21
21
  @if $border-color
22
22
  border-color: $border-color
23
23
  @else
@@ -118,14 +118,14 @@
118
118
  +btn-hover(darken($blue, 12%))
119
119
 
120
120
  &-secondary
121
- +btn-color(none, $text-color-light, darken($gray-lightest, 7%))
122
- +btn-hover(none, darken($text-color-light, 15%), darken($gray-lightest, 17%))
121
+ +btn-color(transparent, $text-color-light, darken($gray-lightest, 7%))
122
+ +btn-hover(transparent, darken($text-color-light, 15%), darken($gray-lightest, 17%))
123
123
  &-link
124
- +btn-color(none, $blue, darken($gray-lightest, 7%))
125
- +btn-hover(none, $blue-dark, darken($gray-lightest, 17%))
124
+ +btn-color(transparent, $blue, darken($gray-lightest, 7%))
125
+ +btn-hover(transparent, $blue-dark, darken($gray-lightest, 17%))
126
126
  &-dark
127
- +btn-color(none, darken($text-color-light, 5%), lighten($gray-light, 5%))
128
- +btn-hover(none, darken($text-color-light, 20%), darken($gray-light, 5%))
127
+ +btn-color(transparent, darken($text-color-light, 5%), lighten($gray-light, 5%))
128
+ +btn-hover(transparent, darken($text-color-light, 20%), darken($gray-light, 5%))
129
129
 
130
130
  &-caution
131
131
  +btn-color($red-dark)
@@ -13,8 +13,9 @@
13
13
  border: 2px solid $border-color
14
14
  transition: background-color 300ms ease, border-color 300ms ease, opacity 300ms ease
15
15
  +appearance(none)
16
- &:hover, .btn:hover &
17
- border-color: darken($border-color, 10%)
16
+ +background-clip(padding-box)
17
+ &:hover, &:focus, .btn:hover &
18
+ border-color: $border-color-dark
18
19
 
19
20
  &-group
20
21
  +clearfix
@@ -27,7 +28,7 @@
27
28
  &-select
28
29
  display: block
29
30
  width: 100%
30
- background: #fff
31
+ background-color: #fff
31
32
  height: 50px
32
33
  font: $font
33
34
  font-weight: $medium
@@ -40,7 +41,6 @@
40
41
  +when('error')
41
42
  border-color: $red
42
43
  &:hover, &:focus
43
- border-color: $border-color-dark
44
44
  +when('error')
45
45
  border-color: darken($red, 15%)
46
46
  &-container
@@ -75,7 +75,7 @@
75
75
  &-text
76
76
  font: $font
77
77
  color: $text-color
78
- background: #fff
78
+ background-color: #fff
79
79
  position: relative
80
80
  height: 50px
81
81
  font-size: 16px
@@ -88,14 +88,17 @@
88
88
  +when('error')
89
89
  border-color: $red
90
90
  &:hover, &:focus
91
- border-color: $border-color-dark
92
91
  +when('error')
93
92
  border-color: darken($red, 15%)
94
93
  &-connect
95
- &-top:focus,
96
- &-middle:focus,
97
- &-bottom:focus
98
- z-index: 1
94
+ &-top,
95
+ &-middle,
96
+ &-bottom
97
+ border-color: rgba($bg-to-border, .37)
98
+ +background-clip(initial)
99
+ &:hover, &:focus
100
+ z-index: 1
101
+ border-color: rgba($bg-to-border, .50)
99
102
  &-top
100
103
  border-radius: 5px 5px 0 0
101
104
  &-middle
@@ -0,0 +1,11 @@
1
+ +component('hr')
2
+ height: 0
3
+ border: 0 solid $border-color-lighter
4
+ border-width: 2px 0 0
5
+ +respond-to(margin, (x0: 20px 0, x1: 30px 0))
6
+ &-dark
7
+ border-color: $border-color
8
+ &-light
9
+ border-color: $border-color-lightest
10
+ &-thin
11
+ border-width: 1px 0 0
@@ -10,11 +10,6 @@ svg, path, circle, polyline
10
10
  transform-origin: center center
11
11
  +width-height(1em)
12
12
 
13
- &-center
14
- position: relative
15
- vertical-align: middle
16
- top: -1px
17
-
18
13
  // Icons w/ Margins
19
14
  &-margin-left
20
15
  margin-left: 5px
@@ -15,7 +15,7 @@
15
15
  padding-left: 28px
16
16
  +when('item-inline')
17
17
  padding-left: 5px
18
- &:hover
18
+ &:hover, .input:hover ~ &
19
19
  color: $blue-dark
20
20
  +when('radio:checked ~, checkbox:checked ~')
21
21
  color: $green-dark
@@ -1,33 +1,41 @@
1
- $sizes: (sm: 18px, md: 20px)
1
+ $sizes: (sm: 18px)
2
2
 
3
3
  +component('input-switch')
4
+ outline: none
5
+ cursor: pointer
4
6
  position: relative
5
- background: $gray-light
6
- display: block
7
+ display: inline-block
7
8
  border-radius: 50px
8
- outline: none
9
- transition: background-color 300ms ease
10
- &::before
9
+ +width-height(36px, 20px)
10
+ +background-clip(initial)
11
+ &, &:hover, &:focus
12
+ +btn-color($red, $border-color: transparent)
13
+ &:checked
14
+ &, &:hover, &:focus
15
+ +btn-color($green, $border-color: transparent)
16
+
17
+ &-secondary
18
+ +extend
19
+ &, &:hover, &:focus
20
+ +btn-color($border-color, $border-color: transparent)
21
+
22
+ // Checkbox Switch: White Dot
23
+ &::after
24
+ top: 0
25
+ left: 0
11
26
  content: ''
12
27
  display: block
13
28
  position: absolute
14
- top: 2px
15
- left: 2px
16
- background: #fff
17
29
  border-radius: 50%
30
+ background-color: #fff
18
31
  transition: transform 300ms ease
32
+ +width-height(16px)
33
+ &:checked::after
34
+ transform: translatex(100%)
19
35
 
36
+ // Checkbox Switch: Sizes
20
37
  @each $name, $size in $sizes
21
38
  &-#{$name}
22
- +extend
23
39
  +width-height($size * 2 - 4px, $size)
24
- &::before
40
+ &::after
25
41
  +width-height($size - 4px)
26
-
27
- &-false
28
- background: $red
29
-
30
- &-true
31
- background: $green
32
- &::before
33
- transform: translatex(100%)
@@ -15,18 +15,6 @@
15
15
  color: darken($blue, 10%)
16
16
  text-decoration: underline
17
17
 
18
- +component('hr')
19
- height: 0
20
- border: 0 solid $border-color-light
21
- border-width: 2px 0 0
22
- +respond-to(margin, (x0: 20px 0, x1: 30px 0))
23
- &-dark
24
- border-color: $border-color
25
- &-light
26
- border-color: $border-color-lightest
27
- &-thin
28
- border-width: 1px 0 0
29
-
30
18
  strong
31
19
  font-weight: $bold
32
20
 
@@ -1,15 +1,20 @@
1
1
  @mixin appearance($value)
2
- appearance: $value
3
- -moz-appearance: $value
4
2
  -webkit-appearance: $value
3
+ -moz-appearance: $value
4
+ appearance: $value
5
5
 
6
6
  @mixin backdrop-filter($value)
7
- backdrop-filter: $value
8
7
  -webkit-backdrop-filter: $value
8
+ backdrop-filter: $value
9
+
10
+ @mixin background-clip($value)
11
+ -webkit-background-clip: $value
12
+ -moz-background-clip: $value
13
+ background-clip: $value
9
14
 
10
15
  @mixin mask($value)
11
- mask: $value
12
16
  -webkit-mask: $value
17
+ mask: $value
13
18
 
14
19
  @mixin placeholder
15
20
  &::placeholder
@@ -11,4 +11,6 @@
11
11
  +center($horizontal: true)
12
12
 
13
13
  .align-middle
14
+ top: -1px
15
+ position: relative
14
16
  vertical-align: middle
@@ -6,10 +6,11 @@ $bg-color: $gray-lightest !default
6
6
  $box-shadow: 0 1px 2px rgba($gray-darkest,.08) !default
7
7
  $border-radius: 5px !default
8
8
 
9
- $border-color: darken($bg-color, 12%) !default
10
- $border-color-dark: darken($border-color, 10%) !default
11
- $border-color-darker: darken($border-color, 14%) !default
12
- $border-color-darkest: darken($border-color, 18%) !default
13
- $border-color-light: darken($bg-color, 6%) !default
14
- $border-color-lighter: darken($bg-color, 4%) !default
15
- $border-color-lightest: darken($bg-color, 2%) !default
9
+ $bg-to-border: darken($bg-color, 50%)
10
+ $border-color: rgba($bg-to-border, .3) !default
11
+ $border-color-dark: rgba($bg-to-border, .45) !default
12
+ $border-color-darker: rgba($bg-to-border, .55) !default
13
+ $border-color-darkest: rgba($bg-to-border, .60) !default
14
+ $border-color-light: rgba($bg-to-border, .24) !default
15
+ $border-color-lighter: rgba($bg-to-border, .12) !default
16
+ $border-color-lightest: rgba($bg-to-border, .08) !default
@@ -1,3 +1,3 @@
1
1
  module Shipyard
2
- VERSION = '0.5.69'
2
+ VERSION = '0.5.70'
3
3
  end
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- shipyard-framework (0.5.69)
4
+ shipyard-framework (0.5.70)
5
5
  actionview (~> 5.0)
6
6
  sprockets-es6 (~> 0.9.2)
7
7
 
@@ -94,3 +94,7 @@ hr
94
94
  padding: 5px
95
95
  display: inline-block
96
96
  border-radius: 3px 0 0 3px
97
+
98
+ +component('components-checkboxes')
99
+ &-switch-col
100
+ line-height: 1.2
@@ -12,20 +12,21 @@ labels:
12
12
 
13
13
  ---
14
14
 
15
- ## Default Checkbox Lists
16
- <p class="text-light margin-bottom-md">Useful when you want to group a series of checkboxes together in a list (stacked by default).</p>
15
+ ## Inline Checkbox Lists
16
+ <p class="text-light margin-bottom-md">Useful when you want to group a series of checkboxes together on a single line.</p>
17
17
 
18
- <ul class="input-list">
18
+ <ul class="input-list margin-bottom-lg">
19
19
  {% for label in page.labels %}
20
- <li class="input-item">
21
- <input id="checkbox-default-{{ forloop.index }}" name="checkbox-list" type="checkbox" class="input input-checkbox" {% if forloop.index == 1 %}checked{% endif %} />
22
- <label for="checkbox-default-{{ forloop.index }}" class="input-label">{{ label }}</label>
20
+ <li class="input-item-inline">
21
+ <input id="checkbox-inline-{{ forloop.index }}" name="checkbox-list" type="checkbox" class="input input-checkbox" {% if forloop.index == 1 %}checked{% endif %} />
22
+ <label for="checkbox-inline-{{ forloop.index }}" class="input-label">Inline Label</label>
23
23
  </li>
24
24
  {% endfor %}
25
25
  </ul>
26
+
26
27
  ```html
27
28
  <ul class="input-list">
28
- <li class="input-item">
29
+ <li class="input-item-inline">
29
30
  <input id="checkbox-id" name="checkbox-name" type="checkbox" class="input input-checkbox" checked />
30
31
  <label for="checkbox-id" class="input-label">Checkbox Label</label>
31
32
  </li>
@@ -34,21 +35,38 @@ labels:
34
35
 
35
36
  ---
36
37
 
37
- ## Inline Checkbox Lists
38
- <p class="text-light margin-bottom-md">Useful when you want to group a series of checkboxes together on a single line.</p>
39
-
40
- <ul class="input-list">
41
- {% for label in page.labels %}
42
- <li class="input-item-inline">
43
- <input id="checkbox-inline-{{ forloop.index }}" name="checkbox-list" type="checkbox" class="input input-checkbox" {% if forloop.index == 1 %}checked{% endif %} />
44
- <label for="checkbox-inline-{{ forloop.index }}" class="input-label">Inline Label</label>
45
- </li>
46
- {% endfor %}
47
- </ul>
38
+ ## Stacked Checkbox Lists
39
+ <p class="text-light margin-bottom-md">Useful when you want to group a series of checkboxes together in a list (stacked by default).</p>
48
40
 
41
+ <div class="col-container margin-bottom-sm margin-bottom-x1-lg">
42
+ <div class="col col-100 col-x1-50 margin-bottom-sm margin-bottom-x1-none">
43
+ <div class="rounded bg-white box-padding">
44
+ <ul class="input-list">
45
+ {% for label in page.labels %}
46
+ <li class="input-item">
47
+ <input id="checkbox-light-{{ forloop.index }}" name="checkbox-list" type="checkbox" class="input input-checkbox" {% if forloop.index == 1 %}checked{% endif %} />
48
+ <label for="checkbox-light-{{ forloop.index }}" class="input-label">{{ label }}</label>
49
+ </li>
50
+ {% endfor %}
51
+ </ul>
52
+ </div>
53
+ </div>
54
+ <div class="col col-100 col-x1-50">
55
+ <div class="box-secondary box-padding">
56
+ <ul class="input-list">
57
+ {% for label in page.labels %}
58
+ <li class="input-item">
59
+ <input id="checkbox-dark-{{ forloop.index }}" name="checkbox-list" type="checkbox" class="input input-checkbox" {% if forloop.index == 1 %}checked{% endif %} />
60
+ <label for="checkbox-dark-{{ forloop.index }}" class="input-label">{{ label }}</label>
61
+ </li>
62
+ {% endfor %}
63
+ </ul>
64
+ </div>
65
+ </div>
66
+ </div>
49
67
  ```html
50
68
  <ul class="input-list">
51
- <li class="input-item-inline">
69
+ <li class="input-item">
52
70
  <input id="checkbox-id" name="checkbox-name" type="checkbox" class="input input-checkbox" checked />
53
71
  <label for="checkbox-id" class="input-label">Checkbox Label</label>
54
72
  </li>
@@ -115,3 +133,68 @@ labels:
115
133
  Button Text
116
134
  </button>
117
135
  ```
136
+
137
+ ---
138
+
139
+ ## Checkbox Switches
140
+ <p class="text-light margin-bottom-md">Switches are useful when the user has a choice to toggle on and off. Note: For the best UX, please make sure that the switch saves immediately each time it changes state.</p>
141
+
142
+ <div class="box box-xs margin-bottom-sm padding-top-md padding-bottom-md padding-left-sm padding-right-sm padding-left-x1-lg padding-right-x1-lg">
143
+ <div class="col-container-nowrap">
144
+ <div class="components-checkboxes-switch-col col col-100 text-light text-overflow-ellipsis">Praesent commodo cursus magna, vel scelerisque aenean eu leo quam pellentesque ornare sem lacinia quam.</div>
145
+ <div class="col margin-left-sm">
146
+ <input type="checkbox" class="input input-switch" checked />
147
+ </div>
148
+ </div>
149
+ </div>
150
+ <div class="box-secondary box-xs padding-top-md padding-bottom-md padding-left-sm padding-right-sm padding-left-x1-lg padding-right-x1-lg">
151
+ <div class="col-container-nowrap">
152
+ <div class="components-checkboxes-switch-col col col-100 text-light text-overflow-ellipsis">Praesent commodo cursus magna, vel scelerisque aenean eu leo quam pellentesque ornare sem lacinia quam.</div>
153
+ <div class="col margin-left-sm">
154
+ <input type="checkbox" class="input input-switch" />
155
+ </div>
156
+ </div>
157
+ </div>
158
+ ```html
159
+ <input type="checkbox" class="input input-switch" />
160
+ ```
161
+
162
+ ---
163
+
164
+ ## Secondary Checkbox Switches
165
+ <p class="text-light margin-bottom-md">Useful when you don't need to draw attention to the bright-red, off state.</p>
166
+
167
+ <div class="box box-xs margin-bottom-sm padding-top-md padding-bottom-md padding-left-sm padding-right-sm padding-left-x1-lg padding-right-x1-lg">
168
+ <div class="col-container-nowrap">
169
+ <div class="components-checkboxes-switch-col col col-100 text-light text-overflow-ellipsis">Praesent commodo cursus magna, vel scelerisque aenean eu leo quam pellentesque ornare sem lacinia quam.</div>
170
+ <div class="col margin-left-sm">
171
+ <input type="checkbox" class="input input-switch-secondary" checked />
172
+ </div>
173
+ </div>
174
+ </div>
175
+ <div class="box-secondary box-xs padding-top-md padding-bottom-md padding-left-sm padding-right-sm padding-left-x1-lg padding-right-x1-lg">
176
+ <div class="col-container-nowrap">
177
+ <div class="components-checkboxes-switch-col col col-100 text-light text-overflow-ellipsis">Praesent commodo cursus magna, vel scelerisque aenean eu leo quam pellentesque ornare sem lacinia quam.</div>
178
+ <div class="col margin-left-sm">
179
+ <input type="checkbox" class="input input-switch-secondary" />
180
+ </div>
181
+ </div>
182
+ </div>
183
+ ```html
184
+ <input type="checkbox" class="input input-switch" />
185
+ ```
186
+
187
+ ---
188
+
189
+ ## Small Checkbox Switches
190
+ <p class="text-light margin-bottom-md">Useful when you want to show checkboxes inline next to a text label.</p>
191
+ <div>
192
+ <input id="small-switch-off" type="checkbox" class="input input-switch input-switch-sm align-middle" />
193
+ <label for="small-switch-off" class="text-sm text-light margin-left-xxs medium margin-right-md">Checkbox Switch Off</label>
194
+
195
+ <input id="small-switch-on" type="checkbox" class="input input-switch input-switch-sm align-middle" checked />
196
+ <label for="small-switch-on" class="text-sm text-light margin-left-xxs medium">Checkbox Switch On</label>
197
+ </div>
198
+ ```html
199
+ <input type="checkbox" class="input input-switch input-switch-sm" />
200
+ ```
@@ -31,23 +31,6 @@ title: Shipyard Forms
31
31
  </select>
32
32
  </div>
33
33
  </div>
34
- <div class="input-group">
35
- <h2>Switches</h2>
36
- <div class="col-container margin-top-xs">
37
- <div class="col col-20">
38
- <label class="label">Medium Switches</label>
39
- <button class="input-switch-md"></button>
40
- <button class="input-switch-md input-switch-true"></button>
41
- <button class="input-switch-md input-switch-false"></button>
42
- </div>
43
- <div class="col col-20">
44
- <label class="label">Small Switches</label>
45
- <button class="input-switch-sm"></button>
46
- <button class="input-switch-sm input-switch-true"></button>
47
- <button class="input-switch-sm input-switch-false"></button>
48
- </div>
49
- </div>
50
- </div>
51
34
 
52
35
  <hr />
53
36
 
@@ -0,0 +1,75 @@
1
+ ---
2
+ title: Horizontal Rules
3
+ description: Shipyard doesn't make any assumptions on how you want to common tags like an `hr` to styled. As a result, we would recommend extending the `.hr` class in your own SASS files to achieve the results below on all `hr` tags (e.g. `@extend .hr`).
4
+ text_sizes: [xxs, xs, sm, md, lg, xl, xxl, xxxl]
5
+ text_shades: [normal, light, lighter, lightest]
6
+ ---
7
+
8
+ {% include page-heading.html page=page %}
9
+
10
+ {% note :warning %}
11
+ <p markdown="1">
12
+ Please note that the code examples below are **not possible** without `hr { @extend .hr }` somewhere in your application's sass files. If you haven't done this, then you'll need to include the `.hr` class on every horizontal rule.
13
+ </p>
14
+ {% endnote %}
15
+
16
+ ---
17
+
18
+ ## Default Horizontal Rules
19
+ <div class="utilities-typography-hr-box-default">
20
+ <hr class="utilities-typography-hr" />
21
+ </div>
22
+ <div class="utilities-typography-hr-box-dark">
23
+ <hr class="utilities-typography-hr" />
24
+ </div>
25
+ <div class="utilities-typography-hr-box-light">
26
+ <hr class="utilities-typography-hr" />
27
+ </div>
28
+
29
+ ```html
30
+ <hr />
31
+ ```
32
+
33
+ ---
34
+
35
+ ## Thin Horizontal Rules `.hr-thin`
36
+ {: .margin-bottom-md }
37
+
38
+ <div class="utilities-typography-hr-box-default">
39
+ <hr class="utilities-typography-hr hr-thin" />
40
+ </div>
41
+ <div class="utilities-typography-hr-box-dark">
42
+ <hr class="utilities-typography-hr hr-thin" />
43
+ </div>
44
+ <div class="utilities-typography-hr-box-light">
45
+ <hr class="utilities-typography-hr hr-thin" />
46
+ </div>
47
+
48
+ ```html
49
+ <hr class="hr-thin" />
50
+ ```
51
+
52
+ ---
53
+
54
+ ## Dark Horizontal Rules
55
+ <p class="text-light margin-bottom-md" markdown="1">Useful when you have a horizontal rule on a darker background.</p>
56
+
57
+ <div class="utilities-typography-hr-box-dark">
58
+ <hr class="utilities-typography-hr hr-dark" />
59
+ </div>
60
+ ```html
61
+ <hr class="hr-dark" />
62
+ ```
63
+
64
+ ---
65
+
66
+ ## Light Horizontal Rules
67
+ <p class="text-light margin-bottom-md" markdown="1">Useful when you have a horizontal rule on a lighter background.</p>
68
+
69
+ <div class="utilities-typography-hr-box-light">
70
+ <hr class="utilities-typography-hr hr-light" />
71
+ </div>
72
+
73
+ ```html
74
+ <hr class="hr-light" />
75
+ ```
@@ -81,15 +81,15 @@ description: Shipyard comes with several default icons that you're welcome to us
81
81
  ---
82
82
 
83
83
  ### Centered Icons
84
- <p class="text-light margin-bottom-md" markdown="1">One of the most common problems when using an icon is that doesn't line up with the text content next to it. Don't worry though, we've got you covered — simply apply the `.icon-center` class to any icon to fix this issue.</p>
84
+ <p class="text-light margin-bottom-md" markdown="1">One of the most common problems when using an icon is that doesn't line up with the text content next to it. Don't worry though, we've got you covered — simply apply the `.align-middle` class to any icon to fix this issue.</p>
85
85
 
86
86
  <div class="margin-bottom-lg">
87
- <button class="btn btn-secondary">{% icon :plus, class: 'icon-center icon-sm margin-right-xxs' %} Create</button>
87
+ <button class="btn btn-secondary">{% icon :plus, class: 'align-middle icon-sm margin-right-xxs' %} Create</button>
88
88
  </div>
89
89
 
90
90
  ```erb
91
91
  <button class="btn btn-secondary">
92
- <%= icon :plus, class: 'icon-center icon-sm' %>
92
+ <%= icon :plus, class: 'align-middle icon-sm' %>
93
93
  Create
94
94
  </button>
95
95
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: Shipyard Components
3
- components: [Boxes, Buttons, Empty States, Alerts, Notes, Forms, Radio Buttons, Checkboxes, Icons, Modals, Tooltips, Code, Tables]
3
+ components: [Boxes, Buttons, Empty States, Alerts, Notes, Forms, Radio Buttons, Checkboxes, Icons, Modals, Tooltips, Code, Tables, Horizontal Rules]
4
4
  ---
5
5
 
6
6
  {% include page-heading.html page=page %}
@@ -90,7 +90,7 @@
90
90
  </div>
91
91
  <div class="col align-right">
92
92
  <span class="btn-sm btn-x1-md white-space-nowrap padding-none">
93
- {% icon :lock, class: 'green-dark icon-center margin-right-xxs' %}
93
+ {% icon :lock, class: 'green-dark align-middle margin-right-xxs' %}
94
94
  <span class="text-sm text-lighter medium">Secure Server</span>
95
95
  </span>
96
96
  </div>
@@ -70,7 +70,7 @@ title: Shipyard Modal Example
70
70
  </div>
71
71
  <div class="col align-right">
72
72
  <span class="btn-sm btn-x1-md white-space-nowrap padding-none">
73
- {% icon :lock, class: 'green-dark icon-center margin-right-xxs' %}
73
+ {% icon :lock, class: 'green-dark align-middle margin-right-xxs' %}
74
74
  <span class="text-sm text-lighter medium">Secure Server</span>
75
75
  </span>
76
76
  </div>
@@ -1,51 +1,32 @@
1
1
  ---
2
2
  title: Shipyard Modal Example
3
3
  answers:
4
- - We're happy with Codeship, but we don't need it anymore.
5
- - We've chosen another CI/CD provider.
6
- - Codeship is too expensive for our needs.
7
- - Codeship is missing a feature that we needed.
8
- - We're unsatisfied with our experience.
4
+ - I'd like to continue using Codeship on the free plan.
5
+ - I will no longer be using Codeship.
9
6
  ---
10
7
 
11
8
  {% include page-heading.html page=page %}
12
9
 
13
10
  <div class="modal-container" modal="example-small">
14
11
  <div class="modal modal-sm modal-billing" role="dialog">
15
- <div class="alert alert-success margin-bottom-none rounded-top medium text-sm">
16
- We'd like to offer you
17
- <span class="modal-downgrade-coupon code-inline strong"><span class="modal-downgrade-tag bg-green-dark margin-right-none rounded-left">{% icon :tag, class: 'icon-center modal-downgrade-tag-icon' %}</span><span class="modal-downgrade-coupon-txt">50% OFF</span></span>
18
- one month if you decide to stay.
19
- <button class="alert-cta btn btn-cta btn-sm" modal-close>Apply Discount</button>
20
- </div>
21
- <div class="modal-content rounded-0">
22
- <div class="modal-title">
23
- <h1 class="text-lg text-x1-xl">Codeship Basic Downgrade</h1>
24
- </div>
12
+ <div class="modal-content">
13
+ <h1 class="modal-title text-lg text-x1-xl">Codeship Basic Downgrade</h1>
25
14
  <p class="text-light margin-bottom-md">
26
- We'd appreciate it if you would take a moment to share your thoughts
27
- and experience on why Codeship wasn't a good fit for your team.
15
+ Our mission is to ensure that Codeship enables all users to be successful with their projects. The best way to do this is through continuous feedback. Before we process your request, please let us know why you're canceling your current Codeship Basic plan.
28
16
  </p>
29
17
  <form>
30
18
  <ul class="input-list">
31
19
  {% for answer in page.answers %}
32
20
  <li class="input-item">
33
- <input id="checkbox-{{ forloop.index }}" name="checkbox-name" type="checkbox" class="input input-checkbox" />
34
- <label for="checkbox-{{ forloop.index }}" class="input-label">{{ answer }}</label>
21
+ <input id="radio-{{ forloop.index }}" name="radio-name" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
22
+ <label for="radio-{{ forloop.index }}" class="input-label">{{ answer }}</label>
35
23
  </li>
36
24
  {% endfor %}
37
25
  </ul>
38
- <div class="input-group">
39
- <label class="label">Please provide additional details:</label>
40
- <textarea class="input input-text input-full input-lg" placeholder="How could we have made your experience better?"></textarea>
41
- </div>
42
26
  </form>
43
27
  </div>
44
28
  <div class="modal-ctas">
45
- <button class="btn btn-caution btn-sm btn-x1-md margin-right-xxs margin-right-x1-xs" modal-close>
46
- <span class="display-none display-x1-inline">Confirm</span> Downgrade
47
- </button>
48
- <button class="btn btn-cta btn-sm btn-x1-md margin-right-xxs margin-right-x1-xs" modal-close>Apply Discount</button>
29
+ <a href="{{ site.baseurl }}/components/modals/example-survey" class="btn btn-primary btn-sm btn-x1-md margin-right-xxs margin-right-x1-xs" modal-close>Continue</a>
49
30
  <button class="btn btn-secondary btn-sm btn-x1-md" modal-close>Cancel</button>
50
31
  </div>
51
32
  </div>
@@ -0,0 +1,52 @@
1
+ ---
2
+ title: Shipyard Modal Example
3
+ answers:
4
+ - We're happy with Codeship, but we don't need it anymore.
5
+ - We've chosen another CI/CD provider.
6
+ - Codeship is too expensive for our needs.
7
+ - Codeship is missing a feature that we needed.
8
+ - We're unsatisfied with our experience.
9
+ ---
10
+
11
+ {% include page-heading.html page=page %}
12
+
13
+ <div class="modal-container" modal="example-small">
14
+ <div class="modal modal-sm modal-billing" role="dialog">
15
+ <div class="alert alert-success margin-bottom-none rounded-top medium text-sm">
16
+ We'd like to offer you
17
+ <span class="modal-downgrade-coupon code-inline strong"><span class="modal-downgrade-tag bg-green-dark margin-right-none rounded-left">{% icon :tag, class: 'align-middle modal-downgrade-tag-icon' %}</span><span class="modal-downgrade-coupon-txt">50% OFF</span></span>
18
+ one month if you decide to stay.
19
+ <button class="alert-cta btn btn-cta btn-sm" modal-close>Apply Discount</button>
20
+ </div>
21
+ <div class="modal-content rounded-0">
22
+ <div class="modal-title">
23
+ <h1 class="text-lg text-x1-xl">Codeship Basic Downgrade</h1>
24
+ </div>
25
+ <p class="text-light margin-bottom-md">
26
+ We'd appreciate it if you would take a moment to share your thoughts
27
+ and experience on why Codeship wasn't a good fit for your team.
28
+ </p>
29
+ <form>
30
+ <ul class="input-list">
31
+ {% for answer in page.answers %}
32
+ <li class="input-item">
33
+ <input id="checkbox-{{ forloop.index }}" name="checkbox-name" type="checkbox" class="input input-checkbox" />
34
+ <label for="checkbox-{{ forloop.index }}" class="input-label">{{ answer }}</label>
35
+ </li>
36
+ {% endfor %}
37
+ </ul>
38
+ <div class="input-group">
39
+ <label class="label">Please provide additional details:</label>
40
+ <textarea class="input input-text input-full input-lg" placeholder="How could we have made your experience better?"></textarea>
41
+ </div>
42
+ </form>
43
+ </div>
44
+ <div class="modal-ctas">
45
+ <button class="btn btn-caution btn-sm btn-x1-md margin-right-xxs margin-right-x1-xs" modal-close>
46
+ <span class="display-none display-x1-inline">Confirm</span> Downgrade
47
+ </button>
48
+ <button class="btn btn-cta btn-sm btn-x1-md margin-right-xxs margin-right-x1-xs" modal-close>Apply Discount</button>
49
+ <button class="btn btn-secondary btn-sm btn-x1-md" modal-close>Cancel</button>
50
+ </div>
51
+ </div>
52
+ </div>
@@ -12,21 +12,21 @@ labels:
12
12
 
13
13
  ---
14
14
 
15
- ## Default Radio-Button Lists
16
- <p class="text-light margin-bottom-md">Useful when you want to group a series of radio buttons together in a list (stacked by default).</p>
15
+ ## Inline Radio-Button Lists
16
+ <p class="text-light margin-bottom-md">Useful when you want to group a series of radio buttons together on a single line.</p>
17
17
 
18
- <ul class="input-list">
18
+ <ul class="input-list margin-bottom-lg">
19
19
  {% for label in page.labels %}
20
- <li class="input-item">
21
- <input id="radio-default-{{ forloop.index }}" name="radio-list" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
22
- <label for="radio-default-{{ forloop.index }}" class="input-label">{{ label }}</label>
20
+ <li class="input-item-inline">
21
+ <input id="radio-inline-{{ forloop.index }}" name="radio-list" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
22
+ <label for="radio-inline-{{ forloop.index }}" class="input-label">Inline Label</label>
23
23
  </li>
24
24
  {% endfor %}
25
25
  </ul>
26
26
 
27
27
  ```html
28
28
  <ul class="input-list">
29
- <li class="input-item">
29
+ <li class="input-item-inline">
30
30
  <input id="radio-id" name="radio-name" type="radio" class="input input-radio" checked />
31
31
  <label for="radio-id" class="input-label">Radio Button Label</label>
32
32
  </li>
@@ -35,21 +35,39 @@ labels:
35
35
 
36
36
  ---
37
37
 
38
- ## Inline Radio-Button Lists
39
- <p class="text-light margin-bottom-md">Useful when you want to group a series of radio buttons together on a single line.</p>
38
+ ## Stacked Radio-Button Lists
39
+ <p class="text-light margin-bottom-md">Useful when you want to group a series of radio buttons together in a list (stacked by default).</p>
40
40
 
41
- <ul class="input-list">
42
- {% for label in page.labels %}
43
- <li class="input-item-inline">
44
- <input id="radio-inline-{{ forloop.index }}" name="radio-list" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
45
- <label for="radio-inline-{{ forloop.index }}" class="input-label">Inline Label</label>
46
- </li>
47
- {% endfor %}
48
- </ul>
41
+ <div class="col-container margin-bottom-sm margin-bottom-x1-lg">
42
+ <div class="col col-100 col-x1-50 margin-bottom-sm margin-bottom-x1-none">
43
+ <div class="rounded bg-white box-padding">
44
+ <ul class="input-list">
45
+ {% for label in page.labels %}
46
+ <li class="input-item">
47
+ <input id="radio-light-{{ forloop.index }}" name="radio-light-list" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
48
+ <label for="radio-light-{{ forloop.index }}" class="input-label">{{ label }}</label>
49
+ </li>
50
+ {% endfor %}
51
+ </ul>
52
+ </div>
53
+ </div>
54
+ <div class="col col-100 col-x1-50">
55
+ <div class="box-secondary box-padding">
56
+ <ul class="input-list">
57
+ {% for label in page.labels %}
58
+ <li class="input-item">
59
+ <input id="radio-dark-{{ forloop.index }}" name="radio-dark-list" type="radio" class="input input-radio" {% if forloop.index == 1 %}checked{% endif %} />
60
+ <label for="radio-dark-{{ forloop.index }}" class="input-label">{{ label }}</label>
61
+ </li>
62
+ {% endfor %}
63
+ </ul>
64
+ </div>
65
+ </div>
66
+ </div>
49
67
 
50
68
  ```html
51
69
  <ul class="input-list">
52
- <li class="input-item-inline">
70
+ <li class="input-item">
53
71
  <input id="radio-id" name="radio-name" type="radio" class="input input-radio" checked />
54
72
  <label for="radio-id" class="input-label">Radio Button Label</label>
55
73
  </li>
@@ -41,7 +41,7 @@ text_shades: [normal, light, lighter, lightest]
41
41
  </div>
42
42
  </div>
43
43
 
44
- <hr />
44
+ ---
45
45
 
46
46
  <div class="col-container">
47
47
  <div class="col">
@@ -67,59 +67,3 @@ text_shades: [normal, light, lighter, lightest]
67
67
  </div>
68
68
  </div>
69
69
  </div>
70
-
71
- ---
72
-
73
- ## Horizontal Rules
74
- <p class="text-light margin-bottom-md" markdown="1">Shipyard doesn't make any assumptions on how you want to common tags like an `hr` to styled. As a result, we would recommend extending the `.hr` class in your own SASS files to achieve the results below on all `hr` tags (e.g. `@extend .hr`).</p>
75
-
76
- <div class="utilities-typography-hr-box-default">
77
- <hr class="utilities-typography-hr" />
78
- </div>
79
- <div class="utilities-typography-hr-box-dark">
80
- <hr class="utilities-typography-hr hr-dark" />
81
- </div>
82
- <div class="utilities-typography-hr-box-light">
83
- <hr class="utilities-typography-hr hr-light" />
84
- </div>
85
-
86
- {% note :warning %}
87
- <p markdown="1">
88
- Please note that the code examples below are **not possible** without `hr { @extend .hr }` somewhere in your application's sass files. If you haven't done this, then you'll need to include the `.hr` class on every horizontal rule.
89
- </p>
90
- {% endnote %}
91
-
92
- ```html
93
- <hr />
94
-
95
- <!-- Useful on darker backgrounds. -->
96
- <hr class="hr-dark" />
97
-
98
- <!-- Useful on lighter backgrounds. -->
99
- <hr class="hr-light" />
100
- ```
101
-
102
- ---
103
-
104
- ## Thin Horizontal Rules `.hr-thin`
105
- {: .margin-bottom-md }
106
-
107
- <div class="utilities-typography-hr-box-default">
108
- <hr class="utilities-typography-hr hr-thin" />
109
- </div>
110
- <div class="utilities-typography-hr-box-dark">
111
- <hr class="utilities-typography-hr hr-dark hr-thin" />
112
- </div>
113
- <div class="utilities-typography-hr-box-light">
114
- <hr class="utilities-typography-hr hr-light hr-thin" />
115
- </div>
116
-
117
- ```html
118
- <hr class="hr-thin" />
119
-
120
- <!-- Useful on darker backgrounds. -->
121
- <hr class="hr-thin hr-dark" />
122
-
123
- <!-- Useful on lighter backgrounds. -->
124
- <hr class="hr-thin hr-light" />
125
- ```
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shipyard-framework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.69
4
+ version: 0.5.70
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codeship
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-14 00:00:00.000000000 Z
11
+ date: 2017-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionview
@@ -220,6 +220,7 @@ files:
220
220
  - assets/stylesheets/shipyard/components/_hamburger.sass
221
221
  - assets/stylesheets/shipyard/components/_header.sass
222
222
  - assets/stylesheets/shipyard/components/_hero.sass
223
+ - assets/stylesheets/shipyard/components/_horizontal-rules.sass
223
224
  - assets/stylesheets/shipyard/components/_icons.sass
224
225
  - assets/stylesheets/shipyard/components/_input-radio-checkbox.sass
225
226
  - assets/stylesheets/shipyard/components/_input-switch.sass
@@ -316,12 +317,14 @@ files:
316
317
  - styleguide/components/code.html
317
318
  - styleguide/components/empty-states.html
318
319
  - styleguide/components/forms.html
320
+ - styleguide/components/horizontal-rules.md
319
321
  - styleguide/components/icons.md
320
322
  - styleguide/components/index.md
321
323
  - styleguide/components/modals/_modal.html
322
324
  - styleguide/components/modals/example-billing.html
323
325
  - styleguide/components/modals/example-downgrade.html
324
326
  - styleguide/components/modals/example-small.html
327
+ - styleguide/components/modals/example-survey.html
325
328
  - styleguide/components/modals/example-tall.html
326
329
  - styleguide/components/modals/index.md
327
330
  - styleguide/components/notes.md