twitter-bootstrap3-rails 3.2.7

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 (132) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +708 -0
  3. data/Rakefile +46 -0
  4. data/app/assets/fonts/fontawesome-webfont.eot +0 -0
  5. data/app/assets/fonts/fontawesome-webfont.svg +399 -0
  6. data/app/assets/fonts/fontawesome-webfont.ttf +0 -0
  7. data/app/assets/fonts/fontawesome-webfont.woff +0 -0
  8. data/app/assets/images/twitter/bootstrap/glyphicons-halflings-white.png +0 -0
  9. data/app/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
  10. data/app/assets/javascripts/twitter/bootstrap.js +12 -0
  11. data/app/assets/javascripts/twitter/bootstrap/affix.js +126 -0
  12. data/app/assets/javascripts/twitter/bootstrap/alert.js +98 -0
  13. data/app/assets/javascripts/twitter/bootstrap/button.js +109 -0
  14. data/app/assets/javascripts/twitter/bootstrap/carousel.js +217 -0
  15. data/app/assets/javascripts/twitter/bootstrap/collapse.js +179 -0
  16. data/app/assets/javascripts/twitter/bootstrap/dropdown.js +154 -0
  17. data/app/assets/javascripts/twitter/bootstrap/modal.js +244 -0
  18. data/app/assets/javascripts/twitter/bootstrap/popover.js +117 -0
  19. data/app/assets/javascripts/twitter/bootstrap/scrollspy.js +158 -0
  20. data/app/assets/javascripts/twitter/bootstrap/tab.js +135 -0
  21. data/app/assets/javascripts/twitter/bootstrap/tooltip.js +382 -0
  22. data/app/assets/javascripts/twitter/bootstrap/transition.js +56 -0
  23. data/app/assets/javascripts/twitter/bootstrap_ujs.js +11 -0
  24. data/app/assets/stylesheets/twitter-bootstrap-static/bootstrap.css.erb +5579 -0
  25. data/app/assets/stylesheets/twitter-bootstrap-static/fontawesome.css.erb +787 -0
  26. data/app/assets/stylesheets/twitter-bootstrap-static/sprites.css.erb +146 -0
  27. data/app/helpers/badge_label_helper.rb +16 -0
  28. data/app/helpers/bootstrap_flash_helper.rb +29 -0
  29. data/app/helpers/flash_block_helper.rb +17 -0
  30. data/app/helpers/glyph_helper.rb +17 -0
  31. data/app/helpers/modal_helper.rb +59 -0
  32. data/app/helpers/navbar_helper.rb +195 -0
  33. data/app/helpers/twitter_breadcrumbs_helper.rb +10 -0
  34. data/app/views/twitter-bootstrap/_breadcrumbs.html.erb +12 -0
  35. data/lib/generators/bootstrap/install/install_generator.rb +82 -0
  36. data/lib/generators/bootstrap/install/templates/application.css +7 -0
  37. data/lib/generators/bootstrap/install/templates/application.js +10 -0
  38. data/lib/generators/bootstrap/install/templates/bootstrap.coffee +3 -0
  39. data/lib/generators/bootstrap/install/templates/bootstrap.js +4 -0
  40. data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.css +7 -0
  41. data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.less +29 -0
  42. data/lib/generators/bootstrap/install/templates/en.bootstrap.yml +18 -0
  43. data/lib/generators/bootstrap/layout/layout_generator.rb +20 -0
  44. data/lib/generators/bootstrap/layout/templates/layout.html.erb +85 -0
  45. data/lib/generators/bootstrap/layout/templates/layout.html.haml +50 -0
  46. data/lib/generators/bootstrap/layout/templates/layout.html.slim +52 -0
  47. data/lib/generators/bootstrap/partial/partial_generator.rb +20 -0
  48. data/lib/generators/bootstrap/partial/templates/_login.html.erb +28 -0
  49. data/lib/generators/bootstrap/themed/templates/_form.html.erb +16 -0
  50. data/lib/generators/bootstrap/themed/templates/_form.html.haml +9 -0
  51. data/lib/generators/bootstrap/themed/templates/_form.html.slim +10 -0
  52. data/lib/generators/bootstrap/themed/templates/edit.html.erb +5 -0
  53. data/lib/generators/bootstrap/themed/templates/edit.html.haml +4 -0
  54. data/lib/generators/bootstrap/themed/templates/edit.html.slim +4 -0
  55. data/lib/generators/bootstrap/themed/templates/index.html.erb +40 -0
  56. data/lib/generators/bootstrap/themed/templates/index.html.haml +25 -0
  57. data/lib/generators/bootstrap/themed/templates/index.html.slim +27 -0
  58. data/lib/generators/bootstrap/themed/templates/new.html.erb +5 -0
  59. data/lib/generators/bootstrap/themed/templates/new.html.haml +4 -0
  60. data/lib/generators/bootstrap/themed/templates/new.html.slim +4 -0
  61. data/lib/generators/bootstrap/themed/templates/show.html.erb +21 -0
  62. data/lib/generators/bootstrap/themed/templates/show.html.haml +15 -0
  63. data/lib/generators/bootstrap/themed/templates/show.html.slim +16 -0
  64. data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.erb +13 -0
  65. data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.haml +10 -0
  66. data/lib/generators/bootstrap/themed/templates/simple_form/_form.html.slim +11 -0
  67. data/lib/generators/bootstrap/themed/themed_generator.rb +148 -0
  68. data/lib/twitter-bootstrap-rails.rb +10 -0
  69. data/lib/twitter/bootstrap/rails/bootstrap.rb +2 -0
  70. data/lib/twitter/bootstrap/rails/engine.rb +33 -0
  71. data/lib/twitter/bootstrap/rails/twitter-bootstrap-breadcrumbs.rb +42 -0
  72. data/lib/twitter/bootstrap/rails/version.rb +7 -0
  73. data/spec/lib/twitter_bootstrap_rails/badge_label_helper_spec.rb +22 -0
  74. data/spec/lib/twitter_bootstrap_rails/modal_helper_spec.rb +62 -0
  75. data/spec/lib/twitter_bootstrap_rails/navbar_helper_spec.rb +331 -0
  76. data/spec/lib/twitter_bootstrap_rails/uri_state_spec.rb +47 -0
  77. data/spec/spec_helper.rb +11 -0
  78. data/test/lib/breadcrumbs_test.rb +75 -0
  79. data/test/test_helper.rb +11 -0
  80. data/vendor/assets/stylesheets/twitter-bootstrap-static/bootstrap.css.erb +5579 -0
  81. data/vendor/static-source/bootstrap.less +1 -0
  82. data/vendor/static-source/fontawesome.less +9 -0
  83. data/vendor/static-source/sprites.less +6 -0
  84. data/vendor/toolkit/fontawesome/bootstrap.less +84 -0
  85. data/vendor/toolkit/fontawesome/core.less +129 -0
  86. data/vendor/toolkit/fontawesome/extras.less +93 -0
  87. data/vendor/toolkit/fontawesome/font-awesome-ie7.less +1953 -0
  88. data/vendor/toolkit/fontawesome/font-awesome.less +33 -0
  89. data/vendor/toolkit/fontawesome/icons.less +381 -0
  90. data/vendor/toolkit/fontawesome/mixins.less +48 -0
  91. data/vendor/toolkit/fontawesome/path.less +14 -0
  92. data/vendor/toolkit/fontawesome/variables.less +735 -0
  93. data/vendor/toolkit/twitter/bootstrap/alerts.less +71 -0
  94. data/vendor/toolkit/twitter/bootstrap/badges.less +51 -0
  95. data/vendor/toolkit/twitter/bootstrap/bootstrap.less +63 -0
  96. data/vendor/toolkit/twitter/bootstrap/breadcrumbs.less +23 -0
  97. data/vendor/toolkit/twitter/bootstrap/button-groups.less +244 -0
  98. data/vendor/toolkit/twitter/bootstrap/buttons.less +159 -0
  99. data/vendor/toolkit/twitter/bootstrap/carousel.less +204 -0
  100. data/vendor/toolkit/twitter/bootstrap/close.less +33 -0
  101. data/vendor/toolkit/twitter/bootstrap/code.less +56 -0
  102. data/vendor/toolkit/twitter/bootstrap/component-animations.less +29 -0
  103. data/vendor/toolkit/twitter/bootstrap/dropdowns.less +176 -0
  104. data/vendor/toolkit/twitter/bootstrap/forms.less +332 -0
  105. data/vendor/toolkit/twitter/bootstrap/grid.less +340 -0
  106. data/vendor/toolkit/twitter/bootstrap/input-groups.less +127 -0
  107. data/vendor/toolkit/twitter/bootstrap/jumbotron.less +29 -0
  108. data/vendor/toolkit/twitter/bootstrap/labels.less +54 -0
  109. data/vendor/toolkit/twitter/bootstrap/list-group.less +88 -0
  110. data/vendor/toolkit/twitter/bootstrap/media.less +56 -0
  111. data/vendor/toolkit/twitter/bootstrap/mixins.less +693 -0
  112. data/vendor/toolkit/twitter/bootstrap/modals.less +133 -0
  113. data/vendor/toolkit/twitter/bootstrap/navbar.less +559 -0
  114. data/vendor/toolkit/twitter/bootstrap/navs.less +228 -0
  115. data/vendor/toolkit/twitter/bootstrap/normalize.less +396 -0
  116. data/vendor/toolkit/twitter/bootstrap/pager.less +55 -0
  117. data/vendor/toolkit/twitter/bootstrap/pagination.less +72 -0
  118. data/vendor/toolkit/twitter/bootstrap/panels.less +128 -0
  119. data/vendor/toolkit/twitter/bootstrap/popovers.less +133 -0
  120. data/vendor/toolkit/twitter/bootstrap/print.less +100 -0
  121. data/vendor/toolkit/twitter/bootstrap/progress-bars.less +99 -0
  122. data/vendor/toolkit/twitter/bootstrap/responsive-utilities.less +149 -0
  123. data/vendor/toolkit/twitter/bootstrap/scaffolding.less +111 -0
  124. data/vendor/toolkit/twitter/bootstrap/tables.less +211 -0
  125. data/vendor/toolkit/twitter/bootstrap/thumbnails.less +42 -0
  126. data/vendor/toolkit/twitter/bootstrap/tooltip.less +95 -0
  127. data/vendor/toolkit/twitter/bootstrap/type.less +238 -0
  128. data/vendor/toolkit/twitter/bootstrap/utilities.less +42 -0
  129. data/vendor/toolkit/twitter/bootstrap/variables.less +607 -0
  130. data/vendor/toolkit/twitter/bootstrap/wells.less +29 -0
  131. data/vendor/toolkit/twitter/bootstrap_base.less +2 -0
  132. metadata +297 -0
@@ -0,0 +1,159 @@
1
+ //
2
+ // Buttons
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Base styles
7
+ // --------------------------------------------------
8
+
9
+ // Core styles
10
+ .btn {
11
+ display: inline-block;
12
+ padding: @padding-base-vertical @padding-base-horizontal;
13
+ margin-bottom: 0; // For input.btn
14
+ font-size: @font-size-base;
15
+ font-weight: @btn-font-weight;
16
+ line-height: @line-height-base;
17
+ text-align: center;
18
+ vertical-align: middle;
19
+ cursor: pointer;
20
+ border: 1px solid transparent;
21
+ border-radius: @border-radius-base;
22
+ white-space: nowrap;
23
+ .user-select(none);
24
+
25
+ &:focus {
26
+ .tab-focus();
27
+ }
28
+
29
+ &:hover,
30
+ &:focus {
31
+ color: @btn-default-color;
32
+ text-decoration: none;
33
+ }
34
+
35
+ &:active,
36
+ &.active {
37
+ outline: 0;
38
+ .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
39
+ }
40
+
41
+ &.disabled,
42
+ &[disabled],
43
+ fieldset[disabled] & {
44
+ cursor: default;
45
+ pointer-events: none; // Future-proof disabling of clicks
46
+ .opacity(.65);
47
+ .box-shadow(none);
48
+ }
49
+
50
+ }
51
+
52
+
53
+ // Alternate buttons
54
+ // --------------------------------------------------
55
+
56
+ .btn-default {
57
+ .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);
58
+ }
59
+ .btn-primary {
60
+ .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);
61
+ }
62
+ // Warning appears as orange
63
+ .btn-warning {
64
+ .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);
65
+ }
66
+ // Danger and error appear as red
67
+ .btn-danger {
68
+ .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);
69
+ }
70
+ // Success appears as green
71
+ .btn-success {
72
+ .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);
73
+ }
74
+ // Info appears as blue-green
75
+ .btn-info {
76
+ .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);
77
+ }
78
+
79
+
80
+ // Link buttons
81
+ // -------------------------
82
+
83
+ // Make a button look and behave like a link
84
+ .btn-link {
85
+ color: @link-color;
86
+ font-weight: normal;
87
+ cursor: pointer;
88
+ border-radius: 0;
89
+
90
+ &,
91
+ &:active,
92
+ &[disabled],
93
+ fieldset[disabled] & {
94
+ background-color: transparent;
95
+ .box-shadow(none);
96
+ }
97
+ &,
98
+ &:hover,
99
+ &:focus,
100
+ &:active {
101
+ border-color: transparent;
102
+ }
103
+ &:hover,
104
+ &:focus {
105
+ color: @link-hover-color;
106
+ text-decoration: underline;
107
+ background-color: transparent;
108
+ }
109
+ &[disabled],
110
+ fieldset[disabled] & {
111
+ &:hover,
112
+ &:focus {
113
+ color: @btn-link-disabled-color;
114
+ text-decoration: none;
115
+ }
116
+ }
117
+ }
118
+
119
+
120
+ // Button Sizes
121
+ // --------------------------------------------------
122
+
123
+ .btn-lg {
124
+ // line-height: ensure even-numbered height of button next to large input
125
+ .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
126
+ }
127
+ .btn-sm,
128
+ .btn-xs {
129
+ // line-height: ensure proper height of button next to small input
130
+ .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
131
+ }
132
+ .btn-xs {
133
+ padding: 3px 5px;
134
+ }
135
+
136
+
137
+ // Block button
138
+ // --------------------------------------------------
139
+
140
+ .btn-block {
141
+ display: block;
142
+ width: 100%;
143
+ padding-left: 0;
144
+ padding-right: 0;
145
+ }
146
+
147
+ // Vertically space out multiple block buttons
148
+ .btn-block + .btn-block {
149
+ margin-top: 5px;
150
+ }
151
+
152
+ // Specificity overrides
153
+ input[type="submit"],
154
+ input[type="reset"],
155
+ input[type="button"] {
156
+ &.btn-block {
157
+ width: 100%;
158
+ }
159
+ }
@@ -0,0 +1,204 @@
1
+ //
2
+ // Carousel
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Wrapper for the slide container and indicators
7
+ .carousel {
8
+ position: relative;
9
+ }
10
+
11
+ .carousel-inner {
12
+ position: relative;
13
+ overflow: hidden;
14
+ width: 100%;
15
+
16
+ > .item {
17
+ display: none;
18
+ position: relative;
19
+ .transition(.6s ease-in-out left);
20
+
21
+ // Account for jankitude on images
22
+ > img,
23
+ > a > img {
24
+ .img-responsive();
25
+ line-height: 1;
26
+ }
27
+ }
28
+
29
+ > .active,
30
+ > .next,
31
+ > .prev { display: block; }
32
+
33
+ > .active {
34
+ left: 0;
35
+ }
36
+
37
+ > .next,
38
+ > .prev {
39
+ position: absolute;
40
+ top: 0;
41
+ width: 100%;
42
+ }
43
+
44
+ > .next {
45
+ left: 100%;
46
+ }
47
+ > .prev {
48
+ left: -100%;
49
+ }
50
+ > .next.left,
51
+ > .prev.right {
52
+ left: 0;
53
+ }
54
+
55
+ > .active.left {
56
+ left: -100%;
57
+ }
58
+ > .active.right {
59
+ left: 100%;
60
+ }
61
+
62
+ }
63
+
64
+ // Left/right controls for nav
65
+ // ---------------------------
66
+
67
+ .carousel-control {
68
+ position: absolute;
69
+ top: 0;
70
+ left: 0;
71
+ bottom: 0;
72
+ width: @carousel-control-width;
73
+ .opacity(@carousel-control-opacity);
74
+ font-size: @carousel-control-font-size;
75
+ color: @carousel-control-color;
76
+ text-align: center;
77
+ text-shadow: @carousel-text-shadow;
78
+ // We can't have this transition here because webkit cancels the carousel
79
+ // animation if you trip this while in the middle of another animation.
80
+
81
+ // Set gradients for backgrounds
82
+ &.left {
83
+ #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001));
84
+ }
85
+ &.right {
86
+ left: auto;
87
+ right: 0;
88
+ #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5));
89
+ }
90
+
91
+ // Hover/focus state
92
+ &:hover,
93
+ &:focus {
94
+ color: @carousel-control-color;
95
+ text-decoration: none;
96
+ .opacity(.9);
97
+ }
98
+
99
+ // Toggles
100
+ .icon-prev,
101
+ .icon-next {
102
+ position: absolute;
103
+ top: 50%;
104
+ left: 50%;
105
+ z-index: 5;
106
+ display: inline-block;
107
+ width: 20px;
108
+ height: 20px;
109
+ margin-top: -10px;
110
+ margin-left: -10px;
111
+ font-family: serif;
112
+ }
113
+
114
+ .icon-prev {
115
+ &:before {
116
+ content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)
117
+ }
118
+ }
119
+ .icon-next {
120
+ &:before {
121
+ content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)
122
+ }
123
+ }
124
+ }
125
+
126
+ // Optional indicator pips
127
+ //
128
+ // Add an unordered list with the following class and add a list item for each
129
+ // slide your carousel holds.
130
+
131
+ .carousel-indicators {
132
+ position: absolute;
133
+ bottom: 10px;
134
+ left: 50%;
135
+ z-index: 15;
136
+ width: 60%;
137
+ margin-left: -30%;
138
+ padding-left: 0;
139
+ list-style: none;
140
+ text-align: center;
141
+
142
+ li {
143
+ display: inline-block;
144
+ width: 10px;
145
+ height: 10px;
146
+ margin: 1px;
147
+ text-indent: -999px;
148
+ border: 1px solid @carousel-indicator-border-color;
149
+ border-radius: 10px;
150
+ cursor: pointer;
151
+ }
152
+ .active {
153
+ margin: 0;
154
+ width: 12px;
155
+ height: 12px;
156
+ background-color: @carousel-indicator-active-bg;
157
+ }
158
+ }
159
+
160
+ // Optional captions
161
+ // -----------------------------
162
+ // Hidden by default for smaller viewports
163
+ .carousel-caption {
164
+ position: absolute;
165
+ left: 15%;
166
+ right: 15%;
167
+ bottom: 20px;
168
+ z-index: 10;
169
+ padding-top: 20px;
170
+ padding-bottom: 20px;
171
+ color: @carousel-caption-color;
172
+ text-align: center;
173
+ text-shadow: @carousel-text-shadow;
174
+ & .btn {
175
+ text-shadow: none; // No shadow for button elements in carousel-caption
176
+ }
177
+ }
178
+
179
+
180
+ // Scale up controls for tablets and up
181
+ @media screen and (min-width: @screen-tablet) {
182
+
183
+ // Scale up the controls a smidge
184
+ .carousel-control .icon-prev,
185
+ .carousel-control .icon-next {
186
+ width: 30px;
187
+ height: 30px;
188
+ margin-top: -15px;
189
+ margin-left: -15px;
190
+ font-size: 30px;
191
+ }
192
+
193
+ // Show and left align the captions
194
+ .carousel-caption {
195
+ left: 20%;
196
+ right: 20%;
197
+ padding-bottom: 30px;
198
+ }
199
+
200
+ // Move up the indicators
201
+ .carousel-indicators {
202
+ bottom: 20px;
203
+ }
204
+ }
@@ -0,0 +1,33 @@
1
+ //
2
+ // Close icons
3
+ // --------------------------------------------------
4
+
5
+
6
+ .close {
7
+ float: right;
8
+ font-size: (@font-size-base * 1.5);
9
+ font-weight: @close-font-weight;
10
+ line-height: 1;
11
+ color: @close-color;
12
+ text-shadow: @close-text-shadow;
13
+ .opacity(.2);
14
+
15
+ &:hover,
16
+ &:focus {
17
+ color: @close-color;
18
+ text-decoration: none;
19
+ cursor: pointer;
20
+ .opacity(.5);
21
+ }
22
+
23
+ // Additional properties for button version
24
+ // iOS requires the button element instead of an anchor tag.
25
+ // If you want the anchor version, it requires `href="#"`.
26
+ button& {
27
+ padding: 0;
28
+ cursor: pointer;
29
+ background: transparent;
30
+ border: 0;
31
+ -webkit-appearance: none;
32
+ }
33
+ }
@@ -0,0 +1,56 @@
1
+ //
2
+ // Code (inline and blocK)
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Inline and block code styles
7
+ code,
8
+ pre {
9
+ font-family: @font-family-monospace;
10
+ }
11
+
12
+ // Inline code
13
+ code {
14
+ padding: 2px 4px;
15
+ font-size: 90%;
16
+ color: @code-color;
17
+ background-color: @code-bg;
18
+ white-space: nowrap;
19
+ border-radius: @border-radius-base;
20
+ }
21
+
22
+ // Blocks of code
23
+ pre {
24
+ display: block;
25
+ padding: ((@line-height-computed - 1) / 2);
26
+ margin: 0 0 (@line-height-computed / 2);
27
+ font-size: (@font-size-base - 1); // 14px to 13px
28
+ line-height: @line-height-base;
29
+ word-break: break-all;
30
+ word-wrap: break-word;
31
+ color: @pre-color;
32
+ background-color: @pre-bg;
33
+ border: 1px solid @pre-border-color;
34
+ border-radius: @border-radius-base;
35
+
36
+ // Make prettyprint styles more spaced out for readability
37
+ &.prettyprint {
38
+ margin-bottom: @line-height-computed;
39
+ }
40
+
41
+ // Account for some code outputs that place code tags in pre tags
42
+ code {
43
+ padding: 0;
44
+ font-size: inherit;
45
+ color: inherit;
46
+ white-space: pre-wrap;
47
+ background-color: transparent;
48
+ border: 0;
49
+ }
50
+ }
51
+
52
+ // Enable scrollable blocks of code
53
+ .pre-scrollable {
54
+ max-height: @pre-scrollable-max-height;
55
+ overflow-y: scroll;
56
+ }