├── .gitignore
├── Bowerfile
├── Gemfile
├── Gemfile.lock
├── README.md
├── Rakefile
├── app
├── api
│ └── billing.rb
├── assets
│ ├── images
│ │ └── .keep
│ ├── javascripts
│ │ ├── application.js
│ │ ├── bootstrap-datepicker.js
│ │ ├── highcharts.js
│ │ ├── home.coffee.erb
│ │ ├── metisMenu.min.js
│ │ ├── modernizr.min.js
│ │ └── templates
│ │ │ ├── .keep
│ │ │ ├── bill
│ │ │ ├── chart.html.erb
│ │ │ ├── edit.html.erb
│ │ │ └── index.html.erb
│ │ │ ├── category
│ │ │ ├── edit.html.erb
│ │ │ └── index.html.erb
│ │ │ └── index.html.erb
│ └── stylesheets
│ │ ├── application.css.scss
│ │ ├── datepicker.css
│ │ ├── home.scss
│ │ ├── metis
│ │ ├── main.css
│ │ └── theme.css
│ │ └── metisMenu.min.css
├── controllers
│ ├── application_controller.rb
│ ├── concerns
│ │ └── .keep
│ └── home_controller.rb
├── helpers
│ ├── application_helper.rb
│ └── home_helper.rb
├── mailers
│ └── .keep
├── models
│ ├── .keep
│ ├── ability.rb
│ ├── bill.rb
│ ├── category.rb
│ ├── concerns
│ │ └── .keep
│ └── user.rb
└── views
│ ├── api
│ ├── bill
│ │ ├── bill.jbuilder
│ │ └── index.jbuilder
│ └── category
│ │ ├── all.jbuilder
│ │ ├── category.jbuilder
│ │ └── index.jbuilder
│ ├── devise
│ └── sessions
│ │ └── new.html.slim
│ ├── home
│ └── index.html.erb
│ └── layouts
│ ├── application.html.erb
│ ├── devise.html.erb
│ └── home.html.erb
├── bin
├── bundle
├── rails
├── rake
├── setup
├── spring
├── unicorn.sh
└── unicorn_stop.sh
├── config.ru
├── config
├── application.rb
├── boot.rb
├── database.yml
├── environment.rb
├── environments
│ ├── development.rb
│ ├── production.rb
│ └── test.rb
├── initializers
│ ├── assets.rb
│ ├── backtrace_silencers.rb
│ ├── bower_rails.rb
│ ├── cookies_serializer.rb
│ ├── devise.rb
│ ├── filter_parameter_logging.rb
│ ├── inflections.rb
│ ├── mime_types.rb
│ ├── session_store.rb
│ └── wrap_parameters.rb
├── locales
│ ├── devise.en.yml
│ ├── en.yml
│ └── zh-cn.yml
├── mongoid.yml
├── routes.rb
├── secrets.yml
└── unicorn.rb
├── db
└── seeds.rb
├── doc
├── 001.jpg
├── 002.jpg
└── 003.jpg
├── lib
├── assets
│ └── .keep
└── tasks
│ └── .keep
├── log
└── .keep
├── public
├── 404.html
├── 422.html
├── 500.html
├── assets
│ ├── fonts
│ │ ├── FontAwesome.otf
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.svg
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ ├── fontawesome-webfont.woff2
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.svg
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ └── glyphicons-halflings-regular.woff2
│ └── img
│ │ ├── cp.png
│ │ ├── logo.png
│ │ ├── metis-tile.png
│ │ ├── pattern
│ │ ├── README.md
│ │ ├── always_grey.png
│ │ ├── arches.png
│ │ ├── batthern.png
│ │ ├── bo_play_pattern.png
│ │ ├── brillant.png
│ │ ├── carbon_fibre.png
│ │ ├── cartographer.png
│ │ ├── crissXcross.png
│ │ ├── diagonal_striped_brick.png
│ │ ├── diamond_upholstery.png
│ │ ├── egg_shell.png
│ │ ├── gplaypattern.png
│ │ ├── greyfloral.png
│ │ ├── irongrip.png
│ │ ├── large_leather.png
│ │ ├── low_contrast_linen.png
│ │ ├── noisy_grid.png
│ │ ├── pool_table.png
│ │ ├── purty_wood.png
│ │ ├── random_grey_variations.png
│ │ ├── retina_wood.png
│ │ ├── rip_jobs.png
│ │ ├── white_tiles.png
│ │ └── wood_1.png
│ │ └── user.gif
├── favicon.ico
└── robots.txt
├── spec
├── controllers
│ └── home_controller_spec.rb
├── factories
│ ├── bills.rb
│ ├── categories.rb
│ └── users.rb
├── helpers
│ └── home_helper_spec.rb
├── models
│ ├── bill_spec.rb
│ ├── category_spec.rb
│ └── user_spec.rb
└── views
│ └── home
│ └── index.html.erb_spec.rb
├── test
├── controllers
│ └── .keep
├── fixtures
│ └── .keep
├── helpers
│ └── .keep
├── integration
│ └── .keep
├── mailers
│ └── .keep
├── models
│ └── .keep
└── test_helper.rb
└── vendor
└── assets
├── .bowerrc
├── bower.json
├── bower_components
├── angular-bootstrap
│ ├── .bower.json
│ ├── bower.json
│ ├── ui-bootstrap-csp.css
│ ├── ui-bootstrap-tpls.js
│ ├── ui-bootstrap-tpls.min.js
│ ├── ui-bootstrap.js
│ └── ui-bootstrap.min.js
├── angular-flash-messages
│ ├── .bower.json
│ ├── Makefile
│ ├── README.md
│ ├── angular-flash.js
│ ├── bower.json
│ └── package.json
├── angular-flash
│ ├── .bower.json
│ ├── .bowerrc
│ ├── .editorconfig
│ ├── .gitattributes
│ ├── .gitignore
│ ├── LICENSE
│ ├── Makefile
│ ├── bower.json
│ ├── dist
│ │ ├── angular-flash.js
│ │ └── angular-flash.min.js
│ ├── package.json
│ ├── readme.md
│ └── src
│ │ ├── directives
│ │ └── flash-alert-directive.js
│ │ └── services
│ │ └── flash-service.js
├── angular-loading-bar
│ ├── .bower.json
│ ├── CHANGELOG.md
│ ├── Gruntfile.js
│ ├── LICENSE
│ ├── README.md
│ ├── bower.json
│ ├── build
│ │ ├── loading-bar.css
│ │ ├── loading-bar.js
│ │ ├── loading-bar.min.css
│ │ └── loading-bar.min.js
│ ├── index.js
│ ├── package.json
│ └── src
│ │ ├── loading-bar.css
│ │ └── loading-bar.js
├── angular-mocks
│ ├── .bower.json
│ ├── README.md
│ ├── angular-mocks.js
│ ├── bower.json
│ ├── ngAnimateMock.js
│ ├── ngMock.js
│ ├── ngMockE2E.js
│ └── package.json
├── angular-resource
│ ├── .bower.json
│ ├── README.md
│ ├── angular-resource.js
│ ├── angular-resource.min.js
│ ├── angular-resource.min.js.map
│ ├── bower.json
│ ├── index.js
│ └── package.json
├── angular-route
│ ├── .bower.json
│ ├── README.md
│ ├── angular-route.js
│ ├── angular-route.min.js
│ ├── angular-route.min.js.map
│ ├── bower.json
│ ├── index.js
│ └── package.json
├── angular-translate
│ ├── .bower.json
│ ├── README.md
│ ├── angular-translate.js
│ ├── angular-translate.min.js
│ └── bower.json
├── angular
│ ├── .bower.json
│ ├── README.md
│ ├── angular-csp.css
│ ├── angular.js
│ ├── angular.min.js
│ ├── angular.min.js.gzip
│ ├── angular.min.js.map
│ ├── bower.json
│ ├── index.js
│ └── package.json
├── bootstrap-sass-official
│ ├── .bower.json
│ ├── CHANGELOG.md
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── README.md
│ ├── assets
│ │ ├── fonts
│ │ │ └── bootstrap
│ │ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ └── glyphicons-halflings-regular.woff2
│ │ ├── javascripts
│ │ │ ├── bootstrap-sprockets.js
│ │ │ ├── bootstrap.js
│ │ │ ├── bootstrap.min.js
│ │ │ └── bootstrap
│ │ │ │ ├── affix.js
│ │ │ │ ├── alert.js
│ │ │ │ ├── button.js
│ │ │ │ ├── carousel.js
│ │ │ │ ├── collapse.js
│ │ │ │ ├── dropdown.js
│ │ │ │ ├── modal.js
│ │ │ │ ├── popover.js
│ │ │ │ ├── scrollspy.js
│ │ │ │ ├── tab.js
│ │ │ │ ├── tooltip.js
│ │ │ │ └── transition.js
│ │ └── stylesheets
│ │ │ ├── _bootstrap-compass.scss
│ │ │ ├── _bootstrap-mincer.scss
│ │ │ ├── _bootstrap-sprockets.scss
│ │ │ ├── _bootstrap.scss
│ │ │ └── bootstrap
│ │ │ ├── _alerts.scss
│ │ │ ├── _badges.scss
│ │ │ ├── _breadcrumbs.scss
│ │ │ ├── _button-groups.scss
│ │ │ ├── _buttons.scss
│ │ │ ├── _carousel.scss
│ │ │ ├── _close.scss
│ │ │ ├── _code.scss
│ │ │ ├── _component-animations.scss
│ │ │ ├── _dropdowns.scss
│ │ │ ├── _forms.scss
│ │ │ ├── _glyphicons.scss
│ │ │ ├── _grid.scss
│ │ │ ├── _input-groups.scss
│ │ │ ├── _jumbotron.scss
│ │ │ ├── _labels.scss
│ │ │ ├── _list-group.scss
│ │ │ ├── _media.scss
│ │ │ ├── _mixins.scss
│ │ │ ├── _modals.scss
│ │ │ ├── _navbar.scss
│ │ │ ├── _navs.scss
│ │ │ ├── _normalize.scss
│ │ │ ├── _pager.scss
│ │ │ ├── _pagination.scss
│ │ │ ├── _panels.scss
│ │ │ ├── _popovers.scss
│ │ │ ├── _print.scss
│ │ │ ├── _progress-bars.scss
│ │ │ ├── _responsive-embed.scss
│ │ │ ├── _responsive-utilities.scss
│ │ │ ├── _scaffolding.scss
│ │ │ ├── _tables.scss
│ │ │ ├── _theme.scss
│ │ │ ├── _thumbnails.scss
│ │ │ ├── _tooltip.scss
│ │ │ ├── _type.scss
│ │ │ ├── _utilities.scss
│ │ │ ├── _variables.scss
│ │ │ ├── _wells.scss
│ │ │ └── mixins
│ │ │ ├── _alerts.scss
│ │ │ ├── _background-variant.scss
│ │ │ ├── _border-radius.scss
│ │ │ ├── _buttons.scss
│ │ │ ├── _center-block.scss
│ │ │ ├── _clearfix.scss
│ │ │ ├── _forms.scss
│ │ │ ├── _gradients.scss
│ │ │ ├── _grid-framework.scss
│ │ │ ├── _grid.scss
│ │ │ ├── _hide-text.scss
│ │ │ ├── _image.scss
│ │ │ ├── _labels.scss
│ │ │ ├── _list-group.scss
│ │ │ ├── _nav-divider.scss
│ │ │ ├── _nav-vertical-align.scss
│ │ │ ├── _opacity.scss
│ │ │ ├── _pagination.scss
│ │ │ ├── _panels.scss
│ │ │ ├── _progress-bar.scss
│ │ │ ├── _reset-filter.scss
│ │ │ ├── _reset-text.scss
│ │ │ ├── _resize.scss
│ │ │ ├── _responsive-visibility.scss
│ │ │ ├── _size.scss
│ │ │ ├── _tab-focus.scss
│ │ │ ├── _table-row.scss
│ │ │ ├── _text-emphasis.scss
│ │ │ ├── _text-overflow.scss
│ │ │ └── _vendor-prefixes.scss
│ ├── bower.json
│ ├── composer.json
│ ├── package.json
│ └── sache.json
├── components-font-awesome
│ ├── .bower.json
│ ├── .gitignore
│ ├── README.md
│ ├── bower.json
│ ├── css
│ │ ├── font-awesome.css
│ │ └── font-awesome.min.css
│ ├── fonts
│ │ ├── FontAwesome.otf
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.svg
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ └── fontawesome-webfont.woff2
│ ├── less
│ │ ├── animated.less
│ │ ├── bordered-pulled.less
│ │ ├── core.less
│ │ ├── fixed-width.less
│ │ ├── font-awesome.less
│ │ ├── icons.less
│ │ ├── larger.less
│ │ ├── list.less
│ │ ├── mixins.less
│ │ ├── path.less
│ │ ├── rotated-flipped.less
│ │ ├── stacked.less
│ │ └── variables.less
│ └── scss
│ │ ├── _animated.scss
│ │ ├── _bordered-pulled.scss
│ │ ├── _core.scss
│ │ ├── _fixed-width.scss
│ │ ├── _icons.scss
│ │ ├── _larger.scss
│ │ ├── _list.scss
│ │ ├── _mixins.scss
│ │ ├── _path.scss
│ │ ├── _rotated-flipped.scss
│ │ ├── _stacked.scss
│ │ ├── _variables.scss
│ │ └── font-awesome.scss
└── jquery
│ ├── .bower.json
│ ├── MIT-LICENSE.txt
│ ├── bower.json
│ ├── dist
│ ├── jquery.js
│ ├── jquery.min.js
│ └── jquery.min.map
│ └── src
│ ├── ajax.js
│ ├── ajax
│ ├── jsonp.js
│ ├── load.js
│ ├── parseJSON.js
│ ├── parseXML.js
│ ├── script.js
│ ├── var
│ │ ├── nonce.js
│ │ └── rquery.js
│ └── xhr.js
│ ├── attributes.js
│ ├── attributes
│ ├── attr.js
│ ├── classes.js
│ ├── prop.js
│ ├── support.js
│ └── val.js
│ ├── callbacks.js
│ ├── core.js
│ ├── core
│ ├── access.js
│ ├── init.js
│ ├── parseHTML.js
│ ├── ready.js
│ └── var
│ │ └── rsingleTag.js
│ ├── css.js
│ ├── css
│ ├── addGetHookIf.js
│ ├── curCSS.js
│ ├── defaultDisplay.js
│ ├── hiddenVisibleSelectors.js
│ ├── support.js
│ ├── swap.js
│ └── var
│ │ ├── cssExpand.js
│ │ ├── getStyles.js
│ │ ├── isHidden.js
│ │ ├── rmargin.js
│ │ └── rnumnonpx.js
│ ├── data.js
│ ├── data
│ ├── Data.js
│ ├── accepts.js
│ └── var
│ │ ├── data_priv.js
│ │ └── data_user.js
│ ├── deferred.js
│ ├── deprecated.js
│ ├── dimensions.js
│ ├── effects.js
│ ├── effects
│ ├── Tween.js
│ └── animatedSelector.js
│ ├── event.js
│ ├── event
│ ├── ajax.js
│ ├── alias.js
│ └── support.js
│ ├── exports
│ ├── amd.js
│ └── global.js
│ ├── intro.js
│ ├── jquery.js
│ ├── manipulation.js
│ ├── manipulation
│ ├── _evalUrl.js
│ ├── support.js
│ └── var
│ │ └── rcheckableType.js
│ ├── offset.js
│ ├── outro.js
│ ├── queue.js
│ ├── queue
│ └── delay.js
│ ├── selector-native.js
│ ├── selector-sizzle.js
│ ├── selector.js
│ ├── serialize.js
│ ├── sizzle
│ └── dist
│ │ ├── sizzle.js
│ │ ├── sizzle.min.js
│ │ └── sizzle.min.map
│ ├── traversing.js
│ ├── traversing
│ ├── findFilter.js
│ └── var
│ │ └── rneedsContext.js
│ ├── var
│ ├── arr.js
│ ├── class2type.js
│ ├── concat.js
│ ├── hasOwn.js
│ ├── indexOf.js
│ ├── pnum.js
│ ├── push.js
│ ├── rnotwhite.js
│ ├── slice.js
│ ├── strundefined.js
│ ├── support.js
│ └── toString.js
│ └── wrap.js
├── javascripts
├── .keep
└── metis
│ ├── app.js
│ ├── app.js.map
│ ├── app.min.js
│ ├── core.js
│ ├── core.js.map
│ ├── core.min.js
│ ├── countdown.js
│ ├── countdown.js.map
│ ├── countdown.min.js
│ ├── style-switcher.js
│ ├── style-switcher.js.map
│ └── style-switcher.min.js
└── stylesheets
└── .keep
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files for more about ignoring files.
2 | #
3 | # If you find yourself ignoring temporary files generated by your text editor
4 | # or operating system, you probably want to add a global ignore instead:
5 | # git config --global core.excludesfile '~/.gitignore_global'
6 |
7 | # Ignore bundler config.
8 | /.bundle
9 |
10 | # Ignore the default SQLite database.
11 | /db/*.sqlite3
12 | /db/*.sqlite3-journal
13 |
14 | # Ignore all logfiles and tempfiles.
15 | /log/*
16 | !/log/.keep
17 | /tmp
18 |
19 | /public/assets/application-*.css*
20 | /public/assets/application-*.js*
21 | /public/assets/manifest-*.json
22 | .idea
23 |
--------------------------------------------------------------------------------
/Bowerfile:
--------------------------------------------------------------------------------
1 | # A sample Bowerfile
2 | # Check out https://github.com/42dev/bower-rails#ruby-dsl-configuration for more options
3 |
4 | # asset 'bootstrap'asset 'angular'
5 | asset 'angular-route'
6 | asset 'angular-resource'
7 | asset 'angular-mocks'
8 | asset 'angular-flash'
9 | asset 'angular-loading-bar'
10 | asset 'angular-flash-messages'
11 | asset 'angular-translate'
12 | asset 'angular-bootstrap'
13 | asset 'bootstrap-sass-official'
14 | asset 'components-font-awesome'
15 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## Bill
2 |
3 | This is a billing program developed with Rails 4.
4 |
5 | #### Dependencies
6 |
7 | * mongodb
8 | * Rails 4
9 |
10 |
11 | #### Usage
12 |
13 | git clone https://github.com/wusuopu/rails-billing billing
14 | cd billing
15 | bundle install
16 | vim config/mongoid.yml
17 | rails server
18 |
19 |
20 | #### Screenshot
21 |
22 | 
23 |
24 | 
25 |
26 | 
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require File.expand_path('../config/application', __FILE__)
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/assets/images/.keep
--------------------------------------------------------------------------------
/app/assets/javascripts/application.js:
--------------------------------------------------------------------------------
1 | // This is a manifest file that'll be compiled into application.js, which will include all the files
2 | // listed below.
3 | //
4 | // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5 | // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6 | //
7 | // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8 | // compiled file.
9 | //
10 | // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11 | // about supported directives.
12 | //
13 | //= require jquery
14 | //= require jquery_ujs
15 | //= require angular/angular
16 | //= require angular-route/angular-route
17 | //= require angular-resource/angular-resource
18 | //= require angular-flash-messages/angular-flash
19 | //= require angular-loading-bar/build/loading-bar
20 | //= require angular-translate/angular-translate
21 | //= require angular-bootstrap/ui-bootstrap-tpls
22 | //= require angular-rails-templates
23 | //= require bootstrap-sass-official/assets/javascripts/bootstrap
24 | //= require bootstrap-sass-official/assets/javascripts/bootstrap-sprockets
25 | //= require_tree ./templates
26 | //= require_tree .
27 | //
28 | //= require metis/core
29 | //= require metis/app
30 |
--------------------------------------------------------------------------------
/app/assets/javascripts/metisMenu.min.js:
--------------------------------------------------------------------------------
1 | /*
2 | * metismenu - v1.1.3
3 | * Easy menu jQuery plugin for Twitter Bootstrap 3
4 | * https://github.com/onokumus/metisMenu
5 | *
6 | * Made by Osman Nuri Okumus
7 | * Under MIT License
8 | */
9 | !function(a,b,c){function d(b,c){this.element=a(b),this.settings=a.extend({},f,c),this._defaults=f,this._name=e,this.init()}var e="metisMenu",f={toggle:!0,doubleTapToGo:!1};d.prototype={init:function(){var b=this.element,d=this.settings.toggle,f=this;this.isIE()<=9?(b.find("li.active").has("ul").children("ul").collapse("show"),b.find("li").not(".active").has("ul").children("ul").collapse("hide")):(b.find("li.active").has("ul").children("ul").addClass("collapse in"),b.find("li").not(".active").has("ul").children("ul").addClass("collapse")),f.settings.doubleTapToGo&&b.find("li.active").has("ul").children("a").addClass("doubleTapToGo"),b.find("li").has("ul").children("a").on("click."+e,function(b){return b.preventDefault(),f.settings.doubleTapToGo&&f.doubleTapToGo(a(this))&&"#"!==a(this).attr("href")&&""!==a(this).attr("href")?(b.stopPropagation(),void(c.location=a(this).attr("href"))):(a(this).parent("li").toggleClass("active").children("ul").collapse("toggle"),void(d&&a(this).parent("li").siblings().removeClass("active").children("ul.in").collapse("hide")))})},isIE:function(){for(var a,b=3,d=c.createElement("div"),e=d.getElementsByTagName("i");d.innerHTML="",e[0];)return b>4?b:a},doubleTapToGo:function(a){var b=this.element;return a.hasClass("doubleTapToGo")?(a.removeClass("doubleTapToGo"),!0):a.parent().children("ul").length?(b.find(".doubleTapToGo").removeClass("doubleTapToGo"),a.addClass("doubleTapToGo"),!1):void 0},remove:function(){this.element.off("."+e),this.element.removeData(e)}},a.fn[e]=function(b){return this.each(function(){var c=a(this);c.data(e)&&c.data(e).remove(),c.data(e,new d(this,b))}),this}}(jQuery,window,document);
--------------------------------------------------------------------------------
/app/assets/javascripts/templates/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/assets/javascripts/templates/.keep
--------------------------------------------------------------------------------
/app/assets/javascripts/templates/category/edit.html.erb:
--------------------------------------------------------------------------------
1 |
29 |
--------------------------------------------------------------------------------
/app/assets/javascripts/templates/index.html.erb:
--------------------------------------------------------------------------------
1 |
33 |
34 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/application.css.scss:
--------------------------------------------------------------------------------
1 | /*
2 | * This is a manifest file that'll be compiled into application.css, which will include all the files
3 | * listed below.
4 | *
5 | * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6 | * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
7 | *
8 | * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9 | * compiled file so the styles you add here take precedence over styles defined in any styles
10 | * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11 | * file per style scope.
12 | *
13 | *= require_tree .
14 | *= require_self
15 | */
16 |
17 | @import "bootstrap-sass-official/assets/stylesheets/bootstrap";
18 | @import "bootstrap-sass-official/assets/stylesheets/bootstrap-sprockets";
19 | @import "components-font-awesome/css/font-awesome";
20 | @import "angular-loading-bar/build/loading-bar";
21 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/home.scss:
--------------------------------------------------------------------------------
1 | // Place all the styles related to the home controller here.
2 | // They will automatically be included in application.css.
3 | // You can use Sass (SCSS) here: http://sass-lang.com/
4 | .outer .inner .main-content{
5 | margin-top:10px;
6 | }
7 | .breadcrumb > li.nav-path + li.nav-path::before {
8 | content: " > ";
9 | }
10 |
11 | .breadcrumb.path{
12 | margin-bottom: 5px;
13 | }
14 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/metis/theme.css:
--------------------------------------------------------------------------------
1 | /**
2 | * Metis - Bootstrap-Admin-Template v2.3.2
3 | * Author : onokumus
4 | * Copyright 2015
5 | * Licensed under MIT (https://github.com/onokumus/Bootstrap-Admin-Template/blob/master/LICENSE.md)
6 | */
7 |
8 | body.boxed {
9 | background: url("../img/pattern/arches.png") repeat;
10 | }
11 | #top > .navbar {
12 | border-top: 3px solid #428bca;
13 | }
14 | #top > .navbar .dropdown-menu > li > a:hover,
15 | #top > .navbar .dropdown-menu > li > a:focus {
16 | background-color: #428bca;
17 | color: #ffffff;
18 | }
19 | #menu {
20 | background-color: #428bca !important;
21 | }
22 | #menu > li > a {
23 | color: #ffffff;
24 | text-shadow: none !important;
25 | }
26 | .sidebar-left-mini #menu > li > a > .link-title {
27 | background-color: #3681c1 !important;
28 | }
29 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/metisMenu.min.css:
--------------------------------------------------------------------------------
1 | /*
2 | * metismenu - v1.1.3
3 | * Easy menu jQuery plugin for Twitter Bootstrap 3
4 | * https://github.com/onokumus/metisMenu
5 | *
6 | * Made by Osman Nuri Okumus
7 | * Under MIT License
8 | */
9 |
10 | .arrow{float:right;line-height:1.42857}.glyphicon.arrow:before{content:"\e079"}.active>a>.glyphicon.arrow:before{content:"\e114"}.fa.arrow:before{content:"\f104"}.active>a>.fa.arrow:before{content:"\f107"}.plus-times{float:right}.fa.plus-times:before{content:"\f067"}.active>a>.fa.plus-times{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.plus-minus{float:right}.fa.plus-minus:before{content:"\f067"}.active>a>.fa.plus-minus:before{content:"\f068"}
--------------------------------------------------------------------------------
/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | # Prevent CSRF attacks by raising an exception.
3 | # For APIs, you may want to use :null_session instead.
4 | protect_from_forgery with: :exception
5 |
6 | before_action :set_locale
7 |
8 | private
9 | def set_locale
10 | locale = parse_language
11 | if !locale || (locale && !I18n.load_path.include?("#{Rails.root}/config/locales/#{locale}.yml"))
12 | locale = I18n.default_locale
13 | end
14 | session[:locale] = locale
15 | I18n.locale = locale
16 | end
17 | def parse_language
18 | return params[:locale].downcase.gsub('_', '-') if params[:locale].present?
19 | return session[:locale] if session[:locale]
20 | lang = env["HTTP_ACCEPT_LANGUAGE"] || ""
21 | begin
22 | lang.to_s.gsub(/\s+/, '').split(',').map do |language|
23 | locale, quality = language.split(';q=')
24 | raise ArgumentError, 'Not correctly formatted' unless locale =~ /^[a-z\-0-9]+|\*$/i
25 | next if locale == '*' # Ignore wildcards
26 | locale.downcase!
27 | l.gsub!('_', '-')
28 | quality = quality ? quality.to_f : 1.0
29 | [locale, quality]
30 | end.sort do |(_, left), (_, right)|
31 | right <=> left
32 | end.map(&:first).compact
33 | rescue ArgumentError # Just rescue anything if the browser messed up badly.
34 | []
35 | end.first
36 | end
37 | end
38 |
--------------------------------------------------------------------------------
/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/app/controllers/home_controller.rb:
--------------------------------------------------------------------------------
1 | class HomeController < ApplicationController
2 | before_action :authenticate_user!
3 | def index
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/app/helpers/home_helper.rb:
--------------------------------------------------------------------------------
1 | module HomeHelper
2 | end
3 |
--------------------------------------------------------------------------------
/app/mailers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/mailers/.keep
--------------------------------------------------------------------------------
/app/models/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/models/.keep
--------------------------------------------------------------------------------
/app/models/ability.rb:
--------------------------------------------------------------------------------
1 | class Ability
2 | include CanCan::Ability
3 |
4 | def initialize(user)
5 | # Define abilities for the passed in user here. For example:
6 | #
7 | # user ||= User.new # guest user (not logged in)
8 | # if user.admin?
9 | # can :manage, :all
10 | # else
11 | # can :read, :all
12 | # end
13 | #
14 | # The first argument to `can` is the action you are giving the user
15 | # permission to do.
16 | # If you pass :manage it will apply to every action. Other common actions
17 | # here are :read, :create, :update and :destroy.
18 | #
19 | # The second argument is the resource the user can perform the action on.
20 | # If you pass :all it will apply to every resource. Otherwise pass a Ruby
21 | # class of the resource.
22 | #
23 | # The third argument is an optional hash of conditions to further filter the
24 | # objects.
25 | # For example, here the user can only update published articles.
26 | #
27 | # can :update, Article, :published => true
28 | #
29 | # See the wiki for details:
30 | # https://github.com/CanCanCommunity/cancancan/wiki/Defining-Abilities
31 | end
32 | end
33 |
--------------------------------------------------------------------------------
/app/models/bill.rb:
--------------------------------------------------------------------------------
1 | class Bill
2 | include Mongoid::Document
3 | include Mongoid::Timestamps
4 |
5 | field :type, type: Integer, default: 0
6 | field :amount, type: Float, default: 0
7 | field :title
8 | field :description
9 | field :date, type: Date, default: ->{ Date.today }
10 |
11 | belongs_to :category
12 |
13 | index({ date: 1 }, {})
14 |
15 | validates_inclusion_of :type, in: [0, 1]
16 |
17 | def type_name
18 | @type_name ||= I18n.t "category_type_#{type}"
19 | end
20 | end
21 |
--------------------------------------------------------------------------------
/app/models/category.rb:
--------------------------------------------------------------------------------
1 | class Category
2 | include Mongoid::Document
3 | include Mongoid::Timestamps
4 |
5 | field :name
6 | field :type, type: Integer, default: 0
7 | belongs_to :parent, class_name: "Category", foreign_key: "parent_id"
8 | has_many :children, class_name: "Category", foreign_key: "parent_id"
9 |
10 | module TYPE
11 | INCOME = 0
12 | EXPENSE = 1
13 | end
14 |
15 | index({ name: 1 }, {})
16 |
17 | validates :name, presence: true
18 | validates_inclusion_of :type, in: [0, 1]
19 |
20 | def type_name
21 | @type_name ||= I18n.t "category_type_#{type}"
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/models/concerns/.keep
--------------------------------------------------------------------------------
/app/models/user.rb:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | #-*- coding:utf-8 -*-
3 |
4 | class User
5 | include Mongoid::Document
6 | include Mongoid::Timestamps
7 | # Include default devise modules. Others available are:
8 | # :confirmable, :lockable, :timeoutable and :omniauthable
9 | devise :database_authenticatable, :registerable,
10 | :recoverable, :rememberable, :trackable, :validatable
11 |
12 | ## Database authenticatable
13 | field :email
14 | field :encrypted_password, type: String, default: ""
15 |
16 | ## Recoverable
17 | field :reset_password_token, type: String
18 | field :reset_password_sent_at, type: Time
19 |
20 | ## Rememberable
21 | field :remember_created_at, type: Time
22 |
23 | ## Trackable
24 | field :sign_in_count, type: Integer, default: 0
25 | field :current_sign_in_at, type: Time
26 | field :last_sign_in_at, type: Time
27 | field :current_sign_in_ip, type: String
28 | field :last_sign_in_ip, type: String
29 |
30 | ## Confirmable
31 | # field :confirmation_token, type: String
32 | # field :confirmed_at, type: Time
33 | # field :confirmation_sent_at, type: Time
34 | # field :unconfirmed_email, type: String # Only if using reconfirmable
35 |
36 | ## Lockable
37 | # field :failed_attempts, type: Integer, default: 0 # Only if lock strategy is :failed_attempts
38 | # field :unlock_token, type: String # Only if unlock strategy is :email or :both
39 | # field :locked_at, type: Time
40 | include Mongoid::Timestamps
41 |
42 | field :username
43 | field :is_admin, type: Boolean, default: false
44 |
45 | index({ username: 1 }, { unique: true, name: "username_index" })
46 | end
47 |
--------------------------------------------------------------------------------
/app/views/api/bill/bill.jbuilder:
--------------------------------------------------------------------------------
1 | b = @bill
2 | json.id b.id.to_s
3 | json.type b.type
4 | json.type_name b.type_name
5 | json.amount b.amount
6 | json.title b.title
7 | json.description b.description
8 | json.date b.date
9 | if b.category
10 | json.category do
11 | json.id b.category.id.to_s
12 | json.name b.category.name
13 | json.type b.category.type
14 | json.type_name b.category.type_name
15 | end
16 | end
17 |
--------------------------------------------------------------------------------
/app/views/api/bill/index.jbuilder:
--------------------------------------------------------------------------------
1 | json.total_pages @bills.total_pages
2 | json.total_count @bills.total_count
3 | json.current_page @bills.current_page
4 | json.data do
5 | json.array! @bills do |b|
6 | json.id b.id.to_s
7 | json.type b.type
8 | json.type_name b.type_name
9 | json.amount b.amount
10 | json.title b.title
11 | json.description b.description
12 | json.date b.date
13 | if b.category
14 | json.category do
15 | json.id b.category.id.to_s
16 | json.name b.category.name
17 | json.type b.category.type
18 | json.type_name b.category.type_name
19 | end
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/app/views/api/category/all.jbuilder:
--------------------------------------------------------------------------------
1 | json.array! @categories do |c|
2 | json.id c.id.to_s
3 | json.name c.name
4 | json.type c.type
5 | json.type_name c.type_name
6 | if c.parent
7 | json.parent do
8 | json.id c.parent.id.to_s
9 | json.name c.parent.name
10 | json.type c.parent.type
11 | json.type_name c.parent.type_name
12 | end
13 | end
14 | end
15 |
--------------------------------------------------------------------------------
/app/views/api/category/category.jbuilder:
--------------------------------------------------------------------------------
1 | c = @category
2 | json.id c.id.to_s
3 | json.name c.name
4 | json.type c.type
5 | json.type_name c.type_name
6 | if c.parent
7 | json.parent do
8 | json.id c.parent.id.to_s
9 | json.name c.parent.name
10 | json.type c.parent.type
11 | json.type_name c.parent.type_name
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/app/views/api/category/index.jbuilder:
--------------------------------------------------------------------------------
1 | json.total_pages @categories.total_pages
2 | json.total_count @categories.total_count
3 | json.current_page @categories.current_page
4 | json.data do
5 | json.array! @categories do |c|
6 | json.id c.id.to_s
7 | json.name c.name
8 | json.type c.type
9 | json.type_name c.type_name
10 | if c.parent
11 | json.parent do
12 | json.id c.parent.id.to_s
13 | json.name c.parent.name
14 | json.type c.parent.type
15 | json.type_name c.parent.type_name
16 | end
17 | end
18 | end
19 | end
20 |
--------------------------------------------------------------------------------
/app/views/devise/sessions/new.html.slim:
--------------------------------------------------------------------------------
1 | - @title = "Login"
2 |
3 | .form-signin
4 | .text-center
5 | img[src="/assets/img/logo.png" alt="Metis Logo"]
6 | hr
7 | .tab-content
8 | #login.tab-pane.active
9 | = form_for(resource, as: resource_name, url: session_path(resource_name)) do |f|
10 | p.text-muted.text-center
11 | | Enter your email and password
12 | = f.email_field :email, :class => "form-control top", :placeholder => "Email"
13 | = f.password_field :password, :class => "form-control bottom", :placeholder => "Password"
14 | - if devise_mapping.rememberable?
15 | .checkbox
16 | label
17 | = f.check_box :remember_me
18 | | Remember Me
19 | button.btn.btn-lg.btn-primary.btn-block[type="submit"]
20 | | Sign in
21 |
--------------------------------------------------------------------------------
/app/views/home/index.html.erb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/app/views/home/index.html.erb
--------------------------------------------------------------------------------
/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <%= @title || "Billing" %>
5 | <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
6 | <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
7 | <%= csrf_meta_tags %>
8 |
9 |
10 |
11 | <%= yield %>
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/app/views/layouts/devise.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <%= @title || "Billing" %>
5 |
6 |
7 |
8 | <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
9 | <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
10 | <%= csrf_meta_tags %>
11 |
12 |
13 |
14 | <%= yield %>
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/bin/bundle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3 | load Gem.bin_path('bundler', 'bundle')
4 |
--------------------------------------------------------------------------------
/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | begin
3 | load File.expand_path("../spring", __FILE__)
4 | rescue LoadError
5 | end
6 | APP_PATH = File.expand_path('../../config/application', __FILE__)
7 | require_relative '../config/boot'
8 | require 'rails/commands'
9 |
--------------------------------------------------------------------------------
/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | begin
3 | load File.expand_path("../spring", __FILE__)
4 | rescue LoadError
5 | end
6 | require_relative '../config/boot'
7 | require 'rake'
8 | Rake.application.run
9 |
--------------------------------------------------------------------------------
/bin/setup:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require 'pathname'
3 |
4 | # path to your application root.
5 | APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
6 |
7 | Dir.chdir APP_ROOT do
8 | # This script is a starting point to setup your application.
9 | # Add necessary setup steps to this file:
10 |
11 | puts "== Installing dependencies =="
12 | system "gem install bundler --conservative"
13 | system "bundle check || bundle install"
14 |
15 | # puts "\n== Copying sample files =="
16 | # unless File.exist?("config/database.yml")
17 | # system "cp config/database.yml.sample config/database.yml"
18 | # end
19 |
20 | puts "\n== Preparing database =="
21 | system "bin/rake db:setup"
22 |
23 | puts "\n== Removing old logs and tempfiles =="
24 | system "rm -f log/*"
25 | system "rm -rf tmp/cache"
26 |
27 | puts "\n== Restarting application server =="
28 | system "touch tmp/restart.txt"
29 | end
30 |
--------------------------------------------------------------------------------
/bin/spring:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 |
3 | # This file loads spring without using Bundler, in order to be fast.
4 | # It gets overwritten when you run the `spring binstub` command.
5 |
6 | unless defined?(Spring)
7 | require "rubygems"
8 | require "bundler"
9 |
10 | if match = Bundler.default_lockfile.read.match(/^GEM$.*?^ (?: )*spring \((.*?)\)$.*?^$/m)
11 | Gem.paths = { "GEM_PATH" => [Bundler.bundle_path.to_s, *Gem.path].uniq }
12 | gem "spring", match[1]
13 | require "spring/binstub"
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/bin/unicorn.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BASE_DIR="$(dirname "$(dirname "${BASH_SOURCE[0]}")")"
4 | if [[ -e "${BASE_DIR}/tmp/pids/unicorn.pid" ]]; then
5 | echo restarting....
6 | kill `cat "${BASE_DIR}/tmp/pids/unicorn.pid"`
7 | sleep 5
8 | fi
9 | bundle exec unicorn_rails -c "${BASE_DIR}/config/unicorn.rb" -D -E production
10 |
--------------------------------------------------------------------------------
/bin/unicorn_stop.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BASE_DIR="$(dirname "$(dirname "${BASH_SOURCE[0]}")")"
4 | echo stoping....
5 | if [[ -e "${BASE_DIR}/tmp/pids/unicorn.pid" ]]; then
6 | kill `cat "${BASE_DIR}/tmp/pids/unicorn.pid"`
7 | fi
8 |
--------------------------------------------------------------------------------
/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require ::File.expand_path('../config/environment', __FILE__)
4 | run Rails.application
5 |
--------------------------------------------------------------------------------
/config/application.rb:
--------------------------------------------------------------------------------
1 | require File.expand_path('../boot', __FILE__)
2 |
3 | require 'rails/all'
4 |
5 | # Require the gems listed in Gemfile, including any gems
6 | # you've limited to :test, :development, or :production.
7 | Bundler.require(*Rails.groups)
8 |
9 | module Biliing
10 | class Application < Rails::Application
11 | # Settings in config/environments/* take precedence over those specified here.
12 | # Application configuration should go into files in config/initializers
13 | # -- all .rb files in that directory are automatically loaded.
14 |
15 | # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
16 | # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
17 | # config.time_zone = 'Central Time (US & Canada)'
18 |
19 | # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
20 | # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
21 | # config.i18n.default_locale = :en
22 | config.i18n.enforce_available_locales = false
23 |
24 | # Do not swallow errors in after_commit/after_rollback callbacks.
25 | config.active_record.raise_in_transactional_callbacks = true
26 |
27 | config.paths.add File.join('app', 'api'), glob: File.join('**', '*.rb')
28 | config.autoload_paths += Dir[Rails.root.join('app', 'api', '*')]
29 |
30 | # Grape jbuilder
31 | config.middleware.use(Rack::Config) do |env|
32 | env['api.tilt.root'] = Rails.root.join 'app', 'views', 'api'
33 | end
34 | end
35 | end
36 |
--------------------------------------------------------------------------------
/config/boot.rb:
--------------------------------------------------------------------------------
1 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
2 |
3 | require 'bundler/setup' # Set up gems listed in the Gemfile.
4 |
--------------------------------------------------------------------------------
/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite version 3.x
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: 5
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require File.expand_path('../application', __FILE__)
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/config/environments/development.rb:
--------------------------------------------------------------------------------
1 | Rails.application.configure do
2 | # Settings specified here will take precedence over those in config/application.rb.
3 |
4 | # In the development environment your application's code is reloaded on
5 | # every request. This slows down response time but is perfect for development
6 | # since you don't have to restart the web server when you make code changes.
7 | config.cache_classes = false
8 |
9 | # Do not eager load code on boot.
10 | config.eager_load = false
11 |
12 | # Show full error reports and disable caching.
13 | config.consider_all_requests_local = true
14 | config.action_controller.perform_caching = false
15 |
16 | # Don't care if the mailer can't send.
17 | config.action_mailer.raise_delivery_errors = false
18 |
19 | # Print deprecation notices to the Rails logger.
20 | config.active_support.deprecation = :log
21 |
22 | # Raise an error on page load if there are pending migrations.
23 | config.active_record.migration_error = :page_load
24 |
25 | # Debug mode disables concatenation and preprocessing of assets.
26 | # This option may cause significant delays in view rendering with a large
27 | # number of complex assets.
28 | config.assets.debug = true
29 |
30 | # Asset digests allow you to set far-future HTTP expiration dates on all assets,
31 | # yet still be able to expire them through the digest params.
32 | config.assets.digest = true
33 |
34 | # Adds additional error checking when serving assets at runtime.
35 | # Checks for improperly declared sprockets dependencies.
36 | # Raises helpful error messages.
37 | config.assets.raise_runtime_errors = true
38 |
39 | # Raises error for missing translations
40 | # config.action_view.raise_on_missing_translations = true
41 | end
42 |
--------------------------------------------------------------------------------
/config/environments/test.rb:
--------------------------------------------------------------------------------
1 | Rails.application.configure do
2 | # Settings specified here will take precedence over those in config/application.rb.
3 |
4 | # The test environment is used exclusively to run your application's
5 | # test suite. You never need to work with it otherwise. Remember that
6 | # your test database is "scratch space" for the test suite and is wiped
7 | # and recreated between test runs. Don't rely on the data there!
8 | config.cache_classes = true
9 |
10 | # Do not eager load code on boot. This avoids loading your whole application
11 | # just for the purpose of running a single test. If you are using a tool that
12 | # preloads Rails for running tests, you may have to set it to true.
13 | config.eager_load = false
14 |
15 | # Configure static file server for tests with Cache-Control for performance.
16 | config.serve_static_files = true
17 | config.static_cache_control = 'public, max-age=3600'
18 |
19 | # Show full error reports and disable caching.
20 | config.consider_all_requests_local = true
21 | config.action_controller.perform_caching = false
22 |
23 | # Raise exceptions instead of rendering exception templates.
24 | config.action_dispatch.show_exceptions = false
25 |
26 | # Disable request forgery protection in test environment.
27 | config.action_controller.allow_forgery_protection = false
28 |
29 | # Tell Action Mailer not to deliver emails to the real world.
30 | # The :test delivery method accumulates sent emails in the
31 | # ActionMailer::Base.deliveries array.
32 | config.action_mailer.delivery_method = :test
33 |
34 | # Randomize the order test cases are executed.
35 | config.active_support.test_order = :random
36 |
37 | # Print deprecation notices to the stderr.
38 | config.active_support.deprecation = :stderr
39 |
40 | # Raises error for missing translations
41 | # config.action_view.raise_on_missing_translations = true
42 | end
43 |
--------------------------------------------------------------------------------
/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 |
9 | # Precompile additional assets.
10 | # application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
11 | # Rails.application.config.assets.precompile += %w( search.js )
12 |
13 | Rails.application.config.assets.paths << Rails.root.join("vendor","assets","bower_components")
14 | Rails.application.config.assets.paths << Rails.root.join("vendor","assets","bower_components","bootstrap-sass-official","assets")
15 | Rails.application.config.assets.paths << Rails.root.join("vendor","assets","bower_components","components-font-awesome")
16 | #Rails.application.config.assets.precompile << %r(.*.(?:eot|svg|ttf|woff|woff2)$)
17 |
--------------------------------------------------------------------------------
/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/config/initializers/bower_rails.rb:
--------------------------------------------------------------------------------
1 | BowerRails.configure do |bower_rails|
2 | # Tell bower-rails what path should be considered as root. Defaults to Dir.pwd
3 | # bower_rails.root_path = Dir.pwd
4 |
5 | # Invokes rake bower:install before precompilation. Defaults to false
6 | # bower_rails.install_before_precompile = true
7 |
8 | # Invokes rake bower:resolve before precompilation. Defaults to false
9 | # bower_rails.resolve_before_precompile = true
10 |
11 | # Invokes rake bower:clean before precompilation. Defaults to false
12 | # bower_rails.clean_before_precompile = true
13 |
14 | # Invokes rake bower:install:deployment instead rake bower:install. Defaults to false
15 | # bower_rails.use_bower_install_deployment = true
16 | end
17 |
--------------------------------------------------------------------------------
/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | Rails.application.config.action_dispatch.cookies_serializer = :json
4 |
--------------------------------------------------------------------------------
/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/config/initializers/session_store.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | Rails.application.config.session_store :cookie_store, key: '_biliing_session'
4 |
--------------------------------------------------------------------------------
/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json] if respond_to?(:wrap_parameters)
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/config/locales/en.yml:
--------------------------------------------------------------------------------
1 | # Files in the config/locales directory are used for internationalization
2 | # and are automatically loaded by Rails. If you want to use locales other
3 | # than English, add the necessary files in this directory.
4 | #
5 | # To use the locales, use `I18n.t`:
6 | #
7 | # I18n.t 'hello'
8 | #
9 | # In views, this is aliased to just `t`:
10 | #
11 | # <%= t('hello') %>
12 | #
13 | # To use a different locale, set it with `I18n.locale`:
14 | #
15 | # I18n.locale = :es
16 | #
17 | # This would use the information in config/locales/es.yml.
18 | #
19 | # To learn more, please read the Rails Internationalization guide
20 | # available at http://guides.rubyonrails.org/i18n.html.
21 |
22 | en:
23 | menu: "Menu"
24 | dashboard: "Dashboard"
25 | category: "Category"
26 | category_list: "Category List"
27 | category_new: "New Category"
28 | category_edit: "Edit Category"
29 | category_type_0: "Income"
30 | category_type_1: "Expense"
31 | bill: "Bill"
32 | bill_billing: "Billing"
33 | bill_new: "New Billing"
34 | bill_edit: "Edit Billing"
35 | bill_chart: "Chart"
36 | edit: "Edit"
37 | delete: "Delete"
38 |
39 | mongoid:
40 | errors:
41 | messages:
42 |
--------------------------------------------------------------------------------
/config/locales/zh-cn.yml:
--------------------------------------------------------------------------------
1 | zh-cn:
2 | menu: "菜单"
3 | dashboard: "控制面板"
4 | category: "分类"
5 | category_list: "分类列表"
6 | category_new: "新建分类"
7 | category_edit: "编辑分类"
8 | category_type_0: "收入"
9 | category_type_1: "支出"
10 | bill: "帐单"
11 | bill_billing: "帐目"
12 | bill_new: "记帐"
13 | bill_edit: "编辑帐目"
14 | bill_chart: "图表"
15 | edit: "编辑"
16 | delete: "删除"
17 |
18 | mongoid:
19 | errors:
20 | messages:
21 |
--------------------------------------------------------------------------------
/config/routes.rb:
--------------------------------------------------------------------------------
1 | Rails.application.routes.draw do
2 | devise_for :users, path: "users", path_names: { sign_in: 'login', sign_out: 'logout' }
3 | # The priority is based upon order of creation: first created -> highest priority.
4 | # See how all your routes lay out with "rake routes".
5 |
6 | # You can have the root of your site routed with "root"
7 | root 'home#index'
8 |
9 | mount Billing::API => '/api'
10 | # Example of regular route:
11 | # get 'products/:id' => 'catalog#view'
12 |
13 | # Example of named route that can be invoked with purchase_url(id: product.id)
14 | # get 'products/:id/purchase' => 'catalog#purchase', as: :purchase
15 |
16 | # Example resource route (maps HTTP verbs to controller actions automatically):
17 | # resources :products
18 |
19 | # Example resource route with options:
20 | # resources :products do
21 | # member do
22 | # get 'short'
23 | # post 'toggle'
24 | # end
25 | #
26 | # collection do
27 | # get 'sold'
28 | # end
29 | # end
30 |
31 | # Example resource route with sub-resources:
32 | # resources :products do
33 | # resources :comments, :sales
34 | # resource :seller
35 | # end
36 |
37 | # Example resource route with more complex sub-resources:
38 | # resources :products do
39 | # resources :comments
40 | # resources :sales do
41 | # get 'recent', on: :collection
42 | # end
43 | # end
44 |
45 | # Example resource route with concerns:
46 | # concern :toggleable do
47 | # post 'toggle'
48 | # end
49 | # resources :posts, concerns: :toggleable
50 | # resources :photos, concerns: :toggleable
51 |
52 | # Example resource route within a namespace:
53 | # namespace :admin do
54 | # # Directs /admin/products/* to Admin::ProductsController
55 | # # (app/controllers/admin/products_controller.rb)
56 | # resources :products
57 | # end
58 | end
59 |
--------------------------------------------------------------------------------
/config/secrets.yml:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Your secret key is used for verifying the integrity of signed cookies.
4 | # If you change this key, all old signed cookies will become invalid!
5 |
6 | # Make sure the secret is at least 30 characters and all random,
7 | # no regular words or you'll be exposed to dictionary attacks.
8 | # You can use `rake secret` to generate a secure secret key.
9 |
10 | # Make sure the secrets in this file are kept private
11 | # if you're sharing your code publicly.
12 |
13 | development:
14 | secret_key_base: 2cd499bbbcbd31b879b254f4f3b10ee4c11df19d677a6c6eaecfc7476bfa1e5182bf96623413ed8e3c18a968957e8fda36fad0d20189867bf941570055a9771b
15 |
16 | test:
17 | secret_key_base: eea998c633957c66caff17beda5958f649e86333784f5cdeec2b62b9865bda3c34426d37b3a2f81f7f78d73a16292488415e76b9b6101578b93eae1b5d03ce7b
18 |
19 | # Do not keep production secrets in the repository,
20 | # instead read values from the environment.
21 | production:
22 | secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
23 |
--------------------------------------------------------------------------------
/doc/001.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/doc/001.jpg
--------------------------------------------------------------------------------
/doc/002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/doc/002.jpg
--------------------------------------------------------------------------------
/doc/003.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/doc/003.jpg
--------------------------------------------------------------------------------
/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/lib/assets/.keep
--------------------------------------------------------------------------------
/lib/tasks/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/lib/tasks/.keep
--------------------------------------------------------------------------------
/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/log/.keep
--------------------------------------------------------------------------------
/public/404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | The page you were looking for doesn't exist (404)
5 |
6 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
The page you were looking for doesn't exist.
62 |
You may have mistyped the address or the page may have moved.
63 |
64 |
If you are the application owner check the logs for more information.
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/public/422.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | The change you wanted was rejected (422)
5 |
6 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
The change you wanted was rejected.
62 |
Maybe you tried to change something you didn't have access to.
63 |
64 |
If you are the application owner check the logs for more information.
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/public/500.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | We're sorry, but something went wrong (500)
5 |
6 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
We're sorry, but something went wrong.
62 |
63 |
If you are the application owner check the logs for more information.
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/public/assets/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/public/assets/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/public/assets/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/public/assets/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/public/assets/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/public/assets/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/public/assets/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/public/assets/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/public/assets/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/public/assets/img/cp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/cp.png
--------------------------------------------------------------------------------
/public/assets/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/logo.png
--------------------------------------------------------------------------------
/public/assets/img/metis-tile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/metis-tile.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/README.md:
--------------------------------------------------------------------------------
1 | SubtlePatterns
2 | ===============
3 |
4 | All the patterns from www.subtlepatterns.com - including the famous Photoshop .pat file
5 |
6 | If you need Base64 versions of the patterns you can use this generator:
7 | http://www.greywyvern.com/code/php/binary2base64
8 |
9 |
10 | Subtle Patterns is created and curated by Atle Mo.
11 | The original author of the patterns are credited on subtlepatterns.com
12 |
13 | Subtle Patterns by Subtle Patterns is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
14 | Based on work at subtlepatterns.com.
15 | Permissions beyond the scope of this license may be available upon contact.
16 | A project by Atle Mo.
17 |
18 | Subtle Patterns and www.subtlepatterns.com © 2013 Atle Mo.
19 |
20 | ===============
21 |
22 | ENJOY!
23 |
--------------------------------------------------------------------------------
/public/assets/img/pattern/always_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/always_grey.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/arches.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/arches.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/batthern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/batthern.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/bo_play_pattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/bo_play_pattern.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/brillant.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/brillant.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/carbon_fibre.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/carbon_fibre.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/cartographer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/cartographer.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/crissXcross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/crissXcross.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/diagonal_striped_brick.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/diagonal_striped_brick.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/diamond_upholstery.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/diamond_upholstery.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/egg_shell.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/egg_shell.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/gplaypattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/gplaypattern.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/greyfloral.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/greyfloral.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/irongrip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/irongrip.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/large_leather.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/large_leather.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/low_contrast_linen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/low_contrast_linen.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/noisy_grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/noisy_grid.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/pool_table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/pool_table.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/purty_wood.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/purty_wood.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/random_grey_variations.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/random_grey_variations.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/retina_wood.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/retina_wood.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/rip_jobs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/rip_jobs.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/white_tiles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/white_tiles.png
--------------------------------------------------------------------------------
/public/assets/img/pattern/wood_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/pattern/wood_1.png
--------------------------------------------------------------------------------
/public/assets/img/user.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/assets/img/user.gif
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/public/favicon.ico
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # See http://www.robotstxt.org/robotstxt.html for documentation on how to use the robots.txt file
2 | #
3 | # To ban all spiders from the entire site uncomment the next two lines:
4 | # User-agent: *
5 | # Disallow: /
6 |
--------------------------------------------------------------------------------
/spec/controllers/home_controller_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | RSpec.describe HomeController, type: :controller do
4 |
5 | describe "GET #index" do
6 | it "returns http success" do
7 | get :index
8 | expect(response).to have_http_status(:success)
9 | end
10 | end
11 |
12 | end
13 |
--------------------------------------------------------------------------------
/spec/factories/bills.rb:
--------------------------------------------------------------------------------
1 | FactoryGirl.define do
2 | factory :bill do
3 |
4 | end
5 |
6 | end
7 |
--------------------------------------------------------------------------------
/spec/factories/categories.rb:
--------------------------------------------------------------------------------
1 | FactoryGirl.define do
2 | factory :category do
3 |
4 | end
5 |
6 | end
7 |
--------------------------------------------------------------------------------
/spec/factories/users.rb:
--------------------------------------------------------------------------------
1 | FactoryGirl.define do
2 | factory :user do
3 |
4 | end
5 |
6 | end
7 |
--------------------------------------------------------------------------------
/spec/helpers/home_helper_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | # Specs in this file have access to a helper object that includes
4 | # the HomeHelper. For example:
5 | #
6 | # describe HomeHelper do
7 | # describe "string concat" do
8 | # it "concats two strings with spaces" do
9 | # expect(helper.concat_strings("this","that")).to eq("this that")
10 | # end
11 | # end
12 | # end
13 | RSpec.describe HomeHelper, type: :helper do
14 | pending "add some examples to (or delete) #{__FILE__}"
15 | end
16 |
--------------------------------------------------------------------------------
/spec/models/bill_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | RSpec.describe Bill, type: :model do
4 | pending "add some examples to (or delete) #{__FILE__}"
5 | end
6 |
--------------------------------------------------------------------------------
/spec/models/category_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | RSpec.describe Category, type: :model do
4 | pending "add some examples to (or delete) #{__FILE__}"
5 | end
6 |
--------------------------------------------------------------------------------
/spec/models/user_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | RSpec.describe User, type: :model do
4 | pending "add some examples to (or delete) #{__FILE__}"
5 | end
6 |
--------------------------------------------------------------------------------
/spec/views/home/index.html.erb_spec.rb:
--------------------------------------------------------------------------------
1 | require 'rails_helper'
2 |
3 | RSpec.describe "home/index.html.erb", type: :view do
4 | pending "add some examples to (or delete) #{__FILE__}"
5 | end
6 |
--------------------------------------------------------------------------------
/test/controllers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/controllers/.keep
--------------------------------------------------------------------------------
/test/fixtures/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/fixtures/.keep
--------------------------------------------------------------------------------
/test/helpers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/helpers/.keep
--------------------------------------------------------------------------------
/test/integration/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/integration/.keep
--------------------------------------------------------------------------------
/test/mailers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/mailers/.keep
--------------------------------------------------------------------------------
/test/models/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/test/models/.keep
--------------------------------------------------------------------------------
/test/test_helper.rb:
--------------------------------------------------------------------------------
1 | ENV['RAILS_ENV'] ||= 'test'
2 | require File.expand_path('../../config/environment', __FILE__)
3 | require 'rails/test_help'
4 |
5 | class ActiveSupport::TestCase
6 | # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
7 | fixtures :all
8 |
9 | # Add more helper methods to be used by all tests here...
10 | end
11 |
--------------------------------------------------------------------------------
/vendor/assets/.bowerrc:
--------------------------------------------------------------------------------
1 | {
2 | "directory": "bower_components"
3 | }
--------------------------------------------------------------------------------
/vendor/assets/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dsl-generated dependencies",
3 | "dependencies": {
4 | "angular-route": "latest",
5 | "angular-resource": "latest",
6 | "angular-mocks": "latest",
7 | "angular-flash": "latest",
8 | "angular-loading-bar": "latest",
9 | "angular-flash-messages": "latest",
10 | "angular-translate": "latest",
11 | "angular-bootstrap": "latest",
12 | "bootstrap-sass-official": "latest",
13 | "components-font-awesome": "latest"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-bootstrap/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": {
3 | "name": "https://github.com/angular-ui/bootstrap/graphs/contributors"
4 | },
5 | "name": "angular-bootstrap",
6 | "keywords": [
7 | "angular",
8 | "angular-ui",
9 | "bootstrap"
10 | ],
11 | "license": "MIT",
12 | "ignore": [],
13 | "description": "Native AngularJS (Angular) directives for Bootstrap.",
14 | "version": "0.13.0",
15 | "main": [
16 | "./ui-bootstrap-tpls.js"
17 | ],
18 | "dependencies": {
19 | "angular": ">=1.3.0"
20 | },
21 | "homepage": "https://github.com/angular-ui/bootstrap-bower",
22 | "_release": "0.13.0",
23 | "_resolution": {
24 | "type": "version",
25 | "tag": "0.13.0",
26 | "commit": "a75d899addcafb73344b724bec647620adeebc9a"
27 | },
28 | "_source": "git://github.com/angular-ui/bootstrap-bower.git",
29 | "_target": "*",
30 | "_originalSource": "angular-bootstrap"
31 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-bootstrap/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": {
3 | "name": "https://github.com/angular-ui/bootstrap/graphs/contributors"
4 | },
5 | "name": "angular-bootstrap",
6 | "keywords": [
7 | "angular",
8 | "angular-ui",
9 | "bootstrap"
10 | ],
11 | "license": "MIT",
12 | "ignore": [],
13 | "description": "Native AngularJS (Angular) directives for Bootstrap.",
14 | "version": "0.13.0",
15 | "main": ["./ui-bootstrap-tpls.js"],
16 | "dependencies": {
17 | "angular": ">=1.3.0"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-bootstrap/ui-bootstrap-csp.css:
--------------------------------------------------------------------------------
1 | /* Include this file in your html if you are using the CSP mode. */
2 |
3 | .ng-animate.item:not(.left):not(.right) {
4 | -webkit-transition: 0s ease-in-out left;
5 | transition: 0s ease-in-out left
6 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash-messages/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-flash",
3 | "version": "1.2.0",
4 | "description": "Angular.js Flash Messages",
5 | "keywords": [
6 | "angular",
7 | "js",
8 | "flash",
9 | "messages"
10 | ],
11 | "author": "Guilherme J. Tramontina ",
12 | "readmeFilename": "README.md",
13 | "dependencies": {
14 | "angular": "~1",
15 | "angular-mocks": "~1",
16 | "angular-route": "~1"
17 | },
18 | "ignore": [
19 | "**/.*",
20 | "node_modules",
21 | "test"
22 | ],
23 | "homepage": "https://github.com/gtramontina/angular-flash",
24 | "_release": "1.2.0",
25 | "_resolution": {
26 | "type": "version",
27 | "tag": "v1.2.0",
28 | "commit": "b3049a169dc7eba2d94f5bc30d39ebca088243c5"
29 | },
30 | "_source": "git://github.com/gtramontina/angular-flash.git",
31 | "_target": "*",
32 | "_originalSource": "angular-flash-messages"
33 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash-messages/Makefile:
--------------------------------------------------------------------------------
1 | KARMA = ./node_modules/karma/bin/karma start test/karma.conf.js --browsers Firefox --single-run
2 |
3 | install:; @npm install
4 |
5 | test: test.dev test.min
6 | test.dev:; @${KARMA}
7 | test.min:; @MINIFY=true ${KARMA}
8 |
9 | .PHONY: install test test.dev test.min
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash-messages/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "angular-flash",
3 | "version" : "1.2.0",
4 | "description" : "Angular.js Flash Messages",
5 | "keywords" : [ "angular", "js", "flash", "messages" ],
6 | "author" : "Guilherme J. Tramontina ",
7 | "readmeFilename" : "README.md",
8 | "dependencies" : {
9 | "angular" : "~1",
10 | "angular-mocks": "~1",
11 | "angular-route": "~1"
12 | },
13 | "ignore" : [ "**/.*", "node_modules", "test" ]
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash-messages/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "angular-flash",
3 | "version" : "1.2.0",
4 | "main" : "angular-flash.js",
5 | "description" : "Angular.js Flash Messages",
6 | "repository" : {
7 | "type" : "git",
8 | "url" : "https://github.com/gtramontina/angular-flash.git"
9 | },
10 | "scripts" : {
11 | "postinstall" : "bower install",
12 | "test" : "make test"
13 | },
14 | "keywords" : [ "angular", "js", "flash", "messages" ],
15 | "author" : "Guilherme J. Tramontina ",
16 | "readmeFilename" : "README.md",
17 | "devDependencies" : {
18 | "connect" : "^2.27.4",
19 | "connect-route" : "^0.1.4",
20 | "uglify-js" : "^2.4.15",
21 | "bower" : "^1.3.12",
22 | "karma" : "^0.12.28",
23 | "karma-mocha" : "^0.1.9",
24 | "karma-ng-scenario" : "^0.1.0",
25 | "karma-firefox-launcher" : "*"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-flash",
3 | "description": "Flash messages for Angular Js",
4 | "version": "0.1.14",
5 | "main": [
6 | "dist/angular-flash.js"
7 | ],
8 | "ignore": [
9 | "app",
10 | "bower_components",
11 | "test",
12 | ".jshintrc",
13 | "src/.jshintrc",
14 | ".travis.yml",
15 | "karma.conf.js",
16 | "Gruntfile.js"
17 | ],
18 | "dependencies": {
19 | "angular": "1.0 - 1.3"
20 | },
21 | "devDependencies": {
22 | "jquery": "~2.0.0",
23 | "angular-mocks": "1.3.2",
24 | "angular-scenario": "1.3.2",
25 | "angular-route": "1.3.2",
26 | "json3": "~3.2.4",
27 | "es5-shim": "~2.0.8",
28 | "bootstrap": "~2.3.2",
29 | "font-awesome": "~3.2.1"
30 | },
31 | "homepage": "https://github.com/wmluke/angular-flash",
32 | "_release": "0.1.14",
33 | "_resolution": {
34 | "type": "version",
35 | "tag": "0.1.14",
36 | "commit": "10f6d2fcd6c30605521d47276473e734d0b6a39c"
37 | },
38 | "_source": "git://github.com/wmluke/angular-flash.git",
39 | "_target": "*",
40 | "_originalSource": "angular-flash"
41 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/.bowerrc:
--------------------------------------------------------------------------------
1 | {
2 | "directory": "bower_components"
3 | }
4 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig helps developers define and maintain consistent
2 | # coding styles between different editors and IDEs
3 | # editorconfig.org
4 |
5 | root = true
6 |
7 |
8 | [*]
9 |
10 | # Change these settings to your own preference
11 | indent_style = space
12 | indent_size = 4
13 |
14 | # We recommend you to keep these unchanged
15 | end_of_line = lf
16 | charset = utf-8
17 | trim_trailing_whitespace = true
18 | insert_final_newline = true
19 |
20 | [*.md]
21 | trim_trailing_whitespace = false
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/.gitattributes:
--------------------------------------------------------------------------------
1 | # Set default behaviour, in case users don't have core.autocrlf set.
2 | * text=auto
3 |
4 | # Explicitly declare text files we want to always be normalized and converted
5 | # to native line endings on checkout.
6 | *.js text
7 | *.html text
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | node_modules
3 | bower_components
4 | libpeerconnection.log
5 | reports
6 |
7 | *.swp
8 | *.swo
9 |
10 | npm-debug.log
11 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License
2 |
3 | Copyright (c) 2013 William L. Bunselmeyer. https://github.com/wmluke/angular-blocks
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/Makefile:
--------------------------------------------------------------------------------
1 |
2 | install:
3 | npm install # Install node modules
4 | bower install # Install bower components
5 | grunt install # Build & test client app
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-flash",
3 | "description": "Flash messages for Angular Js",
4 | "version": "0.1.14",
5 | "main": [
6 | "dist/angular-flash.js"
7 | ],
8 | "ignore": [
9 | "app",
10 | "bower_components",
11 | "test",
12 | ".jshintrc",
13 | "src/.jshintrc",
14 | ".travis.yml",
15 | "karma.conf.js",
16 | "Gruntfile.js"
17 | ],
18 | "dependencies": {
19 | "angular": "1.0 - 1.3"
20 | },
21 | "devDependencies": {
22 | "jquery": "~2.0.0",
23 | "angular-mocks": "1.3.2",
24 | "angular-scenario": "1.3.2",
25 | "angular-route": "1.3.2",
26 | "json3": "~3.2.4",
27 | "es5-shim": "~2.0.8",
28 | "bootstrap": "~2.3.2",
29 | "font-awesome": "~3.2.1"
30 | }
31 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-flash/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-flash",
3 | "description": "Flash messages for Angular JS",
4 | "private": false,
5 | "version": "0.1.14",
6 | "homepage": "https://github.com/wmluke/angular-flash",
7 | "author": {
8 | "name": "William L. Bunselmeyer",
9 | "email": "wmlukeb@gmail.com"
10 | },
11 | "repository": {
12 | "type": "git",
13 | "url": "git://github.com/wmluke/angular-flash.git"
14 | },
15 | "bugs": {
16 | "url": "https://github.com/wmluke/angular-flash/issues"
17 | },
18 | "engines": {
19 | "node": ">= 0.8.0",
20 | "npm": "1.1.x"
21 | },
22 | "scripts": {
23 | "test": "grunt test-phantom",
24 | "start": "node app",
25 | "coveralls": "cat ./reports/coverage/*/lcov.info | ./node_modules/coveralls/bin/coveralls.js"
26 | },
27 | "dependencies": {},
28 | "devDependencies": {
29 | "connect-livereload": "~0.4.0",
30 | "coveralls": "~2.10.0",
31 | "underscore.string": "~2.3.1",
32 | "grunt": "~0.4.1",
33 | "chai": "~1.5.0",
34 | "istanbul": "~0.1.34",
35 | "sinon-chai": "~2.3.1",
36 | "sinon": "~1.6.0",
37 | "jshint": "~2.1.4",
38 | "matchdep": "~0.1.2",
39 | "grunt-contrib-jshint": "~0.1.1",
40 | "grunt-contrib-uglify": "~0.2.0",
41 | "grunt-bumpup": "~0.2.0",
42 | "grunt-contrib-watch": "~0.5.1",
43 | "grunt-exec": "~0.4.5",
44 | "grunt-contrib-concat": "~0.3.0",
45 | "grunt-build-lifecycle": "~0.1.1",
46 | "grunt-open": "~0.2.0",
47 | "grunt-contrib-connect": "~0.7.1",
48 | "grunt-karma": "0.8.2",
49 | "karma": "~0.12.9",
50 | "karma-ng-scenario": "~0.1.0",
51 | "karma-junit-reporter": "~0.2.2",
52 | "karma-coverage": "~0.2.1",
53 | "karma-jasmine": "~0.1.5",
54 | "karma-phantomjs-launcher": "~0.1.4",
55 | "karma-chrome-launcher": "~0.1.2"
56 | },
57 | "keywords": [
58 | "angular",
59 | "flash"
60 | ]
61 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-loading-bar/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-loading-bar",
3 | "main": [
4 | "build/loading-bar.js",
5 | "build/loading-bar.css"
6 | ],
7 | "ignore": [
8 | "**/.*",
9 | "node_modules",
10 | "components",
11 | "test",
12 | "example"
13 | ],
14 | "dependencies": {
15 | "angular": "^1.2.9"
16 | },
17 | "devDependencies": {
18 | "angular": "~1.2.23",
19 | "angular-1.3": "angular#1.3",
20 | "angular-mocks": "~1.2.9",
21 | "angular-mocks-1.3": "angular-mocks#1.3",
22 | "angular-animate": "~1.2.9",
23 | "angular-animate-1.3": "angular-animate#1.3"
24 | },
25 | "resolutions": {
26 | "angular": "~1.2.23"
27 | },
28 | "homepage": "https://github.com/chieffancypants/angular-loading-bar",
29 | "version": "0.8.0",
30 | "_release": "0.8.0",
31 | "_resolution": {
32 | "type": "version",
33 | "tag": "0.8.0",
34 | "commit": "2582b44eca8c515635d1f667842a0e5b79fab405"
35 | },
36 | "_source": "git://github.com/chieffancypants/angular-loading-bar.git",
37 | "_target": "*",
38 | "_originalSource": "angular-loading-bar"
39 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-loading-bar/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2013-2014 Wes Cruver
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy of
6 | this software and associated documentation files (the "Software"), to deal in
7 | the Software without restriction, including without limitation the rights to
8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9 | the Software, and to permit persons to whom the Software is furnished to do so,
10 | subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-loading-bar/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-loading-bar",
3 | "main": [
4 | "build/loading-bar.js",
5 | "build/loading-bar.css"
6 | ],
7 | "ignore": [
8 | "**/.*",
9 | "node_modules",
10 | "components",
11 | "test",
12 | "example"
13 | ],
14 | "dependencies": {
15 | "angular": "^1.2.9"
16 | },
17 | "devDependencies": {
18 | "angular": "~1.2.23",
19 | "angular-1.3": "angular#1.3",
20 | "angular-mocks": "~1.2.9",
21 | "angular-mocks-1.3": "angular-mocks#1.3",
22 | "angular-animate": "~1.2.9",
23 | "angular-animate-1.3": "angular-animate#1.3"
24 | },
25 | "resolutions": {
26 | "angular": "~1.2.23"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-loading-bar/index.js:
--------------------------------------------------------------------------------
1 | require('./build/loading-bar');
2 | module.exports = 'angular-loading-bar';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-loading-bar/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-loading-bar",
3 | "version": "0.8.0",
4 | "description": "An automatic loading bar for AngularJS",
5 | "main": "index.js",
6 | "directories": {
7 | "example": "example",
8 | "test": "test"
9 | },
10 | "repository": {
11 | "type": "git",
12 | "url": "git://github.com/chieffancypants/angular-loading-bar.git"
13 | },
14 | "keywords": [
15 | "angular",
16 | "angularjs",
17 | "loading",
18 | "loadingbar",
19 | "progress",
20 | "progressbar"
21 | ],
22 | "author": "Wes Cruver",
23 | "license": "MIT",
24 | "bugs": {
25 | "url": "https://github.com/chieffancypants/angular-loading-bar/issues"
26 | },
27 | "homepage": "https://chieffancypants.github.io/angular-loading-bar",
28 | "devDependencies": {
29 | "karma-jasmine": "^0.1.3",
30 | "karma-coffee-preprocessor": "^0.2.0",
31 | "karma-phantomjs-launcher": "^0.1.0",
32 | "karma": "~0.12.0",
33 | "karma-coverage": "^0.1.0",
34 | "grunt": "~0.4.1",
35 | "grunt-contrib-jshint": "~0.6.4",
36 | "grunt-contrib-uglify": "^0.9.1",
37 | "grunt-contrib-cssmin": "~0.12.0",
38 | "grunt-karma": "~0.11.0",
39 | "grunt-contrib-concat": "^0.5.0"
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-mocks",
3 | "version": "1.4.1",
4 | "main": "./angular-mocks.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | },
9 | "homepage": "https://github.com/angular/bower-angular-mocks",
10 | "_release": "1.4.1",
11 | "_resolution": {
12 | "type": "version",
13 | "tag": "v1.4.1",
14 | "commit": "ea0a4758a98796855296d158be19730369197d33"
15 | },
16 | "_source": "git://github.com/angular/bower-angular-mocks.git",
17 | "_target": "*",
18 | "_originalSource": "angular-mocks"
19 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-mocks",
3 | "version": "1.4.1",
4 | "main": "./angular-mocks.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/ngAnimateMock.js:
--------------------------------------------------------------------------------
1 | require('./angular-mocks');
2 | module.exports = 'ngAnimateMock';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/ngMock.js:
--------------------------------------------------------------------------------
1 | require('./angular-mocks');
2 | module.exports = 'ngMock';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/ngMockE2E.js:
--------------------------------------------------------------------------------
1 | require('./angular-mocks');
2 | module.exports = 'ngMockE2E';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-mocks/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-mocks",
3 | "version": "1.4.1",
4 | "description": "AngularJS mocks for testing",
5 | "main": "angular-mocks.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/angular/angular.js.git"
12 | },
13 | "keywords": [
14 | "angular",
15 | "framework",
16 | "browser",
17 | "mocks",
18 | "testing",
19 | "client-side"
20 | ],
21 | "author": "Angular Core Team ",
22 | "license": "MIT",
23 | "bugs": {
24 | "url": "https://github.com/angular/angular.js/issues"
25 | },
26 | "homepage": "http://angularjs.org"
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-resource/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-resource",
3 | "version": "1.4.1",
4 | "main": "./angular-resource.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | },
9 | "homepage": "https://github.com/angular/bower-angular-resource",
10 | "_release": "1.4.1",
11 | "_resolution": {
12 | "type": "version",
13 | "tag": "v1.4.1",
14 | "commit": "fe96f7dd3756e8303586b51305b9eec819ee1b1a"
15 | },
16 | "_source": "git://github.com/angular/bower-angular-resource.git",
17 | "_target": "*",
18 | "_originalSource": "angular-resource"
19 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-resource/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-resource",
3 | "version": "1.4.1",
4 | "main": "./angular-resource.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-resource/index.js:
--------------------------------------------------------------------------------
1 | require('./angular-resource');
2 | module.exports = 'ngResource';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-resource/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-resource",
3 | "version": "1.4.1",
4 | "description": "AngularJS module for interacting with RESTful server-side data sources",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/angular/angular.js.git"
12 | },
13 | "keywords": [
14 | "angular",
15 | "framework",
16 | "browser",
17 | "rest",
18 | "client-side"
19 | ],
20 | "author": "Angular Core Team ",
21 | "license": "MIT",
22 | "bugs": {
23 | "url": "https://github.com/angular/angular.js/issues"
24 | },
25 | "homepage": "http://angularjs.org"
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-route/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-route",
3 | "version": "1.4.1",
4 | "main": "./angular-route.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | },
9 | "homepage": "https://github.com/angular/bower-angular-route",
10 | "_release": "1.4.1",
11 | "_resolution": {
12 | "type": "version",
13 | "tag": "v1.4.1",
14 | "commit": "68f6e7076cbe9d5c3def50660a18389703db9859"
15 | },
16 | "_source": "git://github.com/angular/bower-angular-route.git",
17 | "_target": "*",
18 | "_originalSource": "angular-route"
19 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-route/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-route",
3 | "version": "1.4.1",
4 | "main": "./angular-route.js",
5 | "ignore": [],
6 | "dependencies": {
7 | "angular": "1.4.1"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-route/index.js:
--------------------------------------------------------------------------------
1 | require('./angular-route');
2 | module.exports = 'ngRoute';
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-route/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-route",
3 | "version": "1.4.1",
4 | "description": "AngularJS router module",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/angular/angular.js.git"
12 | },
13 | "keywords": [
14 | "angular",
15 | "framework",
16 | "browser",
17 | "router",
18 | "client-side"
19 | ],
20 | "author": "Angular Core Team ",
21 | "license": "MIT",
22 | "bugs": {
23 | "url": "https://github.com/angular/angular.js/issues"
24 | },
25 | "homepage": "http://angularjs.org"
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-translate/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-translate",
3 | "description": "A translation module for AngularJS",
4 | "version": "2.7.2",
5 | "main": "./angular-translate.js",
6 | "dependencies": {
7 | "angular": ">=1.2.26 <=1.5"
8 | },
9 | "ignore": [],
10 | "author": "Pascal Precht",
11 | "licenses": [
12 | {
13 | "type": "MIT",
14 | "url": "http://www.opensource.org/licenses/MIT"
15 | }
16 | ],
17 | "homepage": "https://github.com/PascalPrecht/bower-angular-translate",
18 | "_release": "2.7.2",
19 | "_resolution": {
20 | "type": "version",
21 | "tag": "2.7.2",
22 | "commit": "ea3e8d41a0ebf42a671b064fd71261943aec63f8"
23 | },
24 | "_source": "git://github.com/PascalPrecht/bower-angular-translate.git",
25 | "_target": "*",
26 | "_originalSource": "angular-translate"
27 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-translate/README.md:
--------------------------------------------------------------------------------
1 | # angular-translate (bower shadow repository)
2 |
3 | This is the _Bower shadow_ repository for *angular-translate*.
4 |
5 | ## Bugs and issues
6 |
7 | Please file any issues and bugs in our main repository at [angular-translate/angular-translate](https://github.com/angular-translate/angular-translate/issues).
8 |
9 | ## Usage
10 |
11 | ### via Bower
12 |
13 | ```bash
14 | $ bower install angular-translate
15 | ```
16 |
17 | ### via cdnjs
18 |
19 | Please have a look at https://cdnjs.com/libraries/angular-translate for specific versions.
20 |
21 | ## License
22 |
23 | Licensed under MIT. See more details at [angular-translate/angular-translate](https://github.com/angular-translate/angular-translate).
24 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular-translate/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-translate",
3 | "description": "A translation module for AngularJS",
4 | "version": "2.7.2",
5 | "main": "./angular-translate.js",
6 | "dependencies": {
7 | "angular": ">=1.2.26 <=1.5"
8 | },
9 | "ignore": [],
10 | "author": "Pascal Precht",
11 | "licenses": [
12 | {
13 | "type": "MIT",
14 | "url": "http://www.opensource.org/licenses/MIT"
15 | }
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular",
3 | "version": "1.4.1",
4 | "main": "./angular.js",
5 | "ignore": [],
6 | "dependencies": {},
7 | "homepage": "https://github.com/angular/bower-angular",
8 | "_release": "1.4.1",
9 | "_resolution": {
10 | "type": "version",
11 | "tag": "v1.4.1",
12 | "commit": "00565b0834478e6a5b4d8ca0373b109c9d963f4b"
13 | },
14 | "_source": "git://github.com/angular/bower-angular.git",
15 | "_target": "1.4.1",
16 | "_originalSource": "angular"
17 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/angular-csp.css:
--------------------------------------------------------------------------------
1 | /* Include this file in your html if you are using the CSP mode. */
2 |
3 | @charset "UTF-8";
4 |
5 | [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak],
6 | .ng-cloak, .x-ng-cloak,
7 | .ng-hide:not(.ng-hide-animate) {
8 | display: none !important;
9 | }
10 |
11 | ng\:form {
12 | display: block;
13 | }
14 |
15 | .ng-animate-shim {
16 | visibility:hidden;
17 | }
18 |
19 | .ng-anchor {
20 | position:absolute;
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/angular.min.js.gzip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/angular/angular.min.js.gzip
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular",
3 | "version": "1.4.1",
4 | "main": "./angular.js",
5 | "ignore": [],
6 | "dependencies": {
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/index.js:
--------------------------------------------------------------------------------
1 | require('./angular');
2 | module.exports = angular;
3 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/angular/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular",
3 | "version": "1.4.1",
4 | "description": "HTML enhanced for web apps",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/angular/angular.js.git"
12 | },
13 | "keywords": [
14 | "angular",
15 | "framework",
16 | "browser",
17 | "client-side"
18 | ],
19 | "author": "Angular Core Team ",
20 | "license": "MIT",
21 | "bugs": {
22 | "url": "https://github.com/angular/angular.js/issues"
23 | },
24 | "homepage": "http://angularjs.org"
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bootstrap-sass",
3 | "homepage": "https://github.com/twbs/bootstrap-sass",
4 | "authors": [
5 | "Thomas McDonald",
6 | "Tristan Harward",
7 | "Peter Gumeson",
8 | "Gleb Mazovetskiy"
9 | ],
10 | "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.",
11 | "moduleType": "globals",
12 | "main": [
13 | "assets/stylesheets/_bootstrap.scss",
14 | "assets/javascripts/bootstrap.js"
15 | ],
16 | "keywords": [
17 | "twbs",
18 | "bootstrap",
19 | "sass"
20 | ],
21 | "license": "MIT",
22 | "ignore": [
23 | "**/.*",
24 | "lib",
25 | "tasks",
26 | "templates",
27 | "test",
28 | "*.gemspec",
29 | "Rakefile",
30 | "Gemfile"
31 | ],
32 | "dependencies": {
33 | "jquery": ">= 1.9.0"
34 | },
35 | "version": "3.3.5",
36 | "_release": "3.3.5",
37 | "_resolution": {
38 | "type": "version",
39 | "tag": "v3.3.5",
40 | "commit": "fe686dbe44641fabbb8960fc9e549dd9d1670366"
41 | },
42 | "_source": "git://github.com/twbs/bootstrap-sass.git",
43 | "_target": "*",
44 | "_originalSource": "bootstrap-sass-official"
45 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2013 Twitter, Inc
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/javascripts/bootstrap-sprockets.js:
--------------------------------------------------------------------------------
1 | //= require ./bootstrap/affix
2 | //= require ./bootstrap/alert
3 | //= require ./bootstrap/button
4 | //= require ./bootstrap/carousel
5 | //= require ./bootstrap/collapse
6 | //= require ./bootstrap/dropdown
7 | //= require ./bootstrap/tab
8 | //= require ./bootstrap/transition
9 | //= require ./bootstrap/scrollspy
10 | //= require ./bootstrap/modal
11 | //= require ./bootstrap/tooltip
12 | //= require ./bootstrap/popover
13 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap-compass.scss:
--------------------------------------------------------------------------------
1 | @function twbs-font-path($path) {
2 | @return font-url($path, true);
3 | }
4 |
5 | @function twbs-image-path($path) {
6 | @return image-url($path, true);
7 | }
8 |
9 | $bootstrap-sass-asset-helper: true;
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap-mincer.scss:
--------------------------------------------------------------------------------
1 | // Mincer asset helper functions
2 | //
3 | // This must be imported into a .css.ejs.scss file.
4 | // Then, <% %>-interpolations will be parsed as strings by Sass, and evaluated by EJS after Sass compilation.
5 |
6 |
7 | @function twbs-font-path($path) {
8 | // do something like following
9 | // from "path/to/font.ext#suffix" to "<%- asset_path(path/to/font.ext)) + #suffix %>"
10 | // from "path/to/font.ext?#suffix" to "<%- asset_path(path/to/font.ext)) + ?#suffix %>"
11 | // or from "path/to/font.ext" just "<%- asset_path(path/to/font.ext)) %>"
12 | @return "<%- asset_path('#{$path}'.replace(/[#?].*$/, '')) + '#{$path}'.replace(/(^[^#?]*)([#?]?.*$)/, '$2') %>";
13 | }
14 |
15 | @function twbs-image-path($file) {
16 | @return "<%- asset_path('#{$file}') %>";
17 | }
18 |
19 | $bootstrap-sass-asset-helper: true;
20 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap-sprockets.scss:
--------------------------------------------------------------------------------
1 | @function twbs-font-path($path) {
2 | @return font-path($path);
3 | }
4 |
5 | @function twbs-image-path($path) {
6 | @return image-path($path);
7 | }
8 |
9 | $bootstrap-sass-asset-helper: true;
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap.scss:
--------------------------------------------------------------------------------
1 | /*!
2 | * Bootstrap v3.3.5 (http://getbootstrap.com)
3 | * Copyright 2011-2015 Twitter, Inc.
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5 | */
6 |
7 | // Core variables and mixins
8 | @import "bootstrap/variables";
9 | @import "bootstrap/mixins";
10 |
11 | // Reset and dependencies
12 | @import "bootstrap/normalize";
13 | @import "bootstrap/print";
14 | @import "bootstrap/glyphicons";
15 |
16 | // Core CSS
17 | @import "bootstrap/scaffolding";
18 | @import "bootstrap/type";
19 | @import "bootstrap/code";
20 | @import "bootstrap/grid";
21 | @import "bootstrap/tables";
22 | @import "bootstrap/forms";
23 | @import "bootstrap/buttons";
24 |
25 | // Components
26 | @import "bootstrap/component-animations";
27 | @import "bootstrap/dropdowns";
28 | @import "bootstrap/button-groups";
29 | @import "bootstrap/input-groups";
30 | @import "bootstrap/navs";
31 | @import "bootstrap/navbar";
32 | @import "bootstrap/breadcrumbs";
33 | @import "bootstrap/pagination";
34 | @import "bootstrap/pager";
35 | @import "bootstrap/labels";
36 | @import "bootstrap/badges";
37 | @import "bootstrap/jumbotron";
38 | @import "bootstrap/thumbnails";
39 | @import "bootstrap/alerts";
40 | @import "bootstrap/progress-bars";
41 | @import "bootstrap/media";
42 | @import "bootstrap/list-group";
43 | @import "bootstrap/panels";
44 | @import "bootstrap/responsive-embed";
45 | @import "bootstrap/wells";
46 | @import "bootstrap/close";
47 |
48 | // Components w/ JavaScript
49 | @import "bootstrap/modals";
50 | @import "bootstrap/tooltip";
51 | @import "bootstrap/popovers";
52 | @import "bootstrap/carousel";
53 |
54 | // Utility classes
55 | @import "bootstrap/utilities";
56 | @import "bootstrap/responsive-utilities";
57 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_alerts.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Alerts
3 | // --------------------------------------------------
4 |
5 |
6 | // Base styles
7 | // -------------------------
8 |
9 | .alert {
10 | padding: $alert-padding;
11 | margin-bottom: $line-height-computed;
12 | border: 1px solid transparent;
13 | border-radius: $alert-border-radius;
14 |
15 | // Headings for larger alerts
16 | h4 {
17 | margin-top: 0;
18 | // Specified for the h4 to prevent conflicts of changing $headings-color
19 | color: inherit;
20 | }
21 |
22 | // Provide class for links that match alerts
23 | .alert-link {
24 | font-weight: $alert-link-font-weight;
25 | }
26 |
27 | // Improve alignment and spacing of inner content
28 | > p,
29 | > ul {
30 | margin-bottom: 0;
31 | }
32 |
33 | > p + p {
34 | margin-top: 5px;
35 | }
36 | }
37 |
38 | // Dismissible alerts
39 | //
40 | // Expand the right padding and account for the close button's positioning.
41 |
42 | .alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0.
43 | .alert-dismissible {
44 | padding-right: ($alert-padding + 20);
45 |
46 | // Adjust close link position
47 | .close {
48 | position: relative;
49 | top: -2px;
50 | right: -21px;
51 | color: inherit;
52 | }
53 | }
54 |
55 | // Alternate styles
56 | //
57 | // Generate contextual modifier classes for colorizing the alert.
58 |
59 | .alert-success {
60 | @include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text);
61 | }
62 |
63 | .alert-info {
64 | @include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text);
65 | }
66 |
67 | .alert-warning {
68 | @include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text);
69 | }
70 |
71 | .alert-danger {
72 | @include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text);
73 | }
74 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_badges.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Badges
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .badge {
8 | display: inline-block;
9 | min-width: 10px;
10 | padding: 3px 7px;
11 | font-size: $font-size-small;
12 | font-weight: $badge-font-weight;
13 | color: $badge-color;
14 | line-height: $badge-line-height;
15 | vertical-align: middle;
16 | white-space: nowrap;
17 | text-align: center;
18 | background-color: $badge-bg;
19 | border-radius: $badge-border-radius;
20 |
21 | // Empty badges collapse automatically (not available in IE8)
22 | &:empty {
23 | display: none;
24 | }
25 |
26 | // Quick fix for badges in buttons
27 | .btn & {
28 | position: relative;
29 | top: -1px;
30 | }
31 |
32 | .btn-xs &,
33 | .btn-group-xs > .btn & {
34 | top: 0;
35 | padding: 1px 5px;
36 | }
37 |
38 | // [converter] extracted a& to a.badge
39 |
40 | // Account for badges in navs
41 | .list-group-item.active > &,
42 | .nav-pills > .active > a > & {
43 | color: $badge-active-color;
44 | background-color: $badge-active-bg;
45 | }
46 |
47 | .list-group-item > & {
48 | float: right;
49 | }
50 |
51 | .list-group-item > & + & {
52 | margin-right: 5px;
53 | }
54 |
55 | .nav-pills > li > a > & {
56 | margin-left: 3px;
57 | }
58 | }
59 |
60 | // Hover state, but only for links
61 | a.badge {
62 | &:hover,
63 | &:focus {
64 | color: $badge-link-hover-color;
65 | text-decoration: none;
66 | cursor: pointer;
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_breadcrumbs.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Breadcrumbs
3 | // --------------------------------------------------
4 |
5 |
6 | .breadcrumb {
7 | padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal;
8 | margin-bottom: $line-height-computed;
9 | list-style: none;
10 | background-color: $breadcrumb-bg;
11 | border-radius: $border-radius-base;
12 |
13 | > li {
14 | display: inline-block;
15 |
16 | + li:before {
17 | content: "#{$breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space
18 | padding: 0 5px;
19 | color: $breadcrumb-color;
20 | }
21 | }
22 |
23 | > .active {
24 | color: $breadcrumb-active-color;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_close.scss:
--------------------------------------------------------------------------------
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 | @include opacity(.2);
14 |
15 | &:hover,
16 | &:focus {
17 | color: $close-color;
18 | text-decoration: none;
19 | cursor: pointer;
20 | @include opacity(.5);
21 | }
22 |
23 | // [converter] extracted button& to button.close
24 | }
25 |
26 | // Additional properties for button version
27 | // iOS requires the button element instead of an anchor tag.
28 | // If you want the anchor version, it requires `href="#"`.
29 | // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
30 | button.close {
31 | padding: 0;
32 | cursor: pointer;
33 | background: transparent;
34 | border: 0;
35 | -webkit-appearance: none;
36 | }
37 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_code.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Code (inline and block)
3 | // --------------------------------------------------
4 |
5 |
6 | // Inline and block code styles
7 | code,
8 | kbd,
9 | pre,
10 | samp {
11 | font-family: $font-family-monospace;
12 | }
13 |
14 | // Inline code
15 | code {
16 | padding: 2px 4px;
17 | font-size: 90%;
18 | color: $code-color;
19 | background-color: $code-bg;
20 | border-radius: $border-radius-base;
21 | }
22 |
23 | // User input typically entered via keyboard
24 | kbd {
25 | padding: 2px 4px;
26 | font-size: 90%;
27 | color: $kbd-color;
28 | background-color: $kbd-bg;
29 | border-radius: $border-radius-small;
30 | box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
31 |
32 | kbd {
33 | padding: 0;
34 | font-size: 100%;
35 | font-weight: bold;
36 | box-shadow: none;
37 | }
38 | }
39 |
40 | // Blocks of code
41 | pre {
42 | display: block;
43 | padding: (($line-height-computed - 1) / 2);
44 | margin: 0 0 ($line-height-computed / 2);
45 | font-size: ($font-size-base - 1); // 14px to 13px
46 | line-height: $line-height-base;
47 | word-break: break-all;
48 | word-wrap: break-word;
49 | color: $pre-color;
50 | background-color: $pre-bg;
51 | border: 1px solid $pre-border-color;
52 | border-radius: $border-radius-base;
53 |
54 | // Account for some code outputs that place code tags in pre tags
55 | code {
56 | padding: 0;
57 | font-size: inherit;
58 | color: inherit;
59 | white-space: pre-wrap;
60 | background-color: transparent;
61 | border-radius: 0;
62 | }
63 | }
64 |
65 | // Enable scrollable blocks of code
66 | .pre-scrollable {
67 | max-height: $pre-scrollable-max-height;
68 | overflow-y: scroll;
69 | }
70 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_component-animations.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Component animations
3 | // --------------------------------------------------
4 |
5 | // Heads up!
6 | //
7 | // We don't use the `.opacity()` mixin here since it causes a bug with text
8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.
9 |
10 | .fade {
11 | opacity: 0;
12 | @include transition(opacity .15s linear);
13 | &.in {
14 | opacity: 1;
15 | }
16 | }
17 |
18 | .collapse {
19 | display: none;
20 |
21 | &.in { display: block; }
22 | // [converter] extracted tr&.in to tr.collapse.in
23 | // [converter] extracted tbody&.in to tbody.collapse.in
24 | }
25 |
26 | tr.collapse.in { display: table-row; }
27 |
28 | tbody.collapse.in { display: table-row-group; }
29 |
30 | .collapsing {
31 | position: relative;
32 | height: 0;
33 | overflow: hidden;
34 | @include transition-property(height, visibility);
35 | @include transition-duration(.35s);
36 | @include transition-timing-function(ease);
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_grid.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Grid system
3 | // --------------------------------------------------
4 |
5 |
6 | // Container widths
7 | //
8 | // Set the container width, and override it for fixed navbars in media queries.
9 |
10 | .container {
11 | @include container-fixed;
12 |
13 | @media (min-width: $screen-sm-min) {
14 | width: $container-sm;
15 | }
16 | @media (min-width: $screen-md-min) {
17 | width: $container-md;
18 | }
19 | @media (min-width: $screen-lg-min) {
20 | width: $container-lg;
21 | }
22 | }
23 |
24 |
25 | // Fluid container
26 | //
27 | // Utilizes the mixin meant for fixed width containers, but without any defined
28 | // width for fluid, full width layouts.
29 |
30 | .container-fluid {
31 | @include container-fixed;
32 | }
33 |
34 |
35 | // Row
36 | //
37 | // Rows contain and clear the floats of your columns.
38 |
39 | .row {
40 | @include make-row;
41 | }
42 |
43 |
44 | // Columns
45 | //
46 | // Common styles for small and large grid columns
47 |
48 | @include make-grid-columns;
49 |
50 |
51 | // Extra small grid
52 | //
53 | // Columns, offsets, pushes, and pulls for extra small devices like
54 | // smartphones.
55 |
56 | @include make-grid(xs);
57 |
58 |
59 | // Small grid
60 | //
61 | // Columns, offsets, pushes, and pulls for the small device range, from phones
62 | // to tablets.
63 |
64 | @media (min-width: $screen-sm-min) {
65 | @include make-grid(sm);
66 | }
67 |
68 |
69 | // Medium grid
70 | //
71 | // Columns, offsets, pushes, and pulls for the desktop device range.
72 |
73 | @media (min-width: $screen-md-min) {
74 | @include make-grid(md);
75 | }
76 |
77 |
78 | // Large grid
79 | //
80 | // Columns, offsets, pushes, and pulls for the large desktop device range.
81 |
82 | @media (min-width: $screen-lg-min) {
83 | @include make-grid(lg);
84 | }
85 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_jumbotron.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Jumbotron
3 | // --------------------------------------------------
4 |
5 |
6 | .jumbotron {
7 | padding-top: $jumbotron-padding;
8 | padding-bottom: $jumbotron-padding;
9 | margin-bottom: $jumbotron-padding;
10 | color: $jumbotron-color;
11 | background-color: $jumbotron-bg;
12 |
13 | h1,
14 | .h1 {
15 | color: $jumbotron-heading-color;
16 | }
17 |
18 | p {
19 | margin-bottom: ($jumbotron-padding / 2);
20 | font-size: $jumbotron-font-size;
21 | font-weight: 200;
22 | }
23 |
24 | > hr {
25 | border-top-color: darken($jumbotron-bg, 10%);
26 | }
27 |
28 | .container &,
29 | .container-fluid & {
30 | border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
31 | }
32 |
33 | .container {
34 | max-width: 100%;
35 | }
36 |
37 | @media screen and (min-width: $screen-sm-min) {
38 | padding-top: ($jumbotron-padding * 1.6);
39 | padding-bottom: ($jumbotron-padding * 1.6);
40 |
41 | .container &,
42 | .container-fluid & {
43 | padding-left: ($jumbotron-padding * 2);
44 | padding-right: ($jumbotron-padding * 2);
45 | }
46 |
47 | h1,
48 | .h1 {
49 | font-size: $jumbotron-heading-font-size;
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_labels.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Labels
3 | // --------------------------------------------------
4 |
5 | .label {
6 | display: inline;
7 | padding: .2em .6em .3em;
8 | font-size: 75%;
9 | font-weight: bold;
10 | line-height: 1;
11 | color: $label-color;
12 | text-align: center;
13 | white-space: nowrap;
14 | vertical-align: baseline;
15 | border-radius: .25em;
16 |
17 | // [converter] extracted a& to a.label
18 |
19 | // Empty labels collapse automatically (not available in IE8)
20 | &:empty {
21 | display: none;
22 | }
23 |
24 | // Quick fix for labels in buttons
25 | .btn & {
26 | position: relative;
27 | top: -1px;
28 | }
29 | }
30 |
31 | // Add hover effects, but only for links
32 | a.label {
33 | &:hover,
34 | &:focus {
35 | color: $label-link-hover-color;
36 | text-decoration: none;
37 | cursor: pointer;
38 | }
39 | }
40 |
41 | // Colors
42 | // Contextual variations (linked labels get darker on :hover)
43 |
44 | .label-default {
45 | @include label-variant($label-default-bg);
46 | }
47 |
48 | .label-primary {
49 | @include label-variant($label-primary-bg);
50 | }
51 |
52 | .label-success {
53 | @include label-variant($label-success-bg);
54 | }
55 |
56 | .label-info {
57 | @include label-variant($label-info-bg);
58 | }
59 |
60 | .label-warning {
61 | @include label-variant($label-warning-bg);
62 | }
63 |
64 | .label-danger {
65 | @include label-variant($label-danger-bg);
66 | }
67 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_media.scss:
--------------------------------------------------------------------------------
1 | .media {
2 | // Proper spacing between instances of .media
3 | margin-top: 15px;
4 |
5 | &:first-child {
6 | margin-top: 0;
7 | }
8 | }
9 |
10 | .media,
11 | .media-body {
12 | zoom: 1;
13 | overflow: hidden;
14 | }
15 |
16 | .media-body {
17 | width: 10000px;
18 | }
19 |
20 | .media-object {
21 | display: block;
22 |
23 | // Fix collapse in webkit from max-width: 100% and display: table-cell.
24 | &.img-thumbnail {
25 | max-width: none;
26 | }
27 | }
28 |
29 | .media-right,
30 | .media > .pull-right {
31 | padding-left: 10px;
32 | }
33 |
34 | .media-left,
35 | .media > .pull-left {
36 | padding-right: 10px;
37 | }
38 |
39 | .media-left,
40 | .media-right,
41 | .media-body {
42 | display: table-cell;
43 | vertical-align: top;
44 | }
45 |
46 | .media-middle {
47 | vertical-align: middle;
48 | }
49 |
50 | .media-bottom {
51 | vertical-align: bottom;
52 | }
53 |
54 | // Reset margins on headings for tighter default spacing
55 | .media-heading {
56 | margin-top: 0;
57 | margin-bottom: 5px;
58 | }
59 |
60 | // Media list variation
61 | //
62 | // Undo default ul/ol styles
63 | .media-list {
64 | padding-left: 0;
65 | list-style: none;
66 | }
67 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_mixins.scss:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------------------------------
3 |
4 | // Utilities
5 | @import "mixins/hide-text";
6 | @import "mixins/opacity";
7 | @import "mixins/image";
8 | @import "mixins/labels";
9 | @import "mixins/reset-filter";
10 | @import "mixins/resize";
11 | @import "mixins/responsive-visibility";
12 | @import "mixins/size";
13 | @import "mixins/tab-focus";
14 | @import "mixins/reset-text";
15 | @import "mixins/text-emphasis";
16 | @import "mixins/text-overflow";
17 | @import "mixins/vendor-prefixes";
18 |
19 | // Components
20 | @import "mixins/alerts";
21 | @import "mixins/buttons";
22 | @import "mixins/panels";
23 | @import "mixins/pagination";
24 | @import "mixins/list-group";
25 | @import "mixins/nav-divider";
26 | @import "mixins/forms";
27 | @import "mixins/progress-bar";
28 | @import "mixins/table-row";
29 |
30 | // Skins
31 | @import "mixins/background-variant";
32 | @import "mixins/border-radius";
33 | @import "mixins/gradients";
34 |
35 | // Layout
36 | @import "mixins/clearfix";
37 | @import "mixins/center-block";
38 | @import "mixins/nav-vertical-align";
39 | @import "mixins/grid-framework";
40 | @import "mixins/grid";
41 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_pager.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Pager pagination
3 | // --------------------------------------------------
4 |
5 |
6 | .pager {
7 | padding-left: 0;
8 | margin: $line-height-computed 0;
9 | list-style: none;
10 | text-align: center;
11 | @include clearfix;
12 | li {
13 | display: inline;
14 | > a,
15 | > span {
16 | display: inline-block;
17 | padding: 5px 14px;
18 | background-color: $pager-bg;
19 | border: 1px solid $pager-border;
20 | border-radius: $pager-border-radius;
21 | }
22 |
23 | > a:hover,
24 | > a:focus {
25 | text-decoration: none;
26 | background-color: $pager-hover-bg;
27 | }
28 | }
29 |
30 | .next {
31 | > a,
32 | > span {
33 | float: right;
34 | }
35 | }
36 |
37 | .previous {
38 | > a,
39 | > span {
40 | float: left;
41 | }
42 | }
43 |
44 | .disabled {
45 | > a,
46 | > a:hover,
47 | > a:focus,
48 | > span {
49 | color: $pager-disabled-color;
50 | background-color: $pager-bg;
51 | cursor: $cursor-disabled;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_responsive-embed.scss:
--------------------------------------------------------------------------------
1 | // Embeds responsive
2 | //
3 | // Credit: Nicolas Gallagher and SUIT CSS.
4 |
5 | .embed-responsive {
6 | position: relative;
7 | display: block;
8 | height: 0;
9 | padding: 0;
10 | overflow: hidden;
11 |
12 | .embed-responsive-item,
13 | iframe,
14 | embed,
15 | object,
16 | video {
17 | position: absolute;
18 | top: 0;
19 | left: 0;
20 | bottom: 0;
21 | height: 100%;
22 | width: 100%;
23 | border: 0;
24 | }
25 | }
26 |
27 | // Modifier class for 16:9 aspect ratio
28 | .embed-responsive-16by9 {
29 | padding-bottom: 56.25%;
30 | }
31 |
32 | // Modifier class for 4:3 aspect ratio
33 | .embed-responsive-4by3 {
34 | padding-bottom: 75%;
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_thumbnails.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Thumbnails
3 | // --------------------------------------------------
4 |
5 |
6 | // Mixin and adjust the regular image class
7 | .thumbnail {
8 | display: block;
9 | padding: $thumbnail-padding;
10 | margin-bottom: $line-height-computed;
11 | line-height: $line-height-base;
12 | background-color: $thumbnail-bg;
13 | border: 1px solid $thumbnail-border;
14 | border-radius: $thumbnail-border-radius;
15 | @include transition(border .2s ease-in-out);
16 |
17 | > img,
18 | a > img {
19 | @include img-responsive;
20 | margin-left: auto;
21 | margin-right: auto;
22 | }
23 |
24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active
25 |
26 | // Image captions
27 | .caption {
28 | padding: $thumbnail-caption-padding;
29 | color: $thumbnail-caption-color;
30 | }
31 | }
32 |
33 | // Add a hover state for linked versions only
34 | a.thumbnail:hover,
35 | a.thumbnail:focus,
36 | a.thumbnail.active {
37 | border-color: $link-color;
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_utilities.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Utility classes
3 | // --------------------------------------------------
4 |
5 |
6 | // Floats
7 | // -------------------------
8 |
9 | .clearfix {
10 | @include clearfix;
11 | }
12 | .center-block {
13 | @include center-block;
14 | }
15 | .pull-right {
16 | float: right !important;
17 | }
18 | .pull-left {
19 | float: left !important;
20 | }
21 |
22 |
23 | // Toggling content
24 | // -------------------------
25 |
26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
27 | .hide {
28 | display: none !important;
29 | }
30 | .show {
31 | display: block !important;
32 | }
33 | .invisible {
34 | visibility: hidden;
35 | }
36 | .text-hide {
37 | @include text-hide;
38 | }
39 |
40 |
41 | // Hide from screenreaders and browsers
42 | //
43 | // Credit: HTML5 Boilerplate
44 |
45 | .hidden {
46 | display: none !important;
47 | }
48 |
49 |
50 | // For Affix plugin
51 | // -------------------------
52 |
53 | .affix {
54 | position: fixed;
55 | }
56 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/_wells.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Wells
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .well {
8 | min-height: 20px;
9 | padding: 19px;
10 | margin-bottom: 20px;
11 | background-color: $well-bg;
12 | border: 1px solid $well-border;
13 | border-radius: $border-radius-base;
14 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
15 | blockquote {
16 | border-color: #ddd;
17 | border-color: rgba(0,0,0,.15);
18 | }
19 | }
20 |
21 | // Sizes
22 | .well-lg {
23 | padding: 24px;
24 | border-radius: $border-radius-large;
25 | }
26 | .well-sm {
27 | padding: 9px;
28 | border-radius: $border-radius-small;
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_alerts.scss:
--------------------------------------------------------------------------------
1 | // Alerts
2 |
3 | @mixin alert-variant($background, $border, $text-color) {
4 | background-color: $background;
5 | border-color: $border;
6 | color: $text-color;
7 |
8 | hr {
9 | border-top-color: darken($border, 5%);
10 | }
11 | .alert-link {
12 | color: darken($text-color, 10%);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_background-variant.scss:
--------------------------------------------------------------------------------
1 | // Contextual backgrounds
2 |
3 | // [converter] $parent hack
4 | @mixin bg-variant($parent, $color) {
5 | #{$parent} {
6 | background-color: $color;
7 | }
8 | a#{$parent}:hover,
9 | a#{$parent}:focus {
10 | background-color: darken($color, 10%);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_border-radius.scss:
--------------------------------------------------------------------------------
1 | // Single side border-radius
2 |
3 | @mixin border-top-radius($radius) {
4 | border-top-right-radius: $radius;
5 | border-top-left-radius: $radius;
6 | }
7 | @mixin border-right-radius($radius) {
8 | border-bottom-right-radius: $radius;
9 | border-top-right-radius: $radius;
10 | }
11 | @mixin border-bottom-radius($radius) {
12 | border-bottom-right-radius: $radius;
13 | border-bottom-left-radius: $radius;
14 | }
15 | @mixin border-left-radius($radius) {
16 | border-bottom-left-radius: $radius;
17 | border-top-left-radius: $radius;
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_buttons.scss:
--------------------------------------------------------------------------------
1 | // Button variants
2 | //
3 | // Easily pump out default styles, as well as :hover, :focus, :active,
4 | // and disabled options for all buttons
5 |
6 | @mixin button-variant($color, $background, $border) {
7 | color: $color;
8 | background-color: $background;
9 | border-color: $border;
10 |
11 | &:focus,
12 | &.focus {
13 | color: $color;
14 | background-color: darken($background, 10%);
15 | border-color: darken($border, 25%);
16 | }
17 | &:hover {
18 | color: $color;
19 | background-color: darken($background, 10%);
20 | border-color: darken($border, 12%);
21 | }
22 | &:active,
23 | &.active,
24 | .open > &.dropdown-toggle {
25 | color: $color;
26 | background-color: darken($background, 10%);
27 | border-color: darken($border, 12%);
28 |
29 | &:hover,
30 | &:focus,
31 | &.focus {
32 | color: $color;
33 | background-color: darken($background, 17%);
34 | border-color: darken($border, 25%);
35 | }
36 | }
37 | &:active,
38 | &.active,
39 | .open > &.dropdown-toggle {
40 | background-image: none;
41 | }
42 | &.disabled,
43 | &[disabled],
44 | fieldset[disabled] & {
45 | &,
46 | &:hover,
47 | &:focus,
48 | &.focus,
49 | &:active,
50 | &.active {
51 | background-color: $background;
52 | border-color: $border;
53 | }
54 | }
55 |
56 | .badge {
57 | color: $background;
58 | background-color: $color;
59 | }
60 | }
61 |
62 | // Button sizes
63 | @mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
64 | padding: $padding-vertical $padding-horizontal;
65 | font-size: $font-size;
66 | line-height: $line-height;
67 | border-radius: $border-radius;
68 | }
69 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_center-block.scss:
--------------------------------------------------------------------------------
1 | // Center-align a block level element
2 |
3 | @mixin center-block() {
4 | display: block;
5 | margin-left: auto;
6 | margin-right: auto;
7 | }
8 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_clearfix.scss:
--------------------------------------------------------------------------------
1 | // Clearfix
2 | //
3 | // For modern browsers
4 | // 1. The space content is one way to avoid an Opera bug when the
5 | // contenteditable attribute is included anywhere else in the document.
6 | // Otherwise it causes space to appear at the top and bottom of elements
7 | // that are clearfixed.
8 | // 2. The use of `table` rather than `block` is only necessary if using
9 | // `:before` to contain the top-margins of child elements.
10 | //
11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/
12 |
13 | @mixin clearfix() {
14 | &:before,
15 | &:after {
16 | content: " "; // 1
17 | display: table; // 2
18 | }
19 | &:after {
20 | clear: both;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_hide-text.scss:
--------------------------------------------------------------------------------
1 | // CSS image replacement
2 | //
3 | // Heads up! v3 launched with only `.hide-text()`, but per our pattern for
4 | // mixins being reused as classes with the same name, this doesn't hold up. As
5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
6 | //
7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
8 |
9 | // Deprecated as of v3.0.1 (will be removed in v4)
10 | @mixin hide-text() {
11 | font: 0/0 a;
12 | color: transparent;
13 | text-shadow: none;
14 | background-color: transparent;
15 | border: 0;
16 | }
17 |
18 | // New mixin to use as of v3.0.1
19 | @mixin text-hide() {
20 | @include hide-text;
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_image.scss:
--------------------------------------------------------------------------------
1 | // Image Mixins
2 | // - Responsive image
3 | // - Retina image
4 |
5 |
6 | // Responsive image
7 | //
8 | // Keep images from scaling beyond the width of their parents.
9 | @mixin img-responsive($display: block) {
10 | display: $display;
11 | max-width: 100%; // Part 1: Set a maximum relative to the parent
12 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
13 | }
14 |
15 |
16 | // Retina image
17 | //
18 | // Short retina mixin for setting background-image and -size. Note that the
19 | // spelling of `min--moz-device-pixel-ratio` is intentional.
20 | @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
21 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-1x}"), "#{$file-1x}"));
22 |
23 | @media
24 | only screen and (-webkit-min-device-pixel-ratio: 2),
25 | only screen and ( min--moz-device-pixel-ratio: 2),
26 | only screen and ( -o-min-device-pixel-ratio: 2/1),
27 | only screen and ( min-device-pixel-ratio: 2),
28 | only screen and ( min-resolution: 192dpi),
29 | only screen and ( min-resolution: 2dppx) {
30 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-2x}"), "#{$file-2x}"));
31 | background-size: $width-1x $height-1x;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_labels.scss:
--------------------------------------------------------------------------------
1 | // Labels
2 |
3 | @mixin label-variant($color) {
4 | background-color: $color;
5 |
6 | &[href] {
7 | &:hover,
8 | &:focus {
9 | background-color: darken($color, 10%);
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_list-group.scss:
--------------------------------------------------------------------------------
1 | // List Groups
2 |
3 | @mixin list-group-item-variant($state, $background, $color) {
4 | .list-group-item-#{$state} {
5 | color: $color;
6 | background-color: $background;
7 |
8 | // [converter] extracted a&, button& to a.list-group-item-#{$state}, button.list-group-item-#{$state}
9 | }
10 |
11 | a.list-group-item-#{$state},
12 | button.list-group-item-#{$state} {
13 | color: $color;
14 |
15 | .list-group-item-heading {
16 | color: inherit;
17 | }
18 |
19 | &:hover,
20 | &:focus {
21 | color: $color;
22 | background-color: darken($background, 5%);
23 | }
24 | &.active,
25 | &.active:hover,
26 | &.active:focus {
27 | color: #fff;
28 | background-color: $color;
29 | border-color: $color;
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_nav-divider.scss:
--------------------------------------------------------------------------------
1 | // Horizontal dividers
2 | //
3 | // Dividers (basically an hr) within dropdowns and nav lists
4 |
5 | @mixin nav-divider($color: #e5e5e5) {
6 | height: 1px;
7 | margin: (($line-height-computed / 2) - 1) 0;
8 | overflow: hidden;
9 | background-color: $color;
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_nav-vertical-align.scss:
--------------------------------------------------------------------------------
1 | // Navbar vertical align
2 | //
3 | // Vertically center elements in the navbar.
4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
5 |
6 | @mixin navbar-vertical-align($element-height) {
7 | margin-top: (($navbar-height - $element-height) / 2);
8 | margin-bottom: (($navbar-height - $element-height) / 2);
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_opacity.scss:
--------------------------------------------------------------------------------
1 | // Opacity
2 |
3 | @mixin opacity($opacity) {
4 | opacity: $opacity;
5 | // IE8 filter
6 | $opacity-ie: ($opacity * 100);
7 | filter: alpha(opacity=$opacity-ie);
8 | }
9 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_pagination.scss:
--------------------------------------------------------------------------------
1 | // Pagination
2 |
3 | @mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
4 | > li {
5 | > a,
6 | > span {
7 | padding: $padding-vertical $padding-horizontal;
8 | font-size: $font-size;
9 | line-height: $line-height;
10 | }
11 | &:first-child {
12 | > a,
13 | > span {
14 | @include border-left-radius($border-radius);
15 | }
16 | }
17 | &:last-child {
18 | > a,
19 | > span {
20 | @include border-right-radius($border-radius);
21 | }
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_panels.scss:
--------------------------------------------------------------------------------
1 | // Panels
2 |
3 | @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
4 | border-color: $border;
5 |
6 | & > .panel-heading {
7 | color: $heading-text-color;
8 | background-color: $heading-bg-color;
9 | border-color: $heading-border;
10 |
11 | + .panel-collapse > .panel-body {
12 | border-top-color: $border;
13 | }
14 | .badge {
15 | color: $heading-bg-color;
16 | background-color: $heading-text-color;
17 | }
18 | }
19 | & > .panel-footer {
20 | + .panel-collapse > .panel-body {
21 | border-bottom-color: $border;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_progress-bar.scss:
--------------------------------------------------------------------------------
1 | // Progress bars
2 |
3 | @mixin progress-bar-variant($color) {
4 | background-color: $color;
5 |
6 | // Deprecated parent class requirement as of v3.2.0
7 | .progress-striped & {
8 | @include gradient-striped;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_reset-filter.scss:
--------------------------------------------------------------------------------
1 | // Reset filters for IE
2 | //
3 | // When you need to remove a gradient background, do not forget to use this to reset
4 | // the IE filter for IE9 and below.
5 |
6 | @mixin reset-filter() {
7 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
8 | }
9 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_reset-text.scss:
--------------------------------------------------------------------------------
1 | @mixin reset-text() {
2 | font-family: $font-family-base;
3 | // We deliberately do NOT reset font-size.
4 | font-style: normal;
5 | font-weight: normal;
6 | letter-spacing: normal;
7 | line-break: auto;
8 | line-height: $line-height-base;
9 | text-align: left; // Fallback for where `start` is not supported
10 | text-align: start;
11 | text-decoration: none;
12 | text-shadow: none;
13 | text-transform: none;
14 | white-space: normal;
15 | word-break: normal;
16 | word-spacing: normal;
17 | word-wrap: normal;
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_resize.scss:
--------------------------------------------------------------------------------
1 | // Resize anything
2 |
3 | @mixin resizable($direction) {
4 | resize: $direction; // Options: horizontal, vertical, both
5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
6 | }
7 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_responsive-visibility.scss:
--------------------------------------------------------------------------------
1 | // Responsive utilities
2 |
3 | //
4 | // More easily include all the states for responsive-utilities.less.
5 | // [converter] $parent hack
6 | @mixin responsive-visibility($parent) {
7 | #{$parent} {
8 | display: block !important;
9 | }
10 | table#{$parent} { display: table !important; }
11 | tr#{$parent} { display: table-row !important; }
12 | th#{$parent},
13 | td#{$parent} { display: table-cell !important; }
14 | }
15 |
16 | // [converter] $parent hack
17 | @mixin responsive-invisibility($parent) {
18 | #{$parent} {
19 | display: none !important;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_size.scss:
--------------------------------------------------------------------------------
1 | // Sizing shortcuts
2 |
3 | @mixin size($width, $height) {
4 | width: $width;
5 | height: $height;
6 | }
7 |
8 | @mixin square($size) {
9 | @include size($size, $size);
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_tab-focus.scss:
--------------------------------------------------------------------------------
1 | // WebKit-style focus
2 |
3 | @mixin tab-focus() {
4 | // Default
5 | outline: thin dotted;
6 | // WebKit
7 | outline: 5px auto -webkit-focus-ring-color;
8 | outline-offset: -2px;
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_table-row.scss:
--------------------------------------------------------------------------------
1 | // Tables
2 |
3 | @mixin table-row-variant($state, $background) {
4 | // Exact selectors below required to override `.table-striped` and prevent
5 | // inheritance to nested tables.
6 | .table > thead > tr,
7 | .table > tbody > tr,
8 | .table > tfoot > tr {
9 | > td.#{$state},
10 | > th.#{$state},
11 | &.#{$state} > td,
12 | &.#{$state} > th {
13 | background-color: $background;
14 | }
15 | }
16 |
17 | // Hover states for `.table-hover`
18 | // Note: this is not available for cells or rows within `thead` or `tfoot`.
19 | .table-hover > tbody > tr {
20 | > td.#{$state}:hover,
21 | > th.#{$state}:hover,
22 | &.#{$state}:hover > td,
23 | &:hover > .#{$state},
24 | &.#{$state}:hover > th {
25 | background-color: darken($background, 5%);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss:
--------------------------------------------------------------------------------
1 | // Typography
2 |
3 | // [converter] $parent hack
4 | @mixin text-emphasis-variant($parent, $color) {
5 | #{$parent} {
6 | color: $color;
7 | }
8 | a#{$parent}:hover,
9 | a#{$parent}:focus {
10 | color: darken($color, 10%);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins/_text-overflow.scss:
--------------------------------------------------------------------------------
1 | // Text overflow
2 | // Requires inline-block or block for proper styling
3 |
4 | @mixin text-overflow() {
5 | overflow: hidden;
6 | text-overflow: ellipsis;
7 | white-space: nowrap;
8 | }
9 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bootstrap-sass",
3 | "homepage": "https://github.com/twbs/bootstrap-sass",
4 | "authors": [
5 | "Thomas McDonald",
6 | "Tristan Harward",
7 | "Peter Gumeson",
8 | "Gleb Mazovetskiy"
9 | ],
10 | "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.",
11 | "moduleType": "globals",
12 | "main": [
13 | "assets/stylesheets/_bootstrap.scss",
14 | "assets/javascripts/bootstrap.js"
15 | ],
16 | "keywords": [
17 | "twbs",
18 | "bootstrap",
19 | "sass"
20 | ],
21 | "license": "MIT",
22 | "ignore": [
23 | "**/.*",
24 | "lib",
25 | "tasks",
26 | "templates",
27 | "test",
28 | "*.gemspec",
29 | "Rakefile",
30 | "Gemfile"
31 | ],
32 | "dependencies": {
33 | "jquery": ">= 1.9.0"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "twbs/bootstrap-sass",
3 | "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.",
4 | "keywords": ["bootstrap", "css", "sass"],
5 | "homepage": "http://github.com/twbs/bootstrap-sass",
6 | "authors": [
7 | {
8 | "name": "Thomas McDonald"
9 | },
10 | {
11 | "name": "Tristan Harward"
12 | },
13 | {
14 | "name": "Peter Gumeson"
15 | },
16 | {
17 | "name": "Gleb Mazovetskiy"
18 | },
19 | {
20 | "name": "Mark Otto"
21 | },
22 | {
23 | "name": "Jacob Thornton"
24 | }
25 | ],
26 | "support": {
27 | "issues": "https://github.com/twbs/bootstrap-sass/issues"
28 | },
29 | "license": "MIT",
30 | "extra": {
31 | "branch-alias": {
32 | "dev-master": "3.3.x-dev"
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bootstrap-sass",
3 | "version": "3.3.5",
4 | "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.",
5 | "main": "assets/javascripts/bootstrap.js",
6 | "repository": {
7 | "type": "git",
8 | "url": "git://github.com/twbs/bootstrap-sass"
9 | },
10 | "keywords": [
11 | "bootstrap",
12 | "sass",
13 | "css"
14 | ],
15 | "contributors": [
16 | "Thomas McDonald",
17 | "Tristan Harward",
18 | "Peter Gumeson",
19 | "Gleb Mazovetskiy"
20 | ],
21 | "license": "MIT",
22 | "bugs": {
23 | "url": "https://github.com/twbs/bootstrap-sass/issues"
24 | },
25 | "devDependencies": {
26 | "node-sass": "~2.0",
27 | "mincer": "~1.2",
28 | "ejs": "~1.0"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/bootstrap-sass-official/sache.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bootstrap-sass",
3 | "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications",
4 | "tags": ["bootstrap", "grid", "typography", "buttons", "ui", "responsive-web-design"]
5 | }
6 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "components-font-awesome",
3 | "description": "Font Awesome, the iconic font designed for use with Twitter Bootstrap.",
4 | "repository": {
5 | "type": "git",
6 | "url": "git://github.com/components/font-awesome.git"
7 | },
8 | "main": [
9 | "css/font-awesome.css",
10 | "scss/font-awesome.scss",
11 | "fonts/fontawesome-webfont.eot",
12 | "fonts/fontawesome-webfont.woff",
13 | "fonts/fontawesome-webfont.ttf",
14 | "fonts/fontawesome-webfont.svg"
15 | ],
16 | "license": [
17 | "MIT",
18 | "OFL-1.1"
19 | ],
20 | "ignore": [
21 | "Makefile",
22 | "component.json",
23 | "composer.json"
24 | ],
25 | "homepage": "https://github.com/components/font-awesome",
26 | "version": "4.3.0",
27 | "_release": "4.3.0",
28 | "_resolution": {
29 | "type": "version",
30 | "tag": "4.3.0",
31 | "commit": "73acf4d65eadd8d127bafc7bd510240ea3979e83"
32 | },
33 | "_source": "git://github.com/components/font-awesome.git",
34 | "_target": "*",
35 | "_originalSource": "components-font-awesome"
36 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/.gitignore:
--------------------------------------------------------------------------------
1 | /components/
2 | /data/
3 | /vendor/
4 | composer.lock
5 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/README.md:
--------------------------------------------------------------------------------
1 | Font Awesome
2 | ============
3 |
4 | Shim repository for Font Awesome.
5 |
6 | The full suite of pictographic icons, examples, and documentation can be found at:
7 | http://fortawesome.github.com/Font-Awesome/
8 |
9 |
10 | Package Managers
11 | ----------------
12 |
13 | * [Bower](http://bower.io): `components-font-awesome`
14 | * [Component](https://github.com/component/component): `components/font-awesome`
15 | * [Composer](http://packagist.org/packages/components/font-awesome): `components/font-awesome`
16 |
17 |
18 | License
19 | -------
20 |
21 | - The Font Awesome font is licensed under the SIL Open Font License - http://scripts.sil.org/OFL
22 | - Font Awesome CSS, LESS, and SASS files are licensed under the MIT License - http://opensource.org/licenses/mit-license.html
23 | - The Font Awesome pictograms are licensed under the CC BY 3.0 License - http://creativecommons.org/licenses/by/3.0/
24 | - Attribution is no longer required in Font Awesome 3.0, but much appreciated: "Font Awesome by Dave Gandy - http://fortawesome.github.com/Font-Awesome"
25 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "components-font-awesome",
3 | "description": "Font Awesome, the iconic font designed for use with Twitter Bootstrap.",
4 | "repository": {
5 | "type": "git",
6 | "url": "git://github.com/components/font-awesome.git"
7 | },
8 | "main": [
9 | "css/font-awesome.css",
10 | "scss/font-awesome.scss",
11 | "fonts/fontawesome-webfont.eot",
12 | "fonts/fontawesome-webfont.woff",
13 | "fonts/fontawesome-webfont.ttf",
14 | "fonts/fontawesome-webfont.svg"
15 | ],
16 | "license": [
17 | "MIT",
18 | "OFL-1.1"
19 | ],
20 | "ignore": [
21 | "Makefile",
22 | "component.json",
23 | "composer.json"
24 | ]
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/components-font-awesome/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wusuopu/rails-billing/007ff2e4fbb6f164afa310f691797ee556a2ff9c/vendor/assets/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/animated.less:
--------------------------------------------------------------------------------
1 | // Animated Icons
2 | // --------------------------
3 |
4 | .@{fa-css-prefix}-spin {
5 | -webkit-animation: fa-spin 2s infinite linear;
6 | animation: fa-spin 2s infinite linear;
7 | }
8 |
9 | .@{fa-css-prefix}-pulse {
10 | -webkit-animation: fa-spin 1s infinite steps(8);
11 | animation: fa-spin 1s infinite steps(8);
12 | }
13 |
14 | @-webkit-keyframes fa-spin {
15 | 0% {
16 | -webkit-transform: rotate(0deg);
17 | transform: rotate(0deg);
18 | }
19 | 100% {
20 | -webkit-transform: rotate(359deg);
21 | transform: rotate(359deg);
22 | }
23 | }
24 |
25 | @keyframes fa-spin {
26 | 0% {
27 | -webkit-transform: rotate(0deg);
28 | transform: rotate(0deg);
29 | }
30 | 100% {
31 | -webkit-transform: rotate(359deg);
32 | transform: rotate(359deg);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/bordered-pulled.less:
--------------------------------------------------------------------------------
1 | // Bordered & Pulled
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-border {
5 | padding: .2em .25em .15em;
6 | border: solid .08em @fa-border-color;
7 | border-radius: .1em;
8 | }
9 |
10 | .pull-right { float: right; }
11 | .pull-left { float: left; }
12 |
13 | .@{fa-css-prefix} {
14 | &.pull-left { margin-right: .3em; }
15 | &.pull-right { margin-left: .3em; }
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/core.less:
--------------------------------------------------------------------------------
1 | // Base Class Definition
2 | // -------------------------
3 |
4 | .@{fa-css-prefix} {
5 | display: inline-block;
6 | font: normal normal normal @fa-font-size-base/1 FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/fixed-width.less:
--------------------------------------------------------------------------------
1 | // Fixed Width Icons
2 | // -------------------------
3 | .@{fa-css-prefix}-fw {
4 | width: (18em / 14);
5 | text-align: center;
6 | }
7 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/font-awesome.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4 | */
5 |
6 | @import "variables.less";
7 | @import "mixins.less";
8 | @import "path.less";
9 | @import "core.less";
10 | @import "larger.less";
11 | @import "fixed-width.less";
12 | @import "list.less";
13 | @import "bordered-pulled.less";
14 | @import "animated.less";
15 | @import "rotated-flipped.less";
16 | @import "stacked.less";
17 | @import "icons.less";
18 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/larger.less:
--------------------------------------------------------------------------------
1 | // Icon Sizes
2 | // -------------------------
3 |
4 | /* makes the font 33% larger relative to the icon container */
5 | .@{fa-css-prefix}-lg {
6 | font-size: (4em / 3);
7 | line-height: (3em / 4);
8 | vertical-align: -15%;
9 | }
10 | .@{fa-css-prefix}-2x { font-size: 2em; }
11 | .@{fa-css-prefix}-3x { font-size: 3em; }
12 | .@{fa-css-prefix}-4x { font-size: 4em; }
13 | .@{fa-css-prefix}-5x { font-size: 5em; }
14 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/list.less:
--------------------------------------------------------------------------------
1 | // List Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-ul {
5 | padding-left: 0;
6 | margin-left: @fa-li-width;
7 | list-style-type: none;
8 | > li { position: relative; }
9 | }
10 | .@{fa-css-prefix}-li {
11 | position: absolute;
12 | left: -@fa-li-width;
13 | width: @fa-li-width;
14 | top: (2em / 14);
15 | text-align: center;
16 | &.@{fa-css-prefix}-lg {
17 | left: (-@fa-li-width + (4em / 14));
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/mixins.less:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------
3 |
4 | .fa-icon() {
5 | display: inline-block;
6 | font: normal normal normal @fa-font-size-base/1 FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox
12 |
13 | }
14 |
15 | .fa-icon-rotate(@degrees, @rotation) {
16 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation);
17 | -webkit-transform: rotate(@degrees);
18 | -ms-transform: rotate(@degrees);
19 | transform: rotate(@degrees);
20 | }
21 |
22 | .fa-icon-flip(@horiz, @vert, @rotation) {
23 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1);
24 | -webkit-transform: scale(@horiz, @vert);
25 | -ms-transform: scale(@horiz, @vert);
26 | transform: scale(@horiz, @vert);
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/path.less:
--------------------------------------------------------------------------------
1 | /* FONT PATH
2 | * -------------------------- */
3 |
4 | @font-face {
5 | font-family: 'FontAwesome';
6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}');
7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'),
8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'),
9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'),
10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'),
11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg');
12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/rotated-flipped.less:
--------------------------------------------------------------------------------
1 | // Rotated & Flipped Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }
5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); }
6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); }
7 |
8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); }
9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); }
10 |
11 | // Hook for IE8-9
12 | // -------------------------
13 |
14 | :root .@{fa-css-prefix}-rotate-90,
15 | :root .@{fa-css-prefix}-rotate-180,
16 | :root .@{fa-css-prefix}-rotate-270,
17 | :root .@{fa-css-prefix}-flip-horizontal,
18 | :root .@{fa-css-prefix}-flip-vertical {
19 | filter: none;
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/less/stacked.less:
--------------------------------------------------------------------------------
1 | // Stacked Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-stack {
5 | position: relative;
6 | display: inline-block;
7 | width: 2em;
8 | height: 2em;
9 | line-height: 2em;
10 | vertical-align: middle;
11 | }
12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
13 | position: absolute;
14 | left: 0;
15 | width: 100%;
16 | text-align: center;
17 | }
18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; }
19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; }
20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; }
21 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_animated.scss:
--------------------------------------------------------------------------------
1 | // Spinning Icons
2 | // --------------------------
3 |
4 | .#{$fa-css-prefix}-spin {
5 | -webkit-animation: fa-spin 2s infinite linear;
6 | animation: fa-spin 2s infinite linear;
7 | }
8 |
9 | .#{$fa-css-prefix}-pulse {
10 | -webkit-animation: fa-spin 1s infinite steps(8);
11 | animation: fa-spin 1s infinite steps(8);
12 | }
13 |
14 | @-webkit-keyframes fa-spin {
15 | 0% {
16 | -webkit-transform: rotate(0deg);
17 | transform: rotate(0deg);
18 | }
19 | 100% {
20 | -webkit-transform: rotate(359deg);
21 | transform: rotate(359deg);
22 | }
23 | }
24 |
25 | @keyframes fa-spin {
26 | 0% {
27 | -webkit-transform: rotate(0deg);
28 | transform: rotate(0deg);
29 | }
30 | 100% {
31 | -webkit-transform: rotate(359deg);
32 | transform: rotate(359deg);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_bordered-pulled.scss:
--------------------------------------------------------------------------------
1 | // Bordered & Pulled
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-border {
5 | padding: .2em .25em .15em;
6 | border: solid .08em $fa-border-color;
7 | border-radius: .1em;
8 | }
9 |
10 | .pull-right { float: right; }
11 | .pull-left { float: left; }
12 |
13 | .#{$fa-css-prefix} {
14 | &.pull-left { margin-right: .3em; }
15 | &.pull-right { margin-left: .3em; }
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_core.scss:
--------------------------------------------------------------------------------
1 | // Base Class Definition
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix} {
5 | display: inline-block;
6 | font: normal normal normal #{$fa-font-size-base}/1 FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_fixed-width.scss:
--------------------------------------------------------------------------------
1 | // Fixed Width Icons
2 | // -------------------------
3 | .#{$fa-css-prefix}-fw {
4 | width: (18em / 14);
5 | text-align: center;
6 | }
7 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_larger.scss:
--------------------------------------------------------------------------------
1 | // Icon Sizes
2 | // -------------------------
3 |
4 | /* makes the font 33% larger relative to the icon container */
5 | .#{$fa-css-prefix}-lg {
6 | font-size: (4em / 3);
7 | line-height: (3em / 4);
8 | vertical-align: -15%;
9 | }
10 | .#{$fa-css-prefix}-2x { font-size: 2em; }
11 | .#{$fa-css-prefix}-3x { font-size: 3em; }
12 | .#{$fa-css-prefix}-4x { font-size: 4em; }
13 | .#{$fa-css-prefix}-5x { font-size: 5em; }
14 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_list.scss:
--------------------------------------------------------------------------------
1 | // List Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-ul {
5 | padding-left: 0;
6 | margin-left: $fa-li-width;
7 | list-style-type: none;
8 | > li { position: relative; }
9 | }
10 | .#{$fa-css-prefix}-li {
11 | position: absolute;
12 | left: -$fa-li-width;
13 | width: $fa-li-width;
14 | top: (2em / 14);
15 | text-align: center;
16 | &.#{$fa-css-prefix}-lg {
17 | left: -$fa-li-width + (4em / 14);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_mixins.scss:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------
3 |
4 | @mixin fa-icon() {
5 | display: inline-block;
6 | font: normal normal normal #{$fa-font-size-base}/1 FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox
12 |
13 | }
14 |
15 | @mixin fa-icon-rotate($degrees, $rotation) {
16 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
17 | -webkit-transform: rotate($degrees);
18 | -ms-transform: rotate($degrees);
19 | transform: rotate($degrees);
20 | }
21 |
22 | @mixin fa-icon-flip($horiz, $vert, $rotation) {
23 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
24 | -webkit-transform: scale($horiz, $vert);
25 | -ms-transform: scale($horiz, $vert);
26 | transform: scale($horiz, $vert);
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_path.scss:
--------------------------------------------------------------------------------
1 | /* FONT PATH
2 | * -------------------------- */
3 |
4 | @font-face {
5 | font-family: 'FontAwesome';
6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}');
7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'),
8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'),
9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'),
10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'),
11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg');
12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_rotated-flipped.scss:
--------------------------------------------------------------------------------
1 | // Rotated & Flipped Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); }
5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); }
6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); }
7 |
8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); }
9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); }
10 |
11 | // Hook for IE8-9
12 | // -------------------------
13 |
14 | :root .#{$fa-css-prefix}-rotate-90,
15 | :root .#{$fa-css-prefix}-rotate-180,
16 | :root .#{$fa-css-prefix}-rotate-270,
17 | :root .#{$fa-css-prefix}-flip-horizontal,
18 | :root .#{$fa-css-prefix}-flip-vertical {
19 | filter: none;
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/_stacked.scss:
--------------------------------------------------------------------------------
1 | // Stacked Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-stack {
5 | position: relative;
6 | display: inline-block;
7 | width: 2em;
8 | height: 2em;
9 | line-height: 2em;
10 | vertical-align: middle;
11 | }
12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x {
13 | position: absolute;
14 | left: 0;
15 | width: 100%;
16 | text-align: center;
17 | }
18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; }
19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; }
20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; }
21 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/components-font-awesome/scss/font-awesome.scss:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4 | */
5 |
6 | @import "variables";
7 | @import "mixins";
8 | @import "path";
9 | @import "core";
10 | @import "larger";
11 | @import "fixed-width";
12 | @import "list";
13 | @import "bordered-pulled";
14 | @import "animated";
15 | @import "rotated-flipped";
16 | @import "stacked";
17 | @import "icons";
18 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery",
3 | "version": "2.1.4",
4 | "main": "dist/jquery.js",
5 | "license": "MIT",
6 | "ignore": [
7 | "**/.*",
8 | "build",
9 | "dist/cdn",
10 | "speed",
11 | "test",
12 | "*.md",
13 | "AUTHORS.txt",
14 | "Gruntfile.js",
15 | "package.json"
16 | ],
17 | "devDependencies": {
18 | "sizzle": "2.1.1-jquery.2.1.2",
19 | "requirejs": "2.1.10",
20 | "qunit": "1.14.0",
21 | "sinon": "1.8.1"
22 | },
23 | "keywords": [
24 | "jquery",
25 | "javascript",
26 | "library"
27 | ],
28 | "homepage": "https://github.com/jquery/jquery",
29 | "_release": "2.1.4",
30 | "_resolution": {
31 | "type": "version",
32 | "tag": "2.1.4",
33 | "commit": "7751e69b615c6eca6f783a81e292a55725af6b85"
34 | },
35 | "_source": "git://github.com/jquery/jquery.git",
36 | "_target": ">= 1.9.0",
37 | "_originalSource": "jquery"
38 | }
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/MIT-LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright 2014 jQuery Foundation and other contributors
2 | http://jquery.com/
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining
5 | a copy of this software and associated documentation files (the
6 | "Software"), to deal in the Software without restriction, including
7 | without limitation the rights to use, copy, modify, merge, publish,
8 | distribute, sublicense, and/or sell copies of the Software, and to
9 | permit persons to whom the Software is furnished to do so, subject to
10 | the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be
13 | included in all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery",
3 | "version": "2.1.4",
4 | "main": "dist/jquery.js",
5 | "license": "MIT",
6 | "ignore": [
7 | "**/.*",
8 | "build",
9 | "dist/cdn",
10 | "speed",
11 | "test",
12 | "*.md",
13 | "AUTHORS.txt",
14 | "Gruntfile.js",
15 | "package.json"
16 | ],
17 | "devDependencies": {
18 | "sizzle": "2.1.1-jquery.2.1.2",
19 | "requirejs": "2.1.10",
20 | "qunit": "1.14.0",
21 | "sinon": "1.8.1"
22 | },
23 | "keywords": [
24 | "jquery",
25 | "javascript",
26 | "library"
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/src/ajax/load.js:
--------------------------------------------------------------------------------
1 | define([
2 | "../core",
3 | "../core/parseHTML",
4 | "../ajax",
5 | "../traversing",
6 | "../manipulation",
7 | "../selector",
8 | // Optional event/alias dependency
9 | "../event/alias"
10 | ], function( jQuery ) {
11 |
12 | // Keep a copy of the old load method
13 | var _load = jQuery.fn.load;
14 |
15 | /**
16 | * Load a url into a page
17 | */
18 | jQuery.fn.load = function( url, params, callback ) {
19 | if ( typeof url !== "string" && _load ) {
20 | return _load.apply( this, arguments );
21 | }
22 |
23 | var selector, type, response,
24 | self = this,
25 | off = url.indexOf(" ");
26 |
27 | if ( off >= 0 ) {
28 | selector = jQuery.trim( url.slice( off ) );
29 | url = url.slice( 0, off );
30 | }
31 |
32 | // If it's a function
33 | if ( jQuery.isFunction( params ) ) {
34 |
35 | // We assume that it's the callback
36 | callback = params;
37 | params = undefined;
38 |
39 | // Otherwise, build a param string
40 | } else if ( params && typeof params === "object" ) {
41 | type = "POST";
42 | }
43 |
44 | // If we have elements to modify, make the request
45 | if ( self.length > 0 ) {
46 | jQuery.ajax({
47 | url: url,
48 |
49 | // if "type" variable is undefined, then "GET" method will be used
50 | type: type,
51 | dataType: "html",
52 | data: params
53 | }).done(function( responseText ) {
54 |
55 | // Save response for use in complete callback
56 | response = arguments;
57 |
58 | self.html( selector ?
59 |
60 | // If a selector was specified, locate the right elements in a dummy div
61 | // Exclude scripts to avoid IE 'Permission Denied' errors
62 | jQuery("").append( jQuery.parseHTML( responseText ) ).find( selector ) :
63 |
64 | // Otherwise use the full result
65 | responseText );
66 |
67 | }).complete( callback && function( jqXHR, status ) {
68 | self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );
69 | });
70 | }
71 |
72 | return this;
73 | };
74 |
75 | });
76 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js:
--------------------------------------------------------------------------------
1 | define([
2 | "../core"
3 | ], function( jQuery ) {
4 |
5 | // Support: Android 2.3
6 | // Workaround failure to string-cast null input
7 | jQuery.parseJSON = function( data ) {
8 | return JSON.parse( data + "" );
9 | };
10 |
11 | return jQuery.parseJSON;
12 |
13 | });
14 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/src/ajax/parseXML.js:
--------------------------------------------------------------------------------
1 | define([
2 | "../core"
3 | ], function( jQuery ) {
4 |
5 | // Cross-browser xml parsing
6 | jQuery.parseXML = function( data ) {
7 | var xml, tmp;
8 | if ( !data || typeof data !== "string" ) {
9 | return null;
10 | }
11 |
12 | // Support: IE9
13 | try {
14 | tmp = new DOMParser();
15 | xml = tmp.parseFromString( data, "text/xml" );
16 | } catch ( e ) {
17 | xml = undefined;
18 | }
19 |
20 | if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
21 | jQuery.error( "Invalid XML: " + data );
22 | }
23 | return xml;
24 | };
25 |
26 | return jQuery.parseXML;
27 |
28 | });
29 |
--------------------------------------------------------------------------------
/vendor/assets/bower_components/jquery/src/ajax/script.js:
--------------------------------------------------------------------------------
1 | define([
2 | "../core",
3 | "../ajax"
4 | ], function( jQuery ) {
5 |
6 | // Install script dataType
7 | jQuery.ajaxSetup({
8 | accepts: {
9 | script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
10 | },
11 | contents: {
12 | script: /(?:java|ecma)script/
13 | },
14 | converters: {
15 | "text script": function( text ) {
16 | jQuery.globalEval( text );
17 | return text;
18 | }
19 | }
20 | });
21 |
22 | // Handle cache's special case and crossDomain
23 | jQuery.ajaxPrefilter( "script", function( s ) {
24 | if ( s.cache === undefined ) {
25 | s.cache = false;
26 | }
27 | if ( s.crossDomain ) {
28 | s.type = "GET";
29 | }
30 | });
31 |
32 | // Bind script tag hack transport
33 | jQuery.ajaxTransport( "script", function( s ) {
34 | // This transport only deals with cross domain requests
35 | if ( s.crossDomain ) {
36 | var script, callback;
37 | return {
38 | send: function( _, complete ) {
39 | script = jQuery("