diff --git a/.gitignore b/.gitignore index 404a43548283..285fbedf9fc1 100644 --- a/.gitignore +++ b/.gitignore @@ -64,8 +64,8 @@ jscover.log.* .pip_download_cache/ .prereqs_cache .vagrant/ -node_modules -.bundle/ +node_modules/ +bower_components/ bin/ ### Static assets pipeline artifacts diff --git a/.ruby-gemset b/.ruby-gemset deleted file mode 100644 index 77266c35f04c..000000000000 --- a/.ruby-gemset +++ /dev/null @@ -1 +0,0 @@ -edx-platform diff --git a/.ruby-version b/.ruby-version deleted file mode 100644 index 311baaf3e2e7..000000000000 --- a/.ruby-version +++ /dev/null @@ -1 +0,0 @@ -1.9.3-p374 diff --git a/Gemfile b/Gemfile deleted file mode 100644 index b99a22b64e01..000000000000 --- a/Gemfile +++ /dev/null @@ -1,13 +0,0 @@ -source 'https://rubygems.org' -gem 'sass', '3.3.5' -gem 'bourbon', '~> 4.0.2' -gem 'neat', '~> 1.6.0' -gem 'colorize', '~> 0.5.8' -gem 'launchy', '~> 2.1.2' -gem 'sys-proctable', '~> 0.9.3' -gem 'dalli', '~> 2.6.4' -# These gems aren't actually required; they are used by Linux and Mac to -# detect when files change. If these gems are not installed, the system -# will fall back to polling files. -gem 'rb-inotify', '~> 0.9' -gem 'rb-fsevent', '~> 0.9.3' diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index 2d8e77cb9fe9..000000000000 --- a/Gemfile.lock +++ /dev/null @@ -1,35 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.3.5) - bourbon (4.0.2) - sass (~> 3.3) - thor - colorize (0.5.8) - dalli (2.6.4) - ffi (1.9.0) - launchy (2.1.2) - addressable (~> 2.3) - neat (1.6.0) - bourbon (>= 3.1) - sass (>= 3.3) - rb-fsevent (0.9.3) - rb-inotify (0.9.2) - ffi (>= 0.5.0) - sass (3.3.5) - sys-proctable (0.9.3) - thor (0.19.1) - -PLATFORMS - ruby - -DEPENDENCIES - bourbon (~> 4.0.2) - colorize (~> 0.5.8) - dalli (~> 2.6.4) - launchy (~> 2.1.2) - neat (~> 1.6.0) - rb-fsevent (~> 0.9.3) - rb-inotify (~> 0.9) - sass (= 3.3.5) - sys-proctable (~> 0.9.3) diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 000000000000..bee73440e82c --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,409 @@ +'use strict'; + +var fs = require('fs'); +var util = require('util'); + +module.exports = function (grunt) { + require('load-grunt-tasks')(grunt); + require('time-grunt')(grunt); + + var config = { + bower: 'bower_components', + lms: 'lms/static', + studio: 'cms/static', + common: 'common/static', + theme: grunt.option('theme') + }; + + if (config.theme) { + if (fs.existsSync(config.theme)) { + grunt.log.writeln(util.format('Theme configured in: %s', config.theme)); + config.theme += '/static'; + } + else { + grunt.fail.warn(util.format('The theme directory (%s) does not exist', config.theme)); + } + } + + var addThemed = function (default_, add) { + if (config.theme) { + default_.push(add); + } + + return default_; + }; + + grunt.initConfig({ + c: config, + + watch: { + 'sass_lms': { + files: addThemed([ + '<%= c.lms %>/sass/**/*.scss', + '<%= c.common %>/sass/**/*.scss', + ], '<%= c.theme %>/sass/**/*.scss'), + tasks: [ + 'sass:lms', + 'concat:lms' + ] + }, + + 'sass_studio': { + files: [ + '<%= c.studio %>/sass/**/*.scss', + '<%= c.common %>/sass/**/*.scss' + ], + tasks: [ + 'sass:studio', + 'concat:studio' + ] + }, + + 'coffee_common': { + files: [ + '<%= c.common %>/coffee/**/*.coffee', + '<%= c.common %>/xmodule/**/*.coffee' + ], + tasks: [ + 'coffee:common' + ] + }, + + 'coffee_lms': { + files: addThemed([ + '<%= c.lms %>/coffee/**/*.coffee' + ], '<%= c.theme %>/coffee/**/*.coffee'), + tasks: [ + 'coffee:lms' + ] + }, + + 'coffee_studio': { + files: [ + '<%= c.studio %>/coffee/**/*.coffee' + ], + tasks: [ + 'coffee:studio' + ] + } + }, + + clean: { + lms: { + src: [ + '<%= c.lms %>/css/lms-style-vendor.css', + '<%= c.lms %>/css/lms-style-vendor-tinymce-content.css', + '<%= c.lms %>/css/lms-style-vendor-tinymce-skin.css', + '<%= c.lms %>/css/lms-style-app.css', + '<%= c.lms %>/css/lms-style-app-rtl.css', + '<%= c.lms %>/css/lms-style-app-extend1.css', + '<%= c.lms %>/css/lms-style-app-extend1-rtl.css', + '<%= c.lms %>/css/lms-style-app-extend2.css', + '<%= c.lms %>/css/lms-style-app-extend2-rtl.css', + '<%= c.lms %>/css/lms-style-course-vendor.css', + '<%= c.lms %>/css/lms-style-course.css', + '<%= c.lms %>/css/lms-style-course-rtl.css', + '<%= c.lms %>/css/lms-style-xmodule-annotations.css' + ] + }, + studio: { + src: [ + '<%= c.studio %>/css/cms-style-vendor.css', + '<%= c.studio %>/css/cms-style-vendor-tinymce-content.css', + '<%= c.studio %>/css/cms-style-vendor-tinymce-skin.css', + '<%= c.studio %>/css/cms-style-app.css', + '<%= c.studio %>/css/cms-style-app-rtl.css', + '<%= c.studio %>/css/cms-style-app-extend1.css', + '<%= c.studio %>/css/cms-style-app-extend1-rtl.css', + '<%= c.studio %>/css/cms-style-xmodule.css', + '<%= c.studio %>/css/cms-style-xmodule-rtl.css', + '<%= c.studio %>/css/cms-style-xmodule-annotations.css' + ] + } + }, + + sass: { + lms: { + options: { + includePaths: addThemed([ + '<%= c.bower %>', + '<%= c.common %>/sass', + // This is for xmodule sass files + '<%= c.common %>' + ], '<%= c.theme %>/sass') + }, + files: { + '<%= c.lms %>/css/lms-style-app-extend1.css': '<%= c.lms %>/sass/application-extend1.scss', + '<%= c.lms %>/css/lms-style-app-extend1-rtl.css': '<%= c.lms %>/sass/application-extend1-rtl.scss', + '<%= c.lms %>/css/lms-style-app-extend2.css': '<%= c.lms %>/sass/application-extend2.scss', + '<%= c.lms %>/css/lms-style-app-extend2-rtl.css': '<%= c.lms %>/sass/application-extend2-rtl.scss', + '<%= c.lms %>/css/lms-style-app.css': [ + '<%= c.lms %>/sass/application.scss', + '<%= c.lms %>/sass/ie.scss' + ], + '<%= c.lms %>/css/lms-style-app-rtl.css': [ + '<%= c.lms %>/sass/application-rtl.scss', + '<%= c.lms %>/sass/ie-rtl.scss' + ], + '<%= c.lms %>/css/lms-style-course.css': '<%= c.lms %>/sass/course.scss', + '<%= c.lms %>/css/lms-style-course-rtl.css': '<%= c.lms %>/sass/course-rtl.scss' + } + }, + studio: { + options: { + includePaths: [ + '<%= c.bower %>', + '<%= c.common %>/sass', + // This is for xmodule sass files + '<%= c.common %>' + ] + }, + files: { + '<%= c.studio %>/css/cms-style-app.css': '<%= c.studio %>/sass/style-app.scss', + '<%= c.studio %>/css/cms-style-app-rtl.css': '<%= c.studio %>/sass/style-app-rtl.scss', + '<%= c.studio %>/css/cms-style-app-extend1.css': '<%= c.studio %>/sass/style-app-extend1.scss', + '<%= c.studio %>/css/cms-style-app-extend1-rtl.css': '<%= c.studio %>/sass/style-app-extend1-rtl.scss', + '<%= c.studio %>/css/cms-style-xmodule.css': '<%= c.studio %>/sass/style-xmodule.scss', + '<%= c.studio %>/css/cms-style-xmodule-rtl.css': '<%= c.studio %>/sass/style-xmodule-rtl.scss' + } + } + }, + + concat: { + lms: { + files: { + '<%= c.lms %>/css/lms-style-vendor.css': [ + '<%= c.bower %>/font-awesome/css/font-awesome.css', + '<%= c.common %>/css/vendor/jquery.qtip.min.css', + '<%= c.lms %>/css/vendor/responsive-carousel/responsive-carousel.css', + '<%= c.lms %>/css/vendor/responsive-carousel/responsive-carousel.slide.css' + ], + '<%= c.lms %>/css/lms-style-vendor-tinymce-content.css': [ + '<%= c.common %>/js/vendor/tinymce/js/tinymce/skins/studio-tmce4/content.min.css' + ], + '<%= c.lms %>/css/lms-style-vendor-tinymce-skin.css': [ + '<%= c.common %>/js/vendor/tinymce/js/tinymce/skins/studio-tmce4/skin.min.css' + ], + '<%= c.lms %>/css/lms-style-course-vendor.css': [ + '<%= c.lms %>/js/vendor/CodeMirror/codemirror.css', + '<%= c.lms %>/css/vendor/jquery.treeview.css', + '<%= c.lms %>/css/vendor/ui-lightness/jquery-ui-1.8.22.custom.css' + ], + '<%= c.lms %>/css/lms-style-xmodule-annotations.css': [ + '<%= c.common %>/css/vendor/ova/annotator.css', + '<%= c.common %>/css/vendor/ova/edx-annotator.css', + '<%= c.common %>/css/vendor/ova/video-js.min.css', + '<%= c.common %>/css/vendor/ova/rangeslider.css', + '<%= c.common %>/css/vendor/ova/share-annotator.css', + '<%= c.common %>/css/vendor/ova/richText-annotator.css', + '<%= c.common %>/css/vendor/ova/tags-annotator.css', + '<%= c.common %>/css/vendor/ova/flagging-annotator.css', + '<%= c.common %>/css/vendor/ova/diacritic-annotator.css', + '<%= c.common %>/css/vendor/ova/grouping-annotator.css', + '<%= c.common %>/css/vendor/ova/ova.css', + '<%= c.common %>/js/vendor/ova/catch/css/main.css' + ] + } + }, + studio: { + files: { + '<%= c.studio %>/css/cms-style-vendor.css': [ + '<%= c.common %>/css/vendor/normalize.css', + '<%= c.bower %>/font-awesome/css/font-awesome.css', + '<%= c.common %>/css/vendor/html5-input-polyfills/number-polyfill.css', + '<%= c.common %>/js/vendor/CodeMirror/codemirror.css', + '<%= c.common %>/css/vendor/ui-lightness/jquery-ui-1.8.22.custom.css', + '<%= c.common %>/css/vendor/jquery.qtip.min.css', + '<%= c.common %>/js/vendor/markitup/skins/simple/style.css', + '<%= c.common %>/js/vendor/markitup/sets/wiki/style.css', + ], + '<%= c.studio %>/css/cms-style-vendor-tinymce-content.css': [ + '<%= c.common %>/css/tinymce-studio-content-fonts.css', + '<%= c.common %>/js/vendor/tinymce/js/tinymce/skins/studio-tmce4/content.min.css', + '<%= c.common %>/css/tinymce-studio-content.css' + ], + '<%= c.studio %>/css/cms-style-vendor-tinymce-skin.css': [ + '<%= c.common %>/js/vendor/tinymce/js/tinymce/skins/studio-tmce4/skin.min.css' + ], + '<%= c.studio %>/css/cms-style-xmodule-annotations.css': [ + '<%= c.common %>/css/vendor/ova/annotator.css', + '<%= c.common %>/css/vendor/ova/edx-annotator.css', + '<%= c.common %>/css/vendor/ova/video-js.min.css', + '<%= c.common %>/css/vendor/ova/rangeslider.css', + '<%= c.common %>/css/vendor/ova/share-annotator.css', + '<%= c.common %>/css/vendor/ova/richText-annotator.css', + '<%= c.common %>/css/vendor/ova/tags-annotator.css', + '<%= c.common %>/css/vendor/ova/flagging-annotator.css', + '<%= c.common %>/css/vendor/ova/diacritic-annotator.css', + '<%= c.common %>/css/vendor/ova/grouping-annotator.css', + '<%= c.common %>/css/vendor/ova/ova.css', + '<%= c.common %>/js/vendor/ova/catch/css/main.css' + ] + } + } + }, + + cssmin: { + lms: { + files: { + '<%= c.lms %>/css/lms-style-vendor.css': '<%= c.lms %>/css/lms-style-vendor.css', + '<%= c.lms %>/css/lms-style-vendor-tinymce-content.css': '<%= c.lms %>/css/lms-style-vendor-tinymce-content.css', + '<%= c.lms %>/css/lms-style-vendor-tinymce-skin.css': '<%= c.lms %>/css/lms-style-vendor-tinymce-skin.css', + '<%= c.lms %>/css/lms-style-app.css': '<%= c.lms %>/css/lms-style-app.css', + '<%= c.lms %>/css/lms-style-app-rtl.css': '<%= c.lms %>/css/lms-style-app-rtl.css', + '<%= c.lms %>/css/lms-style-app-extend1.css': '<%= c.lms %>/css/lms-style-app-extend1.css', + '<%= c.lms %>/css/lms-style-app-extend1-rtl.css': '<%= c.lms %>/css/lms-style-app-extend1-rtl.css', + '<%= c.lms %>/css/lms-style-app-extend2.css': '<%= c.lms %>/css/lms-style-app-extend2.css', + '<%= c.lms %>/css/lms-style-app-extend2-rtl.css': '<%= c.lms %>/css/lms-style-app-extend2-rtl.css', + '<%= c.lms %>/css/lms-style-course-vendor.css': '<%= c.lms %>/css/lms-style-course-vendor.css', + '<%= c.lms %>/css/lms-style-course.css': '<%= c.lms %>/css/lms-style-course.css', + '<%= c.lms %>/css/lms-style-course-rtl.css': '<%= c.lms %>/css/lms-style-course-rtl.css', + '<%= c.lms %>/css/lms-style-xmodule-annotations.css': '<%= c.lms %>/css/lms-style-xmodule-annotations.css' + } + }, + studio: { + files: { + '<%= c.studio %>/css/cms-style-vendor.css': '<%= c.studio %>/css/cms-style-vendor.css', + '<%= c.studio %>/css/cms-style-vendor-tinymce-content.css': '<%= c.studio %>/css/cms-style-vendor-tinymce-content.css', + '<%= c.studio %>/css/cms-style-vendor-tinymce-skin.css': '<%= c.studio %>/css/cms-style-vendor-tinymce-skin.css', + '<%= c.studio %>/css/cms-style-app.css': '<%= c.studio %>/css/cms-style-app.css', + '<%= c.studio %>/css/cms-style-app-rtl.css': '<%= c.studio %>/css/cms-style-app-rtl.css', + '<%= c.studio %>/css/cms-style-app-extend1.css': '<%= c.studio %>/css/cms-style-app-extend1.css', + '<%= c.studio %>/css/cms-style-app-extend1-rtl.css': '<%= c.studio %>/css/cms-style-app-extend1-rtl.css', + '<%= c.studio %>/css/cms-style-xmodule.css': '<%= c.studio %>/css/cms-style-xmodule.css', + '<%= c.studio %>/css/cms-style-xmodule-rtl.css': '<%= c.studio %>/css/cms-style-xmodule-rtl.css', + '<%= c.studio %>/css/cms-style-xmodule-annotations.css': '<%= c.studio %>/css/cms-style-xmodule-annotations.css' + } + } + }, + + coffee: { + common: { + expand: true, + src: [ + '<%= c.common %>/coffee/**/*.coffee', + '<%= c.common %>/xmodule/**/*.coffee' + ], + extDot: 'last', + ext: '.js' + }, + lms: { + expand: true, + src: addThemed([ + '<%= c.lms %>/coffee/**/*.coffee' + ], '<%= c.theme %>/coffee/**/*.coffee'), + extDot: 'last', + ext: '.js' + }, + + studio: { + expand: true, + src: [ + '<%= c.studio %>/coffee/**/*.coffee' + ], + extDot: 'last', + ext: '.js' + } + }, + + concurrent: { + 'watch_lms': { + options: { + logConcurrentOutput: true + }, + tasks: [ + 'watch:sass_lms', + 'watch:coffee_common', + 'watch:coffee_lms' + ] + }, + + 'watch_studio': { + options: { + logConcurrentOutput: true + }, + tasks: [ + 'watch:sass_studio', + 'watch:coffee_common', + 'watch:coffee_studio' + ] + }, + + 'build_lms': { + tasks: [ + 'lms:css', + 'lms:js' + ] + }, + + 'build_studio': { + tasks: [ + 'studio:css', + 'studio:js' + ] + } + + } + }); + + // LMS tasks + grunt.registerTask('lms', [ + 'concurrent:build_lms' + ]); + + grunt.registerTask('lms:css', [ + 'sass:lms', + 'concat:lms' + ]); + + grunt.registerTask('lms:js', [ + 'coffee:common', + 'coffee:lms' + ]); + + grunt.registerTask('lms:watch', [ + 'concurrent:watch_lms' + ]); + + grunt.registerTask('lms:dev', [ + 'lms', + 'lms:watch' + ]); + + grunt.registerTask('lms:dist', [ + 'clean:lms', + 'lms', + 'cssmin:lms' + ]); + + + // Studio tasks + grunt.registerTask('studio', [ + 'concurrent:build_studio' + ]); + + grunt.registerTask('studio:css', [ + 'sass:studio', + 'concat:studio' + ]); + + grunt.registerTask('studio:js', [ + 'coffee:common', + 'coffee:studio' + ]); + + grunt.registerTask('studio:watch', [ + 'concurrent:watch_studio' + ]); + + grunt.registerTask('studio:dev', [ + 'studio', + 'studio:watch' + ]); + + grunt.registerTask('studio:dist', [ + 'clean:studio', + 'studio', + 'cssmin:studio' + ]); +}; diff --git a/bower.json b/bower.json new file mode 100644 index 000000000000..de737ed43095 --- /dev/null +++ b/bower.json @@ -0,0 +1,11 @@ +{ + "name": "edx", + "private": true, + "homepage": "https://github.com/edx/edx-platform", + "dependencies": { + "bourbon": "~4.0.2", + "neat": "~1.5.1", + "bi-app-sass": "*", + "font-awesome": "~3.2.1" + } +} diff --git a/cms/envs/common.py b/cms/envs/common.py index c542b373b702..6286633da5f1 100644 --- a/cms/envs/common.py +++ b/cms/envs/common.py @@ -115,6 +115,7 @@ PROJECT_ROOT = path(__file__).abspath().dirname().dirname() # /edx-platform/cms REPO_ROOT = PROJECT_ROOT.dirname() COMMON_ROOT = REPO_ROOT / "common" +BOWER_ROOT = REPO_ROOT / "bower_components" LMS_ROOT = REPO_ROOT / "lms" ENV_ROOT = REPO_ROOT.dirname() # virtualenv dir /edx-platform is in @@ -295,12 +296,25 @@ STATIC_ROOT = ENV_ROOT / "staticfiles" / git.revision STATICFILES_DIRS = [ - COMMON_ROOT / "static", - PROJECT_ROOT / "static", - LMS_ROOT / "static", + ("css", PROJECT_ROOT / "static/css"), - # This is how you would use the textbook images locally - # ("book", ENV_ROOT / "book_images"), + ("js", COMMON_ROOT / "static/js"), + ("js", PROJECT_ROOT / "static/js"), + + ("fonts", PROJECT_ROOT / "static/fonts"), + ("font", BOWER_ROOT / "font-awesome/font"), + + ("images", COMMON_ROOT / "static/images"), + ("images", PROJECT_ROOT / "static/images"), + + ("xmodule", COMMON_ROOT / "static/xmodule"), + + # All these should not be here + + ("coffee", COMMON_ROOT / "static/coffee"), + ("coffee", PROJECT_ROOT / "static/coffee"), + + PROJECT_ROOT / "static" ] # Locale/Internationalization @@ -328,89 +342,6 @@ from rooted_paths import rooted_glob -PIPELINE_CSS = { - 'style-vendor': { - 'source_filenames': [ - 'css/vendor/normalize.css', - 'css/vendor/font-awesome.css', - 'css/vendor/html5-input-polyfills/number-polyfill.css', - 'js/vendor/CodeMirror/codemirror.css', - 'css/vendor/ui-lightness/jquery-ui-1.8.22.custom.css', - 'css/vendor/jquery.qtip.min.css', - 'js/vendor/markitup/skins/simple/style.css', - 'js/vendor/markitup/sets/wiki/style.css', - ], - 'output_filename': 'css/cms-style-vendor.css', - }, - 'style-vendor-tinymce-content': { - 'source_filenames': [ - 'css/tinymce-studio-content-fonts.css', - 'js/vendor/tinymce/js/tinymce/skins/studio-tmce4/content.min.css', - 'css/tinymce-studio-content.css' - ], - 'output_filename': 'css/cms-style-vendor-tinymce-content.css', - }, - 'style-vendor-tinymce-skin': { - 'source_filenames': [ - 'js/vendor/tinymce/js/tinymce/skins/studio-tmce4/skin.min.css' - ], - 'output_filename': 'css/cms-style-vendor-tinymce-skin.css', - }, - 'style-app': { - 'source_filenames': [ - 'sass/style-app.css', - ], - 'output_filename': 'css/cms-style-app.css', - }, - 'style-app-extend1': { - 'source_filenames': [ - 'sass/style-app-extend1.css', - ], - 'output_filename': 'css/cms-style-app-extend1.css', - }, - 'style-app-rtl': { - 'source_filenames': [ - 'sass/style-app-rtl.css', - ], - 'output_filename': 'css/cms-style-app-rtl.css', - }, - 'style-app-extend1-rtl': { - 'source_filenames': [ - 'sass/style-app-extend1-rtl.css', - ], - 'output_filename': 'css/cms-style-app-extend1-rtl.css', - }, - 'style-xmodule': { - 'source_filenames': [ - 'sass/style-xmodule.css', - ], - 'output_filename': 'css/cms-style-xmodule.css', - }, - 'style-xmodule-rtl': { - 'source_filenames': [ - 'sass/style-xmodule-rtl.css', - ], - 'output_filename': 'css/cms-style-xmodule-rtl.css', - }, - 'style-xmodule-annotations': { - 'source_filenames': [ - 'css/vendor/ova/annotator.css', - 'css/vendor/ova/edx-annotator.css', - 'css/vendor/ova/video-js.min.css', - 'css/vendor/ova/rangeslider.css', - 'css/vendor/ova/share-annotator.css', - 'css/vendor/ova/richText-annotator.css', - 'css/vendor/ova/tags-annotator.css', - 'css/vendor/ova/flagging-annotator.css', - 'css/vendor/ova/diacritic-annotator.css', - 'css/vendor/ova/grouping-annotator.css', - 'css/vendor/ova/ova.css', - 'js/vendor/ova/catch/css/main.css' - ], - 'output_filename': 'css/cms-style-xmodule-annotations.css', - }, -} - # test_order: Determines the position of this chunk of javascript on # the jasmine test page PIPELINE_JS = { @@ -429,7 +360,6 @@ 'pipeline.compilers.coffee.CoffeeScriptCompiler', ) -PIPELINE_CSS_COMPRESSOR = None PIPELINE_JS_COMPRESSOR = None STATICFILES_IGNORE_PATTERNS = ( @@ -446,11 +376,7 @@ "coffee/*.coffee", "coffee/*/*.coffee", "coffee/*/*/*.coffee", - "coffee/*/*/*/*.coffee", - - # Symlinks used by js-test-tool - "xmodule_js", - "common_static", + "coffee/*/*/*/*.coffee" ) PIPELINE_YUI_BINARY = 'yui-compressor' diff --git a/cms/envs/dev.py b/cms/envs/dev.py index edfe8fe8ebae..5ce3d58284fb 100644 --- a/cms/envs/dev.py +++ b/cms/envs/dev.py @@ -124,10 +124,6 @@ # Dummy secret key for dev SECRET_KEY = '85920908f28904ed733fe576320db18cabd7b6cd' -################################ PIPELINE ################################# - -PIPELINE_SASS_ARGUMENTS = '--debug-info --require {proj_dir}/static/sass/bourbon/lib/bourbon.rb'.format(proj_dir=PROJECT_ROOT) - ################################# CELERY ###################################### # By default don't use a worker, execute tasks as if they were local functions diff --git a/cms/static/sass/README.txt b/cms/static/sass/README.txt deleted file mode 100644 index 3b760ff21440..000000000000 --- a/cms/static/sass/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -Sass Watch: - -sass --watch cms/static/sass:cms/static/sass -r ./cms/static/sass/bourbon/lib/bourbon.rb diff --git a/cms/static/sass/style-app-extend1-rtl.scss b/cms/static/sass/style-app-extend1-rtl.scss index 8c9a3384bec7..b65df4b9fdd3 100644 --- a/cms/static/sass/style-app-extend1-rtl.scss +++ b/cms/static/sass/style-app-extend1-rtl.scss @@ -2,8 +2,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/style-app-extend1.scss b/cms/static/sass/style-app-extend1.scss index 571f7e25f6a2..3a06725e89b3 100644 --- a/cms/static/sass/style-app-extend1.scss +++ b/cms/static/sass/style-app-extend1.scss @@ -1,10 +1,9 @@ // studio - css architecture // ==================== -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages - // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/style-app-rtl.scss b/cms/static/sass/style-app-rtl.scss index a70eccacd774..917cc131eeb9 100644 --- a/cms/static/sass/style-app-rtl.scss +++ b/cms/static/sass/style-app-rtl.scss @@ -2,8 +2,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/style-app.scss b/cms/static/sass/style-app.scss index 4df5a61fed5d..35fc2b28122b 100644 --- a/cms/static/sass/style-app.scss +++ b/cms/static/sass/style-app.scss @@ -1,10 +1,9 @@ // studio - css architecture // ==================== -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages - // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/style-xmodule-rtl.scss b/cms/static/sass/style-xmodule-rtl.scss index 9d329f4eda53..10cc278c5851 100644 --- a/cms/static/sass/style-xmodule-rtl.scss +++ b/cms/static/sass/style-xmodule-rtl.scss @@ -2,8 +2,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/style-xmodule.scss b/cms/static/sass/style-xmodule.scss index e7acb0f4cb3d..ae94e8a7c42e 100644 --- a/cms/static/sass/style-xmodule.scss +++ b/cms/static/sass/style-xmodule.scss @@ -2,8 +2,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // VENDOR + REBASE *referenced/used vendor presentation and reset* // ==================== diff --git a/cms/static/sass/vendor/bi-app/_bi-app-ltr.scss b/cms/static/sass/vendor/bi-app/_bi-app-ltr.scss deleted file mode 100755 index 6278a31380e8..000000000000 --- a/cms/static/sass/vendor/bi-app/_bi-app-ltr.scss +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------ -// left to right module -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -@import 'variables-ltr'; -@import 'mixins'; \ No newline at end of file diff --git a/cms/static/sass/vendor/bi-app/_bi-app-rtl.scss b/cms/static/sass/vendor/bi-app/_bi-app-rtl.scss deleted file mode 100755 index 17b7f2e90fe7..000000000000 --- a/cms/static/sass/vendor/bi-app/_bi-app-rtl.scss +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------ -// right to left module -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -@import 'variables-rtl'; -@import 'mixins'; \ No newline at end of file diff --git a/cms/static/sass/vendor/bi-app/_mixins.scss b/cms/static/sass/vendor/bi-app/_mixins.scss deleted file mode 100755 index 170120e1b0e1..000000000000 --- a/cms/static/sass/vendor/bi-app/_mixins.scss +++ /dev/null @@ -1,294 +0,0 @@ -// ------------------------------------------ -// bi app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// ------------------------------------------ -// Table of contents -// ------------------------------------------ -// padding -// margin -// float -// text align -// clear -// left / right -// border -// - width -// - style -// - color -// - generic -// - radius -// ltr / rtl contents -// ------------------------------------------ - -// generic mixin for properties with values -// (top right bottom left) -// ------------------------------------------ -@mixin bi-app-compact($property, $top, $right, $bottom, $left) { - @if $bi-app-direction == ltr { - #{$property}: $top $right $bottom $left; - } @else { - #{$property}: $top $left $bottom $right; - } -} - -// padding -// ------------------------------------------ -@mixin padding-left($distance) { - padding-#{$bi-app-left}: $distance; -} - -@mixin padding-right($distance) { - padding-#{$bi-app-right}: $distance; -} - -@mixin padding($top, $right, $bottom, $left) { - @include bi-app-compact(padding, $top, $right, $bottom, $left); -} - -// margin -// ------------------------------------------ -@mixin margin-left($distance) { - margin-#{$bi-app-left}: $distance; -} - -@mixin margin-right($distance) { - margin-#{$bi-app-right}: $distance; -} - -@mixin margin($top, $right, $bottom, $left) { - @include bi-app-compact(margin, $top, $right, $bottom, $left); -} - -// float -// ------------------------------------------ -@mixin bi-app-float-left { - float: $bi-app-left; -} - -@mixin bi-app-float-right { - float: $bi-app-right; -} - -@mixin float($direction) { - @if $direction == left { - @include bi-app-float-left; - } @else if $direction == right { - @include bi-app-float-right; - } @else { - float: $direction; - } -} - -// text align -// ------------------------------------------ -@mixin bi-app-text-align-left { - text-align: $bi-app-left; -} - -@mixin bi-app-text-align-right { - text-align: $bi-app-right; -} - -@mixin text-align($direction) { - @if $direction == left { - @include bi-app-text-align-left; - } @else if $direction == right { - @include bi-app-text-align-right; - } @else { - text-align: $direction; - } -} - -// clear -// ------------------------------------------ -@mixin bi-app-clear-left { - clear: $bi-app-left; -} - -@mixin bi-app-clear-right { - clear: $bi-app-right; -} - -@mixin clear($direction) { - @if $direction == left { - @include bi-app-clear-left; - } @else if $direction == right { - @include bi-app-clear-right; - } @else { - clear: $direction; - } -} - -// left / right -// ------------------------------------------ -@mixin left($distance) { - @if $bi-app-direction == ltr { - left: $distance; - } @else if $bi-app-direction == rtl { - right: $distance; - } -} - -@mixin right($distance) { - @if $bi-app-direction == ltr { - right: $distance; - } @else if $bi-app-direction == rtl { - left: $distance; - } -} - -// border -// ------------------------------------------ - -// width -@mixin border-left-width($width) { - border-#{$bi-app-left}-width: $width; -} - -@mixin border-right-width($width) { - border-#{$bi-app-right}-width: $width; -} - -@mixin border-width($top, $right, $bottom, $left) { - @include bi-app-compact(border-width, $top, $right, $bottom, $left); -} - -// style -@mixin border-left-style($style) { - border-#{$bi-app-left}-style: $style; -} - -@mixin border-right-style($style) { - border-#{$bi-app-right}-style: $style; -} - -@mixin border-style($top, $right, $bottom, $left) { - @include bi-app-compact(border-style, $top, $right, $bottom, $left); -} - -// color -@mixin border-left-color($color) { - border-#{$bi-app-left}-color: $color; -} - -@mixin border-right-color($color) { - border-#{$bi-app-right}-color: $color; -} - -@mixin border-color($top, $right, $bottom, $left) { - @include bi-app-compact(border-color, $top, $right, $bottom, $left); -} - -// generic -@mixin border-left($border-style) { - border-#{$bi-app-left}: $border-style; -} - -@mixin border-right($border-style) { - border-#{$bi-app-right}: $border-style; -} - -// radius -@mixin border-top-left-radius($radius) { - -webkit-border-top-#{$bi-app-left}-radius: $radius; - -moz-border-top#{$bi-app-left}-radius: $radius; - border-top-#{$bi-app-left}-radius: $radius; -} - -@mixin border-top-right-radius($radius) { - -webkit-border-top-#{$bi-app-right}-radius: $radius; - -moz-border-top#{$bi-app-right}-radius: $radius; - border-top-#{$bi-app-right}-radius: $radius; -} - -@mixin border-bottom-left-radius($radius) { - -webkit-border-bottom-#{$bi-app-left}-radius: $radius; - -moz-border-bottom#{$bi-app-left}-radius: $radius; - border-bottom-#{$bi-app-left}-radius: $radius; -} - -@mixin border-bottom-right-radius($radius) { - -webkit-border-bottom-#{$bi-app-right}-radius: $radius; - -moz-border-bottom#{$bi-app-right}-radius: $radius; - border-bottom-#{$bi-app-right}-radius: $radius; -} - -@mixin border-right-radius($radius) { - @include border-top-right-radius($radius); - @include border-bottom-right-radius($radius); -} - -@mixin border-left-radius($radius) { - @include border-top-left-radius($radius); - @include border-bottom-left-radius($radius); -} - -@mixin border-top-radius($radius) { - @include border-top-left-radius($radius); - @include border-top-right-radius($radius); -} - -@mixin border-bottom-radius($radius) { - @include border-bottom-left-radius($radius); - @include border-bottom-right-radius($radius); -} - -@mixin border-radius($topLeft, $topRight: null, $bottomRight: null, $bottomLeft: null) { - @if $topRight != null { - @include border-top-left-radius($topLeft); - @include border-top-right-radius($topRight); - @include border-bottom-right-radius($bottomRight); - @include border-bottom-left-radius($bottomLeft); - } @else { - -webkit-border-radius: $topLeft; - -moz-border-radius: $topLeft; - -ms-border-radius: $topLeft; - -o-border-radius: $topLeft; - border-radius: $topLeft; - } -} - -// Returns "en" or "ar", useful for image suffixes. -// Usage: background-image: url(/images/header-#{lang()}.png); -@function lang() { - @if $bi-app-direction == ltr { - @return 'en'; - } @else { - @return 'ar'; - } -} - -// Support for "direction" declaration (renders ltr/rtl). -// Useful for form elements as they swap the text-indent property and align the text accordingly. -@mixin direction { - direction: $bi-app-direction; -} - -// Inverts a percentage value. Example: 97% becames 3%. -// Useful for background-position. -@function bi-app-invert-percentage($percentage) { - @if $bi-app-direction == rtl { - @return 100% - $percentage; - } @else { - @return $percentage; - } -} - -// ltr / rtl contents -// ------------------------------------------ -@mixin ltr { - @if $bi-app-direction == ltr { - @content; - } -} - -@mixin rtl { - @if $bi-app-direction == rtl { - @content; - } -} diff --git a/cms/static/sass/vendor/bi-app/_variables-ltr.scss b/cms/static/sass/vendor/bi-app/_variables-ltr.scss deleted file mode 100755 index 36d5a7b06e15..000000000000 --- a/cms/static/sass/vendor/bi-app/_variables-ltr.scss +++ /dev/null @@ -1,15 +0,0 @@ -// ------------------------------------------ -// left to right variables to be used by bi-app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// namespacing variables with bi-app to -// avoid conflicting with other global variables -$bi-app-left : left; -$bi-app-right : right; -$bi-app-direction : ltr; -$bi-app-invert-direction: rtl; \ No newline at end of file diff --git a/cms/static/sass/vendor/bi-app/_variables-rtl.scss b/cms/static/sass/vendor/bi-app/_variables-rtl.scss deleted file mode 100755 index 7300f1786357..000000000000 --- a/cms/static/sass/vendor/bi-app/_variables-rtl.scss +++ /dev/null @@ -1,15 +0,0 @@ -// ------------------------------------------ -// right to left variables to be used by bi-app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// namespacing variables with bi-app to -// avoid conflicting with other global variables -$bi-app-left : right; -$bi-app-right : left; -$bi-app-direction : rtl; -$bi-app-invert-direction: ltr; \ No newline at end of file diff --git a/cms/templates/base.html b/cms/templates/base.html index 8a8a70c0ded2..5a6842cc8dfb 100644 --- a/cms/templates/base.html +++ b/cms/templates/base.html @@ -28,12 +28,18 @@ - <%static:css group='style-vendor'/> - <%static:css group='style-vendor-tinymce-content'/> - <%static:css group='style-vendor-tinymce-skin'/> - <%static:css group='style-app'/> - <%static:css group='style-app-extend1'/> - <%static:css group='style-xmodule'/> + + + + %if dir_rtl == 'rtl': + + + + %else: + + + + %endif <%include file="widgets/segment-io.html" /> diff --git a/common/djangoapps/pipeline_mako/templates/static_content.html b/common/djangoapps/pipeline_mako/templates/static_content.html index 9deb58e7b673..ef3ffd66ddab 100644 --- a/common/djangoapps/pipeline_mako/templates/static_content.html +++ b/common/djangoapps/pipeline_mako/templates/static_content.html @@ -1,6 +1,6 @@ <%! from staticfiles.storage import staticfiles_storage -from pipeline_mako import compressed_css, compressed_js +from pipeline_mako import compressed_js from django.utils.translation import get_language_bidi %> @@ -11,22 +11,6 @@ url = file %>${url}${"?raw" if raw else ""} -<%def name='css(group, raw=False)'> - <% - rtl_group = '{}-rtl'.format(group) - - if get_language_bidi() and rtl_group in settings.PIPELINE_CSS: - group = rtl_group - %> - - % if settings.FEATURES['USE_DJANGO_PIPELINE']: - ${compressed_css(group, raw=raw)} - % else: - % for filename in settings.PIPELINE_CSS[group]['source_filenames']: - - % endfor - %endif - <%def name='js(group)'> % if settings.FEATURES['USE_DJANGO_PIPELINE']: ${compressed_js(group)} diff --git a/common/lib/xmodule/xmodule/static_content.py b/common/lib/xmodule/xmodule/static_content.py index aabddf721a98..a3a2841b9184 100755 --- a/common/lib/xmodule/xmodule/static_content.py +++ b/common/lib/xmodule/xmodule/static_content.py @@ -96,8 +96,9 @@ def _write_styles(selector, output_root, classes): css_imports[class_].add(fragment_name) module_styles_lines = [] - module_styles_lines.append("@import 'bourbon/bourbon';") - module_styles_lines.append("@import 'bourbon/addons/button';") + module_styles_lines.append("@import 'bourbon/dist/bourbon';") + module_styles_lines.append("@import 'bourbon/dist/addons/button';") + module_styles_lines.append("@import 'bi-app-sass/bi-app/bi-app-ltr';") module_styles_lines.append("@import 'assets/anims';") for class_, fragment_names in css_imports.items(): module_styles_lines.append("""{selector}.xmodule_{class_} {{""".format( diff --git a/common/static/css/vendor/font-awesome.css b/common/static/css/vendor/font-awesome.css deleted file mode 100644 index aee05c3cc94b..000000000000 --- a/common/static/css/vendor/font-awesome.css +++ /dev/null @@ -1,1479 +0,0 @@ -/*! - * Font Awesome 3.2.1 - * the iconic font designed for Bootstrap - * ------------------------------------------------------------------------------ - * The full suite of pictographic icons, examples, and documentation can be - * found at http://fontawesome.io. Stay up to date on Twitter at - * http://twitter.com/fontawesome. - * - * License - * ------------------------------------------------------------------------------ - * - The Font Awesome font is licensed under SIL OFL 1.1 - - * http://scripts.sil.org/OFL - * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License - - * http://opensource.org/licenses/mit-license.html - * - Font Awesome documentation licensed under CC BY 3.0 - - * http://creativecommons.org/licenses/by/3.0/ - * - Attribution is no longer required in Font Awesome 3.0, but much appreciated: - * "Font Awesome by Dave Gandy - http://fontawesome.io" - * - * Author - Dave Gandy - * ------------------------------------------------------------------------------ - * Email: dave@fontawesome.io - * Twitter: http://twitter.com/davegandy - * Work: Lead Product Designer @ Kyruus - http://kyruus.com - */ -/* FONT PATH - * -------------------------- */ -@font-face { - font-family: 'FontAwesome'; - src: url('../../fonts/vendor/fontawesome-webfont.eot?v=3.2.1'); - src: url('../../fonts/vendor/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'), url('../../fonts/vendor/fontawesome-webfont.woff?v=3.2.1') format('woff'), url('../../fonts/vendor/fontawesome-webfont.ttf?v=3.2.1') format('truetype'), url('../../fonts/vendor/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg'); - font-weight: normal; - font-style: normal; -} -/* FONT AWESOME CORE - * -------------------------- */ -[class^="icon-"], -[class*=" icon-"] { - font-family: FontAwesome; - font-weight: normal; - font-style: normal; - text-decoration: inherit; - -webkit-font-smoothing: antialiased; - *margin-right: .3em; -} -[class^="icon-"]:before, -[class*=" icon-"]:before { - text-decoration: inherit; - display: inline-block; - speak: none; -} -/* makes the font 33% larger relative to the icon container */ -.icon-large:before { - vertical-align: -10%; - font-size: 1.3333333333333333em; -} -/* makes sure icons active on rollover in links */ -a [class^="icon-"], -a [class*=" icon-"] { - display: inline; -} -/* increased font size for icon-large */ -[class^="icon-"].icon-fixed-width, -[class*=" icon-"].icon-fixed-width { - display: inline-block; - width: 1.1428571428571428em; - text-align: right; - padding-right: 0.2857142857142857em; -} -[class^="icon-"].icon-fixed-width.icon-large, -[class*=" icon-"].icon-fixed-width.icon-large { - width: 1.4285714285714286em; -} -.icons-ul { - margin-left: 2.142857142857143em; - list-style-type: none; -} -.icons-ul > li { - position: relative; -} -.icons-ul .icon-li { - position: absolute; - left: -2.142857142857143em; - width: 2.142857142857143em; - text-align: center; - line-height: inherit; -} -[class^="icon-"].hide, -[class*=" icon-"].hide { - display: none; -} -.icon-muted { - color: #eeeeee; -} -.icon-light { - color: #ffffff; -} -.icon-dark { - color: #333333; -} -.icon-border { - border: solid 1px #eeeeee; - padding: .2em .25em .15em; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; -} -.icon-2x { - font-size: 2em; -} -.icon-2x.icon-border { - border-width: 2px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; -} -.icon-3x { - font-size: 3em; -} -.icon-3x.icon-border { - border-width: 3px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-radius: 5px; -} -.icon-4x { - font-size: 4em; -} -.icon-4x.icon-border { - border-width: 4px; - -webkit-border-radius: 6px; - -moz-border-radius: 6px; - border-radius: 6px; -} -.icon-5x { - font-size: 5em; -} -.icon-5x.icon-border { - border-width: 5px; - -webkit-border-radius: 7px; - -moz-border-radius: 7px; - border-radius: 7px; -} -.pull-right { - float: right; -} -.pull-left { - float: left; -} -[class^="icon-"].pull-left, -[class*=" icon-"].pull-left { - margin-right: .3em; -} -[class^="icon-"].pull-right, -[class*=" icon-"].pull-right { - margin-left: .3em; -} -/* BOOTSTRAP SPECIFIC CLASSES - * -------------------------- */ -/* Bootstrap 2.0 sprites.less reset */ -[class^="icon-"], -[class*=" icon-"] { - display: inline; - width: auto; - height: auto; - line-height: normal; - vertical-align: baseline; - background-image: none; - background-position: 0% 0%; - background-repeat: repeat; - margin-top: 0; -} -/* more sprites.less reset */ -.icon-white, -.nav-pills > .active > a > [class^="icon-"], -.nav-pills > .active > a > [class*=" icon-"], -.nav-list > .active > a > [class^="icon-"], -.nav-list > .active > a > [class*=" icon-"], -.navbar-inverse .nav > .active > a > [class^="icon-"], -.navbar-inverse .nav > .active > a > [class*=" icon-"], -.dropdown-menu > li > a:hover > [class^="icon-"], -.dropdown-menu > li > a:hover > [class*=" icon-"], -.dropdown-menu > .active > a > [class^="icon-"], -.dropdown-menu > .active > a > [class*=" icon-"], -.dropdown-submenu:hover > a > [class^="icon-"], -.dropdown-submenu:hover > a > [class*=" icon-"] { - background-image: none; -} -/* keeps Bootstrap styles with and without icons the same */ -.btn [class^="icon-"].icon-large, -.nav [class^="icon-"].icon-large, -.btn [class*=" icon-"].icon-large, -.nav [class*=" icon-"].icon-large { - line-height: .9em; -} -.btn [class^="icon-"].icon-spin, -.nav [class^="icon-"].icon-spin, -.btn [class*=" icon-"].icon-spin, -.nav [class*=" icon-"].icon-spin { - display: inline-block; -} -.nav-tabs [class^="icon-"], -.nav-pills [class^="icon-"], -.nav-tabs [class*=" icon-"], -.nav-pills [class*=" icon-"], -.nav-tabs [class^="icon-"].icon-large, -.nav-pills [class^="icon-"].icon-large, -.nav-tabs [class*=" icon-"].icon-large, -.nav-pills [class*=" icon-"].icon-large { - line-height: .9em; -} -.btn [class^="icon-"].pull-left.icon-2x, -.btn [class*=" icon-"].pull-left.icon-2x, -.btn [class^="icon-"].pull-right.icon-2x, -.btn [class*=" icon-"].pull-right.icon-2x { - margin-top: .18em; -} -.btn [class^="icon-"].icon-spin.icon-large, -.btn [class*=" icon-"].icon-spin.icon-large { - line-height: .8em; -} -.btn.btn-small [class^="icon-"].pull-left.icon-2x, -.btn.btn-small [class*=" icon-"].pull-left.icon-2x, -.btn.btn-small [class^="icon-"].pull-right.icon-2x, -.btn.btn-small [class*=" icon-"].pull-right.icon-2x { - margin-top: .25em; -} -.btn.btn-large [class^="icon-"], -.btn.btn-large [class*=" icon-"] { - margin-top: 0; -} -.btn.btn-large [class^="icon-"].pull-left.icon-2x, -.btn.btn-large [class*=" icon-"].pull-left.icon-2x, -.btn.btn-large [class^="icon-"].pull-right.icon-2x, -.btn.btn-large [class*=" icon-"].pull-right.icon-2x { - margin-top: .05em; -} -.btn.btn-large [class^="icon-"].pull-left.icon-2x, -.btn.btn-large [class*=" icon-"].pull-left.icon-2x { - margin-right: .2em; -} -.btn.btn-large [class^="icon-"].pull-right.icon-2x, -.btn.btn-large [class*=" icon-"].pull-right.icon-2x { - margin-left: .2em; -} -/* Fixes alignment in nav lists */ -.nav-list [class^="icon-"], -.nav-list [class*=" icon-"] { - line-height: inherit; -} -/* EXTRAS - * -------------------------- */ -/* Stacked and layered icon */ -.icon-stack { - position: relative; - display: inline-block; - width: 2em; - height: 2em; - line-height: 2em; - vertical-align: -35%; -} -.icon-stack [class^="icon-"], -.icon-stack [class*=" icon-"] { - display: block; - text-align: center; - position: absolute; - width: 100%; - height: 100%; - font-size: 1em; - line-height: inherit; - *line-height: 2em; -} -.icon-stack .icon-stack-base { - font-size: 2em; - *line-height: 1em; -} -/* Animated rotating icon */ -.icon-spin { - display: inline-block; - -moz-animation: spin 2s infinite linear; - -o-animation: spin 2s infinite linear; - -webkit-animation: spin 2s infinite linear; - animation: spin 2s infinite linear; -} -/* Prevent stack and spinners from being taken inline when inside a link */ -a .icon-stack, -a .icon-spin { - display: inline-block; - text-decoration: none; -} -@-moz-keyframes spin { - 0% { - -moz-transform: rotate(0deg); - } - 100% { - -moz-transform: rotate(359deg); - } -} -@-webkit-keyframes spin { - 0% { - -webkit-transform: rotate(0deg); - } - 100% { - -webkit-transform: rotate(359deg); - } -} -@-o-keyframes spin { - 0% { - -o-transform: rotate(0deg); - } - 100% { - -o-transform: rotate(359deg); - } -} -@-ms-keyframes spin { - 0% { - -ms-transform: rotate(0deg); - } - 100% { - -ms-transform: rotate(359deg); - } -} -@keyframes spin { - 0% { - transform: rotate(0deg); - } - 100% { - transform: rotate(359deg); - } -} -/* Icon rotations and mirroring */ -.icon-rotate-90:before { - -webkit-transform: rotate(90deg); - -moz-transform: rotate(90deg); - -ms-transform: rotate(90deg); - -o-transform: rotate(90deg); - transform: rotate(90deg); - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); -} -.icon-rotate-180:before { - -webkit-transform: rotate(180deg); - -moz-transform: rotate(180deg); - -ms-transform: rotate(180deg); - -o-transform: rotate(180deg); - transform: rotate(180deg); - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); -} -.icon-rotate-270:before { - -webkit-transform: rotate(270deg); - -moz-transform: rotate(270deg); - -ms-transform: rotate(270deg); - -o-transform: rotate(270deg); - transform: rotate(270deg); - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); -} -.icon-flip-horizontal:before { - -webkit-transform: scale(-1, 1); - -moz-transform: scale(-1, 1); - -ms-transform: scale(-1, 1); - -o-transform: scale(-1, 1); - transform: scale(-1, 1); -} -.icon-flip-vertical:before { - -webkit-transform: scale(1, -1); - -moz-transform: scale(1, -1); - -ms-transform: scale(1, -1); - -o-transform: scale(1, -1); - transform: scale(1, -1); -} -/* ensure rotation occurs inside anchor tags */ -a .icon-rotate-90:before, -a .icon-rotate-180:before, -a .icon-rotate-270:before, -a .icon-flip-horizontal:before, -a .icon-flip-vertical:before { - display: inline-block; -} -/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen - readers do not read off random characters that represent icons */ -.icon-glass:before { - content: "\f000"; -} -.icon-music:before { - content: "\f001"; -} -.icon-search:before { - content: "\f002"; -} -.icon-envelope-alt:before { - content: "\f003"; -} -.icon-heart:before { - content: "\f004"; -} -.icon-star:before { - content: "\f005"; -} -.icon-star-empty:before { - content: "\f006"; -} -.icon-user:before { - content: "\f007"; -} -.icon-film:before { - content: "\f008"; -} -.icon-th-large:before { - content: "\f009"; -} -.icon-th:before { - content: "\f00a"; -} -.icon-th-list:before { - content: "\f00b"; -} -.icon-ok:before { - content: "\f00c"; -} -.icon-remove:before { - content: "\f00d"; -} -.icon-zoom-in:before { - content: "\f00e"; -} -.icon-zoom-out:before { - content: "\f010"; -} -.icon-power-off:before, -.icon-off:before { - content: "\f011"; -} -.icon-signal:before { - content: "\f012"; -} -.icon-gear:before, -.icon-cog:before { - content: "\f013"; -} -.icon-trash:before { - content: "\f014"; -} -.icon-home:before { - content: "\f015"; -} -.icon-file-alt:before { - content: "\f016"; -} -.icon-time:before { - content: "\f017"; -} -.icon-road:before { - content: "\f018"; -} -.icon-download-alt:before { - content: "\f019"; -} -.icon-download:before { - content: "\f01a"; -} -.icon-upload:before { - content: "\f01b"; -} -.icon-inbox:before { - content: "\f01c"; -} -.icon-play-circle:before { - content: "\f01d"; -} -.icon-rotate-right:before, -.icon-repeat:before { - content: "\f01e"; -} -.icon-refresh:before { - content: "\f021"; -} -.icon-list-alt:before { - content: "\f022"; -} -.icon-lock:before { - content: "\f023"; -} -.icon-flag:before { - content: "\f024"; -} -.icon-headphones:before { - content: "\f025"; -} -.icon-volume-off:before { - content: "\f026"; -} -.icon-volume-down:before { - content: "\f027"; -} -.icon-volume-up:before { - content: "\f028"; -} -.icon-qrcode:before { - content: "\f029"; -} -.icon-barcode:before { - content: "\f02a"; -} -.icon-tag:before { - content: "\f02b"; -} -.icon-tags:before { - content: "\f02c"; -} -.icon-book:before { - content: "\f02d"; -} -.icon-bookmark:before { - content: "\f02e"; -} -.icon-print:before { - content: "\f02f"; -} -.icon-camera:before { - content: "\f030"; -} -.icon-font:before { - content: "\f031"; -} -.icon-bold:before { - content: "\f032"; -} -.icon-italic:before { - content: "\f033"; -} -.icon-text-height:before { - content: "\f034"; -} -.icon-text-width:before { - content: "\f035"; -} -.icon-align-left:before { - content: "\f036"; -} -.icon-align-center:before { - content: "\f037"; -} -.icon-align-right:before { - content: "\f038"; -} -.icon-align-justify:before { - content: "\f039"; -} -.icon-list:before { - content: "\f03a"; -} -.icon-indent-left:before { - content: "\f03b"; -} -.icon-indent-right:before { - content: "\f03c"; -} -.icon-facetime-video:before { - content: "\f03d"; -} -.icon-picture:before { - content: "\f03e"; -} -.icon-pencil:before { - content: "\f040"; -} -.icon-map-marker:before { - content: "\f041"; -} -.icon-adjust:before { - content: "\f042"; -} -.icon-tint:before { - content: "\f043"; -} -.icon-edit:before { - content: "\f044"; -} -.icon-share:before { - content: "\f045"; -} -.icon-check:before { - content: "\f046"; -} -.icon-move:before { - content: "\f047"; -} -.icon-step-backward:before { - content: "\f048"; -} -.icon-fast-backward:before { - content: "\f049"; -} -.icon-backward:before { - content: "\f04a"; -} -.icon-play:before { - content: "\f04b"; -} -.icon-pause:before { - content: "\f04c"; -} -.icon-stop:before { - content: "\f04d"; -} -.icon-forward:before { - content: "\f04e"; -} -.icon-fast-forward:before { - content: "\f050"; -} -.icon-step-forward:before { - content: "\f051"; -} -.icon-eject:before { - content: "\f052"; -} -.icon-chevron-left:before { - content: "\f053"; -} -.icon-chevron-right:before { - content: "\f054"; -} -.icon-plus-sign:before { - content: "\f055"; -} -.icon-minus-sign:before { - content: "\f056"; -} -.icon-remove-sign:before { - content: "\f057"; -} -.icon-ok-sign:before { - content: "\f058"; -} -.icon-question-sign:before { - content: "\f059"; -} -.icon-info-sign:before { - content: "\f05a"; -} -.icon-screenshot:before { - content: "\f05b"; -} -.icon-remove-circle:before { - content: "\f05c"; -} -.icon-ok-circle:before { - content: "\f05d"; -} -.icon-ban-circle:before { - content: "\f05e"; -} -.icon-arrow-left:before { - content: "\f060"; -} -.icon-arrow-right:before { - content: "\f061"; -} -.icon-arrow-up:before { - content: "\f062"; -} -.icon-arrow-down:before { - content: "\f063"; -} -.icon-mail-forward:before, -.icon-share-alt:before { - content: "\f064"; -} -.icon-resize-full:before { - content: "\f065"; -} -.icon-resize-small:before { - content: "\f066"; -} -.icon-plus:before { - content: "\f067"; -} -.icon-minus:before { - content: "\f068"; -} -.icon-asterisk:before { - content: "\f069"; -} -.icon-exclamation-sign:before { - content: "\f06a"; -} -.icon-gift:before { - content: "\f06b"; -} -.icon-leaf:before { - content: "\f06c"; -} -.icon-fire:before { - content: "\f06d"; -} -.icon-eye-open:before { - content: "\f06e"; -} -.icon-eye-close:before { - content: "\f070"; -} -.icon-warning-sign:before { - content: "\f071"; -} -.icon-plane:before { - content: "\f072"; -} -.icon-calendar:before { - content: "\f073"; -} -.icon-random:before { - content: "\f074"; -} -.icon-comment:before { - content: "\f075"; -} -.icon-magnet:before { - content: "\f076"; -} -.icon-chevron-up:before { - content: "\f077"; -} -.icon-chevron-down:before { - content: "\f078"; -} -.icon-retweet:before { - content: "\f079"; -} -.icon-shopping-cart:before { - content: "\f07a"; -} -.icon-folder-close:before { - content: "\f07b"; -} -.icon-folder-open:before { - content: "\f07c"; -} -.icon-resize-vertical:before { - content: "\f07d"; -} -.icon-resize-horizontal:before { - content: "\f07e"; -} -.icon-bar-chart:before { - content: "\f080"; -} -.icon-twitter-sign:before { - content: "\f081"; -} -.icon-facebook-sign:before { - content: "\f082"; -} -.icon-camera-retro:before { - content: "\f083"; -} -.icon-key:before { - content: "\f084"; -} -.icon-gears:before, -.icon-cogs:before { - content: "\f085"; -} -.icon-comments:before { - content: "\f086"; -} -.icon-thumbs-up-alt:before { - content: "\f087"; -} -.icon-thumbs-down-alt:before { - content: "\f088"; -} -.icon-star-half:before { - content: "\f089"; -} -.icon-heart-empty:before { - content: "\f08a"; -} -.icon-signout:before { - content: "\f08b"; -} -.icon-linkedin-sign:before { - content: "\f08c"; -} -.icon-pushpin:before { - content: "\f08d"; -} -.icon-external-link:before { - content: "\f08e"; -} -.icon-signin:before { - content: "\f090"; -} -.icon-trophy:before { - content: "\f091"; -} -.icon-github-sign:before { - content: "\f092"; -} -.icon-upload-alt:before { - content: "\f093"; -} -.icon-lemon:before { - content: "\f094"; -} -.icon-phone:before { - content: "\f095"; -} -.icon-unchecked:before, -.icon-check-empty:before { - content: "\f096"; -} -.icon-bookmark-empty:before { - content: "\f097"; -} -.icon-phone-sign:before { - content: "\f098"; -} -.icon-twitter:before { - content: "\f099"; -} -.icon-facebook:before { - content: "\f09a"; -} -.icon-github:before { - content: "\f09b"; -} -.icon-unlock:before { - content: "\f09c"; -} -.icon-credit-card:before { - content: "\f09d"; -} -.icon-rss:before { - content: "\f09e"; -} -.icon-hdd:before { - content: "\f0a0"; -} -.icon-bullhorn:before { - content: "\f0a1"; -} -.icon-bell:before { - content: "\f0a2"; -} -.icon-certificate:before { - content: "\f0a3"; -} -.icon-hand-right:before { - content: "\f0a4"; -} -.icon-hand-left:before { - content: "\f0a5"; -} -.icon-hand-up:before { - content: "\f0a6"; -} -.icon-hand-down:before { - content: "\f0a7"; -} -.icon-circle-arrow-left:before { - content: "\f0a8"; -} -.icon-circle-arrow-right:before { - content: "\f0a9"; -} -.icon-circle-arrow-up:before { - content: "\f0aa"; -} -.icon-circle-arrow-down:before { - content: "\f0ab"; -} -.icon-globe:before { - content: "\f0ac"; -} -.icon-wrench:before { - content: "\f0ad"; -} -.icon-tasks:before { - content: "\f0ae"; -} -.icon-filter:before { - content: "\f0b0"; -} -.icon-briefcase:before { - content: "\f0b1"; -} -.icon-fullscreen:before { - content: "\f0b2"; -} -.icon-group:before { - content: "\f0c0"; -} -.icon-link:before { - content: "\f0c1"; -} -.icon-cloud:before { - content: "\f0c2"; -} -.icon-beaker:before { - content: "\f0c3"; -} -.icon-cut:before { - content: "\f0c4"; -} -.icon-copy:before { - content: "\f0c5"; -} -.icon-paperclip:before, -.icon-paper-clip:before { - content: "\f0c6"; -} -.icon-save:before { - content: "\f0c7"; -} -.icon-sign-blank:before { - content: "\f0c8"; -} -.icon-reorder:before { - content: "\f0c9"; -} -.icon-list-ul:before { - content: "\f0ca"; -} -.icon-list-ol:before { - content: "\f0cb"; -} -.icon-strikethrough:before { - content: "\f0cc"; -} -.icon-underline:before { - content: "\f0cd"; -} -.icon-table:before { - content: "\f0ce"; -} -.icon-magic:before { - content: "\f0d0"; -} -.icon-truck:before { - content: "\f0d1"; -} -.icon-pinterest:before { - content: "\f0d2"; -} -.icon-pinterest-sign:before { - content: "\f0d3"; -} -.icon-google-plus-sign:before { - content: "\f0d4"; -} -.icon-google-plus:before { - content: "\f0d5"; -} -.icon-money:before { - content: "\f0d6"; -} -.icon-caret-down:before { - content: "\f0d7"; -} -.icon-caret-up:before { - content: "\f0d8"; -} -.icon-caret-left:before { - content: "\f0d9"; -} -.icon-caret-right:before { - content: "\f0da"; -} -.icon-columns:before { - content: "\f0db"; -} -.icon-sort:before { - content: "\f0dc"; -} -.icon-sort-down:before { - content: "\f0dd"; -} -.icon-sort-up:before { - content: "\f0de"; -} -.icon-envelope:before { - content: "\f0e0"; -} -.icon-linkedin:before { - content: "\f0e1"; -} -.icon-rotate-left:before, -.icon-undo:before { - content: "\f0e2"; -} -.icon-legal:before { - content: "\f0e3"; -} -.icon-dashboard:before { - content: "\f0e4"; -} -.icon-comment-alt:before { - content: "\f0e5"; -} -.icon-comments-alt:before { - content: "\f0e6"; -} -.icon-bolt:before { - content: "\f0e7"; -} -.icon-sitemap:before { - content: "\f0e8"; -} -.icon-umbrella:before { - content: "\f0e9"; -} -.icon-paste:before { - content: "\f0ea"; -} -.icon-lightbulb:before { - content: "\f0eb"; -} -.icon-exchange:before { - content: "\f0ec"; -} -.icon-cloud-download:before { - content: "\f0ed"; -} -.icon-cloud-upload:before { - content: "\f0ee"; -} -.icon-user-md:before { - content: "\f0f0"; -} -.icon-stethoscope:before { - content: "\f0f1"; -} -.icon-suitcase:before { - content: "\f0f2"; -} -.icon-bell-alt:before { - content: "\f0f3"; -} -.icon-coffee:before { - content: "\f0f4"; -} -.icon-food:before { - content: "\f0f5"; -} -.icon-file-text-alt:before { - content: "\f0f6"; -} -.icon-building:before { - content: "\f0f7"; -} -.icon-hospital:before { - content: "\f0f8"; -} -.icon-ambulance:before { - content: "\f0f9"; -} -.icon-medkit:before { - content: "\f0fa"; -} -.icon-fighter-jet:before { - content: "\f0fb"; -} -.icon-beer:before { - content: "\f0fc"; -} -.icon-h-sign:before { - content: "\f0fd"; -} -.icon-plus-sign-alt:before { - content: "\f0fe"; -} -.icon-double-angle-left:before { - content: "\f100"; -} -.icon-double-angle-right:before { - content: "\f101"; -} -.icon-double-angle-up:before { - content: "\f102"; -} -.icon-double-angle-down:before { - content: "\f103"; -} -.icon-angle-left:before { - content: "\f104"; -} -.icon-angle-right:before { - content: "\f105"; -} -.icon-angle-up:before { - content: "\f106"; -} -.icon-angle-down:before { - content: "\f107"; -} -.icon-desktop:before { - content: "\f108"; -} -.icon-laptop:before { - content: "\f109"; -} -.icon-tablet:before { - content: "\f10a"; -} -.icon-mobile-phone:before { - content: "\f10b"; -} -.icon-circle-blank:before { - content: "\f10c"; -} -.icon-quote-left:before { - content: "\f10d"; -} -.icon-quote-right:before { - content: "\f10e"; -} -.icon-spinner:before { - content: "\f110"; -} -.icon-circle:before { - content: "\f111"; -} -.icon-mail-reply:before, -.icon-reply:before { - content: "\f112"; -} -.icon-github-alt:before { - content: "\f113"; -} -.icon-folder-close-alt:before { - content: "\f114"; -} -.icon-folder-open-alt:before { - content: "\f115"; -} -.icon-expand-alt:before { - content: "\f116"; -} -.icon-collapse-alt:before { - content: "\f117"; -} -.icon-smile:before { - content: "\f118"; -} -.icon-frown:before { - content: "\f119"; -} -.icon-meh:before { - content: "\f11a"; -} -.icon-gamepad:before { - content: "\f11b"; -} -.icon-keyboard:before { - content: "\f11c"; -} -.icon-flag-alt:before { - content: "\f11d"; -} -.icon-flag-checkered:before { - content: "\f11e"; -} -.icon-terminal:before { - content: "\f120"; -} -.icon-code:before { - content: "\f121"; -} -.icon-reply-all:before { - content: "\f122"; -} -.icon-mail-reply-all:before { - content: "\f122"; -} -.icon-star-half-full:before, -.icon-star-half-empty:before { - content: "\f123"; -} -.icon-location-arrow:before { - content: "\f124"; -} -.icon-crop:before { - content: "\f125"; -} -.icon-code-fork:before { - content: "\f126"; -} -.icon-unlink:before { - content: "\f127"; -} -.icon-question:before { - content: "\f128"; -} -.icon-info:before { - content: "\f129"; -} -.icon-exclamation:before { - content: "\f12a"; -} -.icon-superscript:before { - content: "\f12b"; -} -.icon-subscript:before { - content: "\f12c"; -} -.icon-eraser:before { - content: "\f12d"; -} -.icon-puzzle-piece:before { - content: "\f12e"; -} -.icon-microphone:before { - content: "\f130"; -} -.icon-microphone-off:before { - content: "\f131"; -} -.icon-shield:before { - content: "\f132"; -} -.icon-calendar-empty:before { - content: "\f133"; -} -.icon-fire-extinguisher:before { - content: "\f134"; -} -.icon-rocket:before { - content: "\f135"; -} -.icon-maxcdn:before { - content: "\f136"; -} -.icon-chevron-sign-left:before { - content: "\f137"; -} -.icon-chevron-sign-right:before { - content: "\f138"; -} -.icon-chevron-sign-up:before { - content: "\f139"; -} -.icon-chevron-sign-down:before { - content: "\f13a"; -} -.icon-html5:before { - content: "\f13b"; -} -.icon-css3:before { - content: "\f13c"; -} -.icon-anchor:before { - content: "\f13d"; -} -.icon-unlock-alt:before { - content: "\f13e"; -} -.icon-bullseye:before { - content: "\f140"; -} -.icon-ellipsis-horizontal:before { - content: "\f141"; -} -.icon-ellipsis-vertical:before { - content: "\f142"; -} -.icon-rss-sign:before { - content: "\f143"; -} -.icon-play-sign:before { - content: "\f144"; -} -.icon-ticket:before { - content: "\f145"; -} -.icon-minus-sign-alt:before { - content: "\f146"; -} -.icon-check-minus:before { - content: "\f147"; -} -.icon-level-up:before { - content: "\f148"; -} -.icon-level-down:before { - content: "\f149"; -} -.icon-check-sign:before { - content: "\f14a"; -} -.icon-edit-sign:before { - content: "\f14b"; -} -.icon-external-link-sign:before { - content: "\f14c"; -} -.icon-share-sign:before { - content: "\f14d"; -} -.icon-compass:before { - content: "\f14e"; -} -.icon-collapse:before { - content: "\f150"; -} -.icon-collapse-top:before { - content: "\f151"; -} -.icon-expand:before { - content: "\f152"; -} -.icon-euro:before, -.icon-eur:before { - content: "\f153"; -} -.icon-gbp:before { - content: "\f154"; -} -.icon-dollar:before, -.icon-usd:before { - content: "\f155"; -} -.icon-rupee:before, -.icon-inr:before { - content: "\f156"; -} -.icon-yen:before, -.icon-jpy:before { - content: "\f157"; -} -.icon-renminbi:before, -.icon-cny:before { - content: "\f158"; -} -.icon-won:before, -.icon-krw:before { - content: "\f159"; -} -.icon-bitcoin:before, -.icon-btc:before { - content: "\f15a"; -} -.icon-file:before { - content: "\f15b"; -} -.icon-file-text:before { - content: "\f15c"; -} -.icon-sort-by-alphabet:before { - content: "\f15d"; -} -.icon-sort-by-alphabet-alt:before { - content: "\f15e"; -} -.icon-sort-by-attributes:before { - content: "\f160"; -} -.icon-sort-by-attributes-alt:before { - content: "\f161"; -} -.icon-sort-by-order:before { - content: "\f162"; -} -.icon-sort-by-order-alt:before { - content: "\f163"; -} -.icon-thumbs-up:before { - content: "\f164"; -} -.icon-thumbs-down:before { - content: "\f165"; -} -.icon-youtube-sign:before { - content: "\f166"; -} -.icon-youtube:before { - content: "\f167"; -} -.icon-xing:before { - content: "\f168"; -} -.icon-xing-sign:before { - content: "\f169"; -} -.icon-youtube-play:before { - content: "\f16a"; -} -.icon-dropbox:before { - content: "\f16b"; -} -.icon-stackexchange:before { - content: "\f16c"; -} -.icon-instagram:before { - content: "\f16d"; -} -.icon-flickr:before { - content: "\f16e"; -} -.icon-adn:before { - content: "\f170"; -} -.icon-bitbucket:before { - content: "\f171"; -} -.icon-bitbucket-sign:before { - content: "\f172"; -} -.icon-tumblr:before { - content: "\f173"; -} -.icon-tumblr-sign:before { - content: "\f174"; -} -.icon-long-arrow-down:before { - content: "\f175"; -} -.icon-long-arrow-up:before { - content: "\f176"; -} -.icon-long-arrow-left:before { - content: "\f177"; -} -.icon-long-arrow-right:before { - content: "\f178"; -} -.icon-apple:before { - content: "\f179"; -} -.icon-windows:before { - content: "\f17a"; -} -.icon-android:before { - content: "\f17b"; -} -.icon-linux:before { - content: "\f17c"; -} -.icon-dribbble:before { - content: "\f17d"; -} -.icon-skype:before { - content: "\f17e"; -} -.icon-foursquare:before { - content: "\f180"; -} -.icon-trello:before { - content: "\f181"; -} -.icon-female:before { - content: "\f182"; -} -.icon-male:before { - content: "\f183"; -} -.icon-gittip:before { - content: "\f184"; -} -.icon-sun:before { - content: "\f185"; -} -.icon-moon:before { - content: "\f186"; -} -.icon-archive:before { - content: "\f187"; -} -.icon-bug:before { - content: "\f188"; -} -.icon-vk:before { - content: "\f189"; -} -.icon-weibo:before { - content: "\f18a"; -} -.icon-renren:before { - content: "\f18b"; -} diff --git a/common/static/fonts/vendor/FontAwesome.otf b/common/static/fonts/vendor/FontAwesome.otf deleted file mode 100644 index 70125459f7d5..000000000000 Binary files a/common/static/fonts/vendor/FontAwesome.otf and /dev/null differ diff --git a/common/static/fonts/vendor/fontawesome-webfont.eot b/common/static/fonts/vendor/fontawesome-webfont.eot deleted file mode 100755 index 0662cb96bfb7..000000000000 Binary files a/common/static/fonts/vendor/fontawesome-webfont.eot and /dev/null differ diff --git a/common/static/fonts/vendor/fontawesome-webfont.svg b/common/static/fonts/vendor/fontawesome-webfont.svg deleted file mode 100755 index 2edb4ec34cbc..000000000000 --- a/common/static/fonts/vendor/fontawesome-webfont.svg +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/common/static/fonts/vendor/fontawesome-webfont.ttf b/common/static/fonts/vendor/fontawesome-webfont.ttf deleted file mode 100755 index d3659246915c..000000000000 Binary files a/common/static/fonts/vendor/fontawesome-webfont.ttf and /dev/null differ diff --git a/common/static/fonts/vendor/fontawesome-webfont.woff b/common/static/fonts/vendor/fontawesome-webfont.woff deleted file mode 100755 index b9bd17e158d8..000000000000 Binary files a/common/static/fonts/vendor/fontawesome-webfont.woff and /dev/null differ diff --git a/common/static/sass/bourbon/_bourbon-deprecated-upcoming.scss b/common/static/sass/bourbon/_bourbon-deprecated-upcoming.scss deleted file mode 100644 index f946b3b456d1..000000000000 --- a/common/static/sass/bourbon/_bourbon-deprecated-upcoming.scss +++ /dev/null @@ -1,8 +0,0 @@ -//************************************************************************// -// These mixins/functions are deprecated -// They will be removed in the next MAJOR version release -//************************************************************************// -@mixin inline-block { - display: inline-block; - @warn "inline-block mixin is deprecated and will be removed in the next major version release"; -} diff --git a/common/static/sass/bourbon/_bourbon.scss b/common/static/sass/bourbon/_bourbon.scss deleted file mode 100644 index eea6e21e9ed8..000000000000 --- a/common/static/sass/bourbon/_bourbon.scss +++ /dev/null @@ -1,79 +0,0 @@ -// Settings -@import "settings/prefixer"; -@import "settings/px-to-em"; -@import "settings/asset-pipeline"; - -// Custom Helpers -@import "helpers/convert-units"; -@import "helpers/gradient-positions-parser"; -@import "helpers/is-num"; -@import "helpers/linear-angle-parser"; -@import "helpers/linear-gradient-parser"; -@import "helpers/linear-positions-parser"; -@import "helpers/linear-side-corner-parser"; -@import "helpers/radial-arg-parser"; -@import "helpers/radial-positions-parser"; -@import "helpers/radial-gradient-parser"; -@import "helpers/render-gradients"; -@import "helpers/shape-size-stripper"; -@import "helpers/str-to-num"; - -// Custom Functions -@import "functions/assign"; -@import "functions/color-lightness"; -@import "functions/flex-grid"; -@import "functions/golden-ratio"; -@import "functions/grid-width"; -@import "functions/modular-scale"; -@import "functions/px-to-em"; -@import "functions/px-to-rem"; -@import "functions/strip-units"; -@import "functions/tint-shade"; -@import "functions/transition-property-name"; -@import "functions/unpack"; - -// CSS3 Mixins -@import "css3/animation"; -@import "css3/appearance"; -@import "css3/backface-visibility"; -@import "css3/background"; -@import "css3/background-image"; -@import "css3/border-image"; -@import "css3/border-radius"; -@import "css3/box-sizing"; -@import "css3/calc"; -@import "css3/columns"; -@import "css3/filter"; -@import "css3/flex-box"; -@import "css3/font-face"; -@import "css3/font-feature-settings"; -@import "css3/hyphens"; -@import "css3/hidpi-media-query"; -@import "css3/image-rendering"; -@import "css3/keyframes"; -@import "css3/linear-gradient"; -@import "css3/perspective"; -@import "css3/radial-gradient"; -@import "css3/transform"; -@import "css3/transition"; -@import "css3/user-select"; -@import "css3/placeholder"; - -// Addons & other mixins -@import "addons/button"; -@import "addons/clearfix"; -@import "addons/directional-values"; -@import "addons/ellipsis"; -@import "addons/font-family"; -@import "addons/hide-text"; -@import "addons/html5-input-types"; -@import "addons/position"; -@import "addons/prefixer"; -@import "addons/retina-image"; -@import "addons/size"; -@import "addons/timing-functions"; -@import "addons/triangle"; -@import "addons/word-wrap"; - -// Soon to be deprecated Mixins -@import "bourbon-deprecated-upcoming"; diff --git a/common/static/sass/bourbon/addons/_button.scss b/common/static/sass/bourbon/addons/_button.scss deleted file mode 100644 index 14a89e480c15..000000000000 --- a/common/static/sass/bourbon/addons/_button.scss +++ /dev/null @@ -1,374 +0,0 @@ -@mixin button ($style: simple, $base-color: #4294f0, $text-size: inherit, $padding: 7px 18px) { - - @if type-of($style) == string and type-of($base-color) == color { - @include buttonstyle($style, $base-color, $text-size, $padding); - } - - @if type-of($style) == string and type-of($base-color) == number { - $padding: $text-size; - $text-size: $base-color; - $base-color: #4294f0; - - @if $padding == inherit { - $padding: 7px 18px; - } - - @include buttonstyle($style, $base-color, $text-size, $padding); - } - - @if type-of($style) == color and type-of($base-color) == color { - $base-color: $style; - $style: simple; - @include buttonstyle($style, $base-color, $text-size, $padding); - } - - @if type-of($style) == color and type-of($base-color) == number { - $padding: $text-size; - $text-size: $base-color; - $base-color: $style; - $style: simple; - - @if $padding == inherit { - $padding: 7px 18px; - } - - @include buttonstyle($style, $base-color, $text-size, $padding); - } - - @if type-of($style) == number { - $padding: $base-color; - $text-size: $style; - $base-color: #4294f0; - $style: simple; - - @if $padding == #4294f0 { - $padding: 7px 18px; - } - - @include buttonstyle($style, $base-color, $text-size, $padding); - } - - &:disabled { - opacity: 0.5; - cursor: not-allowed; - } -} - - -// Selector Style Button -//************************************************************************// -@mixin buttonstyle($type, $b-color, $t-size, $pad) { - // Grayscale button - @if $type == simple and $b-color == grayscale($b-color) { - @include simple($b-color, true, $t-size, $pad); - } - - @if $type == shiny and $b-color == grayscale($b-color) { - @include shiny($b-color, true, $t-size, $pad); - } - - @if $type == pill and $b-color == grayscale($b-color) { - @include pill($b-color, true, $t-size, $pad); - } - - @if $type == flat and $b-color == grayscale($b-color) { - @include flat($b-color, true, $t-size, $pad); - } - - // Colored button - @if $type == simple { - @include simple($b-color, false, $t-size, $pad); - } - - @else if $type == shiny { - @include shiny($b-color, false, $t-size, $pad); - } - - @else if $type == pill { - @include pill($b-color, false, $t-size, $pad); - } - - @else if $type == flat { - @include flat($b-color, false, $t-size, $pad); - } -} - - -// Simple Button -//************************************************************************// -@mixin simple($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { - $color: hsl(0, 0, 100%); - $border: adjust-color($base-color, $saturation: 9%, $lightness: -14%); - $inset-shadow: adjust-color($base-color, $saturation: -8%, $lightness: 15%); - $stop-gradient: adjust-color($base-color, $saturation: 9%, $lightness: -11%); - $text-shadow: adjust-color($base-color, $saturation: 15%, $lightness: -18%); - - @if is-light($base-color) { - $color: hsl(0, 0, 20%); - $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); - } - - @if $grayscale == true { - $border: grayscale($border); - $inset-shadow: grayscale($inset-shadow); - $stop-gradient: grayscale($stop-gradient); - $text-shadow: grayscale($text-shadow); - } - - border: 1px solid $border; - border-radius: 3px; - box-shadow: inset 0 1px 0 0 $inset-shadow; - color: $color; - display: inline-block; - font-size: $textsize; - font-weight: bold; - @include linear-gradient ($base-color, $stop-gradient); - padding: $padding; - text-decoration: none; - text-shadow: 0 1px 0 $text-shadow; - background-clip: padding-box; - - &:hover:not(:disabled) { - $base-color-hover: adjust-color($base-color, $saturation: -4%, $lightness: -5%); - $inset-shadow-hover: adjust-color($base-color, $saturation: -7%, $lightness: 5%); - $stop-gradient-hover: adjust-color($base-color, $saturation: 8%, $lightness: -14%); - - @if $grayscale == true { - $base-color-hover: grayscale($base-color-hover); - $inset-shadow-hover: grayscale($inset-shadow-hover); - $stop-gradient-hover: grayscale($stop-gradient-hover); - } - - box-shadow: inset 0 1px 0 0 $inset-shadow-hover; - cursor: pointer; - @include linear-gradient ($base-color-hover, $stop-gradient-hover); - } - - &:active:not(:disabled), - &:focus:not(:disabled) { - $border-active: adjust-color($base-color, $saturation: 9%, $lightness: -14%); - $inset-shadow-active: adjust-color($base-color, $saturation: 7%, $lightness: -17%); - - @if $grayscale == true { - $border-active: grayscale($border-active); - $inset-shadow-active: grayscale($inset-shadow-active); - } - - border: 1px solid $border-active; - box-shadow: inset 0 0 8px 4px $inset-shadow-active, inset 0 0 8px 4px $inset-shadow-active; - } -} - - -// Shiny Button -//************************************************************************// -@mixin shiny($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { - $color: hsl(0, 0, 100%); - $border: adjust-color($base-color, $red: -117, $green: -111, $blue: -81); - $border-bottom: adjust-color($base-color, $red: -126, $green: -127, $blue: -122); - $fourth-stop: adjust-color($base-color, $red: -79, $green: -70, $blue: -46); - $inset-shadow: adjust-color($base-color, $red: 37, $green: 29, $blue: 12); - $second-stop: adjust-color($base-color, $red: -56, $green: -50, $blue: -33); - $text-shadow: adjust-color($base-color, $red: -140, $green: -141, $blue: -114); - $third-stop: adjust-color($base-color, $red: -86, $green: -75, $blue: -48); - - @if is-light($base-color) { - $color: hsl(0, 0, 20%); - $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); - } - - @if $grayscale == true { - $border: grayscale($border); - $border-bottom: grayscale($border-bottom); - $fourth-stop: grayscale($fourth-stop); - $inset-shadow: grayscale($inset-shadow); - $second-stop: grayscale($second-stop); - $text-shadow: grayscale($text-shadow); - $third-stop: grayscale($third-stop); - } - - border: 1px solid $border; - border-bottom: 1px solid $border-bottom; - border-radius: 5px; - box-shadow: inset 0 1px 0 0 $inset-shadow; - color: $color; - display: inline-block; - font-size: $textsize; - font-weight: bold; - @include linear-gradient(top, $base-color 0%, $second-stop 50%, $third-stop 50%, $fourth-stop 100%); - padding: $padding; - text-align: center; - text-decoration: none; - text-shadow: 0 -1px 1px $text-shadow; - - &:hover:not(:disabled) { - $first-stop-hover: adjust-color($base-color, $red: -13, $green: -15, $blue: -18); - $second-stop-hover: adjust-color($base-color, $red: -66, $green: -62, $blue: -51); - $third-stop-hover: adjust-color($base-color, $red: -93, $green: -85, $blue: -66); - $fourth-stop-hover: adjust-color($base-color, $red: -86, $green: -80, $blue: -63); - - @if $grayscale == true { - $first-stop-hover: grayscale($first-stop-hover); - $second-stop-hover: grayscale($second-stop-hover); - $third-stop-hover: grayscale($third-stop-hover); - $fourth-stop-hover: grayscale($fourth-stop-hover); - } - - cursor: pointer; - @include linear-gradient(top, $first-stop-hover 0%, - $second-stop-hover 50%, - $third-stop-hover 50%, - $fourth-stop-hover 100%); - } - - &:active:not(:disabled), - &:focus:not(:disabled) { - $inset-shadow-active: adjust-color($base-color, $red: -111, $green: -116, $blue: -122); - - @if $grayscale == true { - $inset-shadow-active: grayscale($inset-shadow-active); - } - - box-shadow: inset 0 0 20px 0 $inset-shadow-active; - } -} - - -// Pill Button -//************************************************************************// -@mixin pill($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { - $color: hsl(0, 0, 100%); - $border-bottom: adjust-color($base-color, $hue: 8, $saturation: -11%, $lightness: -26%); - $border-sides: adjust-color($base-color, $hue: 4, $saturation: -21%, $lightness: -21%); - $border-top: adjust-color($base-color, $hue: -1, $saturation: -30%, $lightness: -15%); - $inset-shadow: adjust-color($base-color, $hue: -1, $saturation: -1%, $lightness: 7%); - $stop-gradient: adjust-color($base-color, $hue: 8, $saturation: 14%, $lightness: -10%); - $text-shadow: adjust-color($base-color, $hue: 5, $saturation: -19%, $lightness: -15%); - - @if is-light($base-color) { - $color: hsl(0, 0, 20%); - $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); - } - - @if $grayscale == true { - $border-bottom: grayscale($border-bottom); - $border-sides: grayscale($border-sides); - $border-top: grayscale($border-top); - $inset-shadow: grayscale($inset-shadow); - $stop-gradient: grayscale($stop-gradient); - $text-shadow: grayscale($text-shadow); - } - - border: 1px solid $border-top; - border-color: $border-top $border-sides $border-bottom; - border-radius: 16px; - box-shadow: inset 0 1px 0 0 $inset-shadow; - color: $color; - display: inline-block; - font-size: $textsize; - font-weight: normal; - line-height: 1; - @include linear-gradient ($base-color, $stop-gradient); - padding: $padding; - text-align: center; - text-decoration: none; - text-shadow: 0 -1px 1px $text-shadow; - background-clip: padding-box; - - &:hover:not(:disabled) { - $base-color-hover: adjust-color($base-color, $lightness: -4.5%); - $border-bottom: adjust-color($base-color, $hue: 8, $saturation: 13.5%, $lightness: -32%); - $border-sides: adjust-color($base-color, $hue: 4, $saturation: -2%, $lightness: -27%); - $border-top: adjust-color($base-color, $hue: -1, $saturation: -17%, $lightness: -21%); - $inset-shadow-hover: adjust-color($base-color, $saturation: -1%, $lightness: 3%); - $stop-gradient-hover: adjust-color($base-color, $hue: 8, $saturation: -4%, $lightness: -15.5%); - $text-shadow-hover: adjust-color($base-color, $hue: 5, $saturation: -5%, $lightness: -22%); - - @if $grayscale == true { - $base-color-hover: grayscale($base-color-hover); - $border-bottom: grayscale($border-bottom); - $border-sides: grayscale($border-sides); - $border-top: grayscale($border-top); - $inset-shadow-hover: grayscale($inset-shadow-hover); - $stop-gradient-hover: grayscale($stop-gradient-hover); - $text-shadow-hover: grayscale($text-shadow-hover); - } - - border: 1px solid $border-top; - border-color: $border-top $border-sides $border-bottom; - box-shadow: inset 0 1px 0 0 $inset-shadow-hover; - cursor: pointer; - @include linear-gradient ($base-color-hover, $stop-gradient-hover); - text-shadow: 0 -1px 1px $text-shadow-hover; - background-clip: padding-box; - } - - &:active:not(:disabled), - &:focus:not(:disabled) { - $active-color: adjust-color($base-color, $hue: 4, $saturation: -12%, $lightness: -10%); - $border-active: adjust-color($base-color, $hue: 6, $saturation: -2.5%, $lightness: -30%); - $border-bottom-active: adjust-color($base-color, $hue: 11, $saturation: 6%, $lightness: -31%); - $inset-shadow-active: adjust-color($base-color, $hue: 9, $saturation: 2%, $lightness: -21.5%); - $text-shadow-active: adjust-color($base-color, $hue: 5, $saturation: -12%, $lightness: -21.5%); - - @if $grayscale == true { - $active-color: grayscale($active-color); - $border-active: grayscale($border-active); - $border-bottom-active: grayscale($border-bottom-active); - $inset-shadow-active: grayscale($inset-shadow-active); - $text-shadow-active: grayscale($text-shadow-active); - } - - background: $active-color; - border: 1px solid $border-active; - border-bottom: 1px solid $border-bottom-active; - box-shadow: inset 0 0 6px 3px $inset-shadow-active; - text-shadow: 0 -1px 1px $text-shadow-active; - } -} - - - -// Flat Button -//************************************************************************// -@mixin flat($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { - $color: hsl(0, 0, 100%); - - @if is-light($base-color) { - $color: hsl(0, 0, 20%); - } - - background-color: $base-color; - border-radius: 3px; - border: none; - color: $color; - display: inline-block; - font-size: inherit; - font-weight: bold; - padding: 7px 18px; - text-decoration: none; - background-clip: padding-box; - - &:hover:not(:disabled){ - $base-color-hover: adjust-color($base-color, $saturation: 4%, $lightness: 5%); - - @if $grayscale == true { - $base-color-hover: grayscale($base-color-hover); - } - - background-color: $base-color-hover; - cursor: pointer; - } - - &:active:not(:disabled), - &:focus:not(:disabled) { - $base-color-active: adjust-color($base-color, $saturation: -4%, $lightness: -5%); - - @if $grayscale == true { - $base-color-active: grayscale($base-color-active); - } - - background-color: $base-color-active; - cursor: pointer; - } -} diff --git a/common/static/sass/bourbon/addons/_clearfix.scss b/common/static/sass/bourbon/addons/_clearfix.scss deleted file mode 100644 index 783cfbc79227..000000000000 --- a/common/static/sass/bourbon/addons/_clearfix.scss +++ /dev/null @@ -1,23 +0,0 @@ -// Modern micro clearfix provides an easy way to contain floats without adding additional markup. -// -// Example usage: -// -// // Contain all floats within .wrapper -// .wrapper { -// @include clearfix; -// .content, -// .sidebar { -// float : left; -// } -// } - -@mixin clearfix { - &:after { - content:""; - display:table; - clear:both; - } -} - -// Acknowledgements -// Beat *that* clearfix: [Thierry Koblentz](http://www.css-101.org/articles/clearfix/latest-new-clearfix-so-far.php) diff --git a/common/static/sass/bourbon/addons/_directional-values.scss b/common/static/sass/bourbon/addons/_directional-values.scss deleted file mode 100644 index 742f1031a484..000000000000 --- a/common/static/sass/bourbon/addons/_directional-values.scss +++ /dev/null @@ -1,111 +0,0 @@ -// directional-property mixins are shorthands -// for writing properties like the following -// -// @include margin(null 0 10px); -// ------ -// margin-right: 0; -// margin-bottom: 10px; -// margin-left: 0; -// -// - or - -// -// @include border-style(dotted null); -// ------ -// border-top-style: dotted; -// border-bottom-style: dotted; -// -// ------ -// -// Note: You can also use false instead of null - -@function collapse-directionals($vals) { - $output: null; - - $A: nth( $vals, 1 ); - $B: if( length($vals) < 2, $A, nth($vals, 2)); - $C: if( length($vals) < 3, $A, nth($vals, 3)); - $D: if( length($vals) < 2, $A, nth($vals, if( length($vals) < 4, 2, 4) )); - - @if $A == 0 { $A: 0 } - @if $B == 0 { $B: 0 } - @if $C == 0 { $C: 0 } - @if $D == 0 { $D: 0 } - - @if $A == $B and $A == $C and $A == $D { $output: $A } - @else if $A == $C and $B == $D { $output: $A $B } - @else if $B == $D { $output: $A $B $C } - @else { $output: $A $B $C $D } - - @return $output; -} - -@function contains-falsy($list) { - @each $item in $list { - @if not $item { - @return true; - } - } - - @return false; -} - -@mixin directional-property($pre, $suf, $vals) { - // Property Names - $top: $pre + "-top" + if($suf, "-#{$suf}", ""); - $bottom: $pre + "-bottom" + if($suf, "-#{$suf}", ""); - $left: $pre + "-left" + if($suf, "-#{$suf}", ""); - $right: $pre + "-right" + if($suf, "-#{$suf}", ""); - $all: $pre + if($suf, "-#{$suf}", ""); - - $vals: collapse-directionals($vals); - - @if contains-falsy($vals) { - @if nth($vals, 1) { #{$top}: nth($vals, 1); } - - @if length($vals) == 1 { - @if nth($vals, 1) { #{$right}: nth($vals, 1); } - } @else { - @if nth($vals, 2) { #{$right}: nth($vals, 2); } - } - - // prop: top/bottom right/left - @if length($vals) == 2 { - @if nth($vals, 1) { #{$bottom}: nth($vals, 1); } - @if nth($vals, 2) { #{$left}: nth($vals, 2); } - - // prop: top right/left bottom - } @else if length($vals) == 3 { - @if nth($vals, 3) { #{$bottom}: nth($vals, 3); } - @if nth($vals, 2) { #{$left}: nth($vals, 2); } - - // prop: top right bottom left - } @else if length($vals) == 4 { - @if nth($vals, 3) { #{$bottom}: nth($vals, 3); } - @if nth($vals, 4) { #{$left}: nth($vals, 4); } - } - - // prop: top/right/bottom/left - } @else { - #{$all}: $vals; - } -} - -@mixin margin($vals...) { - @include directional-property(margin, false, $vals...); -} - -@mixin padding($vals...) { - @include directional-property(padding, false, $vals...); -} - -@mixin border-style($vals...) { - @include directional-property(border, style, $vals...); -} - -@mixin border-color($vals...) { - @include directional-property(border, color, $vals...); -} - -@mixin border-width($vals...) { - @include directional-property(border, width, $vals...); -} diff --git a/common/static/sass/bourbon/addons/_ellipsis.scss b/common/static/sass/bourbon/addons/_ellipsis.scss deleted file mode 100644 index a8ea2a4a867d..000000000000 --- a/common/static/sass/bourbon/addons/_ellipsis.scss +++ /dev/null @@ -1,7 +0,0 @@ -@mixin ellipsis($width: 100%) { - display: inline-block; - max-width: $width; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} diff --git a/common/static/sass/bourbon/addons/_font-family.scss b/common/static/sass/bourbon/addons/_font-family.scss deleted file mode 100644 index 31f5d9ca75c5..000000000000 --- a/common/static/sass/bourbon/addons/_font-family.scss +++ /dev/null @@ -1,5 +0,0 @@ -$georgia: Georgia, Cambria, "Times New Roman", Times, serif; -$helvetica: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; -$lucida-grande: "Lucida Grande", Tahoma, Verdana, Arial, sans-serif; -$monospace: "Bitstream Vera Sans Mono", Consolas, Courier, monospace; -$verdana: Verdana, Geneva, sans-serif; diff --git a/common/static/sass/bourbon/addons/_hide-text.scss b/common/static/sass/bourbon/addons/_hide-text.scss deleted file mode 100644 index fc7943811d3c..000000000000 --- a/common/static/sass/bourbon/addons/_hide-text.scss +++ /dev/null @@ -1,10 +0,0 @@ -@mixin hide-text { - overflow: hidden; - - &:before { - content: ""; - display: block; - width: 0; - height: 100%; - } -} diff --git a/common/static/sass/bourbon/addons/_html5-input-types.scss b/common/static/sass/bourbon/addons/_html5-input-types.scss deleted file mode 100644 index 9e9324ae0a70..000000000000 --- a/common/static/sass/bourbon/addons/_html5-input-types.scss +++ /dev/null @@ -1,86 +0,0 @@ -//************************************************************************// -// Generate a variable ($all-text-inputs) with a list of all html5 -// input types that have a text-based input, excluding textarea. -// http://diveintohtml5.org/forms.html -//************************************************************************// -$inputs-list: 'input[type="email"]', - 'input[type="number"]', - 'input[type="password"]', - 'input[type="search"]', - 'input[type="tel"]', - 'input[type="text"]', - 'input[type="url"]', - - // Webkit & Gecko may change the display of these in the future - 'input[type="color"]', - 'input[type="date"]', - 'input[type="datetime"]', - 'input[type="datetime-local"]', - 'input[type="month"]', - 'input[type="time"]', - 'input[type="week"]'; - -// Bare inputs -//************************************************************************// -$all-text-inputs: assign-inputs($inputs-list); - -// Hover Pseudo-class -//************************************************************************// -$all-text-inputs-hover: assign-inputs($inputs-list, hover); - -// Focus Pseudo-class -//************************************************************************// -$all-text-inputs-focus: assign-inputs($inputs-list, focus); - - - -// You must use interpolation on the variable: -// #{$all-text-inputs} -// #{$all-text-inputs-hover} -// #{$all-text-inputs-focus} - -// Example -//************************************************************************// -// #{$all-text-inputs}, textarea { -// border: 1px solid red; -// } - - - -//************************************************************************// -// Generate a variable ($all-button-inputs) with a list of all html5 -// input types that have a button-based input, excluding button. -//************************************************************************// -$inputs-button-list: 'input[type="button"]', - 'input[type="reset"]', - 'input[type="submit"]'; - -// Bare inputs -//************************************************************************// -$all-button-inputs: assign-inputs($inputs-button-list); - -// Hover Pseudo-class -//************************************************************************// -$all-button-inputs-hover: assign-inputs($inputs-button-list, hover); - -// Focus Pseudo-class -//************************************************************************// -$all-button-inputs-focus: assign-inputs($inputs-button-list, focus); - -// Active Pseudo-class -//************************************************************************// -$all-button-inputs-active: assign-inputs($inputs-button-list, active); - - - -// You must use interpolation on the variable: -// #{$all-button-inputs} -// #{$all-button-inputs-hover} -// #{$all-button-inputs-focus} -// #{$all-button-inputs-active} - -// Example -//************************************************************************// -// #{$all-button-inputs}, button { -// border: 1px solid red; -// } diff --git a/common/static/sass/bourbon/addons/_position.scss b/common/static/sass/bourbon/addons/_position.scss deleted file mode 100644 index 7de75182bc0b..000000000000 --- a/common/static/sass/bourbon/addons/_position.scss +++ /dev/null @@ -1,32 +0,0 @@ -@mixin position ($position: relative, $coordinates: null null null null) { - - @if type-of($position) == list { - $coordinates: $position; - $position: relative; - } - - $coordinates: unpack($coordinates); - - $top: nth($coordinates, 1); - $right: nth($coordinates, 2); - $bottom: nth($coordinates, 3); - $left: nth($coordinates, 4); - - position: $position; - - @if ($top and $top == auto) or (type-of($top) == number) { - top: $top; - } - - @if ($right and $right == auto) or (type-of($right) == number) { - right: $right; - } - - @if ($bottom and $bottom == auto) or (type-of($bottom) == number) { - bottom: $bottom; - } - - @if ($left and $left == auto) or (type-of($left) == number) { - left: $left; - } -} diff --git a/common/static/sass/bourbon/addons/_prefixer.scss b/common/static/sass/bourbon/addons/_prefixer.scss deleted file mode 100644 index c32f502758f2..000000000000 --- a/common/static/sass/bourbon/addons/_prefixer.scss +++ /dev/null @@ -1,45 +0,0 @@ -//************************************************************************// -// Example: @include prefixer(border-radius, $radii, webkit ms spec); -//************************************************************************// -// Variables located in /settings/_prefixer.scss - -@mixin prefixer ($property, $value, $prefixes) { - @each $prefix in $prefixes { - @if $prefix == webkit { - @if $prefix-for-webkit { - -webkit-#{$property}: $value; - } - } - @else if $prefix == moz { - @if $prefix-for-mozilla { - -moz-#{$property}: $value; - } - } - @else if $prefix == ms { - @if $prefix-for-microsoft { - -ms-#{$property}: $value; - } - } - @else if $prefix == o { - @if $prefix-for-opera { - -o-#{$property}: $value; - } - } - @else if $prefix == spec { - @if $prefix-for-spec { - #{$property}: $value; - } - } - @else { - @warn "Unrecognized prefix: #{$prefix}"; - } - } -} - -@mixin disable-prefix-for-all() { - $prefix-for-webkit: false !global; - $prefix-for-mozilla: false !global; - $prefix-for-microsoft: false !global; - $prefix-for-opera: false !global; - $prefix-for-spec: false !global; -} diff --git a/common/static/sass/bourbon/addons/_retina-image.scss b/common/static/sass/bourbon/addons/_retina-image.scss deleted file mode 100644 index 3995c1970a6c..000000000000 --- a/common/static/sass/bourbon/addons/_retina-image.scss +++ /dev/null @@ -1,31 +0,0 @@ -@mixin retina-image($filename, $background-size, $extension: png, $retina-filename: null, $retina-suffix: _2x, $asset-pipeline: $asset-pipeline) { - @if $asset-pipeline { - background-image: image-url("#{$filename}.#{$extension}"); - } - @else { - background-image: url("#{$filename}.#{$extension}"); - } - - @include hidpi { - @if $asset-pipeline { - @if $retina-filename { - background-image: image-url("#{$retina-filename}.#{$extension}"); - } - @else { - background-image: image-url("#{$filename}#{$retina-suffix}.#{$extension}"); - } - } - - @else { - @if $retina-filename { - background-image: url("#{$retina-filename}.#{$extension}"); - } - @else { - background-image: url("#{$filename}#{$retina-suffix}.#{$extension}"); - } - } - - background-size: $background-size; - - } -} diff --git a/common/static/sass/bourbon/addons/_size.scss b/common/static/sass/bourbon/addons/_size.scss deleted file mode 100644 index a8653799a7ef..000000000000 --- a/common/static/sass/bourbon/addons/_size.scss +++ /dev/null @@ -1,16 +0,0 @@ -@mixin size($size) { - $height: nth($size, 1); - $width: $height; - - @if length($size) > 1 { - $height: nth($size, 2); - } - - @if $height == auto or (type-of($height) == number and not unitless($height)) { - height: $height; - } - - @if $width == auto or (type-of($width) == number and not unitless($width)) { - width: $width; - } -} diff --git a/common/static/sass/bourbon/addons/_timing-functions.scss b/common/static/sass/bourbon/addons/_timing-functions.scss deleted file mode 100644 index 5ecc6f9dcf93..000000000000 --- a/common/static/sass/bourbon/addons/_timing-functions.scss +++ /dev/null @@ -1,32 +0,0 @@ -// CSS cubic-bezier timing functions. Timing functions courtesy of jquery.easie (github.com/jaukia/easie) -// Timing functions are the same as demo'ed here: http://jqueryui.com/resources/demos/effect/easing.html - -// EASE IN -$ease-in-quad: cubic-bezier(0.550, 0.085, 0.680, 0.530); -$ease-in-cubic: cubic-bezier(0.550, 0.055, 0.675, 0.190); -$ease-in-quart: cubic-bezier(0.895, 0.030, 0.685, 0.220); -$ease-in-quint: cubic-bezier(0.755, 0.050, 0.855, 0.060); -$ease-in-sine: cubic-bezier(0.470, 0.000, 0.745, 0.715); -$ease-in-expo: cubic-bezier(0.950, 0.050, 0.795, 0.035); -$ease-in-circ: cubic-bezier(0.600, 0.040, 0.980, 0.335); -$ease-in-back: cubic-bezier(0.600, -0.280, 0.735, 0.045); - -// EASE OUT -$ease-out-quad: cubic-bezier(0.250, 0.460, 0.450, 0.940); -$ease-out-cubic: cubic-bezier(0.215, 0.610, 0.355, 1.000); -$ease-out-quart: cubic-bezier(0.165, 0.840, 0.440, 1.000); -$ease-out-quint: cubic-bezier(0.230, 1.000, 0.320, 1.000); -$ease-out-sine: cubic-bezier(0.390, 0.575, 0.565, 1.000); -$ease-out-expo: cubic-bezier(0.190, 1.000, 0.220, 1.000); -$ease-out-circ: cubic-bezier(0.075, 0.820, 0.165, 1.000); -$ease-out-back: cubic-bezier(0.175, 0.885, 0.320, 1.275); - -// EASE IN OUT -$ease-in-out-quad: cubic-bezier(0.455, 0.030, 0.515, 0.955); -$ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1.000); -$ease-in-out-quart: cubic-bezier(0.770, 0.000, 0.175, 1.000); -$ease-in-out-quint: cubic-bezier(0.860, 0.000, 0.070, 1.000); -$ease-in-out-sine: cubic-bezier(0.445, 0.050, 0.550, 0.950); -$ease-in-out-expo: cubic-bezier(1.000, 0.000, 0.000, 1.000); -$ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.150, 0.860); -$ease-in-out-back: cubic-bezier(0.680, -0.550, 0.265, 1.550); diff --git a/common/static/sass/bourbon/addons/_triangle.scss b/common/static/sass/bourbon/addons/_triangle.scss deleted file mode 100644 index 573954e41e33..000000000000 --- a/common/static/sass/bourbon/addons/_triangle.scss +++ /dev/null @@ -1,83 +0,0 @@ -@mixin triangle ($size, $color, $direction) { - height: 0; - width: 0; - - $width: nth($size, 1); - $height: nth($size, length($size)); - - $foreground-color: nth($color, 1); - $background-color: if(length($color) == 2, nth($color, 2), transparent); - - @if ($direction == up) or ($direction == down) or ($direction == right) or ($direction == left) { - - $width: $width / 2; - $height: if(length($size) > 1, $height, $height/2); - - @if $direction == up { - border-left: $width solid $background-color; - border-right: $width solid $background-color; - border-bottom: $height solid $foreground-color; - - } @else if $direction == right { - border-top: $width solid $background-color; - border-bottom: $width solid $background-color; - border-left: $height solid $foreground-color; - - } @else if $direction == down { - border-left: $width solid $background-color; - border-right: $width solid $background-color; - border-top: $height solid $foreground-color; - - } @else if $direction == left { - border-top: $width solid $background-color; - border-bottom: $width solid $background-color; - border-right: $height solid $foreground-color; - } - } - - @else if ($direction == up-right) or ($direction == up-left) { - border-top: $height solid $foreground-color; - - @if $direction == up-right { - border-left: $width solid $background-color; - - } @else if $direction == up-left { - border-right: $width solid $background-color; - } - } - - @else if ($direction == down-right) or ($direction == down-left) { - border-bottom: $height solid $foreground-color; - - @if $direction == down-right { - border-left: $width solid $background-color; - - } @else if $direction == down-left { - border-right: $width solid $background-color; - } - } - - @else if ($direction == inset-up) { - border-width: $height $width; - border-style: solid; - border-color: $background-color $background-color $foreground-color; - } - - @else if ($direction == inset-down) { - border-width: $height $width; - border-style: solid; - border-color: $foreground-color $background-color $background-color; - } - - @else if ($direction == inset-right) { - border-width: $width $height; - border-style: solid; - border-color: $background-color $background-color $background-color $foreground-color; - } - - @else if ($direction == inset-left) { - border-width: $width $height; - border-style: solid; - border-color: $background-color $foreground-color $background-color $background-color; - } -} diff --git a/common/static/sass/bourbon/addons/_word-wrap.scss b/common/static/sass/bourbon/addons/_word-wrap.scss deleted file mode 100644 index 9734a597cd05..000000000000 --- a/common/static/sass/bourbon/addons/_word-wrap.scss +++ /dev/null @@ -1,8 +0,0 @@ -@mixin word-wrap($wrap: break-word) { - word-wrap: $wrap; - - @if $wrap == break-word { - overflow-wrap: break-word; - word-break: break-all; - } -} diff --git a/common/static/sass/bourbon/css3/_animation.scss b/common/static/sass/bourbon/css3/_animation.scss deleted file mode 100644 index 08c3dbf157c1..000000000000 --- a/common/static/sass/bourbon/css3/_animation.scss +++ /dev/null @@ -1,52 +0,0 @@ -// http://www.w3.org/TR/css3-animations/#the-animation-name-property- -// Each of these mixins support comma separated lists of values, which allows different transitions for individual properties to be described in a single style rule. Each value in the list corresponds to the value at that same position in the other properties. - -// Official animation shorthand property. -@mixin animation ($animations...) { - @include prefixer(animation, $animations, webkit moz spec); -} - -// Individual Animation Properties -@mixin animation-name ($names...) { - @include prefixer(animation-name, $names, webkit moz spec); -} - - -@mixin animation-duration ($times...) { - @include prefixer(animation-duration, $times, webkit moz spec); -} - - -@mixin animation-timing-function ($motions...) { -// ease | linear | ease-in | ease-out | ease-in-out - @include prefixer(animation-timing-function, $motions, webkit moz spec); -} - - -@mixin animation-iteration-count ($values...) { -// infinite | - @include prefixer(animation-iteration-count, $values, webkit moz spec); -} - - -@mixin animation-direction ($directions...) { -// normal | alternate - @include prefixer(animation-direction, $directions, webkit moz spec); -} - - -@mixin animation-play-state ($states...) { -// running | paused - @include prefixer(animation-play-state, $states, webkit moz spec); -} - - -@mixin animation-delay ($times...) { - @include prefixer(animation-delay, $times, webkit moz spec); -} - - -@mixin animation-fill-mode ($modes...) { -// none | forwards | backwards | both - @include prefixer(animation-fill-mode, $modes, webkit moz spec); -} diff --git a/common/static/sass/bourbon/css3/_appearance.scss b/common/static/sass/bourbon/css3/_appearance.scss deleted file mode 100644 index 3eb16e45de7e..000000000000 --- a/common/static/sass/bourbon/css3/_appearance.scss +++ /dev/null @@ -1,3 +0,0 @@ -@mixin appearance ($value) { - @include prefixer(appearance, $value, webkit moz ms o spec); -} diff --git a/common/static/sass/bourbon/css3/_backface-visibility.scss b/common/static/sass/bourbon/css3/_backface-visibility.scss deleted file mode 100644 index 1161fe60dd1e..000000000000 --- a/common/static/sass/bourbon/css3/_backface-visibility.scss +++ /dev/null @@ -1,6 +0,0 @@ -//************************************************************************// -// Backface-visibility mixin -//************************************************************************// -@mixin backface-visibility($visibility) { - @include prefixer(backface-visibility, $visibility, webkit spec); -} diff --git a/common/static/sass/bourbon/css3/_background-image.scss b/common/static/sass/bourbon/css3/_background-image.scss deleted file mode 100644 index 6abe88be9a5e..000000000000 --- a/common/static/sass/bourbon/css3/_background-image.scss +++ /dev/null @@ -1,42 +0,0 @@ -//************************************************************************// -// Background-image property for adding multiple background images with -// gradients, or for stringing multiple gradients together. -//************************************************************************// - -@mixin background-image($images...) { - $webkit-images: (); - $spec-images: (); - - @each $image in $images { - $webkit-image: (); - $spec-image: (); - - @if (type-of($image) == string) { - $url-str: str-slice($image, 0, 3); - $gradient-type: str-slice($image, 0, 6); - - @if $url-str == "url" { - $webkit-image: $image; - $spec-image: $image; - } - - @else if $gradient-type == "linear" { - $gradients: _linear-gradient-parser($image); - $webkit-image: map-get($gradients, webkit-image); - $spec-image: map-get($gradients, spec-image); - } - - @else if $gradient-type == "radial" { - $gradients: _radial-gradient-parser($image); - $webkit-image: map-get($gradients, webkit-image); - $spec-image: map-get($gradients, spec-image); - } - } - - $webkit-images: append($webkit-images, $webkit-image, comma); - $spec-images: append($spec-images, $spec-image, comma); - } - - background-image: $webkit-images; - background-image: $spec-images; -} diff --git a/common/static/sass/bourbon/css3/_background.scss b/common/static/sass/bourbon/css3/_background.scss deleted file mode 100644 index 9bce9308bf96..000000000000 --- a/common/static/sass/bourbon/css3/_background.scss +++ /dev/null @@ -1,55 +0,0 @@ -//************************************************************************// -// Background property for adding multiple backgrounds using shorthand -// notation. -//************************************************************************// - -@mixin background($backgrounds...) { - $webkit-backgrounds: (); - $spec-backgrounds: (); - - @each $background in $backgrounds { - $webkit-background: (); - $spec-background: (); - $background-type: type-of($background); - - @if $background-type == string or list { - $background-str: if($background-type == list, nth($background, 1), $background); - - $url-str: str-slice($background-str, 0, 3); - $gradient-type: str-slice($background-str, 0, 6); - - @if $url-str == "url" { - $webkit-background: $background; - $spec-background: $background; - } - - @else if $gradient-type == "linear" { - $gradients: _linear-gradient-parser("#{$background}"); - $webkit-background: map-get($gradients, webkit-image); - $spec-background: map-get($gradients, spec-image); - } - - @else if $gradient-type == "radial" { - $gradients: _radial-gradient-parser("#{$background}"); - $webkit-background: map-get($gradients, webkit-image); - $spec-background: map-get($gradients, spec-image); - } - - @else { - $webkit-background: $background; - $spec-background: $background; - } - } - - @else { - $webkit-background: $background; - $spec-background: $background; - } - - $webkit-backgrounds: append($webkit-backgrounds, $webkit-background, comma); - $spec-backgrounds: append($spec-backgrounds, $spec-background, comma); - } - - background: $webkit-backgrounds; - background: $spec-backgrounds; -} diff --git a/common/static/sass/bourbon/css3/_border-image.scss b/common/static/sass/bourbon/css3/_border-image.scss deleted file mode 100644 index e338c2dcd245..000000000000 --- a/common/static/sass/bourbon/css3/_border-image.scss +++ /dev/null @@ -1,59 +0,0 @@ -@mixin border-image($borders...) { - $webkit-borders: (); - $spec-borders: (); - - @each $border in $borders { - $webkit-border: (); - $spec-border: (); - $border-type: type-of($border); - - @if $border-type == string or list { - $border-str: if($border-type == list, nth($border, 1), $border); - - $url-str: str-slice($border-str, 0, 3); - $gradient-type: str-slice($border-str, 0, 6); - - @if $url-str == "url" { - $webkit-border: $border; - $spec-border: $border; - } - - @else if $gradient-type == "linear" { - $gradients: _linear-gradient-parser("#{$border}"); - $webkit-border: map-get($gradients, webkit-image); - $spec-border: map-get($gradients, spec-image); - } - - @else if $gradient-type == "radial" { - $gradients: _radial-gradient-parser("#{$border}"); - $webkit-border: map-get($gradients, webkit-image); - $spec-border: map-get($gradients, spec-image); - } - - @else { - $webkit-border: $border; - $spec-border: $border; - } - } - - @else { - $webkit-border: $border; - $spec-border: $border; - } - - $webkit-borders: append($webkit-borders, $webkit-border, comma); - $spec-borders: append($spec-borders, $spec-border, comma); - } - - -webkit-border-image: $webkit-borders; - border-image: $spec-borders; - border-style: solid; -} - -//Examples: -// @include border-image(url("image.png")); -// @include border-image(url("image.png") 20 stretch); -// @include border-image(linear-gradient(45deg, orange, yellow)); -// @include border-image(linear-gradient(45deg, orange, yellow) stretch); -// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round); -// @include border-image(radial-gradient(top, cover, orange, yellow, orange)); diff --git a/common/static/sass/bourbon/css3/_border-radius.scss b/common/static/sass/bourbon/css3/_border-radius.scss deleted file mode 100644 index 7c1719010907..000000000000 --- a/common/static/sass/bourbon/css3/_border-radius.scss +++ /dev/null @@ -1,22 +0,0 @@ -//************************************************************************// -// Shorthand Border-radius mixins -//************************************************************************// -@mixin border-top-radius($radii) { - @include prefixer(border-top-left-radius, $radii, spec); - @include prefixer(border-top-right-radius, $radii, spec); -} - -@mixin border-bottom-radius($radii) { - @include prefixer(border-bottom-left-radius, $radii, spec); - @include prefixer(border-bottom-right-radius, $radii, spec); -} - -@mixin border-left-radius($radii) { - @include prefixer(border-top-left-radius, $radii, spec); - @include prefixer(border-bottom-left-radius, $radii, spec); -} - -@mixin border-right-radius($radii) { - @include prefixer(border-top-right-radius, $radii, spec); - @include prefixer(border-bottom-right-radius, $radii, spec); -} diff --git a/common/static/sass/bourbon/css3/_box-sizing.scss b/common/static/sass/bourbon/css3/_box-sizing.scss deleted file mode 100644 index f07e1d412e32..000000000000 --- a/common/static/sass/bourbon/css3/_box-sizing.scss +++ /dev/null @@ -1,4 +0,0 @@ -@mixin box-sizing ($box) { -// content-box | border-box | inherit - @include prefixer(box-sizing, $box, webkit moz spec); -} diff --git a/common/static/sass/bourbon/css3/_calc.scss b/common/static/sass/bourbon/css3/_calc.scss deleted file mode 100644 index 94d7e4cef3c7..000000000000 --- a/common/static/sass/bourbon/css3/_calc.scss +++ /dev/null @@ -1,4 +0,0 @@ -@mixin calc($property, $value) { - #{$property}: -webkit-calc(#{$value}); - #{$property}: calc(#{$value}); -} diff --git a/common/static/sass/bourbon/css3/_columns.scss b/common/static/sass/bourbon/css3/_columns.scss deleted file mode 100644 index 96f601c1a81a..000000000000 --- a/common/static/sass/bourbon/css3/_columns.scss +++ /dev/null @@ -1,47 +0,0 @@ -@mixin columns($arg: auto) { -// || - @include prefixer(columns, $arg, webkit moz spec); -} - -@mixin column-count($int: auto) { -// auto || integer - @include prefixer(column-count, $int, webkit moz spec); -} - -@mixin column-gap($length: normal) { -// normal || length - @include prefixer(column-gap, $length, webkit moz spec); -} - -@mixin column-fill($arg: auto) { -// auto || length - @include prefixer(column-fill, $arg, webkit moz spec); -} - -@mixin column-rule($arg) { -// || || - @include prefixer(column-rule, $arg, webkit moz spec); -} - -@mixin column-rule-color($color) { - @include prefixer(column-rule-color, $color, webkit moz spec); -} - -@mixin column-rule-style($style: none) { -// none | hidden | dashed | dotted | double | groove | inset | inset | outset | ridge | solid - @include prefixer(column-rule-style, $style, webkit moz spec); -} - -@mixin column-rule-width ($width: none) { - @include prefixer(column-rule-width, $width, webkit moz spec); -} - -@mixin column-span($arg: none) { -// none || all - @include prefixer(column-span, $arg, webkit moz spec); -} - -@mixin column-width($length: auto) { -// auto || length - @include prefixer(column-width, $length, webkit moz spec); -} diff --git a/common/static/sass/bourbon/css3/_filter.scss b/common/static/sass/bourbon/css3/_filter.scss deleted file mode 100644 index 8560d77676dc..000000000000 --- a/common/static/sass/bourbon/css3/_filter.scss +++ /dev/null @@ -1,5 +0,0 @@ -@mixin filter($function: none) { - // [ - @include prefixer(perspective, $depth, webkit moz spec); -} - -@mixin perspective-origin($value: 50% 50%) { - @include prefixer(perspective-origin, $value, webkit moz spec); -} diff --git a/common/static/sass/bourbon/css3/_placeholder.scss b/common/static/sass/bourbon/css3/_placeholder.scss deleted file mode 100644 index 5682fd097a5a..000000000000 --- a/common/static/sass/bourbon/css3/_placeholder.scss +++ /dev/null @@ -1,8 +0,0 @@ -@mixin placeholder { - $placeholders: ":-webkit-input" ":-moz" "-moz" "-ms-input"; - @each $placeholder in $placeholders { - &:#{$placeholder}-placeholder { - @content; - } - } -} diff --git a/common/static/sass/bourbon/css3/_radial-gradient.scss b/common/static/sass/bourbon/css3/_radial-gradient.scss deleted file mode 100644 index 7a8c3765f16c..000000000000 --- a/common/static/sass/bourbon/css3/_radial-gradient.scss +++ /dev/null @@ -1,39 +0,0 @@ -// Requires Sass 3.1+ -@mixin radial-gradient($G1, $G2, - $G3: null, $G4: null, - $G5: null, $G6: null, - $G7: null, $G8: null, - $G9: null, $G10: null, - $pos: null, - $shape-size: null, - $fallback: null) { - - $data: _radial-arg-parser($G1, $G2, $pos, $shape-size); - $G1: nth($data, 1); - $G2: nth($data, 2); - $pos: nth($data, 3); - $shape-size: nth($data, 4); - - $full: $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10; - - // Strip deprecated cover/contain for spec - $shape-size-spec: _shape-size-stripper($shape-size); - - // Set $G1 as the default fallback color - $first-color: nth($full, 1); - $fallback-color: nth($first-color, 1); - - @if (type-of($fallback) == color) or ($fallback == "transparent") { - $fallback-color: $fallback; - } - - // Add Commas and spaces - $shape-size: if($shape-size, '#{$shape-size}, ', null); - $pos: if($pos, '#{$pos}, ', null); - $pos-spec: if($pos, 'at #{$pos}', null); - $shape-size-spec: if(($shape-size-spec != ' ') and ($pos == null), '#{$shape-size-spec}, ', '#{$shape-size-spec} '); - - background-color: $fallback-color; - background-image: -webkit-radial-gradient(unquote(#{$pos}#{$shape-size}#{$full})); - background-image: unquote("radial-gradient(#{$shape-size-spec}#{$pos-spec}#{$full})"); -} diff --git a/common/static/sass/bourbon/css3/_transform.scss b/common/static/sass/bourbon/css3/_transform.scss deleted file mode 100644 index 8cc35963d555..000000000000 --- a/common/static/sass/bourbon/css3/_transform.scss +++ /dev/null @@ -1,15 +0,0 @@ -@mixin transform($property: none) { -// none | - @include prefixer(transform, $property, webkit moz ms o spec); -} - -@mixin transform-origin($axes: 50%) { -// x-axis - left | center | right | length | % -// y-axis - top | center | bottom | length | % -// z-axis - length - @include prefixer(transform-origin, $axes, webkit moz ms o spec); -} - -@mixin transform-style ($style: flat) { - @include prefixer(transform-style, $style, webkit moz ms o spec); -} diff --git a/common/static/sass/bourbon/css3/_transition.scss b/common/static/sass/bourbon/css3/_transition.scss deleted file mode 100644 index 5ad4c0aed238..000000000000 --- a/common/static/sass/bourbon/css3/_transition.scss +++ /dev/null @@ -1,77 +0,0 @@ -// Shorthand mixin. Supports multiple parentheses-deliminated values for each variable. -// Example: @include transition (all 2s ease-in-out); -// @include transition (opacity 1s ease-in 2s, width 2s ease-out); -// @include transition-property (transform, opacity); - -@mixin transition ($properties...) { - // Fix for vendor-prefix transform property - $needs-prefixes: false; - $webkit: (); - $moz: (); - $spec: (); - - // Create lists for vendor-prefixed transform - @each $list in $properties { - @if nth($list, 1) == "transform" { - $needs-prefixes: true; - $list1: -webkit-transform; - $list2: -moz-transform; - $list3: (); - - @each $var in $list { - $list3: join($list3, $var); - - @if $var != "transform" { - $list1: join($list1, $var); - $list2: join($list2, $var); - } - } - - $webkit: append($webkit, $list1); - $moz: append($moz, $list2); - $spec: append($spec, $list3); - } - - // Create lists for non-prefixed transition properties - @else { - $webkit: append($webkit, $list, comma); - $moz: append($moz, $list, comma); - $spec: append($spec, $list, comma); - } - } - - @if $needs-prefixes { - -webkit-transition: $webkit; - -moz-transition: $moz; - transition: $spec; - } - @else { - @if length($properties) >= 1 { - @include prefixer(transition, $properties, webkit moz spec); - } - - @else { - $properties: all 0.15s ease-out 0s; - @include prefixer(transition, $properties, webkit moz spec); - } - } -} - -@mixin transition-property ($properties...) { - -webkit-transition-property: transition-property-names($properties, 'webkit'); - -moz-transition-property: transition-property-names($properties, 'moz'); - transition-property: transition-property-names($properties, false); -} - -@mixin transition-duration ($times...) { - @include prefixer(transition-duration, $times, webkit moz spec); -} - -@mixin transition-timing-function ($motions...) { -// ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier() - @include prefixer(transition-timing-function, $motions, webkit moz spec); -} - -@mixin transition-delay ($times...) { - @include prefixer(transition-delay, $times, webkit moz spec); -} diff --git a/common/static/sass/bourbon/css3/_user-select.scss b/common/static/sass/bourbon/css3/_user-select.scss deleted file mode 100644 index 1380aa8baa9f..000000000000 --- a/common/static/sass/bourbon/css3/_user-select.scss +++ /dev/null @@ -1,3 +0,0 @@ -@mixin user-select($arg: none) { - @include prefixer(user-select, $arg, webkit moz ms spec); -} diff --git a/common/static/sass/bourbon/functions/_assign.scss b/common/static/sass/bourbon/functions/_assign.scss deleted file mode 100644 index 9a1db93ef749..000000000000 --- a/common/static/sass/bourbon/functions/_assign.scss +++ /dev/null @@ -1,11 +0,0 @@ -@function assign-inputs($inputs, $pseudo: null) { - $list : (); - - @each $input in $inputs { - $input: unquote($input); - $input: if($pseudo, $input + ":" + $pseudo, $input); - $list: append($list, $input, comma); - } - - @return $list; -} \ No newline at end of file diff --git a/common/static/sass/bourbon/functions/_color-lightness.scss b/common/static/sass/bourbon/functions/_color-lightness.scss deleted file mode 100644 index 8c6df4e2564d..000000000000 --- a/common/static/sass/bourbon/functions/_color-lightness.scss +++ /dev/null @@ -1,13 +0,0 @@ -// Programatically determines whether a color is light or dark -// Returns a boolean -// More details here http://robots.thoughtbot.com/closer-look-color-lightness - -@function is-light($hex-color) { - $-local-red: red(rgba($hex-color, 1.0)); - $-local-green: green(rgba($hex-color, 1.0)); - $-local-blue: blue(rgba($hex-color, 1.0)); - - $-local-lightness: ($-local-red * 0.2126 + $-local-green * 0.7152 + $-local-blue * 0.0722) / 255; - - @return $-local-lightness > .6; -} diff --git a/common/static/sass/bourbon/functions/_flex-grid.scss b/common/static/sass/bourbon/functions/_flex-grid.scss deleted file mode 100644 index 3bbd8665732d..000000000000 --- a/common/static/sass/bourbon/functions/_flex-grid.scss +++ /dev/null @@ -1,39 +0,0 @@ -// Flexible grid -@function flex-grid($columns, $container-columns: $fg-max-columns) { - $width: $columns * $fg-column + ($columns - 1) * $fg-gutter; - $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter; - @return percentage($width / $container-width); -} - -// Flexible gutter -@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) { - $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter; - @return percentage($gutter / $container-width); -} - -// The $fg-column, $fg-gutter and $fg-max-columns variables must be defined in your base stylesheet to properly use the flex-grid function. -// This function takes the fluid grid equation (target / context = result) and uses columns to help define each. -// -// The calculation presumes that your column structure will be missing the last gutter: -// -// -- column -- gutter -- column -- gutter -- column -// -// $fg-column: 60px; // Column Width -// $fg-gutter: 25px; // Gutter Width -// $fg-max-columns: 12; // Total Columns For Main Container -// -// div { -// width: flex-grid(4); // returns (315px / 995px) = 31.65829%; -// margin-left: flex-gutter(); // returns (25px / 995px) = 2.51256%; -// -// p { -// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%; -// float: left; -// margin: flex-gutter(4); // returns (25px / 315px) = 7.936508%; -// } -// -// blockquote { -// float: left; -// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%; -// } -// } \ No newline at end of file diff --git a/common/static/sass/bourbon/functions/_golden-ratio.scss b/common/static/sass/bourbon/functions/_golden-ratio.scss deleted file mode 100644 index 463d14a00c17..000000000000 --- a/common/static/sass/bourbon/functions/_golden-ratio.scss +++ /dev/null @@ -1,3 +0,0 @@ -@function golden-ratio($value, $increment) { - @return modular-scale($value, $increment, $golden) -} diff --git a/common/static/sass/bourbon/functions/_grid-width.scss b/common/static/sass/bourbon/functions/_grid-width.scss deleted file mode 100644 index 8e63d83d6023..000000000000 --- a/common/static/sass/bourbon/functions/_grid-width.scss +++ /dev/null @@ -1,13 +0,0 @@ -@function grid-width($n) { - @return $n * $gw-column + ($n - 1) * $gw-gutter; -} - -// The $gw-column and $gw-gutter variables must be defined in your base stylesheet to properly use the grid-width function. -// -// $gw-column: 100px; // Column Width -// $gw-gutter: 40px; // Gutter Width -// -// div { -// width: grid-width(4); // returns 520px; -// margin-left: $gw-gutter; // returns 40px; -// } diff --git a/common/static/sass/bourbon/functions/_modular-scale.scss b/common/static/sass/bourbon/functions/_modular-scale.scss deleted file mode 100644 index afc59eb954de..000000000000 --- a/common/static/sass/bourbon/functions/_modular-scale.scss +++ /dev/null @@ -1,66 +0,0 @@ -// Scaling Variables -$golden: 1.618; -$minor-second: 1.067; -$major-second: 1.125; -$minor-third: 1.2; -$major-third: 1.25; -$perfect-fourth: 1.333; -$augmented-fourth: 1.414; -$perfect-fifth: 1.5; -$minor-sixth: 1.6; -$major-sixth: 1.667; -$minor-seventh: 1.778; -$major-seventh: 1.875; -$octave: 2; -$major-tenth: 2.5; -$major-eleventh: 2.667; -$major-twelfth: 3; -$double-octave: 4; - -@function modular-scale($value, $increment, $ratio) { - $v1: nth($value, 1); - $v2: nth($value, length($value)); - $value: $v1; - - // scale $v2 to just above $v1 - @while $v2 > $v1 { - $v2: ($v2 / $ratio); // will be off-by-1 - } - @while $v2 < $v1 { - $v2: ($v2 * $ratio); // will fix off-by-1 - } - - // check AFTER scaling $v2 to prevent double-counting corner-case - $double-stranded: $v2 > $v1; - - @if $increment > 0 { - @for $i from 1 through $increment { - @if $double-stranded and ($v1 * $ratio) > $v2 { - $value: $v2; - $v2: ($v2 * $ratio); - } @else { - $v1: ($v1 * $ratio); - $value: $v1; - } - } - } - - @if $increment < 0 { - // adjust $v2 to just below $v1 - @if $double-stranded { - $v2: ($v2 / $ratio); - } - - @for $i from $increment through -1 { - @if $double-stranded and ($v1 / $ratio) < $v2 { - $value: $v2; - $v2: ($v2 / $ratio); - } @else { - $v1: ($v1 / $ratio); - $value: $v1; - } - } - } - - @return $value; -} diff --git a/common/static/sass/bourbon/functions/_px-to-em.scss b/common/static/sass/bourbon/functions/_px-to-em.scss deleted file mode 100644 index 4832245e455b..000000000000 --- a/common/static/sass/bourbon/functions/_px-to-em.scss +++ /dev/null @@ -1,13 +0,0 @@ -// Convert pixels to ems -// eg. for a relational value of 12px write em(12) when the parent is 16px -// if the parent is another value say 24px write em(12, 24) - -@function em($pxval, $base: $em-base) { - @if not unitless($pxval) { - $pxval: strip-units($pxval); - } - @if not unitless($base) { - $base: strip-units($base); - } - @return ($pxval / $base) * 1em; -} diff --git a/common/static/sass/bourbon/functions/_px-to-rem.scss b/common/static/sass/bourbon/functions/_px-to-rem.scss deleted file mode 100644 index 96b244e4cb1b..000000000000 --- a/common/static/sass/bourbon/functions/_px-to-rem.scss +++ /dev/null @@ -1,15 +0,0 @@ -// Convert pixels to rems -// eg. for a relational value of 12px write rem(12) -// Assumes $em-base is the font-size of - -@function rem($pxval) { - @if not unitless($pxval) { - $pxval: strip-units($pxval); - } - - $base: $em-base; - @if not unitless($base) { - $base: strip-units($base); - } - @return ($pxval / $base) * 1rem; -} diff --git a/common/static/sass/bourbon/functions/_strip-units.scss b/common/static/sass/bourbon/functions/_strip-units.scss deleted file mode 100644 index 6afc6e601c03..000000000000 --- a/common/static/sass/bourbon/functions/_strip-units.scss +++ /dev/null @@ -1,5 +0,0 @@ -// Srtips the units from a value. e.g. 12px -> 12 - -@function strip-units($val) { - @return ($val / ($val * 0 + 1)); -} diff --git a/common/static/sass/bourbon/functions/_tint-shade.scss b/common/static/sass/bourbon/functions/_tint-shade.scss deleted file mode 100644 index f7172004ac63..000000000000 --- a/common/static/sass/bourbon/functions/_tint-shade.scss +++ /dev/null @@ -1,9 +0,0 @@ -// Add percentage of white to a color -@function tint($color, $percent){ - @return mix(white, $color, $percent); -} - -// Add percentage of black to a color -@function shade($color, $percent){ - @return mix(black, $color, $percent); -} diff --git a/common/static/sass/bourbon/functions/_transition-property-name.scss b/common/static/sass/bourbon/functions/_transition-property-name.scss deleted file mode 100644 index 54cd42281121..000000000000 --- a/common/static/sass/bourbon/functions/_transition-property-name.scss +++ /dev/null @@ -1,22 +0,0 @@ -// Return vendor-prefixed property names if appropriate -// Example: transition-property-names((transform, color, background), moz) -> -moz-transform, color, background -//************************************************************************// -@function transition-property-names($props, $vendor: false) { - $new-props: (); - - @each $prop in $props { - $new-props: append($new-props, transition-property-name($prop, $vendor), comma); - } - - @return $new-props; -} - -@function transition-property-name($prop, $vendor: false) { - // put other properties that need to be prefixed here aswell - @if $vendor and $prop == transform { - @return unquote('-'+$vendor+'-'+$prop); - } - @else { - @return $prop; - } -} \ No newline at end of file diff --git a/common/static/sass/bourbon/functions/_unpack.scss b/common/static/sass/bourbon/functions/_unpack.scss deleted file mode 100644 index 377596365c89..000000000000 --- a/common/static/sass/bourbon/functions/_unpack.scss +++ /dev/null @@ -1,17 +0,0 @@ -// Convert shorthand to the 4-value syntax - -@function unpack($shorthand) { - @if length($shorthand) == 1 { - @return nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1); - } - @else if length($shorthand) == 2 { - @return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 1) nth($shorthand, 2); - } - @else if length($shorthand) == 3 { - @return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 3) nth($shorthand, 2); - } - @else { - @return $shorthand; - } -} - diff --git a/common/static/sass/bourbon/helpers/_convert-units.scss b/common/static/sass/bourbon/helpers/_convert-units.scss deleted file mode 100644 index 3443db397c22..000000000000 --- a/common/static/sass/bourbon/helpers/_convert-units.scss +++ /dev/null @@ -1,15 +0,0 @@ -//************************************************************************// -// Helper function for str-to-num fn. -// Source: http://sassmeister.com/gist/9647408 -//************************************************************************// -@function _convert-units($number, $unit) { - $strings: 'px' 'cm' 'mm' '%' 'ch' 'pica' 'in' 'em' 'rem' 'pt' 'pc' 'ex' 'vw' 'vh' 'vmin' 'vmax', 'deg', 'rad', 'grad', 'turn'; - $units: 1px 1cm 1mm 1% 1ch 1pica 1in 1em 1rem 1pt 1pc 1ex 1vw 1vh 1vmin 1vmax, 1deg, 1rad, 1grad, 1turn; - $index: index($strings, $unit); - - @if not $index { - @warn "Unknown unit `#{$unit}`."; - @return false; - } - @return $number * nth($units, $index); -} diff --git a/common/static/sass/bourbon/helpers/_gradient-positions-parser.scss b/common/static/sass/bourbon/helpers/_gradient-positions-parser.scss deleted file mode 100644 index 07d30b6cf956..000000000000 --- a/common/static/sass/bourbon/helpers/_gradient-positions-parser.scss +++ /dev/null @@ -1,13 +0,0 @@ -@function _gradient-positions-parser($gradient-type, $gradient-positions) { - @if $gradient-positions - and ($gradient-type == linear) - and (type-of($gradient-positions) != color) { - $gradient-positions: _linear-positions-parser($gradient-positions); - } - @else if $gradient-positions - and ($gradient-type == radial) - and (type-of($gradient-positions) != color) { - $gradient-positions: _radial-positions-parser($gradient-positions); - } - @return $gradient-positions; -} diff --git a/common/static/sass/bourbon/helpers/_is-num.scss b/common/static/sass/bourbon/helpers/_is-num.scss deleted file mode 100644 index 71459e1404ad..000000000000 --- a/common/static/sass/bourbon/helpers/_is-num.scss +++ /dev/null @@ -1,8 +0,0 @@ -//************************************************************************// -// Helper for linear-gradient-parser -//************************************************************************// -@function _is-num($char) { - $values: '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 0 1 2 3 4 5 6 7 8 9; - $index: index($values, $char); - @return if($index, true, false); -} diff --git a/common/static/sass/bourbon/helpers/_linear-angle-parser.scss b/common/static/sass/bourbon/helpers/_linear-angle-parser.scss deleted file mode 100644 index e0401ed8df12..000000000000 --- a/common/static/sass/bourbon/helpers/_linear-angle-parser.scss +++ /dev/null @@ -1,25 +0,0 @@ -// Private function for linear-gradient-parser -@function _linear-angle-parser($image, $first-val, $prefix, $suffix) { - $offset: null; - $unit-short: str-slice($first-val, str-length($first-val) - 2, str-length($first-val)); - $unit-long: str-slice($first-val, str-length($first-val) - 3, str-length($first-val)); - - @if ($unit-long == "grad") or - ($unit-long == "turn") { - $offset: if($unit-long == "grad", -100grad * 3, -0.75turn); - } - - @else if ($unit-short == "deg") or - ($unit-short == "rad") { - $offset: if($unit-short == "deg", -90 * 3, 1.6rad); - } - - @if $offset { - $num: _str-to-num($first-val); - - @return ( - webkit-image: -webkit- + $prefix + ($offset - $num) + $suffix, - spec-image: $image - ); - } -} diff --git a/common/static/sass/bourbon/helpers/_linear-gradient-parser.scss b/common/static/sass/bourbon/helpers/_linear-gradient-parser.scss deleted file mode 100644 index 12bcdcda8fda..000000000000 --- a/common/static/sass/bourbon/helpers/_linear-gradient-parser.scss +++ /dev/null @@ -1,41 +0,0 @@ -@function _linear-gradient-parser($image) { - $image: unquote($image); - $gradients: (); - $start: str-index($image, "("); - $end: str-index($image, ","); - $first-val: str-slice($image, $start + 1, $end - 1); - - $prefix: str-slice($image, 0, $start); - $suffix: str-slice($image, $end, str-length($image)); - - $has-multiple-vals: str-index($first-val, " "); - $has-single-position: unquote(_position-flipper($first-val) + ""); - $has-angle: _is-num(str-slice($first-val, 0, 0)); - - @if $has-multiple-vals { - $gradients: _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals); - } - - @else if $has-single-position != "" { - $pos: unquote($has-single-position + ""); - - $gradients: ( - webkit-image: -webkit- + $image, - spec-image: $prefix + "to " + $pos + $suffix - ); - } - - @else if $has-angle { - // Rotate degree for webkit - $gradients: _linear-angle-parser($image, $first-val, $prefix, $suffix); - } - - @else { - $gradients: ( - webkit-image: -webkit- + $image, - spec-image: $image - ); - } - - @return $gradients; -} diff --git a/common/static/sass/bourbon/helpers/_linear-positions-parser.scss b/common/static/sass/bourbon/helpers/_linear-positions-parser.scss deleted file mode 100644 index d26383edce15..000000000000 --- a/common/static/sass/bourbon/helpers/_linear-positions-parser.scss +++ /dev/null @@ -1,61 +0,0 @@ -@function _linear-positions-parser($pos) { - $type: type-of(nth($pos, 1)); - $spec: null; - $degree: null; - $side: null; - $corner: null; - $length: length($pos); - // Parse Side and corner positions - @if ($length > 1) { - @if nth($pos, 1) == "to" { // Newer syntax - $side: nth($pos, 2); - - @if $length == 2 { // eg. to top - // Swap for backwards compatability - $degree: _position-flipper(nth($pos, 2)); - } - @else if $length == 3 { // eg. to top left - $corner: nth($pos, 3); - } - } - @else if $length == 2 { // Older syntax ("top left") - $side: _position-flipper(nth($pos, 1)); - $corner: _position-flipper(nth($pos, 2)); - } - - @if ("#{$side} #{$corner}" == "left top") or ("#{$side} #{$corner}" == "top left") { - $degree: _position-flipper(#{$side}) _position-flipper(#{$corner}); - } - @else if ("#{$side} #{$corner}" == "right top") or ("#{$side} #{$corner}" == "top right") { - $degree: _position-flipper(#{$side}) _position-flipper(#{$corner}); - } - @else if ("#{$side} #{$corner}" == "right bottom") or ("#{$side} #{$corner}" == "bottom right") { - $degree: _position-flipper(#{$side}) _position-flipper(#{$corner}); - } - @else if ("#{$side} #{$corner}" == "left bottom") or ("#{$side} #{$corner}" == "bottom left") { - $degree: _position-flipper(#{$side}) _position-flipper(#{$corner}); - } - $spec: to $side $corner; - } - @else if $length == 1 { - // Swap for backwards compatability - @if $type == string { - $degree: $pos; - $spec: to _position-flipper($pos); - } - @else { - $degree: -270 - $pos; //rotate the gradient opposite from spec - $spec: $pos; - } - } - $degree: unquote($degree + ","); - $spec: unquote($spec + ","); - @return $degree $spec; -} - -@function _position-flipper($pos) { - @return if($pos == left, right, null) - if($pos == right, left, null) - if($pos == top, bottom, null) - if($pos == bottom, top, null); -} diff --git a/common/static/sass/bourbon/helpers/_linear-side-corner-parser.scss b/common/static/sass/bourbon/helpers/_linear-side-corner-parser.scss deleted file mode 100644 index 86ad88fbb7d9..000000000000 --- a/common/static/sass/bourbon/helpers/_linear-side-corner-parser.scss +++ /dev/null @@ -1,31 +0,0 @@ -// Private function for linear-gradient-parser -@function _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals) { - $val-1: str-slice($first-val, 0, $has-multiple-vals - 1 ); - $val-2: str-slice($first-val, $has-multiple-vals + 1, str-length($first-val)); - $val-3: null; - $has-val-3: str-index($val-2, " "); - - @if $has-val-3 { - $val-3: str-slice($val-2, $has-val-3 + 1, str-length($val-2)); - $val-2: str-slice($val-2, 0, $has-val-3 - 1); - } - - $pos: _position-flipper($val-1) _position-flipper($val-2) _position-flipper($val-3); - $pos: unquote($pos + ""); - - // Use old spec for webkit - @if $val-1 == "to" { - @return ( - webkit-image: -webkit- + $prefix + $pos + $suffix, - spec-image: $image - ); - } - - // Bring the code up to spec - @else { - @return ( - webkit-image: -webkit- + $image, - spec-image: $prefix + "to " + $pos + $suffix - ); - } -} diff --git a/common/static/sass/bourbon/helpers/_radial-arg-parser.scss b/common/static/sass/bourbon/helpers/_radial-arg-parser.scss deleted file mode 100644 index a3a3704af5e8..000000000000 --- a/common/static/sass/bourbon/helpers/_radial-arg-parser.scss +++ /dev/null @@ -1,69 +0,0 @@ -@function _radial-arg-parser($G1, $G2, $pos, $shape-size) { - @each $value in $G1, $G2 { - $first-val: nth($value, 1); - $pos-type: type-of($first-val); - $spec-at-index: null; - - // Determine if spec was passed to mixin - @if type-of($value) == list { - $spec-at-index: if(index($value, at), index($value, at), false); - } - @if $spec-at-index { - @if $spec-at-index > 1 { - @for $i from 1 through ($spec-at-index - 1) { - $shape-size: $shape-size nth($value, $i); - } - @for $i from ($spec-at-index + 1) through length($value) { - $pos: $pos nth($value, $i); - } - } - @else if $spec-at-index == 1 { - @for $i from ($spec-at-index + 1) through length($value) { - $pos: $pos nth($value, $i); - } - } - $G1: null; - } - - // If not spec calculate correct values - @else { - @if ($pos-type != color) or ($first-val != "transparent") { - @if ($pos-type == number) - or ($first-val == "center") - or ($first-val == "top") - or ($first-val == "right") - or ($first-val == "bottom") - or ($first-val == "left") { - - $pos: $value; - - @if $pos == $G1 { - $G1: null; - } - } - - @else if - ($first-val == "ellipse") - or ($first-val == "circle") - or ($first-val == "closest-side") - or ($first-val == "closest-corner") - or ($first-val == "farthest-side") - or ($first-val == "farthest-corner") - or ($first-val == "contain") - or ($first-val == "cover") { - - $shape-size: $value; - - @if $value == $G1 { - $G1: null; - } - - @else if $value == $G2 { - $G2: null; - } - } - } - } - } - @return $G1, $G2, $pos, $shape-size; -} diff --git a/common/static/sass/bourbon/helpers/_radial-gradient-parser.scss b/common/static/sass/bourbon/helpers/_radial-gradient-parser.scss deleted file mode 100644 index 6dde50f06400..000000000000 --- a/common/static/sass/bourbon/helpers/_radial-gradient-parser.scss +++ /dev/null @@ -1,50 +0,0 @@ -@function _radial-gradient-parser($image) { - $image: unquote($image); - $gradients: (); - $start: str-index($image, "("); - $end: str-index($image, ","); - $first-val: str-slice($image, $start + 1, $end - 1); - - $prefix: str-slice($image, 0, $start); - $suffix: str-slice($image, $end, str-length($image)); - - $is-spec-syntax: str-index($first-val, "at"); - - @if $is-spec-syntax and $is-spec-syntax > 1 { - $keyword: str-slice($first-val, 1, $is-spec-syntax - 2); - $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val)); - $pos: append($pos, $keyword, comma); - - $gradients: ( - webkit-image: -webkit- + $prefix + $pos + $suffix, - spec-image: $image - ) - } - - @else if $is-spec-syntax == 1 { - $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val)); - - $gradients: ( - webkit-image: -webkit- + $prefix + $pos + $suffix, - spec-image: $image - ) - } - - @else if str-index($image, "cover") or str-index($image, "contain") { - @warn "Radial-gradient needs to be updated to conform to latest spec."; - - $gradients: ( - webkit-image: null, - spec-image: $image - ) - } - - @else { - $gradients: ( - webkit-image: -webkit- + $image, - spec-image: $image - ) - } - - @return $gradients; -} diff --git a/common/static/sass/bourbon/helpers/_radial-positions-parser.scss b/common/static/sass/bourbon/helpers/_radial-positions-parser.scss deleted file mode 100644 index 6a5b47777815..000000000000 --- a/common/static/sass/bourbon/helpers/_radial-positions-parser.scss +++ /dev/null @@ -1,18 +0,0 @@ -@function _radial-positions-parser($gradient-pos) { - $shape-size: nth($gradient-pos, 1); - $pos: nth($gradient-pos, 2); - $shape-size-spec: _shape-size-stripper($shape-size); - - $pre-spec: unquote(if($pos, "#{$pos}, ", null)) - unquote(if($shape-size, "#{$shape-size},", null)); - $pos-spec: if($pos, "at #{$pos}", null); - - $spec: "#{$shape-size-spec} #{$pos-spec}"; - - // Add comma - @if ($spec != ' ') { - $spec: "#{$spec}," - } - - @return $pre-spec $spec; -} diff --git a/common/static/sass/bourbon/helpers/_render-gradients.scss b/common/static/sass/bourbon/helpers/_render-gradients.scss deleted file mode 100644 index 5765676838de..000000000000 --- a/common/static/sass/bourbon/helpers/_render-gradients.scss +++ /dev/null @@ -1,26 +0,0 @@ -// User for linear and radial gradients within background-image or border-image properties - -@function _render-gradients($gradient-positions, $gradients, $gradient-type, $vendor: false) { - $pre-spec: null; - $spec: null; - $vendor-gradients: null; - @if $gradient-type == linear { - @if $gradient-positions { - $pre-spec: nth($gradient-positions, 1); - $spec: nth($gradient-positions, 2); - } - } - @else if $gradient-type == radial { - $pre-spec: nth($gradient-positions, 1); - $spec: nth($gradient-positions, 2); - } - - @if $vendor { - $vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient(#{$pre-spec} $gradients); - } - @else if $vendor == false { - $vendor-gradients: "#{$gradient-type}-gradient(#{$spec} #{$gradients})"; - $vendor-gradients: unquote($vendor-gradients); - } - @return $vendor-gradients; -} diff --git a/common/static/sass/bourbon/helpers/_shape-size-stripper.scss b/common/static/sass/bourbon/helpers/_shape-size-stripper.scss deleted file mode 100644 index ee5eda422050..000000000000 --- a/common/static/sass/bourbon/helpers/_shape-size-stripper.scss +++ /dev/null @@ -1,10 +0,0 @@ -@function _shape-size-stripper($shape-size) { - $shape-size-spec: null; - @each $value in $shape-size { - @if ($value == "cover") or ($value == "contain") { - $value: null; - } - $shape-size-spec: "#{$shape-size-spec} #{$value}"; - } - @return $shape-size-spec; -} diff --git a/common/static/sass/bourbon/helpers/_str-to-num.scss b/common/static/sass/bourbon/helpers/_str-to-num.scss deleted file mode 100644 index b3d616824d3b..000000000000 --- a/common/static/sass/bourbon/helpers/_str-to-num.scss +++ /dev/null @@ -1,50 +0,0 @@ -//************************************************************************// -// Helper function for linear/radial-gradient-parsers. -// Source: http://sassmeister.com/gist/9647408 -//************************************************************************// -@function _str-to-num($string) { - // Matrices - $strings: '0' '1' '2' '3' '4' '5' '6' '7' '8' '9'; - $numbers: 0 1 2 3 4 5 6 7 8 9; - - // Result - $result: 0; - $divider: 0; - $minus: false; - - // Looping through all characters - @for $i from 1 through str-length($string) { - $character: str-slice($string, $i, $i); - $index: index($strings, $character); - - @if $character == '-' { - $minus: true; - } - - @else if $character == '.' { - $divider: 1; - } - - @else { - @if not $index { - $result: if($minus, $result * -1, $result); - @return _convert-units($result, str-slice($string, $i)); - } - - $number: nth($numbers, $index); - - @if $divider == 0 { - $result: $result * 10; - } - - @else { - // Move the decimal dot to the left - $divider: $divider * 10; - $number: $number / $divider; - } - - $result: $result + $number; - } - } - @return if($minus, $result * -1, $result); -} diff --git a/common/static/sass/bourbon/settings/_asset-pipeline.scss b/common/static/sass/bourbon/settings/_asset-pipeline.scss deleted file mode 100644 index d481a6afb162..000000000000 --- a/common/static/sass/bourbon/settings/_asset-pipeline.scss +++ /dev/null @@ -1 +0,0 @@ -$asset-pipeline: false !default; diff --git a/common/static/sass/bourbon/settings/_prefixer.scss b/common/static/sass/bourbon/settings/_prefixer.scss deleted file mode 100644 index ecab49fb5426..000000000000 --- a/common/static/sass/bourbon/settings/_prefixer.scss +++ /dev/null @@ -1,6 +0,0 @@ -// Variable settings for /addons/prefixer.scss -$prefix-for-webkit: true !default; -$prefix-for-mozilla: true !default; -$prefix-for-microsoft: true !default; -$prefix-for-opera: true !default; -$prefix-for-spec: true !default; // required for keyframe mixin diff --git a/common/static/sass/bourbon/settings/_px-to-em.scss b/common/static/sass/bourbon/settings/_px-to-em.scss deleted file mode 100644 index f2f9a3e8dee1..000000000000 --- a/common/static/sass/bourbon/settings/_px-to-em.scss +++ /dev/null @@ -1 +0,0 @@ -$em-base: 16px !default; diff --git a/common/static/sass/neat/_neat-helpers.scss b/common/static/sass/neat/_neat-helpers.scss deleted file mode 100644 index e915c698b945..000000000000 --- a/common/static/sass/neat/_neat-helpers.scss +++ /dev/null @@ -1,7 +0,0 @@ -// Functions -@import "functions/private"; -@import "functions/new-breakpoint"; - -// Settings -@import "settings/grid"; -@import "settings/visual-grid"; diff --git a/common/static/sass/neat/_neat.scss b/common/static/sass/neat/_neat.scss deleted file mode 100644 index e93d636e6b60..000000000000 --- a/common/static/sass/neat/_neat.scss +++ /dev/null @@ -1,21 +0,0 @@ -// Bourbon Neat 1.6.0.pre -// MIT Licensed -// Copyright (c) 2012-2013 thoughtbot, inc. - -// Helpers -@import "neat-helpers"; - -// Grid -@import "grid/private"; -@import "grid/reset"; -@import "grid/grid"; -@import "grid/omega"; -@import "grid/outer-container"; -@import "grid/span-columns"; -@import "grid/row"; -@import "grid/shift"; -@import "grid/pad"; -@import "grid/fill-parent"; -@import "grid/media"; -@import "grid/to-deprecate"; -@import "grid/visual-grid"; diff --git a/common/static/sass/neat/functions/_new-breakpoint.scss b/common/static/sass/neat/functions/_new-breakpoint.scss deleted file mode 100644 index a89c9ce6bba3..000000000000 --- a/common/static/sass/neat/functions/_new-breakpoint.scss +++ /dev/null @@ -1,16 +0,0 @@ -@function new-breakpoint($query:$feature $value $columns, $total-columns: $grid-columns) { - - @if length($query) == 1 { - $query: $default-feature nth($query, 1) $total-columns; - } - - @else if length($query) % 2 == 0 { - $query: append($query, $total-columns); - } - - @if not belongs-to($query, $visual-grid-breakpoints) { - $visual-grid-breakpoints: append($visual-grid-breakpoints, $query, comma) !global; - } - - @return $query; -} diff --git a/common/static/sass/neat/functions/_private.scss b/common/static/sass/neat/functions/_private.scss deleted file mode 100644 index 6f03cfcc7c7d..000000000000 --- a/common/static/sass/neat/functions/_private.scss +++ /dev/null @@ -1,125 +0,0 @@ -// Checks if a number is even -@function is-even($int) { - @if $int%2 == 0 { - @return true; - } - - @return false; -} - -// Checks if an element belongs to a list -@function belongs-to($tested-item, $list) { - @each $item in $list { - @if $item == $tested-item { - @return true; - } - } - - @return false; -} - -// Contains display value -@function contains-display-value($query) { - @if belongs-to(table, $query) or belongs-to(block, $query) or belongs-to(inline-block, $query) or belongs-to(inline, $query) { - @return true; - } - - @return false; -} - -// Parses the first argument of span-columns() -@function container-span($span: $span) { - @if length($span) == 3 { - $container-columns: nth($span, 3); - @return $container-columns; - } - - @else if length($span) == 2 { - $container-columns: nth($span, 2); - @return $container-columns; - } - - @else { - @return $grid-columns; - } -} - -@function container-shift($shift: $shift) { - $parent-columns: $grid-columns !global !default; - - @if length($shift) == 3 { - $container-columns: nth($shift, 3); - @return $container-columns; - } - - @else if length($shift) == 2 { - $container-columns: nth($shift, 2); - @return $container-columns; - } - - @else { - @return $parent-columns; - } -} - -// Generates a striped background -@function gradient-stops($grid-columns, $color: $visual-grid-color) { - $transparent: rgba(0,0,0,0); - - $column-width: flex-grid(1, $grid-columns); - $gutter-width: flex-gutter($grid-columns); - $column-offset: $column-width; - - $values: ($transparent 0, $color 0); - - @for $i from 1 to $grid-columns*2 { - @if is-even($i) { - $values: append($values, $transparent $column-offset, comma); - $values: append($values, $color $column-offset, comma); - $column-offset: $column-offset + $column-width; - } - - @else { - $values: append($values, $color $column-offset, comma); - $values: append($values, $transparent $column-offset, comma); - $column-offset: $column-offset + $gutter-width; - } - } - - @return $values; -} - -// Layout direction -@function get-direction($layout, $default) { - $direction: nil; - - @if $layout == LTR or $layout == RTL { - $direction: direction-from-layout($layout); - } @else { - $direction: direction-from-layout($default); - } - - @return $direction; -} - -@function direction-from-layout($layout) { - $direction: nil; - - @if $layout == LTR { - $direction: right; - } @else { - $direction: left; - } - - @return $direction; -} - -@function get-opposite-direction($direction) { - $opposite-direction: left; - - @if $direction == left { - $opposite-direction: right; - } - - @return $opposite-direction; -} diff --git a/common/static/sass/neat/grid/_fill-parent.scss b/common/static/sass/neat/grid/_fill-parent.scss deleted file mode 100644 index 859c97790bff..000000000000 --- a/common/static/sass/neat/grid/_fill-parent.scss +++ /dev/null @@ -1,7 +0,0 @@ -@mixin fill-parent() { - width: 100%; - - @if $border-box-sizing == false { - @include box-sizing(border-box); - } -} diff --git a/common/static/sass/neat/grid/_grid.scss b/common/static/sass/neat/grid/_grid.scss deleted file mode 100644 index e074b6c536c8..000000000000 --- a/common/static/sass/neat/grid/_grid.scss +++ /dev/null @@ -1,5 +0,0 @@ -@if $border-box-sizing == true { - * { - @include box-sizing(border-box); - } -} diff --git a/common/static/sass/neat/grid/_media.scss b/common/static/sass/neat/grid/_media.scss deleted file mode 100644 index bf27f70ee5c3..000000000000 --- a/common/static/sass/neat/grid/_media.scss +++ /dev/null @@ -1,38 +0,0 @@ -@mixin media($query:$feature $value $columns, $total-columns: $grid-columns) { - @if length($query) == 1 { - @media screen and ($default-feature: nth($query, 1)) { - $default-grid-columns: $grid-columns; - $grid-columns: $total-columns !global; - @content; - $grid-columns: $default-grid-columns !global; - } - } - - @else { - $loopTo: length($query); - $mediaQuery: 'screen and '; - $default-grid-columns: $grid-columns; - $grid-columns: $total-columns !global; - - @if length($query) % 2 != 0 { - $grid-columns: nth($query, $loopTo) !global; - $loopTo: $loopTo - 1; - } - - $i: 1; - @while $i <= $loopTo { - $mediaQuery: $mediaQuery + '(' + nth($query, $i) + ': ' + nth($query, $i + 1) + ') '; - - @if ($i + 1) != $loopTo { - $mediaQuery: $mediaQuery + 'and '; - } - - $i: $i + 2; - } - - @media #{$mediaQuery} { - @content; - $grid-columns: $default-grid-columns !global; - } - } -} diff --git a/common/static/sass/neat/grid/_omega.scss b/common/static/sass/neat/grid/_omega.scss deleted file mode 100644 index c99ed6cf8a95..000000000000 --- a/common/static/sass/neat/grid/_omega.scss +++ /dev/null @@ -1,61 +0,0 @@ -// Remove last element gutter -@mixin omega($query: block, $direction: default) { - $table: if(belongs-to(table, $query), true, false); - $auto: if(belongs-to(auto, $query), true, false); - - @if $direction != default { - @warn "The omega mixin will no longer take a $direction argument. To change the layout direction, use row($direction) or set $default-layout-direction instead." - } @else { - $direction: get-direction($layout-direction, $default-layout-direction); - } - - @if $table { - @warn "The omega mixin no longer removes padding in table layouts." - } - - @if length($query) == 1 { - @if $auto { - &:last-child { - margin-#{$direction}: 0; - } - } - - @else if contains-display-value($query) and $table == false { - margin-#{$direction}: 0; - } - - @else { - @include nth-child($query, $direction); - } - } - - @else if length($query) == 2 { - @if $auto { - &:last-child { - margin-#{$direction}: 0; - } - } - - @else { - @include nth-child(nth($query, 1), $direction); - } - } - - @else { - @warn "Too many arguments passed to the omega() mixin." - } -} - -@mixin nth-child($query, $direction) { - $opposite-direction: get-opposite-direction($direction); - - &:nth-child(#{$query}) { - margin-#{$direction}: 0; - } - - @if type-of($query) == number { - &:nth-child(#{$query}+1) { - clear: $opposite-direction; - } - } -} diff --git a/common/static/sass/neat/grid/_outer-container.scss b/common/static/sass/neat/grid/_outer-container.scss deleted file mode 100644 index 22c541f4553e..000000000000 --- a/common/static/sass/neat/grid/_outer-container.scss +++ /dev/null @@ -1,8 +0,0 @@ -@mixin outer-container { - @include clearfix; - max-width: $max-width; - margin: { - left: auto; - right: auto; - } -} diff --git a/common/static/sass/neat/grid/_pad.scss b/common/static/sass/neat/grid/_pad.scss deleted file mode 100644 index 3ef5d80e45b7..000000000000 --- a/common/static/sass/neat/grid/_pad.scss +++ /dev/null @@ -1,8 +0,0 @@ -@mixin pad($padding: flex-gutter()) { - $padding-list: null; - @each $value in $padding { - $value: if($value == 'default', flex-gutter(), $value); - $padding-list: join($padding-list, $value); - } - padding: $padding-list; -} diff --git a/common/static/sass/neat/grid/_private.scss b/common/static/sass/neat/grid/_private.scss deleted file mode 100644 index b1953368d7c8..000000000000 --- a/common/static/sass/neat/grid/_private.scss +++ /dev/null @@ -1,43 +0,0 @@ -$parent-columns: $grid-columns !default; -$fg-column: $column; -$fg-gutter: $gutter; -$fg-max-columns: $grid-columns; -$container-display-table: false !default; -$layout-direction: nil !default; - -@function flex-grid($columns, $container-columns: $fg-max-columns) { - $width: $columns * $fg-column + ($columns - 1) * $fg-gutter; - $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter; - @return percentage($width / $container-width); -} - -@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) { - $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter; - @return percentage($gutter / $container-width); -} - -@function grid-width($n) { - @return $n * $gw-column + ($n - 1) * $gw-gutter; -} - -@function get-parent-columns($columns) { - @if $columns != $grid-columns { - $parent-columns: $columns !global; - } @else { - $parent-columns: $grid-columns !global; - } - - @return $parent-columns; -} - -@function is-display-table($container-is-display-table, $display) { - $display-table: false; - - @if $container-is-display-table == true { - $display-table: true; - } @else if $display == table { - $display-table: true; - } - - @return $display-table; -} diff --git a/common/static/sass/neat/grid/_reset.scss b/common/static/sass/neat/grid/_reset.scss deleted file mode 100644 index 496c4a775baf..000000000000 --- a/common/static/sass/neat/grid/_reset.scss +++ /dev/null @@ -1,12 +0,0 @@ -@mixin reset-display { - $container-display-table: false !global; -} - -@mixin reset-layout-direction { - $layout-direction: $default-layout-direction !global; -} - -@mixin reset-all { - @include reset-display; - @include reset-layout-direction; -} diff --git a/common/static/sass/neat/grid/_row.scss b/common/static/sass/neat/grid/_row.scss deleted file mode 100644 index 81da6d36a6cf..000000000000 --- a/common/static/sass/neat/grid/_row.scss +++ /dev/null @@ -1,17 +0,0 @@ -@mixin row($display: block, $direction: $default-layout-direction) { - @include clearfix; - $layout-direction: $direction !global; - - @if $display == table { - display: table; - @include fill-parent; - table-layout: fixed; - $container-display-table: true !global; - } - - @else { - display: block; - $container-display-table: false !global; - } -} - diff --git a/common/static/sass/neat/grid/_shift.scss b/common/static/sass/neat/grid/_shift.scss deleted file mode 100644 index 1d27b9b77f9f..000000000000 --- a/common/static/sass/neat/grid/_shift.scss +++ /dev/null @@ -1,16 +0,0 @@ -@mixin shift($n-columns: 1) { - @include shift-in-context($n-columns); -} - -@mixin shift-in-context($shift: $columns of $container-columns) { - $n-columns: nth($shift, 1); - $parent-columns: container-shift($shift) !global; - - $direction: get-direction($layout-direction, $default-layout-direction); - $opposite-direction: get-opposite-direction($direction); - - margin-#{$opposite-direction}: $n-columns * flex-grid(1, $parent-columns) + $n-columns * flex-gutter($parent-columns); - - // Reset nesting context - $parent-columns: $grid-columns !global; -} diff --git a/common/static/sass/neat/grid/_span-columns.scss b/common/static/sass/neat/grid/_span-columns.scss deleted file mode 100644 index c79193d93cf8..000000000000 --- a/common/static/sass/neat/grid/_span-columns.scss +++ /dev/null @@ -1,43 +0,0 @@ -@mixin span-columns($span: $columns of $container-columns, $display: block) { - $columns: nth($span, 1); - $container-columns: container-span($span); - - // Set nesting context (used by shift()) - $parent-columns: get-parent-columns($container-columns) !global; - - $direction: get-direction($layout-direction, $default-layout-direction); - $opposite-direction: get-opposite-direction($direction); - - $display-table: is-display-table($container-display-table, $display); - - @if $display-table { - display: table-cell; - width: percentage($columns / $container-columns); - } @else { - float: #{$opposite-direction}; - - @if $display != no-display { - display: block; - } - - @if $display == collapse { - @warn "The 'collapse' argument will be deprecated. Use 'block-collapse' instead." - } - - @if $display == collapse or $display == block-collapse { - width: flex-grid($columns, $container-columns) + flex-gutter($container-columns); - - &:last-child { - width: flex-grid($columns, $container-columns); - } - - } @else { - margin-#{$direction}: flex-gutter($container-columns); - width: flex-grid($columns, $container-columns); - - &:last-child { - margin-#{$direction}: 0; - } - } - } -} diff --git a/common/static/sass/neat/grid/_to-deprecate.scss b/common/static/sass/neat/grid/_to-deprecate.scss deleted file mode 100644 index d0a681fd12e5..000000000000 --- a/common/static/sass/neat/grid/_to-deprecate.scss +++ /dev/null @@ -1,57 +0,0 @@ -@mixin breakpoint($query:$feature $value $columns, $total-columns: $grid-columns) { - @warn "The breakpoint() mixin was renamed to media() in Neat 1.0. Please update your project with the new syntax before the next version bump."; - - @if length($query) == 1 { - @media screen and ($default-feature: nth($query, 1)) { - $default-grid-columns: $grid-columns; - $grid-columns: $total-columns; - @content; - $grid-columns: $default-grid-columns; - } - } - - @else if length($query) == 2 { - @media screen and (nth($query, 1): nth($query, 2)) { - $default-grid-columns: $grid-columns; - $grid-columns: $total-columns; - @content; - $grid-columns: $default-grid-columns; - } - } - - @else if length($query) == 3 { - @media screen and (nth($query, 1): nth($query, 2)) { - $default-grid-columns: $grid-columns; - $grid-columns: nth($query, 3); - @content; - $grid-columns: $default-grid-columns; - } - } - - @else if length($query) == 4 { - @media screen and (nth($query, 1): nth($query, 2)) and (nth($query, 3): nth($query, 4)) { - $default-grid-columns: $grid-columns; - $grid-columns: $total-columns; - @content; - $grid-columns: $default-grid-columns; - } - } - - @else if length($query) == 5 { - @media screen and (nth($query, 1): nth($query, 2)) and (nth($query, 3): nth($query, 4)) { - $default-grid-columns: $grid-columns; - $grid-columns: nth($query, 5); - @content; - $grid-columns: $default-grid-columns; - } - } - - @else { - @warn "Wrong number of arguments for breakpoint(). Read the documentation for more details."; - } -} - -@mixin nth-omega($nth, $display: block, $direction: default) { - @warn "The nth-omega() mixin is deprecated. Please use omega() instead."; - @include omega($nth $display, $direction); -} diff --git a/common/static/sass/neat/grid/_visual-grid.scss b/common/static/sass/neat/grid/_visual-grid.scss deleted file mode 100644 index 1c822fd32200..000000000000 --- a/common/static/sass/neat/grid/_visual-grid.scss +++ /dev/null @@ -1,41 +0,0 @@ -@mixin grid-column-gradient($values...) { - background-image: deprecated-webkit-gradient(linear, left top, left bottom, $values); - background-image: -webkit-linear-gradient(left, $values); - background-image: -moz-linear-gradient(left, $values); - background-image: -ms-linear-gradient(left, $values); - background-image: -o-linear-gradient(left, $values); - background-image: unquote("linear-gradient(left, #{$values})"); -} - -@if $visual-grid == true or $visual-grid == yes { - body:before { - content: ''; - display: inline-block; - @include grid-column-gradient(gradient-stops($grid-columns)); - height: 100%; - left: 0; - margin: 0 auto; - max-width: $max-width; - opacity: $visual-grid-opacity; - position: fixed; - right: 0; - width: 100%; - pointer-events: none; - - @if $visual-grid-index == back { - z-index: -1; - } - - @else if $visual-grid-index == front { - z-index: 9999; - } - - @each $breakpoint in $visual-grid-breakpoints { - @if $breakpoint != nil { - @include media($breakpoint) { - @include grid-column-gradient(gradient-stops($grid-columns)); - } - } - } - } -} diff --git a/common/static/sass/neat/settings/_grid.scss b/common/static/sass/neat/settings/_grid.scss deleted file mode 100644 index f1dcda478046..000000000000 --- a/common/static/sass/neat/settings/_grid.scss +++ /dev/null @@ -1,7 +0,0 @@ -$column: golden-ratio(1em, 3) !default; // Column width -$gutter: golden-ratio(1em, 1) !default; // Gutter between each two columns -$grid-columns: 12 !default; // Total number of columns in the grid -$max-width: em(1088) !default; // Max-width of the outer container -$border-box-sizing: true !default; // Makes all elements have a border-box layout -$default-feature: min-width; // Default @media feature for the breakpoint() mixin -$default-layout-direction: LTR !default; diff --git a/common/static/sass/neat/settings/_visual-grid.scss b/common/static/sass/neat/settings/_visual-grid.scss deleted file mode 100644 index 611c2b37274d..000000000000 --- a/common/static/sass/neat/settings/_visual-grid.scss +++ /dev/null @@ -1,5 +0,0 @@ -$visual-grid: false !default; // Display the base grid -$visual-grid-color: #EEE !default; -$visual-grid-index: back !default; // Show grid behind content (back) or overlay it over the content (front) -$visual-grid-opacity: 0.4 !default; -$visual-grid-breakpoints: () !default; diff --git a/lms/envs/common.py b/lms/envs/common.py index ec73c49a11b0..20061d3ca6ac 100644 --- a/lms/envs/common.py +++ b/lms/envs/common.py @@ -312,6 +312,7 @@ PROJECT_ROOT = path(__file__).abspath().dirname().dirname() # /edx-platform/lms REPO_ROOT = PROJECT_ROOT.dirname() COMMON_ROOT = REPO_ROOT / "common" +BOWER_ROOT = REPO_ROOT / "bower_components" ENV_ROOT = REPO_ROOT.dirname() # virtualenv dir /edx-platform is in COURSES_ROOT = ENV_ROOT / "data" @@ -676,8 +677,26 @@ STATIC_ROOT = ENV_ROOT / "staticfiles" STATICFILES_DIRS = [ - COMMON_ROOT / "static", - PROJECT_ROOT / "static", + ("css", COMMON_ROOT / "static/css"), + ("css", PROJECT_ROOT / "static/css"), + + ("js", COMMON_ROOT / "static/js"), + ("js", PROJECT_ROOT / "static/js"), + + ("fonts", PROJECT_ROOT / "static/fonts"), + ("font", BOWER_ROOT / "font-awesome/font"), + + ("images", COMMON_ROOT / "static/images"), + ("images", PROJECT_ROOT / "static/images"), + + ("xmodule", COMMON_ROOT / "static/xmodule"), + + # All these should not be here + + ("coffee", COMMON_ROOT / "static/coffee"), + ("coffee", PROJECT_ROOT / "static/coffee"), + + ("sass", PROJECT_ROOT / "static/sass") ] FAVICON_PATH = 'images/favicon.ico' @@ -1059,107 +1078,6 @@ student_profile_js = sorted(rooted_glob(PROJECT_ROOT / 'static', 'js/student_profile/**/*.js')) -PIPELINE_CSS = { - 'style-vendor': { - 'source_filenames': [ - 'css/vendor/font-awesome.css', - 'css/vendor/jquery.qtip.min.css', - 'css/vendor/responsive-carousel/responsive-carousel.css', - 'css/vendor/responsive-carousel/responsive-carousel.slide.css', - ], - 'output_filename': 'css/lms-style-vendor.css', - }, - 'style-vendor-tinymce-content': { - 'source_filenames': [ - 'js/vendor/tinymce/js/tinymce/skins/studio-tmce4/content.min.css' - ], - 'output_filename': 'css/lms-style-vendor-tinymce-content.css', - }, - 'style-vendor-tinymce-skin': { - 'source_filenames': [ - 'js/vendor/tinymce/js/tinymce/skins/studio-tmce4/skin.min.css' - ], - 'output_filename': 'css/lms-style-vendor-tinymce-skin.css', - }, - 'style-app': { - 'source_filenames': [ - 'sass/application.css', - 'sass/ie.css' - ], - 'output_filename': 'css/lms-style-app.css', - }, - 'style-app-extend1': { - 'source_filenames': [ - 'sass/application-extend1.css', - ], - 'output_filename': 'css/lms-style-app-extend1.css', - }, - 'style-app-extend2': { - 'source_filenames': [ - 'sass/application-extend2.css', - ], - 'output_filename': 'css/lms-style-app-extend2.css', - }, - 'style-app-rtl': { - 'source_filenames': [ - 'sass/application-rtl.css', - 'sass/ie-rtl.css' - ], - 'output_filename': 'css/lms-style-app-rtl.css', - }, - 'style-app-extend1-rtl': { - 'source_filenames': [ - 'sass/application-extend1-rtl.css', - ], - 'output_filename': 'css/lms-style-app-extend1-rtl.css', - }, - 'style-app-extend2-rtl': { - 'source_filenames': [ - 'sass/application-extend2-rtl.css', - ], - 'output_filename': 'css/lms-style-app-extend2-rtl.css', - }, - 'style-course-vendor': { - 'source_filenames': [ - 'js/vendor/CodeMirror/codemirror.css', - 'css/vendor/jquery.treeview.css', - 'css/vendor/ui-lightness/jquery-ui-1.8.22.custom.css', - ], - 'output_filename': 'css/lms-style-course-vendor.css', - }, - 'style-course': { - 'source_filenames': [ - 'sass/course.css', - 'xmodule/modules.css', - ], - 'output_filename': 'css/lms-style-course.css', - }, - 'style-course-rtl': { - 'source_filenames': [ - 'sass/course-rtl.css', - 'xmodule/modules.css', - ], - 'output_filename': 'css/lms-style-course-rtl.css', - }, - 'style-xmodule-annotations': { - 'source_filenames': [ - 'css/vendor/ova/annotator.css', - 'css/vendor/ova/edx-annotator.css', - 'css/vendor/ova/video-js.min.css', - 'css/vendor/ova/rangeslider.css', - 'css/vendor/ova/share-annotator.css', - 'css/vendor/ova/richText-annotator.css', - 'css/vendor/ova/tags-annotator.css', - 'css/vendor/ova/flagging-annotator.css', - 'css/vendor/ova/diacritic-annotator.css', - 'css/vendor/ova/grouping-annotator.css', - 'css/vendor/ova/ova.css', - 'js/vendor/ova/catch/css/main.css' - ], - 'output_filename': 'css/lms-style-xmodule-annotations.css', - }, -} - common_js = set(rooted_glob(COMMON_ROOT / 'static', 'coffee/src/**/*.js')) - set(courseware_js + discussion_js + staff_grading_js + open_ended_js + notes_js + instructor_dash_js) project_js = set(rooted_glob(PROJECT_ROOT / 'static', 'coffee/src/**/*.js')) - set(courseware_js + discussion_js + staff_grading_js + open_ended_js + notes_js + instructor_dash_js) @@ -1262,7 +1180,6 @@ os.system("coffee -c %s" % (js_dir / filename)) -PIPELINE_CSS_COMPRESSOR = None PIPELINE_JS_COMPRESSOR = "pipeline.compressors.uglifyjs.UglifyJSCompressor" STATICFILES_IGNORE_PATTERNS = ( diff --git a/lms/envs/dev.py b/lms/envs/dev.py index 8318cc26beea..95552926a4da 100644 --- a/lms/envs/dev.py +++ b/lms/envs/dev.py @@ -265,10 +265,6 @@ FEATURES['AUTH_USE_SHIB'] = True FEATURES['RESTRICT_ENROLL_BY_REG_METHOD'] = True -########################### PIPELINE ################################# - -PIPELINE_SASS_ARGUMENTS = '--debug-info --require {proj_dir}/static/sass/bourbon/lib/bourbon.rb'.format(proj_dir=PROJECT_ROOT) - ########################## ANALYTICS TESTING ######################## ANALYTICS_SERVER_URL = "http://127.0.0.1:9000/" diff --git a/lms/envs/devstack.py b/lms/envs/devstack.py index cdd02fb3295c..e02e3bcb0a8e 100644 --- a/lms/envs/devstack.py +++ b/lms/envs/devstack.py @@ -72,10 +72,6 @@ 'SHOW_TOOLBAR_CALLBACK': lambda _: True, } -########################### PIPELINE ################################# - -PIPELINE_SASS_ARGUMENTS = '--debug-info --require {proj_dir}/static/sass/bourbon/lib/bourbon.rb'.format(proj_dir=PROJECT_ROOT) - ########################### VERIFIED CERTIFICATES ################################# FEATURES['AUTOMATIC_VERIFY_STUDENT_IDENTITY_FOR_TESTING'] = True diff --git a/lms/envs/edx4edx_aws.py b/lms/envs/edx4edx_aws.py index af60e906f89e..98498c675c47 100644 --- a/lms/envs/edx4edx_aws.py +++ b/lms/envs/edx4edx_aws.py @@ -12,7 +12,6 @@ ### Dark code. Should be enabled in local settings for devel. ENABLE_MULTICOURSE = True # set to False to disable multicourse display (see lib.util.views.edxhome) ### -PIPELINE_CSS_COMPRESSOR = None PIPELINE_JS_COMPRESSOR = None COURSE_DEFAULT = 'edx4edx' diff --git a/lms/static/sass/README.txt b/lms/static/sass/README.txt deleted file mode 100644 index 5523d207acb3..000000000000 --- a/lms/static/sass/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -Sass Watch: - -sass --watch lms/static/sass:lms/static/sass -r ./lms/static/sass/bourbon/lib/bourbon.rb diff --git a/lms/static/sass/application-extend1-rtl.scss.mako b/lms/static/sass/application-extend1-rtl.scss.mako index a7e8fe9a7a1c..a01a54482354 100644 --- a/lms/static/sass/application-extend1-rtl.scss.mako +++ b/lms/static/sass/application-extend1-rtl.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // BASE *default edX offerings* // ==================== diff --git a/lms/static/sass/application-extend1.scss.mako b/lms/static/sass/application-extend1.scss.mako index beb628e65395..706e20ceb1ce 100644 --- a/lms/static/sass/application-extend1.scss.mako +++ b/lms/static/sass/application-extend1.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // BASE *default edX offerings* // ==================== diff --git a/lms/static/sass/application-extend2-rtl.scss.mako b/lms/static/sass/application-extend2-rtl.scss.mako index 7535f6a7c4f6..fc81049ba582 100644 --- a/lms/static/sass/application-extend2-rtl.scss.mako +++ b/lms/static/sass/application-extend2-rtl.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // BASE *default edX offerings* // ==================== diff --git a/lms/static/sass/application-extend2.scss.mako b/lms/static/sass/application-extend2.scss.mako index 83c7664286d2..f2530966b2c1 100644 --- a/lms/static/sass/application-extend2.scss.mako +++ b/lms/static/sass/application-extend2.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // BASE *default edX offerings* diff --git a/lms/static/sass/application-rtl.scss.mako b/lms/static/sass/application-rtl.scss.mako index 2336fe85c02f..35beee86cf7e 100644 --- a/lms/static/sass/application-rtl.scss.mako +++ b/lms/static/sass/application-rtl.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages // BASE *default edX offerings* // ==================== diff --git a/lms/static/sass/application.scss.mako b/lms/static/sass/application.scss.mako index 80a8e95a8337..8befd7cb9d65 100644 --- a/lms/static/sass/application.scss.mako +++ b/lms/static/sass/application.scss.mako @@ -4,8 +4,8 @@ // ==================== // libs and resets *do not edit* -@import 'bourbon/bourbon'; // lib - bourbon -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages +@import 'bourbon/dist/bourbon'; // lib - bourbon +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages // BASE *default edX offerings* // ==================== diff --git a/lms/static/sass/base/_grid-settings.scss b/lms/static/sass/base/_grid-settings.scss index 582472519ef4..7b04652920b0 100644 --- a/lms/static/sass/base/_grid-settings.scss +++ b/lms/static/sass/base/_grid-settings.scss @@ -1,4 +1,4 @@ -@import "neat/neat-helpers"; // or "neat-helpers" when in Rails +@import "neat/app/assets/stylesheets/neat-helpers"; // or "neat-helpers" when in Rails /* Change the grid settings */ $max-width: 1200px; diff --git a/lms/static/sass/course-rtl.scss.mako b/lms/static/sass/course-rtl.scss.mako index 05eaee88e85a..38fcee89037d 100644 --- a/lms/static/sass/course-rtl.scss.mako +++ b/lms/static/sass/course-rtl.scss.mako @@ -1,5 +1,5 @@ -@import 'bourbon/bourbon'; -@import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages +@import 'bourbon/dist/bourbon'; +@import 'bi-app-sass/bi-app/bi-app-rtl'; // set the layout for right to left languages @import 'base/reset'; @import 'base/font_face'; diff --git a/lms/static/sass/course.scss.mako b/lms/static/sass/course.scss.mako index eb35050fe9b0..405099e56dc5 100644 --- a/lms/static/sass/course.scss.mako +++ b/lms/static/sass/course.scss.mako @@ -1,5 +1,5 @@ -@import 'bourbon/bourbon'; -@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages +@import 'bourbon/dist/bourbon'; +@import 'bi-app-sass/bi-app/bi-app-ltr'; // set the layout for left to right languages @import 'base/reset'; @import 'base/font_face'; diff --git a/lms/static/sass/ie.scss b/lms/static/sass/ie.scss index 0544f09e342b..5a74e3eea5fc 100644 --- a/lms/static/sass/ie.scss +++ b/lms/static/sass/ie.scss @@ -1,4 +1,4 @@ -@import "bourbon/bourbon"; +@import "bourbon/dist/bourbon"; @import "base/variables"; // These are all quick solutions for IE please rewrite diff --git a/lms/static/sass/shared/_footer.scss b/lms/static/sass/shared/_footer.scss index ac181096ad42..da7dd912d80f 100644 --- a/lms/static/sass/shared/_footer.scss +++ b/lms/static/sass/shared/_footer.scss @@ -1,7 +1,7 @@ // Open edX: LMS footer // ==================== @import '../base/grid-settings'; -@import 'neat/neat'; // lib - Neat +@import 'neat/app/assets/stylesheets/neat'; // lib - Neat .wrapper-footer { box-shadow: 0 -1px 5px 0 rgba(0,0,0, 0.1); diff --git a/lms/static/sass/shared/_header.scss b/lms/static/sass/shared/_header.scss index 9747f952db58..b42ad18ac51a 100644 --- a/lms/static/sass/shared/_header.scss +++ b/lms/static/sass/shared/_header.scss @@ -1,5 +1,5 @@ @import '../base/grid-settings'; -@import 'neat/neat'; // lib - Neat +@import 'neat/app/assets/stylesheets/neat'; // lib - Neat header.global { border-bottom: 1px solid $m-gray; diff --git a/lms/static/sass/vendor/bi-app/_bi-app-ltr.scss b/lms/static/sass/vendor/bi-app/_bi-app-ltr.scss deleted file mode 100755 index 6278a31380e8..000000000000 --- a/lms/static/sass/vendor/bi-app/_bi-app-ltr.scss +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------ -// left to right module -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -@import 'variables-ltr'; -@import 'mixins'; \ No newline at end of file diff --git a/lms/static/sass/vendor/bi-app/_bi-app-rtl.scss b/lms/static/sass/vendor/bi-app/_bi-app-rtl.scss deleted file mode 100755 index 17b7f2e90fe7..000000000000 --- a/lms/static/sass/vendor/bi-app/_bi-app-rtl.scss +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------ -// right to left module -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -@import 'variables-rtl'; -@import 'mixins'; \ No newline at end of file diff --git a/lms/static/sass/vendor/bi-app/_mixins.scss b/lms/static/sass/vendor/bi-app/_mixins.scss deleted file mode 100755 index 353999671d4c..000000000000 --- a/lms/static/sass/vendor/bi-app/_mixins.scss +++ /dev/null @@ -1,294 +0,0 @@ -// ------------------------------------------ -// bi app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// ------------------------------------------ -// Table of contents -// ------------------------------------------ -// padding -// margin -// float -// text align -// clear -// left / right -// border -// - width -// - style -// - color -// - generic -// - radius -// ltr / rtl contents -// ------------------------------------------ - -// generic mixin for properties with values -// (top right bottom left) -// ------------------------------------------ -@mixin bi-app-compact($property, $top, $right, $bottom, $left) { - @if $bi-app-direction == ltr { - #{$property}: $top $right $bottom $left; - } @else { - #{$property}: $top $left $bottom $right; - } -} - -// padding -// ------------------------------------------ -@mixin padding-left($distance) { - padding-#{$bi-app-left}: $distance; -} - -@mixin padding-right($distance) { - padding-#{$bi-app-right}: $distance; -} - -@mixin padding($top, $right, $bottom, $left) { - @include bi-app-compact(padding, $top, $right, $bottom, $left); -} - -// margin -// ------------------------------------------ -@mixin margin-left($distance) { - margin-#{$bi-app-left}: $distance; -} - -@mixin margin-right($distance) { - margin-#{$bi-app-right}: $distance; -} - -@mixin margin($top, $right, $bottom, $left) { - @include bi-app-compact(margin, $top, $right, $bottom, $left); -} - -// float -// ------------------------------------------ -@mixin bi-app-float-left { - float: $bi-app-left; -} - -@mixin bi-app-float-right { - float: $bi-app-right; -} - -@mixin float($direction) { - @if $direction == left { - @include bi-app-float-left; - } @else if $direction == right { - @include bi-app-float-right; - } @else { - float: $direction; - } -} - -// text align -// ------------------------------------------ -@mixin bi-app-text-align-left { - text-align: $bi-app-left; -} - -@mixin bi-app-text-align-right { - text-align: $bi-app-right; -} - -@mixin text-align($direction) { - @if $direction == left { - @include bi-app-text-align-left; - } @else if $direction == right { - @include bi-app-text-align-right; - } @else { - text-align: $direction; - } -} - -// clear -// ------------------------------------------ -@mixin bi-app-clear-left { - clear: $bi-app-left; -} - -@mixin bi-app-clear-right { - clear: $bi-app-right; -} - -@mixin clear($direction) { - @if $direction == left { - @include bi-app-clear-left; - } @else if $direction == right { - @include bi-app-clear-right; - } @else { - clear: $direction; - } -} - -// left / right -// ------------------------------------------ -@mixin left($distance) { - @if $bi-app-direction == ltr { - left: $distance; - } @else if $bi-app-direction == rtl { - right: $distance; - } -} - -@mixin right($distance) { - @if $bi-app-direction == ltr { - right: $distance; - } @else if $bi-app-direction == rtl { - left: $distance; - } -} - -// border -// ------------------------------------------ - -// width -@mixin border-left-width($width) { - border-#{$bi-app-left}-width: $width; -} - -@mixin border-right-width($width) { - border-#{$bi-app-right}-width: $width; -} - -@mixin border-width($top, $right, $bottom, $left) { - @include bi-app-compact(border-width, $top, $right, $bottom, $left); -} - -// style -@mixin border-left-style($style) { - border-#{$bi-app-left}-style: $style; -} - -@mixin border-right-style($style) { - border-#{$bi-app-right}-style: $style; -} - -@mixin border-style($top, $right, $bottom, $left) { - @include bi-app-compact(border-style, $top, $right, $bottom, $left); -} - -// color -@mixin border-left-color($color) { - border-#{$bi-app-left}-color: $color; -} - -@mixin border-right-color($color) { - border-#{$bi-app-right}-color: $color; -} - -@mixin border-color($top, $right, $bottom, $left) { - @include bi-app-compact(border-color, $top, $right, $bottom, $left); -} - -// generic -@mixin border-left($border-style) { - border-#{$bi-app-left}: $border-style; -} - -@mixin border-right($border-style) { - border-#{$bi-app-right}: $border-style; -} - -// radius -@mixin border-top-left-radius($radius) { - -webkit-border-top-#{$bi-app-left}-radius: $radius; - -moz-border-top#{$bi-app-left}-radius: $radius; - border-top-#{$bi-app-left}-radius: $radius; -} - -@mixin border-top-right-radius($radius) { - -webkit-border-top-#{$bi-app-right}-radius: $radius; - -moz-border-top#{$bi-app-right}-radius: $radius; - border-top-#{$bi-app-right}-radius: $radius; -} - -@mixin border-bottom-left-radius($radius) { - -webkit-border-bottom-#{$bi-app-left}-radius: $radius; - -moz-border-bottom#{$bi-app-left}-radius: $radius; - border-bottom-#{$bi-app-left}-radius: $radius; -} - -@mixin border-bottom-right-radius($radius) { - -webkit-border-bottom-#{$bi-app-right}-radius: $radius; - -moz-border-bottom#{$bi-app-right}-radius: $radius; - border-bottom-#{$bi-app-right}-radius: $radius; -} - -@mixin border-right-radius($radius) { - @include border-top-right-radius($radius); - @include border-bottom-right-radius($radius); -} - -@mixin border-left-radius($radius) { - @include border-top-left-radius($radius); - @include border-bottom-left-radius($radius); -} - -@mixin border-top-radius($radius) { - @include border-top-left-radius($radius); - @include border-top-right-radius($radius); -} - -@mixin border-bottom-radius($radius) { - @include border-bottom-left-radius($radius); - @include border-bottom-right-radius($radius); -} - -@mixin border-radius($topLeft, $topRight: null, $bottomRight: null, $bottomLeft: null) { - @if $topRight != null { - @include border-top-left-radius($topLeft); - @include border-top-right-radius($topRight); - @include border-bottom-right-radius($bottomRight); - @include border-bottom-left-radius($bottomLeft); - } @else { - -webkit-border-radius: $topLeft; - -moz-border-radius: $topLeft; - -ms-border-radius: $topLeft; - -o-border-radius: $topLeft; - border-radius: $topLeft; - } -} - -// Returns "en" or "ar", useful for image suffixes. -// Usage: background-image: url(/img/header-#{lang()}.png); -@function lang() { - @if $bi-app-direction == ltr { - @return 'en'; - } @else { - @return 'ar'; - } -} - -// Support for "direction" declaration (renders ltr/rtl). -// Useful for form elements as they swap the text-indent property and align the text accordingly. -@mixin direction { - direction: $bi-app-direction; -} - -// Inverts a percentage value. Example: 97% becames 3%. -// Useful for background-position. -@function bi-app-invert-percentage($percentage) { - @if $bi-app-direction == rtl { - @return 100% - $percentage; - } @else { - @return $percentage; - } -} - -// ltr / rtl contents -// ------------------------------------------ -@mixin ltr { - @if $bi-app-direction == ltr { - @content; - } -} - -@mixin rtl { - @if $bi-app-direction == rtl { - @content; - } -} diff --git a/lms/static/sass/vendor/bi-app/_variables-ltr.scss b/lms/static/sass/vendor/bi-app/_variables-ltr.scss deleted file mode 100755 index 36d5a7b06e15..000000000000 --- a/lms/static/sass/vendor/bi-app/_variables-ltr.scss +++ /dev/null @@ -1,15 +0,0 @@ -// ------------------------------------------ -// left to right variables to be used by bi-app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// namespacing variables with bi-app to -// avoid conflicting with other global variables -$bi-app-left : left; -$bi-app-right : right; -$bi-app-direction : ltr; -$bi-app-invert-direction: rtl; \ No newline at end of file diff --git a/lms/static/sass/vendor/bi-app/_variables-rtl.scss b/lms/static/sass/vendor/bi-app/_variables-rtl.scss deleted file mode 100755 index 7300f1786357..000000000000 --- a/lms/static/sass/vendor/bi-app/_variables-rtl.scss +++ /dev/null @@ -1,15 +0,0 @@ -// ------------------------------------------ -// right to left variables to be used by bi-app mixins -// authors: -// twitter.com/anasnakawa -// twitter.com/victorzamfir -// licensed under the MIT license -// http://www.opensource.org/licenses/mit-license.php -// ------------------------------------------ - -// namespacing variables with bi-app to -// avoid conflicting with other global variables -$bi-app-left : right; -$bi-app-right : left; -$bi-app-direction : rtl; -$bi-app-invert-direction: ltr; \ No newline at end of file diff --git a/lms/static/sass/views/_login-register.scss b/lms/static/sass/views/_login-register.scss index f2f9ce05791d..2a206327ca2e 100644 --- a/lms/static/sass/views/_login-register.scss +++ b/lms/static/sass/views/_login-register.scss @@ -1,7 +1,7 @@ // lms - views - login/register view // ==================== @import '../base/grid-settings'; -@import "neat/neat"; // lib - Neat +@import "neat/app/assets/stylesheets/neat"; // lib - Neat %heading-4 { font-size: 14px; diff --git a/lms/static/sass/views/_verification.scss b/lms/static/sass/views/_verification.scss index b90078474465..4c1fb282cfbd 100644 --- a/lms/static/sass/views/_verification.scss +++ b/lms/static/sass/views/_verification.scss @@ -1,7 +1,7 @@ // lms - views - verification flow // ==================== @import '../base/grid-settings'; -@import 'neat/neat'; // lib - Neat +@import 'neat/app/assets/stylesheets/neat'; // lib - Neat // MISC: extends - button %btn-verify-primary { diff --git a/lms/templates/courseware/courseware-error.html b/lms/templates/courseware/courseware-error.html index 8829ba3811ec..ddd3d4bb51f4 100644 --- a/lms/templates/courseware/courseware-error.html +++ b/lms/templates/courseware/courseware-error.html @@ -5,8 +5,8 @@ <%block name="pagetitle">${_("Courseware")} <%block name="headextra"> -<%static:css group='style-course-vendor'/> -<%static:css group='style-course'/> + + <%include file="/courseware/course_navigation.html" args="active_page='courseware'" /> diff --git a/lms/templates/courseware/courseware.html b/lms/templates/courseware/courseware.html index 4a07bf31dad0..904b29a6516a 100644 --- a/lms/templates/courseware/courseware.html +++ b/lms/templates/courseware/courseware.html @@ -26,8 +26,8 @@ <%block name="headextra"> -<%static:css group='style-course-vendor'/> -<%static:css group='style-course'/> + + <%block name="nav_skip">${"#seq_content" if section_title else "#course-content"} diff --git a/lms/templates/courseware/gradebook.html b/lms/templates/courseware/gradebook.html index a293267c724f..5a32f7b8713e 100644 --- a/lms/templates/courseware/gradebook.html +++ b/lms/templates/courseware/gradebook.html @@ -11,8 +11,8 @@ <%block name="headextra"> -<%static:css group='style-course-vendor'/> -<%static:css group='style-course'/> + +