[
  {
    "path": ".gitignore",
    "content": "/.bundle/\n/.yardoc\n/Gemfile.lock\n/_yardoc/\n/coverage/\n/doc/\n/pkg/\n/spec/reports/\n/tmp/\n"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "content": "# Contributor Code of Conduct\n\nAs contributors and maintainers of this project, and in the interest of\nfostering an open and welcoming community, we pledge to respect all people who\ncontribute through reporting issues, posting feature requests, updating\ndocumentation, submitting pull requests or patches, and other activities.\n\nWe are committed to making participation in this project a harassment-free\nexperience for everyone, regardless of level of experience, gender, gender\nidentity and expression, sexual orientation, disability, personal appearance,\nbody size, race, ethnicity, age, religion, or nationality.\n\nExamples of unacceptable behavior by participants include:\n\n* The use of sexualized language or imagery\n* Personal attacks\n* Trolling or insulting/derogatory comments\n* Public or private harassment\n* Publishing other's private information, such as physical or electronic\n  addresses, without explicit permission\n* Other unethical or unprofessional conduct\n\nProject maintainers have the right and responsibility to remove, edit, or\nreject comments, commits, code, wiki edits, issues, and other contributions\nthat are not aligned to this Code of Conduct, or to ban temporarily or\npermanently any contributor for other behaviors that they deem inappropriate,\nthreatening, offensive, or harmful.\n\nBy adopting this Code of Conduct, project maintainers commit themselves to\nfairly and consistently applying these principles to every aspect of managing\nthis project. Project maintainers who do not follow or enforce the Code of\nConduct may be permanently removed from the project team.\n\nThis code of conduct applies both within project spaces and in public spaces\nwhen an individual is representing the project or its community.\n\nInstances of abusive, harassing, or otherwise unacceptable behavior may be\nreported by contacting a project maintainer at TODO: Write your email address. All\ncomplaints will be reviewed and investigated and will result in a response that\nis deemed necessary and appropriate to the circumstances. Maintainers are\nobligated to maintain confidentiality with regard to the reporter of an\nincident.\n\nThis Code of Conduct is adapted from the [Contributor Covenant][homepage],\nversion 1.3.0, available at\n[http://contributor-covenant.org/version/1/3/0/][version]\n\n[homepage]: http://contributor-covenant.org\n[version]: http://contributor-covenant.org/version/1/3/0/"
  },
  {
    "path": "Gemfile",
    "content": "source 'https://rubygems.org'\n\n# Specify your gem's dependencies in active_bootstrap_skin.gemspec\ngemspec\n"
  },
  {
    "path": "LICENSE.txt",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2016 Vinh Nguyen\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "# ActiveBootstrapSkin\n\n[![Codewake](https://www.codewake.com/badges/ask_question_flat_square.svg)](https://www.codewake.com/p/active-bootstrap-skin)\n\nBootstrap skin for Active Admin.\n\n## Installation\n\n- Add the gem to your Gemfile:\n\n```\n# Note: The gem require the bootstrap-sass gem. So we need to add bootstrap-sass to Gemfile\n\ngem 'bootstrap-sass'\ngem 'active_bootstrap_skin'\n```\n\n## Usage\n\n- Don't forget you have to config the [bootstraps-sass](https://github.com/twbs/bootstrap-sass#a-ruby-on-rails) first.\n\n- In the `active_admin.scss` file, you include `active_bootstrap_skin`. **Note: You have to comment the active admin stylesheets.**\n\n```css\n// Active Admin's got SASS!\n// @import \"active_admin/mixins\";\n// @import \"active_admin/base\";\n\n// Active Bootstrap\n@import \"active_bootstrap_skin\";\n```\n\n- In the `active_admin.js` file, you require `active_bootstrap_skin`.\n\n```javascript\n//= require active_admin/base\n//= require bootstrap-sprockets\n\n//= require active_bootstrap_skin\n```\n\n## Screens\n\n![Login](https://cloud.githubusercontent.com/assets/1997137/14111523/49c1e80c-f5f5-11e5-9fd4-d1700428b167.png)\n\n![Admin](https://cloud.githubusercontent.com/assets/1997137/14111565/6f684bd2-f5f5-11e5-9c8c-afc0ac8ab05e.png)\n\n![Admin Responsive](https://cloud.githubusercontent.com/assets/1997137/14111613/8fd64eb4-f5f5-11e5-9024-0d0dbf4c4b88.png)\n\n![Admin viewport](https://cloud.githubusercontent.com/assets/1997137/15280259/d47272f4-1b58-11e6-86e8-b35836557890.png)\n\n![Admin dropdown](https://cloud.githubusercontent.com/assets/1997137/15280303/57980aea-1b59-11e6-9cda-b58573a03f84.png)\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/vinhnglx/active_bootstrap_skin. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org/) code of conduct.\n"
  },
  {
    "path": "Rakefile",
    "content": "require \"bundler/gem_tasks\"\ntask :default => :spec\n"
  },
  {
    "path": "active_bootstrap_skin.gemspec",
    "content": "# coding: utf-8\nlib = File.expand_path('../lib', __FILE__)\n$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)\nrequire 'active_bootstrap_skin/version'\n\nGem::Specification.new do |spec|\n  spec.name          = \"active_bootstrap_skin\"\n  spec.version       = ActiveBootstrapSkin::VERSION\n  spec.authors       = [\"Vinh Nguyen\"]\n  spec.email         = [\"vinh.nglx@gmail.com\"]\n\n  spec.summary       = %q{Bootstrap skin for ActiveAdmin.}\n  spec.description   = %q{Bootstrap skin for ActiveAdmin.}\n  spec.homepage      = \"https://github.com/vinhnglx/active_bootstrap_skin\"\n  spec.license       = \"MIT\"\n\n  spec.files         = `git ls-files -z`.split(\"\\x0\").reject { |f| f.match(%r{^(test|spec|features)/}) }\n  spec.executables   = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }\n  spec.test_files    = spec.files.grep(%r{^(test|spec|features)/})\n  spec.require_paths = [\"lib\"]\n\n  spec.add_development_dependency \"bundler\", \"~> 1.11\"\n  spec.add_development_dependency \"rake\", \"~> 10.0\"\n\n  spec.add_runtime_dependency \"bootstrap-sass\", \"~> 3.4.1\"\nend\n"
  },
  {
    "path": "app/assets/images/.gitkeep",
    "content": ""
  },
  {
    "path": "app/assets/javascripts/active_bootstrap_skin.js",
    "content": "$(document).ready(function() {\n  // Add meta view port\n  $('head').append('<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">');\n\n  // Dropdown menus\n  $(window).resize(function(){\n    if ($(window).width() <= 768) {\n      $('#tabs').addClass('collapse');\n    } else {\n      $('#tabs').removeClass('collapse');\n    }\n  });\n\n  html_responsive = ' \\\n    <ul class=\"header-item tabs mobile\"> \\\n      <li> \\\n        <button class=\"navbar-toggle button_mobile_burger\" type=\"button\" data-toggle=\"collapse\" href=\"#tabs\" aria-expanded=\"true\" aria-controls=\"tabs\"> \\\n          <span class=\"sr-only\">Toggle navigation</span> \\\n          <span class=\"icon-bar\"></span> \\\n          <span class=\"icon-bar\"></span> \\\n          <span class=\"icon-bar\"></span> \\\n        </button> \\\n      </li> \\\n    </ul> \\\n  '\n\n  $(html_responsive).insertAfter('#site_title');\n});\n"
  },
  {
    "path": "app/assets/stylesheets/active_bootstrap_skin.scss",
    "content": "@import 'bootstrap';\n\n/* set horizontal padding on all content containers */\n#title_bar, .flashes, .logged_out #content_wrapper, #footer {\n  @include container-fixed;\n}\n\n#wrapper {\n  @include container-fixed(0);\n}\n\n// apply bootstrap pagination style to .pagination\n.pagination {\n  > span {\n    position: relative;\n    float: left;\n    padding: $padding-base-vertical $padding-base-horizontal;\n    line-height: $line-height-base;\n    background-color: $pagination-bg;\n    border: 1px solid $pagination-border;\n    margin-left: -1px;\n\n    &:first-child {\n      @include border-left-radius($border-radius-base);\n    }\n\n    &:last-child {\n      @include border-right-radius($border-radius-base);\n    }\n\n    &:hover, &:focus {\n      z-index: 2;\n      color: $pagination-hover-color;\n      background-color: $pagination-hover-bg;\n      border-color: $pagination-hover-border;\n    }\n\n    &.current {\n      &, &:hover, &:focus {\n        z-index: 3;\n        color: $pagination-active-color;\n        background-color: $pagination-active-bg;\n        border-color: $pagination-active-border;\n        cursor: default;\n      }\n    }\n\n    &.gap {\n      &, &:hover, &:focus {\n        color: $pagination-disabled-color;\n        background-color: $pagination-disabled-bg;\n        border-color: $pagination-disabled-border;\n        cursor: $cursor-disabled;\n      }\n    }\n\n    a {\n      color: $pagination-color;\n\n      &:hover, &:focus {\n        text-decoration: none;\n      }\n    }\n  }\n}\n\n//apply bootstrap panel style to .panel\n.panel {\n  @extend .panel-default;\n\n  > h3 {\n    @extend .panel-heading;\n\n    padding-top: 7px;\n    margin: 0;\n\n    a {\n      color: $panel-default-text;\n    }\n  }\n}\n\n.panel_contents {\n  @extend .panel-body;\n}\n\n.flash {\n  @extend .alert;\n  margin-top: 30px;\n}\n\n.flash_alert {\n  @extend .alert-danger;\n}\n\n.flash_notice {\n  @extend .alert-success;\n}\n\n#error_explanation {\n  color: $state-danger-text;\n  h2 {\n    font-size: 15px;\n  }\n}\n\n.inline-errors {\n  color: $state-danger-text;\n}\n\n#login {\n  max-width: 400px;\n  padding: 15px;\n  margin: 0 auto;\n\n  #admin_user_remember_me {\n    width: 12px;\n    height: 12px;\n    display: inline-block;\n    margin-right: 10px;\n  }\n\n  #admin_user_submit_action, input[type=\"submit\"] {\n    @extend .btn-block;\n  }\n}\n\n/* Header and Nav */\n#header {\n  @extend .navbar;\n  @extend .navbar-inverse;\n  border-radius: 0;\n\n  .mobile {\n    display: none;\n  }\n\n  @media (max-width: 768px) {\n    .button_mobile_burger {\n      margin-top: 0;\n    }\n\n    #site_title {\n      float: left;\n    }\n\n    #utility_nav {\n      display: none;\n    }\n\n    #tabs {\n      clear: both;\n    }\n\n    .mobile {\n      display: block;\n    }\n\n    .header-item.tabs {\n      margin: 7.5px 0;\n    }\n\n    #utility_nav {\n      float: none;\n    }\n  }\n\n  @media (min-width: 769px) {\n    #utility_nav {\n      float: right;\n    }\n  }\n\n  #site_title {\n    @extend .navbar-brand;\n    margin-top:    0;\n    margin-bottom: 0;\n  }\n\n  .header-item.tabs {\n    @extend .nav;\n    @extend .navbar-nav;\n\n    li.current { @extend .active; }\n  }\n\n  .header-item.tab {\n    @extend .col-sm-3;\n  }\n}\n\n#title_bar {\n  @extend .clearfix;\n  margin-bottom: 10px;\n\n  #titlebar_left {\n    @extend .pull-left;\n  }\n\n  #titlebar_right {\n    @extend .pull-right;\n  }\n\n  .action_item a {\n    @extend .btn;\n    @extend .btn-primary;\n  }\n}\n\n/* Sidebar */\n.filter_form {\n  .filter_form_field {\n    @extend .form-group;\n\n    input,select { @extend .form-control; }\n\n    select[multiple] {\n      height: auto;\n    }\n  }\n\n  .buttons {\n    input, a { @extend .btn; @extend .btn-default; }\n    input[type=\"submit\"] { @extend .btn-primary; }\n  }\n}\n\n/* Main Content */\n#active_admin_content {\n  @extend .row;\n  margin: 0;\n  padding-bottom: 30px;\n\n  &.without_sidebar {\n    #main_content_wrapper {\n      @extend .col-md-6;\n      width: auto;\n      min-width: 100%;\n    }\n  }\n\n  &.with_sidebar {\n    #main_content_wrapper { @extend .col-md-9; }\n    #sidebar { @extend .col-md-3; }\n  }\n\n  table {\n    width: auto;\n  }\n}\n\n#main_content_wrapper {\n  padding-bottom: 40px;\n  /* make extra wide content accessible */\n  overflow-x: auto;\n\n  .member_link {\n    margin-right: 10px;\n  }\n  input[type=\"checkbox\"] {\n    display: inline-block;\n    width: auto;\n    height: auto;\n    margin-right: 10px;\n  }\n}\n\n#main_content table {\n  @extend .table;\n}\n\nul.scopes {\n  li.scope {\n    display: inline-block;\n    list-style-type: none;\n    margin-bottom: 4px;\n  }\n  li.scope a{ @extend .btn; @extend .btn-default; }\n  li.scope.selected a { @extend .btn-primary; }\n}\n\n/* breadcrumb */\n.breadcrumb {\n  /* the typical bootstrap look for .breadcrumb does not fit in the active admin layout */\n  padding: 0;\n  border-radius: 0;\n}\n\n#ui-datepicker-div {\n  background: white;\n  padding: 5px;\n  border: 1px solid rgba(0,0,0,0.15);\n  border-radius: 5px;\n  .ui-datepicker-calendar {\n    th, td {\n      width: 30px;\n      height: 30px;\n      text-align: center;\n      &:hover {\n        background: #eeeeee;\n        cursor: pointer;\n      }\n    }\n  }\n\n  .ui-datepicker-prev {\n    float: left;\n  }\n\n  .ui-datepicker-next {\n    float: right;\n  }\n\n  .ui-datepicker-today {\n    font-weight: bold;\n  }\n\n  .ui-datepicker-title {\n    text-align: center;\n    font-weight: bold;\n  }\n}\n\n/* Tables */\n.index_as_table { @extend .table-responsive; }\n.index_table      { @extend .table; }\n.attributes_table table { @extend .table; }\n\n//turn .table_actions into buttons with icons\n\n#main_content_wrapper .table_actions {\n  @extend .btn-toolbar;\n  min-width: 117px;\n\n  > .member_link {\n    margin: (-3px) 10px 0 0;\n\n    &:last-child {\n      margin-right: 0;\n    }\n  }\n}\n\n.member_link, .ui-sortable-handle {\n  @extend .btn;\n  @extend .btn-default;\n  @extend .glyphicon;\n  font-size: 0;\n  text-align: center;\n  padding: 3px 0;\n  width: 28px;\n\n  &:before {\n    font-size: 14px;\n  }\n}\n\n.ui-sortable-handle {\n  @extend .glyphicon-sort;\n  cursor: all-scroll;\n}\n\n.view_link {\n  @extend .glyphicon-search;\n}\n\n.edit_link {\n  @extend .glyphicon-pencil;\n}\n\n.delete_link {\n  @extend .glyphicon-trash;\n}\n\n/* Forms */\nform {\n  //@extend form[role=\"form\"];\n\n  .inputs, .actions {\n    ol {\n      padding-left: 0;\n      list-style: none;\n    }\n  }\n\n  .inputs {\n    li {\n      @extend .form-group;\n\n      input,select,textarea { @extend .form-control; }\n\n      select[multiple] {\n        height: auto;\n      }\n    }\n  }\n\n  .actions {\n    li {\n      display: inline-block;\n\n      input, a { @extend .btn; @extend .btn-default; }\n      input[type=\"submit\"] { @extend .btn-primary; }\n    }\n  }\n\n  .actions li {\n    margin-right: 10px;\n  }\n\n  label.label {\n    /* The label class has a different meaning in bootstrap */\n    display: inline-block;\n    font-weight: bold;\n\n    padding: inherit;\n    font-size: inherit;\n    line-height: inherit;\n    color: inherit;\n    text-align: inherit;\n    white-space: inherit;\n    vertical-align: inherit;\n    border-radius: inherit;\n  }\n\n  &.formtastic .errors {\n    color: $state-danger-text;\n  }\n}\n\n/* Footer */\n#footer {\n  padding-top: 30px;\n  padding-bottom: 20px;\n  background-color: #9da5a4;\n}\n\nlegend.label {\n  @extend legend;\n  text-align: left;\n  border-radius: 0;\n  margin-bottom: 10px;\n}\n\n/* Display of checkboxes and radios */\n\n.check_boxes {\n  @extend .checkbox;\n}\n\n.check_boxes, .radio {\n  label {\n    font-weight: normal;\n  }\n\n  legend label {\n    padding: 0;\n  }\n}\n\n// style filter form\n.filter_form {\n\n  input {\n    margin-top: 10px;\n  }\n\n  label input {\n    margin-top: 5px;\n  }\n\n  .buttons {\n    input, a {\n      margin-right: 5px;\n    }\n\n    a {\n      margin-top: 10px;\n    }\n  }\n\n  .filter_form_field, form .inputs li {\n\n    select[multiple] {\n      height: auto;\n    }\n\n    input[type=\"radio\"] {\n      height: auto;\n      width: auto;\n    }\n  }\n}\n\n/* table_tools */\n\n.table_tools {\n  overflow: hidden;\n  margin-bottom: 10px;\n\n  .batch_actions_selector {\n    .dropdown_menu_button {\n      @extend .btn;\n      @extend .btn-default;\n      @extend .dropdown-toggle;\n      &:after {\n        margin-left: 0.4em;\n        content: \"\";\n        @extend .caret;\n      }\n    }\n\n    .dropdown_menu_list {\n      @extend .dropdown-menu;\n      display: block;\n      top: auto;\n      left: auto;\n    }\n  }\n\n  .table_tools_segmented_control {\n    @extend .btn-group;\n    margin: 0 0 0 1px;\n  }\n\n  .index {\n    @extend .btn;\n    @extend .btn-default;\n\n    a {\n      color: $btn-default-color;\n\n      &:hover, &:focus {\n        text-decoration: none;\n      }\n    }\n\n    &.selected {\n      @extend .btn-default;\n      @extend .active;\n    }\n  }\n}\n"
  },
  {
    "path": "bin/console",
    "content": "#!/usr/bin/env ruby\n\nrequire \"bundler/setup\"\nrequire \"active_bootstrap_skin\"\n\n# You can add fixtures and/or initialization code here to make experimenting\n# with your gem easier. You can also use a different console, if you like.\n\n# (If you use this, don't forget to add pry to your Gemfile!)\n# require \"pry\"\n# Pry.start\n\nrequire \"irb\"\nIRB.start\n"
  },
  {
    "path": "bin/setup",
    "content": "#!/usr/bin/env bash\nset -euo pipefail\nIFS=$'\\n\\t'\nset -vx\n\nbundle install\n\n# Do any other automated setup that you need to do here\n"
  },
  {
    "path": "lib/active_bootstrap_skin/version.rb",
    "content": "module ActiveBootstrapSkin\n  VERSION = \"0.1.5\"\nend\n"
  },
  {
    "path": "lib/active_bootstrap_skin.rb",
    "content": "require \"active_bootstrap_skin/version\"\n\nmodule ActiveBootstrapSkin\n  module Rails\n    class Engine < ::Rails::Engine\n    end\n  end\nend\n"
  }
]