diff --git a/cms/static/sass/_build.scss b/cms/static/sass/_build.scss new file mode 100644 index 0000000000..34b778e4b8 --- /dev/null +++ b/cms/static/sass/_build.scss @@ -0,0 +1,81 @@ +// ------------------------------ +// Studio: Shared Build Compile + +// About: Sass compile for Studio that are shared between LTR and RTL UI. Configuration and vendor specific imports happen before this shared set of imports are compiled in the style-app-*.scss files. + +// +Vendor and Rebase - *referenced/used vendor presentation and reset* +// ==================== +@import 'reset'; + +// +Base - Utilities +// ==================== +@import 'variables'; +@import 'mixins'; +@import 'mixins-inherited'; + +// +Base - Assets +// ==================== +@import 'assets/fonts'; +@import 'assets/graphics'; // sprites, basic image/figure/svg styling +@import 'assets/anims'; // animations + +// +Base - Starter +// ==================== +@import 'base'; + +// +Base - Elements +// ==================== +@import 'elements/typography'; +@import 'elements/icons'; // references to icons used +@import 'elements/controls'; // buttons, link styles, sliders, etc. +@import 'elements/pagination'; // pagination +@import 'elements/xblocks'; // studio rendering chrome for xblocks +@import 'elements/modules'; // content module patterns +@import 'elements/navigation'; // all archetypes of navigation +@import 'elements/layout'; // various standard layouts +@import 'elements/forms'; +@import 'elements/header'; +@import 'elements/footer'; +@import 'elements/sock'; +@import 'elements/tender-widget'; +@import 'elements/system-feedback'; // alerts, notifications, states +@import 'elements/system-help'; // help UI +@import 'elements/modal'; // interstitial UI, dialogs, modal windows +@import 'elements/vendor'; // overrides to vendor-provided styling +@import 'elements/modal-window'; +@import 'elements/uploaded-assets'; // layout for asset tables + +// +Base - Specific Views +// ==================== +@import 'views/account'; +@import 'views/assets'; +@import 'views/updates'; +@import 'views/dashboard'; +@import 'views/export'; +@import 'views/index'; +@import 'views/course-create'; +@import 'views/import'; +@import 'views/outline'; +@import 'views/settings'; +@import 'views/static-pages'; +@import 'views/unit'; +@import 'views/container'; +@import 'views/users'; +@import 'views/checklists'; +@import 'views/textbooks'; +@import 'views/export-git'; +@import 'views/group-configuration'; +@import 'views/video-upload'; + +// +Base - Contexts +// ==================== +@import 'contexts/ie'; // ie-specific rules (mostly for known/older bugs) + +// +Xmodule +// ==================== +@import 'xmodule/modules/css/module-styles.scss'; +@import 'xmodule/descriptors/css/module-styles.scss'; +@import 'elements/xmodules'; // styling for Studio-specific contexts + +@import 'developer'; // used for any developer-created scss that needs further polish/refactoring +@import 'shame'; // used for any bad-form/orphaned scss diff --git a/cms/static/sass/style-app-rtl.scss b/cms/static/sass/style-app-rtl.scss index 7dddaa7f3c..7bd76516bb 100644 --- a/cms/static/sass/style-app-rtl.scss +++ b/cms/static/sass/style-app-rtl.scss @@ -17,80 +17,4 @@ @import 'bourbon/bourbon'; // lib - bourbon @import 'vendor/bi-app/bi-app-rtl'; // set the layout for right to left languages -// +Vendor and Rebase - *referenced/used vendor presentation and reset* -// ==================== -@import 'reset'; - -// +Base - Utilities -// ==================== -@import 'variables'; -@import 'mixins'; -@import 'mixins-inherited'; - -// +Base - Assets -// ==================== -@import 'assets/fonts'; -@import 'assets/graphics'; // sprites, basic image/figure/svg styling -@import 'assets/anims'; // animations - -// +Base - Starter -// ==================== -@import 'base'; - -// +Base - Elements -// ==================== -@import 'elements/typography'; -@import 'elements/icons'; // references to icons used -@import 'elements/controls'; // buttons, link styles, sliders, etc. -@import 'elements/pagination'; // pagination -@import 'elements/xblocks'; // studio rendering chrome for xblocks -@import 'elements/modules'; // content module patterns -@import 'elements/navigation'; // all archetypes of navigation -@import 'elements/layout'; // various standard layouts -@import 'elements/forms'; -@import 'elements/header'; -@import 'elements/footer'; -@import 'elements/sock'; -@import 'elements/tender-widget'; -@import 'elements/system-feedback'; // alerts, notifications, states -@import 'elements/system-help'; // help UI -@import 'elements/modal'; // interstitial UI, dialogs, modal windows -@import 'elements/vendor'; // overrides to vendor-provided styling -@import 'elements/modal-window'; -@import 'elements/uploaded-assets'; // layout for asset tables - -// +Base - Specific Views -// ==================== -@import 'views/account'; -@import 'views/assets'; -@import 'views/updates'; -@import 'views/dashboard'; -@import 'views/export'; -@import 'views/index'; -@import 'views/course-create'; -@import 'views/import'; -@import 'views/outline'; -@import 'views/settings'; -@import 'views/static-pages'; -@import 'views/unit'; -@import 'views/container'; -@import 'views/users'; -@import 'views/checklists'; -@import 'views/textbooks'; -@import 'views/export-git'; -@import 'views/group-configuration'; -@import 'views/video-upload'; - -// +Base - Contexts -// ==================== -@import 'contexts/ie'; // ie-specific rules (mostly for known/older bugs) - -// +Xmodule -// ==================== -@import 'xmodule/modules/css/module-styles.scss'; -@import 'xmodule/descriptors/css/module-styles.scss'; -@import 'elements/xmodules'; // styling for Studio-specific contexts - -@import 'developer'; // used for any developer-created scss that needs further polish/refactoring -@import 'shame'; // used for any bad-form/orphaned scss - +@import 'build'; // shared app style assets/rendering diff --git a/cms/static/sass/style-app.scss b/cms/static/sass/style-app.scss index 169c3762b5..00db34fabe 100644 --- a/cms/static/sass/style-app.scss +++ b/cms/static/sass/style-app.scss @@ -17,79 +17,4 @@ @import 'bourbon/bourbon'; // lib - bourbon @import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages -// +Vendor and Rebase - *referenced/used vendor presentation and reset* -// ==================== -@import 'reset'; - -// +Base - Utilities -// ==================== -@import 'variables'; -@import 'mixins'; -@import 'mixins-inherited'; - -// +Base - Assets -// ==================== -@import 'assets/fonts'; -@import 'assets/graphics'; // sprites, basic image/figure/svg styling -@import 'assets/anims'; // animations - -// +Base - Starter -// ==================== -@import 'base'; - -// +Base - Elements -// ==================== -@import 'elements/typography'; -@import 'elements/icons'; // references to icons used -@import 'elements/controls'; // buttons, link styles, sliders, etc. -@import 'elements/pagination'; // pagination -@import 'elements/xblocks'; // studio rendering chrome for xblocks -@import 'elements/modules'; // content module patterns -@import 'elements/navigation'; // all archetypes of navigation -@import 'elements/layout'; // various standard layouts -@import 'elements/forms'; -@import 'elements/header'; -@import 'elements/footer'; -@import 'elements/sock'; -@import 'elements/tender-widget'; -@import 'elements/system-feedback'; // alerts, notifications, states -@import 'elements/system-help'; // help UI -@import 'elements/modal'; // interstitial UI, dialogs, modal windows -@import 'elements/vendor'; // overrides to vendor-provided styling -@import 'elements/modal-window'; -@import 'elements/uploaded-assets'; // layout for asset tables - -// +Base - Specific Views -// ==================== -@import 'views/account'; -@import 'views/assets'; -@import 'views/updates'; -@import 'views/dashboard'; -@import 'views/export'; -@import 'views/index'; -@import 'views/course-create'; -@import 'views/import'; -@import 'views/outline'; -@import 'views/settings'; -@import 'views/static-pages'; -@import 'views/unit'; -@import 'views/container'; -@import 'views/users'; -@import 'views/checklists'; -@import 'views/textbooks'; -@import 'views/export-git'; -@import 'views/group-configuration'; -@import 'views/video-upload'; - -// +Base - Contexts -// ==================== -@import 'contexts/ie'; // ie-specific rules (mostly for known/older bugs) - -// +Xmodule -// ==================== -@import 'xmodule/modules/css/module-styles.scss'; -@import 'xmodule/descriptors/css/module-styles.scss'; -@import 'elements/xmodules'; // styling for Studio-specific contexts - -@import 'developer'; // used for any developer-created scss that needs further polish/refactoring -@import 'shame'; // used for any bad-form/orphaned scss +@import 'build'; // shared app style assets/rendering diff --git a/lms/static/sass/_build-course.scss b/lms/static/sass/_build-course.scss new file mode 100644 index 0000000000..cc8d3b0cbf --- /dev/null +++ b/lms/static/sass/_build-course.scss @@ -0,0 +1,67 @@ +// ------------------------------ +// LMS Courseware: Shared Build Compile + +// About: Sass compile for the LMS Courseware Elements that are shared between LTR and RTL UI. Configuration and vendor specific imports happen before this shared set of imports are compiled in the main-*.scss files. + +@import 'base/base'; +@import 'base/extends'; +@import 'base/animations'; +@import 'shared/tooltips'; + +// base - elements +@import 'elements/typography'; +@import 'elements/controls'; +@import 'elements/navigation'; // all archetypes of navigation + +// course - base +@import 'course/layout/courseware_header'; +@import 'course/layout/courseware_preview'; +@import 'course/layout/footer'; +@import 'course/base/mixins'; +@import 'course/base/base'; +@import 'course/base/extends'; +@import 'xmodule/modules/css/module-styles.scss'; +@import 'course/courseware/courseware'; +@import 'course/courseware/sidebar'; +@import 'course/courseware/amplifier'; + + +// course - modules +@import 'course/modules/student-notes'; // student notes +@import 'course/modules/calculator'; // calculator utility +@import 'course/modules/timer'; // timer +@import 'course/modules/chat'; // chat utility + +// course - wiki +@import "course/wiki/basic-html"; +@import "course/wiki/sidebar"; +@import "course/wiki/create"; +@import "course/wiki/wiki"; +@import "course/wiki/table"; + +// course - views +@import "course/info"; +@import "course/syllabus"; // TODO arjun replace w/ custom tabs, see courseware/courses.py +@import "course/textbook"; +@import "course/profile"; +@import "course/gradebook"; +@import "course/tabs"; +@import "course/staff_grading"; +@import "course/rubric"; +@import "course/open_ended_grading"; +@import "course/student-notes"; + +// course - instructor-only views +@import "course/instructor/instructor"; +@import "course/instructor/instructor_2"; +@import "course/instructor/email"; +@import "xmodule/descriptors/css/module-styles.scss"; + +// course - ccx_coach +@import "course/ccx_coach/dashboard"; + +// discussion +@import "course/discussion/form-wmd-toolbar"; + +// search +@import 'search/_search'; diff --git a/lms/static/sass/_build-lms.scss b/lms/static/sass/_build-lms.scss new file mode 100644 index 0000000000..35e512774f --- /dev/null +++ b/lms/static/sass/_build-lms.scss @@ -0,0 +1,79 @@ +// ------------------------------ +// LMS: Shared Build Compile + +// About: Sass compile for the LMS Elements that are shared between LTR and RTL UI. Configuration and vendor specific imports happen before this shared set of imports are compiled in the main-*.scss files. + +@import 'base/base'; + +// base - assets +@import 'base/font_face'; +@import 'base/extends'; +@import 'base/animations'; + +// base - starter +@import 'base/base'; + +// base - elements +@import 'elements/typography'; +@import 'elements/controls'; +@import 'elements/system-feedback'; + +// shared - course +@import 'shared/fields'; +@import 'shared/forms'; +@import 'shared/footer'; +@import 'shared/header'; +@import 'shared/course_object'; +@import 'shared/course_filter'; +@import 'shared/modal'; +@import 'shared/activation_messages'; +@import 'shared/unsubscribe'; + +// shared - platform +@import 'multicourse/home'; +@import 'multicourse/dashboard'; +@import 'multicourse/account'; +@import 'multicourse/courses'; +@import 'multicourse/course_about'; +@import 'multicourse/jobs'; +@import 'multicourse/media-kit'; +@import 'multicourse/about_pages'; +@import 'multicourse/press_release'; +@import 'multicourse/error-pages'; +@import 'multicourse/help'; +@import 'multicourse/edge'; +@import 'multicourse/survey-page'; + +// base - specific views +@import "views/account-settings"; +@import "views/learner-profile"; +@import 'views/login-register'; +@import 'views/verification'; +@import 'views/decoupled-verification'; +@import 'views/shoppingcart'; +@import 'views/homepage'; +@import 'course/auto-cert'; + +// applications +@import "discussion/utilities/variables"; +@import "discussion/mixins"; +@import 'discussion/discussion'; // Process old file after definitions but before everything else +@import "discussion/elements/actions"; +@import "discussion/elements/editor"; +@import "discussion/elements/labels"; +@import "discussion/elements/navigation"; +@import "discussion/views/thread"; +@import "discussion/views/create-edit-post"; +@import "discussion/views/response"; +@import 'discussion/utilities/developer'; +@import 'discussion/utilities/shame'; + +// search +@import 'search/_search'; + +// news +@import 'news'; + +// overrides +@import 'developer'; // used for any developer-created scss that needs further polish/refactoring +@import 'shame'; // used for any bad-form/orphaned scss diff --git a/lms/static/sass/application-rtl.scss.mako b/lms/static/sass/application-rtl.scss.mako index 9e674bfed0..050d8c9a52 100644 --- a/lms/static/sass/application-rtl.scss.mako +++ b/lms/static/sass/application-rtl.scss.mako @@ -28,79 +28,5 @@ @import '${env.get('THEME_NAME')}'; % endif -@import 'base/base'; - -// base - assets -@import 'base/font_face'; -@import 'base/extends'; -@import 'base/animations'; - -// base - starter -@import 'base/base'; - -// base - elements -@import 'elements/typography'; -@import 'elements/controls'; -@import 'elements/system-feedback'; - -// shared - course -@import 'shared/fields'; -@import 'shared/forms'; -@import 'shared/footer'; -@import 'shared/header'; -@import 'shared/course_object'; -@import 'shared/course_filter'; -@import 'shared/modal'; -@import 'shared/activation_messages'; -@import 'shared/unsubscribe'; - -// shared - platform -@import 'multicourse/home'; -@import 'multicourse/dashboard'; -@import 'multicourse/account'; -@import 'multicourse/courses'; -@import 'multicourse/course_about'; -@import 'multicourse/jobs'; -@import 'multicourse/media-kit'; -@import 'multicourse/about_pages'; -@import 'multicourse/press_release'; -@import 'multicourse/error-pages'; -@import 'multicourse/help'; -@import 'multicourse/edge'; -@import 'multicourse/survey-page'; - -// base - specific views -@import "views/account-settings"; -@import "views/learner-profile"; -@import 'views/login-register'; -@import 'views/verification'; -@import 'views/decoupled-verification'; -@import 'views/shoppingcart'; -@import 'views/homepage'; -@import 'course/auto-cert'; - -// applications -@import "discussion/utilities/variables"; -@import "discussion/mixins"; -@import 'discussion/discussion'; // Process old file after definitions but before everything else -@import "discussion/elements/actions"; -@import "discussion/elements/editor"; -@import "discussion/elements/labels"; -@import "discussion/elements/navigation"; -@import "discussion/views/thread"; -@import "discussion/views/create-edit-post"; -@import "discussion/views/response"; -@import 'discussion/utilities/developer'; -@import 'discussion/utilities/shame'; - -@import 'news'; - -## Import styles for search -% if env["FEATURES"].get("ENABLE_DASHBOARD_SEARCH", False): - @import 'search/_search'; -% endif - -@import 'developer'; // used for any developer-created scss that needs further polish/refactoring -@import 'shame'; // used for any bad-form/orphaned scss -## NOTE: needed here for cascade and dependency purposes, but not a great permanent solution +@import 'build-lms'; // shared app style assets/rendering diff --git a/lms/static/sass/application.scss.mako b/lms/static/sass/application.scss.mako index 72f0f63e3e..18b65affbf 100644 --- a/lms/static/sass/application.scss.mako +++ b/lms/static/sass/application.scss.mako @@ -28,78 +28,4 @@ @import '${env.get('THEME_NAME')}'; % endif -@import 'base/base'; - -// base - assets -@import 'base/font_face'; -@import 'base/extends'; -@import 'base/animations'; - -// base - starter -@import 'base/base'; - -// base - elements -@import 'elements/typography'; -@import 'elements/controls'; -@import 'elements/system-feedback'; - -// shared - course -@import 'shared/fields'; -@import 'shared/forms'; -@import 'shared/footer'; -@import 'shared/header'; -@import 'shared/course_object'; -@import 'shared/course_filter'; -@import 'shared/modal'; -@import 'shared/activation_messages'; -@import 'shared/unsubscribe'; - -// shared - platform -@import 'multicourse/home'; -@import 'multicourse/dashboard'; -@import 'multicourse/account'; -@import 'multicourse/courses'; -@import 'multicourse/course_about'; -@import 'multicourse/jobs'; -@import 'multicourse/media-kit'; -@import 'multicourse/about_pages'; -@import 'multicourse/press_release'; -@import 'multicourse/error-pages'; -@import 'multicourse/help'; -@import 'multicourse/edge'; -@import 'multicourse/survey-page'; - -// base - specific views -@import "views/account-settings"; -@import "views/learner-profile"; -@import 'views/login-register'; -@import 'views/verification'; -@import 'views/decoupled-verification'; -@import 'views/shoppingcart'; -@import 'views/homepage'; -@import 'course/auto-cert'; - -// applications -@import "discussion/utilities/variables"; -@import "discussion/mixins"; -@import 'discussion/discussion'; // Process old file after definitions but before everything else -@import "discussion/elements/actions"; -@import "discussion/elements/editor"; -@import "discussion/elements/labels"; -@import "discussion/elements/navigation"; -@import "discussion/views/thread"; -@import "discussion/views/create-edit-post"; -@import "discussion/views/response"; -@import 'discussion/utilities/developer'; -@import 'discussion/utilities/shame'; - -@import 'news'; - -## Import styles for search -% if env["FEATURES"].get("ENABLE_DASHBOARD_SEARCH", False): - @import 'search/_search'; -% endif - -@import 'developer'; // used for any developer-created scss that needs further polish/refactoring -@import 'shame'; // used for any bad-form/orphaned scss -## NOTE: needed here for cascade and dependency purposes, but not a great permanent solution +@import 'build-lms'; // shared app style assets/rendering diff --git a/lms/static/sass/course-rtl.scss.mako b/lms/static/sass/course-rtl.scss.mako index 7468bcf457..2e96d2e36f 100644 --- a/lms/static/sass/course-rtl.scss.mako +++ b/lms/static/sass/course-rtl.scss.mako @@ -19,59 +19,4 @@ @import '${env.get('THEME_NAME')}'; % endif -@import 'base/base'; -@import 'base/extends'; -@import 'base/animations'; -@import 'shared/tooltips'; - -// base - elements -@import 'elements/typography'; -@import 'elements/controls'; -@import 'elements/navigation'; // all archetypes of navigation - - -// course - base -@import 'course/layout/courseware_header'; -@import 'course/layout/courseware_preview'; -@import 'course/layout/footer'; -@import 'course/base/mixins'; -@import 'course/base/base'; -@import 'course/base/extends'; -@import 'xmodule/modules/css/module-styles.scss'; -@import 'course/courseware/courseware'; -@import 'course/courseware/sidebar'; -@import 'course/courseware/amplifier'; - -// course - modules -@import 'course/modules/student-notes'; // student notes -@import 'course/modules/calculator'; // calculator utility -@import 'course/modules/timer'; // timer -@import 'course/modules/chat'; // chat utility - -// course - wiki -@import "course/wiki/basic-html"; -@import "course/wiki/sidebar"; -@import "course/wiki/create"; -@import "course/wiki/wiki"; -@import "course/wiki/table"; - -// course - views -@import "course/info"; -@import "course/syllabus"; // TODO arjun replace w/ custom tabs, see courseware/courses.py -@import "course/textbook"; -@import "course/profile"; -@import "course/gradebook"; -@import "course/tabs"; -@import "course/staff_grading"; -@import "course/rubric"; -@import "course/open_ended_grading"; -@import "course/student-notes"; - -// course - instructor-only views -@import "course/instructor/instructor"; -@import "course/instructor/instructor_2"; -@import "course/instructor/email"; -@import "xmodule/descriptors/css/module-styles.scss"; - -// course - discussion -@import "course/discussion/form-wmd-toolbar"; +@import 'build-course'; // shared app style assets/rendering diff --git a/lms/static/sass/course.scss.mako b/lms/static/sass/course.scss.mako index c749f82f62..e4fbab34b3 100644 --- a/lms/static/sass/course.scss.mako +++ b/lms/static/sass/course.scss.mako @@ -19,66 +19,4 @@ @import '${env.get('THEME_NAME')}'; % endif -@import 'base/base'; -@import 'base/extends'; -@import 'base/animations'; -@import 'shared/tooltips'; - -// base - elements -@import 'elements/typography'; -@import 'elements/controls'; -@import 'elements/navigation'; // all archetypes of navigation - -// course - base -@import 'course/layout/courseware_header'; -@import 'course/layout/courseware_preview'; -@import 'course/layout/footer'; -@import 'course/base/mixins'; -@import 'course/base/base'; -@import 'course/base/extends'; -@import 'xmodule/modules/css/module-styles.scss'; -@import 'course/courseware/courseware'; -@import 'course/courseware/sidebar'; -@import 'course/courseware/amplifier'; - -## Import styles for search -% if env["FEATURES"].get("ENABLE_COURSEWARE_SEARCH"): - @import 'search/_search'; -% endif - -// course - modules -@import 'course/modules/student-notes'; // student notes -@import 'course/modules/calculator'; // calculator utility -@import 'course/modules/timer'; // timer -@import 'course/modules/chat'; // chat utility - -// course - wiki -@import "course/wiki/basic-html"; -@import "course/wiki/sidebar"; -@import "course/wiki/create"; -@import "course/wiki/wiki"; -@import "course/wiki/table"; - -// course - views -@import "course/info"; -@import "course/syllabus"; // TODO arjun replace w/ custom tabs, see courseware/courses.py -@import "course/textbook"; -@import "course/profile"; -@import "course/gradebook"; -@import "course/tabs"; -@import "course/staff_grading"; -@import "course/rubric"; -@import "course/open_ended_grading"; -@import "course/student-notes"; - -// course - instructor-only views -@import "course/instructor/instructor"; -@import "course/instructor/instructor_2"; -@import "course/instructor/email"; -@import "xmodule/descriptors/css/module-styles.scss"; - -// course - ccx_coach -@import "course/ccx_coach/dashboard"; - -// discussion -@import "course/discussion/form-wmd-toolbar"; +@import 'build-course'; // shared app style assets/rendering