krakenrails 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +29 -0
- data/Rakefile +1 -0
- data/app/assets/javascripts/kraken.js +60 -0
- data/app/assets/javascripts/readme.txt +4 -0
- data/app/assets/stylesheets/kraken.css +935 -0
- data/krakenrails.gemspec +24 -0
- data/lib/krakenrails/engine.rb +4 -0
- data/lib/krakenrails/version.rb +3 -0
- data/lib/krakenrails.rb +4 -0
- metadata +107 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2013 Jordan K. Burke
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# Krakenrails
|
2
|
+
|
3
|
+
TODO: Write a gem description
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add this line to your application's Gemfile:
|
8
|
+
|
9
|
+
gem 'krakenrails'
|
10
|
+
|
11
|
+
And then execute:
|
12
|
+
|
13
|
+
$ bundle
|
14
|
+
|
15
|
+
Or install it yourself as:
|
16
|
+
|
17
|
+
$ gem install krakenrails
|
18
|
+
|
19
|
+
## Usage
|
20
|
+
|
21
|
+
TODO: Write usage instructions here
|
22
|
+
|
23
|
+
## Contributing
|
24
|
+
|
25
|
+
1. Fork it
|
26
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
27
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
28
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
29
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
@@ -0,0 +1,60 @@
|
|
1
|
+
/* =============================================================
|
2
|
+
* ios-orientation-change-fix.js v1.0.0
|
3
|
+
* Fixes zoom on rotation bug in iOS.
|
4
|
+
* Script by @scottjehl, rebound by @wilto
|
5
|
+
* https://github.com/scottjehl/iOS-Orientationchange-Fix
|
6
|
+
* MIT / GPLv2 License
|
7
|
+
* ============================================================= */
|
8
|
+
|
9
|
+
(function(w){
|
10
|
+
|
11
|
+
// This fix addresses an iOS bug, so return early if the UA claims it's something else.
|
12
|
+
var ua = navigator.userAgent;
|
13
|
+
if( !( /iPhone|iPad|iPod/.test( navigator.platform ) && /OS [1-5]_[0-9_]* like Mac OS X/i.test(ua) && ua.indexOf( "AppleWebKit" ) > -1 ) ){
|
14
|
+
return;
|
15
|
+
}
|
16
|
+
|
17
|
+
var doc = w.document;
|
18
|
+
|
19
|
+
if( !doc.querySelector ){ return; }
|
20
|
+
|
21
|
+
var meta = doc.querySelector( "meta[name=viewport]" ),
|
22
|
+
initialContent = meta && meta.getAttribute( "content" ),
|
23
|
+
disabledZoom = initialContent + ",maximum-scale=1",
|
24
|
+
enabledZoom = initialContent + ",maximum-scale=10",
|
25
|
+
enabled = true,
|
26
|
+
x, y, z, aig;
|
27
|
+
|
28
|
+
if( !meta ){ return; }
|
29
|
+
|
30
|
+
function restoreZoom(){
|
31
|
+
meta.setAttribute( "content", enabledZoom );
|
32
|
+
enabled = true;
|
33
|
+
}
|
34
|
+
|
35
|
+
function disableZoom(){
|
36
|
+
meta.setAttribute( "content", disabledZoom );
|
37
|
+
enabled = false;
|
38
|
+
}
|
39
|
+
|
40
|
+
function checkTilt( e ){
|
41
|
+
aig = e.accelerationIncludingGravity;
|
42
|
+
x = Math.abs( aig.x );
|
43
|
+
y = Math.abs( aig.y );
|
44
|
+
z = Math.abs( aig.z );
|
45
|
+
|
46
|
+
// If portrait orientation and in one of the danger zones
|
47
|
+
if( (!w.orientation || w.orientation === 180) && ( x > 7 || ( ( z > 6 && y < 8 || z < 8 && y > 6 ) && x > 5 ) ) ){
|
48
|
+
if( enabled ){
|
49
|
+
disableZoom();
|
50
|
+
}
|
51
|
+
}
|
52
|
+
else if( !enabled ){
|
53
|
+
restoreZoom();
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
w.addEventListener( "orientationchange", restoreZoom, false );
|
58
|
+
w.addEventListener( "devicemotion", checkTilt, false );
|
59
|
+
|
60
|
+
})( this );
|
@@ -0,0 +1,935 @@
|
|
1
|
+
/*
|
2
|
+
|
3
|
+
KRAKEN.CSS
|
4
|
+
A lightweight front-end boilerplate by Chris Ferdinandi.
|
5
|
+
http://gomakethings.com
|
6
|
+
|
7
|
+
|
8
|
+
Licensed under WTFPL.
|
9
|
+
http://www.wtfpl.net/
|
10
|
+
|
11
|
+
|
12
|
+
COLORS
|
13
|
+
Blue: #0088cc
|
14
|
+
Dark Blue: #005580
|
15
|
+
Dark Gray: #272727
|
16
|
+
Meta Gray: #808080
|
17
|
+
Lite Gray: #e5e5e5
|
18
|
+
|
19
|
+
|
20
|
+
FONT STACKS
|
21
|
+
Serif: Georgia, Times, serif
|
22
|
+
Sans-Serif: "Helvetica Neue", Arial, sans-serif
|
23
|
+
Add your own here...
|
24
|
+
|
25
|
+
|
26
|
+
TYPOGRAPHIC SCALE
|
27
|
+
4px, 5px, 8px, 10px, 11px, 14px, 15px, 17px (base), 20px, 23px, 26px, 30px, 34px, 51px, 68px, 85px, 102px
|
28
|
+
|
29
|
+
|
30
|
+
*/
|
31
|
+
|
32
|
+
/* CSS RESET */
|
33
|
+
/* Meyer's CSS Reset, Normalized.css, and custom code */
|
34
|
+
|
35
|
+
/* Mobile Screen Resizing */
|
36
|
+
@-webkit-viewport { width: device-width; zoom: 1.0; }
|
37
|
+
@-moz-viewport { width: device-width; zoom: 1.0; }
|
38
|
+
@-ms-viewport { width: device-width; zoom: 1.0; }
|
39
|
+
@-o-viewport { width: device-width; zoom: 1.0; }
|
40
|
+
@viewport { width: device-width; zoom: 1.0; }
|
41
|
+
|
42
|
+
/* Remove browser defaults */
|
43
|
+
html, body, div, span, applet, object, iframe,
|
44
|
+
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
45
|
+
a, abbr, acronym, address, big, cite, code,
|
46
|
+
del, dfn, em, img, ins, kbd, q, s, samp,
|
47
|
+
small, strike, strong, sub, sup, tt, var,
|
48
|
+
b, u, i, center,
|
49
|
+
dl, dt, dd, ol, ul, li,
|
50
|
+
button, fieldset, form, label, legend,
|
51
|
+
table, caption, tbody, tfoot, thead, tr, th, td,
|
52
|
+
article, aside, canvas, details, embed,
|
53
|
+
figure, figcaption, footer, header, hgroup,
|
54
|
+
menu, nav, output, ruby, section, summary,
|
55
|
+
time, mark, audio, video {
|
56
|
+
margin: 0;
|
57
|
+
padding: 0;
|
58
|
+
border: 0;
|
59
|
+
font-family: "Helvetica Neue", Arial, sans-serif;
|
60
|
+
font-size: 100%;
|
61
|
+
font: inherit;
|
62
|
+
vertical-align: baseline;
|
63
|
+
}
|
64
|
+
|
65
|
+
/* Set display type for HTML5 semantic elements */
|
66
|
+
article, aside, details, figcaption, figure,
|
67
|
+
footer, header, hgroup, menu, nav, section {
|
68
|
+
display: block;
|
69
|
+
}
|
70
|
+
|
71
|
+
/* Force scrollbar display to prevent jumping on pages.
|
72
|
+
* Fix text resize bug on mobile devices. */
|
73
|
+
html {
|
74
|
+
overflow-y: scroll;
|
75
|
+
-webkit-text-size-adjust: 100%;
|
76
|
+
-ms-text-size-adjust: 100%;
|
77
|
+
}
|
78
|
+
|
79
|
+
/* Display audio, canvas, and video elements as inline block elements. */
|
80
|
+
audio, canvas, video {
|
81
|
+
display: inline-block;
|
82
|
+
*display: inline;
|
83
|
+
*zoom: 1;
|
84
|
+
}
|
85
|
+
|
86
|
+
/* Prevent modern browsers from displaying audio without controls. */
|
87
|
+
audio:not([controls]) {
|
88
|
+
display: none;
|
89
|
+
}
|
90
|
+
|
91
|
+
/* Prevent img and video elements from spilling
|
92
|
+
* outside of the page on smaller screens. */
|
93
|
+
img, video {
|
94
|
+
max-width: 100%;
|
95
|
+
height: auto;
|
96
|
+
}
|
97
|
+
|
98
|
+
/* Prevent iframe, object, and embed elements from
|
99
|
+
* spilling outside of the page on smaller screens. */
|
100
|
+
iframe, object, embed {
|
101
|
+
max-width: 100%;
|
102
|
+
}
|
103
|
+
|
104
|
+
/* Prevents IE from making scaled images look like crap */
|
105
|
+
img {
|
106
|
+
-ms-interpolation-mode: bicubic;
|
107
|
+
}
|
108
|
+
|
109
|
+
/* Address outline inconsistency between Chrome and other browsers. */
|
110
|
+
a:focus,
|
111
|
+
button:focus {
|
112
|
+
outline: thin dotted;
|
113
|
+
outline: .294117647em auto -webkit-focus-ring-color;
|
114
|
+
outline-offset: -.142857143em;
|
115
|
+
}
|
116
|
+
|
117
|
+
/* Improve readability when focused and also mouse hovered in all browsers. */
|
118
|
+
a:hover, a:active {
|
119
|
+
outline: 0;
|
120
|
+
}
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
/* THE GRID */
|
127
|
+
/* Structure and layout */
|
128
|
+
|
129
|
+
/* Mobile-first. Single-column layout by default
|
130
|
+
* Container sets the maximum page width. Adjust as needed. */
|
131
|
+
.container {
|
132
|
+
max-width: 80em;
|
133
|
+
width: 88%;
|
134
|
+
margin-left: auto;
|
135
|
+
margin-right: auto;
|
136
|
+
}
|
137
|
+
|
138
|
+
|
139
|
+
/* Still mostly single-column.
|
140
|
+
* Grid-third, grid-half, and grid-img
|
141
|
+
* provide sub-gridding on smaller screens. */
|
142
|
+
@media (min-width: 30em) {
|
143
|
+
|
144
|
+
.row {
|
145
|
+
margin-left: -1.515151515152%;
|
146
|
+
margin-right: -1.515151515152%;
|
147
|
+
}
|
148
|
+
|
149
|
+
[class^="grid-"],
|
150
|
+
[class*=" grid-"] {
|
151
|
+
float: left;
|
152
|
+
width:96.969696969697%;
|
153
|
+
margin-left: 1.515151515152%;
|
154
|
+
margin-right: 1.515151515152%;
|
155
|
+
}
|
156
|
+
|
157
|
+
.grid-third {
|
158
|
+
width: 30.30303030303%;
|
159
|
+
}
|
160
|
+
|
161
|
+
.grid-half,
|
162
|
+
.grid-img {
|
163
|
+
width: 46.969696969697%;
|
164
|
+
}
|
165
|
+
|
166
|
+
.grid-two-thirds {
|
167
|
+
width: 63.636363636364%;
|
168
|
+
}
|
169
|
+
|
170
|
+
/* Reverses order of grid for content choreography */
|
171
|
+
.grid-flip {
|
172
|
+
float: right;
|
173
|
+
}
|
174
|
+
|
175
|
+
}
|
176
|
+
|
177
|
+
|
178
|
+
/* 6-column grid */
|
179
|
+
@media (min-width: 40em) {
|
180
|
+
|
181
|
+
.grid-1 {
|
182
|
+
width: 13.636363636364%;
|
183
|
+
}
|
184
|
+
|
185
|
+
.grid-2,
|
186
|
+
.grid-third,
|
187
|
+
.grid-img {
|
188
|
+
width: 30.30303030303%;
|
189
|
+
}
|
190
|
+
|
191
|
+
.grid-3,
|
192
|
+
.grid-half {
|
193
|
+
width: 46.969696969697%;
|
194
|
+
}
|
195
|
+
|
196
|
+
.grid-4,
|
197
|
+
.grid-two-thirds {
|
198
|
+
width: 63.636363636364%;
|
199
|
+
}
|
200
|
+
|
201
|
+
.grid-5 {
|
202
|
+
width: 80.30303030303%;
|
203
|
+
}
|
204
|
+
|
205
|
+
.grid-6,
|
206
|
+
.grid-full {
|
207
|
+
width: 96.969696969697%;
|
208
|
+
}
|
209
|
+
|
210
|
+
|
211
|
+
/* Offets let you shift grid elements to the right
|
212
|
+
* but stay aligned to the grid. */
|
213
|
+
.offset-1 {
|
214
|
+
margin-left: 18.181818181818%;
|
215
|
+
}
|
216
|
+
|
217
|
+
.offset-2 {
|
218
|
+
margin-left: 34.848484848485%;
|
219
|
+
}
|
220
|
+
|
221
|
+
.offset-3 {
|
222
|
+
margin-left: 51.515151515152%;
|
223
|
+
}
|
224
|
+
|
225
|
+
.offset-4 {
|
226
|
+
margin-left: 68.181818181818%;
|
227
|
+
}
|
228
|
+
|
229
|
+
.offset-5 {
|
230
|
+
margin-left: 84.848484848485%;
|
231
|
+
}
|
232
|
+
|
233
|
+
}
|
234
|
+
|
235
|
+
|
236
|
+
/* Additional gridding for grid-img on bigger screens.
|
237
|
+
* Adjust as needed. */
|
238
|
+
@media (min-width: 60em) {
|
239
|
+
.grid-img {
|
240
|
+
width: 13.636363636364%;
|
241
|
+
}
|
242
|
+
}
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
/* TYPOGRAPHY */
|
249
|
+
/* Sets font styles for entire site. */
|
250
|
+
|
251
|
+
body {
|
252
|
+
font-family: "Helvetica Neue", Arial, sans-serif;
|
253
|
+
font-size: 106.25%;
|
254
|
+
line-height: 1.470588235;
|
255
|
+
color: #272727;
|
256
|
+
background: #ffffff;
|
257
|
+
}
|
258
|
+
|
259
|
+
p {
|
260
|
+
margin-bottom: 1.529411765em;
|
261
|
+
}
|
262
|
+
|
263
|
+
@media (min-width: 40em) {
|
264
|
+
body {
|
265
|
+
line-height: 1.588235294;
|
266
|
+
}
|
267
|
+
}
|
268
|
+
|
269
|
+
|
270
|
+
/* Sizes
|
271
|
+
* For smaller and larger text */
|
272
|
+
|
273
|
+
.text-small {
|
274
|
+
font-size: .882352941em;
|
275
|
+
line-height: 1.533333333;
|
276
|
+
}
|
277
|
+
|
278
|
+
.text-tall {
|
279
|
+
font-size: 1.166666667em;
|
280
|
+
line-height: 1.4;
|
281
|
+
}
|
282
|
+
|
283
|
+
@media (min-width: 40em) {
|
284
|
+
.text-tall {
|
285
|
+
font-size: 1.352941176em;
|
286
|
+
}
|
287
|
+
}
|
288
|
+
|
289
|
+
|
290
|
+
/* Colors
|
291
|
+
* For alternate text colors */
|
292
|
+
|
293
|
+
.text-muted {
|
294
|
+
color: #808080;
|
295
|
+
}
|
296
|
+
|
297
|
+
|
298
|
+
/* Links
|
299
|
+
* Hyperlink styling */
|
300
|
+
|
301
|
+
a {
|
302
|
+
color: #0088cc;
|
303
|
+
text-decoration: none;
|
304
|
+
}
|
305
|
+
|
306
|
+
a:hover {
|
307
|
+
color: #005580;
|
308
|
+
text-decoration: underline;
|
309
|
+
}
|
310
|
+
|
311
|
+
a img {
|
312
|
+
border: none;
|
313
|
+
background: none;
|
314
|
+
}
|
315
|
+
|
316
|
+
/* Prevents border/background on linked image hover.
|
317
|
+
* Adds slight opacity. */
|
318
|
+
a:hover img {
|
319
|
+
border: none;
|
320
|
+
background: none;
|
321
|
+
opacity:0.8;
|
322
|
+
filter:alpha(opacity=80);
|
323
|
+
}
|
324
|
+
|
325
|
+
|
326
|
+
/* Lists
|
327
|
+
* Styling for lists */
|
328
|
+
|
329
|
+
ul, ol {
|
330
|
+
margin-bottom: 1.529411765em;
|
331
|
+
margin-left: 2em;
|
332
|
+
}
|
333
|
+
|
334
|
+
ul ul, ul ol, ol ol, ol ul {
|
335
|
+
margin-bottom: 0;
|
336
|
+
}
|
337
|
+
|
338
|
+
ul {
|
339
|
+
list-style: disc;
|
340
|
+
}
|
341
|
+
|
342
|
+
ol {
|
343
|
+
list-style: decimal;
|
344
|
+
}
|
345
|
+
|
346
|
+
/* Removes list styling.
|
347
|
+
* For semantic reasons, should only
|
348
|
+
* be used on unordered lists. */
|
349
|
+
.list-unstyled {
|
350
|
+
margin-left: 0;
|
351
|
+
list-style: none;
|
352
|
+
}
|
353
|
+
|
354
|
+
|
355
|
+
/* Headings
|
356
|
+
* h1 through h6 styling
|
357
|
+
* Heading class lets you use one heading type for semantics
|
358
|
+
* but style it as another heading type. */
|
359
|
+
|
360
|
+
h1, h2, h3, h4, h5, h6 {
|
361
|
+
line-height: 1.2;
|
362
|
+
font-weight: normal;
|
363
|
+
margin-bottom: 1em;
|
364
|
+
padding-top: 1em;
|
365
|
+
}
|
366
|
+
|
367
|
+
h1, .h1 {
|
368
|
+
font-size: 1.529411765em;
|
369
|
+
padding-top: .5em;
|
370
|
+
}
|
371
|
+
|
372
|
+
h2, .h2 {
|
373
|
+
font-size: 1.352941176em;
|
374
|
+
}
|
375
|
+
|
376
|
+
h3, .h3 {
|
377
|
+
font-size: 1.176470588em;
|
378
|
+
}
|
379
|
+
|
380
|
+
h4, h5, h6,
|
381
|
+
.h4, .h5, .h6 {
|
382
|
+
font-size: .882352941em;
|
383
|
+
font-style: italic;
|
384
|
+
}
|
385
|
+
|
386
|
+
h4, .h4 {
|
387
|
+
text-transform: uppercase;
|
388
|
+
}
|
389
|
+
|
390
|
+
@media (min-width: 40em) {
|
391
|
+
h1, .h1 {
|
392
|
+
font-size: 1.764705882em;
|
393
|
+
}
|
394
|
+
}
|
395
|
+
|
396
|
+
|
397
|
+
/* Lines, Quotes and Emphasis */
|
398
|
+
|
399
|
+
/* Lines */
|
400
|
+
hr {
|
401
|
+
margin: 2em auto;
|
402
|
+
border: 0;
|
403
|
+
border-top: .071428571em solid #e5e5e5;
|
404
|
+
border-bottom: .071428571em solid #ffffff;
|
405
|
+
}
|
406
|
+
|
407
|
+
/* Bold */
|
408
|
+
strong {
|
409
|
+
font-weight: bold;
|
410
|
+
}
|
411
|
+
|
412
|
+
/* Italics */
|
413
|
+
em {
|
414
|
+
font-style: italic;
|
415
|
+
}
|
416
|
+
|
417
|
+
/* Subscript & Superscript */
|
418
|
+
sub, sup {
|
419
|
+
position: relative;
|
420
|
+
font-size: 85%;
|
421
|
+
font-weight: bold;
|
422
|
+
line-height: 0;
|
423
|
+
vertical-align: baseline;
|
424
|
+
margin-left: .3em;
|
425
|
+
}
|
426
|
+
|
427
|
+
sup {
|
428
|
+
top: -0.5em;
|
429
|
+
}
|
430
|
+
|
431
|
+
sub {
|
432
|
+
bottom: -0.25em;
|
433
|
+
}
|
434
|
+
|
435
|
+
/* Highlighting colors */
|
436
|
+
::selection {
|
437
|
+
color: #ffffff;
|
438
|
+
background: #0088cc;
|
439
|
+
}
|
440
|
+
|
441
|
+
::-moz-selection {
|
442
|
+
color: #ffffff;
|
443
|
+
background: #0088cc;
|
444
|
+
}
|
445
|
+
|
446
|
+
/* Blockquotes */
|
447
|
+
blockquote {
|
448
|
+
border-left: .235294118em solid #e5e5e5;
|
449
|
+
margin-bottom:1.529411765em;
|
450
|
+
padding-left: 1.529411765em;
|
451
|
+
padding-right: 1.529411765em;
|
452
|
+
}
|
453
|
+
|
454
|
+
blockquote, q {
|
455
|
+
quotes: none;
|
456
|
+
}
|
457
|
+
|
458
|
+
blockquote:before, blockquote:after,
|
459
|
+
q:before, q:after {
|
460
|
+
content: '';
|
461
|
+
content: none;
|
462
|
+
}
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
/* CODE */
|
469
|
+
/* Styling for code and preformatted text */
|
470
|
+
|
471
|
+
code, pre {
|
472
|
+
font-family: Menlo, Monaco, "Courier New", monospace;
|
473
|
+
font-size: .764705882em;
|
474
|
+
border-radius: .176470588em;
|
475
|
+
}
|
476
|
+
|
477
|
+
code {
|
478
|
+
color: #d14;
|
479
|
+
background-color: #f7f7f9;
|
480
|
+
padding: .235294118em;
|
481
|
+
border: .085em solid #e1e1e8;
|
482
|
+
}
|
483
|
+
|
484
|
+
pre {
|
485
|
+
display: block;
|
486
|
+
margin-bottom: 1.529411765em;
|
487
|
+
line-height: 1.538461538em;
|
488
|
+
background-color: #f5f5f5;
|
489
|
+
padding: .5em;
|
490
|
+
border: .085em solid #ccc;
|
491
|
+
border-radius: .235294118em;
|
492
|
+
white-space: pre;
|
493
|
+
white-space: pre-wrap;
|
494
|
+
word-break: break-all;
|
495
|
+
}
|
496
|
+
|
497
|
+
pre code {
|
498
|
+
padding: 0;
|
499
|
+
color: inherit;
|
500
|
+
background-color: transparent;
|
501
|
+
border: 0;
|
502
|
+
}
|
503
|
+
|
504
|
+
|
505
|
+
|
506
|
+
|
507
|
+
|
508
|
+
/* BUTTONS */
|
509
|
+
/* Styling for CSS3 buttons */
|
510
|
+
|
511
|
+
.btn {
|
512
|
+
display: inline-block;
|
513
|
+
font-size: .882352941em;
|
514
|
+
padding: .4em .666666667em;
|
515
|
+
line-height: 1.333333333;
|
516
|
+
font-weight: normal;
|
517
|
+
background-color: #808080;
|
518
|
+
border: .071428571em solid #808080;
|
519
|
+
border-radius: .235294118em;
|
520
|
+
margin-left: .3em;
|
521
|
+
margin-bottom: .3em;
|
522
|
+
}
|
523
|
+
|
524
|
+
.btn,
|
525
|
+
.btn:hover,
|
526
|
+
a .btn:hover {
|
527
|
+
color: #ffffff;
|
528
|
+
}
|
529
|
+
|
530
|
+
.btn:hover,
|
531
|
+
a .btn:hover {
|
532
|
+
background-color: #595959;
|
533
|
+
border-color: #595959;
|
534
|
+
text-decoration: none;
|
535
|
+
}
|
536
|
+
|
537
|
+
.btn-blue {
|
538
|
+
background-color: #0088cc;
|
539
|
+
border-color: #0088cc;
|
540
|
+
}
|
541
|
+
|
542
|
+
.btn-blue:hover,
|
543
|
+
a .btn-blue:hover {
|
544
|
+
background-color: #005580;
|
545
|
+
border-color: #005580;
|
546
|
+
}
|
547
|
+
|
548
|
+
.btn:active {
|
549
|
+
-webkit-box-shadow: inset 0 .142857143em .235294118em rgba(0, 0, 0, 0.15), 0 .071428571em .142857143em rgba(0, 0, 0, 0.05);
|
550
|
+
box-shadow: inset 0 .142857143em .235294118em rgba(0, 0, 0, 0.15), 0 .071428571em .142857143em rgba(0, 0, 0, 0.05);
|
551
|
+
outline: 0;
|
552
|
+
}
|
553
|
+
|
554
|
+
.btn-large {
|
555
|
+
padding: .588235294em .882352941em;
|
556
|
+
font-size: 1em;
|
557
|
+
line-height: normal;
|
558
|
+
border-radius: .294117647em;
|
559
|
+
}
|
560
|
+
|
561
|
+
.btn-block,
|
562
|
+
input[type="submit"].btn-block,
|
563
|
+
input[type="reset"].btn-block,
|
564
|
+
input[type="button"].btn-block {
|
565
|
+
display: block;
|
566
|
+
width: 100%;
|
567
|
+
margin-left: 0;
|
568
|
+
padding-right: 0;
|
569
|
+
padding-left: 0;
|
570
|
+
-webkit-box-sizing: border-box;
|
571
|
+
-moz-box-sizing: border-box;
|
572
|
+
box-sizing: border-box;
|
573
|
+
}
|
574
|
+
|
575
|
+
.btn-block + .btn-block {
|
576
|
+
margin-top: .333333333em;
|
577
|
+
}
|
578
|
+
|
579
|
+
button, .btn {
|
580
|
+
cursor: pointer;
|
581
|
+
text-align: center;
|
582
|
+
vertical-align: middle;
|
583
|
+
-webkit-appearance: none;
|
584
|
+
}
|
585
|
+
|
586
|
+
.btn:first-child, input.btn {
|
587
|
+
margin-left: 0;
|
588
|
+
}
|
589
|
+
|
590
|
+
|
591
|
+
|
592
|
+
|
593
|
+
|
594
|
+
/* FORMS */
|
595
|
+
/* Styling for form elements */
|
596
|
+
|
597
|
+
form, fieldset {
|
598
|
+
margin-bottom: 1.529411765em;
|
599
|
+
}
|
600
|
+
|
601
|
+
legend, label {
|
602
|
+
display: block;
|
603
|
+
font-weight: normal;
|
604
|
+
padding: 0;
|
605
|
+
margin-bottom: .294117647em;
|
606
|
+
}
|
607
|
+
|
608
|
+
input, textarea, select {
|
609
|
+
display: block;
|
610
|
+
width: 100%;
|
611
|
+
font: inherit;
|
612
|
+
line-height: 1.470588235;
|
613
|
+
color: #555555;
|
614
|
+
vertical-align: middle;
|
615
|
+
margin-bottom: 1.176470588em;
|
616
|
+
padding: .294117647em;
|
617
|
+
border: .071428571em solid #b8b8b8;
|
618
|
+
border-radius: .176470588em;
|
619
|
+
-webkit-box-sizing: border-box;
|
620
|
+
-moz-box-sizing: border-box;
|
621
|
+
box-sizing: border-box;
|
622
|
+
}
|
623
|
+
|
624
|
+
form button, form .btn {
|
625
|
+
margin-bottom: 1.176470588em;
|
626
|
+
}
|
627
|
+
|
628
|
+
textarea {
|
629
|
+
height: 12em;
|
630
|
+
}
|
631
|
+
|
632
|
+
input[type="image"],
|
633
|
+
input[type="checkbox"],
|
634
|
+
input[type="radio"] {
|
635
|
+
display: inline-block;
|
636
|
+
width: auto;
|
637
|
+
height: auto;
|
638
|
+
padding: 0;
|
639
|
+
margin-bottom: .294117647em;
|
640
|
+
cursor: pointer;
|
641
|
+
}
|
642
|
+
|
643
|
+
input:focus,
|
644
|
+
textarea:focus {
|
645
|
+
border-color: rgba(82, 168, 236, 0.8);
|
646
|
+
-webkit-box-shadow: inset 0 .071428571em .071428571em rgba(0, 0, 0, 0.075), 0 0 .470588235em rgba(82, 168, 236, 0.6);
|
647
|
+
box-shadow: inset 0 .071428571em .071428571em rgba(0, 0, 0, 0.075), 0 0 .470588235em rgba(82, 168, 236, 0.6);
|
648
|
+
outline: 0;
|
649
|
+
outline: thin dotted \9;
|
650
|
+
}
|
651
|
+
|
652
|
+
input[type="file"]:focus,
|
653
|
+
input[type="checkbox"]:focus,
|
654
|
+
select:focus {
|
655
|
+
outline: thin dotted;
|
656
|
+
outline: .294117647em auto -webkit-focus-ring-color;
|
657
|
+
outline-offset: -.117647059em;
|
658
|
+
}
|
659
|
+
|
660
|
+
@media (min-width: 40em) {
|
661
|
+
input, textarea, select {
|
662
|
+
line-height: 1.588235294;
|
663
|
+
}
|
664
|
+
}
|
665
|
+
|
666
|
+
|
667
|
+
|
668
|
+
|
669
|
+
|
670
|
+
/* ICONS */
|
671
|
+
/* A placeholder for icon fonts.
|
672
|
+
* Learn more at http://gomakethings.com/icon-fonts/ */
|
673
|
+
|
674
|
+
/* @font-face code. Change font names and URLs as need.
|
675
|
+
* Commented Out.
|
676
|
+
@font-face {
|
677
|
+
font-family: 'icomoon';
|
678
|
+
src: url('fonts/icomoon.eot');
|
679
|
+
src: url('fonts/icomoon.eot?#iefix') format('embedded-opentype'),
|
680
|
+
url('fonts/icomoon.woff') format('woff'),
|
681
|
+
url('fonts/icomoon.ttf') format('truetype'),
|
682
|
+
url('fonts/icomoon.svg#IcoMoon') format('svg');
|
683
|
+
font-weight: normal;
|
684
|
+
font-style: normal;
|
685
|
+
}
|
686
|
+
|
687
|
+
[class^="icon-"]:before,
|
688
|
+
[class*=" icon-"]:before {
|
689
|
+
font-family: 'icomoon';
|
690
|
+
font-style: normal;
|
691
|
+
speak: none;
|
692
|
+
font-weight: normal;
|
693
|
+
-webkit-font-smoothing: antialiased;
|
694
|
+
font-smoothing: antialiased;
|
695
|
+
text-rendering: optimizeLegibility;
|
696
|
+
}
|
697
|
+
*/
|
698
|
+
|
699
|
+
|
700
|
+
|
701
|
+
|
702
|
+
|
703
|
+
/* IMAGES */
|
704
|
+
/* A placeholder for image styling.
|
705
|
+
* Try Snapshot: Basic image styling.
|
706
|
+
* http://cferdinandi.github.com/snapshot/ */
|
707
|
+
|
708
|
+
|
709
|
+
|
710
|
+
|
711
|
+
|
712
|
+
/* TABLES */
|
713
|
+
/* A placeholder for table styling.
|
714
|
+
* Try Tables: Simple CSS table styling.
|
715
|
+
* http://cferdinandi.github.com/tables/ */
|
716
|
+
|
717
|
+
|
718
|
+
|
719
|
+
|
720
|
+
|
721
|
+
/* BAR GRAPHS */
|
722
|
+
/* A placeholder for bar graph styling.
|
723
|
+
* Try Bar Graph: Simple CSS bar graphs.
|
724
|
+
* http://cferdinandi.github.com/bar-graph/ */
|
725
|
+
|
726
|
+
|
727
|
+
|
728
|
+
|
729
|
+
|
730
|
+
/* DROPDOWN MENUS */
|
731
|
+
/* A placeholder for dropdown menu styling.
|
732
|
+
* Try Drop: Simple, mobile-friendly dropdown menus.
|
733
|
+
* http://cferdinandi.github.com/drop/ */
|
734
|
+
|
735
|
+
|
736
|
+
|
737
|
+
|
738
|
+
|
739
|
+
/* COLLAPSE & EXPAND */
|
740
|
+
/* A placeholder for collapse-and-expand widget styling.
|
741
|
+
* Try Houdini: A simple collapse-and-expand widget.
|
742
|
+
* http://cferdinandi.github.com/houdini/ */
|
743
|
+
|
744
|
+
|
745
|
+
|
746
|
+
|
747
|
+
|
748
|
+
/* TOGGLE TABS */
|
749
|
+
/* A placeholder for toggle tab styling.
|
750
|
+
* Try Tabby: Lightweight, mobile-first toggle tabs.
|
751
|
+
* http://cferdinandi.github.com/tabby/ */
|
752
|
+
|
753
|
+
|
754
|
+
|
755
|
+
|
756
|
+
|
757
|
+
/* MODALS */
|
758
|
+
/* A placeholder for modal styling.
|
759
|
+
* Try Not-A-Modal: Kinda, sorta, not really modals.
|
760
|
+
* http://cferdinandi.github.com/not-a-modal/ */
|
761
|
+
|
762
|
+
|
763
|
+
|
764
|
+
|
765
|
+
|
766
|
+
/* NAVIGATION */
|
767
|
+
/* A placeholder for navigation styling.
|
768
|
+
* Try Astro: A collection of mobile-first navigation patterns.
|
769
|
+
* http://cferdinandi.github.com/astro/ */
|
770
|
+
|
771
|
+
|
772
|
+
|
773
|
+
|
774
|
+
|
775
|
+
/* CAROUSELS */
|
776
|
+
/* A placeholder for image carousel styling.
|
777
|
+
* Try FlexSlider by WooThemes.
|
778
|
+
* https://github.com/cferdinandi/slider */
|
779
|
+
|
780
|
+
|
781
|
+
|
782
|
+
|
783
|
+
|
784
|
+
/* CSS ANIMATIONS */
|
785
|
+
/* A placeholder for CSS animations.
|
786
|
+
* Try Spinners: Simple CSS3 rotation animations.
|
787
|
+
* http://cferdinandi.github.com/spinners/ */
|
788
|
+
|
789
|
+
|
790
|
+
|
791
|
+
|
792
|
+
|
793
|
+
/* ALIGNMENT, SPACING & VISIBILITY */
|
794
|
+
|
795
|
+
/* Text alignment */
|
796
|
+
|
797
|
+
.text-center {
|
798
|
+
text-align: center;
|
799
|
+
}
|
800
|
+
|
801
|
+
.text-right {
|
802
|
+
text-align: right;
|
803
|
+
}
|
804
|
+
|
805
|
+
.text-left {
|
806
|
+
text-align: left;
|
807
|
+
}
|
808
|
+
|
809
|
+
|
810
|
+
/* Spacing */
|
811
|
+
|
812
|
+
.no-space {
|
813
|
+
margin: 0;
|
814
|
+
padding: 0;
|
815
|
+
}
|
816
|
+
|
817
|
+
.no-space-bottom {
|
818
|
+
margin-bottom: 0;
|
819
|
+
padding-bottom: 0;
|
820
|
+
}
|
821
|
+
|
822
|
+
.no-space-top {
|
823
|
+
margin-top: 0;
|
824
|
+
padding-top: 0;
|
825
|
+
}
|
826
|
+
|
827
|
+
.space-bottom {
|
828
|
+
margin-bottom: 2em;
|
829
|
+
}
|
830
|
+
|
831
|
+
.space-bottom-small {
|
832
|
+
margin-bottom: .470588235em;
|
833
|
+
padding-bottom: 0;
|
834
|
+
}
|
835
|
+
|
836
|
+
.space-top {
|
837
|
+
padding-top: .82352941234em;
|
838
|
+
}
|
839
|
+
|
840
|
+
|
841
|
+
/* Screen Reader Text */
|
842
|
+
|
843
|
+
.screen-reader {
|
844
|
+
position: absolute;
|
845
|
+
top: -9999em;
|
846
|
+
left:-9999em;
|
847
|
+
}
|
848
|
+
|
849
|
+
|
850
|
+
/* Clearfix */
|
851
|
+
|
852
|
+
.group:before, .group:after,
|
853
|
+
.container:before, .container:after,
|
854
|
+
.row:before, .row:after {
|
855
|
+
display: table;
|
856
|
+
content: "";
|
857
|
+
*zoom: 1;
|
858
|
+
}
|
859
|
+
|
860
|
+
.group:after,
|
861
|
+
.container:after,
|
862
|
+
.row:after {
|
863
|
+
clear: both;
|
864
|
+
}
|
865
|
+
|
866
|
+
|
867
|
+
|
868
|
+
|
869
|
+
|
870
|
+
/* PRINT STYLES */
|
871
|
+
/* Styling for printed content.
|
872
|
+
* Adapted from HTML5BP.
|
873
|
+
* http://html5boilerplate.com/ */
|
874
|
+
|
875
|
+
@media print {
|
876
|
+
|
877
|
+
/* Universal selector.
|
878
|
+
* Reset all content to transparent background,
|
879
|
+
* black color, and remove box and text shadows. */
|
880
|
+
* {
|
881
|
+
background: transparent !important;
|
882
|
+
color: #000 !important;
|
883
|
+
box-shadow: none !important;
|
884
|
+
text-shadow: none !important;
|
885
|
+
}
|
886
|
+
|
887
|
+
/* Specifies page margin */
|
888
|
+
@page {
|
889
|
+
margin: 0.5cm;
|
890
|
+
}
|
891
|
+
|
892
|
+
/* Underline all links */
|
893
|
+
a, a:visited {
|
894
|
+
text-decoration: underline;
|
895
|
+
}
|
896
|
+
|
897
|
+
/* Show URL after links */
|
898
|
+
a[href]:after {
|
899
|
+
content: " (" attr(href) ")";
|
900
|
+
}
|
901
|
+
|
902
|
+
/* Don't show URL for internal links */
|
903
|
+
a[href^="#"]:after {
|
904
|
+
content: "";
|
905
|
+
}
|
906
|
+
|
907
|
+
/* Specifies the minimum number of lines to print at the top and bottom of a page. */
|
908
|
+
p, h1, h2, h3 {
|
909
|
+
orphans: 3;
|
910
|
+
widows: 3;
|
911
|
+
}
|
912
|
+
|
913
|
+
/* Avoid inserting a page break after headers */
|
914
|
+
h1, h2, h3 {
|
915
|
+
page-break-after: avoid;
|
916
|
+
}
|
917
|
+
|
918
|
+
/* Change border color on blockquotes and preformatted text.
|
919
|
+
* Avoid page breaks inside the content */
|
920
|
+
pre, blockquote {
|
921
|
+
border-color: #999;
|
922
|
+
page-break-inside: avoid;
|
923
|
+
}
|
924
|
+
|
925
|
+
/* Displayed as a table header row group */
|
926
|
+
thead {
|
927
|
+
display: table-header-group;
|
928
|
+
}
|
929
|
+
|
930
|
+
/* Avoid inserting a page break inside table rows and images */
|
931
|
+
tr, img {
|
932
|
+
page-break-inside: avoid;
|
933
|
+
}
|
934
|
+
|
935
|
+
}
|
data/krakenrails.gemspec
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'krakenrails/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "krakenrails"
|
8
|
+
spec.version = Krakenrails::VERSION
|
9
|
+
spec.authors = ["Jordan K. Burke", "Chris Ferdinandi"]
|
10
|
+
spec.email = ["me@jordankburke.com"]
|
11
|
+
spec.description = %q{Kraken framework from Chris Ferdinandi for Rails 3.1+}
|
12
|
+
spec.summary = %q{Kraken framework from Chris Ferdinandi for Rails 3.1+}
|
13
|
+
spec.homepage = "https://github.com/PendragonDevelopment/krakenrails"
|
14
|
+
spec.license = "WTFPL"
|
15
|
+
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
22
|
+
spec.add_development_dependency "rake"
|
23
|
+
spec.add_runtime_dependency 'railties', '>= 3.1.1'
|
24
|
+
end
|
data/lib/krakenrails.rb
ADDED
metadata
ADDED
@@ -0,0 +1,107 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: krakenrails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Jordan K. Burke
|
9
|
+
- Chris Ferdinandi
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2013-03-31 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: bundler
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ~>
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '1.3'
|
23
|
+
type: :development
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ~>
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: '1.3'
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
name: rake
|
33
|
+
requirement: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
35
|
+
requirements:
|
36
|
+
- - ! '>='
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: '0'
|
39
|
+
type: :development
|
40
|
+
prerelease: false
|
41
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ! '>='
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: railties
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 3.1.1
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
none: false
|
59
|
+
requirements:
|
60
|
+
- - ! '>='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 3.1.1
|
63
|
+
description: Kraken framework from Chris Ferdinandi for Rails 3.1+
|
64
|
+
email:
|
65
|
+
- me@jordankburke.com
|
66
|
+
executables: []
|
67
|
+
extensions: []
|
68
|
+
extra_rdoc_files: []
|
69
|
+
files:
|
70
|
+
- .gitignore
|
71
|
+
- Gemfile
|
72
|
+
- LICENSE.txt
|
73
|
+
- README.md
|
74
|
+
- Rakefile
|
75
|
+
- app/assets/javascripts/kraken.js
|
76
|
+
- app/assets/javascripts/readme.txt
|
77
|
+
- app/assets/stylesheets/kraken.css
|
78
|
+
- krakenrails.gemspec
|
79
|
+
- lib/krakenrails.rb
|
80
|
+
- lib/krakenrails/engine.rb
|
81
|
+
- lib/krakenrails/version.rb
|
82
|
+
homepage: https://github.com/PendragonDevelopment/krakenrails
|
83
|
+
licenses:
|
84
|
+
- WTFPL
|
85
|
+
post_install_message:
|
86
|
+
rdoc_options: []
|
87
|
+
require_paths:
|
88
|
+
- lib
|
89
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
90
|
+
none: false
|
91
|
+
requirements:
|
92
|
+
- - ! '>='
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '0'
|
95
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
96
|
+
none: false
|
97
|
+
requirements:
|
98
|
+
- - ! '>='
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '0'
|
101
|
+
requirements: []
|
102
|
+
rubyforge_project:
|
103
|
+
rubygems_version: 1.8.24
|
104
|
+
signing_key:
|
105
|
+
specification_version: 3
|
106
|
+
summary: Kraken framework from Chris Ferdinandi for Rails 3.1+
|
107
|
+
test_files: []
|