├── .babelrc ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .gitignore ├── Gemfile ├── Gemfile.lock ├── README.md ├── Rakefile ├── app ├── assets │ ├── config │ │ └── manifest.js │ ├── images │ │ ├── dutch.gif │ │ ├── favicon.ico │ │ ├── favicon.png │ │ ├── large.jpg │ │ ├── rails.png │ │ └── ruby-red.png │ ├── javascripts │ │ ├── application.js │ │ ├── cable.js │ │ ├── channels │ │ │ └── .keep │ │ ├── pages.coffee │ │ └── posts.coffee │ └── stylesheets │ │ ├── _defaults.scss │ │ ├── application.css │ │ └── styles.scss ├── channels │ └── application_cable │ │ ├── channel.rb │ │ └── connection.rb ├── controllers │ ├── application_controller.rb │ ├── concerns │ │ └── .keep │ ├── pages_controller.rb │ └── posts_controller.rb ├── helpers │ ├── application_helper.rb │ ├── pages_helper.rb │ └── posts_helper.rb ├── jobs │ └── application_job.rb ├── mailers │ └── application_mailer.rb ├── models │ ├── application_record.rb │ ├── concerns │ │ └── .keep │ └── post.rb └── views │ ├── layouts │ ├── application.html.erb │ ├── mailer.html.erb │ └── mailer.text.erb │ ├── pages │ ├── about.html.erb │ └── index.html.erb │ ├── partials │ ├── _emssg.html.erb │ └── _header.html.erb │ └── posts │ ├── edit.html.erb │ ├── index.html.erb │ ├── new.html.erb │ └── show.html.erb ├── bin ├── bundle ├── rails ├── rake ├── setup ├── update └── yarn ├── config.ru ├── config ├── application.rb ├── boot.rb ├── cable.yml ├── database.yml ├── environment.rb ├── environments │ ├── development.rb │ ├── production.rb │ └── test.rb ├── initializers │ ├── application_controller_renderer.rb │ ├── assets.rb │ ├── backtrace_silencers.rb │ ├── cookies_serializer.rb │ ├── filter_parameter_logging.rb │ ├── inflections.rb │ ├── mime_types.rb │ └── wrap_parameters.rb ├── locales │ └── en.yml ├── puma.rb ├── routes.rb └── secrets.yml ├── db.sql ├── db ├── migrate │ └── 20170913110049_create_posts.rb ├── schema.rb └── seeds.rb ├── lib ├── assets │ └── .keep └── tasks │ └── .keep ├── log └── .keep ├── package-lock.json ├── package.json ├── public ├── 404.html ├── 422.html ├── 500.html ├── js │ ├── dist │ │ └── bundle.js │ └── src │ │ └── main.js └── robots.txt ├── screenshots ├── Snap 2017-09-15 at 20.52.14.png ├── Snap 2017-09-15 at 20.52.25.png ├── Snap 2017-09-15 at 20.53.58.png └── Snap 2017-09-15 at 20.58.56.png ├── test ├── application_system_test_case.rb ├── controllers │ ├── .keep │ ├── pages_controller_test.rb │ └── posts_controller_test.rb ├── fixtures │ ├── .keep │ ├── files │ │ └── .keep │ └── posts.yml ├── helpers │ └── .keep ├── integration │ └── .keep ├── mailers │ └── .keep ├── models │ ├── .keep │ └── post_test.rb ├── system │ └── .keep └── test_helper.rb ├── tmp └── .keep ├── vendor └── .keep ├── webpack.config.js └── yarn.lock /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | "env" 4 | ] 5 | } -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # http.editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | .vscode/ 2 | node_modules/ 3 | app/assets/javascripts/* 4 | public/js/dist/* 5 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "env": { 3 | "browser": true, 4 | "commonjs": true, 5 | "es6": true 6 | }, 7 | "extends": "eslint:recommended", 8 | "parserOptions": { 9 | "sourceType": "module" 10 | }, 11 | "rules": { 12 | "indent": [ 13 | "error", 14 | 2 15 | ], 16 | "quotes": [ 17 | "error", 18 | "single" 19 | ], 20 | "semi": [ 21 | "error", 22 | "never" 23 | ], 24 | 'no-console': 'off', 25 | 'no-ternary': 0, 26 | 'no-nested-ternary': 0, 27 | 'multiline-ternary': ["error", "never"] 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /.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 all logfiles and tempfiles. 11 | /log/* 12 | /tmp/* 13 | !/log/.keep 14 | !/tmp/.keep 15 | 16 | /node_modules 17 | /yarn-error.log 18 | 19 | .byebug_history 20 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | git_source(:github) do |repo_name| 4 | repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") 5 | "https://github.com/#{repo_name}.git" 6 | end 7 | 8 | # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 9 | gem 'rails', '~> 5.1.4' 10 | # Use mysql as the database for Active Record 11 | gem 'mysql2', '0.3.21' 12 | # Use Puma as the app server 13 | gem 'puma', '~> 3.7' 14 | # Use SCSS for stylesheets 15 | gem 'sass-rails', '~> 5.0' 16 | # Use Uglifier as compressor for JavaScript assets 17 | gem 'uglifier', '>= 1.3.0' 18 | # See https://github.com/rails/execjs#readme for more supported runtimes 19 | # gem 'therubyracer', platforms: :ruby 20 | 21 | # Use CoffeeScript for .coffee assets and views 22 | gem 'coffee-rails', '~> 4.2' 23 | # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks 24 | gem 'turbolinks', '~> 5' 25 | # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 26 | gem 'jbuilder', '~> 2.5' 27 | # Use Redis adapter to run Action Cable in production 28 | # gem 'redis', '~> 3.0' 29 | # Use ActiveModel has_secure_password 30 | # gem 'bcrypt', '~> 3.1.7' 31 | 32 | # Use Capistrano for deployment 33 | # gem 'capistrano-rails', group: :development 34 | 35 | group :development, :test do 36 | # Call 'byebug' anywhere in the code to stop execution and get a debugger console 37 | gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] 38 | # Adds support for Capybara system testing and selenium driver 39 | gem 'capybara', '~> 2.13' 40 | gem 'selenium-webdriver' 41 | end 42 | 43 | group :development do 44 | # Access an IRB console on exception pages or by using <%= console %> anywhere in the code. 45 | gem 'web-console', '>= 3.3.0' 46 | end 47 | 48 | # Windows does not include zoneinfo files, so bundle the tzinfo-data gem 49 | gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] 50 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | actioncable (5.1.4) 5 | actionpack (= 5.1.4) 6 | nio4r (~> 2.0) 7 | websocket-driver (~> 0.6.1) 8 | actionmailer (5.1.4) 9 | actionpack (= 5.1.4) 10 | actionview (= 5.1.4) 11 | activejob (= 5.1.4) 12 | mail (~> 2.5, >= 2.5.4) 13 | rails-dom-testing (~> 2.0) 14 | actionpack (5.1.4) 15 | actionview (= 5.1.4) 16 | activesupport (= 5.1.4) 17 | rack (~> 2.0) 18 | rack-test (>= 0.6.3) 19 | rails-dom-testing (~> 2.0) 20 | rails-html-sanitizer (~> 1.0, >= 1.0.2) 21 | actionview (5.1.4) 22 | activesupport (= 5.1.4) 23 | builder (~> 3.1) 24 | erubi (~> 1.4) 25 | rails-dom-testing (~> 2.0) 26 | rails-html-sanitizer (~> 1.0, >= 1.0.3) 27 | activejob (5.1.4) 28 | activesupport (= 5.1.4) 29 | globalid (>= 0.3.6) 30 | activemodel (5.1.4) 31 | activesupport (= 5.1.4) 32 | activerecord (5.1.4) 33 | activemodel (= 5.1.4) 34 | activesupport (= 5.1.4) 35 | arel (~> 8.0) 36 | activesupport (5.1.4) 37 | concurrent-ruby (~> 1.0, >= 1.0.2) 38 | i18n (~> 0.7) 39 | minitest (~> 5.1) 40 | tzinfo (~> 1.1) 41 | addressable (2.5.2) 42 | public_suffix (>= 2.0.2, < 4.0) 43 | arel (8.0.0) 44 | bindex (0.5.0) 45 | builder (3.2.3) 46 | byebug (9.1.0) 47 | capybara (2.15.1) 48 | addressable 49 | mini_mime (>= 0.1.3) 50 | nokogiri (>= 1.3.3) 51 | rack (>= 1.0.0) 52 | rack-test (>= 0.5.4) 53 | xpath (~> 2.0) 54 | childprocess (0.7.1) 55 | ffi (~> 1.0, >= 1.0.11) 56 | coffee-rails (4.2.2) 57 | coffee-script (>= 2.2.0) 58 | railties (>= 4.0.0) 59 | coffee-script (2.4.1) 60 | coffee-script-source 61 | execjs 62 | coffee-script-source (1.12.2) 63 | concurrent-ruby (1.0.5) 64 | erubi (1.6.1) 65 | execjs (2.7.0) 66 | ffi (1.9.18-x86-mingw32) 67 | globalid (0.4.0) 68 | activesupport (>= 4.2.0) 69 | i18n (0.8.6) 70 | jbuilder (2.7.0) 71 | activesupport (>= 4.2.0) 72 | multi_json (>= 1.2) 73 | loofah (2.0.3) 74 | nokogiri (>= 1.5.9) 75 | mail (2.6.6) 76 | mime-types (>= 1.16, < 4) 77 | method_source (0.8.2) 78 | mime-types (3.1) 79 | mime-types-data (~> 3.2015) 80 | mime-types-data (3.2016.0521) 81 | mini_mime (0.1.4) 82 | mini_portile2 (2.2.0) 83 | minitest (5.10.3) 84 | multi_json (1.12.2) 85 | mysql2 (0.3.21-x86-mingw32) 86 | nio4r (2.1.0) 87 | nokogiri (1.8.0-x86-mingw32) 88 | mini_portile2 (~> 2.2.0) 89 | public_suffix (3.0.0) 90 | puma (3.10.0) 91 | rack (2.0.3) 92 | rack-test (0.7.0) 93 | rack (>= 1.0, < 3) 94 | rails (5.1.4) 95 | actioncable (= 5.1.4) 96 | actionmailer (= 5.1.4) 97 | actionpack (= 5.1.4) 98 | actionview (= 5.1.4) 99 | activejob (= 5.1.4) 100 | activemodel (= 5.1.4) 101 | activerecord (= 5.1.4) 102 | activesupport (= 5.1.4) 103 | bundler (>= 1.3.0) 104 | railties (= 5.1.4) 105 | sprockets-rails (>= 2.0.0) 106 | rails-dom-testing (2.0.3) 107 | activesupport (>= 4.2.0) 108 | nokogiri (>= 1.6) 109 | rails-html-sanitizer (1.0.3) 110 | loofah (~> 2.0) 111 | railties (5.1.4) 112 | actionpack (= 5.1.4) 113 | activesupport (= 5.1.4) 114 | method_source 115 | rake (>= 0.8.7) 116 | thor (>= 0.18.1, < 2.0) 117 | rake (12.1.0) 118 | rb-fsevent (0.10.2) 119 | rb-inotify (0.9.10) 120 | ffi (>= 0.5.0, < 2) 121 | rubyzip (1.2.1) 122 | sass (3.5.1) 123 | sass-listen (~> 4.0.0) 124 | sass-listen (4.0.0) 125 | rb-fsevent (~> 0.9, >= 0.9.4) 126 | rb-inotify (~> 0.9, >= 0.9.7) 127 | sass-rails (5.0.6) 128 | railties (>= 4.0.0, < 6) 129 | sass (~> 3.1) 130 | sprockets (>= 2.8, < 4.0) 131 | sprockets-rails (>= 2.0, < 4.0) 132 | tilt (>= 1.1, < 3) 133 | selenium-webdriver (3.5.2) 134 | childprocess (~> 0.5) 135 | rubyzip (~> 1.0) 136 | sprockets (3.7.1) 137 | concurrent-ruby (~> 1.0) 138 | rack (> 1, < 3) 139 | sprockets-rails (3.2.1) 140 | actionpack (>= 4.0) 141 | activesupport (>= 4.0) 142 | sprockets (>= 3.0.0) 143 | thor (0.20.0) 144 | thread_safe (0.3.6) 145 | tilt (2.0.8) 146 | turbolinks (5.0.1) 147 | turbolinks-source (~> 5) 148 | turbolinks-source (5.0.3) 149 | tzinfo (1.2.3) 150 | thread_safe (~> 0.1) 151 | tzinfo-data (1.2017.2) 152 | tzinfo (>= 1.0.0) 153 | uglifier (3.2.0) 154 | execjs (>= 0.3.0, < 3) 155 | web-console (3.5.1) 156 | actionview (>= 5.0) 157 | activemodel (>= 5.0) 158 | bindex (>= 0.4.0) 159 | railties (>= 5.0) 160 | websocket-driver (0.6.5) 161 | websocket-extensions (>= 0.1.0) 162 | websocket-extensions (0.1.2) 163 | xpath (2.1.0) 164 | nokogiri (~> 1.3) 165 | 166 | PLATFORMS 167 | x86-mingw32 168 | 169 | DEPENDENCIES 170 | byebug 171 | capybara (~> 2.13) 172 | coffee-rails (~> 4.2) 173 | jbuilder (~> 2.5) 174 | mysql2 (= 0.3.21) 175 | puma (~> 3.7) 176 | rails (~> 5.1.4) 177 | sass-rails (~> 5.0) 178 | selenium-webdriver 179 | turbolinks (~> 5) 180 | tzinfo-data 181 | uglifier (>= 1.3.0) 182 | web-console (>= 3.3.0) 183 | 184 | BUNDLED WITH 185 | 1.13.7 186 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Rails-Notes-App 2 | A Post-App created with Rails!! 3 | 4 | **No longer maintained.** 5 | 6 | # Quick Links 7 | 1. [Screenshots](#screenshots) 8 | 2. [Usage](#usage) 9 | 10 | # Screenshots 11 | ![alt text](https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/master/screenshots/Snap%202017-09-15%20at%2020.52.14.png) 12 | ![alt text](https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/master/screenshots/Snap%202017-09-15%20at%2020.52.25.png) 13 | ![alt text](https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/master/screenshots/Snap%202017-09-15%20at%2020.58.56.png) 14 | ![alt text](https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/master/screenshots/Snap%202017-09-15%20at%2020.53.58.png) 15 | 16 | # Usage 17 | 1. First install all the dependencies. 18 | ```javascript 19 | bundle install 20 | npm install [OR] yarn 21 | ``` 22 | 2. Open PHPMyAdmin, create a `DB` named `rails-notes-app` & import `db.sql` file. 23 | 3. Create the following environment variables: 24 | ```javascript 25 | RAILS_DB_PASSWORD="DB PASSWORD" 26 | RAILS_SOCKET="MySQL Socket" 27 | ``` 28 | 4. Start the server 29 | ```javascript 30 | rails s 31 | ``` 32 | 5. Now, open it in browser: 33 | ```javascript 34 | localhost:3000 35 | ``` 36 | -------------------------------------------------------------------------------- /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_relative 'config/application' 5 | 6 | Rails.application.load_tasks 7 | -------------------------------------------------------------------------------- /app/assets/config/manifest.js: -------------------------------------------------------------------------------- 1 | //= link_tree ../images 2 | //= link_directory ../javascripts .js 3 | //= link_directory ../stylesheets .css 4 | -------------------------------------------------------------------------------- /app/assets/images/dutch.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/dutch.gif -------------------------------------------------------------------------------- /app/assets/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/favicon.ico -------------------------------------------------------------------------------- /app/assets/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/favicon.png -------------------------------------------------------------------------------- /app/assets/images/large.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/large.jpg -------------------------------------------------------------------------------- /app/assets/images/rails.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/rails.png -------------------------------------------------------------------------------- /app/assets/images/ruby-red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/images/ruby-red.png -------------------------------------------------------------------------------- /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, or any plugin's 5 | // 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. JavaScript code in this file should be added after the last require_* statement. 9 | // 10 | // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details 11 | // about supported directives. 12 | // 13 | //= require rails-ujs 14 | //= require turbolinks 15 | //= require_tree . 16 | -------------------------------------------------------------------------------- /app/assets/javascripts/cable.js: -------------------------------------------------------------------------------- 1 | // Action Cable provides the framework to deal with WebSockets in Rails. 2 | // You can generate new channels where WebSocket features live using the `rails generate channel` command. 3 | // 4 | //= require action_cable 5 | //= require_self 6 | //= require_tree ./channels 7 | 8 | (function() { 9 | this.App || (this.App = {}); 10 | 11 | App.cable = ActionCable.createConsumer(); 12 | 13 | }).call(this); 14 | -------------------------------------------------------------------------------- /app/assets/javascripts/channels/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/assets/javascripts/channels/.keep -------------------------------------------------------------------------------- /app/assets/javascripts/pages.coffee: -------------------------------------------------------------------------------- 1 | # Place all the behaviors and hooks related to the matching controller here. 2 | # All this logic will automatically be available in application.js. 3 | # You can use CoffeeScript in this file: http://coffeescript.org/ 4 | -------------------------------------------------------------------------------- /app/assets/javascripts/posts.coffee: -------------------------------------------------------------------------------- 1 | # Place all the behaviors and hooks related to the matching controller here. 2 | # All this logic will automatically be available in application.js. 3 | # You can use CoffeeScript in this file: http://coffeescript.org/ 4 | -------------------------------------------------------------------------------- /app/assets/stylesheets/_defaults.scss: -------------------------------------------------------------------------------- 1 | $a: #2895F1; 2 | $family: 'Open Sans', 'Roboto', Tahoma, arial, sans-serif; 3 | $dark: #1b2733; 4 | $fb: #fbfbfb; 5 | $ff: #fff; 6 | $ee: #eee; 7 | $pric: #1b9be9; 8 | $d_light: #66757f; 9 | $header: #f9f9f9; 10 | $header_border: #f7f5f5; 11 | $second_border: #f7f9fa; 12 | $third-border: #f6f7f9; 13 | 14 | @mixin center{ 15 | position: absolute; 16 | top: 50%; 17 | left: 50%; 18 | transform: translate(-50%, -50%); 19 | } 20 | 21 | *{ 22 | padding: 0px; 23 | margin: 0px; 24 | } 25 | 26 | body{ 27 | font-family: $family; 28 | background: $fb; 29 | font-size: 13px; 30 | color: #3d464d; 31 | font-weight: normal; 32 | } 33 | 34 | a{ 35 | text-decoration: none; 36 | color: $a; 37 | outline: none; 38 | } 39 | 40 | i{ 41 | pointer-events: none; 42 | } 43 | 44 | hr{ 45 | border: 0; 46 | border-top: 1px solid #c1c7cd; 47 | } 48 | 49 | 50 | .a_disabled{ 51 | cursor: not-allowed !important; 52 | pointer-events: none !important; 53 | background: #6ab9e8 !important; 54 | } 55 | 56 | .sec_btn_disabled{ 57 | cursor: not-allowed !important; 58 | pointer-events: none !important; 59 | color: #d8c3c3 !important; 60 | } 61 | 62 | input[type="text"],input[type="email"],input[type="password"],textarea{ 63 | border: 1px solid $ee; 64 | border-radius: 4px; 65 | font-family: $family; 66 | color: #0b867a; 67 | outline: none; 68 | padding: 5px 5px; 69 | } 70 | 71 | input[type="submit"]::-moz-focus-inner, input[type="button"]::-moz-focus-inner{ 72 | padding: 0 !important; 73 | border: 0 none !important; 74 | } 75 | 76 | textarea{ 77 | word-break: break-all; 78 | font-size: 13px; 79 | } 80 | 81 | input[type="text"]:focus,input[type="password"]:focus, input[type="email"]:focus, textarea:focus{ 82 | border: 1px solid #56b4ef !important; 83 | box-shadow: 0px 0px 5px 1px #c8def0; 84 | } 85 | 86 | input[type="submit"],input[type="button"],.pri_btn{ 87 | font-weight: 600; 88 | background: $pric; 89 | border: 1px solid $pric; 90 | color: $ff;; 91 | border-radius: 3px; 92 | cursor: pointer; 93 | outline: none; 94 | &:hover{ opacity: .9; } 95 | &:focus{ background: #198bd0; } 96 | } 97 | 98 | input[type="submit"]:disabled, input[type="button"]:disabled{ 99 | background: #6ab9e8 !important; 100 | cursor: auto !important; 101 | &:hover{ opacity: 1 !important; } 102 | } 103 | 104 | .sec_btn{ 105 | border: 1px solid $ee; 106 | background: $fb; 107 | color: $dark; 108 | border-radius: 3px; 109 | cursor: pointer; 110 | font-weight: 600; 111 | outline: none; 112 | &:hover{ 113 | color: $dark; 114 | background-color: #fff7f7; 115 | } 116 | &:focus{ 117 | color: $dark; 118 | background: #f7ebeb; 119 | } 120 | } 121 | 122 | .home_last_mssg{ 123 | position: relative; 124 | border-radius: 4px; 125 | background:$ff; 126 | border: 1px solid $header_border; 127 | font-size: 14px; 128 | text-align: center; 129 | padding: 10px; 130 | cursor: default; 131 | & img{ 132 | position: relative; 133 | text-align: center; 134 | width: 150px; 135 | display: block; 136 | left: 48%; 137 | transform: translate(-50%); 138 | } 139 | & span{ 140 | position: relative; 141 | text-align: center; 142 | display: block; 143 | left: -5px; 144 | } 145 | } 146 | -------------------------------------------------------------------------------- /app/assets/stylesheets/application.css: -------------------------------------------------------------------------------- 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, or any plugin's 6 | * 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 other CSS/SCSS 10 | * files in this directory. Styles in this file should be added after the last require_* statement. 11 | * It is generally better to create a new file per style scope. 12 | * 13 | *= require_tree . 14 | *= require_self 15 | */ 16 | -------------------------------------------------------------------------------- /app/assets/stylesheets/styles.scss: -------------------------------------------------------------------------------- 1 | @import 'defaults'; 2 | 3 | .header_loggedin{ 4 | background: $ff; 5 | box-shadow: 0 0 5px rgba(0,0,0,0.1); 6 | position: fixed; 7 | width: 100%; 8 | height: 45px; 9 | background: white; 10 | z-index: 2; 11 | top: 0px; 12 | 13 | & a{ 14 | font-size: 14px; 15 | color: $dark; 16 | margin-left: 7px; 17 | padding: 5px 12px; 18 | border-radius: 3px; 19 | display: inline-block; 20 | 21 | &:hover{ background: $second_border; } 22 | 23 | &:focus{ background: $second_border; } 24 | 25 | } 26 | 27 | & .left{ 28 | display: inline-block; 29 | position: relative; 30 | top: 8px; 31 | left: 25px; 32 | } 33 | 34 | & .right { 35 | display: inline-block; 36 | position: absolute; 37 | top: 8px; 38 | right: 3%; 39 | } 40 | 41 | } 42 | 43 | .notes_wrapper{ margin-top: 70px; } 44 | 45 | .note{ 46 | background: $ff; 47 | padding: 10px; 48 | display: block; 49 | font-size: 14px; 50 | border: 1px solid $header_border; 51 | border-radius: 3px; 52 | margin-bottom: 10px; 53 | overflow: auto; 54 | 55 | &:hover{ 56 | border-color: $ee; 57 | } 58 | 59 | & .note_header{ 60 | margin-bottom: 7px; 61 | 62 | & img{ 63 | height: 31px; 64 | width: 31px; 65 | border-radius: 50%; 66 | display: inline-block; 67 | } 68 | 69 | & .note_h_left{ 70 | display: inline-block; 71 | margin-left: 5px; 72 | width: 90%; 73 | 74 | & .note_username{ 75 | display: block; 76 | color: $dark; 77 | font-weight: 600; 78 | position: relative; 79 | top: 2px; 80 | } 81 | 82 | & .note_time{ 83 | font-size: 13px; 84 | color: $d_light; 85 | position: relative; 86 | top: -1px; 87 | } 88 | 89 | } 90 | 91 | } 92 | 93 | & .note_title, & .note_content{ 94 | color: $dark; 95 | } 96 | 97 | & .note_title{ 98 | margin-bottom: 4px; 99 | font-weight: 600; 100 | } 101 | 102 | & .note_actions { 103 | position: relative; 104 | float: right; 105 | 106 | & a { 107 | display: inline-block; 108 | padding: 3px 10px; 109 | } 110 | 111 | } 112 | } 113 | 114 | .page_end{ 115 | padding: 10px; 116 | text-align: center; 117 | font-size: 14px; 118 | margin-top: 10px; 119 | color: $d_light; 120 | cursor: pointer; 121 | border-radius: 3px; 122 | border: 1px solid $fb; 123 | &:hover{ border: 1px solid $ee; } 124 | } 125 | 126 | .home{ 127 | position: relative; 128 | width: 607px; 129 | margin-left: 365px; 130 | margin-bottom: 60px; 131 | & .home_info{ 132 | margin-bottom: 10px; 133 | background: $ff; 134 | padding: 14px 10px; 135 | border: 1px solid $header_border; 136 | border-radius: 3px; 137 | font-size: 15px; 138 | & a{ 139 | position: absolute; 140 | right: 10px; 141 | padding: 4px 12px; 142 | top: 10px; 143 | } 144 | } 145 | } 146 | 147 | // EDIT 148 | .edit{ 149 | position: relative; 150 | width: 400px; 151 | left: 490px; 152 | font-size: 14px; 153 | top: 40px; 154 | 155 | & form > * { 156 | display: block; 157 | width: 100%; 158 | margin-top: 15px; 159 | } 160 | 161 | & form .flash { 162 | width: inherit !important; 163 | margin-top: inherit !important; 164 | } 165 | 166 | & .eb_btns{ 167 | text-align: right; 168 | 169 | & input[type="submit"]{ 170 | display: inline-block; 171 | margin-right: 38px; 172 | padding: 7px 20px; 173 | font-size: 14px; 174 | } 175 | 176 | } 177 | 178 | & .edit_span{ 179 | color: $d_light; 180 | display: block; 181 | position: relative; 182 | font-size: 14px; 183 | margin-bottom: 5px; 184 | } 185 | 186 | & .edit_info{ 187 | 188 | & img{ 189 | width: 35px; 190 | height: 35px; 191 | border-radius: 50%; 192 | position: relative; 193 | display: inline-block; 194 | } 195 | 196 | & span { 197 | position: relative; 198 | top: -12px; 199 | left: 8px; 200 | font-size: 18px; 201 | font-weight: 600; 202 | } 203 | 204 | } 205 | 206 | & input[type='text'], 207 | & input[type='email'], 208 | textarea{ 209 | width: 90%; 210 | padding: 8px; 211 | font-size: 14px; 212 | } 213 | 214 | & textarea{ 215 | height: 200px; 216 | } 217 | 218 | } 219 | 220 | // BLOG PAGE 221 | .blog{ 222 | position: relative; 223 | font-size: 14px; 224 | background: #fff; 225 | padding: 15px; 226 | border-radius: 3px; 227 | box-shadow: 0px 0px 5px 0px rgba(0,0,0,.1); 228 | top: 80px; 229 | 230 | & > * { 231 | display: block; 232 | margin-bottom: 15px; 233 | } 234 | 235 | & .blog_actions { 236 | text-align: right; 237 | margin-bottom: 0px; 238 | 239 | & a { 240 | padding: 4px 10px; 241 | display: inline-block; 242 | } 243 | } 244 | 245 | & .blog_c { 246 | 247 | & .blog_title { 248 | font-weight: 600; 249 | font-size: 17px; 250 | display: block; 251 | margin-bottom: 5px; 252 | } 253 | 254 | & .blog_content { 255 | display: block; 256 | } 257 | 258 | } 259 | 260 | 261 | } 262 | 263 | .flash{ 264 | position: fixed; 265 | background: #333; 266 | left: 2%; 267 | color: $ff; 268 | border-radius: 3px; 269 | padding: 12px 80px 12px 25px; 270 | font-size: 15px; 271 | cursor: pointer; 272 | text-align: left; 273 | z-index: 3; 274 | top: 90%; 275 | 276 | & .flash_mssg { 277 | position: relative; 278 | } 279 | 280 | & .flash_icon { 281 | position: absolute; 282 | display: inline-block; 283 | padding: 3px; 284 | border-radius: 2px; 285 | top: 10px; 286 | right: 10px; 287 | 288 | &:hover { 289 | background: #563d3d; 290 | } 291 | 292 | & i { 293 | font-size: 20px; 294 | } 295 | 296 | } 297 | 298 | } 299 | 300 | // HOME & ABOUT PAGES 301 | .welcome { 302 | text-align: center; 303 | top: 60px; 304 | position: relative; 305 | } 306 | -------------------------------------------------------------------------------- /app/channels/application_cable/channel.rb: -------------------------------------------------------------------------------- 1 | module ApplicationCable 2 | class Channel < ActionCable::Channel::Base 3 | end 4 | end 5 | -------------------------------------------------------------------------------- /app/channels/application_cable/connection.rb: -------------------------------------------------------------------------------- 1 | module ApplicationCable 2 | class Connection < ActionCable::Connection::Base 3 | end 4 | end 5 | -------------------------------------------------------------------------------- /app/controllers/application_controller.rb: -------------------------------------------------------------------------------- 1 | class ApplicationController < ActionController::Base 2 | protect_from_forgery with: :exception 3 | end 4 | -------------------------------------------------------------------------------- /app/controllers/concerns/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/controllers/concerns/.keep -------------------------------------------------------------------------------- /app/controllers/pages_controller.rb: -------------------------------------------------------------------------------- 1 | class PagesController < ApplicationController 2 | 3 | def index 4 | end 5 | 6 | def about 7 | end 8 | 9 | end 10 | -------------------------------------------------------------------------------- /app/controllers/posts_controller.rb: -------------------------------------------------------------------------------- 1 | class PostsController < ApplicationController 2 | 3 | def index 4 | @posts = Post.all 5 | end 6 | 7 | def show 8 | @post = Post.find(params[:id]) 9 | end 10 | 11 | def new 12 | @post = Post.new 13 | end 14 | 15 | def create 16 | @post = Post.new(post_params) 17 | if @post.save 18 | redirect_to posts_path, :notice => "Post created!!" 19 | else 20 | render 'new' 21 | end 22 | end 23 | 24 | def edit 25 | @post = Post.find(params[:id]) 26 | end 27 | 28 | def update 29 | @post = Post.find(params[:id]) 30 | if @post.update_attributes(post_params) 31 | redirect_to posts_path, :notice => "Post edited!!" 32 | else 33 | render 'edit' 34 | end 35 | end 36 | 37 | def delete 38 | @post = Post.find(params[:id]) 39 | @post.destroy 40 | redirect_to posts_path, :notice => "Post deleted!!" 41 | end 42 | 43 | private def post_params 44 | params.require(:post).permit(:title, :content) 45 | end 46 | 47 | end 48 | -------------------------------------------------------------------------------- /app/helpers/application_helper.rb: -------------------------------------------------------------------------------- 1 | module ApplicationHelper 2 | end 3 | -------------------------------------------------------------------------------- /app/helpers/pages_helper.rb: -------------------------------------------------------------------------------- 1 | module PagesHelper 2 | end 3 | -------------------------------------------------------------------------------- /app/helpers/posts_helper.rb: -------------------------------------------------------------------------------- 1 | module PostsHelper 2 | end 3 | -------------------------------------------------------------------------------- /app/jobs/application_job.rb: -------------------------------------------------------------------------------- 1 | class ApplicationJob < ActiveJob::Base 2 | end 3 | -------------------------------------------------------------------------------- /app/mailers/application_mailer.rb: -------------------------------------------------------------------------------- 1 | class ApplicationMailer < ActionMailer::Base 2 | default from: 'from@example.com' 3 | layout 'mailer' 4 | end 5 | -------------------------------------------------------------------------------- /app/models/application_record.rb: -------------------------------------------------------------------------------- 1 | class ApplicationRecord < ActiveRecord::Base 2 | self.abstract_class = true 3 | end 4 | -------------------------------------------------------------------------------- /app/models/concerns/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/app/models/concerns/.keep -------------------------------------------------------------------------------- /app/models/post.rb: -------------------------------------------------------------------------------- 1 | class Post < ApplicationRecord 2 | validates :title, :content, :presence => true 3 | validates :title, :content, :length => { :minimum => 4 } 4 | validates :title, :content, :uniqueness => { :message => "already taken!!" } 5 | end 6 | -------------------------------------------------------------------------------- /app/views/layouts/application.html.erb: -------------------------------------------------------------------------------- 1 | <%= render 'partials/header' %> 2 | 3 |
4 | <%= yield %> 5 |
6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/views/layouts/mailer.html.erb: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 9 | 10 | 11 | <%= yield %> 12 | 13 | 14 | -------------------------------------------------------------------------------- /app/views/layouts/mailer.text.erb: -------------------------------------------------------------------------------- 1 | <%= yield %> 2 | -------------------------------------------------------------------------------- /app/views/pages/about.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "About" %> 2 | 3 |
4 | <%= image_tag "dutch.gif" %> 5 |
6 | -------------------------------------------------------------------------------- /app/views/pages/index.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "Home" %> 2 | 3 |
4 | <%= image_tag "dutch.gif" %> 5 |
6 | -------------------------------------------------------------------------------- /app/views/partials/_emssg.html.erb: -------------------------------------------------------------------------------- 1 |
2 | <%= mssg %> 3 | 4 | clear 5 | 6 |
7 | -------------------------------------------------------------------------------- /app/views/partials/_header.html.erb: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | <%= yield(:title) %> | Rails Notes App 5 | 6 | <%= favicon_link_tag 'favicon.ico' %> 7 | 8 | 9 | 10 | 11 | 12 | <%= csrf_meta_tags %> 13 | <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> 14 | <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> 15 | 16 | 17 | 18 | 19 | <% if flash.any? %> 20 | <%= render 'partials/emssg', mssg: flash[:notice] %> 21 | <% end %> 22 | 23 |
24 |
25 | <%= link_to "Home", root_path %> 26 | <%= link_to "About", about_path %> 27 | <%= link_to "Notes", posts_path %> 28 | <%= link_to "Create Note", new_post_path %> 29 |
30 |
31 | -------------------------------------------------------------------------------- /app/views/posts/edit.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "Edit Note" %> 2 | 3 |
4 | 5 |
6 | <%= image_tag "ruby-red.png", class: "edit_img", alt: "Your avatar" %> 7 | Edit Note 8 |
9 | 10 | <%= form_for @post, url: { action: 'update' } do |f| %> 11 | 12 | <% if @post.errors.any? %> 13 | <%= render 'partials/emssg', mssg: @post.errors.full_messages[0] %> 14 | <% end %> 15 | 16 |
17 | Title 18 | <%= f.text_field :title, class: "e_username", placeholder: 'Title..', autofocus: true, spellcheck:false, autocomplete: false %> 19 |
20 |
21 | Content 22 | <%= f.text_area :content, placeholder: "Content..", autofocus: true, class: "e_bio", spellcheck:false, autocomplete: false %> 23 |
24 |
25 | <%= f.submit "Update Note" %> 26 |
27 | 28 | <% end %> 29 | 30 |
31 | -------------------------------------------------------------------------------- /app/views/posts/index.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "Notes" %> 2 | 3 |
4 | 5 |
6 | <%= @posts.length %> Notes 7 | <%= link_to "Create Note", new_post_path, class: "pri_btn" %> 8 |
9 | 10 | <% unless @posts.empty? %> 11 | <% @posts.each do |el| %> 12 |
13 |
14 | <%= image_tag "ruby-red.png" %> 15 |
16 | You.. 17 | <%= el.created_at %> 18 |
19 |
20 |
21 | <%= el.title %> 22 |
23 |
24 | <%= el.content %> 25 |
26 |
27 | <%= link_to "Edit", edit_post_path(el.id), class: "sec_btn" %> 28 | <%= 29 | link_to "Delete", 30 | delete_post_path(el.id), 31 | class: "sec_btn", 32 | :data => { :confirm => "Are you sure??" }, 33 | :method => :delete 34 | %> 35 | <%= link_to "View", show_post_path(el.id), class: "pri_btn" %> 36 |
37 |
38 | <% end %> 39 | <% end %> 40 | 41 | <% if @posts.empty? %> 42 |
43 | <%= image_tag "large.jpg" %> 44 | No notes for you. Go ahead and create one!! 45 |
46 | <% end %> 47 | 48 | <% unless @posts.empty? %> 49 |
50 | Looks like you've reached the end 51 |
52 | <% end %> 53 | 54 |
55 | -------------------------------------------------------------------------------- /app/views/posts/new.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "New Note" %> 2 | 3 |
4 | 5 |
6 | <%= image_tag "ruby-red.png", class: "edit_img", alt: "Your avatar" %> 7 | Create Note 8 |
9 | 10 | <%= form_for @post, url: { action: 'create' } do |f| %> 11 | 12 | <% if @post.errors.any? %> 13 | <%= render 'partials/emssg', mssg: @post.errors.full_messages[0] %> 14 | <% end %> 15 | 16 |
17 | Title 18 | <%= f.text_field :title, class: "e_username", placeholder: 'Title..', autofocus: true, spellcheck:false, autocomplete: false %> 19 |
20 |
21 | Content 22 | <%= f.text_area :content, placeholder: "Content..", autofocus: true, class: "e_bio", spellcheck:false, autocomplete: false %> 23 |
24 |
25 | <%= f.submit "Create Note" %> 26 |
27 | 28 | <% end %> 29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /app/views/posts/show.html.erb: -------------------------------------------------------------------------------- 1 | <% content_for :title, "View Note" %> 2 | 3 |
4 |
5 | 6 |
7 |
8 | <%= @post.title %> 9 | <%= @post.content %> 10 |
11 |
12 | <%= link_to "Edit", edit_post_path(@post.id), class: "sec_btn" %> 13 | <%= 14 | link_to "Delete", 15 | delete_post_path(@post.id), 16 | class: "sec_btn blog_dlt", 17 | :data => { :confirm => "Are you sure??" }, 18 | :method => :delete 19 | %> 20 | <%= link_to "Back", posts_path, class: 'pri_btn' %> 21 |
22 |
23 | 24 |
25 |
26 | -------------------------------------------------------------------------------- /bin/bundle: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) 3 | load Gem.bin_path('bundler', 'bundle') 4 | -------------------------------------------------------------------------------- /bin/rails: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | APP_PATH = File.expand_path('../config/application', __dir__) 3 | require_relative '../config/boot' 4 | require 'rails/commands' 5 | -------------------------------------------------------------------------------- /bin/rake: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | require_relative '../config/boot' 3 | require 'rake' 4 | Rake.application.run 5 | -------------------------------------------------------------------------------- /bin/setup: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | require 'pathname' 3 | require 'fileutils' 4 | include FileUtils 5 | 6 | # path to your application root. 7 | APP_ROOT = Pathname.new File.expand_path('../../', __FILE__) 8 | 9 | def system!(*args) 10 | system(*args) || abort("\n== Command #{args} failed ==") 11 | end 12 | 13 | chdir APP_ROOT do 14 | # This script is a starting point to setup your application. 15 | # Add necessary setup steps to this file. 16 | 17 | puts '== Installing dependencies ==' 18 | system! 'gem install bundler --conservative' 19 | system('bundle check') || system!('bundle install') 20 | 21 | # Install JavaScript dependencies if using Yarn 22 | # system('bin/yarn') 23 | 24 | 25 | # puts "\n== Copying sample files ==" 26 | # unless File.exist?('config/database.yml') 27 | # cp 'config/database.yml.sample', 'config/database.yml' 28 | # end 29 | 30 | puts "\n== Preparing database ==" 31 | system! 'bin/rails db:setup' 32 | 33 | puts "\n== Removing old logs and tempfiles ==" 34 | system! 'bin/rails log:clear tmp:clear' 35 | 36 | puts "\n== Restarting application server ==" 37 | system! 'bin/rails restart' 38 | end 39 | -------------------------------------------------------------------------------- /bin/update: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | require 'pathname' 3 | require 'fileutils' 4 | include FileUtils 5 | 6 | # path to your application root. 7 | APP_ROOT = Pathname.new File.expand_path('../../', __FILE__) 8 | 9 | def system!(*args) 10 | system(*args) || abort("\n== Command #{args} failed ==") 11 | end 12 | 13 | chdir APP_ROOT do 14 | # This script is a way to update your development environment automatically. 15 | # Add necessary update steps to this file. 16 | 17 | puts '== Installing dependencies ==' 18 | system! 'gem install bundler --conservative' 19 | system('bundle check') || system!('bundle install') 20 | 21 | puts "\n== Updating database ==" 22 | system! 'bin/rails db:migrate' 23 | 24 | puts "\n== Removing old logs and tempfiles ==" 25 | system! 'bin/rails log:clear tmp:clear' 26 | 27 | puts "\n== Restarting application server ==" 28 | system! 'bin/rails restart' 29 | end 30 | -------------------------------------------------------------------------------- /bin/yarn: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby.exe 2 | VENDOR_PATH = File.expand_path('..', __dir__) 3 | Dir.chdir(VENDOR_PATH) do 4 | begin 5 | exec "yarnpkg #{ARGV.join(" ")}" 6 | rescue Errno::ENOENT 7 | $stderr.puts "Yarn executable was not detected in the system." 8 | $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install" 9 | exit 1 10 | end 11 | end 12 | -------------------------------------------------------------------------------- /config.ru: -------------------------------------------------------------------------------- 1 | # This file is used by Rack-based servers to start the application. 2 | 3 | require_relative 'config/environment' 4 | 5 | run Rails.application 6 | -------------------------------------------------------------------------------- /config/application.rb: -------------------------------------------------------------------------------- 1 | require_relative 'boot' 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 RailsPracice 10 | class Application < Rails::Application 11 | # Initialize configuration defaults for originally generated Rails version. 12 | config.load_defaults 5.1 13 | 14 | # Settings in config/environments/* take precedence over those specified here. 15 | # Application configuration should go into files in config/initializers 16 | # -- all .rb files in that directory are automatically loaded. 17 | end 18 | end 19 | -------------------------------------------------------------------------------- /config/boot.rb: -------------------------------------------------------------------------------- 1 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__) 2 | 3 | require 'bundler/setup' # Set up gems listed in the Gemfile. 4 | -------------------------------------------------------------------------------- /config/cable.yml: -------------------------------------------------------------------------------- 1 | development: 2 | adapter: async 3 | 4 | test: 5 | adapter: async 6 | 7 | production: 8 | adapter: redis 9 | url: redis://localhost:6379/1 10 | channel_prefix: Rails-Pracice_production 11 | -------------------------------------------------------------------------------- /config/database.yml: -------------------------------------------------------------------------------- 1 | # MySQL. Versions 5.1.10 and up are supported. 2 | # 3 | # Install the MySQL driver 4 | # gem install mysql2 5 | # 6 | # Ensure the MySQL gem is defined in your Gemfile 7 | # gem 'mysql2' 8 | # 9 | # And be sure to use new-style password hashing: 10 | # http://dev.mysql.com/doc/refman/5.7/en/old-client.html 11 | # 12 | default: &default 13 | adapter: mysql2 14 | encoding: utf8 15 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 16 | username: root 17 | password: <%= ENV['RAILS_DB_PASSWORD'] %> # DB PASSWORD 18 | host: localhost 19 | socket: <%= ENV['RAILS_SOCKET'] %> # MySQL Socket 20 | 21 | development: 22 | <<: *default 23 | database: rails-notes-app 24 | 25 | # Warning: The database defined as "test" will be erased and 26 | # re-generated from your development database when you run "rake". 27 | # Do not set this db to the same as development or production. 28 | test: 29 | <<: *default 30 | database: 31 | 32 | # As with config/secrets.yml, you never want to store sensitive information, 33 | # like your database password, in your source code. If your source code is 34 | # ever seen by anyone, they now have access to your database. 35 | # 36 | # Instead, provide the password as a unix environment variable when you boot 37 | # the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database 38 | # for a full rundown on how to provide these environment variables in a 39 | # production deployment. 40 | # 41 | # On Heroku and other platform providers, you may have a full connection URL 42 | # available as an environment variable. For example: 43 | # 44 | # DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase" 45 | # 46 | # You can use this database configuration with: 47 | # 48 | # production: 49 | # url: <%= ENV['DATABASE_URL'] %> 50 | # 51 | production: 52 | <<: *default 53 | database: 54 | username: 55 | password: 56 | -------------------------------------------------------------------------------- /config/environment.rb: -------------------------------------------------------------------------------- 1 | # Load the Rails application. 2 | require_relative 'application' 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. 13 | config.consider_all_requests_local = true 14 | 15 | # Enable/disable caching. By default caching is disabled. 16 | if Rails.root.join('tmp/caching-dev.txt').exist? 17 | config.action_controller.perform_caching = true 18 | 19 | config.cache_store = :memory_store 20 | config.public_file_server.headers = { 21 | 'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}" 22 | } 23 | else 24 | config.action_controller.perform_caching = false 25 | 26 | config.cache_store = :null_store 27 | end 28 | 29 | # Don't care if the mailer can't send. 30 | config.action_mailer.raise_delivery_errors = false 31 | 32 | config.action_mailer.perform_caching = false 33 | 34 | # Print deprecation notices to the Rails logger. 35 | config.active_support.deprecation = :log 36 | 37 | # Raise an error on page load if there are pending migrations. 38 | config.active_record.migration_error = :page_load 39 | 40 | # Debug mode disables concatenation and preprocessing of assets. 41 | # This option may cause significant delays in view rendering with a large 42 | # number of complex assets. 43 | config.assets.debug = false 44 | 45 | # Suppress logger output for asset requests. 46 | config.assets.quiet = true 47 | 48 | # Raises error for missing translations 49 | # config.action_view.raise_on_missing_translations = true 50 | 51 | # Use an evented file watcher to asynchronously detect changes in source code, 52 | # routes, locales, etc. This feature depends on the listen gem. 53 | # config.file_watcher = ActiveSupport::EventedFileUpdateChecker 54 | end 55 | -------------------------------------------------------------------------------- /config/environments/production.rb: -------------------------------------------------------------------------------- 1 | Rails.application.configure do 2 | # Settings specified here will take precedence over those in config/application.rb. 3 | 4 | # Code is not reloaded between requests. 5 | config.cache_classes = true 6 | 7 | # Eager load code on boot. This eager loads most of Rails and 8 | # your application in memory, allowing both threaded web servers 9 | # and those relying on copy on write to perform better. 10 | # Rake tasks automatically ignore this option for performance. 11 | config.eager_load = true 12 | 13 | # Full error reports are disabled and caching is turned on. 14 | config.consider_all_requests_local = false 15 | config.action_controller.perform_caching = true 16 | 17 | # Attempt to read encrypted secrets from `config/secrets.yml.enc`. 18 | # Requires an encryption key in `ENV["RAILS_MASTER_KEY"]` or 19 | # `config/secrets.yml.key`. 20 | config.read_encrypted_secrets = true 21 | 22 | # Disable serving static files from the `/public` folder by default since 23 | # Apache or NGINX already handles this. 24 | config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? 25 | 26 | # Compress JavaScripts and CSS. 27 | config.assets.js_compressor = :uglifier 28 | # config.assets.css_compressor = :sass 29 | 30 | # Do not fallback to assets pipeline if a precompiled asset is missed. 31 | config.assets.compile = false 32 | 33 | # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb 34 | 35 | # Enable serving of images, stylesheets, and JavaScripts from an asset server. 36 | # config.action_controller.asset_host = 'http://assets.example.com' 37 | 38 | # Specifies the header that your server uses for sending files. 39 | # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache 40 | # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX 41 | 42 | # Mount Action Cable outside main process or domain 43 | # config.action_cable.mount_path = nil 44 | # config.action_cable.url = 'wss://example.com/cable' 45 | # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ] 46 | 47 | # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. 48 | # config.force_ssl = true 49 | 50 | # Use the lowest log level to ensure availability of diagnostic information 51 | # when problems arise. 52 | config.log_level = :debug 53 | 54 | # Prepend all log lines with the following tags. 55 | config.log_tags = [ :request_id ] 56 | 57 | # Use a different cache store in production. 58 | # config.cache_store = :mem_cache_store 59 | 60 | # Use a real queuing backend for Active Job (and separate queues per environment) 61 | # config.active_job.queue_adapter = :resque 62 | # config.active_job.queue_name_prefix = "Rails-Pracice_#{Rails.env}" 63 | config.action_mailer.perform_caching = false 64 | 65 | # Ignore bad email addresses and do not raise email delivery errors. 66 | # Set this to true and configure the email server for immediate delivery to raise delivery errors. 67 | # config.action_mailer.raise_delivery_errors = false 68 | 69 | # Enable locale fallbacks for I18n (makes lookups for any locale fall back to 70 | # the I18n.default_locale when a translation cannot be found). 71 | config.i18n.fallbacks = true 72 | 73 | # Send deprecation notices to registered listeners. 74 | config.active_support.deprecation = :notify 75 | 76 | # Use default logging formatter so that PID and timestamp are not suppressed. 77 | config.log_formatter = ::Logger::Formatter.new 78 | 79 | # Use a different logger for distributed setups. 80 | # require 'syslog/logger' 81 | # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name') 82 | 83 | if ENV["RAILS_LOG_TO_STDOUT"].present? 84 | logger = ActiveSupport::Logger.new(STDOUT) 85 | logger.formatter = config.log_formatter 86 | config.logger = ActiveSupport::TaggedLogging.new(logger) 87 | end 88 | 89 | # Do not dump schema after migrations. 90 | config.active_record.dump_schema_after_migration = false 91 | end 92 | -------------------------------------------------------------------------------- /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 public file server for tests with Cache-Control for performance. 16 | config.public_file_server.enabled = true 17 | config.public_file_server.headers = { 18 | 'Cache-Control' => "public, max-age=#{1.hour.seconds.to_i}" 19 | } 20 | 21 | # Show full error reports and disable caching. 22 | config.consider_all_requests_local = true 23 | config.action_controller.perform_caching = false 24 | 25 | # Raise exceptions instead of rendering exception templates. 26 | config.action_dispatch.show_exceptions = false 27 | 28 | # Disable request forgery protection in test environment. 29 | config.action_controller.allow_forgery_protection = false 30 | config.action_mailer.perform_caching = false 31 | 32 | # Tell Action Mailer not to deliver emails to the real world. 33 | # The :test delivery method accumulates sent emails in the 34 | # ActionMailer::Base.deliveries array. 35 | config.action_mailer.delivery_method = :test 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/application_controller_renderer.rb: -------------------------------------------------------------------------------- 1 | # Be sure to restart your server when you modify this file. 2 | 3 | # ActiveSupport::Reloader.to_prepare do 4 | # ApplicationController.renderer.defaults.merge!( 5 | # http_host: 'example.org', 6 | # https: false 7 | # ) 8 | # end 9 | -------------------------------------------------------------------------------- /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 | # Add Yarn node_modules folder to the asset load path. 9 | Rails.application.config.assets.paths << Rails.root.join('node_modules') 10 | 11 | # Precompile additional assets. 12 | # application.js, application.css, and all non-JS/CSS in the app/assets 13 | # folder are already added. 14 | # Rails.application.config.assets.precompile += %w( admin.js admin.css ) 15 | -------------------------------------------------------------------------------- /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/cookies_serializer.rb: -------------------------------------------------------------------------------- 1 | # Be sure to restart your server when you modify this file. 2 | 3 | # Specify a serializer for the signed and encrypted cookie jars. 4 | # Valid options are :json, :marshal, and :hybrid. 5 | Rails.application.config.action_dispatch.cookies_serializer = :json 6 | -------------------------------------------------------------------------------- /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/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] 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 | # The following keys must be escaped otherwise they will not be retrieved by 20 | # the default I18n backend: 21 | # 22 | # true, false, on, off, yes, no 23 | # 24 | # Instead, surround them with single quotes. 25 | # 26 | # en: 27 | # 'true': 'foo' 28 | # 29 | # To learn more, please read the Rails Internationalization guide 30 | # available at http://guides.rubyonrails.org/i18n.html. 31 | 32 | en: 33 | hello: "Hello world" 34 | -------------------------------------------------------------------------------- /config/puma.rb: -------------------------------------------------------------------------------- 1 | # Puma can serve each request in a thread from an internal thread pool. 2 | # The `threads` method setting takes two numbers: a minimum and maximum. 3 | # Any libraries that use thread pools should be configured to match 4 | # the maximum value specified for Puma. Default is set to 5 threads for minimum 5 | # and maximum; this matches the default thread size of Active Record. 6 | # 7 | threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 } 8 | threads threads_count, threads_count 9 | 10 | # Specifies the `port` that Puma will listen on to receive requests; default is 3000. 11 | # 12 | port ENV.fetch("PORT") { 3000 } 13 | 14 | # Specifies the `environment` that Puma will run in. 15 | # 16 | environment ENV.fetch("RAILS_ENV") { "development" } 17 | 18 | # Specifies the number of `workers` to boot in clustered mode. 19 | # Workers are forked webserver processes. If using threads and workers together 20 | # the concurrency of the application would be max `threads` * `workers`. 21 | # Workers do not work on JRuby or Windows (both of which do not support 22 | # processes). 23 | # 24 | # workers ENV.fetch("WEB_CONCURRENCY") { 2 } 25 | 26 | # Use the `preload_app!` method when specifying a `workers` number. 27 | # This directive tells Puma to first boot the application and load code 28 | # before forking the application. This takes advantage of Copy On Write 29 | # process behavior so workers use less memory. If you use this option 30 | # you need to make sure to reconnect any threads in the `on_worker_boot` 31 | # block. 32 | # 33 | # preload_app! 34 | 35 | # If you are preloading your application and using Active Record, it's 36 | # recommended that you close any connections to the database before workers 37 | # are forked to prevent connection leakage. 38 | # 39 | # before_fork do 40 | # ActiveRecord::Base.connection_pool.disconnect! if defined?(ActiveRecord) 41 | # end 42 | 43 | # The code in the `on_worker_boot` will be called if you are using 44 | # clustered mode by specifying a number of `workers`. After each worker 45 | # process is booted, this block will be run. If you are using the `preload_app!` 46 | # option, you will want to use this block to reconnect to any threads 47 | # or connections that may have been created at application boot, as Ruby 48 | # cannot share connections between processes. 49 | # 50 | # on_worker_boot do 51 | # ActiveRecord::Base.establish_connection if defined?(ActiveRecord) 52 | # end 53 | # 54 | 55 | # Allow puma to be restarted by `rails restart` command. 56 | plugin :tmp_restart 57 | -------------------------------------------------------------------------------- /config/routes.rb: -------------------------------------------------------------------------------- 1 | Rails.application.routes.draw do 2 | 3 | root 'pages#index' 4 | 5 | get 'index', to: 'pages#index' 6 | get 'about', to: 'pages#about' 7 | 8 | get 'posts', to: 'posts#index' 9 | get 'show_post/:id', to: 'posts#show', as: 'show_post' 10 | get 'new_post' => 'posts#new' 11 | post 'create_post' => 'posts#create' 12 | get 'edit_post/:id', to: 'posts#edit', as: 'edit_post' 13 | patch 'update_post/:id', to: 'posts#update', as: 'update_post' 14 | delete 'delete_post/:id', to: 'posts#delete', as: 'delete_post' 15 | 16 | end 17 | -------------------------------------------------------------------------------- /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 `rails 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 | # Shared secrets are available across all environments. 14 | 15 | # shared: 16 | # api_key: a1B2c3D4e5F6 17 | 18 | # Environmental secrets are only available for that specific environment. 19 | 20 | development: 21 | secret_key_base: f40295cfd77fdab53296bf1af32e933de4bdd52a27bffad64c8bf06ad2af8541be65ea3bc215df47bd4d26e20dd51d4d70f9229de8a13c0268dba0aedee3d8ab 22 | 23 | test: 24 | secret_key_base: 19c5cd01667ba4a8cb381986791fe314be697f06ec9813bf31e34a28b27dcc60c41601ec673e554bdca41676cf236ad5ebff1d3e784fabe659dad384fa8f755d 25 | 26 | # Do not keep production secrets in the unencrypted secrets file. 27 | # Instead, either read values from the environment. 28 | # Or, use `bin/rails secrets:setup` to configure encrypted secrets 29 | # and move the `production:` environment over there. 30 | 31 | production: 32 | secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> 33 | -------------------------------------------------------------------------------- /db.sql: -------------------------------------------------------------------------------- 1 | -- phpMyAdmin SQL Dump 2 | -- version 4.5.1 3 | -- http://www.phpmyadmin.net 4 | -- 5 | -- Host: 127.0.0.1 6 | -- Generation Time: Sep 14, 2017 at 11:13 AM 7 | -- Server version: 10.1.19-MariaDB 8 | -- PHP Version: 5.6.28 9 | 10 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 11 | SET time_zone = "+00:00"; 12 | 13 | 14 | /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; 15 | /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; 16 | /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; 17 | /*!40101 SET NAMES utf8mb4 */; 18 | 19 | -- 20 | -- Database: `rails-notes-app` 21 | -- 22 | 23 | -- -------------------------------------------------------- 24 | 25 | -- 26 | -- Table structure for table `ar_internal_metadata` 27 | -- 28 | 29 | CREATE TABLE `ar_internal_metadata` ( 30 | `key` varchar(255) NOT NULL, 31 | `value` varchar(255) DEFAULT NULL, 32 | `created_at` datetime NOT NULL, 33 | `updated_at` datetime NOT NULL 34 | ) ENGINE=InnoDB DEFAULT CHARSET=latin1; 35 | 36 | -- 37 | -- Dumping data for table `ar_internal_metadata` 38 | -- 39 | 40 | INSERT INTO `ar_internal_metadata` (`key`, `value`, `created_at`, `updated_at`) VALUES 41 | ('environment', 'development', '2017-09-13 11:01:54', '2017-09-13 11:01:54'); 42 | 43 | -- -------------------------------------------------------- 44 | 45 | -- 46 | -- Table structure for table `posts` 47 | -- 48 | 49 | CREATE TABLE `posts` ( 50 | `id` bigint(20) NOT NULL, 51 | `title` varchar(255) DEFAULT NULL, 52 | `content` text, 53 | `created_at` datetime NOT NULL, 54 | `updated_at` datetime NOT NULL 55 | ) ENGINE=InnoDB DEFAULT CHARSET=latin1; 56 | 57 | -- 58 | -- Dumping data for table `posts` 59 | -- 60 | 61 | INSERT INTO `posts` (`id`, `title`, `content`, `created_at`, `updated_at`) VALUES 62 | (1, 'First Post', 'First Content', '2017-09-13 11:03:36', '2017-09-13 14:18:00'), 63 | (2, 'Second Title', 'Second Content', '2017-09-13 11:03:55', '2017-09-13 11:03:55'); 64 | 65 | -- -------------------------------------------------------- 66 | 67 | -- 68 | -- Table structure for table `schema_migrations` 69 | -- 70 | 71 | CREATE TABLE `schema_migrations` ( 72 | `version` varchar(255) NOT NULL 73 | ) ENGINE=InnoDB DEFAULT CHARSET=latin1; 74 | 75 | -- 76 | -- Dumping data for table `schema_migrations` 77 | -- 78 | 79 | INSERT INTO `schema_migrations` (`version`) VALUES 80 | ('20170913110049'); 81 | 82 | -- 83 | -- Indexes for dumped tables 84 | -- 85 | 86 | -- 87 | -- Indexes for table `ar_internal_metadata` 88 | -- 89 | ALTER TABLE `ar_internal_metadata` 90 | ADD PRIMARY KEY (`key`); 91 | 92 | -- 93 | -- Indexes for table `posts` 94 | -- 95 | ALTER TABLE `posts` 96 | ADD PRIMARY KEY (`id`); 97 | 98 | -- 99 | -- Indexes for table `schema_migrations` 100 | -- 101 | ALTER TABLE `schema_migrations` 102 | ADD PRIMARY KEY (`version`); 103 | 104 | -- 105 | -- AUTO_INCREMENT for dumped tables 106 | -- 107 | 108 | -- 109 | -- AUTO_INCREMENT for table `posts` 110 | -- 111 | ALTER TABLE `posts` 112 | MODIFY `id` bigint(20) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3; 113 | /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; 114 | /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; 115 | /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 116 | -------------------------------------------------------------------------------- /db/migrate/20170913110049_create_posts.rb: -------------------------------------------------------------------------------- 1 | class CreatePosts < ActiveRecord::Migration[5.1] 2 | def change 3 | create_table :posts do |t| 4 | t.string :title 5 | t.text :content 6 | 7 | t.timestamps 8 | end 9 | end 10 | end 11 | -------------------------------------------------------------------------------- /db/schema.rb: -------------------------------------------------------------------------------- 1 | # This file is auto-generated from the current state of the database. Instead 2 | # of editing this file, please use the migrations feature of Active Record to 3 | # incrementally modify your database, and then regenerate this schema definition. 4 | # 5 | # Note that this schema.rb definition is the authoritative source for your 6 | # database schema. If you need to create the application database on another 7 | # system, you should be using db:schema:load, not running all the migrations 8 | # from scratch. The latter is a flawed and unsustainable approach (the more migrations 9 | # you'll amass, the slower it'll run and the greater likelihood for issues). 10 | # 11 | # It's strongly recommended that you check this file into your version control system. 12 | 13 | ActiveRecord::Schema.define(version: 20170913110049) do 14 | 15 | create_table "posts", force: :cascade, options: "ENGINE=InnoDB DEFAULT CHARSET=latin1" do |t| 16 | t.string "title" 17 | t.text "content" 18 | t.datetime "created_at", null: false 19 | t.datetime "updated_at", null: false 20 | end 21 | 22 | end 23 | -------------------------------------------------------------------------------- /db/seeds.rb: -------------------------------------------------------------------------------- 1 | # This file should contain all the record creation needed to seed the database with its default values. 2 | # The data can then be loaded with the rails db:seed command (or created alongside the database with db:setup). 3 | # 4 | # Examples: 5 | # 6 | # movies = Movie.create([{ name: 'Star Wars' }, { name: 'Lord of the Rings' }]) 7 | # Character.create(name: 'Luke', movie: movies.first) 8 | -------------------------------------------------------------------------------- /lib/assets/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/lib/assets/.keep -------------------------------------------------------------------------------- /lib/tasks/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/lib/tasks/.keep -------------------------------------------------------------------------------- /log/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/log/.keep -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rails-notes-app", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "acorn": { 8 | "version": "5.1.2", 9 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.1.2.tgz", 10 | "integrity": "sha512-o96FZLJBPY1lvTuJylGA9Bk3t/GKPPJG8H0ydQQl01crzwJgspa4AEIq/pVTXigmK0PHVQhiAtn8WMBLL9D2WA==", 11 | "dev": true 12 | }, 13 | "acorn-jsx": { 14 | "version": "3.0.1", 15 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", 16 | "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", 17 | "dev": true, 18 | "requires": { 19 | "acorn": "3.3.0" 20 | }, 21 | "dependencies": { 22 | "acorn": { 23 | "version": "3.3.0", 24 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", 25 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", 26 | "dev": true 27 | } 28 | } 29 | }, 30 | "ajv": { 31 | "version": "5.2.2", 32 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.2.tgz", 33 | "integrity": "sha1-R8aNaehvXZUxA7AHSpQw3GPaXjk=", 34 | "dev": true, 35 | "requires": { 36 | "co": "4.6.0", 37 | "fast-deep-equal": "1.0.0", 38 | "json-schema-traverse": "0.3.1", 39 | "json-stable-stringify": "1.0.1" 40 | } 41 | }, 42 | "ajv-keywords": { 43 | "version": "1.5.1", 44 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", 45 | "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", 46 | "dev": true 47 | }, 48 | "ansi-escapes": { 49 | "version": "2.0.0", 50 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-2.0.0.tgz", 51 | "integrity": "sha1-W65SvkJIeN2Xg+iRDj/Cki6DyBs=", 52 | "dev": true 53 | }, 54 | "ansi-regex": { 55 | "version": "2.1.1", 56 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 57 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 58 | "dev": true 59 | }, 60 | "ansi-styles": { 61 | "version": "2.2.1", 62 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 63 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 64 | "dev": true 65 | }, 66 | "argparse": { 67 | "version": "1.0.9", 68 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", 69 | "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", 70 | "dev": true, 71 | "requires": { 72 | "sprintf-js": "1.0.3" 73 | } 74 | }, 75 | "array-union": { 76 | "version": "1.0.2", 77 | "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 78 | "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", 79 | "dev": true, 80 | "requires": { 81 | "array-uniq": "1.0.3" 82 | } 83 | }, 84 | "array-uniq": { 85 | "version": "1.0.3", 86 | "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", 87 | "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", 88 | "dev": true 89 | }, 90 | "arrify": { 91 | "version": "1.0.1", 92 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 93 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", 94 | "dev": true 95 | }, 96 | "babel-code-frame": { 97 | "version": "6.26.0", 98 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 99 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 100 | "dev": true, 101 | "requires": { 102 | "chalk": "1.1.3", 103 | "esutils": "2.0.2", 104 | "js-tokens": "3.0.2" 105 | } 106 | }, 107 | "babel-core": { 108 | "version": "6.26.0", 109 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", 110 | "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", 111 | "dev": true, 112 | "requires": { 113 | "babel-code-frame": "6.26.0", 114 | "babel-generator": "6.26.0", 115 | "babel-helpers": "6.24.1", 116 | "babel-messages": "6.23.0", 117 | "babel-register": "6.26.0", 118 | "babel-runtime": "6.26.0", 119 | "babel-template": "6.26.0", 120 | "babel-traverse": "6.26.0", 121 | "babel-types": "6.26.0", 122 | "babylon": "6.18.0", 123 | "convert-source-map": "1.5.0", 124 | "debug": "2.6.8", 125 | "json5": "0.5.1", 126 | "lodash": "4.17.4", 127 | "minimatch": "3.0.4", 128 | "path-is-absolute": "1.0.1", 129 | "private": "0.1.7", 130 | "slash": "1.0.0", 131 | "source-map": "0.5.7" 132 | } 133 | }, 134 | "babel-generator": { 135 | "version": "6.26.0", 136 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", 137 | "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", 138 | "dev": true, 139 | "requires": { 140 | "babel-messages": "6.23.0", 141 | "babel-runtime": "6.26.0", 142 | "babel-types": "6.26.0", 143 | "detect-indent": "4.0.0", 144 | "jsesc": "1.3.0", 145 | "lodash": "4.17.4", 146 | "source-map": "0.5.7", 147 | "trim-right": "1.0.1" 148 | } 149 | }, 150 | "babel-helper-builder-binary-assignment-operator-visitor": { 151 | "version": "6.24.1", 152 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", 153 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", 154 | "dev": true, 155 | "requires": { 156 | "babel-helper-explode-assignable-expression": "6.24.1", 157 | "babel-runtime": "6.26.0", 158 | "babel-types": "6.26.0" 159 | } 160 | }, 161 | "babel-helper-call-delegate": { 162 | "version": "6.24.1", 163 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", 164 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", 165 | "dev": true, 166 | "requires": { 167 | "babel-helper-hoist-variables": "6.24.1", 168 | "babel-runtime": "6.26.0", 169 | "babel-traverse": "6.26.0", 170 | "babel-types": "6.26.0" 171 | } 172 | }, 173 | "babel-helper-define-map": { 174 | "version": "6.26.0", 175 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", 176 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", 177 | "dev": true, 178 | "requires": { 179 | "babel-helper-function-name": "6.24.1", 180 | "babel-runtime": "6.26.0", 181 | "babel-types": "6.26.0", 182 | "lodash": "4.17.4" 183 | } 184 | }, 185 | "babel-helper-explode-assignable-expression": { 186 | "version": "6.24.1", 187 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", 188 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", 189 | "dev": true, 190 | "requires": { 191 | "babel-runtime": "6.26.0", 192 | "babel-traverse": "6.26.0", 193 | "babel-types": "6.26.0" 194 | } 195 | }, 196 | "babel-helper-function-name": { 197 | "version": "6.24.1", 198 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", 199 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", 200 | "dev": true, 201 | "requires": { 202 | "babel-helper-get-function-arity": "6.24.1", 203 | "babel-runtime": "6.26.0", 204 | "babel-template": "6.26.0", 205 | "babel-traverse": "6.26.0", 206 | "babel-types": "6.26.0" 207 | } 208 | }, 209 | "babel-helper-get-function-arity": { 210 | "version": "6.24.1", 211 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", 212 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", 213 | "dev": true, 214 | "requires": { 215 | "babel-runtime": "6.26.0", 216 | "babel-types": "6.26.0" 217 | } 218 | }, 219 | "babel-helper-hoist-variables": { 220 | "version": "6.24.1", 221 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", 222 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", 223 | "dev": true, 224 | "requires": { 225 | "babel-runtime": "6.26.0", 226 | "babel-types": "6.26.0" 227 | } 228 | }, 229 | "babel-helper-optimise-call-expression": { 230 | "version": "6.24.1", 231 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", 232 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", 233 | "dev": true, 234 | "requires": { 235 | "babel-runtime": "6.26.0", 236 | "babel-types": "6.26.0" 237 | } 238 | }, 239 | "babel-helper-regex": { 240 | "version": "6.26.0", 241 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", 242 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", 243 | "dev": true, 244 | "requires": { 245 | "babel-runtime": "6.26.0", 246 | "babel-types": "6.26.0", 247 | "lodash": "4.17.4" 248 | } 249 | }, 250 | "babel-helper-remap-async-to-generator": { 251 | "version": "6.24.1", 252 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", 253 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", 254 | "dev": true, 255 | "requires": { 256 | "babel-helper-function-name": "6.24.1", 257 | "babel-runtime": "6.26.0", 258 | "babel-template": "6.26.0", 259 | "babel-traverse": "6.26.0", 260 | "babel-types": "6.26.0" 261 | } 262 | }, 263 | "babel-helper-replace-supers": { 264 | "version": "6.24.1", 265 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", 266 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", 267 | "dev": true, 268 | "requires": { 269 | "babel-helper-optimise-call-expression": "6.24.1", 270 | "babel-messages": "6.23.0", 271 | "babel-runtime": "6.26.0", 272 | "babel-template": "6.26.0", 273 | "babel-traverse": "6.26.0", 274 | "babel-types": "6.26.0" 275 | } 276 | }, 277 | "babel-helpers": { 278 | "version": "6.24.1", 279 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 280 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 281 | "dev": true, 282 | "requires": { 283 | "babel-runtime": "6.26.0", 284 | "babel-template": "6.26.0" 285 | } 286 | }, 287 | "babel-loader": { 288 | "version": "6.4.1", 289 | "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-6.4.1.tgz", 290 | "integrity": "sha1-CzQRLVsHSKjc2/Uaz2+b1C1QuMo=", 291 | "dev": true, 292 | "requires": { 293 | "find-cache-dir": "0.1.1", 294 | "loader-utils": "0.2.17", 295 | "mkdirp": "0.5.1", 296 | "object-assign": "4.1.1" 297 | } 298 | }, 299 | "babel-messages": { 300 | "version": "6.23.0", 301 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 302 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 303 | "dev": true, 304 | "requires": { 305 | "babel-runtime": "6.26.0" 306 | } 307 | }, 308 | "babel-plugin-check-es2015-constants": { 309 | "version": "6.22.0", 310 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", 311 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", 312 | "dev": true, 313 | "requires": { 314 | "babel-runtime": "6.26.0" 315 | } 316 | }, 317 | "babel-plugin-syntax-async-functions": { 318 | "version": "6.13.0", 319 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", 320 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", 321 | "dev": true 322 | }, 323 | "babel-plugin-syntax-exponentiation-operator": { 324 | "version": "6.13.0", 325 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", 326 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", 327 | "dev": true 328 | }, 329 | "babel-plugin-syntax-trailing-function-commas": { 330 | "version": "6.22.0", 331 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", 332 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", 333 | "dev": true 334 | }, 335 | "babel-plugin-transform-async-to-generator": { 336 | "version": "6.24.1", 337 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", 338 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", 339 | "dev": true, 340 | "requires": { 341 | "babel-helper-remap-async-to-generator": "6.24.1", 342 | "babel-plugin-syntax-async-functions": "6.13.0", 343 | "babel-runtime": "6.26.0" 344 | } 345 | }, 346 | "babel-plugin-transform-es2015-arrow-functions": { 347 | "version": "6.22.0", 348 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", 349 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", 350 | "dev": true, 351 | "requires": { 352 | "babel-runtime": "6.26.0" 353 | } 354 | }, 355 | "babel-plugin-transform-es2015-block-scoped-functions": { 356 | "version": "6.22.0", 357 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", 358 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", 359 | "dev": true, 360 | "requires": { 361 | "babel-runtime": "6.26.0" 362 | } 363 | }, 364 | "babel-plugin-transform-es2015-block-scoping": { 365 | "version": "6.26.0", 366 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", 367 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", 368 | "dev": true, 369 | "requires": { 370 | "babel-runtime": "6.26.0", 371 | "babel-template": "6.26.0", 372 | "babel-traverse": "6.26.0", 373 | "babel-types": "6.26.0", 374 | "lodash": "4.17.4" 375 | } 376 | }, 377 | "babel-plugin-transform-es2015-classes": { 378 | "version": "6.24.1", 379 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", 380 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", 381 | "dev": true, 382 | "requires": { 383 | "babel-helper-define-map": "6.26.0", 384 | "babel-helper-function-name": "6.24.1", 385 | "babel-helper-optimise-call-expression": "6.24.1", 386 | "babel-helper-replace-supers": "6.24.1", 387 | "babel-messages": "6.23.0", 388 | "babel-runtime": "6.26.0", 389 | "babel-template": "6.26.0", 390 | "babel-traverse": "6.26.0", 391 | "babel-types": "6.26.0" 392 | } 393 | }, 394 | "babel-plugin-transform-es2015-computed-properties": { 395 | "version": "6.24.1", 396 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", 397 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", 398 | "dev": true, 399 | "requires": { 400 | "babel-runtime": "6.26.0", 401 | "babel-template": "6.26.0" 402 | } 403 | }, 404 | "babel-plugin-transform-es2015-destructuring": { 405 | "version": "6.23.0", 406 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", 407 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", 408 | "dev": true, 409 | "requires": { 410 | "babel-runtime": "6.26.0" 411 | } 412 | }, 413 | "babel-plugin-transform-es2015-duplicate-keys": { 414 | "version": "6.24.1", 415 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", 416 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", 417 | "dev": true, 418 | "requires": { 419 | "babel-runtime": "6.26.0", 420 | "babel-types": "6.26.0" 421 | } 422 | }, 423 | "babel-plugin-transform-es2015-for-of": { 424 | "version": "6.23.0", 425 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", 426 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", 427 | "dev": true, 428 | "requires": { 429 | "babel-runtime": "6.26.0" 430 | } 431 | }, 432 | "babel-plugin-transform-es2015-function-name": { 433 | "version": "6.24.1", 434 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", 435 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", 436 | "dev": true, 437 | "requires": { 438 | "babel-helper-function-name": "6.24.1", 439 | "babel-runtime": "6.26.0", 440 | "babel-types": "6.26.0" 441 | } 442 | }, 443 | "babel-plugin-transform-es2015-literals": { 444 | "version": "6.22.0", 445 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", 446 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", 447 | "dev": true, 448 | "requires": { 449 | "babel-runtime": "6.26.0" 450 | } 451 | }, 452 | "babel-plugin-transform-es2015-modules-amd": { 453 | "version": "6.24.1", 454 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", 455 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", 456 | "dev": true, 457 | "requires": { 458 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", 459 | "babel-runtime": "6.26.0", 460 | "babel-template": "6.26.0" 461 | } 462 | }, 463 | "babel-plugin-transform-es2015-modules-commonjs": { 464 | "version": "6.26.0", 465 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", 466 | "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", 467 | "dev": true, 468 | "requires": { 469 | "babel-plugin-transform-strict-mode": "6.24.1", 470 | "babel-runtime": "6.26.0", 471 | "babel-template": "6.26.0", 472 | "babel-types": "6.26.0" 473 | } 474 | }, 475 | "babel-plugin-transform-es2015-modules-systemjs": { 476 | "version": "6.24.1", 477 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", 478 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", 479 | "dev": true, 480 | "requires": { 481 | "babel-helper-hoist-variables": "6.24.1", 482 | "babel-runtime": "6.26.0", 483 | "babel-template": "6.26.0" 484 | } 485 | }, 486 | "babel-plugin-transform-es2015-modules-umd": { 487 | "version": "6.24.1", 488 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", 489 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", 490 | "dev": true, 491 | "requires": { 492 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 493 | "babel-runtime": "6.26.0", 494 | "babel-template": "6.26.0" 495 | } 496 | }, 497 | "babel-plugin-transform-es2015-object-super": { 498 | "version": "6.24.1", 499 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", 500 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", 501 | "dev": true, 502 | "requires": { 503 | "babel-helper-replace-supers": "6.24.1", 504 | "babel-runtime": "6.26.0" 505 | } 506 | }, 507 | "babel-plugin-transform-es2015-parameters": { 508 | "version": "6.24.1", 509 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", 510 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", 511 | "dev": true, 512 | "requires": { 513 | "babel-helper-call-delegate": "6.24.1", 514 | "babel-helper-get-function-arity": "6.24.1", 515 | "babel-runtime": "6.26.0", 516 | "babel-template": "6.26.0", 517 | "babel-traverse": "6.26.0", 518 | "babel-types": "6.26.0" 519 | } 520 | }, 521 | "babel-plugin-transform-es2015-shorthand-properties": { 522 | "version": "6.24.1", 523 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", 524 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", 525 | "dev": true, 526 | "requires": { 527 | "babel-runtime": "6.26.0", 528 | "babel-types": "6.26.0" 529 | } 530 | }, 531 | "babel-plugin-transform-es2015-spread": { 532 | "version": "6.22.0", 533 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", 534 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", 535 | "dev": true, 536 | "requires": { 537 | "babel-runtime": "6.26.0" 538 | } 539 | }, 540 | "babel-plugin-transform-es2015-sticky-regex": { 541 | "version": "6.24.1", 542 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", 543 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", 544 | "dev": true, 545 | "requires": { 546 | "babel-helper-regex": "6.26.0", 547 | "babel-runtime": "6.26.0", 548 | "babel-types": "6.26.0" 549 | } 550 | }, 551 | "babel-plugin-transform-es2015-template-literals": { 552 | "version": "6.22.0", 553 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", 554 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", 555 | "dev": true, 556 | "requires": { 557 | "babel-runtime": "6.26.0" 558 | } 559 | }, 560 | "babel-plugin-transform-es2015-typeof-symbol": { 561 | "version": "6.23.0", 562 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", 563 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", 564 | "dev": true, 565 | "requires": { 566 | "babel-runtime": "6.26.0" 567 | } 568 | }, 569 | "babel-plugin-transform-es2015-unicode-regex": { 570 | "version": "6.24.1", 571 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", 572 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", 573 | "dev": true, 574 | "requires": { 575 | "babel-helper-regex": "6.26.0", 576 | "babel-runtime": "6.26.0", 577 | "regexpu-core": "2.0.0" 578 | } 579 | }, 580 | "babel-plugin-transform-exponentiation-operator": { 581 | "version": "6.24.1", 582 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", 583 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", 584 | "dev": true, 585 | "requires": { 586 | "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", 587 | "babel-plugin-syntax-exponentiation-operator": "6.13.0", 588 | "babel-runtime": "6.26.0" 589 | } 590 | }, 591 | "babel-plugin-transform-regenerator": { 592 | "version": "6.26.0", 593 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", 594 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", 595 | "dev": true, 596 | "requires": { 597 | "regenerator-transform": "0.10.1" 598 | } 599 | }, 600 | "babel-plugin-transform-strict-mode": { 601 | "version": "6.24.1", 602 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 603 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 604 | "dev": true, 605 | "requires": { 606 | "babel-runtime": "6.26.0", 607 | "babel-types": "6.26.0" 608 | } 609 | }, 610 | "babel-preset-env": { 611 | "version": "1.6.0", 612 | "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.0.tgz", 613 | "integrity": "sha512-OVgtQRuOZKckrILgMA5rvctvFZPv72Gua9Rt006AiPoB0DJKGN07UmaQA+qRrYgK71MVct8fFhT0EyNWYorVew==", 614 | "dev": true, 615 | "requires": { 616 | "babel-plugin-check-es2015-constants": "6.22.0", 617 | "babel-plugin-syntax-trailing-function-commas": "6.22.0", 618 | "babel-plugin-transform-async-to-generator": "6.24.1", 619 | "babel-plugin-transform-es2015-arrow-functions": "6.22.0", 620 | "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", 621 | "babel-plugin-transform-es2015-block-scoping": "6.26.0", 622 | "babel-plugin-transform-es2015-classes": "6.24.1", 623 | "babel-plugin-transform-es2015-computed-properties": "6.24.1", 624 | "babel-plugin-transform-es2015-destructuring": "6.23.0", 625 | "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", 626 | "babel-plugin-transform-es2015-for-of": "6.23.0", 627 | "babel-plugin-transform-es2015-function-name": "6.24.1", 628 | "babel-plugin-transform-es2015-literals": "6.22.0", 629 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 630 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", 631 | "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", 632 | "babel-plugin-transform-es2015-modules-umd": "6.24.1", 633 | "babel-plugin-transform-es2015-object-super": "6.24.1", 634 | "babel-plugin-transform-es2015-parameters": "6.24.1", 635 | "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", 636 | "babel-plugin-transform-es2015-spread": "6.22.0", 637 | "babel-plugin-transform-es2015-sticky-regex": "6.24.1", 638 | "babel-plugin-transform-es2015-template-literals": "6.22.0", 639 | "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", 640 | "babel-plugin-transform-es2015-unicode-regex": "6.24.1", 641 | "babel-plugin-transform-exponentiation-operator": "6.24.1", 642 | "babel-plugin-transform-regenerator": "6.26.0", 643 | "browserslist": "2.4.0", 644 | "invariant": "2.2.2", 645 | "semver": "5.4.1" 646 | } 647 | }, 648 | "babel-register": { 649 | "version": "6.26.0", 650 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 651 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 652 | "dev": true, 653 | "requires": { 654 | "babel-core": "6.26.0", 655 | "babel-runtime": "6.26.0", 656 | "core-js": "2.5.1", 657 | "home-or-tmp": "2.0.0", 658 | "lodash": "4.17.4", 659 | "mkdirp": "0.5.1", 660 | "source-map-support": "0.4.18" 661 | } 662 | }, 663 | "babel-runtime": { 664 | "version": "6.26.0", 665 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 666 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 667 | "dev": true, 668 | "requires": { 669 | "core-js": "2.5.1", 670 | "regenerator-runtime": "0.11.0" 671 | } 672 | }, 673 | "babel-template": { 674 | "version": "6.26.0", 675 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 676 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 677 | "dev": true, 678 | "requires": { 679 | "babel-runtime": "6.26.0", 680 | "babel-traverse": "6.26.0", 681 | "babel-types": "6.26.0", 682 | "babylon": "6.18.0", 683 | "lodash": "4.17.4" 684 | } 685 | }, 686 | "babel-traverse": { 687 | "version": "6.26.0", 688 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 689 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 690 | "dev": true, 691 | "requires": { 692 | "babel-code-frame": "6.26.0", 693 | "babel-messages": "6.23.0", 694 | "babel-runtime": "6.26.0", 695 | "babel-types": "6.26.0", 696 | "babylon": "6.18.0", 697 | "debug": "2.6.8", 698 | "globals": "9.18.0", 699 | "invariant": "2.2.2", 700 | "lodash": "4.17.4" 701 | } 702 | }, 703 | "babel-types": { 704 | "version": "6.26.0", 705 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 706 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 707 | "dev": true, 708 | "requires": { 709 | "babel-runtime": "6.26.0", 710 | "esutils": "2.0.2", 711 | "lodash": "4.17.4", 712 | "to-fast-properties": "1.0.3" 713 | } 714 | }, 715 | "babylon": { 716 | "version": "6.18.0", 717 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 718 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", 719 | "dev": true 720 | }, 721 | "balanced-match": { 722 | "version": "1.0.0", 723 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 724 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 725 | "dev": true 726 | }, 727 | "big.js": { 728 | "version": "3.1.3", 729 | "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.1.3.tgz", 730 | "integrity": "sha1-TK2iGTZS6zyp7I5VyQFWacmAaXg=", 731 | "dev": true 732 | }, 733 | "brace-expansion": { 734 | "version": "1.1.8", 735 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 736 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 737 | "dev": true, 738 | "requires": { 739 | "balanced-match": "1.0.0", 740 | "concat-map": "0.0.1" 741 | } 742 | }, 743 | "browserslist": { 744 | "version": "2.4.0", 745 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.4.0.tgz", 746 | "integrity": "sha512-aM2Gt4x9bVlCUteADBS6JP0F+2tMWKM1jQzUulVROtdFWFIcIVvY76AJbr7GDqy0eDhn+PcnpzzivGxY4qiaKQ==", 747 | "dev": true, 748 | "requires": { 749 | "caniuse-lite": "1.0.30000727", 750 | "electron-to-chromium": "1.3.21" 751 | } 752 | }, 753 | "caller-path": { 754 | "version": "0.1.0", 755 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", 756 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", 757 | "dev": true, 758 | "requires": { 759 | "callsites": "0.2.0" 760 | } 761 | }, 762 | "callsites": { 763 | "version": "0.2.0", 764 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", 765 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", 766 | "dev": true 767 | }, 768 | "caniuse-lite": { 769 | "version": "1.0.30000727", 770 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000727.tgz", 771 | "integrity": "sha1-IMiVdoOY3tX5ikvqtKdsKF3vQdI=", 772 | "dev": true 773 | }, 774 | "chalk": { 775 | "version": "1.1.3", 776 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 777 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 778 | "dev": true, 779 | "requires": { 780 | "ansi-styles": "2.2.1", 781 | "escape-string-regexp": "1.0.5", 782 | "has-ansi": "2.0.0", 783 | "strip-ansi": "3.0.1", 784 | "supports-color": "2.0.0" 785 | } 786 | }, 787 | "circular-json": { 788 | "version": "0.3.3", 789 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", 790 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", 791 | "dev": true 792 | }, 793 | "cli-cursor": { 794 | "version": "2.1.0", 795 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", 796 | "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", 797 | "dev": true, 798 | "requires": { 799 | "restore-cursor": "2.0.0" 800 | } 801 | }, 802 | "cli-width": { 803 | "version": "2.2.0", 804 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", 805 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", 806 | "dev": true 807 | }, 808 | "co": { 809 | "version": "4.6.0", 810 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 811 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 812 | "dev": true 813 | }, 814 | "color-convert": { 815 | "version": "1.9.0", 816 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", 817 | "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", 818 | "dev": true, 819 | "requires": { 820 | "color-name": "1.1.3" 821 | } 822 | }, 823 | "color-name": { 824 | "version": "1.1.3", 825 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 826 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 827 | "dev": true 828 | }, 829 | "commondir": { 830 | "version": "1.0.1", 831 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", 832 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", 833 | "dev": true 834 | }, 835 | "concat-map": { 836 | "version": "0.0.1", 837 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 838 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 839 | "dev": true 840 | }, 841 | "concat-stream": { 842 | "version": "1.6.0", 843 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", 844 | "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", 845 | "dev": true, 846 | "requires": { 847 | "inherits": "2.0.3", 848 | "readable-stream": "2.3.3", 849 | "typedarray": "0.0.6" 850 | } 851 | }, 852 | "convert-source-map": { 853 | "version": "1.5.0", 854 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz", 855 | "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=", 856 | "dev": true 857 | }, 858 | "core-js": { 859 | "version": "2.5.1", 860 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", 861 | "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=", 862 | "dev": true 863 | }, 864 | "core-util-is": { 865 | "version": "1.0.2", 866 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 867 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 868 | "dev": true 869 | }, 870 | "cross-spawn": { 871 | "version": "5.1.0", 872 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", 873 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", 874 | "dev": true, 875 | "requires": { 876 | "lru-cache": "4.1.1", 877 | "shebang-command": "1.2.0", 878 | "which": "1.3.0" 879 | } 880 | }, 881 | "debug": { 882 | "version": "2.6.8", 883 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", 884 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", 885 | "dev": true, 886 | "requires": { 887 | "ms": "2.0.0" 888 | } 889 | }, 890 | "deep-is": { 891 | "version": "0.1.3", 892 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 893 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 894 | "dev": true 895 | }, 896 | "del": { 897 | "version": "2.2.2", 898 | "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", 899 | "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", 900 | "dev": true, 901 | "requires": { 902 | "globby": "5.0.0", 903 | "is-path-cwd": "1.0.0", 904 | "is-path-in-cwd": "1.0.0", 905 | "object-assign": "4.1.1", 906 | "pify": "2.3.0", 907 | "pinkie-promise": "2.0.1", 908 | "rimraf": "2.6.2" 909 | } 910 | }, 911 | "detect-indent": { 912 | "version": "4.0.0", 913 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 914 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 915 | "dev": true, 916 | "requires": { 917 | "repeating": "2.0.1" 918 | } 919 | }, 920 | "doctrine": { 921 | "version": "2.0.0", 922 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", 923 | "integrity": "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=", 924 | "dev": true, 925 | "requires": { 926 | "esutils": "2.0.2", 927 | "isarray": "1.0.0" 928 | } 929 | }, 930 | "electron-to-chromium": { 931 | "version": "1.3.21", 932 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.21.tgz", 933 | "integrity": "sha1-qWfr3P6O0Ag/wkTRiUAiqOgRPqI=", 934 | "dev": true 935 | }, 936 | "emojis-list": { 937 | "version": "2.1.0", 938 | "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", 939 | "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", 940 | "dev": true 941 | }, 942 | "escape-string-regexp": { 943 | "version": "1.0.5", 944 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 945 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 946 | "dev": true 947 | }, 948 | "eslint": { 949 | "version": "4.6.1", 950 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.6.1.tgz", 951 | "integrity": "sha1-3cf8f9cL+TIFsLNEm7FqHp59SVA=", 952 | "dev": true, 953 | "requires": { 954 | "ajv": "5.2.2", 955 | "babel-code-frame": "6.26.0", 956 | "chalk": "2.1.0", 957 | "concat-stream": "1.6.0", 958 | "cross-spawn": "5.1.0", 959 | "debug": "2.6.8", 960 | "doctrine": "2.0.0", 961 | "eslint-scope": "3.7.1", 962 | "espree": "3.5.0", 963 | "esquery": "1.0.0", 964 | "estraverse": "4.2.0", 965 | "esutils": "2.0.2", 966 | "file-entry-cache": "2.0.0", 967 | "functional-red-black-tree": "1.0.1", 968 | "glob": "7.1.2", 969 | "globals": "9.18.0", 970 | "ignore": "3.3.5", 971 | "imurmurhash": "0.1.4", 972 | "inquirer": "3.2.3", 973 | "is-resolvable": "1.0.0", 974 | "js-yaml": "3.10.0", 975 | "json-stable-stringify": "1.0.1", 976 | "levn": "0.3.0", 977 | "lodash": "4.17.4", 978 | "minimatch": "3.0.4", 979 | "mkdirp": "0.5.1", 980 | "natural-compare": "1.4.0", 981 | "optionator": "0.8.2", 982 | "path-is-inside": "1.0.2", 983 | "pluralize": "4.0.0", 984 | "progress": "2.0.0", 985 | "require-uncached": "1.0.3", 986 | "semver": "5.4.1", 987 | "strip-ansi": "4.0.0", 988 | "strip-json-comments": "2.0.1", 989 | "table": "4.0.1", 990 | "text-table": "0.2.0" 991 | }, 992 | "dependencies": { 993 | "ansi-regex": { 994 | "version": "3.0.0", 995 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 996 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 997 | "dev": true 998 | }, 999 | "ansi-styles": { 1000 | "version": "3.2.0", 1001 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", 1002 | "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", 1003 | "dev": true, 1004 | "requires": { 1005 | "color-convert": "1.9.0" 1006 | } 1007 | }, 1008 | "chalk": { 1009 | "version": "2.1.0", 1010 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", 1011 | "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", 1012 | "dev": true, 1013 | "requires": { 1014 | "ansi-styles": "3.2.0", 1015 | "escape-string-regexp": "1.0.5", 1016 | "supports-color": "4.4.0" 1017 | } 1018 | }, 1019 | "strip-ansi": { 1020 | "version": "4.0.0", 1021 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1022 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1023 | "dev": true, 1024 | "requires": { 1025 | "ansi-regex": "3.0.0" 1026 | } 1027 | }, 1028 | "supports-color": { 1029 | "version": "4.4.0", 1030 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 1031 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 1032 | "dev": true, 1033 | "requires": { 1034 | "has-flag": "2.0.0" 1035 | } 1036 | } 1037 | } 1038 | }, 1039 | "eslint-scope": { 1040 | "version": "3.7.1", 1041 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", 1042 | "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", 1043 | "dev": true, 1044 | "requires": { 1045 | "esrecurse": "4.2.0", 1046 | "estraverse": "4.2.0" 1047 | } 1048 | }, 1049 | "espree": { 1050 | "version": "3.5.0", 1051 | "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.0.tgz", 1052 | "integrity": "sha1-mDWGJb3QVYYeon4oZ+pyn69GPY0=", 1053 | "dev": true, 1054 | "requires": { 1055 | "acorn": "5.1.2", 1056 | "acorn-jsx": "3.0.1" 1057 | } 1058 | }, 1059 | "esprima": { 1060 | "version": "4.0.0", 1061 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", 1062 | "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", 1063 | "dev": true 1064 | }, 1065 | "esquery": { 1066 | "version": "1.0.0", 1067 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", 1068 | "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", 1069 | "dev": true, 1070 | "requires": { 1071 | "estraverse": "4.2.0" 1072 | } 1073 | }, 1074 | "esrecurse": { 1075 | "version": "4.2.0", 1076 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", 1077 | "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", 1078 | "dev": true, 1079 | "requires": { 1080 | "estraverse": "4.2.0", 1081 | "object-assign": "4.1.1" 1082 | } 1083 | }, 1084 | "estraverse": { 1085 | "version": "4.2.0", 1086 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 1087 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", 1088 | "dev": true 1089 | }, 1090 | "esutils": { 1091 | "version": "2.0.2", 1092 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1093 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 1094 | "dev": true 1095 | }, 1096 | "external-editor": { 1097 | "version": "2.0.4", 1098 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.4.tgz", 1099 | "integrity": "sha1-HtkZnanL/i7y96MbL96LDRI2iXI=", 1100 | "dev": true, 1101 | "requires": { 1102 | "iconv-lite": "0.4.19", 1103 | "jschardet": "1.5.1", 1104 | "tmp": "0.0.31" 1105 | } 1106 | }, 1107 | "fast-deep-equal": { 1108 | "version": "1.0.0", 1109 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", 1110 | "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", 1111 | "dev": true 1112 | }, 1113 | "fast-levenshtein": { 1114 | "version": "2.0.6", 1115 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1116 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1117 | "dev": true 1118 | }, 1119 | "figures": { 1120 | "version": "2.0.0", 1121 | "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", 1122 | "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", 1123 | "dev": true, 1124 | "requires": { 1125 | "escape-string-regexp": "1.0.5" 1126 | } 1127 | }, 1128 | "file-entry-cache": { 1129 | "version": "2.0.0", 1130 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", 1131 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", 1132 | "dev": true, 1133 | "requires": { 1134 | "flat-cache": "1.2.2", 1135 | "object-assign": "4.1.1" 1136 | } 1137 | }, 1138 | "find-cache-dir": { 1139 | "version": "0.1.1", 1140 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", 1141 | "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", 1142 | "dev": true, 1143 | "requires": { 1144 | "commondir": "1.0.1", 1145 | "mkdirp": "0.5.1", 1146 | "pkg-dir": "1.0.0" 1147 | } 1148 | }, 1149 | "find-up": { 1150 | "version": "1.1.2", 1151 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 1152 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 1153 | "dev": true, 1154 | "requires": { 1155 | "path-exists": "2.1.0", 1156 | "pinkie-promise": "2.0.1" 1157 | } 1158 | }, 1159 | "flat-cache": { 1160 | "version": "1.2.2", 1161 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.2.2.tgz", 1162 | "integrity": "sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y=", 1163 | "dev": true, 1164 | "requires": { 1165 | "circular-json": "0.3.3", 1166 | "del": "2.2.2", 1167 | "graceful-fs": "4.1.11", 1168 | "write": "0.2.1" 1169 | } 1170 | }, 1171 | "fs.realpath": { 1172 | "version": "1.0.0", 1173 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1174 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1175 | "dev": true 1176 | }, 1177 | "functional-red-black-tree": { 1178 | "version": "1.0.1", 1179 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 1180 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 1181 | "dev": true 1182 | }, 1183 | "glob": { 1184 | "version": "7.1.2", 1185 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 1186 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 1187 | "dev": true, 1188 | "requires": { 1189 | "fs.realpath": "1.0.0", 1190 | "inflight": "1.0.6", 1191 | "inherits": "2.0.3", 1192 | "minimatch": "3.0.4", 1193 | "once": "1.4.0", 1194 | "path-is-absolute": "1.0.1" 1195 | } 1196 | }, 1197 | "globals": { 1198 | "version": "9.18.0", 1199 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 1200 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 1201 | "dev": true 1202 | }, 1203 | "globby": { 1204 | "version": "5.0.0", 1205 | "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 1206 | "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", 1207 | "dev": true, 1208 | "requires": { 1209 | "array-union": "1.0.2", 1210 | "arrify": "1.0.1", 1211 | "glob": "7.1.2", 1212 | "object-assign": "4.1.1", 1213 | "pify": "2.3.0", 1214 | "pinkie-promise": "2.0.1" 1215 | } 1216 | }, 1217 | "graceful-fs": { 1218 | "version": "4.1.11", 1219 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 1220 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 1221 | "dev": true 1222 | }, 1223 | "has-ansi": { 1224 | "version": "2.0.0", 1225 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 1226 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 1227 | "dev": true, 1228 | "requires": { 1229 | "ansi-regex": "2.1.1" 1230 | } 1231 | }, 1232 | "has-flag": { 1233 | "version": "2.0.0", 1234 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", 1235 | "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", 1236 | "dev": true 1237 | }, 1238 | "home-or-tmp": { 1239 | "version": "2.0.0", 1240 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 1241 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 1242 | "dev": true, 1243 | "requires": { 1244 | "os-homedir": "1.0.2", 1245 | "os-tmpdir": "1.0.2" 1246 | } 1247 | }, 1248 | "iconv-lite": { 1249 | "version": "0.4.19", 1250 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", 1251 | "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", 1252 | "dev": true 1253 | }, 1254 | "ignore": { 1255 | "version": "3.3.5", 1256 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.5.tgz", 1257 | "integrity": "sha512-JLH93mL8amZQhh/p6mfQgVBH3M6epNq3DfsXsTSuSrInVjwyYlFE1nv2AgfRCC8PoOhM0jwQ5v8s9LgbK7yGDw==", 1258 | "dev": true 1259 | }, 1260 | "imurmurhash": { 1261 | "version": "0.1.4", 1262 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1263 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1264 | "dev": true 1265 | }, 1266 | "inflight": { 1267 | "version": "1.0.6", 1268 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1269 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1270 | "dev": true, 1271 | "requires": { 1272 | "once": "1.4.0", 1273 | "wrappy": "1.0.2" 1274 | } 1275 | }, 1276 | "inherits": { 1277 | "version": "2.0.3", 1278 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1279 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", 1280 | "dev": true 1281 | }, 1282 | "inquirer": { 1283 | "version": "3.2.3", 1284 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.2.3.tgz", 1285 | "integrity": "sha512-Bc3KbimpDTOeQdDj18Ir/rlsGuhBSSNqdOnxaAuKhpkdnMMuKsEGbZD2v5KFF9oso2OU+BPh7+/u5obmFDRmWw==", 1286 | "dev": true, 1287 | "requires": { 1288 | "ansi-escapes": "2.0.0", 1289 | "chalk": "2.1.0", 1290 | "cli-cursor": "2.1.0", 1291 | "cli-width": "2.2.0", 1292 | "external-editor": "2.0.4", 1293 | "figures": "2.0.0", 1294 | "lodash": "4.17.4", 1295 | "mute-stream": "0.0.7", 1296 | "run-async": "2.3.0", 1297 | "rx-lite": "4.0.8", 1298 | "rx-lite-aggregates": "4.0.8", 1299 | "string-width": "2.1.1", 1300 | "strip-ansi": "4.0.0", 1301 | "through": "2.3.8" 1302 | }, 1303 | "dependencies": { 1304 | "ansi-regex": { 1305 | "version": "3.0.0", 1306 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 1307 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 1308 | "dev": true 1309 | }, 1310 | "ansi-styles": { 1311 | "version": "3.2.0", 1312 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", 1313 | "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", 1314 | "dev": true, 1315 | "requires": { 1316 | "color-convert": "1.9.0" 1317 | } 1318 | }, 1319 | "chalk": { 1320 | "version": "2.1.0", 1321 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", 1322 | "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", 1323 | "dev": true, 1324 | "requires": { 1325 | "ansi-styles": "3.2.0", 1326 | "escape-string-regexp": "1.0.5", 1327 | "supports-color": "4.4.0" 1328 | } 1329 | }, 1330 | "strip-ansi": { 1331 | "version": "4.0.0", 1332 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1333 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1334 | "dev": true, 1335 | "requires": { 1336 | "ansi-regex": "3.0.0" 1337 | } 1338 | }, 1339 | "supports-color": { 1340 | "version": "4.4.0", 1341 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 1342 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 1343 | "dev": true, 1344 | "requires": { 1345 | "has-flag": "2.0.0" 1346 | } 1347 | } 1348 | } 1349 | }, 1350 | "invariant": { 1351 | "version": "2.2.2", 1352 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", 1353 | "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", 1354 | "dev": true, 1355 | "requires": { 1356 | "loose-envify": "1.3.1" 1357 | } 1358 | }, 1359 | "is-finite": { 1360 | "version": "1.0.2", 1361 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", 1362 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", 1363 | "dev": true, 1364 | "requires": { 1365 | "number-is-nan": "1.0.1" 1366 | } 1367 | }, 1368 | "is-fullwidth-code-point": { 1369 | "version": "2.0.0", 1370 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 1371 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 1372 | "dev": true 1373 | }, 1374 | "is-path-cwd": { 1375 | "version": "1.0.0", 1376 | "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 1377 | "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", 1378 | "dev": true 1379 | }, 1380 | "is-path-in-cwd": { 1381 | "version": "1.0.0", 1382 | "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 1383 | "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", 1384 | "dev": true, 1385 | "requires": { 1386 | "is-path-inside": "1.0.0" 1387 | } 1388 | }, 1389 | "is-path-inside": { 1390 | "version": "1.0.0", 1391 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", 1392 | "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", 1393 | "dev": true, 1394 | "requires": { 1395 | "path-is-inside": "1.0.2" 1396 | } 1397 | }, 1398 | "is-promise": { 1399 | "version": "2.1.0", 1400 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 1401 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", 1402 | "dev": true 1403 | }, 1404 | "is-resolvable": { 1405 | "version": "1.0.0", 1406 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", 1407 | "integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=", 1408 | "dev": true, 1409 | "requires": { 1410 | "tryit": "1.0.3" 1411 | } 1412 | }, 1413 | "isarray": { 1414 | "version": "1.0.0", 1415 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1416 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 1417 | "dev": true 1418 | }, 1419 | "isexe": { 1420 | "version": "2.0.0", 1421 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1422 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 1423 | "dev": true 1424 | }, 1425 | "jquery": { 1426 | "version": "3.2.1", 1427 | "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz", 1428 | "integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c=" 1429 | }, 1430 | "js-tokens": { 1431 | "version": "3.0.2", 1432 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 1433 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 1434 | "dev": true 1435 | }, 1436 | "js-yaml": { 1437 | "version": "3.10.0", 1438 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", 1439 | "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", 1440 | "dev": true, 1441 | "requires": { 1442 | "argparse": "1.0.9", 1443 | "esprima": "4.0.0" 1444 | } 1445 | }, 1446 | "jschardet": { 1447 | "version": "1.5.1", 1448 | "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz", 1449 | "integrity": "sha512-vE2hT1D0HLZCLLclfBSfkfTTedhVj0fubHpJBHKwwUWX0nSbhPAfk+SG9rTX95BYNmau8rGFfCeaT6T5OW1C2A==", 1450 | "dev": true 1451 | }, 1452 | "jsesc": { 1453 | "version": "1.3.0", 1454 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 1455 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", 1456 | "dev": true 1457 | }, 1458 | "json-schema-traverse": { 1459 | "version": "0.3.1", 1460 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", 1461 | "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", 1462 | "dev": true 1463 | }, 1464 | "json-stable-stringify": { 1465 | "version": "1.0.1", 1466 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", 1467 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", 1468 | "dev": true, 1469 | "requires": { 1470 | "jsonify": "0.0.0" 1471 | } 1472 | }, 1473 | "json5": { 1474 | "version": "0.5.1", 1475 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 1476 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 1477 | "dev": true 1478 | }, 1479 | "jsonify": { 1480 | "version": "0.0.0", 1481 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 1482 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 1483 | "dev": true 1484 | }, 1485 | "levn": { 1486 | "version": "0.3.0", 1487 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 1488 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 1489 | "dev": true, 1490 | "requires": { 1491 | "prelude-ls": "1.1.2", 1492 | "type-check": "0.3.2" 1493 | } 1494 | }, 1495 | "loader-utils": { 1496 | "version": "0.2.17", 1497 | "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", 1498 | "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", 1499 | "dev": true, 1500 | "requires": { 1501 | "big.js": "3.1.3", 1502 | "emojis-list": "2.1.0", 1503 | "json5": "0.5.1", 1504 | "object-assign": "4.1.1" 1505 | } 1506 | }, 1507 | "lodash": { 1508 | "version": "4.17.4", 1509 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", 1510 | "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", 1511 | "dev": true 1512 | }, 1513 | "loose-envify": { 1514 | "version": "1.3.1", 1515 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", 1516 | "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", 1517 | "dev": true, 1518 | "requires": { 1519 | "js-tokens": "3.0.2" 1520 | } 1521 | }, 1522 | "lru-cache": { 1523 | "version": "4.1.1", 1524 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", 1525 | "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", 1526 | "dev": true, 1527 | "requires": { 1528 | "pseudomap": "1.0.2", 1529 | "yallist": "2.1.2" 1530 | } 1531 | }, 1532 | "mimic-fn": { 1533 | "version": "1.1.0", 1534 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", 1535 | "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", 1536 | "dev": true 1537 | }, 1538 | "minimatch": { 1539 | "version": "3.0.4", 1540 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 1541 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 1542 | "dev": true, 1543 | "requires": { 1544 | "brace-expansion": "1.1.8" 1545 | } 1546 | }, 1547 | "minimist": { 1548 | "version": "0.0.8", 1549 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 1550 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 1551 | "dev": true 1552 | }, 1553 | "mkdirp": { 1554 | "version": "0.5.1", 1555 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 1556 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 1557 | "dev": true, 1558 | "requires": { 1559 | "minimist": "0.0.8" 1560 | } 1561 | }, 1562 | "ms": { 1563 | "version": "2.0.0", 1564 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1565 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 1566 | "dev": true 1567 | }, 1568 | "mute-stream": { 1569 | "version": "0.0.7", 1570 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", 1571 | "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", 1572 | "dev": true 1573 | }, 1574 | "natural-compare": { 1575 | "version": "1.4.0", 1576 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 1577 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 1578 | "dev": true 1579 | }, 1580 | "number-is-nan": { 1581 | "version": "1.0.1", 1582 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 1583 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 1584 | "dev": true 1585 | }, 1586 | "object-assign": { 1587 | "version": "4.1.1", 1588 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1589 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 1590 | "dev": true 1591 | }, 1592 | "once": { 1593 | "version": "1.4.0", 1594 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1595 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1596 | "dev": true, 1597 | "requires": { 1598 | "wrappy": "1.0.2" 1599 | } 1600 | }, 1601 | "onetime": { 1602 | "version": "2.0.1", 1603 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", 1604 | "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", 1605 | "dev": true, 1606 | "requires": { 1607 | "mimic-fn": "1.1.0" 1608 | } 1609 | }, 1610 | "optionator": { 1611 | "version": "0.8.2", 1612 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 1613 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 1614 | "dev": true, 1615 | "requires": { 1616 | "deep-is": "0.1.3", 1617 | "fast-levenshtein": "2.0.6", 1618 | "levn": "0.3.0", 1619 | "prelude-ls": "1.1.2", 1620 | "type-check": "0.3.2", 1621 | "wordwrap": "1.0.0" 1622 | } 1623 | }, 1624 | "os-homedir": { 1625 | "version": "1.0.2", 1626 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 1627 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 1628 | "dev": true 1629 | }, 1630 | "os-tmpdir": { 1631 | "version": "1.0.2", 1632 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 1633 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 1634 | "dev": true 1635 | }, 1636 | "path-exists": { 1637 | "version": "2.1.0", 1638 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 1639 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 1640 | "dev": true, 1641 | "requires": { 1642 | "pinkie-promise": "2.0.1" 1643 | } 1644 | }, 1645 | "path-is-absolute": { 1646 | "version": "1.0.1", 1647 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1648 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 1649 | "dev": true 1650 | }, 1651 | "path-is-inside": { 1652 | "version": "1.0.2", 1653 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 1654 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", 1655 | "dev": true 1656 | }, 1657 | "pify": { 1658 | "version": "2.3.0", 1659 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1660 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 1661 | "dev": true 1662 | }, 1663 | "pinkie": { 1664 | "version": "2.0.4", 1665 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 1666 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 1667 | "dev": true 1668 | }, 1669 | "pinkie-promise": { 1670 | "version": "2.0.1", 1671 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 1672 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 1673 | "dev": true, 1674 | "requires": { 1675 | "pinkie": "2.0.4" 1676 | } 1677 | }, 1678 | "pkg-dir": { 1679 | "version": "1.0.0", 1680 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", 1681 | "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", 1682 | "dev": true, 1683 | "requires": { 1684 | "find-up": "1.1.2" 1685 | } 1686 | }, 1687 | "pluralize": { 1688 | "version": "4.0.0", 1689 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-4.0.0.tgz", 1690 | "integrity": "sha1-WbcIwcAZCi9pLxx2GMRGsFL9F2I=", 1691 | "dev": true 1692 | }, 1693 | "prelude-ls": { 1694 | "version": "1.1.2", 1695 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 1696 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 1697 | "dev": true 1698 | }, 1699 | "private": { 1700 | "version": "0.1.7", 1701 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz", 1702 | "integrity": "sha1-aM5eih7woju1cMwoU3tTMqumPvE=", 1703 | "dev": true 1704 | }, 1705 | "process-nextick-args": { 1706 | "version": "1.0.7", 1707 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 1708 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", 1709 | "dev": true 1710 | }, 1711 | "progress": { 1712 | "version": "2.0.0", 1713 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 1714 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", 1715 | "dev": true 1716 | }, 1717 | "pseudomap": { 1718 | "version": "1.0.2", 1719 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 1720 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 1721 | "dev": true 1722 | }, 1723 | "readable-stream": { 1724 | "version": "2.3.3", 1725 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 1726 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 1727 | "dev": true, 1728 | "requires": { 1729 | "core-util-is": "1.0.2", 1730 | "inherits": "2.0.3", 1731 | "isarray": "1.0.0", 1732 | "process-nextick-args": "1.0.7", 1733 | "safe-buffer": "5.1.1", 1734 | "string_decoder": "1.0.3", 1735 | "util-deprecate": "1.0.2" 1736 | } 1737 | }, 1738 | "regenerate": { 1739 | "version": "1.3.2", 1740 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.2.tgz", 1741 | "integrity": "sha1-0ZQcZ7rUN+G+dkM63Vs4X5WxkmA=", 1742 | "dev": true 1743 | }, 1744 | "regenerator-runtime": { 1745 | "version": "0.11.0", 1746 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", 1747 | "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==", 1748 | "dev": true 1749 | }, 1750 | "regenerator-transform": { 1751 | "version": "0.10.1", 1752 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", 1753 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", 1754 | "dev": true, 1755 | "requires": { 1756 | "babel-runtime": "6.26.0", 1757 | "babel-types": "6.26.0", 1758 | "private": "0.1.7" 1759 | } 1760 | }, 1761 | "regexpu-core": { 1762 | "version": "2.0.0", 1763 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", 1764 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", 1765 | "dev": true, 1766 | "requires": { 1767 | "regenerate": "1.3.2", 1768 | "regjsgen": "0.2.0", 1769 | "regjsparser": "0.1.5" 1770 | } 1771 | }, 1772 | "regjsgen": { 1773 | "version": "0.2.0", 1774 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", 1775 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", 1776 | "dev": true 1777 | }, 1778 | "regjsparser": { 1779 | "version": "0.1.5", 1780 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", 1781 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", 1782 | "dev": true, 1783 | "requires": { 1784 | "jsesc": "0.5.0" 1785 | }, 1786 | "dependencies": { 1787 | "jsesc": { 1788 | "version": "0.5.0", 1789 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 1790 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 1791 | "dev": true 1792 | } 1793 | } 1794 | }, 1795 | "repeating": { 1796 | "version": "2.0.1", 1797 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 1798 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 1799 | "dev": true, 1800 | "requires": { 1801 | "is-finite": "1.0.2" 1802 | } 1803 | }, 1804 | "require-uncached": { 1805 | "version": "1.0.3", 1806 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", 1807 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", 1808 | "dev": true, 1809 | "requires": { 1810 | "caller-path": "0.1.0", 1811 | "resolve-from": "1.0.1" 1812 | } 1813 | }, 1814 | "resolve-from": { 1815 | "version": "1.0.1", 1816 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", 1817 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", 1818 | "dev": true 1819 | }, 1820 | "restore-cursor": { 1821 | "version": "2.0.0", 1822 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", 1823 | "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", 1824 | "dev": true, 1825 | "requires": { 1826 | "onetime": "2.0.1", 1827 | "signal-exit": "3.0.2" 1828 | } 1829 | }, 1830 | "rimraf": { 1831 | "version": "2.6.2", 1832 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", 1833 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", 1834 | "dev": true, 1835 | "requires": { 1836 | "glob": "7.1.2" 1837 | } 1838 | }, 1839 | "run-async": { 1840 | "version": "2.3.0", 1841 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", 1842 | "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", 1843 | "dev": true, 1844 | "requires": { 1845 | "is-promise": "2.1.0" 1846 | } 1847 | }, 1848 | "rx-lite": { 1849 | "version": "4.0.8", 1850 | "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", 1851 | "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", 1852 | "dev": true 1853 | }, 1854 | "rx-lite-aggregates": { 1855 | "version": "4.0.8", 1856 | "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", 1857 | "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", 1858 | "dev": true, 1859 | "requires": { 1860 | "rx-lite": "4.0.8" 1861 | } 1862 | }, 1863 | "safe-buffer": { 1864 | "version": "5.1.1", 1865 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 1866 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", 1867 | "dev": true 1868 | }, 1869 | "semver": { 1870 | "version": "5.4.1", 1871 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", 1872 | "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", 1873 | "dev": true 1874 | }, 1875 | "shebang-command": { 1876 | "version": "1.2.0", 1877 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 1878 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 1879 | "dev": true, 1880 | "requires": { 1881 | "shebang-regex": "1.0.0" 1882 | } 1883 | }, 1884 | "shebang-regex": { 1885 | "version": "1.0.0", 1886 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 1887 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 1888 | "dev": true 1889 | }, 1890 | "signal-exit": { 1891 | "version": "3.0.2", 1892 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 1893 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 1894 | "dev": true 1895 | }, 1896 | "slash": { 1897 | "version": "1.0.0", 1898 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 1899 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", 1900 | "dev": true 1901 | }, 1902 | "slice-ansi": { 1903 | "version": "0.0.4", 1904 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", 1905 | "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", 1906 | "dev": true 1907 | }, 1908 | "source-map": { 1909 | "version": "0.5.7", 1910 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 1911 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 1912 | "dev": true 1913 | }, 1914 | "source-map-support": { 1915 | "version": "0.4.18", 1916 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", 1917 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", 1918 | "dev": true, 1919 | "requires": { 1920 | "source-map": "0.5.7" 1921 | } 1922 | }, 1923 | "sprintf-js": { 1924 | "version": "1.0.3", 1925 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 1926 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 1927 | "dev": true 1928 | }, 1929 | "string-width": { 1930 | "version": "2.1.1", 1931 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 1932 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 1933 | "dev": true, 1934 | "requires": { 1935 | "is-fullwidth-code-point": "2.0.0", 1936 | "strip-ansi": "4.0.0" 1937 | }, 1938 | "dependencies": { 1939 | "ansi-regex": { 1940 | "version": "3.0.0", 1941 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 1942 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 1943 | "dev": true 1944 | }, 1945 | "strip-ansi": { 1946 | "version": "4.0.0", 1947 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1948 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1949 | "dev": true, 1950 | "requires": { 1951 | "ansi-regex": "3.0.0" 1952 | } 1953 | } 1954 | } 1955 | }, 1956 | "string_decoder": { 1957 | "version": "1.0.3", 1958 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 1959 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 1960 | "dev": true, 1961 | "requires": { 1962 | "safe-buffer": "5.1.1" 1963 | } 1964 | }, 1965 | "strip-ansi": { 1966 | "version": "3.0.1", 1967 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 1968 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 1969 | "dev": true, 1970 | "requires": { 1971 | "ansi-regex": "2.1.1" 1972 | } 1973 | }, 1974 | "strip-json-comments": { 1975 | "version": "2.0.1", 1976 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 1977 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 1978 | "dev": true 1979 | }, 1980 | "supports-color": { 1981 | "version": "2.0.0", 1982 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 1983 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 1984 | "dev": true 1985 | }, 1986 | "table": { 1987 | "version": "4.0.1", 1988 | "resolved": "https://registry.npmjs.org/table/-/table-4.0.1.tgz", 1989 | "integrity": "sha1-qBFsEz+sLGH0pCCrbN9cTWHw5DU=", 1990 | "dev": true, 1991 | "requires": { 1992 | "ajv": "4.11.8", 1993 | "ajv-keywords": "1.5.1", 1994 | "chalk": "1.1.3", 1995 | "lodash": "4.17.4", 1996 | "slice-ansi": "0.0.4", 1997 | "string-width": "2.1.1" 1998 | }, 1999 | "dependencies": { 2000 | "ajv": { 2001 | "version": "4.11.8", 2002 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", 2003 | "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", 2004 | "dev": true, 2005 | "requires": { 2006 | "co": "4.6.0", 2007 | "json-stable-stringify": "1.0.1" 2008 | } 2009 | } 2010 | } 2011 | }, 2012 | "text-table": { 2013 | "version": "0.2.0", 2014 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 2015 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 2016 | "dev": true 2017 | }, 2018 | "through": { 2019 | "version": "2.3.8", 2020 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 2021 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 2022 | "dev": true 2023 | }, 2024 | "tmp": { 2025 | "version": "0.0.31", 2026 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", 2027 | "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", 2028 | "dev": true, 2029 | "requires": { 2030 | "os-tmpdir": "1.0.2" 2031 | } 2032 | }, 2033 | "to-fast-properties": { 2034 | "version": "1.0.3", 2035 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 2036 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", 2037 | "dev": true 2038 | }, 2039 | "trim-right": { 2040 | "version": "1.0.1", 2041 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 2042 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", 2043 | "dev": true 2044 | }, 2045 | "tryit": { 2046 | "version": "1.0.3", 2047 | "resolved": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz", 2048 | "integrity": "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=", 2049 | "dev": true 2050 | }, 2051 | "type-check": { 2052 | "version": "0.3.2", 2053 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 2054 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 2055 | "dev": true, 2056 | "requires": { 2057 | "prelude-ls": "1.1.2" 2058 | } 2059 | }, 2060 | "typedarray": { 2061 | "version": "0.0.6", 2062 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 2063 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", 2064 | "dev": true 2065 | }, 2066 | "util-deprecate": { 2067 | "version": "1.0.2", 2068 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2069 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 2070 | "dev": true 2071 | }, 2072 | "which": { 2073 | "version": "1.3.0", 2074 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", 2075 | "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", 2076 | "dev": true, 2077 | "requires": { 2078 | "isexe": "2.0.0" 2079 | } 2080 | }, 2081 | "wordwrap": { 2082 | "version": "1.0.0", 2083 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 2084 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 2085 | "dev": true 2086 | }, 2087 | "wrappy": { 2088 | "version": "1.0.2", 2089 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2090 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 2091 | "dev": true 2092 | }, 2093 | "write": { 2094 | "version": "0.2.1", 2095 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", 2096 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", 2097 | "dev": true, 2098 | "requires": { 2099 | "mkdirp": "0.5.1" 2100 | } 2101 | }, 2102 | "yallist": { 2103 | "version": "2.1.2", 2104 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 2105 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 2106 | "dev": true 2107 | } 2108 | } 2109 | } 2110 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rails-notes-app", 3 | "description": "", 4 | "version": "1.0.0", 5 | "main": "", 6 | "directories": { 7 | "lib": "lib", 8 | "test": "test" 9 | }, 10 | "scripts": { 11 | "start": "rails s", 12 | "migrate": "rake db:migrate", 13 | "g:c": "rails g controller", 14 | "g:m": "rails g model", 15 | "db_status": "erb config/database.yml", 16 | "routes": "rake routes", 17 | "js:dev": "webpack -d --watch", 18 | "js:build": "webpack -p --watch" 19 | }, 20 | "dependencies": { 21 | "jquery": "^3.2.1" 22 | }, 23 | "devDependencies": { 24 | "babel-core": "^6.24.1", 25 | "babel-loader": "^6.4.1", 26 | "babel-preset-env": "^1.3.3", 27 | "eslint": "^4.6.1" 28 | }, 29 | "author": "yTakkar ", 30 | "license": "ISC" 31 | } 32 | -------------------------------------------------------------------------------- /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/js/src/main.js: -------------------------------------------------------------------------------- 1 | import $ from 'jquery' 2 | 3 | // SCROLL TO TOP 4 | $('.page_end').on('click', () => { 5 | $('html, body').animate({ scrollTop: 0 }, 450) 6 | }) 7 | 8 | // FLASH MESSAGE CLOSE 9 | $('.flash_icon').on('click', () => { 10 | $('.flash').animate({ top: '105%' }) 11 | }) 12 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | # See http://www.robotstxt.org/robotstxt.html for documentation on how to use the robots.txt file 2 | -------------------------------------------------------------------------------- /screenshots/Snap 2017-09-15 at 20.52.14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/screenshots/Snap 2017-09-15 at 20.52.14.png -------------------------------------------------------------------------------- /screenshots/Snap 2017-09-15 at 20.52.25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/screenshots/Snap 2017-09-15 at 20.52.25.png -------------------------------------------------------------------------------- /screenshots/Snap 2017-09-15 at 20.53.58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/screenshots/Snap 2017-09-15 at 20.53.58.png -------------------------------------------------------------------------------- /screenshots/Snap 2017-09-15 at 20.58.56.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/screenshots/Snap 2017-09-15 at 20.58.56.png -------------------------------------------------------------------------------- /test/application_system_test_case.rb: -------------------------------------------------------------------------------- 1 | require "test_helper" 2 | 3 | class ApplicationSystemTestCase < ActionDispatch::SystemTestCase 4 | driven_by :selenium, using: :chrome, screen_size: [1400, 1400] 5 | end 6 | -------------------------------------------------------------------------------- /test/controllers/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/controllers/.keep -------------------------------------------------------------------------------- /test/controllers/pages_controller_test.rb: -------------------------------------------------------------------------------- 1 | require 'test_helper' 2 | 3 | class PagesControllerTest < ActionDispatch::IntegrationTest 4 | # test "the truth" do 5 | # assert true 6 | # end 7 | end 8 | -------------------------------------------------------------------------------- /test/controllers/posts_controller_test.rb: -------------------------------------------------------------------------------- 1 | require 'test_helper' 2 | 3 | class PostsControllerTest < ActionDispatch::IntegrationTest 4 | # test "the truth" do 5 | # assert true 6 | # end 7 | end 8 | -------------------------------------------------------------------------------- /test/fixtures/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/fixtures/.keep -------------------------------------------------------------------------------- /test/fixtures/files/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/fixtures/files/.keep -------------------------------------------------------------------------------- /test/fixtures/posts.yml: -------------------------------------------------------------------------------- 1 | # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html 2 | 3 | one: 4 | title: MyString 5 | content: MyText 6 | 7 | two: 8 | title: MyString 9 | content: MyText 10 | -------------------------------------------------------------------------------- /test/helpers/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/helpers/.keep -------------------------------------------------------------------------------- /test/integration/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/integration/.keep -------------------------------------------------------------------------------- /test/mailers/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/mailers/.keep -------------------------------------------------------------------------------- /test/models/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/models/.keep -------------------------------------------------------------------------------- /test/models/post_test.rb: -------------------------------------------------------------------------------- 1 | require 'test_helper' 2 | 3 | class PostTest < ActiveSupport::TestCase 4 | # test "the truth" do 5 | # assert true 6 | # end 7 | end 8 | -------------------------------------------------------------------------------- /test/system/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/test/system/.keep -------------------------------------------------------------------------------- /test/test_helper.rb: -------------------------------------------------------------------------------- 1 | require File.expand_path('../../config/environment', __FILE__) 2 | require 'rails/test_help' 3 | 4 | class ActiveSupport::TestCase 5 | # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order. 6 | fixtures :all 7 | 8 | # Add more helper methods to be used by all tests here... 9 | end 10 | -------------------------------------------------------------------------------- /tmp/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/tmp/.keep -------------------------------------------------------------------------------- /vendor/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yTakkar/Rails-Notes-App/857bdffc198a938eff8da6f23594fb62833ef66e/vendor/.keep -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | const path = require('path') 2 | 3 | module.exports = { 4 | entry: './public/js/src/main.js', 5 | output: { 6 | path: path.join(__dirname, '/public/js/dist/'), 7 | filename: 'bundle.js' 8 | }, 9 | module: { 10 | rules: [ 11 | { 12 | test: /\.js$/, 13 | exclude: /node_modules/, 14 | loader: 'babel-loader' 15 | } 16 | ] 17 | }, 18 | watch: true 19 | } 20 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | ansi-regex@^2.0.0: 6 | version "2.1.1" 7 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 8 | 9 | ansi-styles@^2.2.1: 10 | version "2.2.1" 11 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 12 | 13 | babel-code-frame@^6.26.0: 14 | version "6.26.0" 15 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" 16 | dependencies: 17 | chalk "^1.1.3" 18 | esutils "^2.0.2" 19 | js-tokens "^3.0.2" 20 | 21 | babel-core@^6.24.1, babel-core@^6.26.0: 22 | version "6.26.0" 23 | resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" 24 | dependencies: 25 | babel-code-frame "^6.26.0" 26 | babel-generator "^6.26.0" 27 | babel-helpers "^6.24.1" 28 | babel-messages "^6.23.0" 29 | babel-register "^6.26.0" 30 | babel-runtime "^6.26.0" 31 | babel-template "^6.26.0" 32 | babel-traverse "^6.26.0" 33 | babel-types "^6.26.0" 34 | babylon "^6.18.0" 35 | convert-source-map "^1.5.0" 36 | debug "^2.6.8" 37 | json5 "^0.5.1" 38 | lodash "^4.17.4" 39 | minimatch "^3.0.4" 40 | path-is-absolute "^1.0.1" 41 | private "^0.1.7" 42 | slash "^1.0.0" 43 | source-map "^0.5.6" 44 | 45 | babel-generator@^6.26.0: 46 | version "6.26.0" 47 | resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" 48 | dependencies: 49 | babel-messages "^6.23.0" 50 | babel-runtime "^6.26.0" 51 | babel-types "^6.26.0" 52 | detect-indent "^4.0.0" 53 | jsesc "^1.3.0" 54 | lodash "^4.17.4" 55 | source-map "^0.5.6" 56 | trim-right "^1.0.1" 57 | 58 | babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: 59 | version "6.24.1" 60 | resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" 61 | dependencies: 62 | babel-helper-explode-assignable-expression "^6.24.1" 63 | babel-runtime "^6.22.0" 64 | babel-types "^6.24.1" 65 | 66 | babel-helper-call-delegate@^6.24.1: 67 | version "6.24.1" 68 | resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" 69 | dependencies: 70 | babel-helper-hoist-variables "^6.24.1" 71 | babel-runtime "^6.22.0" 72 | babel-traverse "^6.24.1" 73 | babel-types "^6.24.1" 74 | 75 | babel-helper-define-map@^6.24.1: 76 | version "6.26.0" 77 | resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" 78 | dependencies: 79 | babel-helper-function-name "^6.24.1" 80 | babel-runtime "^6.26.0" 81 | babel-types "^6.26.0" 82 | lodash "^4.17.4" 83 | 84 | babel-helper-explode-assignable-expression@^6.24.1: 85 | version "6.24.1" 86 | resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" 87 | dependencies: 88 | babel-runtime "^6.22.0" 89 | babel-traverse "^6.24.1" 90 | babel-types "^6.24.1" 91 | 92 | babel-helper-function-name@^6.24.1: 93 | version "6.24.1" 94 | resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" 95 | dependencies: 96 | babel-helper-get-function-arity "^6.24.1" 97 | babel-runtime "^6.22.0" 98 | babel-template "^6.24.1" 99 | babel-traverse "^6.24.1" 100 | babel-types "^6.24.1" 101 | 102 | babel-helper-get-function-arity@^6.24.1: 103 | version "6.24.1" 104 | resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" 105 | dependencies: 106 | babel-runtime "^6.22.0" 107 | babel-types "^6.24.1" 108 | 109 | babel-helper-hoist-variables@^6.24.1: 110 | version "6.24.1" 111 | resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" 112 | dependencies: 113 | babel-runtime "^6.22.0" 114 | babel-types "^6.24.1" 115 | 116 | babel-helper-optimise-call-expression@^6.24.1: 117 | version "6.24.1" 118 | resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" 119 | dependencies: 120 | babel-runtime "^6.22.0" 121 | babel-types "^6.24.1" 122 | 123 | babel-helper-regex@^6.24.1: 124 | version "6.26.0" 125 | resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" 126 | dependencies: 127 | babel-runtime "^6.26.0" 128 | babel-types "^6.26.0" 129 | lodash "^4.17.4" 130 | 131 | babel-helper-remap-async-to-generator@^6.24.1: 132 | version "6.24.1" 133 | resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" 134 | dependencies: 135 | babel-helper-function-name "^6.24.1" 136 | babel-runtime "^6.22.0" 137 | babel-template "^6.24.1" 138 | babel-traverse "^6.24.1" 139 | babel-types "^6.24.1" 140 | 141 | babel-helper-replace-supers@^6.24.1: 142 | version "6.24.1" 143 | resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" 144 | dependencies: 145 | babel-helper-optimise-call-expression "^6.24.1" 146 | babel-messages "^6.23.0" 147 | babel-runtime "^6.22.0" 148 | babel-template "^6.24.1" 149 | babel-traverse "^6.24.1" 150 | babel-types "^6.24.1" 151 | 152 | babel-helpers@^6.24.1: 153 | version "6.24.1" 154 | resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" 155 | dependencies: 156 | babel-runtime "^6.22.0" 157 | babel-template "^6.24.1" 158 | 159 | babel-loader@^6.4.1: 160 | version "6.4.1" 161 | resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.4.1.tgz#0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca" 162 | dependencies: 163 | find-cache-dir "^0.1.1" 164 | loader-utils "^0.2.16" 165 | mkdirp "^0.5.1" 166 | object-assign "^4.0.1" 167 | 168 | babel-messages@^6.23.0: 169 | version "6.23.0" 170 | resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" 171 | dependencies: 172 | babel-runtime "^6.22.0" 173 | 174 | babel-plugin-check-es2015-constants@^6.22.0: 175 | version "6.22.0" 176 | resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" 177 | dependencies: 178 | babel-runtime "^6.22.0" 179 | 180 | babel-plugin-syntax-async-functions@^6.8.0: 181 | version "6.13.0" 182 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" 183 | 184 | babel-plugin-syntax-exponentiation-operator@^6.8.0: 185 | version "6.13.0" 186 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" 187 | 188 | babel-plugin-syntax-trailing-function-commas@^6.22.0: 189 | version "6.22.0" 190 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" 191 | 192 | babel-plugin-transform-async-to-generator@^6.22.0: 193 | version "6.24.1" 194 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" 195 | dependencies: 196 | babel-helper-remap-async-to-generator "^6.24.1" 197 | babel-plugin-syntax-async-functions "^6.8.0" 198 | babel-runtime "^6.22.0" 199 | 200 | babel-plugin-transform-es2015-arrow-functions@^6.22.0: 201 | version "6.22.0" 202 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" 203 | dependencies: 204 | babel-runtime "^6.22.0" 205 | 206 | babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: 207 | version "6.22.0" 208 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" 209 | dependencies: 210 | babel-runtime "^6.22.0" 211 | 212 | babel-plugin-transform-es2015-block-scoping@^6.23.0: 213 | version "6.26.0" 214 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" 215 | dependencies: 216 | babel-runtime "^6.26.0" 217 | babel-template "^6.26.0" 218 | babel-traverse "^6.26.0" 219 | babel-types "^6.26.0" 220 | lodash "^4.17.4" 221 | 222 | babel-plugin-transform-es2015-classes@^6.23.0: 223 | version "6.24.1" 224 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" 225 | dependencies: 226 | babel-helper-define-map "^6.24.1" 227 | babel-helper-function-name "^6.24.1" 228 | babel-helper-optimise-call-expression "^6.24.1" 229 | babel-helper-replace-supers "^6.24.1" 230 | babel-messages "^6.23.0" 231 | babel-runtime "^6.22.0" 232 | babel-template "^6.24.1" 233 | babel-traverse "^6.24.1" 234 | babel-types "^6.24.1" 235 | 236 | babel-plugin-transform-es2015-computed-properties@^6.22.0: 237 | version "6.24.1" 238 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" 239 | dependencies: 240 | babel-runtime "^6.22.0" 241 | babel-template "^6.24.1" 242 | 243 | babel-plugin-transform-es2015-destructuring@^6.23.0: 244 | version "6.23.0" 245 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" 246 | dependencies: 247 | babel-runtime "^6.22.0" 248 | 249 | babel-plugin-transform-es2015-duplicate-keys@^6.22.0: 250 | version "6.24.1" 251 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" 252 | dependencies: 253 | babel-runtime "^6.22.0" 254 | babel-types "^6.24.1" 255 | 256 | babel-plugin-transform-es2015-for-of@^6.23.0: 257 | version "6.23.0" 258 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" 259 | dependencies: 260 | babel-runtime "^6.22.0" 261 | 262 | babel-plugin-transform-es2015-function-name@^6.22.0: 263 | version "6.24.1" 264 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" 265 | dependencies: 266 | babel-helper-function-name "^6.24.1" 267 | babel-runtime "^6.22.0" 268 | babel-types "^6.24.1" 269 | 270 | babel-plugin-transform-es2015-literals@^6.22.0: 271 | version "6.22.0" 272 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" 273 | dependencies: 274 | babel-runtime "^6.22.0" 275 | 276 | babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: 277 | version "6.24.1" 278 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" 279 | dependencies: 280 | babel-plugin-transform-es2015-modules-commonjs "^6.24.1" 281 | babel-runtime "^6.22.0" 282 | babel-template "^6.24.1" 283 | 284 | babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: 285 | version "6.26.0" 286 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" 287 | dependencies: 288 | babel-plugin-transform-strict-mode "^6.24.1" 289 | babel-runtime "^6.26.0" 290 | babel-template "^6.26.0" 291 | babel-types "^6.26.0" 292 | 293 | babel-plugin-transform-es2015-modules-systemjs@^6.23.0: 294 | version "6.24.1" 295 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" 296 | dependencies: 297 | babel-helper-hoist-variables "^6.24.1" 298 | babel-runtime "^6.22.0" 299 | babel-template "^6.24.1" 300 | 301 | babel-plugin-transform-es2015-modules-umd@^6.23.0: 302 | version "6.24.1" 303 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" 304 | dependencies: 305 | babel-plugin-transform-es2015-modules-amd "^6.24.1" 306 | babel-runtime "^6.22.0" 307 | babel-template "^6.24.1" 308 | 309 | babel-plugin-transform-es2015-object-super@^6.22.0: 310 | version "6.24.1" 311 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" 312 | dependencies: 313 | babel-helper-replace-supers "^6.24.1" 314 | babel-runtime "^6.22.0" 315 | 316 | babel-plugin-transform-es2015-parameters@^6.23.0: 317 | version "6.24.1" 318 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" 319 | dependencies: 320 | babel-helper-call-delegate "^6.24.1" 321 | babel-helper-get-function-arity "^6.24.1" 322 | babel-runtime "^6.22.0" 323 | babel-template "^6.24.1" 324 | babel-traverse "^6.24.1" 325 | babel-types "^6.24.1" 326 | 327 | babel-plugin-transform-es2015-shorthand-properties@^6.22.0: 328 | version "6.24.1" 329 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" 330 | dependencies: 331 | babel-runtime "^6.22.0" 332 | babel-types "^6.24.1" 333 | 334 | babel-plugin-transform-es2015-spread@^6.22.0: 335 | version "6.22.0" 336 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" 337 | dependencies: 338 | babel-runtime "^6.22.0" 339 | 340 | babel-plugin-transform-es2015-sticky-regex@^6.22.0: 341 | version "6.24.1" 342 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" 343 | dependencies: 344 | babel-helper-regex "^6.24.1" 345 | babel-runtime "^6.22.0" 346 | babel-types "^6.24.1" 347 | 348 | babel-plugin-transform-es2015-template-literals@^6.22.0: 349 | version "6.22.0" 350 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" 351 | dependencies: 352 | babel-runtime "^6.22.0" 353 | 354 | babel-plugin-transform-es2015-typeof-symbol@^6.23.0: 355 | version "6.23.0" 356 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" 357 | dependencies: 358 | babel-runtime "^6.22.0" 359 | 360 | babel-plugin-transform-es2015-unicode-regex@^6.22.0: 361 | version "6.24.1" 362 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" 363 | dependencies: 364 | babel-helper-regex "^6.24.1" 365 | babel-runtime "^6.22.0" 366 | regexpu-core "^2.0.0" 367 | 368 | babel-plugin-transform-exponentiation-operator@^6.22.0: 369 | version "6.24.1" 370 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" 371 | dependencies: 372 | babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" 373 | babel-plugin-syntax-exponentiation-operator "^6.8.0" 374 | babel-runtime "^6.22.0" 375 | 376 | babel-plugin-transform-regenerator@^6.22.0: 377 | version "6.26.0" 378 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" 379 | dependencies: 380 | regenerator-transform "^0.10.0" 381 | 382 | babel-plugin-transform-strict-mode@^6.24.1: 383 | version "6.24.1" 384 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" 385 | dependencies: 386 | babel-runtime "^6.22.0" 387 | babel-types "^6.24.1" 388 | 389 | babel-preset-env@^1.3.3: 390 | version "1.6.0" 391 | resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" 392 | dependencies: 393 | babel-plugin-check-es2015-constants "^6.22.0" 394 | babel-plugin-syntax-trailing-function-commas "^6.22.0" 395 | babel-plugin-transform-async-to-generator "^6.22.0" 396 | babel-plugin-transform-es2015-arrow-functions "^6.22.0" 397 | babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" 398 | babel-plugin-transform-es2015-block-scoping "^6.23.0" 399 | babel-plugin-transform-es2015-classes "^6.23.0" 400 | babel-plugin-transform-es2015-computed-properties "^6.22.0" 401 | babel-plugin-transform-es2015-destructuring "^6.23.0" 402 | babel-plugin-transform-es2015-duplicate-keys "^6.22.0" 403 | babel-plugin-transform-es2015-for-of "^6.23.0" 404 | babel-plugin-transform-es2015-function-name "^6.22.0" 405 | babel-plugin-transform-es2015-literals "^6.22.0" 406 | babel-plugin-transform-es2015-modules-amd "^6.22.0" 407 | babel-plugin-transform-es2015-modules-commonjs "^6.23.0" 408 | babel-plugin-transform-es2015-modules-systemjs "^6.23.0" 409 | babel-plugin-transform-es2015-modules-umd "^6.23.0" 410 | babel-plugin-transform-es2015-object-super "^6.22.0" 411 | babel-plugin-transform-es2015-parameters "^6.23.0" 412 | babel-plugin-transform-es2015-shorthand-properties "^6.22.0" 413 | babel-plugin-transform-es2015-spread "^6.22.0" 414 | babel-plugin-transform-es2015-sticky-regex "^6.22.0" 415 | babel-plugin-transform-es2015-template-literals "^6.22.0" 416 | babel-plugin-transform-es2015-typeof-symbol "^6.23.0" 417 | babel-plugin-transform-es2015-unicode-regex "^6.22.0" 418 | babel-plugin-transform-exponentiation-operator "^6.22.0" 419 | babel-plugin-transform-regenerator "^6.22.0" 420 | browserslist "^2.1.2" 421 | invariant "^2.2.2" 422 | semver "^5.3.0" 423 | 424 | babel-register@^6.26.0: 425 | version "6.26.0" 426 | resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" 427 | dependencies: 428 | babel-core "^6.26.0" 429 | babel-runtime "^6.26.0" 430 | core-js "^2.5.0" 431 | home-or-tmp "^2.0.0" 432 | lodash "^4.17.4" 433 | mkdirp "^0.5.1" 434 | source-map-support "^0.4.15" 435 | 436 | babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: 437 | version "6.26.0" 438 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" 439 | dependencies: 440 | core-js "^2.4.0" 441 | regenerator-runtime "^0.11.0" 442 | 443 | babel-template@^6.24.1, babel-template@^6.26.0: 444 | version "6.26.0" 445 | resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" 446 | dependencies: 447 | babel-runtime "^6.26.0" 448 | babel-traverse "^6.26.0" 449 | babel-types "^6.26.0" 450 | babylon "^6.18.0" 451 | lodash "^4.17.4" 452 | 453 | babel-traverse@^6.24.1, babel-traverse@^6.26.0: 454 | version "6.26.0" 455 | resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" 456 | dependencies: 457 | babel-code-frame "^6.26.0" 458 | babel-messages "^6.23.0" 459 | babel-runtime "^6.26.0" 460 | babel-types "^6.26.0" 461 | babylon "^6.18.0" 462 | debug "^2.6.8" 463 | globals "^9.18.0" 464 | invariant "^2.2.2" 465 | lodash "^4.17.4" 466 | 467 | babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: 468 | version "6.26.0" 469 | resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" 470 | dependencies: 471 | babel-runtime "^6.26.0" 472 | esutils "^2.0.2" 473 | lodash "^4.17.4" 474 | to-fast-properties "^1.0.3" 475 | 476 | babylon@^6.18.0: 477 | version "6.18.0" 478 | resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" 479 | 480 | balanced-match@^1.0.0: 481 | version "1.0.0" 482 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 483 | 484 | big.js@^3.1.3: 485 | version "3.1.3" 486 | resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978" 487 | 488 | brace-expansion@^1.1.7: 489 | version "1.1.8" 490 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" 491 | dependencies: 492 | balanced-match "^1.0.0" 493 | concat-map "0.0.1" 494 | 495 | browserslist@^2.1.2: 496 | version "2.4.0" 497 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.4.0.tgz#693ee93d01e66468a6348da5498e011f578f87f8" 498 | dependencies: 499 | caniuse-lite "^1.0.30000718" 500 | electron-to-chromium "^1.3.18" 501 | 502 | caniuse-lite@^1.0.30000718: 503 | version "1.0.30000727" 504 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000727.tgz#20c895768398ded5f98a4beab4a76c285def41d2" 505 | 506 | chalk@^1.1.3: 507 | version "1.1.3" 508 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 509 | dependencies: 510 | ansi-styles "^2.2.1" 511 | escape-string-regexp "^1.0.2" 512 | has-ansi "^2.0.0" 513 | strip-ansi "^3.0.0" 514 | supports-color "^2.0.0" 515 | 516 | commondir@^1.0.1: 517 | version "1.0.1" 518 | resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 519 | 520 | concat-map@0.0.1: 521 | version "0.0.1" 522 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 523 | 524 | convert-source-map@^1.5.0: 525 | version "1.5.0" 526 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" 527 | 528 | core-js@^2.4.0, core-js@^2.5.0: 529 | version "2.5.1" 530 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" 531 | 532 | debug@^2.6.8: 533 | version "2.6.8" 534 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" 535 | dependencies: 536 | ms "2.0.0" 537 | 538 | detect-indent@^4.0.0: 539 | version "4.0.0" 540 | resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" 541 | dependencies: 542 | repeating "^2.0.0" 543 | 544 | electron-to-chromium@^1.3.18: 545 | version "1.3.21" 546 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.21.tgz#a967ebdcfe8ed0083fc244d1894022a8e8113ea2" 547 | 548 | emojis-list@^2.0.0: 549 | version "2.1.0" 550 | resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" 551 | 552 | escape-string-regexp@^1.0.2: 553 | version "1.0.5" 554 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 555 | 556 | esutils@^2.0.2: 557 | version "2.0.2" 558 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 559 | 560 | find-cache-dir@^0.1.1: 561 | version "0.1.1" 562 | resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" 563 | dependencies: 564 | commondir "^1.0.1" 565 | mkdirp "^0.5.1" 566 | pkg-dir "^1.0.0" 567 | 568 | find-up@^1.0.0: 569 | version "1.1.2" 570 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 571 | dependencies: 572 | path-exists "^2.0.0" 573 | pinkie-promise "^2.0.0" 574 | 575 | globals@^9.18.0: 576 | version "9.18.0" 577 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" 578 | 579 | has-ansi@^2.0.0: 580 | version "2.0.0" 581 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 582 | dependencies: 583 | ansi-regex "^2.0.0" 584 | 585 | home-or-tmp@^2.0.0: 586 | version "2.0.0" 587 | resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" 588 | dependencies: 589 | os-homedir "^1.0.0" 590 | os-tmpdir "^1.0.1" 591 | 592 | invariant@^2.2.2: 593 | version "2.2.2" 594 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" 595 | dependencies: 596 | loose-envify "^1.0.0" 597 | 598 | is-finite@^1.0.0: 599 | version "1.0.2" 600 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" 601 | dependencies: 602 | number-is-nan "^1.0.0" 603 | 604 | js-tokens@^3.0.0, js-tokens@^3.0.2: 605 | version "3.0.2" 606 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" 607 | 608 | jsesc@^1.3.0: 609 | version "1.3.0" 610 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" 611 | 612 | jsesc@~0.5.0: 613 | version "0.5.0" 614 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" 615 | 616 | json5@^0.5.0, json5@^0.5.1: 617 | version "0.5.1" 618 | resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" 619 | 620 | loader-utils@^0.2.16: 621 | version "0.2.17" 622 | resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" 623 | dependencies: 624 | big.js "^3.1.3" 625 | emojis-list "^2.0.0" 626 | json5 "^0.5.0" 627 | object-assign "^4.0.1" 628 | 629 | lodash@^4.17.4: 630 | version "4.17.4" 631 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" 632 | 633 | loose-envify@^1.0.0: 634 | version "1.3.1" 635 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" 636 | dependencies: 637 | js-tokens "^3.0.0" 638 | 639 | minimatch@^3.0.4: 640 | version "3.0.4" 641 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 642 | dependencies: 643 | brace-expansion "^1.1.7" 644 | 645 | minimist@0.0.8: 646 | version "0.0.8" 647 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 648 | 649 | mkdirp@^0.5.1: 650 | version "0.5.1" 651 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 652 | dependencies: 653 | minimist "0.0.8" 654 | 655 | ms@2.0.0: 656 | version "2.0.0" 657 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 658 | 659 | number-is-nan@^1.0.0: 660 | version "1.0.1" 661 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 662 | 663 | object-assign@^4.0.1: 664 | version "4.1.1" 665 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 666 | 667 | os-homedir@^1.0.0: 668 | version "1.0.2" 669 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 670 | 671 | os-tmpdir@^1.0.1: 672 | version "1.0.2" 673 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 674 | 675 | path-exists@^2.0.0: 676 | version "2.1.0" 677 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 678 | dependencies: 679 | pinkie-promise "^2.0.0" 680 | 681 | path-is-absolute@^1.0.1: 682 | version "1.0.1" 683 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 684 | 685 | pinkie-promise@^2.0.0: 686 | version "2.0.1" 687 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 688 | dependencies: 689 | pinkie "^2.0.0" 690 | 691 | pinkie@^2.0.0: 692 | version "2.0.4" 693 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 694 | 695 | pkg-dir@^1.0.0: 696 | version "1.0.0" 697 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" 698 | dependencies: 699 | find-up "^1.0.0" 700 | 701 | private@^0.1.6, private@^0.1.7: 702 | version "0.1.7" 703 | resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" 704 | 705 | regenerate@^1.2.1: 706 | version "1.3.2" 707 | resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" 708 | 709 | regenerator-runtime@^0.11.0: 710 | version "0.11.0" 711 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" 712 | 713 | regenerator-transform@^0.10.0: 714 | version "0.10.1" 715 | resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" 716 | dependencies: 717 | babel-runtime "^6.18.0" 718 | babel-types "^6.19.0" 719 | private "^0.1.6" 720 | 721 | regexpu-core@^2.0.0: 722 | version "2.0.0" 723 | resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" 724 | dependencies: 725 | regenerate "^1.2.1" 726 | regjsgen "^0.2.0" 727 | regjsparser "^0.1.4" 728 | 729 | regjsgen@^0.2.0: 730 | version "0.2.0" 731 | resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" 732 | 733 | regjsparser@^0.1.4: 734 | version "0.1.5" 735 | resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" 736 | dependencies: 737 | jsesc "~0.5.0" 738 | 739 | repeating@^2.0.0: 740 | version "2.0.1" 741 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" 742 | dependencies: 743 | is-finite "^1.0.0" 744 | 745 | semver@^5.3.0: 746 | version "5.4.1" 747 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" 748 | 749 | slash@^1.0.0: 750 | version "1.0.0" 751 | resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" 752 | 753 | source-map-support@^0.4.15: 754 | version "0.4.18" 755 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" 756 | dependencies: 757 | source-map "^0.5.6" 758 | 759 | source-map@^0.5.6: 760 | version "0.5.7" 761 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 762 | 763 | strip-ansi@^3.0.0: 764 | version "3.0.1" 765 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 766 | dependencies: 767 | ansi-regex "^2.0.0" 768 | 769 | supports-color@^2.0.0: 770 | version "2.0.0" 771 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 772 | 773 | to-fast-properties@^1.0.3: 774 | version "1.0.3" 775 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" 776 | 777 | trim-right@^1.0.1: 778 | version "1.0.1" 779 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" 780 | --------------------------------------------------------------------------------