reimagine2 2.0.28

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +29 -0
  3. data/Gemfile +20 -0
  4. data/Gemfile.lock +199 -0
  5. data/LICENSE +20 -0
  6. data/Procfile +1 -0
  7. data/README.md +28 -0
  8. data/Rakefile +42 -0
  9. data/app/assets/fonts/reimagine2/proxima/proximanova-bold.ttf +0 -0
  10. data/app/assets/fonts/reimagine2/proxima/proximanova-bold.woff +0 -0
  11. data/app/assets/fonts/reimagine2/proxima/proximanova-boldit.ttf +0 -0
  12. data/app/assets/fonts/reimagine2/proxima/proximanova-boldit.woff +0 -0
  13. data/app/assets/fonts/reimagine2/proxima/proximanova-regular.ttf +0 -0
  14. data/app/assets/fonts/reimagine2/proxima/proximanova-regular.woff +0 -0
  15. data/app/assets/fonts/reimagine2/proxima/proximanova-regularit.ttf +0 -0
  16. data/app/assets/fonts/reimagine2/proxima/proximanova-regularit.woff +0 -0
  17. data/app/assets/fonts/reimagine2/ss-social/ss-social-circle.eot +0 -0
  18. data/app/assets/fonts/reimagine2/ss-social/ss-social-circle.svg +151 -0
  19. data/app/assets/fonts/reimagine2/ss-social/ss-social-circle.ttf +0 -0
  20. data/app/assets/fonts/reimagine2/ss-social/ss-social-circle.woff +0 -0
  21. data/app/assets/fonts/reimagine2/ss-social/ss-social-regular.eot +0 -0
  22. data/app/assets/fonts/reimagine2/ss-social/ss-social-regular.svg +142 -0
  23. data/app/assets/fonts/reimagine2/ss-social/ss-social-regular.ttf +0 -0
  24. data/app/assets/fonts/reimagine2/ss-social/ss-social-regular.woff +0 -0
  25. data/app/assets/fonts/reimagine2/ss-standard/ss-standard.eot +0 -0
  26. data/app/assets/fonts/reimagine2/ss-standard/ss-standard.svg +316 -0
  27. data/app/assets/fonts/reimagine2/ss-standard/ss-standard.ttf +0 -0
  28. data/app/assets/fonts/reimagine2/ss-standard/ss-standard.woff +0 -0
  29. data/app/assets/images/reimagine2/favicon.ico +0 -0
  30. data/app/assets/javascripts/reimagine2.js +6 -0
  31. data/app/assets/javascripts/reimagine2/accessible_custom_select.coffee +43 -0
  32. data/app/assets/javascripts/reimagine2/base.coffee +6 -0
  33. data/app/assets/javascripts/reimagine2/foundation.js +3 -0
  34. data/app/assets/stylesheets/reimagine2.css.sass +15 -0
  35. data/app/assets/stylesheets/reimagine2/_challengepost.sass +4 -0
  36. data/app/assets/stylesheets/reimagine2/_components.sass +1 -0
  37. data/app/assets/stylesheets/reimagine2/_config.sass +1 -0
  38. data/app/assets/stylesheets/reimagine2/_export.sass +7 -0
  39. data/app/assets/stylesheets/reimagine2/_fonts.sass +4 -0
  40. data/app/assets/stylesheets/reimagine2/_foundation.sass +10 -0
  41. data/app/assets/stylesheets/reimagine2/_foundation_and_overrides.sass +2 -0
  42. data/app/assets/stylesheets/reimagine2/_helpers.sass +4 -0
  43. data/app/assets/stylesheets/reimagine2/_ie.sass +3 -0
  44. data/app/assets/stylesheets/reimagine2/challengepost/_footer.sass +22 -0
  45. data/app/assets/stylesheets/reimagine2/challengepost/_simple_form.sass +34 -0
  46. data/app/assets/stylesheets/reimagine2/components/.keep +0 -0
  47. data/app/assets/stylesheets/reimagine2/components/_tabs.sass +57 -0
  48. data/app/assets/stylesheets/reimagine2/config/_challengepost_config.sass +23 -0
  49. data/app/assets/stylesheets/reimagine2/config/_colors.sass +5 -0
  50. data/app/assets/stylesheets/reimagine2/fonts/proxima/_proxima.css.scss +61 -0
  51. data/app/assets/stylesheets/reimagine2/fonts/symbolset/_ss-social.css.scss +61 -0
  52. data/app/assets/stylesheets/reimagine2/fonts/symbolset/_ss-standard.css.scss +51 -0
  53. data/app/assets/stylesheets/reimagine2/foundation/_build.scss +56 -0
  54. data/app/assets/stylesheets/reimagine2/foundation/_config.sass +3 -0
  55. data/app/assets/stylesheets/reimagine2/foundation/_extensions.sass +9 -0
  56. data/app/assets/stylesheets/reimagine2/foundation/_foundation_config.scss +1303 -0
  57. data/app/assets/stylesheets/reimagine2/foundation/extensions/_accessible_custom_select.sass +18 -0
  58. data/app/assets/stylesheets/reimagine2/foundation/extensions/_block_grid.sass +3 -0
  59. data/app/assets/stylesheets/reimagine2/foundation/extensions/_buttons.sass +39 -0
  60. data/app/assets/stylesheets/reimagine2/foundation/extensions/_custom_forms.sass +2 -0
  61. data/app/assets/stylesheets/reimagine2/foundation/extensions/_forms.sass +38 -0
  62. data/app/assets/stylesheets/reimagine2/foundation/extensions/_global.sass +2 -0
  63. data/app/assets/stylesheets/reimagine2/foundation/extensions/_inline_list.sass +7 -0
  64. data/app/assets/stylesheets/reimagine2/foundation/extensions/_pricing_table.sass +6 -0
  65. data/app/assets/stylesheets/reimagine2/foundation/extensions/_type.sass +18 -0
  66. data/app/assets/stylesheets/reimagine2/helpers/_block_wrapper_link.sass +16 -0
  67. data/app/assets/stylesheets/reimagine2/helpers/_cleafix.sass +2 -0
  68. data/app/assets/stylesheets/reimagine2/helpers/_effects.sass +5 -0
  69. data/app/assets/stylesheets/reimagine2/helpers/_text.sass +23 -0
  70. data/app/assets/stylesheets/reimagine2/helpers/_visibility.sass +42 -0
  71. data/app/assets/stylesheets/reimagine2/ie/_grid.sass +7 -0
  72. data/app/assets/stylesheets/reimagine2/ie/_visibility.sass +124 -0
  73. data/app/assets/stylesheets/reimagine2/mixins/_bold.sass +5 -0
  74. data/app/assets/stylesheets/reimagine2/reimagine1/_reset_row.sass +3 -0
  75. data/app/views/layout/reimagine2/_typekit.html.erb +2 -0
  76. data/app/views/reimagine2/_accessible_custom_select.html.erb +23 -0
  77. data/app/views/reimagine2/_twelve_columns.html.erb +5 -0
  78. data/app/views/reimagine2/challengepost/_footer.html.erb +38 -0
  79. data/lib/reimagine2.rb +1 -0
  80. data/lib/reimagine2/engine.rb +8 -0
  81. data/lib/reimagine2/version.rb +3 -0
  82. data/reimagine2.gemspec +34 -0
  83. data/spec/acceptance/acceptance_helper.rb +4 -0
  84. data/spec/acceptance/reimagine2_integration_spec.rb +29 -0
  85. data/spec/acceptance/shared_views_spec.rb +9 -0
  86. data/spec/dummy/Rakefile +7 -0
  87. data/spec/dummy/app/assets/javascripts/application.js +0 -0
  88. data/spec/dummy/app/assets/stylesheets/application.css +9 -0
  89. data/spec/dummy/app/assets/stylesheets/reimagine2/_foundation_and_overrides.sass +1 -0
  90. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  91. data/spec/dummy/app/controllers/shared_views_controller.rb +5 -0
  92. data/spec/dummy/app/views/application/buttons.html.erb +113 -0
  93. data/spec/dummy/app/views/application/forms.html.erb +22 -0
  94. data/spec/dummy/app/views/application/show.html.erb +207 -0
  95. data/spec/dummy/app/views/application/tabs.html.erb +22 -0
  96. data/spec/dummy/app/views/application/type.html.erb +119 -0
  97. data/spec/dummy/app/views/layouts/application.html.erb +34 -0
  98. data/spec/dummy/app/views/shared_views/large_12.html.erb +3 -0
  99. data/spec/dummy/config.ru +4 -0
  100. data/spec/dummy/config/application.rb +48 -0
  101. data/spec/dummy/config/boot.rb +10 -0
  102. data/spec/dummy/config/environment.rb +5 -0
  103. data/spec/dummy/config/environments/development.rb +29 -0
  104. data/spec/dummy/config/environments/test.rb +33 -0
  105. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  106. data/spec/dummy/config/initializers/session_store.rb +8 -0
  107. data/spec/dummy/config/routes.rb +9 -0
  108. data/spec/dummy/log/.gitkeep +0 -0
  109. data/spec/dummy/public/doc1.html +2870 -0
  110. data/spec/dummy/public/doc2.html +707 -0
  111. data/spec/dummy/script/rails +6 -0
  112. data/spec/spec_helper.rb +34 -0
  113. data/vendor/assets/stylesheets/_normalize.scss +402 -0
  114. metadata +339 -0
@@ -0,0 +1,18 @@
1
+ .accessible-dropdown
2
+ position: relative
3
+ overflow: hidden
4
+
5
+ .accessible-dropdown-ready
6
+ position: absolute
7
+ top: 0
8
+ left: 0
9
+ bottom: 0
10
+ right: 0
11
+ display: block
12
+ +appearance(none)
13
+
14
+ outline: auto
15
+
16
+ &.focus
17
+ .accessible-dropdown-label
18
+ border: 1px solid black
@@ -0,0 +1,3 @@
1
+ [class*="block-grid-"]
2
+ &>li
3
+ list-style: none
@@ -0,0 +1,39 @@
1
+ // Customization of foundation's buttons.
2
+ // They can not be done directly with configuration variables.
3
+ // Instead of a flag background color, we use a sublte gradient
4
+ // The colors are based on the $primary-color
5
+ $light-primary: lighten($primary-color, $button-function-factor)
6
+ $dark-primary: darken($primary-color, $button-function-factor)
7
+ $light-secondary: lighten($secondary-color, $button-function-factor)
8
+ $dark-secondary: darken($secondary-color, $button-function-factor)
9
+
10
+ button, .button
11
+ @include background(linear-gradient($primary-color, $dark-primary))
12
+ box-shadow: none
13
+
14
+ &:active, &:focus, &:hover
15
+ @include background(linear-gradient($light-primary, $primary-color))
16
+
17
+ // custom mix of inline and pre/post fix classes so the button
18
+ // does not take full width but still has the same height as form elements
19
+ &.inline-prefix,
20
+ &.inline-postfix
21
+ @include button-size
22
+ @include prefix-postfix-base
23
+ width: auto
24
+
25
+ &:disabled,
26
+ &.disabled,
27
+ &[disabled=disabled]
28
+ background-image: none
29
+ @include button-style(#bfbfbf, $disabled:true)
30
+
31
+ &.secondary
32
+ @include background(linear-gradient($secondary-color, $dark-secondary))
33
+
34
+ &, &.disabled
35
+ color: #171717
36
+
37
+ &:active, &:focus, &:hover
38
+ color: #171717
39
+ @include background(linear-gradient($light-secondary, $secondary-color))
@@ -0,0 +1,2 @@
1
+ form.custom .custom.dropdown ul li
2
+ font-size: 1em
@@ -0,0 +1,38 @@
1
+ // sometimes we need non-labels to look
2
+ // like form labels
3
+ // eg: element that looks actionable in a form
4
+ // but is not directly linked to a form element
5
+ // like the "Advanced search" in cgov listing
6
+ // filters
7
+ .form-label
8
+ +form-label()
9
+
10
+ &.inline
11
+ +form-label(inline, false)
12
+ line-height: 1em
13
+
14
+ input[type="text"],
15
+ input[type="password"],
16
+ input[type="date"],
17
+ input[type="datetime"],
18
+ input[type="datetime-local"],
19
+ input[type="month"],
20
+ input[type="week"],
21
+ input[type="email"],
22
+ input[type="number"],
23
+ input[type="search"],
24
+ input[type="tel"],
25
+ input[type="time"],
26
+ input[type="url"],
27
+ textarea
28
+ &:hover
29
+ border-color: $input-focus-border-color
30
+
31
+ textarea
32
+ height: 6em
33
+
34
+ .form-actions-list
35
+ margin-left: -$column-gutter
36
+
37
+ a, input, button
38
+ margin-left: $column-gutter
@@ -0,0 +1,2 @@
1
+ a:focus, a:active
2
+ outline: auto
@@ -0,0 +1,7 @@
1
+ .inline-list
2
+ margin-left: $inline-list-default-float-margin
3
+ margin-top: $inline-list-default-float-margin
4
+
5
+ & > li
6
+ margin-left: -$inline-list-default-float-margin
7
+ margin-top: -$inline-list-default-float-margin
@@ -0,0 +1,6 @@
1
+ .pricing-table
2
+ & *
3
+ line-height: inherit
4
+
5
+ .title
6
+ border-bottom: 1px solid #ddd
@@ -0,0 +1,18 @@
1
+ @import 'reimagine2/mixins/bold'
2
+
3
+ // in our foundation build we set margin-left on lists
4
+ // (see $list-side-margin)
5
+ // We usually won't want that margin if we are not
6
+ // showing a bulleted list
7
+ ul.no-bullet
8
+ margin-left: 0
9
+
10
+ &.inline-list
11
+ margin-#{$default-float}: $inline-list-default-float-margin
12
+
13
+ // do not change font-size line-height etc.
14
+ strong, b, .bold
15
+ +bold
16
+
17
+ h5, h6
18
+ line-height: $header-line-height
@@ -0,0 +1,16 @@
1
+ //*
2
+ //
3
+ // Browsers and framework usually define colors to links that apply
4
+ // with more priority than the main text color.
5
+ // This ensures links use the text color of whichever elements they are
6
+ // a child, regardless of the link state.
7
+ //
8
+ a.block-wrapper-link
9
+ display: block
10
+ &, &:hover, &:active, &:visited, &:focus
11
+ color: inherit
12
+
13
+ a.fancy-hover
14
+ &:hover, &:active, &:focus
15
+ position: relative
16
+ box-shadow: 0 0 4px 1px rgba(0, 0, 0, .4), inset 0 0 0 5px $primary-color
@@ -0,0 +1,2 @@
1
+ .clearfix
2
+ @include clearfix
@@ -0,0 +1,5 @@
1
+ $transition-time: .2s
2
+
3
+ .fade
4
+ -webkit-transition: all $transition-time ease
5
+ transition: all $transition-time ease
@@ -0,0 +1,23 @@
1
+ .all-caps
2
+ letter-spacing: 2px
3
+ text-transform: uppercase
4
+ font-size: emCalc(14)
5
+
6
+ .text-content li
7
+ margin-bottom: 1em
8
+
9
+ .text-content article
10
+ padding-bottom: 2em
11
+
12
+ .visual-content li
13
+ // same as foundation's type.css reset
14
+ margin-bottom: 0
15
+
16
+ .content-section
17
+ padding-top: 2em
18
+ padding-bottom: 2em
19
+
20
+ // equivalent to <small> but to use on a <p> so
21
+ // the line height doesn't look strange on longer text
22
+ p.small
23
+ font-size: $small-font-size
@@ -0,0 +1,42 @@
1
+ .visually-hidden
2
+ border: 0
3
+ clip: rect(0 0 0 0)
4
+ height: 1px
5
+ margin: -1px
6
+ overflow: hidden
7
+ padding: 0
8
+ position: absolute
9
+ width: 1px
10
+
11
+ &.focusable
12
+ &:active, &:focus
13
+ clip: auto
14
+ height: auto
15
+ margin: 0
16
+ overflow: visible
17
+ position: static
18
+ width: auto
19
+
20
+ .invisible
21
+ visibility: hidden
22
+
23
+ /*
24
+ * Image replacement
25
+ */
26
+
27
+ .ir
28
+ background-color: transparent
29
+ border: 0
30
+ overflow: hidden
31
+ /* IE 6/7 fallback */
32
+ *text-indent: -9999px
33
+
34
+ .ir:before
35
+ content: ""
36
+ display: block
37
+ width: 0
38
+ height: 150%
39
+
40
+ .transparent
41
+ opacity: 0
42
+ filter: alpha(opacity = 0)
@@ -0,0 +1,7 @@
1
+ $include-html-grid-classes: false
2
+ @import "foundation/components/grid"
3
+ $include-html-grid-classes: true
4
+
5
+ @for $i from 1 through $total-columns
6
+ .large#{-$i}
7
+ @include grid-column($columns:$i,$collapse:null,$float:false)
@@ -0,0 +1,124 @@
1
+ .hide-for-small-up,
2
+ .show-for-small,
3
+ .show-for-small-down,
4
+ .hide-for-medium,
5
+ .hide-for-medium-up,
6
+ .hide-for-large,
7
+ .hide-for-large-up,
8
+ .hide-for-large-down,
9
+ .hide-for-xlarge-down,
10
+ .hide-for-xlarge,
11
+ .show-for-xlarge,
12
+ .show-for-xlarge-up,
13
+ .show-for-landscape,
14
+ .hide-for-portrait,
15
+ .show-for-touch
16
+ display: none !important
17
+
18
+ .hide-for-small,
19
+ .hide-for-small-down,
20
+ .show-for-small-up,
21
+ .show-for-medium,
22
+ .show-for-medium-up,
23
+ .show-for-medium-down,
24
+ .hide-for-medium-down,
25
+ .show-for-large,
26
+ .show-for-large-up,
27
+ .show-for-large-down,
28
+ .hide-for-xlarge-up,
29
+ .show-for-xlarge-down,
30
+ .show-for-portrait,
31
+ .hide-for-landscape,
32
+ .hide-for-touch
33
+ display: inherit !important
34
+
35
+ table
36
+ &.hide-for-small,
37
+ &.hide-for-small-down,
38
+ &.show-for-small-up,
39
+ &.show-for-medium,
40
+ &.show-for-medium-up,
41
+ &.show-for-medium-down,
42
+ &.hide-for-medium-down,
43
+ &.show-for-large,
44
+ &.show-for-large-up,
45
+ &.show-for-large-down,
46
+ &.hide-for-xlarge-up,
47
+ &.show-for-xlarge-down,
48
+ &.show-for-portrait,
49
+ &.hide-for-landscape,
50
+ &.hide-for-touch
51
+ display: table
52
+
53
+ thead
54
+ &.hide-for-small,
55
+ &.hide-for-small-down,
56
+ &.show-for-small-up,
57
+ &.show-for-medium,
58
+ &.show-for-medium-up,
59
+ &.show-for-medium-down,
60
+ &.hide-for-medium-down,
61
+ &.show-for-large,
62
+ &.show-for-large-up,
63
+ &.show-for-large-down,
64
+ &.hide-for-xlarge-up,
65
+ &.show-for-xlarge-down,
66
+ &.show-for-portrait,
67
+ &.hide-for-landscape,
68
+ &.hide-for-touch
69
+ display: table-header-group
70
+
71
+ tbody
72
+ &.hide-for-small,
73
+ &.hide-for-small-down,
74
+ &.show-for-small-up,
75
+ &.show-for-medium,
76
+ &.show-for-medium-up,
77
+ &.show-for-medium-down,
78
+ &.hide-for-medium-down,
79
+ &.show-for-large,
80
+ &.show-for-large-up,
81
+ &.show-for-large-down,
82
+ &.hide-for-xlarge-up,
83
+ &.show-for-xlarge-down,
84
+ &.show-for-portrait,
85
+ &.hide-for-landscape,
86
+ &.hide-for-touch
87
+ display: table-row-group !important
88
+
89
+ tr
90
+ &.hide-for-small,
91
+ &.hide-for-small-down,
92
+ &.show-for-small-up,
93
+ &.show-for-medium,
94
+ &.show-for-medium-up,
95
+ &.show-for-medium-down,
96
+ &.hide-for-medium-down,
97
+ &.show-for-large,
98
+ &.show-for-large-up,
99
+ &.show-for-large-down,
100
+ &.hide-for-xlarge-up,
101
+ &.show-for-xlarge-down,
102
+ &.show-for-portrait,
103
+ &.hide-for-landscape,
104
+ &.hide-for-touch
105
+ display: table-row !important
106
+
107
+ td,
108
+ tr
109
+ &.hide-for-small,
110
+ &.hide-for-small-down,
111
+ &.show-for-small-up,
112
+ &.show-for-medium,
113
+ &.show-for-medium-up,
114
+ &.show-for-medium-down,
115
+ &.hide-for-medium-down,
116
+ &.show-for-large,
117
+ &.show-for-large-up,
118
+ &.show-for-large-down,
119
+ &.hide-for-xlarge-up,
120
+ &.show-for-xlarge-down,
121
+ &.show-for-portrait,
122
+ &.hide-for-landscape,
123
+ &.hide-for-touch
124
+ display: table-cell !important
@@ -0,0 +1,5 @@
1
+ @mixin bold
2
+ font-family: $header-font-family
3
+ color: $header-font-color
4
+ font-weight: $header-font-weight
5
+ text-rendering: $header-text-rendering
@@ -0,0 +1,3 @@
1
+ .row
2
+ padding-top: 0
3
+ padding-bottom: 0
@@ -0,0 +1,2 @@
1
+ <script type="text/javascript" src="//use.typekit.net/fva1yzc.js"></script>
2
+ <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
@@ -0,0 +1,23 @@
1
+ <%
2
+ # Nice to have (if/when needed):
3
+ # add an optional "form_builder" option to
4
+ # and either create a `select_tag` or
5
+ # a `form_builder.select`
6
+
7
+ html_options = {
8
+ }.merge(html_options || {})
9
+
10
+ current_value ||= nil
11
+ %>
12
+
13
+ <%= content_tag :div do %>
14
+ <div class="accessible-dropdown">
15
+ <p class="accessible-dropdown-label hide">
16
+ <span href="#" class="current accessible-dropdown-value"></span>
17
+ <span href="#" class="selector"></span>
18
+ </p>
19
+ <%= select_tag select_field,
20
+ options_for_select(collection, current_value),
21
+ html_options %>
22
+ </div>
23
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <div class="row">
2
+ <div class="large-12 columns">
3
+ <%= yield %>
4
+ </div>
5
+ </div>
@@ -0,0 +1,38 @@
1
+ <footer id="challengepost-footer" class="content-section">
2
+ <div class="row">
3
+ <div class="large-9 columns">
4
+ <nav>
5
+ <ul id="site-footer-sitemap" class="inline-list all-caps bold">
6
+ <li><a href="http://challengepost.com/post?ref=post">Post challenges</a></li>
7
+ <li><a href="http://challengepost.com/jobs?ref=jobs">Jobs</a></li>
8
+ <li><a href="http://challengepost.com/press?ref=press">Press</a></li>
9
+ <li><a href="http://blog.challengepost.com/" target="_blank">Blog</a></li>
10
+ <li><a href="http://help.challengepost.com/" target="_blank">Help</a></li>
11
+ </ul>
12
+ </nav>
13
+
14
+ <nav>
15
+ <ul id="site-footer-legal" class="inline-list">
16
+ <li>
17
+ <a href="http://challengepost.com/">
18
+ <span class="copyright">
19
+ &copy; <%= Time.current.year %>
20
+ ChallengePost
21
+ </span>
22
+ </a>
23
+ </li>
24
+ <li><a href="http://challengepost.com/privacy">Privacy</a></li>
25
+ <li><a href="http://challengepost.com/terms">Terms</a></li>
26
+ <li><a href="http://nytm.org/made">Made in NYC</a></li>
27
+ </ul>
28
+ </nav>
29
+ </div>
30
+
31
+ <nav class="large-3 columns">
32
+ <ul id="site-footer-social" class="inline-list right ">
33
+ <li><a href="https://twitter.com/challengepost" target="_blank" class="ss-icon ss-social-circle ss-twitter"></a></li>
34
+ <li><a href="http://facebook.com/challengepost" target="_blank" class="ss-icon ss-social-circle ss-facebook"></a></li>
35
+ </ul>
36
+ </nav>
37
+ </div>
38
+ </footer>