themepile-abstractio 1.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.
Files changed (84) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +28 -0
  3. data/.rbenv-version +1 -0
  4. data/CONTRIBUTING.md +53 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE +22 -0
  7. data/README.md +136 -0
  8. data/Rakefile +2 -0
  9. data/abstractio.gemspec +18 -0
  10. data/js/foundation/foundation.alerts.js +50 -0
  11. data/js/foundation/foundation.clearing.js +516 -0
  12. data/js/foundation/foundation.cookie.js +74 -0
  13. data/js/foundation/foundation.dropdown.js +159 -0
  14. data/js/foundation/foundation.forms.js +516 -0
  15. data/js/foundation/foundation.joyride.js +842 -0
  16. data/js/foundation/foundation.js +403 -0
  17. data/js/foundation/foundation.magellan.js +130 -0
  18. data/js/foundation/foundation.orbit.js +373 -0
  19. data/js/foundation/foundation.placeholder.js +159 -0
  20. data/js/foundation/foundation.reveal.js +276 -0
  21. data/js/foundation/foundation.section.js +409 -0
  22. data/js/foundation/foundation.tooltips.js +206 -0
  23. data/js/foundation/foundation.topbar.js +252 -0
  24. data/js/foundation/index.js +16 -0
  25. data/js/vendor/custom.modernizr.js +4 -0
  26. data/js/vendor/jquery.js +9597 -0
  27. data/js/vendor/zepto.js +1884 -0
  28. data/lib/abstractio.rb +17 -0
  29. data/lib/abstractio/engine.rb +20 -0
  30. data/lib/abstractio/generators/USAGE +15 -0
  31. data/lib/abstractio/generators/install_generator.rb +54 -0
  32. data/lib/abstractio/generators/templates/application.html.erb +46 -0
  33. data/lib/abstractio/generators/templates/application.html.haml +31 -0
  34. data/lib/abstractio/generators/templates/application.html.slim +28 -0
  35. data/lib/abstractio/version.rb +3 -0
  36. data/lib/themepile-abstractio.rb +17 -0
  37. data/scss/abstractio.scss +46 -0
  38. data/scss/abstractio/_variables.scss +1224 -0
  39. data/scss/abstractio/components/_alert-boxes.scss +107 -0
  40. data/scss/abstractio/components/_block-grid.scss +68 -0
  41. data/scss/abstractio/components/_breadcrumbs.scss +125 -0
  42. data/scss/abstractio/components/_button-groups.scss +89 -0
  43. data/scss/abstractio/components/_buttons.scss +227 -0
  44. data/scss/abstractio/components/_clearing.scss +224 -0
  45. data/scss/abstractio/components/_custom-forms.scss +263 -0
  46. data/scss/abstractio/components/_dropdown-buttons.scss +115 -0
  47. data/scss/abstractio/components/_dropdown.scss +150 -0
  48. data/scss/abstractio/components/_flex-video.scss +46 -0
  49. data/scss/abstractio/components/_forms.scss +362 -0
  50. data/scss/abstractio/components/_global.scss +280 -0
  51. data/scss/abstractio/components/_grid.scss +186 -0
  52. data/scss/abstractio/components/_inline-lists.scss +53 -0
  53. data/scss/abstractio/components/_joyride.scss +215 -0
  54. data/scss/abstractio/components/_keystrokes.scss +57 -0
  55. data/scss/abstractio/components/_labels.scss +85 -0
  56. data/scss/abstractio/components/_magellan.scss +23 -0
  57. data/scss/abstractio/components/_orbit.scss +213 -0
  58. data/scss/abstractio/components/_pagination.scss +100 -0
  59. data/scss/abstractio/components/_panels.scss +77 -0
  60. data/scss/abstractio/components/_pricing-tables.scss +131 -0
  61. data/scss/abstractio/components/_progress-bars.scss +71 -0
  62. data/scss/abstractio/components/_reveal.scss +132 -0
  63. data/scss/abstractio/components/_section.scss +318 -0
  64. data/scss/abstractio/components/_side-nav.scss +69 -0
  65. data/scss/abstractio/components/_split-buttons.scss +167 -0
  66. data/scss/abstractio/components/_sub-nav.scss +68 -0
  67. data/scss/abstractio/components/_switch.scss +251 -0
  68. data/scss/abstractio/components/_tables.scss +84 -0
  69. data/scss/abstractio/components/_thumbs.scss +48 -0
  70. data/scss/abstractio/components/_tooltips.scss +117 -0
  71. data/scss/abstractio/components/_top-bar.scss +495 -0
  72. data/scss/abstractio/components/_type.scss +426 -0
  73. data/scss/abstractio/components/_visibility.scss +322 -0
  74. data/scss/normalize.scss +402 -0
  75. data/templates/project/.gitignore +44 -0
  76. data/templates/project/MIT-LICENSE.txt +20 -0
  77. data/templates/project/config.rb +26 -0
  78. data/templates/project/humans.txt +8 -0
  79. data/templates/project/index.html +124 -0
  80. data/templates/project/manifest.rb +45 -0
  81. data/templates/project/robots.txt +4 -0
  82. data/templates/project/scss/app.scss +48 -0
  83. data/templates/upgrade/manifest.rb +34 -0
  84. metadata +153 -0
@@ -0,0 +1,100 @@
1
+ //
2
+ // Pagination Variables
3
+ //
4
+ $include-html-nav-classes: $include-html-classes !default;
5
+
6
+ // We use these to control the pagination container
7
+ $pagination-height: emCalc(24px) !default;
8
+ $pagination-margin: emCalc(-5px) !default;
9
+
10
+ // We use these to set the list-item properties
11
+ $pagination-li-float: $default-float;
12
+ $pagination-li-height: emCalc(24px) !default;
13
+ $pagination-li-font-color: #222 !default;
14
+ $pagination-li-font-size: emCalc(14px) !default;
15
+ $pagination-li-margin: emCalc(5px) !default;
16
+
17
+ // We use these for the pagination anchor links
18
+ $pagination-link-pad: emCalc(1px) emCalc(7px) emCalc(1px) !default;
19
+ $pagination-link-font-color: #999 !default;
20
+ $pagination-link-active-bg: darken(#fff, 10%) !default;
21
+
22
+ // We use these for disabled anchor links
23
+ $pagination-link-unavailable-cursor: default !default;
24
+ $pagination-link-unavailable-font-color: #999 !default;
25
+ $pagination-link-unavailable-bg-active: transparent !default;
26
+
27
+ // We use these for currently selected anchor links
28
+ $pagination-link-current-background: $primary-color !default;
29
+ $pagination-link-current-font-color: #fff !default;
30
+ $pagination-link-current-font-weight: bold !default;
31
+ $pagination-link-current-cursor: default !default;
32
+ $pagination-link-current-active-bg: $primary-color !default;
33
+
34
+ //
35
+ // Pagination Mixin
36
+ //
37
+
38
+ // We use this mixin to set the properties for the creating Foundation pagination
39
+ @mixin pagination($center:false, $base-style:true) {
40
+
41
+ @if $base-style {
42
+ display: block;
43
+ height: $pagination-height;
44
+ margin-#{$default-float}: $pagination-margin;
45
+
46
+ li {
47
+ display: block;
48
+ float: $pagination-li-float;
49
+ height: $pagination-li-height;
50
+ color: $pagination-li-font-color;
51
+ font-size: $pagination-li-font-size;
52
+ margin-#{$default-float}: $pagination-li-margin;
53
+
54
+ a {
55
+ display: block;
56
+ padding: $pagination-link-pad;
57
+ color: $pagination-link-font-color;
58
+ }
59
+
60
+ &:hover a,
61
+ a:focus { background: $pagination-link-active-bg; }
62
+
63
+ &.unavailable a {
64
+ cursor: $pagination-link-unavailable-cursor;
65
+ color: $pagination-link-unavailable-font-color;
66
+ }
67
+
68
+ &.unavailable:hover a, &.unavailable a:focus { background: $pagination-link-unavailable-bg-active; }
69
+
70
+ &.current a {
71
+ background: $pagination-link-current-background;
72
+ color: $pagination-link-current-font-color;
73
+ font-weight: $pagination-link-current-font-weight;
74
+ cursor: $pagination-link-current-cursor;
75
+
76
+ &:hover,
77
+ &:focus { background: $pagination-link-current-active-bg; }
78
+ }
79
+ }
80
+ }
81
+
82
+ @if $center {
83
+ & { text-align: center;
84
+ ul > li {
85
+ float: none;
86
+ display: inline-block;
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+
93
+
94
+
95
+ @if $include-html-nav-classes != false {
96
+
97
+ /* Pagination */
98
+ .pagination { @include pagination; }
99
+ .pagination-centered { @include pagination(true,false); }
100
+ }
@@ -0,0 +1,77 @@
1
+ //
2
+ // Panel Variables
3
+ //
4
+ $include-html-panel-classes: $include-html-classes !default;
5
+
6
+ // We use these to control the background and border styles
7
+ $panel-bg: darken(#fff, 5%) !default;
8
+ $panel-border-style: solid !default;
9
+ $panel-border-size: 1px !default;
10
+
11
+ // We use this % to control how much we darken things on hover
12
+ $panel-function-factor: 10% !default;
13
+ $panel-border-color: darken($panel-bg, $panel-function-factor) !default;
14
+
15
+ // We use these to set default inner padding and bottom margin
16
+ $panel-margin-bottom: emCalc(20px) !default;
17
+ $panel-padding: emCalc(20px) !default;
18
+
19
+ // We use these to set default font colors
20
+ $panel-font-color: #333 !default;
21
+ $panel-font-color-alt: #fff !default;
22
+
23
+
24
+ //
25
+ // Panel Mixins
26
+ //
27
+
28
+ // We use this mixin to create panels.
29
+ @mixin panel($bg:$panel-bg, $padding:$panel-padding) {
30
+
31
+ @if $bg {
32
+ $bg-lightness: lightness($bg);
33
+
34
+ border-style: $panel-border-style;
35
+ border-width: $panel-border-size;
36
+ border-color: darken($bg, $panel-function-factor);
37
+ margin-bottom: $panel-margin-bottom;
38
+ padding: $padding;
39
+
40
+ background: $bg;
41
+
42
+ // We set the font color based on the darkness of the bg.
43
+ @if $bg-lightness >= 50% and $bg == blue { h1,h2,h3,h4,h5,h6,p { color: $panel-font-color-alt; } }
44
+ @else if $bg-lightness >= 50% { h1,h2,h3,h4,h5,h6,p { color: $panel-font-color; } }
45
+ @else { h1,h2,h3,h4,h5,h6,p { color: $panel-font-color-alt; } }
46
+
47
+ // Respect the padding, fool.
48
+ &>:first-child { margin-top: 0; }
49
+ &>:last-child { margin-bottom: 0; }
50
+
51
+ // reset header line-heights for panels
52
+ h1,h2,h3,h4,h5,h6 {
53
+ line-height: 1; margin-bottom: emCalc(20px) / 2;
54
+ &.subheader { line-height: 1.4; }
55
+ }
56
+ }
57
+ }
58
+
59
+ // Only include these classes if the option exists
60
+ @if $include-html-panel-classes != false {
61
+
62
+ /* Panels */
63
+ .panel { @include panel;
64
+
65
+ &.callout {
66
+ @include panel($primary-color);
67
+ @include inset-shadow($active:false);
68
+ }
69
+
70
+ &.radius {
71
+ @include panel($bg:false);
72
+ @include radius;
73
+ }
74
+
75
+ }
76
+
77
+ }
@@ -0,0 +1,131 @@
1
+ //
2
+ // Pricing Table Variables
3
+ //
4
+ $include-html-pricing-classes: $include-html-classes !default;
5
+
6
+ // We use this to control the border color
7
+ $price-table-border: solid 1px #ddd !default;
8
+
9
+ // We use this to control the bottom margin of the pricing table
10
+ $price-table-margin-bottom: emCalc(20px) !default;
11
+
12
+ // We use these to control the title styles
13
+ $price-title-bg: #ddd !default;
14
+ $price-title-padding: emCalc(15px) emCalc(20px) !default;
15
+ $price-title-align: center !default;
16
+ $price-title-color: #333 !default;
17
+ $price-title-weight: bold !default;
18
+ $price-title-size: emCalc(16px) !default;
19
+
20
+ // We use these to control the price styles
21
+ $price-money-bg: #eee !default;
22
+ $price-money-padding: emCalc(15px) emCalc(20px) !default;
23
+ $price-money-align: center !default;
24
+ $price-money-color: #333 !default;
25
+ $price-money-weight: normal !default;
26
+ $price-money-size: emCalc(20px) !default;
27
+
28
+ // We use these to control the description styles
29
+ $price-bg: #fff !default;
30
+ $price-desc-color: #777 !default;
31
+ $price-desc-padding: emCalc(15px) !default;
32
+ $price-desc-align: center !default;
33
+ $price-desc-font-size: emCalc(12px) !default;
34
+ $price-desc-weight: normal !default;
35
+ $price-desc-line-height: 1.4 !default;
36
+ $price-desc-bottom-border: dotted 1px #ddd !default;
37
+
38
+ // We use these to control the list item styles
39
+ $price-item-color: #333 !default;
40
+ $price-item-padding: emCalc(15px) !default;
41
+ $price-item-align: center !default;
42
+ $price-item-font-size: emCalc(14px) !default;
43
+ $price-item-weight: normal !default;
44
+ $price-item-bottom-border: dotted 1px #ddd !default;
45
+
46
+ // We use these to control the CTA area styles
47
+ $price-cta-bg: #f5f5f5 !default;
48
+ $price-cta-align: center !default;
49
+ $price-cta-padding: emCalc(20px) emCalc(20px) 0 !default;
50
+
51
+ //
52
+ // Pricing Table Mixins
53
+ //
54
+
55
+ // We use this to create the container element for the pricing tables
56
+ @mixin pricing-table-container {
57
+ border: $price-table-border;
58
+ margin-#{$default-float}: 0;
59
+ margin-bottom: $price-table-margin-bottom;
60
+
61
+ & * {
62
+ list-style: none;
63
+ line-height: 1;
64
+ }
65
+ }
66
+
67
+ // We use this mixin to create the pricing table title styles
68
+ @mixin pricing-table-title {
69
+ background-color: $price-title-bg;
70
+ padding: $price-title-padding;
71
+ text-align: $price-title-align;
72
+ color: $price-title-color;
73
+ font-weight: $price-title-weight;
74
+ font-size: $price-title-size;
75
+ }
76
+
77
+ // We use this mixin to control the pricing table price styles
78
+ @mixin pricing-table-price {
79
+ background-color: $price-money-bg;
80
+ padding: $price-money-padding;
81
+ text-align: $price-money-align;
82
+ color: $price-money-color;
83
+ font-weight: $price-money-weight;
84
+ font-size: $price-money-size;
85
+ }
86
+
87
+ // We use this mixin to create the description styles for the pricing table
88
+ @mixin pricing-table-description {
89
+ background-color: $price-bg;
90
+ padding: $price-desc-padding;
91
+ text-align: $price-desc-align;
92
+ color: $price-desc-color;
93
+ font-size: $price-desc-font-size;
94
+ font-weight: $price-desc-weight;
95
+ line-height: $price-desc-line-height;
96
+ border-bottom: $price-desc-bottom-border;
97
+ }
98
+
99
+ // We use this mixin to style the bullet items in the pricing table
100
+ @mixin pricing-table-bullet {
101
+ background-color: $price-bg;
102
+ padding: $price-item-padding;
103
+ text-align: $price-item-align;
104
+ color: $price-item-color;
105
+ font-size: $price-item-font-size;
106
+ font-weight: $price-item-weight;
107
+ border-bottom: $price-item-bottom-border;
108
+ }
109
+
110
+ // We use this mixin to style the CTA area of the pricing tables
111
+ @mixin pricing-table-cta {
112
+ background-color: $price-cta-bg;
113
+ text-align: $price-cta-align;
114
+ padding: $price-cta-padding;
115
+ }
116
+
117
+
118
+ @if $include-html-pricing-classes != false {
119
+
120
+ /* Pricing Tables */
121
+ .pricing-table {
122
+ @include pricing-table-container;
123
+
124
+ .title { @include pricing-table-title; }
125
+ .price { @include pricing-table-price; }
126
+ .description { @include pricing-table-description; }
127
+ .bullet-item { @include pricing-table-bullet; }
128
+ .cta-button { @include pricing-table-cta; }
129
+ }
130
+
131
+ }
@@ -0,0 +1,71 @@
1
+ //
2
+ // Progress Bar Variables
3
+ //
4
+ $include-html-media-classes: $include-html-classes !default;
5
+
6
+ // We use this to se the prog bar height
7
+ $progress-bar-height: emCalc(25px) !default;
8
+ $progress-bar-color: transparent !default;
9
+
10
+ // We use these to control the border styles
11
+ $progress-bar-border-color: darken(#fff, 20%) !default;
12
+ $progress-bar-border-size: 1px !default;
13
+ $progress-bar-border-style: solid !default;
14
+ $progress-bar-border-radius: $global-radius !default;
15
+
16
+ // We use these to control the margin & padding
17
+ $progress-bar-pad: emCalc(2px) !default;
18
+ $progress-bar-margin-bottom: emCalc(10px) !default;
19
+
20
+ // We use these to set the meter colors
21
+ $progress-meter-color: $primary-color !default;
22
+ $progress-meter-secondary-color: $secondary-color !default;
23
+ $progress-meter-success-color: $success-color !default;
24
+ $progress-meter-alert-color: $alert-color !default;
25
+
26
+
27
+ //
28
+ // Progress Bar Mixins
29
+ //
30
+
31
+ // We use this to set up the progress bar container
32
+ @mixin progress-container {
33
+ background-color: $progress-bar-color;
34
+ height: $progress-bar-height;
35
+ border: $progress-bar-border-size $progress-bar-border-style $progress-bar-border-color;
36
+ padding: $progress-bar-pad;
37
+ margin-bottom: $progress-bar-margin-bottom;
38
+ }
39
+
40
+ @mixin progress-meter($bg:$progress-meter-color) {
41
+ background: $bg;
42
+ height: 100%;
43
+ display: block;
44
+ }
45
+
46
+
47
+ @if $include-html-media-classes != false {
48
+
49
+ /* Progress Bar */
50
+ .progress {
51
+ @include progress-container;
52
+
53
+ // Meter
54
+ .meter {
55
+ @include progress-meter;
56
+ }
57
+ &.secondary .meter { @include progress-meter($bg:$progress-meter-secondary-color); }
58
+ &.success .meter { @include progress-meter($bg:$progress-meter-success-color); }
59
+ &.alert .meter { @include progress-meter($bg:$progress-meter-alert-color); }
60
+
61
+ &.radius { @include radius($global-radius);
62
+ .meter { @include radius($global-radius - 1); }
63
+ }
64
+
65
+ &.round { @include radius(1000px);
66
+ .meter { @include radius(999px); }
67
+ }
68
+
69
+ }
70
+
71
+ }
@@ -0,0 +1,132 @@
1
+ // NEED TO FINISH THE LOGIC HERE
2
+ $include-html-reveal-classes: $include-html-classes !default;
3
+
4
+ //
5
+ // Reveal Variables
6
+ //
7
+
8
+ // We use these to control the style of the reveal overlay.
9
+ $reveal-overlay-bg: rgba(#000, .45) !default;
10
+ $reveal-overlay-bg-old: #000 !default;
11
+
12
+ // We use these to control the style of the modal itself.
13
+ $reveal-modal-bg: #fff !default;
14
+ $reveal-position-top: 50px !default;
15
+ $reveal-default-width: 80% !default;
16
+ $reveal-modal-padding: emCalc(20px) !default;
17
+ $reveal-box-shadow: 0 0 10px rgba(#000,.4) !default;
18
+
19
+ // We use these to style the reveal close button
20
+ $reveal-close-font-size: emCalc(22px) !default;
21
+ $reveal-close-top: emCalc(8px) !default;
22
+ $reveal-close-side: emCalc(11px) !default;
23
+ $reveal-close-color: #aaa !default;
24
+ $reveal-close-weight: bold !default;
25
+
26
+ // We use these to control the modal border
27
+ $reveal-border-style: solid !default;
28
+ $reveal-border-width: 1px !default;
29
+ $reveal-border-color: #666 !default;
30
+
31
+ //
32
+ // Reveal Mixins
33
+ //
34
+
35
+ // We use this to create the reveal background overlay styles
36
+ @mixin reveal-bg {
37
+ position: fixed;
38
+ height: 100%;
39
+ width: 100%;
40
+ background: $reveal-overlay-bg-old;
41
+ background: $reveal-overlay-bg;
42
+ z-index: 98;
43
+ display: none;
44
+ top: 0;
45
+ #{$default-float}: 0;
46
+ }
47
+
48
+ // We use this mixin to create the structure of a reveal modal
49
+ @mixin reveal-modal-base($base-style:true, $width:$reveal-default-width) {
50
+ @if $base-style {
51
+ visibility: hidden;
52
+ display: none;
53
+ position: absolute;
54
+ #{$default-float}: 50%;
55
+ z-index: 99;
56
+ height: auto;
57
+ background-color: #fff;
58
+
59
+ // Make sure rows don't have a min-width on them
60
+ .column,
61
+ .columns { min-width: 0; }
62
+
63
+ // Get rid of margin from first and last element inside modal
64
+ & > :first-child { margin-top: 0; }
65
+ & > :last-child { margin-bottom: 0; }
66
+ }
67
+
68
+ @if $width {
69
+ margin-#{$default-float}: -($width / 2);
70
+ width: $width;
71
+ }
72
+ }
73
+
74
+ // We use this to style the reveal modal defaults
75
+ @mixin reveal-modal-style($bg:$reveal-modal-bg, $padding:$reveal-modal-padding, $border:true, $border-style:$reveal-border-style, $border-width:$reveal-border-width, $border-color:$reveal-border-color, $box-shadow:true, $top-offset:$reveal-position-top) {
76
+
77
+ @if $bg { background-color: $bg; }
78
+ @if $padding { padding: $padding; }
79
+
80
+ @if $border { border: $border-style $border-width $border-color; }
81
+
82
+ // We can choose whether or not to include the default box-shadow.
83
+ @if $box-shadow {
84
+ -webkit-box-shadow: $reveal-box-shadow;
85
+ box-shadow: $reveal-box-shadow;
86
+ }
87
+
88
+ @if $top-offset { top: $top-offset; }
89
+ }
90
+
91
+ // We use this to create a close button for the reveal modal
92
+ @mixin reveal-close($color:$reveal-close-color) {
93
+ font-size: $reveal-close-font-size;
94
+ line-height: 1;
95
+ position: absolute;
96
+ top: $reveal-close-top;
97
+ #{$opposite-direction}: $reveal-close-side;
98
+ color: $color;
99
+ font-weight: $reveal-close-weight;
100
+ cursor: pointer;
101
+ }
102
+
103
+ @if $include-html-reveal-classes != false {
104
+ // Reveal Modals
105
+ .reveal-modal-bg { @include reveal-bg; }
106
+
107
+ .reveal-modal {
108
+ @include reveal-modal-base;
109
+ @include reveal-modal-style;
110
+
111
+ .close-reveal-modal { @include reveal-close; }
112
+ }
113
+
114
+ // Large Screen Styles
115
+ @media #{$small} {
116
+
117
+ .reveal-modal {
118
+ @include reveal-modal-style(false, emCalc(30px), false, $box-shadow: false, $top-offset: emCalc(100px));
119
+
120
+ &.tiny { @include reveal-modal-base(false, 30%); }
121
+ &.small { @include reveal-modal-base(false, 40%); }
122
+ &.medium { @include reveal-modal-base(false, 60%); }
123
+ &.large { @include reveal-modal-base(false, 70%); }
124
+ &.xlarge { @include reveal-modal-base(false, 95%); }
125
+ }
126
+ }
127
+
128
+ // Reveal Print Styles
129
+ @media print {
130
+ .reveal-modal {background: #fff !important;}
131
+ }
132
+ }