From 4c063aa6cdbc89a8bd15fec558b6426271973c5c Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 19:55:41 +0530 Subject: [PATCH 01/46] New Table for CsvFiles --- Gemfile | 2 +- app/assets/javascripts/csvfiles.coffee | 3 + app/assets/stylesheets/csvfiles.scss | 3 + app/controllers/csvfiles_controller.rb | 2 + app/helpers/csvfiles_helper.rb | 2 + app/models/csvfile.rb | 2 + db/migrate/20190708141605_create_csvfiles.rb | 14 + .../20190708141804_add_csvfile_to_rusers.rb | 5 + db/schema.rb.example | 610 +++++++++--------- test/controllers/csvfiles_controller_test.rb | 7 + test/fixtures/csvfiles.yml | 17 + test/models/csvfile_test.rb | 7 + 12 files changed, 376 insertions(+), 298 deletions(-) create mode 100644 app/assets/javascripts/csvfiles.coffee create mode 100644 app/assets/stylesheets/csvfiles.scss create mode 100644 app/controllers/csvfiles_controller.rb create mode 100644 app/helpers/csvfiles_helper.rb create mode 100644 app/models/csvfile.rb create mode 100644 db/migrate/20190708141605_create_csvfiles.rb create mode 100644 db/migrate/20190708141804_add_csvfile_to_rusers.rb create mode 100644 test/controllers/csvfiles_controller_test.rb create mode 100644 test/fixtures/csvfiles.yml create mode 100644 test/models/csvfile_test.rb diff --git a/Gemfile b/Gemfile index 7e91ef389d..66e18a4a30 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source 'https://rubygems.org' -ruby '2.4.4' +ruby '2.5.3' git_source(:github) do |repo_name| repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") diff --git a/app/assets/javascripts/csvfiles.coffee b/app/assets/javascripts/csvfiles.coffee new file mode 100644 index 0000000000..24f83d18bb --- /dev/null +++ b/app/assets/javascripts/csvfiles.coffee @@ -0,0 +1,3 @@ +# Place all the behaviors and hooks related to the matching controller here. +# All this logic will automatically be available in application.js. +# You can use CoffeeScript in this file: http://coffeescript.org/ diff --git a/app/assets/stylesheets/csvfiles.scss b/app/assets/stylesheets/csvfiles.scss new file mode 100644 index 0000000000..eb1999e0c2 --- /dev/null +++ b/app/assets/stylesheets/csvfiles.scss @@ -0,0 +1,3 @@ +// Place all the styles related to the csvfiles controller here. +// They will automatically be included in application.css. +// You can use Sass (SCSS) here: https://sass-lang.com/ diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb new file mode 100644 index 0000000000..c559684e1d --- /dev/null +++ b/app/controllers/csvfiles_controller.rb @@ -0,0 +1,2 @@ +class CsvfilesController < ApplicationController +end diff --git a/app/helpers/csvfiles_helper.rb b/app/helpers/csvfiles_helper.rb new file mode 100644 index 0000000000..41fa09cf45 --- /dev/null +++ b/app/helpers/csvfiles_helper.rb @@ -0,0 +1,2 @@ +module CsvfilesHelper +end diff --git a/app/models/csvfile.rb b/app/models/csvfile.rb new file mode 100644 index 0000000000..84738edeb3 --- /dev/null +++ b/app/models/csvfile.rb @@ -0,0 +1,2 @@ +class Csvfile < ApplicationRecord +end diff --git a/db/migrate/20190708141605_create_csvfiles.rb b/db/migrate/20190708141605_create_csvfiles.rb new file mode 100644 index 0000000000..4ccf3581da --- /dev/null +++ b/db/migrate/20190708141605_create_csvfiles.rb @@ -0,0 +1,14 @@ +class CreateCsvfiles < ActiveRecord::Migration[5.2] + def change + create_table :csvfiles do |t| + t.integer :uid + t.string :filetitle + t.text :filedescription + t.string :filepath + t.string :filename + t.string :filestring + + t.timestamps + end + end +end diff --git a/db/migrate/20190708141804_add_csvfile_to_rusers.rb b/db/migrate/20190708141804_add_csvfile_to_rusers.rb new file mode 100644 index 0000000000..6cee1f974c --- /dev/null +++ b/db/migrate/20190708141804_add_csvfile_to_rusers.rb @@ -0,0 +1,5 @@ +class AddCsvfileToRusers < ActiveRecord::Migration[5.2] + def change + add_column :rusers, :csvfile, :string + end +end diff --git a/db/schema.rb.example b/db/schema.rb.example index 847fb6fb9d..60a2e0f8bb 100644 --- a/db/schema.rb.example +++ b/db/schema.rb.example @@ -1,4 +1,3 @@ -# encoding: UTF-8 # This file is auto-generated from the current state of the database. Instead # of editing this file, please use the migrations feature of Active Record to # incrementally modify your database, and then regenerate this schema definition. @@ -11,401 +10,418 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2019_06_13_193708) do +ActiveRecord::Schema.define(version: 2019_07_08_141804) do - create_table "answer_selections", force: true do |t| + create_table "answer_selections", force: :cascade do |t| t.integer "user_id" t.integer "aid" - t.boolean "liking", default: false + t.boolean "liking", default: false t.boolean "following", default: false + t.index ["user_id", "aid"], name: "index_answer_selections_on_user_id_and_aid" end - add_index "answer_selections", ["user_id", "aid"], name: "index_answer_selections_on_user_id_and_aid", using: :btree - - create_table "answers", force: true do |t| - t.integer "uid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.text "content", limit: 2147483647, null: false - t.integer "cached_likes", default: 0 - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.boolean "accepted", default: false + create_table "answers", force: :cascade do |t| + t.integer "uid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.text "content", limit: 2147483647, null: false + t.integer "cached_likes", default: 0 + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.boolean "accepted", default: false + t.index ["uid", "nid"], name: "index_answers_on_uid_and_nid" end - add_index "answers", ["uid", "nid"], name: "index_answers_on_uid_and_nid", using: :btree - - create_table "comments", primary_key: "cid", force: true do |t| - t.integer "pid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false - t.string "subject", limit: 64, default: "", null: false - t.text "comment", limit: 2147483647, null: false - t.string "hostname", limit: 128, default: "", null: false - t.integer "timestamp", default: 0, null: false - t.integer "status", default: 1, null: false - t.integer "format", limit: 2, default: 0, null: false - t.string "thread" - t.string "name", limit: 60 - t.string "mail", limit: 64 - t.string "homepage" - t.integer "aid", default: 0, null: false - t.integer "comment_via", limit: 4, default: 0 - t.string "message_id", limit: 255 - t.string "tweet_id" + create_table "comments", primary_key: "cid", force: :cascade do |t| + t.integer "pid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false + t.string "subject", limit: 64, default: "", null: false + t.text "comment", limit: 2147483647, null: false + t.string "hostname", limit: 128, default: "", null: false + t.integer "timestamp", default: 0, null: false + t.integer "status", default: 1, null: false + t.integer "format", limit: 2, default: 0, null: false + t.string "thread" + t.string "name", limit: 60 + t.string "mail", limit: 64 + t.string "homepage" + t.integer "aid", default: 0, null: false + t.integer "comment_via", limit: 4, default: 0 + t.string "message_id", limit: 255 + t.string "tweet_id" t.integer "reply_to" + t.index ["nid"], name: "index_comments_nid" + t.index ["pid"], name: "index_comments_pid" + t.index ["status"], name: "index_comments_status" end - add_index "comments", ["comment"], name: "index_comments_on_comment", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' - add_index "comments", ["nid"], name: "index_comments_nid", using: :btree - add_index "comments", ["pid"], name: "index_comments_pid", using: :btree - add_index "comments", ["status"], name: "index_comments_status", using: :btree - - create_table "community_tags", id: false, force: true do |t| - t.integer "tid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false + create_table "community_tags", id: false, force: :cascade do |t| + t.integer "tid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false t.integer "date", default: 0, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.index ["nid"], name: "index_community_tags_nid" + t.index ["tid", "nid"], name: "tid_nid" + t.index ["tid"], name: "index_community_tags_tid" + t.index ["uid"], name: "index_community_tags_uid" end - add_index "community_tags", ["nid"], name: "index_community_tags_nid", using: :btree - add_index "community_tags", ["tid", "nid"], name: "tid_nid", using: :btree - add_index "community_tags", ["tid"], name: "index_community_tags_tid", using: :btree - add_index "community_tags", ["uid"], name: "index_community_tags_uid", using: :btree - - create_table "content_field_image_gallery", id: false, force: true do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false + create_table "content_field_image_gallery", id: false, force: :cascade do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false t.integer "field_image_gallery_fid" t.integer "field_image_gallery_list", limit: 1 - t.text "field_image_gallery_data" + t.text "field_image_gallery_data" + t.index ["nid"], name: "index_content_field_image_gallery_nid" end - add_index "content_field_image_gallery", ["nid"], name: "index_content_field_image_gallery_nid", using: :btree - - create_table "content_field_main_image", primary_key: "vid", force: true do |t| - t.integer "nid", default: 0, null: false + create_table "content_field_main_image", primary_key: "vid", force: :cascade do |t| + t.integer "nid", default: 0, null: false t.integer "field_main_image_fid" t.integer "field_main_image_list", limit: 1 - t.text "field_main_image_data" + t.text "field_main_image_data" + t.index ["nid"], name: "index_content_field_main_image_nid" end - add_index "content_field_main_image", ["nid"], name: "index_content_field_main_image_nid", using: :btree - - create_table "content_field_map_editor", id: false, force: true do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false - t.text "field_map_editor_value", limit: 2147483647 + create_table "content_field_map_editor", id: false, force: :cascade do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false + t.text "field_map_editor_value", limit: 2147483647 + t.index ["nid"], name: "index_content_field_map_editor_nid" end - add_index "content_field_map_editor", ["nid"], name: "index_content_field_map_editor_nid", using: :btree - - create_table "content_field_mappers", id: false, force: true do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false - t.text "field_mappers_value", limit: 2147483647 + create_table "content_field_mappers", id: false, force: :cascade do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false + t.text "field_mappers_value", limit: 2147483647 + t.index ["nid"], name: "index_content_field_mappers_nid" end - add_index "content_field_mappers", ["nid"], name: "index_content_field_mappers_nid", using: :btree - - create_table "content_type_map", primary_key: "vid", force: true do |t| - t.integer "nid", default: 0, null: false - t.string "field_publication_date_value", limit: 20 - t.string "field_capture_date_value", limit: 20 - t.text "field_geotiff_url_value", limit: 2147483647 - t.text "field_google_maps_url_value", limit: 2147483647 - t.text "field_openlayers_url_value", limit: 2147483647 - t.text "field_tms_url_value", limit: 2147483647 - t.text "field_jpg_url_value", limit: 2147483647 - t.text "field_license_value", limit: 2147483647 - t.text "field_raw_images_value", limit: 2147483647 - t.text "field_cartographer_notes_value", limit: 2147483647 + create_table "content_type_map", primary_key: "vid", force: :cascade do |t| + t.integer "nid", default: 0, null: false + t.string "field_publication_date_value", limit: 20 + t.string "field_capture_date_value", limit: 20 + t.text "field_geotiff_url_value", limit: 2147483647 + t.text "field_google_maps_url_value", limit: 2147483647 + t.text "field_openlayers_url_value", limit: 2147483647 + t.text "field_tms_url_value", limit: 2147483647 + t.text "field_jpg_url_value", limit: 2147483647 + t.text "field_license_value", limit: 2147483647 + t.text "field_raw_images_value", limit: 2147483647 + t.text "field_cartographer_notes_value", limit: 2147483647 t.integer "field_cartographer_notes_format" - t.text "field_notes_value", limit: 2147483647 + t.text "field_notes_value", limit: 2147483647 t.integer "field_notes_format" - t.text "field_mbtiles_url_value", limit: 2147483647 + t.text "field_mbtiles_url_value", limit: 2147483647 t.integer "field_zoom_min_value" - t.decimal "field_ground_resolution_value", precision: 10, scale: 2 - t.decimal "field_geotiff_filesize_value", precision: 10, scale: 1 - t.decimal "field_jpg_filesize_value", precision: 10, scale: 1 - t.decimal "field_raw_images_filesize_value", precision: 10, scale: 1 - t.text "field_tms_tile_type_value", limit: 2147483647 + t.decimal "field_ground_resolution_value", precision: 10, scale: 2 + t.decimal "field_geotiff_filesize_value", precision: 10, scale: 1 + t.decimal "field_jpg_filesize_value", precision: 10, scale: 1 + t.decimal "field_raw_images_filesize_value", precision: 10, scale: 1 + t.text "field_tms_tile_type_value", limit: 2147483647 t.integer "field_zoom_max_value" - t.string "authorship" + t.string "authorship" + t.index ["nid"], name: "index_content_type_map_nid" end - add_index "content_type_map", ["nid"], name: "index_content_type_map_nid", using: :btree - - create_table "files", primary_key: "fid", force: true do |t| - t.integer "uid", default: 0, null: false - t.string "filename", default: "", null: false - t.string "filepath", default: "", null: false - t.string "filemime", default: "", null: false - t.integer "filesize", default: 0, null: false - t.integer "status", default: 0, null: false - t.integer "timestamp", default: 0, null: false + create_table "csvfiles", force: :cascade do |t| + t.integer "uid" + t.string "filename" + t.string "filepath" + t.string "filetitle" + t.text "filedescription" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.string "filestring" + t.string "string" end - add_index "files", ["status"], name: "index_files_status", using: :btree - add_index "files", ["timestamp"], name: "index_files_timestamp", using: :btree - add_index "files", ["uid"], name: "index_files_uid", using: :btree + create_table "files", primary_key: "fid", force: :cascade do |t| + t.integer "uid", default: 0, null: false + t.string "filename", default: "", null: false + t.string "filepath", default: "", null: false + t.string "filemime", default: "", null: false + t.integer "filesize", default: 0, null: false + t.integer "status", default: 0, null: false + t.integer "timestamp", default: 0, null: false + t.index ["status"], name: "index_files_status" + t.index ["timestamp"], name: "index_files_timestamp" + t.index ["uid"], name: "index_files_uid" + end - create_table "friendly_id_slugs", force: true do |t| - t.string "slug", null: false - t.integer "sluggable_id", null: false - t.string "sluggable_type", limit: 40 + create_table "friendly_id_slugs", force: :cascade do |t| + t.string "slug", null: false + t.integer "sluggable_id", null: false + t.string "sluggable_type", limit: 40 t.datetime "created_at" end - create_table "images", force: true do |t| - t.string "title" - t.integer "uid" - t.integer "nid" - t.string "notes" - t.integer "version", default: 0 - t.string "photo_file_name" - t.string "photo_content_type" - t.string "photo_file_size" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "remote_url" - t.integer "vid", default: 0 + create_table "images", force: :cascade do |t| + t.string "title" + t.integer "uid" + t.integer "nid" + t.string "notes" + t.integer "version", default: 0 + t.string "photo_file_name" + t.string "photo_content_type" + t.string "photo_file_size" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.string "remote_url" + t.integer "vid", default: 0 end - create_table "impressions", force: true do |t| - t.string "impressionable_type" - t.integer "impressionable_id" - t.integer "user_id" - t.string "controller_name" - t.string "action_name" - t.string "view_name" - t.string "request_hash" - t.string "ip_address" - t.string "session_hash" - t.text "message" - t.text "referrer" - t.text "params" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + create_table "impressions", force: :cascade do |t| + t.string "impressionable_type" + t.integer "impressionable_id" + t.integer "user_id" + t.string "controller_name" + t.string "action_name" + t.string "view_name" + t.string "request_hash" + t.string "ip_address" + t.string "session_hash" + t.text "message" + t.text "referrer" + t.text "params" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.index ["controller_name", "action_name", "ip_address"], name: "controlleraction_ip_index" + t.index ["controller_name", "action_name", "request_hash"], name: "controlleraction_request_index" + t.index ["controller_name", "action_name", "session_hash"], name: "controlleraction_session_index" + t.index ["impressionable_id"], name: "index_impressions_on_impressionable_id" + t.index ["impressionable_type", "impressionable_id", "ip_address"], name: "poly_ip_index" + t.index ["impressionable_type", "impressionable_id", "params"], name: "poly_params_request_index" + t.index ["impressionable_type", "impressionable_id", "request_hash"], name: "poly_request_index" + t.index ["impressionable_type", "impressionable_id", "session_hash"], name: "poly_session_index" + t.index ["impressionable_type", "message", "impressionable_id"], name: "impressionable_type_message_index" + t.index ["impressionable_type"], name: "index_impressions_on_impressionable_type" + t.index ["ip_address"], name: "index_impressions_on_ip_address" + t.index ["user_id"], name: "index_impressions_on_user_id" end - add_index "impressions", ["controller_name", "action_name", "ip_address"], name: "controlleraction_ip_index", using: :btree - add_index "impressions", ["controller_name", "action_name", "request_hash"], name: "controlleraction_request_index", using: :btree - add_index "impressions", ["controller_name", "action_name", "session_hash"], name: "controlleraction_session_index", using: :btree - add_index "impressions", ["impressionable_id"], name: "index_impressions_on_impressionable_id", using: :btree - add_index "impressions", ["impressionable_type", "impressionable_id", "ip_address"], name: "poly_ip_index", using: :btree - add_index "impressions", ["impressionable_type", "impressionable_id", "params"], name: "poly_params_request_index", length: {"impressionable_type"=>nil, "impressionable_id"=>nil, "params"=>255}, using: :btree - add_index "impressions", ["impressionable_type", "impressionable_id", "request_hash"], name: "poly_request_index", using: :btree - add_index "impressions", ["impressionable_type", "impressionable_id", "session_hash"], name: "poly_session_index", using: :btree - add_index "impressions", ["impressionable_type", "message", "impressionable_id"], name: "impressionable_type_message_index", length: {"impressionable_type"=>nil, "message"=>255, "impressionable_id"=>nil}, using: :btree - add_index "impressions", ["impressionable_type"], name: "index_impressions_on_impressionable_type", using: :btree - add_index "impressions", ["user_id"], name: "index_impressions_on_user_id", using: :btree - add_index "impressions", ["ip_address"], name: "index_impressions_on_ip_address", using: :btree - - create_table "likes", force: true do |t| - t.integer "likeable_id" - t.integer "user_id" - t.string "likeable_type" + create_table "likes", force: :cascade do |t| + t.integer "likeable_id" + t.integer "user_id" + t.string "likeable_type" t.datetime "created_at" t.datetime "updated_at" - t.string "emoji_type" + t.string "emoji_type" end - create_table "node", primary_key: "nid", force: true do |t| - t.integer "vid", default: 0, null: false - t.string "type", limit: 32, default: "", null: false - t.string "language", limit: 12, default: "", null: false - t.string "title", default: "", null: false - t.integer "uid", default: 0, null: false - t.integer "status", default: 1, null: false - t.integer "created", default: 0, null: false - t.integer "changed", default: 0, null: false - t.integer "comment", default: 0, null: false - t.integer "promote", default: 0, null: false - t.integer "moderate", default: 0, null: false - t.integer "sticky", default: 0, null: false - t.integer "tnid", default: 0, null: false - t.integer "translate", default: 0, null: false - t.integer "cached_likes", default: 0 - t.integer "comments_count", default: 0 - t.integer "drupal_node_revisions_count", default: 0 - t.string "path" + create_table "node", primary_key: "nid", force: :cascade do |t| + t.integer "vid", default: 0, null: false + t.string "type", limit: 32, default: "", null: false + t.string "language", limit: 12, default: "", null: false + t.string "title", default: "", null: false + t.integer "uid", default: 0, null: false + t.integer "status", default: 1, null: false + t.integer "created", default: 0, null: false + t.integer "changed", default: 0, null: false + t.integer "comment", default: 0, null: false + t.integer "promote", default: 0, null: false + t.integer "moderate", default: 0, null: false + t.integer "sticky", default: 0, null: false + t.integer "tnid", default: 0, null: false + t.integer "translate", default: 0, null: false + t.integer "cached_likes", default: 0 + t.integer "comments_count", default: 0 + t.integer "drupal_node_revisions_count", default: 0 + t.string "path" t.integer "main_image_id" - t.string "slug" - t.integer "views", default: 0 - t.decimal "latitude", precision: 20, scale: 17 - t.decimal "longitude", precision: 20, scale: 17 + t.string "slug" + t.integer "views", default: 0 + t.decimal "latitude", precision: 20, scale: 17 + t.decimal "longitude", precision: 20, scale: 17 t.integer "precision" + t.index ["changed"], name: "node_changed" + t.index ["created"], name: "node_created" + t.index ["moderate"], name: "node_moderate" + t.index ["promote", "status"], name: "node_promote_status" + t.index ["slug"], name: "index_node_on_slug" + t.index ["status", "type", "nid"], name: "node_status_type" + t.index ["title", "type"], name: "node_title_type" + t.index ["tnid"], name: "index_node_tnid" + t.index ["translate"], name: "index_node_translate" + t.index ["type"], name: "node_type" + t.index ["uid"], name: "index_node_uid" + t.index ["vid"], name: "index_node_vid" end - add_index "node", ["changed"], name: "node_changed", using: :btree - add_index "node", ["created"], name: "node_created", using: :btree - add_index "node", ["moderate"], name: "node_moderate", using: :btree - add_index "node", ["promote", "status"], name: "node_promote_status", using: :btree - add_index "node", ["slug"], name: "index_node_on_slug", using: :btree - add_index "node", ["status", "type", "nid"], name: "node_status_type", using: :btree - add_index "node", ["title", "type"], name: "node_title_type", using: :btree - add_index "node", ["tnid"], name: "index_node_tnid", using: :btree - add_index "node", ["translate"], name: "index_node_translate", using: :btree - add_index "node", ["type"], name: "node_type", using: :btree - add_index "node", ["uid"], name: "index_node_uid", using: :btree - add_index "node", ["vid"], name: "index_node_vid", using: :btree - - create_table "node_access", id: false, force: true do |t| - t.integer "nid", default: 0, null: false - t.integer "gid", default: 0, null: false - t.string "realm", default: "", null: false - t.integer "grant_view", limit: 1, default: 0, null: false - t.integer "grant_update", limit: 1, default: 0, null: false - t.integer "grant_delete", limit: 1, default: 0, null: false + create_table "node_access", id: false, force: :cascade do |t| + t.integer "nid", default: 0, null: false + t.integer "gid", default: 0, null: false + t.string "realm", default: "", null: false + t.integer "grant_view", limit: 1, default: 0, null: false + t.integer "grant_update", limit: 1, default: 0, null: false + t.integer "grant_delete", limit: 1, default: 0, null: false end - create_table "node_revisions", primary_key: "vid", force: true do |t| - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false - t.string "title", default: "", null: false - t.text "body", limit: 2147483647, null: false - t.text "teaser" - t.text "log" - t.integer "timestamp", default: 0, null: false - t.integer "format", default: 0, null: false - t.integer "status", default: 1 + create_table "node_revisions", primary_key: "vid", force: :cascade do |t| + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false + t.string "title", default: "", null: false + t.text "body", limit: 2147483647, null: false + t.text "teaser" + t.text "log" + t.integer "timestamp", default: 0, null: false + t.integer "format", default: 0, null: false + t.integer "status", default: 1 + t.index ["nid"], name: "index_node_revisions_nid" + t.index ["timestamp"], name: "index_node_revisions_timestamp" + t.index ["uid"], name: "index_node_revisions_uid" end - add_index "node_revisions", ["body", "title"], name: "index_node_revisions_on_body_and_title", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' - add_index "node_revisions", ["nid"], name: "index_node_revisions_nid", using: :btree - add_index "node_revisions", ["timestamp"], name: "index_node_revisions_timestamp", using: :btree - add_index "node_revisions", ["uid"], name: "index_node_revisions_uid", using: :btree - - create_table "node_selections", id: false, force: true do |t| + create_table "node_selections", id: false, force: :cascade do |t| t.integer "user_id" t.integer "nid" t.boolean "following", default: true - t.boolean "liking", default: false + t.boolean "liking", default: false + t.index ["user_id", "nid"], name: "index_node_selections_on_user_id_and_nid", unique: true end - add_index "node_selections", ["user_id", "nid"], name: "index_node_selections_on_user_id_and_nid", unique: true, using: :btree - - create_table "relationships", force: true do |t| - t.integer "follower_id" - t.integer "followed_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + create_table "relationships", force: :cascade do |t| + t.integer "follower_id" + t.integer "followed_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.index ["followed_id"], name: "index_relationships_on_followed_id" + t.index ["follower_id", "followed_id"], name: "index_relationships_on_follower_id_and_followed_id", unique: true + t.index ["follower_id"], name: "index_relationships_on_follower_id" end - add_index "relationships", ["followed_id"], name: "index_relationships_on_followed_id", using: :btree - add_index "relationships", ["follower_id", "followed_id"], name: "index_relationships_on_follower_id_and_followed_id", unique: true, using: :btree - add_index "relationships", ["follower_id"], name: "index_relationships_on_follower_id", using: :btree - - create_table "rsessions", force: true do |t| - t.string "session_id", null: false - t.text "data" + create_table "rsessions", force: :cascade do |t| + t.string "session_id", null: false + t.text "data" t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.index ["session_id"], name: "index_rsessions_on_session_id" + t.index ["updated_at"], name: "index_rsessions_on_updated_at" end - add_index "rsessions", ["session_id"], name: "index_rsessions_on_session_id", using: :btree - add_index "rsessions", ["updated_at"], name: "index_rsessions_on_updated_at", using: :btree - - create_table "rusers", force: true do |t| - t.string "username" - t.string "email" - t.string "crypted_password" - t.string "password_salt" - t.string "persistence_token" - t.integer "login_count", default: 0, null: false - t.integer "failed_login_count", default: 0, null: false + create_table "rusers", force: :cascade do |t| + t.string "username" + t.string "email" + t.string "crypted_password" + t.string "password_salt" + t.string "persistence_token" + t.integer "login_count", default: 0, null: false + t.integer "failed_login_count", default: 0, null: false t.datetime "last_request_at" t.datetime "current_login_at" t.datetime "last_login_at" - t.string "current_login_ip" - t.string "last_login_ip" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "openid_identifier" - t.string "role", default: "basic" - t.string "reset_key" - t.string "photo_file_name" - t.string "photo_content_type" - t.string "photo_file_size" - t.text "bio", limit: 2147483647 - t.string "token" - t.integer "status", default: 0 + t.string "current_login_ip" + t.string "last_login_ip" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.string "openid_identifier" + t.string "role", default: "basic" + t.string "reset_key" + t.string "photo_file_name" + t.string "photo_content_type" + t.string "photo_file_size" + t.text "bio", limit: 2147483647 + t.string "token" + t.integer "status", default: 0 t.integer "password_checker", default: 0 t.boolean "is_verified", default: false + t.string "csvfile" + t.index ["created_at"], name: "index_rusers_created_at" + t.index ["email"], name: "index_rusers_on_email" + t.index ["persistence_token"], name: "index_rusers_on_persistence_token" + t.index ["status"], name: "index_rusers_on_status" + t.index ["username"], name: "index_rusers_on_username" end - add_index "rusers", ["created_at"], name: "index_rusers_created_at", using: :btree - add_index "rusers", ["email"], name: "index_rusers_on_email", using: :btree - add_index "rusers", ["persistence_token"], name: "index_rusers_on_persistence_token", using: :btree - add_index "rusers", ["status"], name: "index_rusers_on_status", using: :btree - add_index "rusers", ["username", "bio"], name: "index_rusers_on_username_and_bio", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' - add_index "rusers", ["username"], name: "index_rusers_on_username", using: :btree - add_index "rusers", ["username"], name: "rusers_username_fulltext_idx", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' - - create_table "tag_selections", id: false, force: :cascade do |t| + create_table "tag_selections", id: false, force: :cascade do |t| t.integer "user_id" t.integer "tid" t.boolean "following", default: false t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.index ["user_id", "tid"], name: "index_tag_selections_on_user_id_and_tid", unique: true end - add_index "tag_selections", ["user_id", "tid"], name: "index_tag_selections_on_user_id_and_tid", unique: true, using: :btree - - create_table "term_data", primary_key: "tid", force: true do |t| - t.integer "vid", default: 0, null: false - t.string "name", default: "", null: false - t.text "description", limit: 2147483647 - t.integer "weight", limit: 1, default: 0, null: false + create_table "term_data", primary_key: "tid", force: :cascade do |t| + t.integer "vid", default: 0, null: false + t.string "name", default: "", null: false + t.text "description", limit: 2147483647 + t.integer "weight", limit: 1, default: 0, null: false t.integer "count" - t.string "parent" + t.string "parent" + t.index ["name"], name: "index_term_data_on_name" + t.index ["parent"], name: "index_term_data_on_parent" + t.index ["vid", "name"], name: "index_term_data_vid_name" + t.index ["vid", "weight", "name"], name: "index_vid_weight_name" end - add_index "term_data", ["name"], name: "index_term_data_on_name", using: :btree - add_index "term_data", ["parent"], name: "index_term_data_on_parent", using: :btree - add_index "term_data", ["vid", "name"], name: "index_term_data_vid_name", using: :btree - add_index "term_data", ["vid", "weight", "name"], name: "index_vid_weight_name", using: :btree - - create_table "term_node", id: false, force: true do |t| + create_table "term_node", id: false, force: :cascade do |t| t.integer "nid", default: 0, null: false t.integer "vid", default: 0, null: false t.integer "tid", default: 0, null: false + t.index ["nid"], name: "index_term_node_nid" + t.index ["vid"], name: "index_term_node_vid" end - add_index "term_node", ["nid"], name: "index_term_node_nid", using: :btree - add_index "term_node", ["vid"], name: "index_term_node_vid", using: :btree - - create_table "upload", id: false, force: true do |t| - t.integer "fid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "vid", default: 0, null: false - t.string "description", default: "", null: false - t.integer "list", limit: 1, default: 0, null: false - t.integer "weight", limit: 1, default: 0, null: false + create_table "upload", id: false, force: :cascade do |t| + t.integer "fid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "vid", default: 0, null: false + t.string "description", default: "", null: false + t.integer "list", limit: 1, default: 0, null: false + t.integer "weight", limit: 1, default: 0, null: false + t.index ["fid"], name: "index_upload_fid" + t.index ["nid"], name: "index_upload_nid" end - add_index "upload", ["fid"], name: "index_upload_fid", using: :btree - add_index "upload", ["nid"], name: "index_upload_nid", using: :btree - - create_table "user_selections", id: false, force: true do |t| + create_table "user_selections", id: false, force: :cascade do |t| t.integer "self_id" t.integer "other_id" t.boolean "following", default: false + t.index ["self_id", "other_id"], name: "index_user_selections_on_self_id_and_other_id", unique: true end - add_index "user_selections", ["self_id", "other_id"], name: "index_user_selections_on_self_id_and_other_id", unique: true, using: :btree - - create_table "user_tags", force: true do |t| - t.integer "uid" - t.string "value" + create_table "user_tags", force: :cascade do |t| + t.integer "uid" + t.string "value" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.text "data" end + create_table "users", primary_key: "uid", force: :cascade do |t| + t.string "name", limit: 60, default: "", null: false + t.string "pass", limit: 32, default: "", null: false + t.string "mail", limit: 64, default: "" + t.integer "mode", limit: 1, default: 0, null: false + t.integer "sort", limit: 1, default: 0 + t.integer "threshold", limit: 1, default: 0 + t.string "theme", default: "", null: false + t.string "signature", default: "", null: false + t.integer "signature_format", limit: 2, default: 0, null: false + t.integer "created", default: 0, null: false + t.integer "access", default: 0, null: false + t.integer "login", default: 0, null: false + t.integer "status", limit: 1, default: 0, null: false + t.string "timezone", limit: 8 + t.string "language", limit: 12, default: "", null: false + t.string "picture", default: "", null: false + t.string "init", limit: 64, default: "" + t.text "data", limit: 2147483647 + t.integer "timezone_id", default: 0, null: false + t.string "timezone_name", limit: 50, default: "", null: false + t.decimal "lat", precision: 20, scale: 10, default: "0.0" + t.decimal "lon", precision: 20, scale: 10, default: "0.0" + t.index ["access"], name: "index_users_access" + t.index ["created"], name: "index_users_created" + t.index ["mail"], name: "index_users_mail" + t.index ["name"], name: "index_users_name" + t.index ["uid"], name: "index_users_uid" + end + end diff --git a/test/controllers/csvfiles_controller_test.rb b/test/controllers/csvfiles_controller_test.rb new file mode 100644 index 0000000000..69db2560c0 --- /dev/null +++ b/test/controllers/csvfiles_controller_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class CsvfilesControllerTest < ActionDispatch::IntegrationTest + # test "the truth" do + # assert true + # end +end diff --git a/test/fixtures/csvfiles.yml b/test/fixtures/csvfiles.yml new file mode 100644 index 0000000000..72a148938e --- /dev/null +++ b/test/fixtures/csvfiles.yml @@ -0,0 +1,17 @@ +# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html + +one: + uid: 1 + filetitle: MyString + filedescription: MyText + filepath: MyString + filename: MyString + filestring: MyString + +two: + uid: 1 + filetitle: MyString + filedescription: MyText + filepath: MyString + filename: MyString + filestring: MyString diff --git a/test/models/csvfile_test.rb b/test/models/csvfile_test.rb new file mode 100644 index 0000000000..968dcb0d25 --- /dev/null +++ b/test/models/csvfile_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class CsvfileTest < ActiveSupport::TestCase + # test "the truth" do + # assert true + # end +end From 5f9318280a9a112d8cdd34d952e6e44299002500 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 19:57:29 +0530 Subject: [PATCH 02/46] belongs_to for CSV files --- app/models/csvfile.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/csvfile.rb b/app/models/csvfile.rb index 84738edeb3..d81e82b5cc 100644 --- a/app/models/csvfile.rb +++ b/app/models/csvfile.rb @@ -1,2 +1,3 @@ class Csvfile < ApplicationRecord + belongs_to :user, foreign_key: :uid end From fb9baf02bb99fb4ded9fbca6d4b3d19196bd9b24 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 19:59:16 +0530 Subject: [PATCH 03/46] CSV controller code --- app/controllers/csvfiles_controller.rb | 42 ++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index c559684e1d..975d70c8c9 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -1,2 +1,44 @@ class CsvfilesController < ApplicationController + #before user authentication PROBLEM!! + before_action :require_user, only: %i(delete user_files) + def new + + end + def setter + @csvfile = Csvfile.new( + uid: params[:uid], + filetitle: params[:filetitle], + filedescription: params[:filedescription], + filepath: params[:object], + filename: "file"+Time.now.to_i.to_s, + filestring: params[:filestring] + ) + # byebug + if @csvfile.save + flash[:notice] = "Saved!!" + render :json => @csvfile + end + end + def prev_files + @allfile=Csvfile.where(uid: params[:uid]) + render :json => @allfile + # byebug + end + def user_files + @user_files=Csvfile.where(uid: params[:id]) + # byebug + end + def delete + if params[:id] && params[:uid].to_i==current_user.uid + file=Csvfile.where(id: params[:id].to_i) + # byebug + if file.destroy(params[:id].to_i) + flash[:notice] = "Deleted the file" + redirect_to '/simple-data-grapher/data/'+params[:uid] + else + flash[:error] = "Could not delete the file" + redirect_to '/simple-data-grapher/data/'+params[:uid] + end + end + end end From 0584a26c921135a9deb207a5b13c7bea6e5a5e5e Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:00:26 +0530 Subject: [PATCH 04/46] routes for simple-data-grapher --- config/routes.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/config/routes.rb b/config/routes.rb index 6782320881..7044785e1e 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -123,6 +123,13 @@ get 'wiki/edit/:lang/:id' => 'wiki#edit' get 'wiki' => 'wiki#index' + #routes for simple-data-grapher + get 'simple-data-grapher' => 'csvfiles#new' + post 'simple-data-grapher/object' => 'csvfiles#setter' + get 'simple-data-grapher/prev_file' => 'csvfiles#prev_files' + get 'simple-data-grapher/data/:id' => 'csvfiles#user_files' + get 'simple-data-grapher/file/:uid/:id' => 'csvfiles#delete' + get 'place/:id/feed' => 'place#feed' get 'n/:id' => 'notes#shortlink' get 'i/:id' => 'images#shortlink' From c156ba51bdc9122877cf615e35fa62eaf26c1b85 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:01:16 +0530 Subject: [PATCH 05/46] has_many relation for users --- app/models/user.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/user.rb b/app/models/user.rb index 08cbe555a1..2cbaa61b97 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -44,6 +44,7 @@ module Frequency has_many :images, foreign_key: :uid has_many :node, foreign_key: 'uid' + has_many :csvfiles, foreign_key: :uid has_many :node_selections, foreign_key: :user_id has_many :revision, foreign_key: 'uid' has_many :user_tags, foreign_key: 'uid', dependent: :destroy From bae52119d33b746154c4171bf754473cae302a98 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:05:09 +0530 Subject: [PATCH 06/46] view files for csvfiles --- app/views/csvfiles/new.html.erb | 114 +++++++++++++++++++++++++ app/views/csvfiles/user_files.html.erb | 0 2 files changed, 114 insertions(+) create mode 100644 app/views/csvfiles/new.html.erb create mode 100644 app/views/csvfiles/user_files.html.erb diff --git a/app/views/csvfiles/new.html.erb b/app/views/csvfiles/new.html.erb new file mode 100644 index 0000000000..d463507d46 --- /dev/null +++ b/app/views/csvfiles/new.html.erb @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + +<%= javascript_include_tag('/lib/simple-data-grapher/dist/PublicLab.Grapher.js')%> +<%= stylesheet_link_tag '/lib/simple-data-grapher/examples/upload_file.css'%> +
+ + diff --git a/app/views/csvfiles/user_files.html.erb b/app/views/csvfiles/user_files.html.erb new file mode 100644 index 0000000000..e69de29bb2 From 6d94e09a8f8f21c930772faeebbcd40fa0972729 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:08:34 +0530 Subject: [PATCH 07/46] user data display --- app/views/csvfiles/user_files.html.erb | 70 ++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/app/views/csvfiles/user_files.html.erb b/app/views/csvfiles/user_files.html.erb index e69de29bb2..8779c5c1de 100644 --- a/app/views/csvfiles/user_files.html.erb +++ b/app/views/csvfiles/user_files.html.erb @@ -0,0 +1,70 @@ +
+
+

Your Data

+

View, download and delete CSV files and Research Noted on charts

+
+
+ + + + + + + + + + + <% count=1 %> + <% @user_files.each do |file,index| %> + + + + <% download_link = file.filetitle+".csv"%> + <% if file.filetitle=="" %> + <% download_link = file.filename+".csv" %> + <% end %> + + + + <% count+=1 %> + + <% end %> +
S.NoFile TitleDownloadDeleteDescription
<%= count %> + <% if file.filetitle!="" %> + <%= file.filetitle %> + <% else %> + <%= file.filename %> + <% end %> + + <% if file.filedescription!="" %> + <%= file.filedescription %> + <% else %> +

No Description

+ <% end %> +
+ + \ No newline at end of file From 45ed76c9502f1e9a24ef50f094709d92081f2bcb Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:13:52 +0530 Subject: [PATCH 08/46] Added simple-data-grapher package --- package.json | 1 + yarn.lock | 911 +++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 885 insertions(+), 27 deletions(-) diff --git a/package.json b/package.json index 62acbd3604..34e8a279e8 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ "popper.js": "^1.15.0", "publiclab-editor": "~2.0.0", "short-code-forms": "jywarren/short-code-forms#~0.0.1", + "simple-data-grapher": "^1.2.2", "typeahead.js": "^0.11.1", "typeahead.js-browserify": "Javier-Rotelli/typeahead.js-browserify#~1.0.7", "woofmark": "~4.2.0" diff --git a/yarn.lock b/yarn.lock index afbd469aae..72072226b4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -36,6 +36,21 @@ abbrev@1.0.x, abbrev@~1.0.4: version "1.0.9" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + +accepts@~1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + acorn-dynamic-import@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" @@ -125,6 +140,11 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" +ansi-colors@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== + ansi-escapes@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" @@ -203,6 +223,11 @@ array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + array-from@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/array-from/-/array-from-2.1.1.tgz#cfe9d8c26628b9dc5aecc62a9f5d8f1f352c1195" @@ -229,6 +254,11 @@ assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + assignment@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/assignment/-/assignment-2.1.0.tgz#21e6a18deda649a4b670113c035aa76adaffa247" @@ -245,7 +275,7 @@ async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" -async@1.x: +async@1.x, async@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -318,7 +348,7 @@ base64-img@^1.0.4: ajax-request "^1.2.0" file-system "^2.1.0" -base64-js@^1.0.2: +base64-js@^1.0.2, base64-js@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" @@ -328,6 +358,11 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +bignumber.js@^7.0.0: + version "7.2.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" + integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== + binary@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/binary/-/binary-0.3.0.tgz#9f60553bc5ce8c3386f3b553cff47462adecaa79" @@ -404,6 +439,22 @@ blueimp-tmpl@>=2.1.0: version "3.11.0" resolved "https://registry.yarnpkg.com/blueimp-tmpl/-/blueimp-tmpl-3.11.0.tgz#47e78cbab16770e3922b019a250b4ad9c7b20f8f" +body-parser@1.19.0: + version "1.19.0" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" + integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== + dependencies: + bytes "3.1.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "1.7.2" + iconv-lite "0.4.24" + on-finished "~2.3.0" + qs "6.7.0" + raw-body "2.4.0" + type-is "~1.6.17" + boom@0.4.x: version "0.4.2" resolved "https://registry.yarnpkg.com/boom/-/boom-0.4.2.tgz#7a636e9ded4efcefb19cef4947a3c67dfaee911b" @@ -547,6 +598,11 @@ browser-process-hrtime@^0.1.2: version "0.1.3" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" +browser-stdout@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== + buffer-alloc-unsafe@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" @@ -558,6 +614,11 @@ buffer-alloc@^1.2.0: buffer-alloc-unsafe "^1.1.0" buffer-fill "^1.0.0" +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= + buffer-equal@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-0.0.1.tgz#91bc74b11ea405bc916bc6aa908faafa5b4aac4b" @@ -597,6 +658,11 @@ bureaucracy@1.0.7, "bureaucracy@git://github.com/jywarren/bureaucracy.git#xhrOpt crossvent "1.5.4" xhr "2.2.1" +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -637,6 +703,18 @@ caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" +chai@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" + integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.2" + deep-eql "^3.0.1" + get-func-name "^2.0.0" + pathval "^1.1.0" + type-detect "^4.0.5" + chainsaw@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/chainsaw/-/chainsaw-0.1.0.tgz#5eab50b28afe58074d0d58291388828b5e5fbc98" @@ -719,6 +797,16 @@ chartjs-color@^2.1.0: chartjs-color-string "^0.5.0" color-convert "^0.5.3" +chartjs@^0.3.24: + version "0.3.24" + resolved "https://registry.yarnpkg.com/chartjs/-/chartjs-0.3.24.tgz#3addeb5ae3606b3e89e346c27d52ca158416e93d" + integrity sha1-Ot3rWuNgaz6J40bCfVLKFYQW6T0= + +check-error@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= + chmodr@~0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/chmodr/-/chmodr-0.1.2.tgz#0dd8041c915087575bec383b47827bb7576a4fd6" @@ -792,6 +880,11 @@ color-name@^1.0.0: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" +colors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" + integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= + colors@~0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" @@ -874,10 +967,22 @@ console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" +content-disposition@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" + content-type-parser@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + contentstream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/contentstream/-/contentstream-1.0.0.tgz#0bdcfa46da30464a86ce8fa7ece565410dc6f9a5" @@ -901,10 +1006,25 @@ cookie-jar@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/cookie-jar/-/cookie-jar-0.3.0.tgz#bc9a27d4e2b97e186cd57c9e2063cb99fa68cccc" +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + +cookie@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" + integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" +corser@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87" + integrity sha1-jtolLsqrWEDc2XXOuQ2TcMgZ/4c= + cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -1042,13 +1162,13 @@ debug@2.0.0: dependencies: ms "0.6.2" -debug@2.6.9: +debug@2.6.9, debug@^2.2.0: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" -debug@^3.1.0: +debug@3.2.6, debug@^3.1.0, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" dependencies: @@ -1082,6 +1202,13 @@ decompress-zip@~0.0.3: readable-stream "~1.1.8" touch "0.0.2" +deep-eql@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== + dependencies: + type-detect "^4.0.0" + deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -1100,6 +1227,13 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" +define-properties@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + delayed-stream@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f" @@ -1112,6 +1246,16 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" @@ -1120,6 +1264,11 @@ diff@1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/diff/-/diff-1.0.8.tgz#343276308ec991b7bc82267ed55bc1411f971666" +diff@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== + dijkstrajs@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/dijkstrajs/-/dijkstrajs-1.0.1.tgz#d3cd81221e3ea40742cfcde556d4e99e98ddc71b" @@ -1164,10 +1313,37 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" +ecdsa-sig-formatter@1.0.11: + version "1.0.11" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== + dependencies: + safe-buffer "^5.0.1" + +ecstatic@^3.0.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/ecstatic/-/ecstatic-3.3.2.tgz#6d1dd49814d00594682c652adb66076a69d46c48" + integrity sha512-fLf9l1hnwrHI2xn9mEDT7KIi22UDqA2jaCwyCbSUJh9a1V+LEUSL/JO/6TIz/QyuBURWUHrFL5Kg2TtO1bkkog== + dependencies: + he "^1.1.1" + mime "^1.6.0" + minimist "^1.1.0" + url-join "^2.0.5" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.1" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" @@ -1178,6 +1354,27 @@ entities@~1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" +es-abstract@^1.5.1: + version "1.13.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" + integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-keys "^1.0.12" + +es-to-primitive@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" + integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: version "0.10.46" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.46.tgz#efd99f67c5a7ec789baa3daa7f79870388f7f572" @@ -1236,11 +1433,16 @@ es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: d "1" es5-ext "~0.10.14" +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + escape-string-regexp@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz#4dbc2fe674e71949caf3fb2695ce7f2dc1d9a8d1" -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -1400,6 +1602,11 @@ esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + event-emitter@~0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.2.2.tgz#c81e3724eb55407c5a0d5ee3299411f700f54291" @@ -1413,10 +1620,20 @@ event-emitter@~0.3.5: d "1" es5-ext "~0.10.14" +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + eventemitter2@^0.4.9, eventemitter2@~0.4.13: version "0.4.14" resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-0.4.14.tgz#8f61b75cde012b2e9eb284d4545583b5643b61ab" +eventemitter3@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" + integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== + execa@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" @@ -1437,7 +1654,43 @@ expand-template@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" -extend@~3.0.0, extend@~3.0.2: +express@^4.17.1: + version "4.17.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" + integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== + dependencies: + accepts "~1.3.7" + array-flatten "1.1.1" + body-parser "1.19.0" + content-disposition "0.5.3" + content-type "~1.0.4" + cookie "0.4.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.2" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.1.2" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.5" + qs "6.7.0" + range-parser "~1.2.1" + safe-buffer "5.1.2" + send "0.17.1" + serve-static "1.14.1" + setprototypeof "1.1.1" + statuses "~1.5.0" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend@^3.0.2, extend@~3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -1487,6 +1740,11 @@ fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" +fast-text-encoding@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-text-encoding/-/fast-text-encoding-1.0.0.tgz#3e5ce8293409cfaa7177a71b9ca84e1b1e6f25ef" + integrity sha512-R9bHCvweUxxwkDwhjav5vxpFvdPGlVngtqmx4pIZfSUhM/Q4NiIUHB456BAf+Q1Nwu3HEZYONtu+Rya+af4jiQ== + fd-slicer@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" @@ -1515,7 +1773,7 @@ file-saver@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.0.tgz#74eef7748159503b60008a15af2f1930fb5df7ab" -file-system@^2.1.0, file-system@^2.1.1: +file-system@^2.1.0, file-system@^2.1.1, file-system@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/file-system/-/file-system-2.2.2.tgz#7d65833e3a2347dcd956a813c677153ed3edd987" dependencies: @@ -1526,7 +1784,20 @@ file-uri-to-path@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" -find-up@^3.0.0: +finalhandler@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.3" + statuses "~1.5.0" + unpipe "~1.0.0" + +find-up@3.0.0, find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" dependencies: @@ -1551,10 +1822,24 @@ flat-cache@^2.0.1: rimraf "2.6.3" write "1.0.3" +flat@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" + integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== + dependencies: + is-buffer "~2.0.3" + flatted@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz#55122b6536ea496b4b44893ee2608141d10d9916" +follow-redirects@^1.0.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.7.0.tgz#489ebc198dc0e7f64167bd23b03c4c19b5784c76" + integrity sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ== + dependencies: + debug "^3.2.6" + font-awesome@^4.5.0, font-awesome@~4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" @@ -1597,6 +1882,16 @@ form-data@~2.3.2: combined-stream "^1.0.6" mime-types "^2.1.12" +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + from2-string@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/from2-string/-/from2-string-1.1.0.tgz#18282b27d08a267cb3030cd2b8b4b0f212af752a" @@ -1680,6 +1975,24 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" +gaxios@^1.0.2, gaxios@^1.0.4, gaxios@^1.2.1, gaxios@^1.2.2: + version "1.8.4" + resolved "https://registry.yarnpkg.com/gaxios/-/gaxios-1.8.4.tgz#e08c34fe93c0a9b67a52b7b9e7a64e6435f9a339" + integrity sha512-BoENMnu1Gav18HcpV9IleMPZ9exM+AvUjrAOV4Mzs/vfz2Lu/ABv451iEXByKiMPn2M140uul1txXCg83sAENw== + dependencies: + abort-controller "^3.0.0" + extend "^3.0.2" + https-proxy-agent "^2.2.1" + node-fetch "^2.3.0" + +gcp-metadata@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-1.0.0.tgz#5212440229fa099fc2f7c2a5cdcb95575e9b2ca6" + integrity sha512-Q6HrgfrCQeEircnNP3rCcEgiDv7eF9+1B+1MMgpE190+/+0mjQR8PxeOaRgxZWmdDAF9EIryHB9g1moPiw1SbQ== + dependencies: + gaxios "^1.0.2" + json-bigint "^0.3.0" + generate-function@^2.0.0: version "2.3.1" resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" @@ -1707,6 +2020,16 @@ get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-func-name@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" + integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= + get-pixels@~3.3.0: version "3.3.2" resolved "https://registry.yarnpkg.com/get-pixels/-/get-pixels-3.3.2.tgz#3f62fb8811932c69f262bba07cba72b692b4ff03" @@ -1776,7 +2099,7 @@ glob@3.2.3: inherits "2" minimatch "~0.2.11" -"glob@>= 3.1.4", glob@^7.0.5, glob@^7.1.3: +glob@7.1.3, "glob@>= 3.1.4", glob@^7.0.5, glob@^7.1.3: version "7.1.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" dependencies: @@ -1840,6 +2163,49 @@ glsl-tokenizer@^2.0.2: dependencies: through2 "^0.6.3" +google-auth-library@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-3.1.2.tgz#ff2f88cd5cd2118a57bd3d5ad3c093c8837fc350" + integrity sha512-cDQMzTotwyWMrg5jRO7q0A4TL/3GWBgO7I7q5xGKNiiFf9SmGY/OJ1YsLMgI2MVHHsEGyrqYnbnmV1AE+Z6DnQ== + dependencies: + base64-js "^1.3.0" + fast-text-encoding "^1.0.0" + gaxios "^1.2.1" + gcp-metadata "^1.0.0" + gtoken "^2.3.2" + https-proxy-agent "^2.2.1" + jws "^3.1.5" + lru-cache "^5.0.0" + semver "^5.5.0" + +google-p12-pem@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-1.0.4.tgz#b77fb833a2eb9f7f3c689e2e54f095276f777605" + integrity sha512-SwLAUJqUfTB2iS+wFfSS/G9p7bt4eWcc2LyfvmUXe7cWp6p3mpxDo6LLI29MXdU6wvPcQ/up298X7GMC5ylAlA== + dependencies: + node-forge "^0.8.0" + pify "^4.0.0" + +googleapis-common@^0.7.0: + version "0.7.2" + resolved "https://registry.yarnpkg.com/googleapis-common/-/googleapis-common-0.7.2.tgz#a694f55d979cb7c2eac21a0e0439af12f9b418ba" + integrity sha512-9DEJIiO4nS7nw0VE1YVkEfXEj8x8MxsuB+yZIpOBULFSN9OIKcUU8UuKgSZFU4lJmRioMfngktrbkMwWJcUhQg== + dependencies: + gaxios "^1.2.2" + google-auth-library "^3.0.0" + pify "^4.0.0" + qs "^6.5.2" + url-template "^2.0.8" + uuid "^3.2.1" + +googleapis@^39.2.0: + version "39.2.0" + resolved "https://registry.yarnpkg.com/googleapis/-/googleapis-39.2.0.tgz#5c81f721e9da2e80cb0b25821ed60d3bc200c3da" + integrity sha512-66X8TG1B33zAt177sG1CoKoYHPP/B66tEpnnSANGCqotMuY5gqSQO8G/0gqHZR2jRgc5CHSSNOJCnpI0SuDxMQ== + dependencies: + google-auth-library "^3.0.0" + googleapis-common "^0.7.0" + gpu-mock.js@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gpu-mock.js/-/gpu-mock.js-1.0.1.tgz#81e7146a37eee3b6d627f1feaa74a26d513148a2" @@ -1877,6 +2243,11 @@ graceful-fs@~2.0.0: component-event "^0.1.4" ianstormtaylor-css "^0.3.1" +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + growl@1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/growl/-/growl-1.8.1.tgz#4b2dec8d907e93db336624dcec0183502f8c9428" @@ -1976,6 +2347,17 @@ grunt@~0.4.2: underscore.string "~2.2.1" which "~1.0.5" +gtoken@^2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/gtoken/-/gtoken-2.3.3.tgz#8a7fe155c5ce0c4b71c886cfb282a9060d94a641" + integrity sha512-EaB49bu/TCoNeQjhCYKI/CurooBKkGxIqFHsWABW0b25fobBYVTMe84A8EBVVZhl8emiUdNypil9huMOTmyAnw== + dependencies: + gaxios "^1.0.4" + google-p12-pem "^1.0.0" + jws "^3.1.5" + mime "^2.2.0" + pify "^4.0.0" + handlebars@^4.0.1: version "4.1.2" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67" @@ -2031,11 +2413,16 @@ has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= + has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -has@^1.0.1: +has@^1.0.1, has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" dependencies: @@ -2070,6 +2457,11 @@ hawk@~3.1.0: hoek "2.x.x" sntp "1.x.x" +he@1.2.0, he@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + he@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/he/-/he-0.5.0.tgz#2c05ffaef90b68e860f3fd2b54ef580989277ee2" @@ -2112,6 +2504,51 @@ html-encoding-sniffer@^1.0.1, html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" +http-errors@1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" + integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-proxy@^1.8.1: + version "1.17.0" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" + integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== + dependencies: + eventemitter3 "^3.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http-server@^0.11.1: + version "0.11.1" + resolved "https://registry.yarnpkg.com/http-server/-/http-server-0.11.1.tgz#2302a56a6ffef7f9abea0147d838a5e9b6b6a79b" + integrity sha512-6JeGDGoujJLmhjiRGlt8yK8Z9Kl0vnl/dQoQZlc4oeqaUoAKQg94NILLfrY3oWzSyFaQCVNTcKE5PZ3cH8VP9w== + dependencies: + colors "1.0.3" + corser "~2.0.0" + ecstatic "^3.0.0" + http-proxy "^1.8.1" + opener "~1.4.0" + optimist "0.6.x" + portfinder "^1.0.13" + union "~0.4.3" + http-signature@~0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.10.1.tgz#4fbdac132559aa8323121e540779c0a012b27e66" @@ -2266,10 +2703,15 @@ inherits@1: version "1.0.2" resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" +inherits@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" @@ -2334,14 +2776,29 @@ ip-regex@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" +ipaddr.js@1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65" + integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA== + is-buffer@^1.0.2: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" -is-callable@^1.1.3: +is-buffer@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" + integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw== + +is-callable@^1.1.3, is-callable@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= + is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" @@ -2378,10 +2835,24 @@ is-property@^1.0.0, is-property@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" +is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= + dependencies: + has "^1.0.1" + is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" +is-symbol@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" + integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== + dependencies: + has-symbols "^1.0.0" + is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -2491,7 +2962,7 @@ js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" -js-yaml@3.x, js-yaml@^3.13.0: +js-yaml@3.13.1, js-yaml@3.x, js-yaml@^3.13.0: version "3.13.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" dependencies: @@ -2586,6 +3057,13 @@ jshint@~2.3.0: shelljs "0.1.x" underscore "1.4.x" +json-bigint@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-0.3.0.tgz#0ccd912c4b8270d05f056fbd13814b53d3825b1e" + integrity sha1-DM2RLEuCcNBfBW+9E4FLU9OCWx4= + dependencies: + bignumber.js "^7.0.0" + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -2633,6 +3111,23 @@ junk@~0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/junk/-/junk-0.2.2.tgz#d595eb199b37930cecd1f2c52820847e80e48ae7" +jwa@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== + dependencies: + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.11" + safe-buffer "^5.0.1" + +jws@^3.1.5: + version "3.2.2" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== + dependencies: + jwa "^1.4.1" + safe-buffer "^5.0.1" + kanye@3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/kanye/-/kanye-3.0.2.tgz#caa3952bd086f327831695ce7b8cbb48151691bd" @@ -2774,7 +3269,7 @@ lodash@~2.4.1: version "2.4.2" resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.4.2.tgz#fadd834b9683073da179b3eae6d9c0d15053f73e" -log-symbols@^2.2.0: +log-symbols@2.2.0, log-symbols@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" dependencies: @@ -2784,6 +3279,13 @@ lru-cache@2: version "2.7.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" +lru-cache@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + lru-cache@~2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.3.1.tgz#b3adf6b3d856e954e2c390e6cef22081245a53d6" @@ -2818,6 +3320,11 @@ mdurl@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + megamark@3.3.0, megamark@^3.2.2, megamark@~3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/megamark/-/megamark-3.3.0.tgz#5b1057b6a2b2c4c9ea5312b88634c3adb67fac96" @@ -2847,16 +3354,31 @@ memoizee@~0.2.5: event-emitter "~0.2.2" next-tick "0.1.x" +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + merge-source-map@1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.0.4.tgz#a5de46538dae84d4114cc5ea02b4772a6346701f" dependencies: source-map "^0.5.6" +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + microplugin@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/microplugin/-/microplugin-0.0.3.tgz#1fc2e1bb7c9e19e82bd84bba9137bbe71250d8cd" +mime-db@1.40.0: + version "1.40.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" + integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== + mime-db@~1.37.0: version "1.37.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" @@ -2877,7 +3399,14 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "~1.38.0" -mime@^1.3.4: +mime-types@~2.1.24: + version "2.1.24" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" + integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== + dependencies: + mime-db "1.40.0" + +mime@1.6.0, mime@^1.3.4, mime@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -2885,6 +3414,11 @@ mime@^2.0.3: version "2.4.2" resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.2.tgz#ce5229a5e99ffc313abac806b482c10e7ba6ac78" +mime@^2.2.0: + version "2.4.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" + integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== + mime@~1.2.11, mime@~1.2.9: version "1.2.11" resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" @@ -2921,7 +3455,7 @@ minimatch@0.x.x: lru-cache "2" sigmund "~1.0.0" -"minimatch@2 || 3", minimatch@^3.0.4: +"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -2938,7 +3472,7 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^1.1.3, minimist@^1.2.0: +minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -2996,6 +3530,35 @@ mocha@^1.21.5: jade "0.26.3" mkdirp "0.5.0" +mocha@^6.1.4: + version "6.1.4" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.1.4.tgz#e35fada242d5434a7e163d555c705f6875951640" + integrity sha512-PN8CIy4RXsIoxoFJzS4QNnCH4psUCPWc4/rPrst/ecSJJbLBkubMiyGCP2Kj/9YnWbotFqAoeXyXMucj7gwCFg== + dependencies: + ansi-colors "3.2.3" + browser-stdout "1.3.1" + debug "3.2.6" + diff "3.5.0" + escape-string-regexp "1.0.5" + find-up "3.0.0" + glob "7.1.3" + growl "1.10.5" + he "1.2.0" + js-yaml "3.13.1" + log-symbols "2.2.0" + minimatch "3.0.4" + mkdirp "0.5.1" + ms "2.1.1" + node-environment-flags "1.0.5" + object.assign "4.1.0" + strip-json-comments "2.0.1" + supports-color "6.0.0" + which "1.3.1" + wide-align "1.1.3" + yargs "13.2.2" + yargs-parser "13.0.0" + yargs-unparser "1.5.0" + moment@^2.10.2, moment@~2.24.0, "moment@~> 2.24.0": version "2.24.0" resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" @@ -3020,7 +3583,7 @@ ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -ms@^2.1.1: +ms@2.1.1, ms@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" @@ -3068,6 +3631,11 @@ ndarray@^1.0.13, ndarray@^1.0.18: iota-array "^1.0.0" is-buffer "^1.0.2" +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + neo-async@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835" @@ -3094,6 +3662,24 @@ node-bitmap@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/node-bitmap/-/node-bitmap-0.0.1.tgz#180eac7003e0c707618ef31368f62f84b2a69091" +node-environment-flags@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" + integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== + dependencies: + object.getownpropertydescriptors "^2.0.3" + semver "^5.7.0" + +node-fetch@^2.3.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== + +node-forge@^0.8.0: + version "0.8.5" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.8.5.tgz#57906f07614dc72762c84cef442f427c0e1b86ee" + integrity sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q== + node-gyp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-4.0.0.tgz#972654af4e5dd0cd2a19081b4b46fe0442ba6f45" @@ -3201,10 +3787,40 @@ object-inspect@~1.4.0: version "1.4.1" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.4.1.tgz#37ffb10e71adaf3748d05f713b4c9452f402cbc4" +object-keys@^1.0.11, object-keys@^1.0.12: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" + omggif@^1.0.5: version "1.0.9" resolved "https://registry.yarnpkg.com/omggif/-/omggif-1.0.9.tgz#dcb7024dacd50c52b4d303f04802c91c057c765f" +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + once@1.x, once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -3221,7 +3837,12 @@ open@~0.0.3: version "0.0.5" resolved "https://registry.yarnpkg.com/open/-/open-0.0.5.tgz#42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc" -optimist@^0.6.1, optimist@~0.6.0: +opener@~1.4.0: + version "1.4.3" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" + integrity sha1-XG2ixdflgx6P+jlklQ+NZnSskLg= + +optimist@0.6.x, optimist@^0.6.1, optimist@~0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: @@ -3260,7 +3881,7 @@ os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" -os-locale@^3.0.0: +os-locale@^3.0.0, os-locale@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" dependencies: @@ -3331,6 +3952,11 @@ pako@^1.0.3: version "1.0.10" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" +papaparse@^4.6.3: + version "4.6.3" + resolved "https://registry.yarnpkg.com/papaparse/-/papaparse-4.6.3.tgz#742e5eaaa97fa6c7e1358d2934d8f18f44aee781" + integrity sha512-LRq7BrHC2kHPBYSD50aKuw/B/dGcg29omyJbKWY3KsYUZU69RKwaBHu13jGmCYBtOc4odsLCrFyk6imfyNubJQ== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -3358,6 +3984,11 @@ parse5@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94" +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -3378,6 +4009,16 @@ path-parse@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + +pathval@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" + integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= + pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" @@ -3413,6 +4054,11 @@ phantomjs@^1.9.15: request-progress "~2.0.1" which "~1.2.2" +pify@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" @@ -3443,6 +4089,15 @@ popper.js@^1.15.0: version "1.15.0" resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" +portfinder@^1.0.13: + version "1.0.20" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" + integrity sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw== + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + prebuild-install@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.3.0.tgz#58b4d8344e03590990931ee088dd5401b03004c8" @@ -3494,6 +4149,14 @@ promptly@~0.2.0: dependencies: read "~1.0.4" +proxy-addr@~2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" + integrity sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ== + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.9.0" + proxy-from-env@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee" @@ -3610,10 +4273,20 @@ qrcode@^1.3.3: pngjs "^3.3.0" yargs "^12.0.5" +qs@6.7.0, qs@^6.5.2: + version "6.7.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== + qs@~0.6.0: version "0.6.6" resolved "https://registry.yarnpkg.com/qs/-/qs-0.6.6.tgz#6e015098ff51968b8a3c819001d5f2c89bc4b107" +qs@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-2.3.3.tgz#e9e85adbe75da0bbe4c8e0476a086290f863b404" + integrity sha1-6eha2+ddoLvkyOBHaghikPhjtAQ= + qs@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/qs/-/qs-5.2.1.tgz#801fee030e0b9450d6385adc48a4cc55b44aedfc" @@ -3630,6 +4303,21 @@ quote-stream@^1.0.2: minimist "^1.1.3" through2 "^2.0.0" +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" + integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== + dependencies: + bytes "3.1.0" + http-errors "1.7.2" + iconv-lite "0.4.24" + unpipe "1.0.0" + rc@^1.2.7: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -3690,6 +4378,11 @@ readline-sync@^1.4.7: version "1.4.9" resolved "https://registry.yarnpkg.com/readline-sync/-/readline-sync-1.4.9.tgz#3eda8e65f23cd2a17e61301b1f0003396af5ecda" +readline@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/readline/-/readline-1.3.0.tgz#c580d77ef2cfc8752b132498060dc9793a7ac01c" + integrity sha1-xYDXfvLPyHUrEySYBg3JeTp6wBw= + redeyed@~0.4.0: version "0.4.4" resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-0.4.4.tgz#37e990a6f2b21b2a11c2e6a48fd4135698cba97f" @@ -3813,6 +4506,16 @@ require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + resig-class@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/resig-class/-/resig-class-1.0.0.tgz#43e9c1d1bbea93169ca42854bf8e36b0fccb79f7" @@ -3870,7 +4573,7 @@ rxjs@^6.4.0: dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -3938,7 +4641,7 @@ semver@^4.3.0: version "4.3.6" resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" -semver@^5.4.1, semver@^5.5.1: +semver@^5.4.1, semver@^5.5.1, semver@^5.7.0: version "5.7.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" @@ -3954,10 +4657,44 @@ semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" +send@0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.7.2" + mime "1.6.0" + ms "2.1.1" + on-finished "~2.3.0" + range-parser "~1.2.1" + statuses "~1.5.0" + +serve-static@1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.17.1" + set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + shallow-copy@~0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" @@ -4002,6 +4739,22 @@ simple-concat@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" +simple-data-grapher@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/simple-data-grapher/-/simple-data-grapher-1.2.2.tgz#245ce1c5076a23691ea4b46dbd767f95aca4d4ef" + integrity sha512-UhdtJZGm91+Bbjs2BPL8uFYAKBanxhXWj4hxveva3ExMzoGf30xUXSpPStOS7TdO/uMpIoeRxSGojRUPgNM7GA== + dependencies: + chai "^4.2.0" + chartjs "^0.3.24" + express "^4.17.1" + file-system "^2.2.2" + googleapis "^39.2.0" + http-server "^0.11.1" + jquery "^3.4.1" + mocha "^6.1.4" + papaparse "^4.6.3" + readline "^1.3.0" + simple-get@^2.7.0: version "2.8.1" resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" @@ -4107,6 +4860,11 @@ static-module@^3.0.0: static-eval "^2.0.0" through2 "~2.0.3" +"statuses@>= 1.5.0 < 2", statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + stealthy-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" @@ -4188,7 +4946,7 @@ strip-eof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@2.0.1, strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -4198,6 +4956,13 @@ sudo-block@~0.2.0: dependencies: chalk "~0.1.1" +supports-color@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" + integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== + dependencies: + has-flag "^3.0.0" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -4334,6 +5099,11 @@ to-space-case@0.1.2: dependencies: to-no-case "0.1.1" +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + touch@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/touch/-/touch-0.0.2.tgz#a65a777795e5cbbe1299499bdc42281ffb21b5f4" @@ -4412,6 +5182,19 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-detect@^4.0.0, type-detect@^4.0.5: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-is@~1.6.17, type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + typeahead.js-browserify@Javier-Rotelli/typeahead.js-browserify#~1.0.7: version "1.0.7" resolved "https://codeload.github.com/Javier-Rotelli/typeahead.js-browserify/tar.gz/906f3747d5783039a2387a7120ee1557fd0810ca" @@ -4494,10 +5277,22 @@ underscore@~1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" +union@~0.4.3: + version "0.4.6" + resolved "https://registry.yarnpkg.com/union/-/union-0.4.6.tgz#198fbdaeba254e788b0efcb630bc11f24a2959e0" + integrity sha1-GY+9rrolTniLDvy2MLwR8kopWeA= + dependencies: + qs "~2.3.3" + uniq@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + update-notifier@~0.1.3: version "0.1.10" resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-0.1.10.tgz#215cbe1053369f0d4a44f84b51eba7cb80484695" @@ -4524,6 +5319,16 @@ urify@^2.1.1: resolve "^1.1.7" static-module "^3.0.0" +url-join@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.5.tgz#5af22f18c052a000a48d7b82c5e9c2e2feeda728" + integrity sha1-WvIvGMBSoACkjXuCxenC4v7tpyg= + +url-template@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/url-template/-/url-template-2.0.8.tgz#fc565a3cccbff7730c775f5641f9555791439f21" + integrity sha1-/FZaPMy/93MMd19WQflVV5FDnyE= + user-home@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -4536,14 +5341,24 @@ utils-extend@^1.0.4, utils-extend@^1.0.6, utils-extend@^1.0.7: version "1.0.8" resolved "https://registry.yarnpkg.com/utils-extend/-/utils-extend-1.0.8.tgz#ccfd7b64540f8e90ee21eec57769d0651cab8a5f" +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + uuid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" -uuid@^3.3.2: +uuid@^3.2.1, uuid@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -4621,7 +5436,7 @@ which-pm-runs@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" -which@1, which@^1.1.1, which@^1.2.10, which@^1.2.9: +which@1, which@1.3.1, which@^1.1.1, which@^1.2.10, which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" dependencies: @@ -4637,7 +5452,7 @@ which@~1.2.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: +wide-align@1.1.3, wide-align@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" dependencies: @@ -4758,7 +5573,7 @@ xmldom@0.1.*: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" -"y18n@^3.2.1 || ^4.0.0": +"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" @@ -4766,6 +5581,14 @@ yallist@^3.0.0, yallist@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" +yargs-parser@13.0.0: + version "13.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.0.0.tgz#3fc44f3e76a8bdb1cc3602e860108602e5ccde8b" + integrity sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^11.1.1: version "11.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" @@ -4773,6 +5596,40 @@ yargs-parser@^11.1.1: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^13.0.0: + version "13.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-unparser@1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.5.0.tgz#f2bb2a7e83cbc87bb95c8e572828a06c9add6e0d" + integrity sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw== + dependencies: + flat "^4.1.0" + lodash "^4.17.11" + yargs "^12.0.5" + +yargs@13.2.2: + version "13.2.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.2.tgz#0c101f580ae95cea7f39d927e7770e3fdc97f993" + integrity sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA== + dependencies: + cliui "^4.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + os-locale "^3.1.0" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.0.0" + yargs@^12.0.5: version "12.0.5" resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" From 340c5160e406522c6a03a041b679675471a8bd7c Mon Sep 17 00:00:00 2001 From: Isha Gupta <40794215+IshaGupta18@users.noreply.github.com> Date: Mon, 8 Jul 2019 20:28:09 +0530 Subject: [PATCH 09/46] Delete Gemfile --- Gemfile | 126 -------------------------------------------------------- 1 file changed, 126 deletions(-) delete mode 100644 Gemfile diff --git a/Gemfile b/Gemfile deleted file mode 100644 index 66e18a4a30..0000000000 --- a/Gemfile +++ /dev/null @@ -1,126 +0,0 @@ -source 'https://rubygems.org' -ruby '2.5.3' - -git_source(:github) do |repo_name| - repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") - "https://github.com/#{repo_name}.git" -end - -gem 'activerecord-session_store' -gem "authlogic", "4.4.2" -gem 'authlogic-oid' -gem "composite_primary_keys" -gem 'figaro' -gem 'friendly_id' -gem 'gemoji' -gem 'geocoder' -gem 'geokit-rails' -gem 'georuby', '2.0' -gem "google-cloud-storage" -gem 'grape' -gem 'grape-entity' -gem 'grape-swagger', '~> 0.33.0' -gem 'grape-swagger-entity', '0.3.3' -gem 'grape-swagger-rails' -gem 'grape-swagger-ui' -gem 'http_accept_language' -gem "i18n-js", ">= 3.0.0.rc11" -gem 'impressionist' -gem 'jbuilder', '~> 2.9' -gem 'jquery-rails' -gem 'less-rails', '~> 4.0' -gem 'mocha', '~> 1.8' -gem 'mustermann' , '1.0.3' -gem 'omniauth', '~> 1.9' -gem 'omniauth-facebook', '~> 5.0' -gem 'omniauth-github', '~> 1.1', '>= 1.1.2' -gem 'omniauth-google-oauth2' -gem 'omniauth-twitter' -gem "paperclip", "~> 6.1.0" -gem 'passenger' -gem "php-serialize", :require => "php_serialize" -gem 'progress_bar' -gem 'rack-cors', :require => 'rack/cors' -gem "rack-openid" -gem "rack-test", "1.1.0" -gem 'rails', '5.2.3' -gem 'rails-controller-testing' -gem 'rails-dom-testing' -gem 'rails-i18n', '~> 5.1.3' -gem 'rails_autolink' -gem 'rb-readline' -gem 'rdiscount', '~> 2.2', '>= 2.2.0.1' -gem "recaptcha", require: "recaptcha/rails" -gem 'responders', '~> 3.0' -gem 'rubocop', '~> 0.72.0', require: false -gem "ruby-openid", :require => "openid" -gem 'sanitize' -gem 'sentry-raven' -gem 'sidekiq' -gem 'skylight' # performance tracking via skylight.io -gem 'turbolinks', '~> 5' -gem 'tzinfo-data', platforms: %i(mingw mswin x64_mingw jruby) -gem 'unicode-emoji' -gem 'whenever', require: false -gem 'will_paginate', '>= 3.0.6' -gem 'will_paginate-bootstrap4' -gem 'jquery-atwho-rails' -gem 'lemmatizer', '~> 0.2.2' -# To implement incoming mail processing microframework -gem 'mailman', require: false - -# To convert html to markdown -gem 'reverse_markdown' - -gem 'twitter' - -# run with `bundle install --without production` or `bundle install --without mysql` to exclude this -group :mysql, :production do - gem 'mysql2', '>= 0.4.4' - # mysql 0.4.3+ causes a version mismatch, apparently, and demands 'activerecord-mysql2-adapter' -end - -group :sqlite, :development do - gem 'sqlite3', '~> 1.3.6' -end - -gem 'coffee-rails', '~> 5.0.0' -gem 'execjs' # See https://github.com/sstephenson/execjs#readme for more supported runtimes -gem 'sassc-rails' -gem 'therubyracer' -gem 'uglifier', '>= 1.0.3' -gem 'grape-rails-cache' - -group :development do - gem 'byebug', platform: :mri - gem "letter_opener" - gem 'listen', '~> 3.1.5' - gem "nifty-generators" - gem 'web-console', '>= 3.3.0' -end - -group :test, :development do - gem 'capybara' - gem 'ci_reporter_test_unit' - gem 'coveralls', require: false - gem 'jasmine-jquery-rails' - gem 'jasmine-rails' - gem 'json_expressions' - gem 'minitest-reporters', '~> 1.3.6' - gem 'openssl', '~> 2.1.2' - gem 'phantomjs' - gem 'puma', '~> 4.0' - gem 'rails-perftest' - gem 'rake', '~> 12.3.2' - gem 'rest-client' - gem 'rspec' - gem 'selenium-webdriver', '~> 3.142.3' - gem 'test-unit' - gem 'teaspoon-mocha' - gem 'timecop' - gem 'pry-rails' -end - -group :production do - gem "scrypt", "~> 3" -end From 10663181e7a46efb9e7e14a1d76519053edc6b89 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 8 Jul 2019 20:37:32 +0530 Subject: [PATCH 10/46] Gemfile --- Gemfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index 66e18a4a30..7e91ef389d 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source 'https://rubygems.org' -ruby '2.5.3' +ruby '2.4.4' git_source(:github) do |repo_name| repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") From a3c1ecbf3940947827e8c89fd6483398e3ced3ee Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Tue, 9 Jul 2019 12:11:34 +0530 Subject: [PATCH 11/46] code climate --- app/controllers/csvfiles_controller.rb | 78 +++++++++++++------------- 1 file changed, 38 insertions(+), 40 deletions(-) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index 975d70c8c9..ffd44ffcfb 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -1,44 +1,42 @@ class CsvfilesController < ApplicationController - #before user authentication PROBLEM!! - before_action :require_user, only: %i(delete user_files) - def new - + before_action :require_user, only: %i(delete user_files) + + def new + end + + def setter + @csvfile = Csvfile.new( + uid: params[:uid], + filetitle: params[:filetitle], + filedescription: params[:filedescription], + filepath: params[:object], + filename: "file" + Time.now.to_i.to_s, + filestring: params[:filestring] + ) + if @csvfile.save + flash[:notice] = "Saved!!" + render :json => @csvfile end - def setter - @csvfile = Csvfile.new( - uid: params[:uid], - filetitle: params[:filetitle], - filedescription: params[:filedescription], - filepath: params[:object], - filename: "file"+Time.now.to_i.to_s, - filestring: params[:filestring] - ) - # byebug - if @csvfile.save - flash[:notice] = "Saved!!" - render :json => @csvfile - end - end - def prev_files - @allfile=Csvfile.where(uid: params[:uid]) - render :json => @allfile - # byebug - end - def user_files - @user_files=Csvfile.where(uid: params[:id]) - # byebug - end - def delete - if params[:id] && params[:uid].to_i==current_user.uid - file=Csvfile.where(id: params[:id].to_i) - # byebug - if file.destroy(params[:id].to_i) - flash[:notice] = "Deleted the file" - redirect_to '/simple-data-grapher/data/'+params[:uid] - else - flash[:error] = "Could not delete the file" - redirect_to '/simple-data-grapher/data/'+params[:uid] - end - end + end + + def prev_files + @allfile = Csvfile.where(uid: params[:uid]) + render :json => @allfile + end + + def user_files + @user_files = Csvfile.where(uid: params[:id]) + end + + def delete + if params[:id] && params[:uid].to_i == current_user.uid + file = Csvfile.where(id: params[:id].to_i) + if file.destroy(params[:id].to_i) + flash[:notice] = "Deleted the file" + else + flash[:error] = "Could not delete the file" + end + redirect_to '/simple-data-grapher/data/' + params[:uid] end + end end From cf2164d16ea4b540998b05748fc2acd6bbc49b6e Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Tue, 9 Jul 2019 12:20:24 +0530 Subject: [PATCH 12/46] Climate 2 --- app/controllers/csvfiles_controller.rb | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index ffd44ffcfb..02ea5b496f 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -2,26 +2,26 @@ class CsvfilesController < ApplicationController before_action :require_user, only: %i(delete user_files) def new + #to render the index page of simple-data-grapher end def setter @csvfile = Csvfile.new( - uid: params[:uid], - filetitle: params[:filetitle], - filedescription: params[:filedescription], - filepath: params[:object], - filename: "file" + Time.now.to_i.to_s, - filestring: params[:filestring] + uid: params[:uid], + filetitle: params[:filetitle], + filedescription: params[:filedescription], + filepath: params[:object], + filename: "file" + Time.now.to_i.to_s, + filestring: params[:filestring] ) if @csvfile.save - flash[:notice] = "Saved!!" - render :json => @csvfile + render {:json => @csvfile} end end def prev_files @allfile = Csvfile.where(uid: params[:uid]) - render :json => @allfile + render {:json => @allfile} end def user_files From db593244b50c84bb5ecb2360ddd342c46ba90a5d Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Tue, 9 Jul 2019 13:04:14 +0530 Subject: [PATCH 13/46] climate 3 --- app/controllers/csvfiles_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index 02ea5b496f..4f20313b32 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -15,13 +15,13 @@ def setter filestring: params[:filestring] ) if @csvfile.save - render {:json => @csvfile} + render :json => @csvfile end end def prev_files @allfile = Csvfile.where(uid: params[:uid]) - render {:json => @allfile} + render :json => @allfile end def user_files From 48bdba5e944e7d03e3c517020f8312b33bf348a1 Mon Sep 17 00:00:00 2001 From: Cess Date: Tue, 9 Jul 2019 12:56:41 +0300 Subject: [PATCH 14/46] fix code climate issues --- app/controllers/csvfiles_controller.rb | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index 4f20313b32..a8a39ec56b 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -1,8 +1,8 @@ class CsvfilesController < ApplicationController before_action :require_user, only: %i(delete user_files) - + def new - #to render the index page of simple-data-grapher + # to render the index page of simple-data-grapher end def setter @@ -14,14 +14,12 @@ def setter filename: "file" + Time.now.to_i.to_s, filestring: params[:filestring] ) - if @csvfile.save - render :json => @csvfile - end + render json: @csvfile if @csvfile.save end def prev_files @allfile = Csvfile.where(uid: params[:uid]) - render :json => @allfile + render json: @allfile end def user_files @@ -29,14 +27,13 @@ def user_files end def delete - if params[:id] && params[:uid].to_i == current_user.uid - file = Csvfile.where(id: params[:id].to_i) - if file.destroy(params[:id].to_i) - flash[:notice] = "Deleted the file" - else - flash[:error] = "Could not delete the file" - end - redirect_to '/simple-data-grapher/data/' + params[:uid] + return unless params[:id] && params[:uid].to_i == current_user.uid + file = Csvfile.where(id: params[:id].to_i) + if file.destroy(params[:id].to_i) + flash[:notice] = "Deleted the file" + else + flash[:error] = "Could not delete the file" end + redirect_to "simple-data-grapher/data/#{params[:uid]}" end end From 8a61b1e3cfc7c17e17ac32c0d708e4d460d0f0bf Mon Sep 17 00:00:00 2001 From: Isha Gupta <40794215+IshaGupta18@users.noreply.github.com> Date: Tue, 9 Jul 2019 16:10:21 +0530 Subject: [PATCH 15/46] Update schema.rb.example --- db/schema.rb.example | 601 +++++++++++++++++++++---------------------- 1 file changed, 299 insertions(+), 302 deletions(-) diff --git a/db/schema.rb.example b/db/schema.rb.example index 60a2e0f8bb..a28f808fb9 100644 --- a/db/schema.rb.example +++ b/db/schema.rb.example @@ -1,3 +1,4 @@ +# encoding: UTF-8 # This file is auto-generated from the current state of the database. Instead # of editing this file, please use the migrations feature of Active Record to # incrementally modify your database, and then regenerate this schema definition. @@ -12,123 +13,133 @@ ActiveRecord::Schema.define(version: 2019_07_08_141804) do - create_table "answer_selections", force: :cascade do |t| + create_table "answer_selections", force: true do |t| t.integer "user_id" t.integer "aid" - t.boolean "liking", default: false + t.boolean "liking", default: false t.boolean "following", default: false - t.index ["user_id", "aid"], name: "index_answer_selections_on_user_id_and_aid" end - create_table "answers", force: :cascade do |t| - t.integer "uid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.text "content", limit: 2147483647, null: false - t.integer "cached_likes", default: 0 - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.boolean "accepted", default: false - t.index ["uid", "nid"], name: "index_answers_on_uid_and_nid" + add_index "answer_selections", ["user_id", "aid"], name: "index_answer_selections_on_user_id_and_aid", using: :btree + + create_table "answers", force: true do |t| + t.integer "uid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.text "content", limit: 2147483647, null: false + t.integer "cached_likes", default: 0 + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.boolean "accepted", default: false end - create_table "comments", primary_key: "cid", force: :cascade do |t| - t.integer "pid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false - t.string "subject", limit: 64, default: "", null: false - t.text "comment", limit: 2147483647, null: false - t.string "hostname", limit: 128, default: "", null: false - t.integer "timestamp", default: 0, null: false - t.integer "status", default: 1, null: false - t.integer "format", limit: 2, default: 0, null: false - t.string "thread" - t.string "name", limit: 60 - t.string "mail", limit: 64 - t.string "homepage" - t.integer "aid", default: 0, null: false - t.integer "comment_via", limit: 4, default: 0 - t.string "message_id", limit: 255 - t.string "tweet_id" + add_index "answers", ["uid", "nid"], name: "index_answers_on_uid_and_nid", using: :btree + + create_table "comments", primary_key: "cid", force: true do |t| + t.integer "pid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false + t.string "subject", limit: 64, default: "", null: false + t.text "comment", limit: 2147483647, null: false + t.string "hostname", limit: 128, default: "", null: false + t.integer "timestamp", default: 0, null: false + t.integer "status", default: 1, null: false + t.integer "format", limit: 2, default: 0, null: false + t.string "thread" + t.string "name", limit: 60 + t.string "mail", limit: 64 + t.string "homepage" + t.integer "aid", default: 0, null: false + t.integer "comment_via", limit: 4, default: 0 + t.string "message_id", limit: 255 + t.string "tweet_id" t.integer "reply_to" - t.index ["nid"], name: "index_comments_nid" - t.index ["pid"], name: "index_comments_pid" - t.index ["status"], name: "index_comments_status" end - create_table "community_tags", id: false, force: :cascade do |t| - t.integer "tid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false + add_index "comments", ["comment"], name: "index_comments_on_comment", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' + add_index "comments", ["nid"], name: "index_comments_nid", using: :btree + add_index "comments", ["pid"], name: "index_comments_pid", using: :btree + add_index "comments", ["status"], name: "index_comments_status", using: :btree + + create_table "community_tags", id: false, force: true do |t| + t.integer "tid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false t.integer "date", default: 0, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.index ["nid"], name: "index_community_tags_nid" - t.index ["tid", "nid"], name: "tid_nid" - t.index ["tid"], name: "index_community_tags_tid" - t.index ["uid"], name: "index_community_tags_uid" end - create_table "content_field_image_gallery", id: false, force: :cascade do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false + add_index "community_tags", ["nid"], name: "index_community_tags_nid", using: :btree + add_index "community_tags", ["tid", "nid"], name: "tid_nid", using: :btree + add_index "community_tags", ["tid"], name: "index_community_tags_tid", using: :btree + add_index "community_tags", ["uid"], name: "index_community_tags_uid", using: :btree + + create_table "content_field_image_gallery", id: false, force: true do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false t.integer "field_image_gallery_fid" t.integer "field_image_gallery_list", limit: 1 - t.text "field_image_gallery_data" - t.index ["nid"], name: "index_content_field_image_gallery_nid" + t.text "field_image_gallery_data" end - create_table "content_field_main_image", primary_key: "vid", force: :cascade do |t| - t.integer "nid", default: 0, null: false + add_index "content_field_image_gallery", ["nid"], name: "index_content_field_image_gallery_nid", using: :btree + + create_table "content_field_main_image", primary_key: "vid", force: true do |t| + t.integer "nid", default: 0, null: false t.integer "field_main_image_fid" t.integer "field_main_image_list", limit: 1 - t.text "field_main_image_data" - t.index ["nid"], name: "index_content_field_main_image_nid" + t.text "field_main_image_data" end - create_table "content_field_map_editor", id: false, force: :cascade do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false - t.text "field_map_editor_value", limit: 2147483647 - t.index ["nid"], name: "index_content_field_map_editor_nid" + add_index "content_field_main_image", ["nid"], name: "index_content_field_main_image_nid", using: :btree + + create_table "content_field_map_editor", id: false, force: true do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false + t.text "field_map_editor_value", limit: 2147483647 end - create_table "content_field_mappers", id: false, force: :cascade do |t| - t.integer "vid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "delta", default: 0, null: false - t.text "field_mappers_value", limit: 2147483647 - t.index ["nid"], name: "index_content_field_mappers_nid" + add_index "content_field_map_editor", ["nid"], name: "index_content_field_map_editor_nid", using: :btree + + create_table "content_field_mappers", id: false, force: true do |t| + t.integer "vid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "delta", default: 0, null: false + t.text "field_mappers_value", limit: 2147483647 end - create_table "content_type_map", primary_key: "vid", force: :cascade do |t| - t.integer "nid", default: 0, null: false - t.string "field_publication_date_value", limit: 20 - t.string "field_capture_date_value", limit: 20 - t.text "field_geotiff_url_value", limit: 2147483647 - t.text "field_google_maps_url_value", limit: 2147483647 - t.text "field_openlayers_url_value", limit: 2147483647 - t.text "field_tms_url_value", limit: 2147483647 - t.text "field_jpg_url_value", limit: 2147483647 - t.text "field_license_value", limit: 2147483647 - t.text "field_raw_images_value", limit: 2147483647 - t.text "field_cartographer_notes_value", limit: 2147483647 + add_index "content_field_mappers", ["nid"], name: "index_content_field_mappers_nid", using: :btree + + create_table "content_type_map", primary_key: "vid", force: true do |t| + t.integer "nid", default: 0, null: false + t.string "field_publication_date_value", limit: 20 + t.string "field_capture_date_value", limit: 20 + t.text "field_geotiff_url_value", limit: 2147483647 + t.text "field_google_maps_url_value", limit: 2147483647 + t.text "field_openlayers_url_value", limit: 2147483647 + t.text "field_tms_url_value", limit: 2147483647 + t.text "field_jpg_url_value", limit: 2147483647 + t.text "field_license_value", limit: 2147483647 + t.text "field_raw_images_value", limit: 2147483647 + t.text "field_cartographer_notes_value", limit: 2147483647 t.integer "field_cartographer_notes_format" - t.text "field_notes_value", limit: 2147483647 + t.text "field_notes_value", limit: 2147483647 t.integer "field_notes_format" - t.text "field_mbtiles_url_value", limit: 2147483647 + t.text "field_mbtiles_url_value", limit: 2147483647 t.integer "field_zoom_min_value" - t.decimal "field_ground_resolution_value", precision: 10, scale: 2 - t.decimal "field_geotiff_filesize_value", precision: 10, scale: 1 - t.decimal "field_jpg_filesize_value", precision: 10, scale: 1 - t.decimal "field_raw_images_filesize_value", precision: 10, scale: 1 - t.text "field_tms_tile_type_value", limit: 2147483647 + t.decimal "field_ground_resolution_value", precision: 10, scale: 2 + t.decimal "field_geotiff_filesize_value", precision: 10, scale: 1 + t.decimal "field_jpg_filesize_value", precision: 10, scale: 1 + t.decimal "field_raw_images_filesize_value", precision: 10, scale: 1 + t.text "field_tms_tile_type_value", limit: 2147483647 t.integer "field_zoom_max_value" - t.string "authorship" - t.index ["nid"], name: "index_content_type_map_nid" + t.string "authorship" end + add_index "content_type_map", ["nid"], name: "index_content_type_map_nid", using: :btree + create_table "csvfiles", force: :cascade do |t| t.integer "uid" t.string "filename" @@ -140,288 +151,274 @@ ActiveRecord::Schema.define(version: 2019_07_08_141804) do t.string "filestring" t.string "string" end - - create_table "files", primary_key: "fid", force: :cascade do |t| - t.integer "uid", default: 0, null: false - t.string "filename", default: "", null: false - t.string "filepath", default: "", null: false - t.string "filemime", default: "", null: false - t.integer "filesize", default: 0, null: false - t.integer "status", default: 0, null: false - t.integer "timestamp", default: 0, null: false - t.index ["status"], name: "index_files_status" - t.index ["timestamp"], name: "index_files_timestamp" - t.index ["uid"], name: "index_files_uid" + + create_table "files", primary_key: "fid", force: true do |t| + t.integer "uid", default: 0, null: false + t.string "filename", default: "", null: false + t.string "filepath", default: "", null: false + t.string "filemime", default: "", null: false + t.integer "filesize", default: 0, null: false + t.integer "status", default: 0, null: false + t.integer "timestamp", default: 0, null: false end - create_table "friendly_id_slugs", force: :cascade do |t| - t.string "slug", null: false - t.integer "sluggable_id", null: false - t.string "sluggable_type", limit: 40 + add_index "files", ["status"], name: "index_files_status", using: :btree + add_index "files", ["timestamp"], name: "index_files_timestamp", using: :btree + add_index "files", ["uid"], name: "index_files_uid", using: :btree + + create_table "friendly_id_slugs", force: true do |t| + t.string "slug", null: false + t.integer "sluggable_id", null: false + t.string "sluggable_type", limit: 40 t.datetime "created_at" end - create_table "images", force: :cascade do |t| - t.string "title" - t.integer "uid" - t.integer "nid" - t.string "notes" - t.integer "version", default: 0 - t.string "photo_file_name" - t.string "photo_content_type" - t.string "photo_file_size" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "remote_url" - t.integer "vid", default: 0 + create_table "images", force: true do |t| + t.string "title" + t.integer "uid" + t.integer "nid" + t.string "notes" + t.integer "version", default: 0 + t.string "photo_file_name" + t.string "photo_content_type" + t.string "photo_file_size" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.string "remote_url" + t.integer "vid", default: 0 end - create_table "impressions", force: :cascade do |t| - t.string "impressionable_type" - t.integer "impressionable_id" - t.integer "user_id" - t.string "controller_name" - t.string "action_name" - t.string "view_name" - t.string "request_hash" - t.string "ip_address" - t.string "session_hash" - t.text "message" - t.text "referrer" - t.text "params" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.index ["controller_name", "action_name", "ip_address"], name: "controlleraction_ip_index" - t.index ["controller_name", "action_name", "request_hash"], name: "controlleraction_request_index" - t.index ["controller_name", "action_name", "session_hash"], name: "controlleraction_session_index" - t.index ["impressionable_id"], name: "index_impressions_on_impressionable_id" - t.index ["impressionable_type", "impressionable_id", "ip_address"], name: "poly_ip_index" - t.index ["impressionable_type", "impressionable_id", "params"], name: "poly_params_request_index" - t.index ["impressionable_type", "impressionable_id", "request_hash"], name: "poly_request_index" - t.index ["impressionable_type", "impressionable_id", "session_hash"], name: "poly_session_index" - t.index ["impressionable_type", "message", "impressionable_id"], name: "impressionable_type_message_index" - t.index ["impressionable_type"], name: "index_impressions_on_impressionable_type" - t.index ["ip_address"], name: "index_impressions_on_ip_address" - t.index ["user_id"], name: "index_impressions_on_user_id" + create_table "impressions", force: true do |t| + t.string "impressionable_type" + t.integer "impressionable_id" + t.integer "user_id" + t.string "controller_name" + t.string "action_name" + t.string "view_name" + t.string "request_hash" + t.string "ip_address" + t.string "session_hash" + t.text "message" + t.text "referrer" + t.text "params" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false end - create_table "likes", force: :cascade do |t| - t.integer "likeable_id" - t.integer "user_id" - t.string "likeable_type" + add_index "impressions", ["controller_name", "action_name", "ip_address"], name: "controlleraction_ip_index", using: :btree + add_index "impressions", ["controller_name", "action_name", "request_hash"], name: "controlleraction_request_index", using: :btree + add_index "impressions", ["controller_name", "action_name", "session_hash"], name: "controlleraction_session_index", using: :btree + add_index "impressions", ["impressionable_id"], name: "index_impressions_on_impressionable_id", using: :btree + add_index "impressions", ["impressionable_type", "impressionable_id", "ip_address"], name: "poly_ip_index", using: :btree + add_index "impressions", ["impressionable_type", "impressionable_id", "params"], name: "poly_params_request_index", length: {"impressionable_type"=>nil, "impressionable_id"=>nil, "params"=>255}, using: :btree + add_index "impressions", ["impressionable_type", "impressionable_id", "request_hash"], name: "poly_request_index", using: :btree + add_index "impressions", ["impressionable_type", "impressionable_id", "session_hash"], name: "poly_session_index", using: :btree + add_index "impressions", ["impressionable_type", "message", "impressionable_id"], name: "impressionable_type_message_index", length: {"impressionable_type"=>nil, "message"=>255, "impressionable_id"=>nil}, using: :btree + add_index "impressions", ["impressionable_type"], name: "index_impressions_on_impressionable_type", using: :btree + add_index "impressions", ["user_id"], name: "index_impressions_on_user_id", using: :btree + add_index "impressions", ["ip_address"], name: "index_impressions_on_ip_address", using: :btree + + create_table "likes", force: true do |t| + t.integer "likeable_id" + t.integer "user_id" + t.string "likeable_type" t.datetime "created_at" t.datetime "updated_at" - t.string "emoji_type" + t.string "emoji_type" end - create_table "node", primary_key: "nid", force: :cascade do |t| - t.integer "vid", default: 0, null: false - t.string "type", limit: 32, default: "", null: false - t.string "language", limit: 12, default: "", null: false - t.string "title", default: "", null: false - t.integer "uid", default: 0, null: false - t.integer "status", default: 1, null: false - t.integer "created", default: 0, null: false - t.integer "changed", default: 0, null: false - t.integer "comment", default: 0, null: false - t.integer "promote", default: 0, null: false - t.integer "moderate", default: 0, null: false - t.integer "sticky", default: 0, null: false - t.integer "tnid", default: 0, null: false - t.integer "translate", default: 0, null: false - t.integer "cached_likes", default: 0 - t.integer "comments_count", default: 0 - t.integer "drupal_node_revisions_count", default: 0 - t.string "path" + create_table "node", primary_key: "nid", force: true do |t| + t.integer "vid", default: 0, null: false + t.string "type", limit: 32, default: "", null: false + t.string "language", limit: 12, default: "", null: false + t.string "title", default: "", null: false + t.integer "uid", default: 0, null: false + t.integer "status", default: 1, null: false + t.integer "created", default: 0, null: false + t.integer "changed", default: 0, null: false + t.integer "comment", default: 0, null: false + t.integer "promote", default: 0, null: false + t.integer "moderate", default: 0, null: false + t.integer "sticky", default: 0, null: false + t.integer "tnid", default: 0, null: false + t.integer "translate", default: 0, null: false + t.integer "cached_likes", default: 0 + t.integer "comments_count", default: 0 + t.integer "drupal_node_revisions_count", default: 0 + t.string "path" t.integer "main_image_id" - t.string "slug" - t.integer "views", default: 0 - t.decimal "latitude", precision: 20, scale: 17 - t.decimal "longitude", precision: 20, scale: 17 + t.string "slug" + t.integer "views", default: 0 + t.decimal "latitude", precision: 20, scale: 17 + t.decimal "longitude", precision: 20, scale: 17 t.integer "precision" - t.index ["changed"], name: "node_changed" - t.index ["created"], name: "node_created" - t.index ["moderate"], name: "node_moderate" - t.index ["promote", "status"], name: "node_promote_status" - t.index ["slug"], name: "index_node_on_slug" - t.index ["status", "type", "nid"], name: "node_status_type" - t.index ["title", "type"], name: "node_title_type" - t.index ["tnid"], name: "index_node_tnid" - t.index ["translate"], name: "index_node_translate" - t.index ["type"], name: "node_type" - t.index ["uid"], name: "index_node_uid" - t.index ["vid"], name: "index_node_vid" end - create_table "node_access", id: false, force: :cascade do |t| - t.integer "nid", default: 0, null: false - t.integer "gid", default: 0, null: false - t.string "realm", default: "", null: false - t.integer "grant_view", limit: 1, default: 0, null: false - t.integer "grant_update", limit: 1, default: 0, null: false - t.integer "grant_delete", limit: 1, default: 0, null: false + add_index "node", ["changed"], name: "node_changed", using: :btree + add_index "node", ["created"], name: "node_created", using: :btree + add_index "node", ["moderate"], name: "node_moderate", using: :btree + add_index "node", ["promote", "status"], name: "node_promote_status", using: :btree + add_index "node", ["slug"], name: "index_node_on_slug", using: :btree + add_index "node", ["status", "type", "nid"], name: "node_status_type", using: :btree + add_index "node", ["title", "type"], name: "node_title_type", using: :btree + add_index "node", ["tnid"], name: "index_node_tnid", using: :btree + add_index "node", ["translate"], name: "index_node_translate", using: :btree + add_index "node", ["type"], name: "node_type", using: :btree + add_index "node", ["uid"], name: "index_node_uid", using: :btree + add_index "node", ["vid"], name: "index_node_vid", using: :btree + + create_table "node_access", id: false, force: true do |t| + t.integer "nid", default: 0, null: false + t.integer "gid", default: 0, null: false + t.string "realm", default: "", null: false + t.integer "grant_view", limit: 1, default: 0, null: false + t.integer "grant_update", limit: 1, default: 0, null: false + t.integer "grant_delete", limit: 1, default: 0, null: false end - create_table "node_revisions", primary_key: "vid", force: :cascade do |t| - t.integer "nid", default: 0, null: false - t.integer "uid", default: 0, null: false - t.string "title", default: "", null: false - t.text "body", limit: 2147483647, null: false - t.text "teaser" - t.text "log" - t.integer "timestamp", default: 0, null: false - t.integer "format", default: 0, null: false - t.integer "status", default: 1 - t.index ["nid"], name: "index_node_revisions_nid" - t.index ["timestamp"], name: "index_node_revisions_timestamp" - t.index ["uid"], name: "index_node_revisions_uid" + create_table "node_revisions", primary_key: "vid", force: true do |t| + t.integer "nid", default: 0, null: false + t.integer "uid", default: 0, null: false + t.string "title", default: "", null: false + t.text "body", limit: 2147483647, null: false + t.text "teaser" + t.text "log" + t.integer "timestamp", default: 0, null: false + t.integer "format", default: 0, null: false + t.integer "status", default: 1 end - create_table "node_selections", id: false, force: :cascade do |t| + add_index "node_revisions", ["body", "title"], name: "index_node_revisions_on_body_and_title", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' + add_index "node_revisions", ["nid"], name: "index_node_revisions_nid", using: :btree + add_index "node_revisions", ["timestamp"], name: "index_node_revisions_timestamp", using: :btree + add_index "node_revisions", ["uid"], name: "index_node_revisions_uid", using: :btree + + create_table "node_selections", id: false, force: true do |t| t.integer "user_id" t.integer "nid" t.boolean "following", default: true - t.boolean "liking", default: false - t.index ["user_id", "nid"], name: "index_node_selections_on_user_id_and_nid", unique: true + t.boolean "liking", default: false end - create_table "relationships", force: :cascade do |t| - t.integer "follower_id" - t.integer "followed_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.index ["followed_id"], name: "index_relationships_on_followed_id" - t.index ["follower_id", "followed_id"], name: "index_relationships_on_follower_id_and_followed_id", unique: true - t.index ["follower_id"], name: "index_relationships_on_follower_id" + add_index "node_selections", ["user_id", "nid"], name: "index_node_selections_on_user_id_and_nid", unique: true, using: :btree + + create_table "relationships", force: true do |t| + t.integer "follower_id" + t.integer "followed_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false end - create_table "rsessions", force: :cascade do |t| - t.string "session_id", null: false - t.text "data" + add_index "relationships", ["followed_id"], name: "index_relationships_on_followed_id", using: :btree + add_index "relationships", ["follower_id", "followed_id"], name: "index_relationships_on_follower_id_and_followed_id", unique: true, using: :btree + add_index "relationships", ["follower_id"], name: "index_relationships_on_follower_id", using: :btree + + create_table "rsessions", force: true do |t| + t.string "session_id", null: false + t.text "data" t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.index ["session_id"], name: "index_rsessions_on_session_id" - t.index ["updated_at"], name: "index_rsessions_on_updated_at" end - create_table "rusers", force: :cascade do |t| - t.string "username" - t.string "email" - t.string "crypted_password" - t.string "password_salt" - t.string "persistence_token" - t.integer "login_count", default: 0, null: false - t.integer "failed_login_count", default: 0, null: false + add_index "rsessions", ["session_id"], name: "index_rsessions_on_session_id", using: :btree + add_index "rsessions", ["updated_at"], name: "index_rsessions_on_updated_at", using: :btree + + create_table "rusers", force: true do |t| + t.string "username" + t.string "email" + t.string "crypted_password" + t.string "password_salt" + t.string "persistence_token" + t.integer "login_count", default: 0, null: false + t.integer "failed_login_count", default: 0, null: false t.datetime "last_request_at" t.datetime "current_login_at" t.datetime "last_login_at" - t.string "current_login_ip" - t.string "last_login_ip" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "openid_identifier" - t.string "role", default: "basic" - t.string "reset_key" - t.string "photo_file_name" - t.string "photo_content_type" - t.string "photo_file_size" - t.text "bio", limit: 2147483647 - t.string "token" - t.integer "status", default: 0 + t.string "current_login_ip" + t.string "last_login_ip" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.string "openid_identifier" + t.string "csvfile" + t.string "role", default: "basic" + t.string "reset_key" + t.string "photo_file_name" + t.string "photo_content_type" + t.string "photo_file_size" + t.text "bio", limit: 2147483647 + t.string "token" + t.integer "status", default: 0 t.integer "password_checker", default: 0 t.boolean "is_verified", default: false - t.string "csvfile" - t.index ["created_at"], name: "index_rusers_created_at" - t.index ["email"], name: "index_rusers_on_email" - t.index ["persistence_token"], name: "index_rusers_on_persistence_token" - t.index ["status"], name: "index_rusers_on_status" - t.index ["username"], name: "index_rusers_on_username" end - create_table "tag_selections", id: false, force: :cascade do |t| + add_index "rusers", ["created_at"], name: "index_rusers_created_at", using: :btree + add_index "rusers", ["email"], name: "index_rusers_on_email", using: :btree + add_index "rusers", ["persistence_token"], name: "index_rusers_on_persistence_token", using: :btree + add_index "rusers", ["status"], name: "index_rusers_on_status", using: :btree + add_index "rusers", ["username", "bio"], name: "index_rusers_on_username_and_bio", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' + add_index "rusers", ["username"], name: "index_rusers_on_username", using: :btree + add_index "rusers", ["username"], name: "rusers_username_fulltext_idx", type: :fulltext if ActiveRecord::Base.connection.adapter_name == 'Mysql2' + + create_table "tag_selections", id: false, force: :cascade do |t| t.integer "user_id" t.integer "tid" t.boolean "following", default: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.index ["user_id", "tid"], name: "index_tag_selections_on_user_id_and_tid", unique: true end - create_table "term_data", primary_key: "tid", force: :cascade do |t| - t.integer "vid", default: 0, null: false - t.string "name", default: "", null: false - t.text "description", limit: 2147483647 - t.integer "weight", limit: 1, default: 0, null: false + add_index "tag_selections", ["user_id", "tid"], name: "index_tag_selections_on_user_id_and_tid", unique: true, using: :btree + + create_table "term_data", primary_key: "tid", force: true do |t| + t.integer "vid", default: 0, null: false + t.string "name", default: "", null: false + t.text "description", limit: 2147483647 + t.integer "weight", limit: 1, default: 0, null: false t.integer "count" - t.string "parent" - t.index ["name"], name: "index_term_data_on_name" - t.index ["parent"], name: "index_term_data_on_parent" - t.index ["vid", "name"], name: "index_term_data_vid_name" - t.index ["vid", "weight", "name"], name: "index_vid_weight_name" + t.string "parent" end - create_table "term_node", id: false, force: :cascade do |t| + add_index "term_data", ["name"], name: "index_term_data_on_name", using: :btree + add_index "term_data", ["parent"], name: "index_term_data_on_parent", using: :btree + add_index "term_data", ["vid", "name"], name: "index_term_data_vid_name", using: :btree + add_index "term_data", ["vid", "weight", "name"], name: "index_vid_weight_name", using: :btree + + create_table "term_node", id: false, force: true do |t| t.integer "nid", default: 0, null: false t.integer "vid", default: 0, null: false t.integer "tid", default: 0, null: false - t.index ["nid"], name: "index_term_node_nid" - t.index ["vid"], name: "index_term_node_vid" end - create_table "upload", id: false, force: :cascade do |t| - t.integer "fid", default: 0, null: false - t.integer "nid", default: 0, null: false - t.integer "vid", default: 0, null: false - t.string "description", default: "", null: false - t.integer "list", limit: 1, default: 0, null: false - t.integer "weight", limit: 1, default: 0, null: false - t.index ["fid"], name: "index_upload_fid" - t.index ["nid"], name: "index_upload_nid" + add_index "term_node", ["nid"], name: "index_term_node_nid", using: :btree + add_index "term_node", ["vid"], name: "index_term_node_vid", using: :btree + + create_table "upload", id: false, force: true do |t| + t.integer "fid", default: 0, null: false + t.integer "nid", default: 0, null: false + t.integer "vid", default: 0, null: false + t.string "description", default: "", null: false + t.integer "list", limit: 1, default: 0, null: false + t.integer "weight", limit: 1, default: 0, null: false end - create_table "user_selections", id: false, force: :cascade do |t| + add_index "upload", ["fid"], name: "index_upload_fid", using: :btree + add_index "upload", ["nid"], name: "index_upload_nid", using: :btree + + create_table "user_selections", id: false, force: true do |t| t.integer "self_id" t.integer "other_id" t.boolean "following", default: false - t.index ["self_id", "other_id"], name: "index_user_selections_on_self_id_and_other_id", unique: true end - create_table "user_tags", force: :cascade do |t| - t.integer "uid" - t.string "value" + add_index "user_selections", ["self_id", "other_id"], name: "index_user_selections_on_self_id_and_other_id", unique: true, using: :btree + + create_table "user_tags", force: true do |t| + t.integer "uid" + t.string "value" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.text "data" end - create_table "users", primary_key: "uid", force: :cascade do |t| - t.string "name", limit: 60, default: "", null: false - t.string "pass", limit: 32, default: "", null: false - t.string "mail", limit: 64, default: "" - t.integer "mode", limit: 1, default: 0, null: false - t.integer "sort", limit: 1, default: 0 - t.integer "threshold", limit: 1, default: 0 - t.string "theme", default: "", null: false - t.string "signature", default: "", null: false - t.integer "signature_format", limit: 2, default: 0, null: false - t.integer "created", default: 0, null: false - t.integer "access", default: 0, null: false - t.integer "login", default: 0, null: false - t.integer "status", limit: 1, default: 0, null: false - t.string "timezone", limit: 8 - t.string "language", limit: 12, default: "", null: false - t.string "picture", default: "", null: false - t.string "init", limit: 64, default: "" - t.text "data", limit: 2147483647 - t.integer "timezone_id", default: 0, null: false - t.string "timezone_name", limit: 50, default: "", null: false - t.decimal "lat", precision: 20, scale: 10, default: "0.0" - t.decimal "lon", precision: 20, scale: 10, default: "0.0" - t.index ["access"], name: "index_users_access" - t.index ["created"], name: "index_users_created" - t.index ["mail"], name: "index_users_mail" - t.index ["name"], name: "index_users_name" - t.index ["uid"], name: "index_users_uid" - end - end From f5bc4b8484d3026c0146ff8ba94196f74b73a0a0 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 22 Jul 2019 11:36:35 +0530 Subject: [PATCH 16/46] Fixing changes --- app/views/csvfiles/new.html.erb | 87 +++++++++----------- app/views/csvfiles/user_files.html.erb | 4 +- test/controllers/csvfiles_controller_test.rb | 7 -- test/models/csvfile_test.rb | 7 -- 4 files changed, 39 insertions(+), 66 deletions(-) delete mode 100644 test/controllers/csvfiles_controller_test.rb delete mode 100644 test/models/csvfile_test.rb diff --git a/app/views/csvfiles/new.html.erb b/app/views/csvfiles/new.html.erb index d463507d46..30c42efbd4 100644 --- a/app/views/csvfiles/new.html.erb +++ b/app/views/csvfiles/new.html.erb @@ -16,63 +16,58 @@ <%= stylesheet_link_tag '/lib/simple-data-grapher/examples/upload_file.css'%>
diff --git a/app/views/csvfiles/user_files.html.erb b/app/views/csvfiles/user_files.html.erb index 8779c5c1de..554c42ddad 100644 --- a/app/views/csvfiles/user_files.html.erb +++ b/app/views/csvfiles/user_files.html.erb @@ -1,4 +1,4 @@ -
+

Your Data

View, download and delete CSV files and Research Noted on charts

@@ -62,7 +62,7 @@ align-items: center; justify-content: center; } -.blah{ +.main_conatiner{ display: flex; flex-direction: column; margin-left: 300px; diff --git a/test/controllers/csvfiles_controller_test.rb b/test/controllers/csvfiles_controller_test.rb deleted file mode 100644 index 69db2560c0..0000000000 --- a/test/controllers/csvfiles_controller_test.rb +++ /dev/null @@ -1,7 +0,0 @@ -require 'test_helper' - -class CsvfilesControllerTest < ActionDispatch::IntegrationTest - # test "the truth" do - # assert true - # end -end diff --git a/test/models/csvfile_test.rb b/test/models/csvfile_test.rb deleted file mode 100644 index 968dcb0d25..0000000000 --- a/test/models/csvfile_test.rb +++ /dev/null @@ -1,7 +0,0 @@ -require 'test_helper' - -class CsvfileTest < ActiveSupport::TestCase - # test "the truth" do - # assert true - # end -end From 1de79befbefcb3a41f3e24fded163051cc6a94d5 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Mon, 22 Jul 2019 11:51:28 +0530 Subject: [PATCH 17/46] Error Handling --- app/views/csvfiles/new.html.erb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/views/csvfiles/new.html.erb b/app/views/csvfiles/new.html.erb index 30c42efbd4..5dc63a2368 100644 --- a/app/views/csvfiles/new.html.erb +++ b/app/views/csvfiles/new.html.erb @@ -46,6 +46,9 @@ filestring: csvStringForDownload}, success: function(data){ console.log(data,"saved"); + }, + error: function(xhr){ + alert("Couldn't save this file"); } }); } @@ -58,6 +61,9 @@ data: {uid: <%= current_user.id %>}, success: function(data){ displayPreviousFiles(data); + }, + error: function(xhr){ + alert("Couldn't retrieve the files"); } }); }); From 8feb24ddfcd2c90d4e24de3c47a844edc74e2d33 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Fri, 26 Jul 2019 23:10:42 +0530 Subject: [PATCH 18/46] Fixed the errors --- app/views/csvfiles/new.html.erb | 73 ++++++++++++++++++++------------- 1 file changed, 44 insertions(+), 29 deletions(-) diff --git a/app/views/csvfiles/new.html.erb b/app/views/csvfiles/new.html.erb index 5dc63a2368..640299385b 100644 --- a/app/views/csvfiles/new.html.erb +++ b/app/views/csvfiles/new.html.erb @@ -16,24 +16,30 @@ <%= stylesheet_link_tag '/lib/simple-data-grapher/examples/upload_file.css'%>
From ef4bfcca54fd8d0da4f227fecc94af0ae0f1004f Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Sat, 27 Jul 2019 17:58:35 +0530 Subject: [PATCH 19/46] linting --- app/views/csvfiles/new.html.erb | 10 +++++----- app/views/csvfiles/user_files.html.erb | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/app/views/csvfiles/new.html.erb b/app/views/csvfiles/new.html.erb index 640299385b..e3f7a679ce 100644 --- a/app/views/csvfiles/new.html.erb +++ b/app/views/csvfiles/new.html.erb @@ -18,13 +18,13 @@ + \ No newline at end of file diff --git a/config/initializers/assets.rb b/config/initializers/assets.rb index 477bb2c39e..2d4474d282 100644 --- a/config/initializers/assets.rb +++ b/config/initializers/assets.rb @@ -9,6 +9,7 @@ 'dragdrop.js', 'editor.js', 'graph.js', + 'simple-data-grapher.js', 'grids.js', 'header_footer.js', 'ics.deps.min.js', diff --git a/config/routes.rb b/config/routes.rb index fca51d27e3..012e530e21 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -130,6 +130,7 @@ get 'simple-data-grapher/prev_file' => 'csvfiles#prev_files' get 'simple-data-grapher/data/:id' => 'csvfiles#user_files' get 'simple-data-grapher/file/:uid/:id' => 'csvfiles#delete' + get 'simple-data-grapher/fetch_graphobject' => 'csvfiles#fetch_graphobject' get 'place/:id/feed' => 'place#feed' get 'n/:id' => 'notes#shortlink' @@ -301,14 +302,15 @@ get 'admin/mark_comment_spam/:id' => 'admin#mark_comment_spam' get 'smtp_test' => 'admin#smtp_test' - get 'post' => 'editor#post' - post 'post' => 'editor#post' + get 'post' => 'editor#post', :as => :editor_post + post 'post' => 'editor#post', :as => :editor_path get 'legacy' => 'editor#legacy' get 'editor' => 'editor#editor' get 'editor/rich/(:n)' => 'editor#rich' post 'images/create' => 'images#create' put 'note/add' => 'legacy#note_add' put 'page/add' => 'legacy#page_add' + get 'sdg' => 'editor#tempfunc' get 'talk/:id' => 'talk#show' From dabe9486b8fddb99d842aa1943bdda5498b87590 Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Sun, 4 Aug 2019 10:14:07 +0530 Subject: [PATCH 24/46] updating schema --- db/schema.rb.example | 1 + 1 file changed, 1 insertion(+) diff --git a/db/schema.rb.example b/db/schema.rb.example index a28f808fb9..7fde55055f 100644 --- a/db/schema.rb.example +++ b/db/schema.rb.example @@ -150,6 +150,7 @@ ActiveRecord::Schema.define(version: 2019_07_08_141804) do t.datetime "updated_at", null: false t.string "filestring" t.string "string" + t.string "graphobject" end create_table "files", primary_key: "fid", force: true do |t| From 01a17ca766ea5cfccc3e932232f8ed7c63ef33fa Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Sun, 4 Aug 2019 22:17:35 +0530 Subject: [PATCH 25/46] Tests for Csvfiles controller for Simple Data Grapher --- app/controllers/csvfiles_controller.rb | 3 +- test/functional/csvfiles_controller_test.rb | 38 +++++++++++++++++++++ 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 test/functional/csvfiles_controller_test.rb diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index 245700be50..d95046e029 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -1,6 +1,7 @@ class CsvfilesController < ApplicationController before_action :require_user, only: %i(delete user_files) - + before_action :add_graphobject, only: %i(fetch_graphobject) + def new # to render the index page of simple-data-grapher end diff --git a/test/functional/csvfiles_controller_test.rb b/test/functional/csvfiles_controller_test.rb new file mode 100644 index 0000000000..591a279f90 --- /dev/null +++ b/test/functional/csvfiles_controller_test.rb @@ -0,0 +1,38 @@ +require 'test_helper' + +class CsvfilesControllerTest < ActionController::TestCase + def setup + activate_authlogic + end + + test 'should save csv file' do + post :setter, params: {uid: 2, filetitle: "Test Title", filedescription: "Test Description", object: '{"completeCsvMatrix":[[1,6,11,16,21,26,null],[2,7,12,17,22,27,null],[3,8,14,18,23,28,null],[4,9,14,19,24,29,null],[5,10,15,20,25,30,null]],"csvHeaders":["A1","B1","Column3","C1","Column5"],"csvSampleData":[[1,6,11,16,21],[2,7,12,17,22],[3,8,14,18,23],[4,9,14,19,24],[5,10,15,20,25]],"csvValidForYAxis":["A1","B1","Column3","C1","Column5"],"completeCsvMatrixTranspose":[["A1","B1","Column3","C1","Column5"],[1,2,3,4,5],[6,7,8,9,10],[11,12,14,14,15],[16,17,18,19,20],[21,22,23,24,25],[26,27,28,29,30],[null,null,null,null,null]]}', filestring: 'data:text/csv;charset=utf-8,A1,B1,Column3,C1,Column5%0A1,2,3,4,5%0A6,7,8,9,10%0A11,12,14,14,15%0A16,17,18,19,20%0A21,22,23,24,25%0A26,27,28,29,30%0A'} + assert_response :success + end + + test 'should get previous files' do + get :prev_files, params: {uid: 2} + assert_response :success + end + + test 'should not get user files if not logged in' do + get :user_files, params: {id: 2} + assert_redirected_to '/login' + end + + test 'should save graph object' do + post :add_graphobject, params: {uid: 2, filetitle: "Test Title", filedescription: "Test Description", object: '{"completeCsvMatrix":[[1,6,11,16,21,26,null],[2,7,12,17,22,27,null],[3,8,14,18,23,28,null],[4,9,14,19,24,29,null],[5,10,15,20,25,30,null]],"csvHeaders":["A1","B1","Column3","C1","Column5"],"csvSampleData":[[1,6,11,16,21],[2,7,12,17,22],[3,8,14,18,23],[4,9,14,19,24],[5,10,15,20,25]],"csvValidForYAxis":["A1","B1","Column3","C1","Column5"],"completeCsvMatrixTranspose":[["A1","B1","Column3","C1","Column5"],[1,2,3,4,5],[6,7,8,9,10],[11,12,14,14,15],[16,17,18,19,20],[21,22,23,24,25],[26,27,28,29,30],[null,null,null,null,null]]}', filestring: 'data:text/csv;charset=utf-8,A1,B1,Column3,C1,Column5%0A1,2,3,4,5%0A6,7,8,9,10%0A11,12,14,14,15%0A16,17,18,19,20%0A21,22,23,24,25%0A26,27,28,29,30%0A',graphobject: '{"hash": {"x_axis_labels": [3,8,14,18,23,28,null],"y_axis_values0": [2,7,12,17,22,27,null],"labels": ["Column3",["B1"]],"graphType": "Horizontal","length": 1}'} + assert_response :success + end + + test 'should not delete a user file if not logged in' do + get :delete, params: {id: 60, uid: 2} + assert_redirected_to '/login' + end + + test 'should fetch graph object' do + get :fetch_graphobject, params: {id: 60, uid: 2} + assert_response :success + end + +end \ No newline at end of file From a1075a331766e70593ec34fdc63dc711dbb6a68f Mon Sep 17 00:00:00 2001 From: IshaGupta18 Date: Thu, 8 Aug 2019 00:49:46 +0530 Subject: [PATCH 26/46] Bug Fixes --- app/controllers/csvfiles_controller.rb | 1 - app/controllers/editor_controller.rb | 6 +---- app/models/concerns/node_shared.rb | 27 ++++++++++--------- app/views/editor/rich.html.erb | 8 +++--- app/views/grids/_simple-data-grapher.html.erb | 10 +++---- config/routes.rb | 2 +- test/functional/csvfiles_controller_test.rb | 5 ---- 7 files changed, 25 insertions(+), 34 deletions(-) diff --git a/app/controllers/csvfiles_controller.rb b/app/controllers/csvfiles_controller.rb index d95046e029..f8df87a854 100644 --- a/app/controllers/csvfiles_controller.rb +++ b/app/controllers/csvfiles_controller.rb @@ -1,6 +1,5 @@ class CsvfilesController < ApplicationController before_action :require_user, only: %i(delete user_files) - before_action :add_graphobject, only: %i(fetch_graphobject) def new # to render the index page of simple-data-grapher diff --git a/app/controllers/editor_controller.rb b/app/controllers/editor_controller.rb index 34ef9538f8..402d1a5982 100644 --- a/app/controllers/editor_controller.rb +++ b/app/controllers/editor_controller.rb @@ -20,11 +20,7 @@ def editor end def post - @graphobject = "" - if params[:id] && params[:uid] - @graphobject = [params[:id],params[:uid]] - end - # byebug + @graphobject = [params[:id],params[:uid]] if params[:id] && params[:uid] if params[:tags]&.include?('question:') redirect_to "/questions/new?#{request.env['QUERY_STRING']}" elsif params[:legacy] || params[:template] == 'event' diff --git a/app/models/concerns/node_shared.rb b/app/models/concerns/node_shared.rb index f777bd1919..b05af94899 100644 --- a/app/models/concerns/node_shared.rb +++ b/app/models/concerns/node_shared.rb @@ -54,19 +54,20 @@ def self.graph_grid(body, _page = 1) end def self.simple_data_grapher(body, _page=1) - start = "Power Tag: simple-data-grapher: " - ending = "]

" - ids = body[/#{start}(.*?)#{ending}/m, 1].split("/") - a = ActionController::Base.new - randomSeed = rand(1000).to_s - output = a.render_to_string(template: "grids/_simple-data-grapher", - layout: false, - locals: { - uid: ids[2], - id: ids[1], - idName: 'sdg-graph-' + randomSeed - }) - output + body.gsub(/(?`])(\)?\[Power\ Tag\:\ simple-data-grapher\:(\S+)\]/) do |_tagname| + ids = Regexp.last_match(2) + a = ActionController::Base.new + randomSeed = rand(1000).to_s + output = a.render_to_string(template: "grids/_simple-data-grapher", + layout: false, + locals: { + ids: ids, + randomSeed: randomSeed, + idName: 'sdg-graph-' + randomSeed, + type: "graph" + }) + output + end end # rubular regex: http://rubular.com/r/hBEThNL4qd diff --git a/app/views/editor/rich.html.erb b/app/views/editor/rich.html.erb index b8333b688a..134fb4e524 100644 --- a/app/views/editor/rich.html.erb +++ b/app/views/editor/rich.html.erb @@ -206,14 +206,14 @@

4

- <% if @graphobject=="" %> + <% if @graphobject %>
- + <% x = "Power Tag: simple-data-grapher:i/" + @graphobject[0] + "/" + @graphobject[1] %> +
<% else %>
- <% x = "Power Tag: simple-data-grapher: i/" + @graphobject[0] + "/" + @graphobject[1] %> - +
<% end %> diff --git a/app/views/grids/_simple-data-grapher.html.erb b/app/views/grids/_simple-data-grapher.html.erb index dc7621f36e..4d65f81075 100644 --- a/app/views/grids/_simple-data-grapher.html.erb +++ b/app/views/grids/_simple-data-grapher.html.erb @@ -1,4 +1,4 @@ -
hello everyone!
+