elabs 2.0.0.pre
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.eslintrc.yml +26 -0
- data/.gitignore +49 -0
- data/.gitlab-ci.yml +93 -0
- data/.haml-lint.yml +4 -0
- data/.node-version +1 -0
- data/.rspec +1 -0
- data/.rubocop.yml +59 -0
- data/.ruby-version +1 -0
- data/.simplecov +5 -0
- data/.stylelintrc.yml +218 -0
- data/CHANGELOG.md +273 -0
- data/CODE_OF_CONDUCT.md +78 -0
- data/Gemfile +75 -0
- data/Gemfile.lock +376 -0
- data/LICENSE +21 -0
- data/LICENSES.md +6 -0
- data/README.md +41 -0
- data/ROADMAP.md +61 -0
- data/Rakefile +32 -0
- data/app/assets/config/elabs_manifest.js +3 -0
- data/app/assets/images/elabs/preview_placeholder.png +0 -0
- data/app/assets/images/elabs/preview_placeholder_nsfw.png +0 -0
- data/app/assets/javascripts/elabs/application.js +27 -0
- data/app/assets/javascripts/elabs/helpers-codemirror.js +29 -0
- data/app/assets/javascripts/elabs/helpers-markdown.js +42 -0
- data/app/assets/javascripts/elabs/helpers.js +17 -0
- data/app/assets/javascripts/elabs/modals.js +19 -0
- data/app/assets/javascripts/elabs/tabs.js +32 -0
- data/app/assets/stylesheets/elabs/_colors.scss +345 -0
- data/app/assets/stylesheets/elabs/_icons.scss +9 -0
- data/app/assets/stylesheets/elabs/_variables.scss +13 -0
- data/app/assets/stylesheets/elabs/app/_acts.scss +58 -0
- data/app/assets/stylesheets/elabs/app/_alerts.scss +3 -0
- data/app/assets/stylesheets/elabs/app/_buttons.scss +21 -0
- data/app/assets/stylesheets/elabs/app/_comments.scss +1 -0
- data/app/assets/stylesheets/elabs/app/_content.scss +10 -0
- data/app/assets/stylesheets/elabs/app/_content_uploads.scss +39 -0
- data/app/assets/stylesheets/elabs/app/_empty.scss +19 -0
- data/app/assets/stylesheets/elabs/app/_errors.scss +9 -0
- data/app/assets/stylesheets/elabs/app/_filter_links.scss +27 -0
- data/app/assets/stylesheets/elabs/app/_forms.scss +69 -0
- data/app/assets/stylesheets/elabs/app/_helpers.scss +3 -0
- data/app/assets/stylesheets/elabs/app/_languages.scss +6 -0
- data/app/assets/stylesheets/elabs/app/_layout.scss +194 -0
- data/app/assets/stylesheets/elabs/app/_licenses.scss +6 -0
- data/app/assets/stylesheets/elabs/app/_link-to-top.scss +8 -0
- data/app/assets/stylesheets/elabs/app/_medias.scss +12 -0
- data/app/assets/stylesheets/elabs/app/_modals.scss +53 -0
- data/app/assets/stylesheets/elabs/app/_nsfw.scss +5 -0
- data/app/assets/stylesheets/elabs/app/_pagination.scss +16 -0
- data/app/assets/stylesheets/elabs/app/_tabs.scss +54 -0
- data/app/assets/stylesheets/elabs/app/_tags.scss +6 -0
- data/app/assets/stylesheets/elabs/app/_toolbars.scss +3 -0
- data/app/assets/stylesheets/elabs/app/_users.scss +6 -0
- data/app/assets/stylesheets/elabs/app/admin-members/_forms.scss +6 -0
- data/app/assets/stylesheets/elabs/app/admin-members/_indexes.scss +70 -0
- data/app/assets/stylesheets/elabs/app/admin-members/_layout.scss +17 -0
- data/app/assets/stylesheets/elabs/app/areas/_devise.scss +31 -0
- data/app/assets/stylesheets/elabs/app/components/_cards.scss +16 -0
- data/app/assets/stylesheets/elabs/app/components/_container.scss +4 -0
- data/app/assets/stylesheets/elabs/app/mixins/_classifier-card.scss +16 -0
- data/app/assets/stylesheets/elabs/app/mixins/_content-card.scss +58 -0
- data/app/assets/stylesheets/elabs/app/mixins/_content-full.scss +39 -0
- data/app/assets/stylesheets/elabs/app/mixins/_icon.scss +9 -0
- data/app/assets/stylesheets/elabs/application.css +14 -0
- data/app/assets/stylesheets/elabs/lib/_codemirror.scss +26 -0
- data/app/assets/stylesheets/elabs/lib/fontawesome/_fontawesome.scss +38 -0
- data/app/assets/stylesheets/elabs/lib/fontawesome/_fonts.scss +42 -0
- data/app/assets/stylesheets/elabs/lib/fontawesome/_icons.scss +1118 -0
- data/app/assets/stylesheets/elabs/lib/knacss/_knacss-variables.scss +230 -0
- data/app/assets/stylesheets/elabs/lib/knacss/_knacss.scss +59 -0
- data/app/assets/stylesheets/elabs/style.scss +72 -0
- data/app/controllers/elabs/acts_controller.rb +12 -0
- data/app/controllers/elabs/admin/admin_application_controller.rb +19 -0
- data/app/controllers/elabs/admin/admin_content_application_controller.rb +66 -0
- data/app/controllers/elabs/admin/albums_controller.rb +10 -0
- data/app/controllers/elabs/admin/articles_controller.rb +10 -0
- data/app/controllers/elabs/admin/languages_controller.rb +77 -0
- data/app/controllers/elabs/admin/licenses_controller.rb +77 -0
- data/app/controllers/elabs/admin/notes_controller.rb +10 -0
- data/app/controllers/elabs/admin/projects_controller.rb +10 -0
- data/app/controllers/elabs/admin/reports_controller.rb +34 -0
- data/app/controllers/elabs/admin/tags_controller.rb +56 -0
- data/app/controllers/elabs/admin/uploads_controller.rb +10 -0
- data/app/controllers/elabs/admin/users_controller.rb +43 -0
- data/app/controllers/elabs/albums_controller.rb +26 -0
- data/app/controllers/elabs/articles_controller.rb +25 -0
- data/app/controllers/elabs/auth/callbacks_controller.rb +38 -0
- data/app/controllers/elabs/auth/confirmations_controller.rb +43 -0
- data/app/controllers/elabs/auth/passwords_controller.rb +47 -0
- data/app/controllers/elabs/auth/registrations_controller.rb +70 -0
- data/app/controllers/elabs/auth/sessions_controller.rb +36 -0
- data/app/controllers/elabs/auth/unlocks_controller.rb +38 -0
- data/app/controllers/elabs/concerns/elabs_controller.rb +18 -0
- data/app/controllers/elabs/concerns/localizable.rb +11 -0
- data/app/controllers/elabs/concerns/reportable.rb +17 -0
- data/app/controllers/elabs/content_application_controller.rb +45 -0
- data/app/controllers/elabs/elabs_application_controller.rb +95 -0
- data/app/controllers/elabs/languages_controller.rb +36 -0
- data/app/controllers/elabs/licenses_controller.rb +31 -0
- data/app/controllers/elabs/member/albums_controller.rb +11 -0
- data/app/controllers/elabs/member/articles_controller.rb +11 -0
- data/app/controllers/elabs/member/member_application_controller.rb +12 -0
- data/app/controllers/elabs/member/member_content_application_controller.rb +128 -0
- data/app/controllers/elabs/member/notes_controller.rb +11 -0
- data/app/controllers/elabs/member/preferences_controller.rb +36 -0
- data/app/controllers/elabs/member/projects_controller.rb +11 -0
- data/app/controllers/elabs/member/uploads_controller.rb +11 -0
- data/app/controllers/elabs/member/users_controller.rb +28 -0
- data/app/controllers/elabs/notes_controller.rb +25 -0
- data/app/controllers/elabs/projects_controller.rb +30 -0
- data/app/controllers/elabs/reports_controller.rb +36 -0
- data/app/controllers/elabs/tags_controller.rb +36 -0
- data/app/controllers/elabs/uploads_controller.rb +24 -0
- data/app/controllers/elabs/users_controller.rb +36 -0
- data/app/helpers/elabs/acts_helper.rb +22 -0
- data/app/helpers/elabs/admin_content_helper.rb +54 -0
- data/app/helpers/elabs/application_helper.rb +54 -0
- data/app/helpers/elabs/content_filters_helper.rb +97 -0
- data/app/helpers/elabs/content_renderer_helper.rb +13 -0
- data/app/helpers/elabs/member_content_helper.rb +47 -0
- data/app/helpers/elabs/thumbnails_helper.rb +28 -0
- data/app/helpers/elabs/time_helper.rb +19 -0
- data/app/helpers/elabs/uploads_helper.rb +19 -0
- data/app/jobs/elabs/application_job.rb +4 -0
- data/app/mailers/elabs/application_mailer.rb +6 -0
- data/app/models/elabs/act.rb +7 -0
- data/app/models/elabs/album.rb +24 -0
- data/app/models/elabs/albums_tag.rb +21 -0
- data/app/models/elabs/albums_upload.rb +21 -0
- data/app/models/elabs/application_content_record.rb +10 -0
- data/app/models/elabs/application_record.rb +5 -0
- data/app/models/elabs/article.rb +23 -0
- data/app/models/elabs/articles_tag.rb +21 -0
- data/app/models/elabs/comment.rb +12 -0
- data/app/models/elabs/concerns/actable_entity.rb +52 -0
- data/app/models/elabs/concerns/content_entity.rb +70 -0
- data/app/models/elabs/concerns/countable_entity.rb +81 -0
- data/app/models/elabs/concerns/taggable.rb +33 -0
- data/app/models/elabs/language.rb +17 -0
- data/app/models/elabs/license.rb +15 -0
- data/app/models/elabs/note.rb +21 -0
- data/app/models/elabs/notes_tag.rb +21 -0
- data/app/models/elabs/preference.rb +9 -0
- data/app/models/elabs/project.rb +25 -0
- data/app/models/elabs/projects_album.rb +21 -0
- data/app/models/elabs/projects_article.rb +21 -0
- data/app/models/elabs/projects_note.rb +21 -0
- data/app/models/elabs/projects_tag.rb +21 -0
- data/app/models/elabs/projects_upload.rb +21 -0
- data/app/models/elabs/report.rb +11 -0
- data/app/models/elabs/tag.rb +18 -0
- data/app/models/elabs/upload.rb +28 -0
- data/app/models/elabs/uploads_tag.rb +21 -0
- data/app/models/elabs/user.rb +30 -0
- data/app/validators/elabs/associated_author_validator.rb +11 -0
- data/app/views/elabs/acts/_act.json.jbuilder +2 -0
- data/app/views/elabs/acts/_filters.html.haml +3 -0
- data/app/views/elabs/acts/index.html.haml +27 -0
- data/app/views/elabs/acts/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/albums/_album.json.jbuilder +2 -0
- data/app/views/elabs/admin/albums/index.html.haml +43 -0
- data/app/views/elabs/admin/albums/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/articles/_article.json.jbuilder +2 -0
- data/app/views/elabs/admin/articles/index.html.haml +41 -0
- data/app/views/elabs/admin/articles/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/languages/_form.html.haml +18 -0
- data/app/views/elabs/admin/languages/_language.json.jbuilder +2 -0
- data/app/views/elabs/admin/languages/edit.html.haml +6 -0
- data/app/views/elabs/admin/languages/index.html.haml +34 -0
- data/app/views/elabs/admin/languages/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/languages/new.html.haml +3 -0
- data/app/views/elabs/admin/licenses/_form.html.haml +25 -0
- data/app/views/elabs/admin/licenses/_license.json.jbuilder +2 -0
- data/app/views/elabs/admin/licenses/edit.html.haml +6 -0
- data/app/views/elabs/admin/licenses/index.html.haml +42 -0
- data/app/views/elabs/admin/licenses/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/licenses/new.html.haml +3 -0
- data/app/views/elabs/admin/notes/_note.json.jbuilder +2 -0
- data/app/views/elabs/admin/notes/index.html.haml +40 -0
- data/app/views/elabs/admin/notes/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/projects/_project.json.jbuilder +2 -0
- data/app/views/elabs/admin/projects/index.html.haml +45 -0
- data/app/views/elabs/admin/projects/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/reports/index.html.haml +27 -0
- data/app/views/elabs/admin/reports/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/tags/_form.html.haml +17 -0
- data/app/views/elabs/admin/tags/_tag.json.jbuilder +2 -0
- data/app/views/elabs/admin/tags/edit.html.haml +6 -0
- data/app/views/elabs/admin/tags/index.html.haml +27 -0
- data/app/views/elabs/admin/tags/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/uploads/_upload.json.jbuilder +2 -0
- data/app/views/elabs/admin/uploads/index.html.haml +45 -0
- data/app/views/elabs/admin/uploads/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/users/_admin_user.json.jbuilder +2 -0
- data/app/views/elabs/admin/users/index.html.haml +33 -0
- data/app/views/elabs/admin/users/index.json.jbuilder +1 -0
- data/app/views/elabs/admin/users/show.html.haml +26 -0
- data/app/views/elabs/admin/users/show.json.jbuilder +1 -0
- data/app/views/elabs/albums/_album.html.haml +38 -0
- data/app/views/elabs/albums/_album.json.jbuilder +2 -0
- data/app/views/elabs/albums/_filters.html.haml +8 -0
- data/app/views/elabs/albums/index.html.haml +9 -0
- data/app/views/elabs/albums/index.json.jbuilder +1 -0
- data/app/views/elabs/albums/show.html.haml +60 -0
- data/app/views/elabs/albums/show.json.jbuilder +1 -0
- data/app/views/elabs/articles/_article.html.haml +30 -0
- data/app/views/elabs/articles/_article.json.jbuilder +2 -0
- data/app/views/elabs/articles/_filters.html.haml +8 -0
- data/app/views/elabs/articles/index.html.haml +9 -0
- data/app/views/elabs/articles/index.json.jbuilder +1 -0
- data/app/views/elabs/articles/show.html.haml +45 -0
- data/app/views/elabs/articles/show.json.jbuilder +1 -0
- data/app/views/elabs/auth/confirmations/new.html.haml +26 -0
- data/app/views/elabs/auth/passwords/edit.html.haml +31 -0
- data/app/views/elabs/auth/passwords/new.html.haml +23 -0
- data/app/views/elabs/auth/registrations/edit.html.haml +48 -0
- data/app/views/elabs/auth/registrations/new.html.haml +34 -0
- data/app/views/elabs/auth/sessions/_new.html.haml +15 -0
- data/app/views/elabs/auth/sessions/new.html.haml +8 -0
- data/app/views/elabs/auth/shared/_links.html.haml +16 -0
- data/app/views/elabs/auth/unlocks/new.html.haml +23 -0
- data/app/views/elabs/comments/_comment.json.jbuilder +2 -0
- data/app/views/elabs/comments/_comments.html.haml +21 -0
- data/app/views/elabs/comments/_form.html.haml +31 -0
- data/app/views/elabs/languages/_associations.html.haml +51 -0
- data/app/views/elabs/languages/_filters.html.haml +6 -0
- data/app/views/elabs/languages/_language.json.jbuilder +2 -0
- data/app/views/elabs/languages/index.html.haml +33 -0
- data/app/views/elabs/languages/index.json.jbuilder +1 -0
- data/app/views/elabs/languages/show.html.haml +38 -0
- data/app/views/elabs/languages/show.json.jbuilder +1 -0
- data/app/views/elabs/layouts/_empty.html.haml +3 -0
- data/app/views/elabs/layouts/_footer.html.haml +6 -0
- data/app/views/elabs/layouts/_hidden_entry.html.haml +6 -0
- data/app/views/elabs/layouts/_hidden_entry_full.html.haml +6 -0
- data/app/views/elabs/layouts/_language_menu.html.haml +2 -0
- data/app/views/elabs/layouts/_menu.html.haml +72 -0
- data/app/views/elabs/layouts/admin_application.html.haml +21 -0
- data/app/views/elabs/layouts/application.html.haml +37 -0
- data/app/views/elabs/layouts/lists/_albums.html.haml +10 -0
- data/app/views/elabs/layouts/lists/_projects.html.haml +10 -0
- data/app/views/elabs/layouts/lists/_tags.html.haml +9 -0
- data/app/views/elabs/layouts/mailer.html.haml +8 -0
- data/app/views/elabs/layouts/mailer.text.haml +1 -0
- data/app/views/elabs/layouts/member_application.html.haml +21 -0
- data/app/views/elabs/licenses/_associations.html.haml +51 -0
- data/app/views/elabs/licenses/_filters.html.haml +3 -0
- data/app/views/elabs/licenses/_license.json.jbuilder +2 -0
- data/app/views/elabs/licenses/index.html.haml +27 -0
- data/app/views/elabs/licenses/index.json.jbuilder +1 -0
- data/app/views/elabs/licenses/show.html.haml +44 -0
- data/app/views/elabs/licenses/show.json.jbuilder +1 -0
- data/app/views/elabs/member/albums/_album.json.jbuilder +2 -0
- data/app/views/elabs/member/albums/_form.html.haml +64 -0
- data/app/views/elabs/member/albums/edit.html.haml +6 -0
- data/app/views/elabs/member/albums/index.html.haml +49 -0
- data/app/views/elabs/member/albums/index.json.jbuilder +1 -0
- data/app/views/elabs/member/albums/new.html.haml +3 -0
- data/app/views/elabs/member/articles/_article.json.jbuilder +2 -0
- data/app/views/elabs/member/articles/_form.html.haml +70 -0
- data/app/views/elabs/member/articles/edit.html.haml +6 -0
- data/app/views/elabs/member/articles/index.html.haml +47 -0
- data/app/views/elabs/member/articles/index.json.jbuilder +1 -0
- data/app/views/elabs/member/articles/new.html.haml +3 -0
- data/app/views/elabs/member/layouts/_empty.html.haml +4 -0
- data/app/views/elabs/member/layouts/_markdown-preview.html.haml +8 -0
- data/app/views/elabs/member/notes/_form.html.haml +54 -0
- data/app/views/elabs/member/notes/_note.json.jbuilder +2 -0
- data/app/views/elabs/member/notes/edit.html.haml +6 -0
- data/app/views/elabs/member/notes/index.html.haml +47 -0
- data/app/views/elabs/member/notes/index.json.jbuilder +1 -0
- data/app/views/elabs/member/notes/new.html.haml +3 -0
- data/app/views/elabs/member/preferences/_form.html.haml +20 -0
- data/app/views/elabs/member/preferences/edit.html.haml +3 -0
- data/app/views/elabs/member/projects/_form.html.haml +71 -0
- data/app/views/elabs/member/projects/_project.json.jbuilder +2 -0
- data/app/views/elabs/member/projects/edit.html.haml +6 -0
- data/app/views/elabs/member/projects/index.html.haml +53 -0
- data/app/views/elabs/member/projects/index.json.jbuilder +1 -0
- data/app/views/elabs/member/projects/new.html.haml +3 -0
- data/app/views/elabs/member/uploads/_form.html.haml +67 -0
- data/app/views/elabs/member/uploads/_upload.json.jbuilder +2 -0
- data/app/views/elabs/member/uploads/edit.html.haml +6 -0
- data/app/views/elabs/member/uploads/index.html.haml +61 -0
- data/app/views/elabs/member/uploads/index.json.jbuilder +1 -0
- data/app/views/elabs/member/uploads/new.html.haml +3 -0
- data/app/views/elabs/member/users/_form.html.haml +38 -0
- data/app/views/elabs/notes/_filters.html.haml +7 -0
- data/app/views/elabs/notes/_note.html.haml +31 -0
- data/app/views/elabs/notes/_note.json.jbuilder +2 -0
- data/app/views/elabs/notes/index.html.haml +9 -0
- data/app/views/elabs/notes/index.json.jbuilder +1 -0
- data/app/views/elabs/notes/show.html.haml +44 -0
- data/app/views/elabs/notes/show.json.jbuilder +1 -0
- data/app/views/elabs/projects/_associations.html.haml +46 -0
- data/app/views/elabs/projects/_filters.html.haml +8 -0
- data/app/views/elabs/projects/_project.html.haml +29 -0
- data/app/views/elabs/projects/index.html.haml +9 -0
- data/app/views/elabs/projects/index.json.jbuilder +1 -0
- data/app/views/elabs/projects/show.html.haml +71 -0
- data/app/views/elabs/projects/show.json.jbuilder +1 -0
- data/app/views/elabs/reports/_form.html.haml +29 -0
- data/app/views/elabs/tags/_associations.html.haml +51 -0
- data/app/views/elabs/tags/_filters.html.haml +3 -0
- data/app/views/elabs/tags/_tag.json.jbuilder +2 -0
- data/app/views/elabs/tags/index.html.haml +26 -0
- data/app/views/elabs/tags/index.json.jbuilder +1 -0
- data/app/views/elabs/tags/show.html.haml +34 -0
- data/app/views/elabs/tags/show.json.jbuilder +1 -0
- data/app/views/elabs/uploads/_filters.html.haml +7 -0
- data/app/views/elabs/uploads/_player.html.haml +10 -0
- data/app/views/elabs/uploads/_preview.html.haml +17 -0
- data/app/views/elabs/uploads/_upload.html.haml +41 -0
- data/app/views/elabs/uploads/_upload.json.jbuilder +2 -0
- data/app/views/elabs/uploads/index.html.haml +9 -0
- data/app/views/elabs/uploads/index.json.jbuilder +1 -0
- data/app/views/elabs/uploads/show.html.haml +58 -0
- data/app/views/elabs/uploads/show.json.jbuilder +1 -0
- data/app/views/elabs/users/_associations.html.haml +51 -0
- data/app/views/elabs/users/_filters.html.haml +4 -0
- data/app/views/elabs/users/_user.html.haml +31 -0
- data/app/views/elabs/users/_user.json.jbuilder +2 -0
- data/app/views/elabs/users/index.html.haml +7 -0
- data/app/views/elabs/users/index.json.jbuilder +1 -0
- data/app/views/elabs/users/show.html.haml +48 -0
- data/app/views/elabs/users/show.json.jbuilder +1 -0
- data/bin/rails +14 -0
- data/config.ru +5 -0
- data/config/brakeman.ignore +124 -0
- data/config/brakeman.yml +3 -0
- data/config/cucumber.yml +9 -0
- data/config/routes.rb +116 -0
- data/db/migrate/20180813000000_devise_update_users.rb +15 -0
- data/db/migrate/20180813000001_create_languages.rb +16 -0
- data/db/migrate/20180813000002_create_tags.rb +14 -0
- data/db/migrate/20180813000004_create_licenses.rb +17 -0
- data/db/migrate/20180813000005_create_reports.rb +15 -0
- data/db/migrate/20180813000006_create_comments.rb +15 -0
- data/db/migrate/20180813000007_create_acts.rb +10 -0
- data/db/migrate/20180813000008_create_preferences.rb +13 -0
- data/db/migrate/20180813000009_create_active_storage_tables.active_storage.rb +26 -0
- data/db/migrate/20180813000010_create_albums.rb +23 -0
- data/db/migrate/20180813000011_create_articles.rb +23 -0
- data/db/migrate/20180813000012_create_notes.rb +21 -0
- data/db/migrate/20180813000013_create_uploads.rb +26 -0
- data/db/migrate/20180813000014_create_projects.rb +44 -0
- data/db/seeds.rb +10 -0
- data/db/seeds_development.rb +21 -0
- data/db/seeds_production.rb +0 -0
- data/docs/contributing.md +52 -0
- data/docs/cucumber_terms.md +9 -0
- data/docs/migrating.md +4 -0
- data/docs/overriding.md +20 -0
- data/docs/setup.md +136 -0
- data/docs/tips.md +13 -0
- data/elabs.gemspec +25 -0
- data/lib/assets/javascripts/README-highlight.js.md +39 -0
- data/lib/assets/javascripts/codemirror-5.39.2/addon/mode/overlay.js +90 -0
- data/lib/assets/javascripts/codemirror-5.39.2/lib/codemirror.js +9684 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/clike/clike.js +834 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/css/css.js +832 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/gfm/gfm.js +129 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/htmlmixed/htmlmixed.js +152 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/javascript/javascript.js +896 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/markdown/markdown.js +882 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/meta.js +217 -0
- data/lib/assets/javascripts/codemirror-5.39.2/mode/xml/xml.js +402 -0
- data/lib/assets/javascripts/highlight.js-9.12.0/highlight.pack.js +2 -0
- data/lib/assets/javascripts/markdown-it-8.4.2.min.js +1 -0
- data/lib/assets/stylesheets/codemirror-5.39.2/lib/codemirror.css +346 -0
- data/lib/assets/stylesheets/codemirror-5.39.2/theme/base16-dark.css +38 -0
- data/lib/assets/stylesheets/codemirror-5.39.2/theme/base16-light.css +38 -0
- data/lib/assets/stylesheets/highlight.js-9.12.0/styles/atelier-sulphurpool-light.css +69 -0
- data/lib/elabs.rb +41 -0
- data/lib/elabs/engine.rb +5 -0
- data/lib/elabs/version.rb +3 -0
- data/lib/generators/elabs/assets_generator.rb +36 -0
- data/lib/generators/elabs/devise_views_generator.rb +24 -0
- data/lib/generators/elabs/install_generator.rb +26 -0
- data/lib/generators/elabs/required_assets_generator.rb +26 -0
- data/lib/generators/elabs/views_generator.rb +25 -0
- data/lib/generators/templates/elabs.rb +25 -0
- data/lib/generators/templates/fast_gettext.rb +3 -0
- data/lib/tasks/.keep +0 -0
- data/lib/tasks/cucumber.rake +75 -0
- data/lib/tasks/elabs_tasks.rake +4 -0
- data/lib/tasks/factory_bot.rake +14 -0
- data/lib/tasks/wipe.rake +31 -0
- data/locale/app.pot +1124 -0
- data/locale/devise_strings.rb +88 -0
- data/locale/en/app.edit.po +1123 -0
- data/locale/en/app.po +1123 -0
- data/locale/en/app.po.time_stamp +0 -0
- data/locale/fr/app.edit.po +1126 -0
- data/locale/fr/app.po +1125 -0
- data/locale/fr/app.po.time_stamp +0 -0
- data/locale/model_attributes.rb +85 -0
- data/package.json +22 -0
- data/script/cucumber +10 -0
- data/tmp/pids/.keep +0 -0
- data/yarn.lock +2759 -0
- metadata +463 -0
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2018 Experiments Labs
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/LICENSES.md
ADDED
data/README.md
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
# README
|
2
|
+
Rails engine adding CMS features to publish content related to projects.
|
3
|
+
An online version can be tested on http://next.experimentslabs.com
|
4
|
+
## Features
|
5
|
+
|
6
|
+
Manage various content types:
|
7
|
+
- Articles
|
8
|
+
- Notes
|
9
|
+
- Files
|
10
|
+
- Albums (files collections)
|
11
|
+
- Projects (may have everything above attached to them)
|
12
|
+
|
13
|
+
Classify content:
|
14
|
+
- Tags
|
15
|
+
- Language
|
16
|
+
- Licenses
|
17
|
+
|
18
|
+
Generic features:
|
19
|
+
- Comments (only visible to author)
|
20
|
+
- Safe/not safe for work content flags
|
21
|
+
- Content reporting
|
22
|
+
- Site structure translations
|
23
|
+
|
24
|
+
Features wishlist: check the [roadmap](ROADMAP.md#wonderland) to see
|
25
|
+
what's coming.
|
26
|
+
|
27
|
+
## Known issues:
|
28
|
+
JSON views are not created yet. They exists but were created using
|
29
|
+
scaffolding and never touched again.
|
30
|
+
|
31
|
+
## Documentation:
|
32
|
+
- [Setup guide](docs/setup.md)
|
33
|
+
- [Sample app](https://gitlab.com/experimentslabs/sample_app)
|
34
|
+
- [How to override the app](docs/overriding.md)
|
35
|
+
- [How to contribute](docs/contributing.md)
|
36
|
+
- [Migration guide](docs/migrating.md)
|
37
|
+
- [Cucumber: terms used in features](docs/cucumber_terms.md)
|
38
|
+
- [Roadmap](ROADMAP.md): incoming changes
|
39
|
+
- [Changelog](CHANGELOG.md): last validated changes
|
40
|
+
- [Issue tracker](https://gitlab.com/experimentslabs/engine_elabs/issues)
|
41
|
+
- [Discussion place: Gitter](https://gitter.im/Experiments-Labs/Lobby)
|
data/ROADMAP.md
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
# Roadmap
|
2
|
+
All the future changes will be documented here.
|
3
|
+
|
4
|
+
## [Issues]
|
5
|
+
See the [issues](https://gitlab.com/experimentslabs/website/website/issues) for a list.
|
6
|
+
|
7
|
+
## [Next] - Already done
|
8
|
+
### Added
|
9
|
+
- Generators to make views/assets override easy
|
10
|
+
- Generator to copy needed files and initializer
|
11
|
+
- Two controller concerns to easily extend your custom controllers:
|
12
|
+
- "ElabsController", used to load Elabs layout and some helpers
|
13
|
+
- "Reportable", to prepare an empty report when using elabs layout
|
14
|
+
|
15
|
+
### Changed
|
16
|
+
- The app is now an engine.
|
17
|
+
|
18
|
+
### Improved
|
19
|
+
- New documentation
|
20
|
+
- Various improvements:
|
21
|
+
- Acts strings for notices are now in the "acts" helper
|
22
|
+
|
23
|
+
### Removed
|
24
|
+
|
25
|
+
### Fixed
|
26
|
+
- Translations of acts notices are now fixed
|
27
|
+
|
28
|
+
## Planned
|
29
|
+
|
30
|
+
Note that the elements in this list may change during development; it' a
|
31
|
+
general idea of what will be done next.
|
32
|
+
- [2.0.0 (currently working on)] - Make an engine
|
33
|
+
- [1.1.0] - JSON views for everything
|
34
|
+
- [2.2.0] - Notifications
|
35
|
+
- [2.3.0] - Urls table to attach urls to content, share favorites
|
36
|
+
- [2.4.0] - Teams to attach user and distant people to projects
|
37
|
+
- [2.5.0] - Projects: commits aggregation
|
38
|
+
- [2.6.0] - Users: service status aggregation without storage for now
|
39
|
+
- [2.7.0] - Raw content for everything
|
40
|
+
|
41
|
+
## Wonderland
|
42
|
+
- ~~Rails engine~~ (since 2.0.0)
|
43
|
+
- Avatars for authors
|
44
|
+
- Support for custom fields ?
|
45
|
+
- Move HTML helpers to decorators (https://github.com/drapergem/draper)
|
46
|
+
AND/OR use a better templating system, as [Cells](http://trailblazer.to/gems/cells/)
|
47
|
+
- Export raw content (markdown, files)
|
48
|
+
- Content translations (community made)
|
49
|
+
- Teams (people with common projects)
|
50
|
+
- Projects users
|
51
|
+
- Sharing across instances
|
52
|
+
- Urls management (lists of URLs, favorites, sources,...)
|
53
|
+
- Content: code snippets
|
54
|
+
- Content references (reference others work in your own work)
|
55
|
+
- Better license support (i.e.: html tags for creative commons license)
|
56
|
+
- Widgets (to add custom content in created content)
|
57
|
+
- Data aggregation from various VCS providers
|
58
|
+
- Data aggregation for users profiles from various providers
|
59
|
+
- An API ?
|
60
|
+
- Sharing things across Elabs instances?
|
61
|
+
- ...
|
data/Rakefile
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'rdoc/task'
|
8
|
+
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
11
|
+
rdoc.title = 'Elabs'
|
12
|
+
rdoc.options << '--line-numbers'
|
13
|
+
rdoc.rdoc_files.include('README.md')
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
15
|
+
end
|
16
|
+
|
17
|
+
APP_RAKEFILE = File.expand_path('spec/dummy/Rakefile', __dir__)
|
18
|
+
load 'rails/tasks/engine.rake'
|
19
|
+
|
20
|
+
load 'rails/tasks/statistics.rake'
|
21
|
+
|
22
|
+
require 'bundler/gem_tasks'
|
23
|
+
|
24
|
+
require 'rake/testtask'
|
25
|
+
|
26
|
+
Rake::TestTask.new(:test) do |t|
|
27
|
+
t.libs << 'test'
|
28
|
+
t.pattern = 'test/**/*_test.rb'
|
29
|
+
t.verbose = false
|
30
|
+
end
|
31
|
+
|
32
|
+
task default: :test
|
Binary file
|
Binary file
|
@@ -0,0 +1,27 @@
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
2
|
+
// listed below.
|
3
|
+
//
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
5
|
+
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
6
|
+
//
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
8
|
+
// compiled file. JavaScript code in this file should be added after the last require_* statement.
|
9
|
+
//
|
10
|
+
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
11
|
+
// about supported directives.
|
12
|
+
//
|
13
|
+
//= require rails-ujs
|
14
|
+
//= require activestorage
|
15
|
+
//= require codemirror-5.39.2/lib/codemirror.js
|
16
|
+
//= require codemirror-5.39.2/addon/mode/overlay.js
|
17
|
+
//= require codemirror-5.39.2/mode/xml/xml.js
|
18
|
+
//= require codemirror-5.39.2/mode/markdown/markdown.js
|
19
|
+
//= require codemirror-5.39.2/mode/javascript/javascript.js
|
20
|
+
//= require codemirror-5.39.2/mode/css/css.js
|
21
|
+
//= require codemirror-5.39.2/mode/htmlmixed/htmlmixed.js
|
22
|
+
//= require codemirror-5.39.2/mode/clike/clike.js
|
23
|
+
//= require codemirror-5.39.2/mode/meta.js
|
24
|
+
//= require codemirror-5.39.2/mode/gfm/gfm.js
|
25
|
+
//= require highlight.js-9.12.0/highlight.pack.js
|
26
|
+
//= require markdown-it-8.4.2.min.js
|
27
|
+
//= require_tree .
|
@@ -0,0 +1,29 @@
|
|
1
|
+
// eslint-disable-next-line no-unused-vars
|
2
|
+
function initializeCodeMirrorIn (element) {
|
3
|
+
return CodeMirror.fromTextArea(element, {
|
4
|
+
lineNumbers: true,
|
5
|
+
mode: {
|
6
|
+
name: 'gfm',
|
7
|
+
tokenTypeOverrides: {
|
8
|
+
emoji: 'emoji'
|
9
|
+
}
|
10
|
+
},
|
11
|
+
theme: 'base16-light'
|
12
|
+
})
|
13
|
+
}
|
14
|
+
|
15
|
+
// eslint-disable-next-line no-unused-vars
|
16
|
+
function limitCMToLength (cm, change) {
|
17
|
+
var maxLength = cm.getOption('maxLength')
|
18
|
+
if (maxLength && change.update) {
|
19
|
+
var str = change.text.join('\n')
|
20
|
+
var delta = str.length - (cm.indexFromPos(change.to) - cm.indexFromPos(change.from))
|
21
|
+
if (delta <= 0) { return true }
|
22
|
+
delta = cm.getValue().length + delta - maxLength
|
23
|
+
if (delta > 0) {
|
24
|
+
str = str.substr(0, str.length - delta)
|
25
|
+
change.update(change.from, change.to, str.split('\n'))
|
26
|
+
}
|
27
|
+
}
|
28
|
+
return true
|
29
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
// eslint-disable-next-line no-unused-vars
|
2
|
+
function createMDPreviewer (cmInstance) {
|
3
|
+
var md = window.markdownit()
|
4
|
+
|
5
|
+
return function (event) {
|
6
|
+
event.preventDefault()
|
7
|
+
|
8
|
+
document.getElementById('content-description-preview').innerHTML = md.render(cmInstance.getValue())
|
9
|
+
|
10
|
+
openModal('content-preview-modal')
|
11
|
+
}
|
12
|
+
}
|
13
|
+
|
14
|
+
/*
|
15
|
+
* @author Wladimir Palant
|
16
|
+
* @source https://stackoverflow.com/questions/1912501/unescape-html-entities-in-javascript/34064434#34064434
|
17
|
+
*/
|
18
|
+
function htmlDecode (input) {
|
19
|
+
if (typeof DOMParser !== 'function') { return input }
|
20
|
+
var doc = new DOMParser().parseFromString(input, 'text/html')
|
21
|
+
return doc.documentElement.textContent
|
22
|
+
}
|
23
|
+
|
24
|
+
// eslint-disable-next-line no-unused-vars
|
25
|
+
function renderMdFromId (areaId) {
|
26
|
+
var md = window.markdownit({
|
27
|
+
highlight: function (str, lang) {
|
28
|
+
// Unescape some chars
|
29
|
+
str = htmlDecode(str)
|
30
|
+
if (lang && hljs.getLanguage(lang)) {
|
31
|
+
try {
|
32
|
+
return hljs.highlight(lang, str).value
|
33
|
+
} catch (__) {}
|
34
|
+
}
|
35
|
+
|
36
|
+
return '' // use external default escaping
|
37
|
+
}
|
38
|
+
})
|
39
|
+
var value = document.getElementById('raw-' + areaId).innerHTML
|
40
|
+
|
41
|
+
document.getElementById('markdown-' + areaId).innerHTML = md.render(value)
|
42
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
// eslint-disable-next-line no-unused-vars
|
2
|
+
function removeClass (element, className) {
|
3
|
+
if (element.classList) {
|
4
|
+
element.classList.remove(className)
|
5
|
+
} else {
|
6
|
+
element.className = element.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' ')
|
7
|
+
}
|
8
|
+
}
|
9
|
+
|
10
|
+
// eslint-disable-next-line no-unused-vars
|
11
|
+
function addClass (element, className) {
|
12
|
+
if (element.classList) {
|
13
|
+
element.classList.add(className)
|
14
|
+
} else {
|
15
|
+
element.className += ' ' + className
|
16
|
+
}
|
17
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
// eslint-disable-next-line no-unused-vars
|
2
|
+
function openModal (e, id) {
|
3
|
+
if (!id) {
|
4
|
+
id = e
|
5
|
+
} else {
|
6
|
+
e.preventDefault()
|
7
|
+
}
|
8
|
+
addClass(document.getElementById(id), 'modal--visible')
|
9
|
+
}
|
10
|
+
|
11
|
+
// eslint-disable-next-line no-unused-vars
|
12
|
+
function closeModal (e, id) {
|
13
|
+
if (!id) {
|
14
|
+
id = e
|
15
|
+
} else {
|
16
|
+
e.preventDefault()
|
17
|
+
}
|
18
|
+
removeClass(document.getElementById(id), 'modal--visible')
|
19
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
// eslint-disable-next-line no-unused-vars
|
2
|
+
function selectTab (event, tab) {
|
3
|
+
if (tab) {
|
4
|
+
event.preventDefault()
|
5
|
+
} else {
|
6
|
+
tab = event
|
7
|
+
}
|
8
|
+
|
9
|
+
var i
|
10
|
+
var tabs = document.getElementsByClassName('tabs__tabs-list__tab active')
|
11
|
+
var tabsContent = document.getElementsByClassName('tabs__tab-content active')
|
12
|
+
|
13
|
+
for (i = 0; i < tabs.length; i++) {
|
14
|
+
removeClass(tabs[i], 'active')
|
15
|
+
}
|
16
|
+
|
17
|
+
for (i = 0; i < tabsContent.length; i++) {
|
18
|
+
removeClass(tabsContent[i], 'active')
|
19
|
+
}
|
20
|
+
addClass(document.getElementById('tab-content-' + tab), 'active')
|
21
|
+
addClass(document.getElementById('tab-' + tab), 'active')
|
22
|
+
}
|
23
|
+
|
24
|
+
// eslint-disable-next-line no-unused-vars
|
25
|
+
function initializeTabs () {
|
26
|
+
var i
|
27
|
+
var tabs = document.getElementsByClassName('tabs__tab-content')
|
28
|
+
|
29
|
+
for (i = 0; i < tabs.length; i++) {
|
30
|
+
addClass(tabs[i], 'tab--initialized')
|
31
|
+
}
|
32
|
+
}
|
@@ -0,0 +1,345 @@
|
|
1
|
+
// Inspired by https://github.com/nilskaspersson/Google-Material-UI-Color-Palette/
|
2
|
+
|
3
|
+
// Reds
|
4
|
+
$color-red-50: #ffebee;
|
5
|
+
$color-red-100: #ffcdd2;
|
6
|
+
$color-red-200: #ef9a9a;
|
7
|
+
$color-red-300: #e57373;
|
8
|
+
$color-red-400: #ef5350;
|
9
|
+
$color-red-500: #f44336;
|
10
|
+
$color-red-600: #e53935;
|
11
|
+
$color-red-700: #d32f2f;
|
12
|
+
$color-red-800: #c62828;
|
13
|
+
$color-red-900: #b71c1c;
|
14
|
+
$color-red-a100: #ff8a80;
|
15
|
+
$color-red-a200: #ff5252;
|
16
|
+
$color-red-a400: #ff1744;
|
17
|
+
$color-red-a700: #d50000;
|
18
|
+
|
19
|
+
// Pinks
|
20
|
+
$color-pink-50: #fce4ec;
|
21
|
+
$color-pink-100: #f8bbd0;
|
22
|
+
$color-pink-200: #f48fb1;
|
23
|
+
$color-pink-300: #f06292;
|
24
|
+
$color-pink-400: #ec407a;
|
25
|
+
$color-pink-500: #e91e63;
|
26
|
+
$color-pink-600: #d81b60;
|
27
|
+
$color-pink-700: #c2185b;
|
28
|
+
$color-pink-800: #ad1457;
|
29
|
+
$color-pink-900: #880e4f;
|
30
|
+
$color-pink-a100: #ff80ab;
|
31
|
+
$color-pink-a200: #ff4081;
|
32
|
+
$color-pink-a400: #f50057;
|
33
|
+
$color-pink-a700: #c51162;
|
34
|
+
|
35
|
+
// Purples
|
36
|
+
$color-purple-50: #f3e5f5;
|
37
|
+
$color-purple-100: #e1bee7;
|
38
|
+
$color-purple-200: #ce93d8;
|
39
|
+
$color-purple-300: #ba68c8;
|
40
|
+
$color-purple-400: #ab47bc;
|
41
|
+
$color-purple-500: #9c27b0;
|
42
|
+
$color-purple-600: #8e24aa;
|
43
|
+
$color-purple-700: #7b1fa2;
|
44
|
+
$color-purple-800: #6a1b9a;
|
45
|
+
$color-purple-900: #4a148c;
|
46
|
+
$color-purple-a100: #ea80fc;
|
47
|
+
$color-purple-a200: #e040fb;
|
48
|
+
$color-purple-a400: #d500f9;
|
49
|
+
$color-purple-a700: #aa00ff;
|
50
|
+
|
51
|
+
// Deep-purples
|
52
|
+
$color-deep-purple-50: #ede7f6;
|
53
|
+
$color-deep-purple-100: #d1c4e9;
|
54
|
+
$color-deep-purple-200: #b39ddb;
|
55
|
+
$color-deep-purple-300: #9575cd;
|
56
|
+
$color-deep-purple-400: #7e57c2;
|
57
|
+
$color-deep-purple-500: #673ab7;
|
58
|
+
$color-deep-purple-600: #5e35b1;
|
59
|
+
$color-deep-purple-700: #512da8;
|
60
|
+
$color-deep-purple-800: #4527a0;
|
61
|
+
$color-deep-purple-900: #311b92;
|
62
|
+
$color-deep-purple-a100: #b388ff;
|
63
|
+
$color-deep-purple-a200: #7c4dff;
|
64
|
+
$color-deep-purple-a400: #651fff;
|
65
|
+
$color-deep-purple-a700: #6200ea;
|
66
|
+
|
67
|
+
// Indigos
|
68
|
+
$color-indigo-50: #e8eaf6;
|
69
|
+
$color-indigo-100: #c5cae9;
|
70
|
+
$color-indigo-200: #9fa8da;
|
71
|
+
$color-indigo-300: #7986cb;
|
72
|
+
$color-indigo-400: #5c6bc0;
|
73
|
+
$color-indigo-500: #3f51b5;
|
74
|
+
$color-indigo-600: #3949ab;
|
75
|
+
$color-indigo-700: #303f9f;
|
76
|
+
$color-indigo-800: #283593;
|
77
|
+
$color-indigo-900: #1a237e;
|
78
|
+
$color-indigo-a100: #8c9eff;
|
79
|
+
$color-indigo-a200: #536dfe;
|
80
|
+
$color-indigo-a400: #3d5afe;
|
81
|
+
$color-indigo-a700: #304ffe;
|
82
|
+
|
83
|
+
// Blues
|
84
|
+
$color-blue-50: #e3f2fd;
|
85
|
+
$color-blue-100: #bbdefb;
|
86
|
+
$color-blue-200: #90caf9;
|
87
|
+
$color-blue-300: #64b5f6;
|
88
|
+
$color-blue-400: #42a5f5;
|
89
|
+
$color-blue-500: #2196f3;
|
90
|
+
$color-blue-600: #1e88e5;
|
91
|
+
$color-blue-700: #1976d2;
|
92
|
+
$color-blue-800: #1565c0;
|
93
|
+
$color-blue-900: #0d47a1;
|
94
|
+
$color-blue-a100: #82b1ff;
|
95
|
+
$color-blue-a200: #448aff;
|
96
|
+
$color-blue-a400: #2979ff;
|
97
|
+
$color-blue-a700: #2962ff;
|
98
|
+
|
99
|
+
// Light blues
|
100
|
+
$color-light-blue-50: #e1f5fe;
|
101
|
+
$color-light-blue-100: #b3e5fc;
|
102
|
+
$color-light-blue-200: #81d4fa;
|
103
|
+
$color-light-blue-300: #4fc3f7;
|
104
|
+
$color-light-blue-400: #29b6f6;
|
105
|
+
$color-light-blue-500: #03a9f4;
|
106
|
+
$color-light-blue-600: #039be5;
|
107
|
+
$color-light-blue-700: #0288d1;
|
108
|
+
$color-light-blue-800: #0277bd;
|
109
|
+
$color-light-blue-900: #01579b;
|
110
|
+
$color-light-blue-a100: #80d8ff;
|
111
|
+
$color-light-blue-a200: #40c4ff;
|
112
|
+
$color-light-blue-a400: #00b0ff;
|
113
|
+
$color-light-blue-a700: #0091ea;
|
114
|
+
|
115
|
+
// Cyan
|
116
|
+
$color-cyan-50: #e0f7fa;
|
117
|
+
$color-cyan-100: #b2ebf2;
|
118
|
+
$color-cyan-200: #80deea;
|
119
|
+
$color-cyan-300: #4dd0e1;
|
120
|
+
$color-cyan-400: #26c6da;
|
121
|
+
$color-cyan-500: #00bcd4;
|
122
|
+
$color-cyan-600: #00acc1;
|
123
|
+
$color-cyan-700: #0097a7;
|
124
|
+
$color-cyan-800: #00838f;
|
125
|
+
$color-cyan-900: #006064;
|
126
|
+
$color-cyan-a100: #84ffff;
|
127
|
+
$color-cyan-a200: #18ffff;
|
128
|
+
$color-cyan-a400: #00e5ff;
|
129
|
+
$color-cyan-a700: #00b8d4;
|
130
|
+
|
131
|
+
// Teals
|
132
|
+
$color-teal-50: #e0f2f1;
|
133
|
+
$color-teal-100: #b2dfdb;
|
134
|
+
$color-teal-200: #80cbc4;
|
135
|
+
$color-teal-300: #4db6ac;
|
136
|
+
$color-teal-400: #26a69a;
|
137
|
+
$color-teal-500: #009688;
|
138
|
+
$color-teal-600: #00897b;
|
139
|
+
$color-teal-700: #00796b;
|
140
|
+
$color-teal-800: #00695c;
|
141
|
+
$color-teal-900: #004d40;
|
142
|
+
$color-teal-a100: #a7ffeb;
|
143
|
+
$color-teal-a200: #64ffda;
|
144
|
+
$color-teal-a400: #1de9b6;
|
145
|
+
$color-teal-a700: #00bfa5;
|
146
|
+
|
147
|
+
// Greens
|
148
|
+
$color-green-50: #e8f5e9;
|
149
|
+
$color-green-100: #c8e6c9;
|
150
|
+
$color-green-200: #a5d6a7;
|
151
|
+
$color-green-300: #81c784;
|
152
|
+
$color-green-400: #66bb6a;
|
153
|
+
$color-green-500: #4caf50;
|
154
|
+
$color-green-600: #43a047;
|
155
|
+
$color-green-700: #388e3c;
|
156
|
+
$color-green-800: #2e7d32;
|
157
|
+
$color-green-900: #1b5e20;
|
158
|
+
$color-green-a100: #b9f6ca;
|
159
|
+
$color-green-a200: #69f0ae;
|
160
|
+
$color-green-a400: #00e676;
|
161
|
+
$color-green-a700: #00c853;
|
162
|
+
|
163
|
+
// Light-greens
|
164
|
+
$color-light-green-50: #f1f8e9;
|
165
|
+
$color-light-green-100: #dcedc8;
|
166
|
+
$color-light-green-200: #c5e1a5;
|
167
|
+
$color-light-green-300: #aed581;
|
168
|
+
$color-light-green-400: #9ccc65;
|
169
|
+
$color-light-green-500: #8bc34a;
|
170
|
+
$color-light-green-600: #7cb342;
|
171
|
+
$color-light-green-700: #689f38;
|
172
|
+
$color-light-green-800: #558b2f;
|
173
|
+
$color-light-green-900: #33691e;
|
174
|
+
$color-light-green-a100: #ccff90;
|
175
|
+
$color-light-green-a200: #b2ff59;
|
176
|
+
$color-light-green-a400: #76ff03;
|
177
|
+
$color-light-green-a700: #64dd17;
|
178
|
+
|
179
|
+
// Limes
|
180
|
+
$color-lime-50: #f9fbe7;
|
181
|
+
$color-lime-100: #f0f4c3;
|
182
|
+
$color-lime-200: #e6ee9c;
|
183
|
+
$color-lime-300: #dce775;
|
184
|
+
$color-lime-400: #d4e157;
|
185
|
+
$color-lime-500: #cddc39;
|
186
|
+
$color-lime-600: #c0ca33;
|
187
|
+
$color-lime-700: #afb42b;
|
188
|
+
$color-lime-800: #9e9d24;
|
189
|
+
$color-lime-900: #827717;
|
190
|
+
$color-lime-a100: #f4ff81;
|
191
|
+
$color-lime-a200: #eeff41;
|
192
|
+
$color-lime-a400: #c6ff00;
|
193
|
+
$color-lime-a700: #aeea00;
|
194
|
+
|
195
|
+
// Yellows
|
196
|
+
$color-yellow-50: #fffde7;
|
197
|
+
$color-yellow-100: #fff9c4;
|
198
|
+
$color-yellow-200: #fff59d;
|
199
|
+
$color-yellow-300: #fff176;
|
200
|
+
$color-yellow-400: #ffee58;
|
201
|
+
$color-yellow-500: #ffeb3b;
|
202
|
+
$color-yellow-600: #fdd835;
|
203
|
+
$color-yellow-700: #fbc02d;
|
204
|
+
$color-yellow-800: #f9a825;
|
205
|
+
$color-yellow-900: #f57f17;
|
206
|
+
$color-yellow-a100: #ffff8d;
|
207
|
+
$color-yellow-a200: #ffff00;
|
208
|
+
$color-yellow-a400: #ffea00;
|
209
|
+
$color-yellow-a700: #ffd600;
|
210
|
+
|
211
|
+
// Ambers
|
212
|
+
$color-amber-50: #fff8e1;
|
213
|
+
$color-amber-100: #ffecb3;
|
214
|
+
$color-amber-200: #ffe082;
|
215
|
+
$color-amber-300: #ffd54f;
|
216
|
+
$color-amber-400: #ffca28;
|
217
|
+
$color-amber-500: #ffc107;
|
218
|
+
$color-amber-600: #ffb300;
|
219
|
+
$color-amber-700: #ffa000;
|
220
|
+
$color-amber-800: #ff8f00;
|
221
|
+
$color-amber-900: #ff6f00;
|
222
|
+
$color-amber-a100: #ffe57f;
|
223
|
+
$color-amber-a200: #ffd740;
|
224
|
+
$color-amber-a400: #ffc400;
|
225
|
+
$color-amber-a700: #ffab00;
|
226
|
+
|
227
|
+
// Oranges
|
228
|
+
$color-orange-50: #fff3e0;
|
229
|
+
$color-orange-100: #ffe0b2;
|
230
|
+
$color-orange-200: #ffcc80;
|
231
|
+
$color-orange-300: #ffb74d;
|
232
|
+
$color-orange-400: #ffa726;
|
233
|
+
$color-orange-500: #ff9800;
|
234
|
+
$color-orange-600: #fb8c00;
|
235
|
+
$color-orange-700: #f57c00;
|
236
|
+
$color-orange-800: #ef6c00;
|
237
|
+
$color-orange-900: #e65100;
|
238
|
+
$color-orange-a100: #ffd180;
|
239
|
+
$color-orange-a200: #ffab40;
|
240
|
+
$color-orange-a400: #ff9100;
|
241
|
+
$color-orange-a700: #ff6d00;
|
242
|
+
|
243
|
+
// Deep oranges
|
244
|
+
$color-deep-orange-50: #fbe9e7;
|
245
|
+
$color-deep-orange-100: #ffccbc;
|
246
|
+
$color-deep-orange-200: #ffab91;
|
247
|
+
$color-deep-orange-300: #ff8a65;
|
248
|
+
$color-deep-orange-400: #ff7043;
|
249
|
+
$color-deep-orange-500: #ff5722;
|
250
|
+
$color-deep-orange-600: #f4511e;
|
251
|
+
$color-deep-orange-700: #e64a19;
|
252
|
+
$color-deep-orange-800: #d84315;
|
253
|
+
$color-deep-orange-900: #bf360c;
|
254
|
+
$color-deep-orange-a100: #ff9e80;
|
255
|
+
$color-deep-orange-a200: #ff6e40;
|
256
|
+
$color-deep-orange-a400: #ff3d00;
|
257
|
+
$color-deep-orange-a700: #dd2c00;
|
258
|
+
|
259
|
+
// Browns
|
260
|
+
$color-brown-50: #efebe9;
|
261
|
+
$color-brown-100: #d7ccc8;
|
262
|
+
$color-brown-200: #bcaaa4;
|
263
|
+
$color-brown-300: #a1887f;
|
264
|
+
$color-brown-400: #8d6e63;
|
265
|
+
$color-brown-500: #795548;
|
266
|
+
$color-brown-600: #6d4c41;
|
267
|
+
$color-brown-700: #5d4037;
|
268
|
+
$color-brown-800: #4e342e;
|
269
|
+
$color-brown-900: #3e2723;
|
270
|
+
|
271
|
+
// Greys
|
272
|
+
$color-grey-50: #fafafa;
|
273
|
+
$color-grey-100: #f5f5f5;
|
274
|
+
$color-grey-200: #eeeeee;
|
275
|
+
$color-grey-300: #e0e0e0;
|
276
|
+
$color-grey-400: #bdbdbd;
|
277
|
+
$color-grey-500: #9e9e9e;
|
278
|
+
$color-grey-600: #757575;
|
279
|
+
$color-grey-700: #616161;
|
280
|
+
$color-grey-800: #424242;
|
281
|
+
$color-grey-900: #212121;
|
282
|
+
|
283
|
+
// Blue-greys
|
284
|
+
$color-blue-grey-50: #eceff1;
|
285
|
+
$color-blue-grey-100: #cfd8dc;
|
286
|
+
$color-blue-grey-200: #b0bec5;
|
287
|
+
$color-blue-grey-300: #90a4ae;
|
288
|
+
$color-blue-grey-400: #78909c;
|
289
|
+
$color-blue-grey-500: #607d8b;
|
290
|
+
$color-blue-grey-600: #546e7a;
|
291
|
+
$color-blue-grey-700: #455a64;
|
292
|
+
$color-blue-grey-800: #37474f;
|
293
|
+
$color-blue-grey-900: #263238;
|
294
|
+
$color-blue-grey-1000: #11171a;
|
295
|
+
|
296
|
+
// Basic colors
|
297
|
+
$color-white: #ffffff;
|
298
|
+
$color-black: #000000;
|
299
|
+
|
300
|
+
// Semantic colors:
|
301
|
+
$color-brand: #f6bb42;
|
302
|
+
$color-danger: $color-red-500;
|
303
|
+
$color-ghost: transparent;
|
304
|
+
$color-info: $color-blue-300;
|
305
|
+
$color-muted: $color-grey-200;
|
306
|
+
$color-primary: $color-blue-500;
|
307
|
+
$color-success: $color-green-500;
|
308
|
+
$color-warning: $color-orange-500;
|
309
|
+
|
310
|
+
// Foreground/background colors
|
311
|
+
$color-base: $color-grey-600;
|
312
|
+
$color-background-base: $color-grey-200;
|
313
|
+
$color-inverse: $color-grey-100;
|
314
|
+
$color-background-inverse: $color-orange-300;
|
315
|
+
|
316
|
+
// Information messages
|
317
|
+
$color-error-background: $color-red-500;
|
318
|
+
$color-error: $color-white;
|
319
|
+
|
320
|
+
// Borders
|
321
|
+
$color-borders: transparentize($color-base, .8);
|
322
|
+
|
323
|
+
// Forms
|
324
|
+
$forms-color: $color-grey-800;
|
325
|
+
|
326
|
+
// Links
|
327
|
+
$link-color: $color-grey-800;
|
328
|
+
$link-color-hover: $color-grey-600;
|
329
|
+
|
330
|
+
// User content colors
|
331
|
+
$el-content-album-bg: $color-white;
|
332
|
+
$el-content-article-bg: $color-white;
|
333
|
+
$el-content-note-bg: $color-white;
|
334
|
+
$el-content-project-bg: $color-white;
|
335
|
+
$el-content-upload-bg: $color-white;
|
336
|
+
|
337
|
+
// Classifiers
|
338
|
+
$el-language-bg: $color-green-100;
|
339
|
+
$el-license-bg: $color-orange-200;
|
340
|
+
$el-tag-bg: $color-blue-100;
|
341
|
+
$el-user-bg: $color-blue-grey-100;
|
342
|
+
|
343
|
+
// NSFW notices
|
344
|
+
$color-nsfw: $color-grey-400;
|
345
|
+
$color-nsfw-background: $color-grey-300;
|