railsstrap 3.3.4 → 4.0.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/generators/railsstrap/install/install_generator.rb +18 -25
- data/lib/generators/railsstrap/install/templates/application.css +1 -2
- data/lib/generators/railsstrap/install/templates/application.js +2 -5
- data/lib/generators/railsstrap/install/templates/bootstrap.js +6 -6
- data/lib/generators/railsstrap/layout/layout_generator.rb +4 -2
- data/lib/generators/railsstrap/layout/templates/layout.html.erb +69 -72
- data/lib/generators/railsstrap/layout/templates/layout.html.haml +2 -2
- data/lib/generators/railsstrap/layout/templates/layout.html.slim +14 -14
- data/lib/generators/railsstrap/partial/partial_generator.rb +4 -2
- data/lib/generators/railsstrap/partial/templates/_login.html.erb +1 -1
- data/lib/generators/railsstrap/scaffold/scaffold_generator.rb +103 -0
- data/lib/generators/railsstrap/scaffold/templates/_form.html.erb +21 -0
- data/lib/generators/railsstrap/{themed → scaffold}/templates/_form.html.haml +3 -4
- data/lib/generators/railsstrap/scaffold/templates/_form.html.slim +15 -0
- data/lib/generators/railsstrap/scaffold/templates/edit.html.erb +3 -0
- data/lib/generators/railsstrap/scaffold/templates/edit.html.haml +3 -0
- data/lib/generators/railsstrap/scaffold/templates/edit.html.slim +2 -0
- data/lib/generators/railsstrap/scaffold/templates/index.html.erb +43 -0
- data/lib/generators/railsstrap/scaffold/templates/index.html.haml +25 -0
- data/lib/generators/railsstrap/scaffold/templates/index.html.slim +26 -0
- data/lib/generators/railsstrap/scaffold/templates/new.html.erb +5 -0
- data/lib/generators/railsstrap/scaffold/templates/new.html.haml +4 -0
- data/lib/generators/railsstrap/scaffold/templates/new.html.slim +4 -0
- data/lib/generators/railsstrap/scaffold/templates/show.html.erb +22 -0
- data/lib/generators/railsstrap/scaffold/templates/show.html.haml +15 -0
- data/lib/generators/railsstrap/scaffold/templates/show.html.slim +16 -0
- data/lib/generators/railsstrap/scaffold/templates/simple_form/_form.html.erb +14 -0
- data/lib/generators/railsstrap/scaffold/templates/simple_form/_form.html.haml +11 -0
- data/lib/generators/railsstrap/scaffold/templates/simple_form/_form.html.slim +12 -0
- data/lib/railsstrap.rb +13 -2
- data/lib/railsstrap/classes/alert_box.rb +62 -0
- data/lib/railsstrap/classes/aside.rb +67 -0
- data/lib/railsstrap/classes/badge.rb +38 -0
- data/lib/railsstrap/classes/base.rb +149 -0
- data/lib/railsstrap/classes/button.rb +68 -0
- data/lib/railsstrap/classes/button_group.rb +66 -0
- data/lib/railsstrap/classes/button_to.rb +33 -0
- data/lib/railsstrap/classes/card.rb +74 -0
- data/lib/railsstrap/classes/card_group.rb +22 -0
- data/lib/railsstrap/classes/cdn.rb +93 -0
- data/lib/railsstrap/classes/dropdown.rb +56 -0
- data/lib/railsstrap/classes/icon.rb +40 -0
- data/lib/railsstrap/classes/link_to.rb +26 -0
- data/lib/railsstrap/classes/modal.rb +68 -0
- data/lib/railsstrap/classes/nav.rb +46 -0
- data/lib/railsstrap/classes/navbar.rb +72 -0
- data/lib/railsstrap/classes/progress_bar.rb +89 -0
- data/lib/railsstrap/classes/stack.rb +19 -0
- data/lib/railsstrap/classes/vertical.rb +29 -0
- data/lib/railsstrap/core_ext/engine.rb +61 -0
- data/lib/railsstrap/core_ext/rails/base_helper.rb +21 -0
- data/lib/railsstrap/core_ext/rails/form/base_helper.rb +150 -0
- data/lib/railsstrap/core_ext/rails/form/check_box_helper.rb +35 -0
- data/lib/railsstrap/core_ext/rails/form/field_helper.rb +15 -0
- data/lib/railsstrap/core_ext/rails/form/fields_for_helper.rb +23 -0
- data/lib/railsstrap/core_ext/rails/form/fieldset_helper.rb +16 -0
- data/lib/railsstrap/core_ext/rails/form/file_field_helper.rb +15 -0
- data/lib/railsstrap/core_ext/rails/form/legend_helper.rb +17 -0
- data/lib/railsstrap/core_ext/rails/form/radio_button_helper.rb +19 -0
- data/lib/railsstrap/core_ext/rails/form/select_helper.rb +16 -0
- data/lib/railsstrap/core_ext/rails/form/static_control_helper.rb +43 -0
- data/lib/railsstrap/core_ext/rails/form/submit_helper.rb +23 -0
- data/lib/railsstrap/core_ext/rails/form_builder.rb +46 -0
- data/lib/railsstrap/core_ext/rails/form_for_helper.rb +46 -0
- data/lib/railsstrap/helpers/alert_box_helper.rb +41 -0
- data/lib/railsstrap/helpers/aside_helper.rb +57 -0
- data/lib/railsstrap/helpers/badge_helper.rb +41 -0
- data/{app/helpers/railsstrap → lib/railsstrap/helpers}/breadcrumbs.rb +0 -0
- data/{app/helpers/railsstrap → lib/railsstrap/helpers}/breadcrumbs_helper.rb +2 -3
- data/lib/railsstrap/helpers/button_group_helper.rb +34 -0
- data/lib/railsstrap/helpers/button_helper.rb +40 -0
- data/lib/railsstrap/helpers/button_to_helper.rb +65 -0
- data/lib/railsstrap/helpers/card_group_helper.rb +28 -0
- data/lib/railsstrap/helpers/card_helper.rb +56 -0
- data/lib/railsstrap/helpers/cdn_helper.rb +93 -0
- data/lib/railsstrap/helpers/date_picker_helper.rb +78 -0
- data/lib/railsstrap/helpers/dropdown_helper.rb +49 -0
- data/{app/helpers/railsstrap/bootstrap_flash_helper.rb → lib/railsstrap/helpers/flash_helper.rb} +12 -12
- data/lib/railsstrap/helpers/form_errors.rb +36 -0
- data/lib/railsstrap/helpers/glyphicon_helper.rb +21 -0
- data/lib/railsstrap/helpers/horizontal_helper.rb +36 -0
- data/lib/railsstrap/helpers/icon_helper.rb +26 -0
- data/lib/railsstrap/helpers/link_to_helper.rb +61 -0
- data/lib/railsstrap/helpers/modal_helper.rb +55 -0
- data/lib/railsstrap/helpers/nav_helper.rb +34 -0
- data/lib/railsstrap/helpers/navbar_helper.rb +46 -0
- data/lib/railsstrap/helpers/progress_bar_helper.rb +55 -0
- data/lib/railsstrap/helpers/vertical_helper.rb +34 -0
- data/lib/railsstrap/version.rb +3 -0
- data/lib/railsstrap/views/railsstrap/_aside.html.erb +14 -0
- data/lib/railsstrap/views/railsstrap/_dismiss_button.html.erb +4 -0
- data/lib/railsstrap/views/railsstrap/_dropdown.html.erb +9 -0
- data/lib/railsstrap/views/railsstrap/_dropdown_split.html.erb +10 -0
- data/lib/railsstrap/views/railsstrap/_modal.html.erb +14 -0
- data/lib/railsstrap/views/railsstrap/_navbar.html.erb +5 -0
- data/spec/padrino/button_to_helper.rb +35 -0
- data/spec/padrino/link_to_helper.rb +12 -0
- data/spec/padrino_spec.rb +29 -0
- data/spec/rails/button_to_helper.rb +31 -0
- data/spec/rails/form/check_box_helper_spec.rb +112 -0
- data/spec/rails/form/field_helper_spec.rb +138 -0
- data/spec/rails/form/fields_for_helper_spec.rb +65 -0
- data/spec/rails/form/fieldset_helper_spec.rb +32 -0
- data/spec/rails/form/file_field_helper_spec.rb +74 -0
- data/spec/rails/form/legend_helper_spec.rb +35 -0
- data/spec/rails/form/radio_button_helper_spec.rb +89 -0
- data/spec/rails/form/select_helper_spec.rb +88 -0
- data/spec/rails/form/static_control_helper_spec.rb +67 -0
- data/spec/rails/form/submit_helper_spec.rb +30 -0
- data/spec/rails/form_for_helper_spec.rb +46 -0
- data/spec/rails/link_to_helper.rb +12 -0
- data/spec/rails_helper.rb +24 -0
- data/spec/rails_spec.rb +33 -0
- data/spec/shared/alert_box_helper.rb +74 -0
- data/spec/shared/aside_helper.rb +104 -0
- data/spec/shared/badge_helper.rb +62 -0
- data/spec/shared/button_group_helper.rb +29 -0
- data/spec/shared/button_helper.rb +52 -0
- data/spec/shared/button_to_helper.rb +50 -0
- data/spec/shared/card_group_helper.rb +33 -0
- data/spec/shared/card_helper.rb +84 -0
- data/spec/shared/cdn_helper.rb +39 -0
- data/spec/shared/dropdown_helper.rb +112 -0
- data/spec/shared/glyphicon_helper.rb +21 -0
- data/spec/shared/horizontal_helper.rb +37 -0
- data/spec/shared/icon_helper.rb +31 -0
- data/spec/shared/link_to_helper.rb +84 -0
- data/spec/shared/modal_helper.rb +96 -0
- data/spec/shared/nav_helper.rb +49 -0
- data/spec/shared/navbar_helper.rb +60 -0
- data/spec/shared/progress_bar_helper.rb +103 -0
- data/spec/shared/vertical_helper.rb +37 -0
- data/spec/spec_helper.rb +17 -20
- data/spec/support/matchers.rb +47 -0
- data/spec/support/padrino.rb +33 -0
- data/spec/support/rails.rb +27 -0
- data/vendor/assets/javascripts/railsstrap.min.js +1 -0
- data/vendor/assets/javascripts/railsstrap.min.js.gz +0 -0
- data/vendor/assets/stylesheets/_alert.scss +51 -0
- data/vendor/assets/stylesheets/_badge.scss +47 -0
- data/vendor/assets/stylesheets/_breadcrumb.scss +38 -0
- data/vendor/assets/stylesheets/_button-group.scss +166 -0
- data/vendor/assets/stylesheets/_buttons.scss +143 -0
- data/vendor/assets/stylesheets/_card.scss +270 -0
- data/vendor/assets/stylesheets/_carousel.scss +191 -0
- data/vendor/assets/stylesheets/_close.scss +34 -0
- data/vendor/assets/stylesheets/_code.scss +56 -0
- data/vendor/assets/stylesheets/_custom-forms.scss +297 -0
- data/vendor/assets/stylesheets/_dropdown.scss +131 -0
- data/vendor/assets/stylesheets/_forms.scss +333 -0
- data/vendor/assets/stylesheets/_functions.scss +86 -0
- data/vendor/assets/stylesheets/_grid.scss +52 -0
- data/vendor/assets/stylesheets/_images.scss +42 -0
- data/vendor/assets/stylesheets/_input-group.scss +159 -0
- data/vendor/assets/stylesheets/_jumbotron.scss +16 -0
- data/vendor/assets/stylesheets/_list-group.scss +115 -0
- data/vendor/assets/stylesheets/_media.scss +8 -0
- data/vendor/assets/stylesheets/_mixins.scss +43 -0
- data/vendor/assets/stylesheets/_modal.scss +168 -0
- data/vendor/assets/stylesheets/_nav.scss +118 -0
- data/vendor/assets/stylesheets/_navbar.scss +311 -0
- data/vendor/assets/stylesheets/_pagination.scss +77 -0
- data/vendor/assets/stylesheets/_popover.scss +183 -0
- data/vendor/assets/stylesheets/_print.scss +124 -0
- data/vendor/assets/stylesheets/_progress.scss +33 -0
- data/vendor/assets/stylesheets/_reboot.scss +482 -0
- data/vendor/assets/stylesheets/_root.scss +19 -0
- data/vendor/assets/stylesheets/_tables.scss +180 -0
- data/vendor/assets/stylesheets/_tooltip.scss +115 -0
- data/vendor/assets/stylesheets/_transitions.scss +36 -0
- data/vendor/assets/stylesheets/_type.scss +125 -0
- data/vendor/assets/stylesheets/_utilities.scss +14 -0
- data/vendor/assets/stylesheets/_variables.scss +898 -0
- data/vendor/assets/stylesheets/alert/{alert.less → alert.scss} +31 -15
- data/vendor/assets/stylesheets/animate/bounce/{bounce.less → bounce.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceIn.less → bounceIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceInDown.less → bounceInDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceInLeft.less → bounceInLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceInRight.less → bounceInRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceInUp.less → bounceInUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceOut.less → bounceOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceOutDown.less → bounceOutDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceOutLeft.less → bounceOutLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceOutRight.less → bounceOutRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/bounce/{bounceOutUp.less → bounceOutUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeIn.less → fadeIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInDown.less → fadeInDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInDownBig.less → fadeInDownBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInLeft.less → fadeInLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInLeftBig.less → fadeInLeftBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInRight.less → fadeInRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInRightBig.less → fadeInRightBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInUp.less → fadeInUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeInUpBig.less → fadeInUpBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOut.less → fadeOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutDown.less → fadeOutDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutDownBig.less → fadeOutDownBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutLeft.less → fadeOutLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutLeftBig.less → fadeOutLeftBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutRight.less → fadeOutRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutRightBig.less → fadeOutRightBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutUp.less → fadeOutUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/fade/{fadeOutUpBig.less → fadeOutUpBig.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{flash.less → flash.scss} +0 -0
- data/vendor/assets/stylesheets/animate/flip/{flip.less → flip.scss} +0 -0
- data/vendor/assets/stylesheets/animate/flip/{flipInX.less → flipInX.scss} +0 -0
- data/vendor/assets/stylesheets/animate/flip/{flipOutX.less → flipOutX.scss} +0 -0
- data/vendor/assets/stylesheets/animate/flip/{flipOutY.less → flipOutY.scss} +0 -0
- data/vendor/assets/stylesheets/animate/flip/{flipinY.less → flipinY.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{hinge.less → hinge.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{lightSpeedIn.less → lightSpeedIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{lightSpeedOut.less → lightSpeedOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{pulse.less → pulse.scss} +0 -0
- data/vendor/assets/stylesheets/animate/roll/{rollIn.less → rollIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/roll/{rollOut.less → rollOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateIn.less → rotateIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateInDownLeft.less → rotateInDownLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateInDownRight.less → rotateInDownRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateInUpLeft.less → rotateInUpLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateInUpRight.less → rotateInUpRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateOut.less → rotateOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateOutDownLeft.less → rotateOutDownLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateOutDownRight.less → rotateOutDownRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateOutUpLeft.less → rotateOutUpLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/rotate/{rotateOutUpRight.less → rotateOutUpRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{rubberBand.less → rubberBand.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{shake.less → shake.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideInDown.less → slideInDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideInLeft.less → slideInLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideInRight.less → slideInRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideInUp.less → slideInUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideOutDown.less → slideOutDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideOutLeft.less → slideOutLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideOutRight.less → slideOutRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/slide/{slideOutUp.less → slideOutUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{swing.less → swing.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{tada.less → tada.scss} +0 -0
- data/vendor/assets/stylesheets/animate/{wobble.less → wobble.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomIn.less → zoomIn.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomInDown.less → zoomInDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomInLeft.less → zoomInLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomInRight.less → zoomInRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomInUp.less → zoomInUp.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomOut.less → zoomOut.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomOutDown.less → zoomOutDown.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomOutLeft.less → zoomOutLeft.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomOutRight.less → zoomOutRight.scss} +0 -0
- data/vendor/assets/stylesheets/animate/zoom/{zoomOutUp.less → zoomOutUp.scss} +0 -0
- data/vendor/assets/stylesheets/aside/aside.scss +121 -0
- data/vendor/assets/stylesheets/{bootstrap-additions.less → bootstrap-additions.scss} +0 -2
- data/vendor/assets/stylesheets/bootstrap-grid.scss +32 -0
- data/vendor/assets/stylesheets/bootstrap-reboot.scss +12 -0
- data/vendor/assets/stylesheets/bootstrap.scss +42 -0
- data/vendor/assets/stylesheets/callout/{callout.less → callout.scss} +0 -0
- data/vendor/assets/stylesheets/datepicker/{datepicker.less → datepicker.scss} +1 -2
- data/vendor/assets/stylesheets/fontawesome.scss +11 -0
- data/vendor/assets/stylesheets/mixins/_alert.scss +13 -0
- data/vendor/assets/stylesheets/mixins/_animated.scss +16 -0
- data/vendor/assets/stylesheets/mixins/_background-variant.scss +21 -0
- data/vendor/assets/stylesheets/mixins/_badge.scss +12 -0
- data/vendor/assets/stylesheets/mixins/_border-radius.scss +35 -0
- data/vendor/assets/stylesheets/mixins/_box-shadow.scss +5 -0
- data/vendor/assets/stylesheets/mixins/_breakpoints.scss +123 -0
- data/vendor/assets/stylesheets/mixins/_buttons.scss +109 -0
- data/vendor/assets/stylesheets/mixins/_caret.scss +65 -0
- data/vendor/assets/stylesheets/mixins/_clearfix.scss +7 -0
- data/vendor/assets/stylesheets/mixins/_float.scss +11 -0
- data/vendor/assets/stylesheets/mixins/_forms.scss +137 -0
- data/vendor/assets/stylesheets/mixins/_gradients.scss +45 -0
- data/vendor/assets/stylesheets/mixins/_grid-framework.scss +67 -0
- data/vendor/assets/stylesheets/mixins/_grid.scss +52 -0
- data/vendor/assets/stylesheets/mixins/_hover.scss +39 -0
- data/vendor/assets/stylesheets/mixins/_image.scss +36 -0
- data/vendor/assets/stylesheets/mixins/_list-group.scss +21 -0
- data/vendor/assets/stylesheets/mixins/_lists.scss +7 -0
- data/vendor/assets/stylesheets/mixins/_nav-divider.scss +10 -0
- data/vendor/assets/stylesheets/mixins/_navbar-align.scss +10 -0
- data/vendor/assets/stylesheets/mixins/_pagination.scss +22 -0
- data/vendor/assets/stylesheets/mixins/_reset-text.scss +17 -0
- data/vendor/assets/{bower_components/bootstrap/less/mixins/resize.less → stylesheets/mixins/_resize.scss} +2 -2
- data/vendor/assets/stylesheets/mixins/_screen-reader.scss +35 -0
- data/vendor/assets/stylesheets/mixins/_size.scss +6 -0
- data/vendor/assets/stylesheets/mixins/_table-row.scss +30 -0
- data/vendor/assets/stylesheets/mixins/_text-emphasis.scss +14 -0
- data/vendor/assets/stylesheets/mixins/_text-hide.scss +9 -0
- data/vendor/assets/{bower_components/bootstrap/less/mixins/text-overflow.less → stylesheets/mixins/_text-truncate.scss} +2 -2
- data/vendor/assets/stylesheets/mixins/_transition.scss +9 -0
- data/vendor/assets/stylesheets/mixins/_visibility.scss +7 -0
- data/vendor/assets/stylesheets/modal/{modal.less → modal.scss} +0 -0
- data/vendor/assets/stylesheets/popover/popover.scss +34 -0
- data/vendor/assets/stylesheets/railsstrap.min.css +8923 -0
- data/vendor/assets/stylesheets/railsstrap.min.css.gz +0 -0
- data/vendor/assets/stylesheets/railsstrap.scss +78 -0
- data/vendor/assets/stylesheets/timepicker/{timepicker.less → timepicker.scss} +0 -0
- data/vendor/assets/stylesheets/tooltip/tooltip.scss +60 -0
- data/vendor/assets/stylesheets/utilities/_align.scss +8 -0
- data/vendor/assets/stylesheets/utilities/_background.scss +19 -0
- data/vendor/assets/stylesheets/utilities/_borders.scss +59 -0
- data/vendor/assets/stylesheets/utilities/_clearfix.scss +3 -0
- data/vendor/assets/stylesheets/utilities/_display.scss +38 -0
- data/vendor/assets/{bower_components/bootstrap/less/responsive-embed.less → stylesheets/utilities/_embed.scss} +26 -9
- data/vendor/assets/stylesheets/utilities/_flex.scss +46 -0
- data/vendor/assets/stylesheets/utilities/_float.scss +9 -0
- data/vendor/assets/stylesheets/utilities/_position.scss +36 -0
- data/vendor/assets/stylesheets/utilities/_screenreaders.scss +11 -0
- data/vendor/assets/stylesheets/utilities/_sizing.scss +12 -0
- data/vendor/assets/stylesheets/utilities/_spacing.scss +51 -0
- data/vendor/assets/stylesheets/utilities/_text.scss +52 -0
- data/vendor/assets/stylesheets/utilities/_visibility.scss +11 -0
- metadata +425 -546
- data/.bowerrc +0 -3
- data/README.md +0 -93
- data/Rakefile +0 -25
- data/app/helpers/railsstrap/aside_helper.rb +0 -59
- data/app/helpers/railsstrap/badge_label_helper.rb +0 -18
- data/app/helpers/railsstrap/date_picker_helper.rb +0 -92
- data/app/helpers/railsstrap/form_errors_helper.rb +0 -28
- data/app/helpers/railsstrap/glyph_helper.rb +0 -22
- data/app/helpers/railsstrap/icon_helper.rb +0 -22
- data/app/helpers/railsstrap/modal_helper.rb +0 -59
- data/app/helpers/railsstrap/navbar_helper.rb +0 -210
- data/app/views/railsstrap/_breadcrumbs.html.erb +0 -14
- data/lib/generators/railsstrap/install/templates/bootstrap_and_overrides.css +0 -9
- data/lib/generators/railsstrap/install/templates/bootstrap_and_overrides.less +0 -42
- data/lib/generators/railsstrap/themed/templates/_form.html.erb +0 -36
- data/lib/generators/railsstrap/themed/templates/_form.html.slim +0 -13
- data/lib/generators/railsstrap/themed/templates/edit.html.erb +0 -5
- data/lib/generators/railsstrap/themed/templates/edit.html.haml +0 -4
- data/lib/generators/railsstrap/themed/templates/edit.html.slim +0 -4
- data/lib/generators/railsstrap/themed/templates/index.html.erb +0 -40
- data/lib/generators/railsstrap/themed/templates/index.html.haml +0 -25
- data/lib/generators/railsstrap/themed/templates/index.html.slim +0 -26
- data/lib/generators/railsstrap/themed/templates/new.html.erb +0 -5
- data/lib/generators/railsstrap/themed/templates/new.html.haml +0 -4
- data/lib/generators/railsstrap/themed/templates/new.html.slim +0 -4
- data/lib/generators/railsstrap/themed/templates/show.html.erb +0 -21
- data/lib/generators/railsstrap/themed/templates/show.html.haml +0 -15
- data/lib/generators/railsstrap/themed/templates/show.html.slim +0 -16
- data/lib/generators/railsstrap/themed/templates/simple_form/_form.html.erb +0 -14
- data/lib/generators/railsstrap/themed/templates/simple_form/_form.html.haml +0 -11
- data/lib/generators/railsstrap/themed/templates/simple_form/_form.html.slim +0 -12
- data/lib/generators/railsstrap/themed/themed_generator.rb +0 -148
- data/lib/railsstrap/bootstrap.rb +0 -2
- data/lib/railsstrap/constants.rb +0 -6
- data/lib/railsstrap/engine.rb +0 -46
- data/spec/lib/railsstrap/aside_helper_spec.rb +0 -140
- data/spec/lib/railsstrap/badge_label_helper_spec.rb +0 -29
- data/spec/lib/railsstrap/bootstrap_flash_helper_spec.rb +0 -130
- data/spec/lib/railsstrap/breadcrumbs_spec.rb +0 -75
- data/spec/lib/railsstrap/datepicker_helper_spec.rb +0 -59
- data/spec/lib/railsstrap/form_errors_helper_spec.rb +0 -147
- data/spec/lib/railsstrap/glyph_helper_spec.rb +0 -24
- data/spec/lib/railsstrap/icon_helper_spec.rb +0 -24
- data/spec/lib/railsstrap/modal_helper_spec.rb +0 -140
- data/spec/lib/railsstrap/navbar_helper_spec.rb +0 -373
- data/spec/lib/railsstrap/uri_state_spec.rb +0 -49
- data/vendor/assets/bower_components/bootstrap/Gruntfile.js +0 -511
- data/vendor/assets/bower_components/bootstrap/LICENSE +0 -21
- data/vendor/assets/bower_components/bootstrap/README.md +0 -134
- data/vendor/assets/bower_components/bootstrap/bower.json +0 -39
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css +0 -476
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css.map +0 -1
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.min.css +0 -5
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.css +0 -6584
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.css.map +0 -1
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.min.css +0 -5
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +0 -288
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
- data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.js +0 -2317
- data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.min.js +0 -7
- data/vendor/assets/bower_components/bootstrap/dist/js/npm.js +0 -13
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg +0 -288
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
- data/vendor/assets/bower_components/bootstrap/grunt/bs-commonjs-generator.js +0 -23
- data/vendor/assets/bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js +0 -41
- data/vendor/assets/bower_components/bootstrap/grunt/bs-lessdoc-parser.js +0 -238
- data/vendor/assets/bower_components/bootstrap/grunt/bs-raw-files-generator.js +0 -46
- data/vendor/assets/bower_components/bootstrap/grunt/configBridge.json +0 -46
- data/vendor/assets/bower_components/bootstrap/grunt/sauce_browsers.yml +0 -82
- data/vendor/assets/bower_components/bootstrap/js/affix.js +0 -162
- data/vendor/assets/bower_components/bootstrap/js/alert.js +0 -94
- data/vendor/assets/bower_components/bootstrap/js/button.js +0 -116
- data/vendor/assets/bower_components/bootstrap/js/carousel.js +0 -237
- data/vendor/assets/bower_components/bootstrap/js/collapse.js +0 -211
- data/vendor/assets/bower_components/bootstrap/js/dropdown.js +0 -161
- data/vendor/assets/bower_components/bootstrap/js/modal.js +0 -339
- data/vendor/assets/bower_components/bootstrap/js/popover.js +0 -108
- data/vendor/assets/bower_components/bootstrap/js/scrollspy.js +0 -172
- data/vendor/assets/bower_components/bootstrap/js/tab.js +0 -153
- data/vendor/assets/bower_components/bootstrap/js/tooltip.js +0 -476
- data/vendor/assets/bower_components/bootstrap/js/transition.js +0 -59
- data/vendor/assets/bower_components/bootstrap/less/alerts.less +0 -73
- data/vendor/assets/bower_components/bootstrap/less/badges.less +0 -66
- data/vendor/assets/bower_components/bootstrap/less/bootstrap.less +0 -50
- data/vendor/assets/bower_components/bootstrap/less/breadcrumbs.less +0 -26
- data/vendor/assets/bower_components/bootstrap/less/button-groups.less +0 -243
- data/vendor/assets/bower_components/bootstrap/less/buttons.less +0 -160
- data/vendor/assets/bower_components/bootstrap/less/carousel.less +0 -269
- data/vendor/assets/bower_components/bootstrap/less/close.less +0 -34
- data/vendor/assets/bower_components/bootstrap/less/code.less +0 -69
- data/vendor/assets/bower_components/bootstrap/less/component-animations.less +0 -33
- data/vendor/assets/bower_components/bootstrap/less/dropdowns.less +0 -214
- data/vendor/assets/bower_components/bootstrap/less/forms.less +0 -574
- data/vendor/assets/bower_components/bootstrap/less/glyphicons.less +0 -305
- data/vendor/assets/bower_components/bootstrap/less/grid.less +0 -84
- data/vendor/assets/bower_components/bootstrap/less/input-groups.less +0 -166
- data/vendor/assets/bower_components/bootstrap/less/jumbotron.less +0 -50
- data/vendor/assets/bower_components/bootstrap/less/labels.less +0 -64
- data/vendor/assets/bower_components/bootstrap/less/list-group.less +0 -124
- data/vendor/assets/bower_components/bootstrap/less/media.less +0 -61
- data/vendor/assets/bower_components/bootstrap/less/mixins.less +0 -39
- data/vendor/assets/bower_components/bootstrap/less/mixins/alerts.less +0 -14
- data/vendor/assets/bower_components/bootstrap/less/mixins/background-variant.less +0 -8
- data/vendor/assets/bower_components/bootstrap/less/mixins/border-radius.less +0 -18
- data/vendor/assets/bower_components/bootstrap/less/mixins/buttons.less +0 -52
- data/vendor/assets/bower_components/bootstrap/less/mixins/center-block.less +0 -7
- data/vendor/assets/bower_components/bootstrap/less/mixins/clearfix.less +0 -22
- data/vendor/assets/bower_components/bootstrap/less/mixins/forms.less +0 -85
- data/vendor/assets/bower_components/bootstrap/less/mixins/gradients.less +0 -59
- data/vendor/assets/bower_components/bootstrap/less/mixins/grid-framework.less +0 -91
- data/vendor/assets/bower_components/bootstrap/less/mixins/grid.less +0 -122
- data/vendor/assets/bower_components/bootstrap/less/mixins/hide-text.less +0 -21
- data/vendor/assets/bower_components/bootstrap/less/mixins/image.less +0 -33
- data/vendor/assets/bower_components/bootstrap/less/mixins/labels.less +0 -12
- data/vendor/assets/bower_components/bootstrap/less/mixins/list-group.less +0 -29
- data/vendor/assets/bower_components/bootstrap/less/mixins/nav-divider.less +0 -10
- data/vendor/assets/bower_components/bootstrap/less/mixins/nav-vertical-align.less +0 -9
- data/vendor/assets/bower_components/bootstrap/less/mixins/opacity.less +0 -8
- data/vendor/assets/bower_components/bootstrap/less/mixins/pagination.less +0 -23
- data/vendor/assets/bower_components/bootstrap/less/mixins/panels.less +0 -24
- data/vendor/assets/bower_components/bootstrap/less/mixins/progress-bar.less +0 -10
- data/vendor/assets/bower_components/bootstrap/less/mixins/reset-filter.less +0 -8
- data/vendor/assets/bower_components/bootstrap/less/mixins/responsive-visibility.less +0 -15
- data/vendor/assets/bower_components/bootstrap/less/mixins/size.less +0 -10
- data/vendor/assets/bower_components/bootstrap/less/mixins/tab-focus.less +0 -9
- data/vendor/assets/bower_components/bootstrap/less/mixins/table-row.less +0 -28
- data/vendor/assets/bower_components/bootstrap/less/mixins/text-emphasis.less +0 -8
- data/vendor/assets/bower_components/bootstrap/less/mixins/vendor-prefixes.less +0 -227
- data/vendor/assets/bower_components/bootstrap/less/modals.less +0 -150
- data/vendor/assets/bower_components/bootstrap/less/navbar.less +0 -660
- data/vendor/assets/bower_components/bootstrap/less/navs.less +0 -242
- data/vendor/assets/bower_components/bootstrap/less/normalize.less +0 -427
- data/vendor/assets/bower_components/bootstrap/less/pager.less +0 -54
- data/vendor/assets/bower_components/bootstrap/less/pagination.less +0 -88
- data/vendor/assets/bower_components/bootstrap/less/panels.less +0 -265
- data/vendor/assets/bower_components/bootstrap/less/popovers.less +0 -135
- data/vendor/assets/bower_components/bootstrap/less/print.less +0 -107
- data/vendor/assets/bower_components/bootstrap/less/progress-bars.less +0 -87
- data/vendor/assets/bower_components/bootstrap/less/responsive-utilities.less +0 -194
- data/vendor/assets/bower_components/bootstrap/less/scaffolding.less +0 -162
- data/vendor/assets/bower_components/bootstrap/less/tables.less +0 -234
- data/vendor/assets/bower_components/bootstrap/less/theme.less +0 -273
- data/vendor/assets/bower_components/bootstrap/less/thumbnails.less +0 -36
- data/vendor/assets/bower_components/bootstrap/less/tooltip.less +0 -102
- data/vendor/assets/bower_components/bootstrap/less/type.less +0 -302
- data/vendor/assets/bower_components/bootstrap/less/utilities.less +0 -55
- data/vendor/assets/bower_components/bootstrap/less/variables.less +0 -861
- data/vendor/assets/bower_components/bootstrap/less/wells.less +0 -29
- data/vendor/assets/bower_components/bootstrap/package.js +0 -22
- data/vendor/assets/bower_components/bootstrap/package.json +0 -93
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/CONTRIBUTING.md +0 -32
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/Gruntfile.js +0 -155
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/LICENSE +0 -21
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/README.md +0 -17
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/bower.json +0 -35
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css +0 -238
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css +0 -5
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js +0 -1
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/component.json +0 -10
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/composer.json +0 -30
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/package.json +0 -35
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js +0 -1384
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker-build.less +0 -5
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker.less +0 -294
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.CSS.nuspec +0 -30
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.nuspec +0 -30
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe +0 -0
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/install.ps1 +0 -2
- data/vendor/assets/bower_components/eonasdan-bootstrap-datetimepicker/tasks/bump_version.js +0 -88
- data/vendor/assets/bower_components/fontawesome/bower.json +0 -23
- data/vendor/assets/bower_components/fontawesome/css/font-awesome.css +0 -1801
- data/vendor/assets/bower_components/fontawesome/css/font-awesome.css.map +0 -7
- data/vendor/assets/bower_components/fontawesome/css/font-awesome.min.css +0 -4
- data/vendor/assets/bower_components/fontawesome/fonts/FontAwesome.otf +0 -0
- data/vendor/assets/bower_components/fontawesome/fonts/fontawesome-webfont.eot +0 -0
- data/vendor/assets/bower_components/fontawesome/fonts/fontawesome-webfont.svg +0 -565
- data/vendor/assets/bower_components/fontawesome/fonts/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/bower_components/fontawesome/fonts/fontawesome-webfont.woff +0 -0
- data/vendor/assets/bower_components/fontawesome/fonts/fontawesome-webfont.woff2 +0 -0
- data/vendor/assets/bower_components/fontawesome/less/animated.less +0 -34
- data/vendor/assets/bower_components/fontawesome/less/bordered-pulled.less +0 -16
- data/vendor/assets/bower_components/fontawesome/less/core.less +0 -13
- data/vendor/assets/bower_components/fontawesome/less/fixed-width.less +0 -6
- data/vendor/assets/bower_components/fontawesome/less/font-awesome.less +0 -17
- data/vendor/assets/bower_components/fontawesome/less/icons.less +0 -596
- data/vendor/assets/bower_components/fontawesome/less/larger.less +0 -13
- data/vendor/assets/bower_components/fontawesome/less/list.less +0 -19
- data/vendor/assets/bower_components/fontawesome/less/mixins.less +0 -27
- data/vendor/assets/bower_components/fontawesome/less/path.less +0 -15
- data/vendor/assets/bower_components/fontawesome/less/rotated-flipped.less +0 -20
- data/vendor/assets/bower_components/fontawesome/less/stacked.less +0 -20
- data/vendor/assets/bower_components/fontawesome/less/variables.less +0 -606
- data/vendor/assets/bower_components/fontawesome/scss/_animated.scss +0 -34
- data/vendor/assets/bower_components/fontawesome/scss/_bordered-pulled.scss +0 -16
- data/vendor/assets/bower_components/fontawesome/scss/_core.scss +0 -13
- data/vendor/assets/bower_components/fontawesome/scss/_fixed-width.scss +0 -6
- data/vendor/assets/bower_components/fontawesome/scss/_icons.scss +0 -596
- data/vendor/assets/bower_components/fontawesome/scss/_larger.scss +0 -13
- data/vendor/assets/bower_components/fontawesome/scss/_list.scss +0 -19
- data/vendor/assets/bower_components/fontawesome/scss/_mixins.scss +0 -27
- data/vendor/assets/bower_components/fontawesome/scss/_path.scss +0 -15
- data/vendor/assets/bower_components/fontawesome/scss/_rotated-flipped.scss +0 -20
- data/vendor/assets/bower_components/fontawesome/scss/_stacked.scss +0 -20
- data/vendor/assets/bower_components/fontawesome/scss/_variables.scss +0 -606
- data/vendor/assets/bower_components/fontawesome/scss/font-awesome.scss +0 -17
- data/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +0 -21
- data/vendor/assets/bower_components/jquery/bower.json +0 -27
- data/vendor/assets/bower_components/jquery/dist/jquery.js +0 -9205
- data/vendor/assets/bower_components/jquery/dist/jquery.min.js +0 -5
- data/vendor/assets/bower_components/jquery/dist/jquery.min.map +0 -1
- data/vendor/assets/bower_components/jquery/src/ajax.js +0 -786
- data/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +0 -89
- data/vendor/assets/bower_components/jquery/src/ajax/load.js +0 -75
- data/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +0 -13
- data/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +0 -28
- data/vendor/assets/bower_components/jquery/src/ajax/script.js +0 -64
- data/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +0 -5
- data/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +0 -3
- data/vendor/assets/bower_components/jquery/src/ajax/xhr.js +0 -136
- data/vendor/assets/bower_components/jquery/src/attributes.js +0 -11
- data/vendor/assets/bower_components/jquery/src/attributes/attr.js +0 -141
- data/vendor/assets/bower_components/jquery/src/attributes/classes.js +0 -158
- data/vendor/assets/bower_components/jquery/src/attributes/prop.js +0 -94
- data/vendor/assets/bower_components/jquery/src/attributes/support.js +0 -35
- data/vendor/assets/bower_components/jquery/src/attributes/val.js +0 -161
- data/vendor/assets/bower_components/jquery/src/callbacks.js +0 -205
- data/vendor/assets/bower_components/jquery/src/core.js +0 -497
- data/vendor/assets/bower_components/jquery/src/core/access.js +0 -60
- data/vendor/assets/bower_components/jquery/src/core/init.js +0 -123
- data/vendor/assets/bower_components/jquery/src/core/parseHTML.js +0 -39
- data/vendor/assets/bower_components/jquery/src/core/ready.js +0 -97
- data/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +0 -4
- data/vendor/assets/bower_components/jquery/src/css.js +0 -450
- data/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +0 -22
- data/vendor/assets/bower_components/jquery/src/css/curCSS.js +0 -57
- data/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +0 -70
- data/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +0 -15
- data/vendor/assets/bower_components/jquery/src/css/support.js +0 -96
- data/vendor/assets/bower_components/jquery/src/css/swap.js +0 -28
- data/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +0 -3
- data/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +0 -12
- data/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +0 -13
- data/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +0 -3
- data/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +0 -5
- data/vendor/assets/bower_components/jquery/src/data.js +0 -178
- data/vendor/assets/bower_components/jquery/src/data/Data.js +0 -181
- data/vendor/assets/bower_components/jquery/src/data/accepts.js +0 -20
- data/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +0 -5
- data/vendor/assets/bower_components/jquery/src/data/var/data_user.js +0 -5
- data/vendor/assets/bower_components/jquery/src/deferred.js +0 -149
- data/vendor/assets/bower_components/jquery/src/deprecated.js +0 -13
- data/vendor/assets/bower_components/jquery/src/dimensions.js +0 -50
- data/vendor/assets/bower_components/jquery/src/effects.js +0 -648
- data/vendor/assets/bower_components/jquery/src/effects/Tween.js +0 -114
- data/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +0 -13
- data/vendor/assets/bower_components/jquery/src/event.js +0 -868
- data/vendor/assets/bower_components/jquery/src/event/ajax.js +0 -13
- data/vendor/assets/bower_components/jquery/src/event/alias.js +0 -39
- data/vendor/assets/bower_components/jquery/src/event/support.js +0 -9
- data/vendor/assets/bower_components/jquery/src/exports/amd.js +0 -24
- data/vendor/assets/bower_components/jquery/src/exports/global.js +0 -32
- data/vendor/assets/bower_components/jquery/src/intro.js +0 -44
- data/vendor/assets/bower_components/jquery/src/jquery.js +0 -37
- data/vendor/assets/bower_components/jquery/src/manipulation.js +0 -580
- data/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +0 -18
- data/vendor/assets/bower_components/jquery/src/manipulation/support.js +0 -32
- data/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +0 -3
- data/vendor/assets/bower_components/jquery/src/offset.js +0 -207
- data/vendor/assets/bower_components/jquery/src/outro.js +0 -1
- data/vendor/assets/bower_components/jquery/src/queue.js +0 -142
- data/vendor/assets/bower_components/jquery/src/queue/delay.js +0 -22
- data/vendor/assets/bower_components/jquery/src/selector-native.js +0 -172
- data/vendor/assets/bower_components/jquery/src/selector-sizzle.js +0 -14
- data/vendor/assets/bower_components/jquery/src/selector.js +0 -1
- data/vendor/assets/bower_components/jquery/src/serialize.js +0 -111
- data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +0 -2067
- data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +0 -3
- data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +0 -1
- data/vendor/assets/bower_components/jquery/src/traversing.js +0 -199
- data/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +0 -100
- data/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +0 -6
- data/vendor/assets/bower_components/jquery/src/var/arr.js +0 -3
- data/vendor/assets/bower_components/jquery/src/var/class2type.js +0 -4
- data/vendor/assets/bower_components/jquery/src/var/concat.js +0 -5
- data/vendor/assets/bower_components/jquery/src/var/hasOwn.js +0 -5
- data/vendor/assets/bower_components/jquery/src/var/indexOf.js +0 -5
- data/vendor/assets/bower_components/jquery/src/var/pnum.js +0 -3
- data/vendor/assets/bower_components/jquery/src/var/push.js +0 -5
- data/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +0 -3
- data/vendor/assets/bower_components/jquery/src/var/slice.js +0 -5
- data/vendor/assets/bower_components/jquery/src/var/strundefined.js +0 -3
- data/vendor/assets/bower_components/jquery/src/var/support.js +0 -4
- data/vendor/assets/bower_components/jquery/src/var/toString.js +0 -5
- data/vendor/assets/bower_components/jquery/src/wrap.js +0 -79
- data/vendor/assets/bower_components/moment/CHANGELOG.md +0 -402
- data/vendor/assets/bower_components/moment/LICENSE +0 -22
- data/vendor/assets/bower_components/moment/README.md +0 -39
- data/vendor/assets/bower_components/moment/benchmarks/clone.js +0 -10
- data/vendor/assets/bower_components/moment/bower.json +0 -20
- data/vendor/assets/bower_components/moment/locale/af.js +0 -67
- data/vendor/assets/bower_components/moment/locale/ar-ma.js +0 -57
- data/vendor/assets/bower_components/moment/locale/ar-sa.js +0 -97
- data/vendor/assets/bower_components/moment/locale/ar.js +0 -130
- data/vendor/assets/bower_components/moment/locale/az.js +0 -103
- data/vendor/assets/bower_components/moment/locale/be.js +0 -152
- data/vendor/assets/bower_components/moment/locale/bg.js +0 -88
- data/vendor/assets/bower_components/moment/locale/bn.js +0 -107
- data/vendor/assets/bower_components/moment/locale/bo.js +0 -104
- data/vendor/assets/bower_components/moment/locale/br.js +0 -109
- data/vendor/assets/bower_components/moment/locale/bs.js +0 -140
- data/vendor/assets/bower_components/moment/locale/ca.js +0 -77
- data/vendor/assets/bower_components/moment/locale/cs.js +0 -157
- data/vendor/assets/bower_components/moment/locale/cv.js +0 -61
- data/vendor/assets/bower_components/moment/locale/cy.js +0 -79
- data/vendor/assets/bower_components/moment/locale/da.js +0 -58
- data/vendor/assets/bower_components/moment/locale/de-at.js +0 -74
- data/vendor/assets/bower_components/moment/locale/de.js +0 -73
- data/vendor/assets/bower_components/moment/locale/el.js +0 -94
- data/vendor/assets/bower_components/moment/locale/en-au.js +0 -64
- data/vendor/assets/bower_components/moment/locale/en-ca.js +0 -61
- data/vendor/assets/bower_components/moment/locale/en-gb.js +0 -65
- data/vendor/assets/bower_components/moment/locale/eo.js +0 -67
- data/vendor/assets/bower_components/moment/locale/es.js +0 -77
- data/vendor/assets/bower_components/moment/locale/et.js +0 -78
- data/vendor/assets/bower_components/moment/locale/eu.js +0 -62
- data/vendor/assets/bower_components/moment/locale/fa.js +0 -99
- data/vendor/assets/bower_components/moment/locale/fi.js +0 -107
- data/vendor/assets/bower_components/moment/locale/fo.js +0 -58
- data/vendor/assets/bower_components/moment/locale/fr-ca.js +0 -56
- data/vendor/assets/bower_components/moment/locale/fr.js +0 -60
- data/vendor/assets/bower_components/moment/locale/gl.js +0 -73
- data/vendor/assets/bower_components/moment/locale/he.js +0 -78
- data/vendor/assets/bower_components/moment/locale/hi.js +0 -106
- data/vendor/assets/bower_components/moment/locale/hr.js +0 -141
- data/vendor/assets/bower_components/moment/locale/hu.js +0 -107
- data/vendor/assets/bower_components/moment/locale/hy-am.js +0 -114
- data/vendor/assets/bower_components/moment/locale/id.js +0 -68
- data/vendor/assets/bower_components/moment/locale/is.js +0 -126
- data/vendor/assets/bower_components/moment/locale/it.js +0 -68
- data/vendor/assets/bower_components/moment/locale/ja.js +0 -59
- data/vendor/assets/bower_components/moment/locale/ka.js +0 -109
- data/vendor/assets/bower_components/moment/locale/km.js +0 -56
- data/vendor/assets/bower_components/moment/locale/ko.js +0 -65
- data/vendor/assets/bower_components/moment/locale/lb.js +0 -139
- data/vendor/assets/bower_components/moment/locale/lt.js +0 -120
- data/vendor/assets/bower_components/moment/locale/lv.js +0 -79
- data/vendor/assets/bower_components/moment/locale/mk.js +0 -88
- data/vendor/assets/bower_components/moment/locale/ml.js +0 -65
- data/vendor/assets/bower_components/moment/locale/mr.js +0 -105
- data/vendor/assets/bower_components/moment/locale/ms-my.js +0 -67
- data/vendor/assets/bower_components/moment/locale/my.js +0 -89
- data/vendor/assets/bower_components/moment/locale/nb.js +0 -59
- data/vendor/assets/bower_components/moment/locale/ne.js +0 -106
- data/vendor/assets/bower_components/moment/locale/nl.js +0 -69
- data/vendor/assets/bower_components/moment/locale/nn.js +0 -58
- data/vendor/assets/bower_components/moment/locale/pl.js +0 -100
- data/vendor/assets/bower_components/moment/locale/pt-br.js +0 -58
- data/vendor/assets/bower_components/moment/locale/pt.js +0 -62
- data/vendor/assets/bower_components/moment/locale/ro.js +0 -73
- data/vendor/assets/bower_components/moment/locale/ru.js +0 -176
- data/vendor/assets/bower_components/moment/locale/sk.js +0 -158
- data/vendor/assets/bower_components/moment/locale/sl.js +0 -146
- data/vendor/assets/bower_components/moment/locale/sq.js +0 -63
- data/vendor/assets/bower_components/moment/locale/sr-cyrl.js +0 -107
- data/vendor/assets/bower_components/moment/locale/sr.js +0 -107
- data/vendor/assets/bower_components/moment/locale/sv.js +0 -65
- data/vendor/assets/bower_components/moment/locale/ta.js +0 -114
- data/vendor/assets/bower_components/moment/locale/th.js +0 -59
- data/vendor/assets/bower_components/moment/locale/tl-ph.js +0 -60
- data/vendor/assets/bower_components/moment/locale/tr.js +0 -94
- data/vendor/assets/bower_components/moment/locale/tzm-latn.js +0 -56
- data/vendor/assets/bower_components/moment/locale/tzm.js +0 -56
- data/vendor/assets/bower_components/moment/locale/uk.js +0 -159
- data/vendor/assets/bower_components/moment/locale/uz.js +0 -56
- data/vendor/assets/bower_components/moment/locale/vi.js +0 -64
- data/vendor/assets/bower_components/moment/locale/zh-cn.js +0 -110
- data/vendor/assets/bower_components/moment/locale/zh-tw.js +0 -86
- data/vendor/assets/bower_components/moment/min/locales.js +0 -7001
- data/vendor/assets/bower_components/moment/min/locales.min.js +0 -4
- data/vendor/assets/bower_components/moment/min/moment-with-locales.js +0 -9394
- data/vendor/assets/bower_components/moment/min/moment-with-locales.min.js +0 -10
- data/vendor/assets/bower_components/moment/min/moment.min.js +0 -7
- data/vendor/assets/bower_components/moment/moment.js +0 -2936
- data/vendor/assets/bower_components/moment/scripts/npm_prepublish.sh +0 -43
- data/vendor/assets/javascripts/datepicker/datepicker.js +0 -3
- data/vendor/assets/stylesheets/animate/animate.less +0 -31
- data/vendor/assets/stylesheets/aside/aside.less +0 -73
- data/vendor/assets/stylesheets/bootstrap.less +0 -2
- data/vendor/assets/stylesheets/datepicker/datepicker.js +0 -0
- data/vendor/assets/stylesheets/dist/bootstrap-additions.css +0 -518
- data/vendor/assets/stylesheets/dist/railsstrap.css +0 -3653
- data/vendor/assets/stylesheets/fontawesome-local.less +0 -15
- data/vendor/assets/stylesheets/fontawesome.less +0 -2
- data/vendor/assets/stylesheets/glyphicons.less +0 -12
- data/vendor/assets/stylesheets/popover/popover.less +0 -36
- data/vendor/assets/stylesheets/railsstrap.less +0 -78
- data/vendor/assets/stylesheets/tooltip/tooltip.less +0 -95
@@ -0,0 +1,149 @@
|
|
1
|
+
require 'railsstrap/classes/stack'
|
2
|
+
require 'ostruct'
|
3
|
+
require 'active_support'
|
4
|
+
require 'active_support/core_ext'
|
5
|
+
|
6
|
+
module Railsstrap
|
7
|
+
# @api private
|
8
|
+
module Classes
|
9
|
+
class Base
|
10
|
+
def initialize(app = nil, *args, &block)
|
11
|
+
@app = app
|
12
|
+
@concat = block_given? && @app.respond_to?(:concat_content)
|
13
|
+
@options = extract_options_from(*args, &block).dup
|
14
|
+
@content = extract_content_from *args, &block
|
15
|
+
end
|
16
|
+
|
17
|
+
def extract!(*keys)
|
18
|
+
@attributes = @options.slice! *keys
|
19
|
+
@options.any?
|
20
|
+
end
|
21
|
+
|
22
|
+
def merge!(attributes = {})
|
23
|
+
html_attributes.deep_merge! attributes
|
24
|
+
end
|
25
|
+
|
26
|
+
def merge_html!(html)
|
27
|
+
@content ||= html
|
28
|
+
end
|
29
|
+
|
30
|
+
def append_class!(new_class, hash = html_attributes, attribute = :class)
|
31
|
+
existing_class = hash[attribute]
|
32
|
+
hash[attribute] = [existing_class, new_class].compact.join ' '
|
33
|
+
end
|
34
|
+
|
35
|
+
def append_class_to!(key, new_class)
|
36
|
+
append_class! new_class, (html_attributes[key] ||= {})
|
37
|
+
end
|
38
|
+
|
39
|
+
def prepend_html!(html)
|
40
|
+
@content = safe_join [html, @content]
|
41
|
+
end
|
42
|
+
|
43
|
+
def render_tag(tag)
|
44
|
+
render content_tag(tag)
|
45
|
+
end
|
46
|
+
|
47
|
+
def render_partial(partial)
|
48
|
+
file = File.expand_path "../../views/railsstrap/_#{partial}.html.erb", __FILE__
|
49
|
+
template = ERB.new(File.read file)
|
50
|
+
assigns = OpenStruct.new attributes.merge(content: @content)
|
51
|
+
render template.result(assigns.instance_eval {binding &nil}).html_safe
|
52
|
+
end
|
53
|
+
|
54
|
+
# @return [#to_s] the HTML to show a dismissible button.
|
55
|
+
# @options option :dismiss What the button should dismiss. Can be :alert, :modal
|
56
|
+
def dismissible_button
|
57
|
+
if @options[:dismissible] || @options[:priority]
|
58
|
+
path = '../../views/railsstrap/_dismiss_button.html.erb'
|
59
|
+
template = ERB.new(File.read File.expand_path(path, __FILE__))
|
60
|
+
assigns = OpenStruct.new dismiss: dismiss[@options[:dismiss]]
|
61
|
+
render template.result(assigns.instance_eval {binding &nil}).html_safe
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
def dismiss
|
66
|
+
HashWithIndifferentAccess.new(:alert).tap do |klass|
|
67
|
+
klass[:modal] = 'modal'
|
68
|
+
klass[:alert] = 'alert'
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
def tag
|
73
|
+
:div
|
74
|
+
end
|
75
|
+
|
76
|
+
def attributes
|
77
|
+
@attributes || @options
|
78
|
+
end
|
79
|
+
|
80
|
+
def content
|
81
|
+
items = Array.wrap(@content).map do |item|
|
82
|
+
item.is_a?(Base) ? item.content_tag(item.tag) : item
|
83
|
+
end
|
84
|
+
items.all?(&:html_safe?) ? safe_join(items) : items.join
|
85
|
+
end
|
86
|
+
|
87
|
+
def content_tag(tag)
|
88
|
+
@app.content_tag tag, content, attributes
|
89
|
+
end
|
90
|
+
|
91
|
+
def url
|
92
|
+
@url
|
93
|
+
end
|
94
|
+
|
95
|
+
def extract_from(option, attributes = [])
|
96
|
+
@attributes[option] = @options[option].except *attributes if @options[option]
|
97
|
+
end
|
98
|
+
|
99
|
+
def self.variant_types
|
100
|
+
%w[primary secondary success warning danger info dark light].freeze
|
101
|
+
end
|
102
|
+
|
103
|
+
private
|
104
|
+
|
105
|
+
def safe_join(array = [])
|
106
|
+
array.compact.join("\n").html_safe
|
107
|
+
end
|
108
|
+
|
109
|
+
def stack(&block)
|
110
|
+
Stack.unshift self
|
111
|
+
yield.tap {Stack.shift}
|
112
|
+
end
|
113
|
+
|
114
|
+
def html_attributes
|
115
|
+
@html_attributes || attributes
|
116
|
+
end
|
117
|
+
|
118
|
+
def render(html)
|
119
|
+
@concat && html ? @app.concat_content(html) : html
|
120
|
+
end
|
121
|
+
|
122
|
+
def extract_options_from(*args, &block)
|
123
|
+
args.shift unless block_given?
|
124
|
+
args.extract_options!
|
125
|
+
end
|
126
|
+
|
127
|
+
def extract_content_from(*args, &block)
|
128
|
+
if block_given?
|
129
|
+
stack {capture_content &block}
|
130
|
+
else
|
131
|
+
args.shift
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
def extract_url_from(*args)
|
136
|
+
args.delete_at(block_given? ? 0 : 1)
|
137
|
+
end
|
138
|
+
|
139
|
+
def capture_content(&block)
|
140
|
+
content = @app.capture &block
|
141
|
+
if content.is_a? String
|
142
|
+
ActiveSupport::SafeBuffer.new.safe_concat(content)
|
143
|
+
end
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
include Classes
|
149
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require 'railsstrap/classes/base'
|
2
|
+
|
3
|
+
module Railsstrap
|
4
|
+
module Classes
|
5
|
+
class Button < Base
|
6
|
+
# @return [#to_s] the variant-related class to assign to the button.
|
7
|
+
def variant_class
|
8
|
+
Button.variants[@options[:variant]]
|
9
|
+
end
|
10
|
+
|
11
|
+
# @return [#to_s] the size-related class to assign to the button.
|
12
|
+
def size_class
|
13
|
+
Button.sizes[@options[:size]]
|
14
|
+
end
|
15
|
+
|
16
|
+
# @return [#to_s] the layout-related class to assign to the button.
|
17
|
+
def layout_class
|
18
|
+
Button.layouts[@options[:layout]]
|
19
|
+
end
|
20
|
+
|
21
|
+
# @return [Hash<Symbol, String>] the classes that Bootstrap requires to
|
22
|
+
# append to buttons for each possible variant.
|
23
|
+
|
24
|
+
def self.variants
|
25
|
+
HashWithIndifferentAccess.new(:'btn-primary').tap do |klass|
|
26
|
+
variant_types.each do |variant|
|
27
|
+
klass[variant.to_sym] = :"btn-#{variant}"
|
28
|
+
klass[:"outline-#{variant}"] = :"btn-outline-#{variant}"
|
29
|
+
end
|
30
|
+
klass[:link] = :'btn-link'
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# @return [Hash<Symbol, String>] the classes that Bootstrap requires to
|
35
|
+
# append to buttons for each possible size.
|
36
|
+
|
37
|
+
def self.sizes
|
38
|
+
HashWithIndifferentAccess.new.tap do |klass|
|
39
|
+
klass[:extra_small] = :'btn-xs'
|
40
|
+
klass[:large] = :'btn-lg'
|
41
|
+
klass[:lg] = :'btn-lg'
|
42
|
+
klass[:sm] = :'btn-sm'
|
43
|
+
klass[:small] = :'btn-sm'
|
44
|
+
klass[:xs] = :'btn-xs'
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
# @return [Hash<Symbol, String>] the classes that Bootstrap requires to
|
49
|
+
# append to buttons for each possible layout.
|
50
|
+
|
51
|
+
def self.layouts
|
52
|
+
HashWithIndifferentAccess.new.tap do |klass|
|
53
|
+
klass[:block] = :'btn-block'
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
# @return [Hash<Symbol>, String] the javascript to toggle or dispose a button.
|
58
|
+
# @required @options[:id]
|
59
|
+
|
60
|
+
def self.js_methods
|
61
|
+
HashWithIndifferentAccess.new.tap do |klass|
|
62
|
+
klass[:toggle] = "$(#{@options[:id]}).button('toggle')"
|
63
|
+
klass[:dispose] = "$(#{@options[:id]}).button('dispose')"
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
require 'railsstrap/classes/base'
|
2
|
+
|
3
|
+
module Railsstrap
|
4
|
+
module Classes
|
5
|
+
class ButtonGroup < Base
|
6
|
+
# @return [#to_s] the variant-related class to assign to the button.
|
7
|
+
def variant_class
|
8
|
+
Button.variants[@options[:variant]]
|
9
|
+
end
|
10
|
+
|
11
|
+
# @return [#to_s] the size-related class to assign to the button group.
|
12
|
+
def size_class
|
13
|
+
Button.sizes[@options[:size]]
|
14
|
+
end
|
15
|
+
|
16
|
+
# @return [#to_s] the layout-related class to assign to the button group.
|
17
|
+
def layout_class
|
18
|
+
Button.layouts[@options[:layout]]
|
19
|
+
end
|
20
|
+
|
21
|
+
def vertical_class
|
22
|
+
@options[:vertical].present? ? 'btn-group-vertical' : nil
|
23
|
+
end
|
24
|
+
|
25
|
+
def toolbar_class
|
26
|
+
@options[:toolbar].present? ? 'btn-toolbar' : nil
|
27
|
+
end
|
28
|
+
|
29
|
+
def role_name
|
30
|
+
{ role: @options[:role] ||= 'group' }
|
31
|
+
end
|
32
|
+
|
33
|
+
def aria_label
|
34
|
+
@options[:'aria-label'] ||= 'Button Group'
|
35
|
+
end
|
36
|
+
|
37
|
+
def buttons
|
38
|
+
@options[:buttons].map! {|button| @app.button(button)} if @options[:buttons]
|
39
|
+
end
|
40
|
+
|
41
|
+
# @return [Hash<Symbol, String>] the classes that Bootstrap requires to
|
42
|
+
# append to buttons for each possible size.
|
43
|
+
|
44
|
+
def self.sizes
|
45
|
+
HashWithIndifferentAccess.new.tap do |klass|
|
46
|
+
klass[:extra_small] = :'btn-xs'
|
47
|
+
klass[:large] = :'btn-lg'
|
48
|
+
klass[:lg] = :'btn-lg'
|
49
|
+
klass[:sm] = :'btn-sm'
|
50
|
+
klass[:small] = :'btn-sm'
|
51
|
+
klass[:xs] = :'btn-xs'
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
# @return [Hash<Symbol, String>] the classes that Bootstrap requires to
|
56
|
+
# append to buttons for each possible layout.
|
57
|
+
|
58
|
+
def self.layouts
|
59
|
+
HashWithIndifferentAccess.new.tap do |klass|
|
60
|
+
klass[:block] = :'btn-block'
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'railsstrap/classes/button'
|
2
|
+
|
3
|
+
module Railsstrap
|
4
|
+
module Classes
|
5
|
+
class ButtonTo < Button
|
6
|
+
def initialize(app = nil, *args, &block)
|
7
|
+
@url = extract_url_from(*args, &block)
|
8
|
+
super
|
9
|
+
end
|
10
|
+
|
11
|
+
def append_button_class!(klass)
|
12
|
+
case Railsstrap.framework
|
13
|
+
when :rails then append_class! klass
|
14
|
+
when :padrino, :middleman then append_class_to! :submit_options, klass
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def append_form_class!(klass)
|
19
|
+
case Railsstrap.framework
|
20
|
+
when :rails then append_class! klass, html_attributes, :form_class
|
21
|
+
when :padrino, :middleman then append_class! klass
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def accepts_block?
|
26
|
+
case Railsstrap.framework
|
27
|
+
when :rails then defined?(ActionView::VERSION) # only Rails >= 4
|
28
|
+
when :padrino, :middleman then true
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
require 'railsstrap/classes/base'
|
2
|
+
|
3
|
+
module Railsstrap
|
4
|
+
module Classes
|
5
|
+
class Card < Base
|
6
|
+
# Differently from other classes, Panel works with no content or block,
|
7
|
+
# given that the options[:body] is passed, in which case it functions
|
8
|
+
# as the content.
|
9
|
+
def initialize(app = nil, *args, &block)
|
10
|
+
if args.first.is_a?(Hash) && !block_given?
|
11
|
+
args.unshift args.first.delete(:body)
|
12
|
+
end
|
13
|
+
|
14
|
+
super
|
15
|
+
end
|
16
|
+
|
17
|
+
# @return [#to_s] the content-related class to assign to the card.
|
18
|
+
def variant_class
|
19
|
+
Card.variants[@options[:variant]]
|
20
|
+
end
|
21
|
+
|
22
|
+
# @return [#to_s] the content-related class to assign to the card.
|
23
|
+
def text_variant_class
|
24
|
+
@options[:text_variant]
|
25
|
+
end
|
26
|
+
|
27
|
+
# @return [#to_s] the HTML tag to wrap the card in.
|
28
|
+
def tag
|
29
|
+
@options.fetch :tag, :div
|
30
|
+
end
|
31
|
+
|
32
|
+
# @return [#to_s] the text to display as the card header
|
33
|
+
def header
|
34
|
+
text = title || @options[:header]
|
35
|
+
@app.content_tag :div, text, class: 'card-header' if text
|
36
|
+
end
|
37
|
+
|
38
|
+
def image_cap
|
39
|
+
if @options[:img]
|
40
|
+
@app.content_tag :img, nil, class: 'card-img-top', src: @options[:img]
|
41
|
+
end
|
42
|
+
end
|
43
|
+
def body
|
44
|
+
if @options[:body]
|
45
|
+
@app.content_tag :div, @options[:body], class: 'card-body'
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
|
50
|
+
def extract_content_from(*args, &block)
|
51
|
+
if block_given?
|
52
|
+
super
|
53
|
+
else
|
54
|
+
@app.content_tag :div, super, class: 'card-body'
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
def title
|
59
|
+
if @options[:title]
|
60
|
+
@app.content_tag :h3, @options[:title], class: 'card-title'
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
# @return [Hash<Symbol, String>] the class that Bootstrap requires to
|
65
|
+
# append to an card box based on its variant.
|
66
|
+
def self.variants
|
67
|
+
HashWithIndifferentAccess.new(:'bg-default').tap do |klass|
|
68
|
+
variant_types.each { |variant| klass[variant.to_sym] = :"bg-#{variant}" }
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'railsstrap/classes/base'
|
2
|
+
|
3
|
+
module Railsstrap
|
4
|
+
module Classes
|
5
|
+
class CardGroup < Base
|
6
|
+
|
7
|
+
def layout
|
8
|
+
CardGroup.column_types[@options[:layout]]
|
9
|
+
end
|
10
|
+
|
11
|
+
# @return [#to_s] the grid-related class to assign to each card
|
12
|
+
# nested in this card group.
|
13
|
+
def self.column_types
|
14
|
+
HashWithIndifferentAccess.new('card-group').tap do |klass|
|
15
|
+
klass[:deck] = :'card-deck'
|
16
|
+
klass[:group] = :'card-group'
|
17
|
+
klass[:column] = :'card-column'
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'railsstrap/classes/base'
|
4
|
+
|
5
|
+
module Railsstrap
|
6
|
+
module Classes
|
7
|
+
# @api private
|
8
|
+
class Cdn
|
9
|
+
# @note if unspecified, the version should match the latest available
|
10
|
+
# version. If that's not the case, it's a bug and should be fixed.
|
11
|
+
def self.jquery_js(options = {})
|
12
|
+
options[:version] = options[:version].nil? ? '3.3.1' : options[:version]
|
13
|
+
cdn_asset options.merge(library: 'jquery')
|
14
|
+
end
|
15
|
+
|
16
|
+
# @note if unspecified, the version should match the latest available
|
17
|
+
# version. If that's not the case, it's a bug and should be fixed.
|
18
|
+
def self.bootstrap_css(options = {})
|
19
|
+
defaults = {version: '4.0.0', scheme: :https, minified: true}
|
20
|
+
options.merge!(defaults)
|
21
|
+
"#{options[:scheme].to_s}://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/#{options[:version]}/css/bootstrap.#{options[:minified] ? 'min.' : '.'}css"
|
22
|
+
end
|
23
|
+
|
24
|
+
# @note if unspecified, the version should match the latest available
|
25
|
+
# version. If that's not the case, it's a bug and should be fixed.
|
26
|
+
# @note Version 4 of bootstrap does not have a theme; use SASS in this situation and override variables
|
27
|
+
def self.bootstrap_theme(options = {})
|
28
|
+
defaults = {version: '3.3.7', scheme: :https, minified: true}
|
29
|
+
options.merge!(defaults)
|
30
|
+
return if options[:version] =~ !/^3/
|
31
|
+
"#{options[:scheme].to_s}://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/#{options[:version]}/css/bootstrap-theme.#{options[:minified] ? 'min.' : ''}css"
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.bootstrap_js(options = {})
|
35
|
+
defaults = {version: '4.0.0', scheme: :https, minified: true}
|
36
|
+
options.merge!(defaults)
|
37
|
+
"#{options[:scheme].to_s}://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/#{options[:version]}/js/bootstrap.#{options[:minified] ? 'min.' : '.'}js"
|
38
|
+
end
|
39
|
+
|
40
|
+
# @note if unspecified, the version should match the latest available
|
41
|
+
# version. If that's not the case, it's a bug and should be fixed.
|
42
|
+
def self.font_awesome(options = {})
|
43
|
+
defaults = {version: '4.7.0', scheme: :https, minified: true}
|
44
|
+
options.merge!(defaults)
|
45
|
+
"#{options[:scheme].to_s}://cdnjs.cloudflare.com/ajax/libs/font-awesome/#{options[:version]}/css/font-awesome.#{options[:minified] ? 'min.' : '.'}css"
|
46
|
+
end
|
47
|
+
|
48
|
+
# @description Use the cdn_asset method to build a URL
|
49
|
+
def self.font_awesome_js(options = {})
|
50
|
+
version = '5.0.6'
|
51
|
+
opts = {
|
52
|
+
version: version,
|
53
|
+
scheme: 'https',
|
54
|
+
host: '//use.fontawesome.com',
|
55
|
+
path: "releases/v#{version}/js",
|
56
|
+
name: 'all',
|
57
|
+
ext: 'js'
|
58
|
+
}.merge(options)
|
59
|
+
cdn_asset opts
|
60
|
+
end
|
61
|
+
|
62
|
+
# fetches popper js
|
63
|
+
def self.popper_js(options = {})
|
64
|
+
opts = {
|
65
|
+
version: '1.13.0',
|
66
|
+
path: 'ajax/libs/popper.js'
|
67
|
+
}.merge(options)
|
68
|
+
cdn_asset opts
|
69
|
+
end
|
70
|
+
|
71
|
+
# @return the url of the library from cdnjs.com
|
72
|
+
# def self.query(options = {})
|
73
|
+
# return if options[:library].nil?
|
74
|
+
# buffer = open("https://api.cdnjs.com/libraries?search=#{options[:library]}&fields=version,assets").read
|
75
|
+
# JSON.parse(buffer)
|
76
|
+
# end
|
77
|
+
|
78
|
+
# @note The problem with this method is there is no real sanity with CDN naming conventions
|
79
|
+
# Considering using API to smartly figure out what is being asked of the helper to link in
|
80
|
+
def self.cdn_asset(options = {})
|
81
|
+
version = options[:version]
|
82
|
+
extension = options[:extension]
|
83
|
+
name = options[:name]
|
84
|
+
name = "#{name}.min" if options.fetch(:minified, true)
|
85
|
+
library = options[:library]
|
86
|
+
scheme = options[:scheme].nil? ? 'https:' : "#{options[:scheme]}:"
|
87
|
+
path = options[:path].nil? ? 'ajax/libs' : options[:path].to_s
|
88
|
+
host = options[:host].nil? ? "#{scheme}//cdnjs.cloudflare.com" : options[:host]
|
89
|
+
"#{host}/#{path}/#{library}/#{version}/#{name}.#{extension}"
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|