diff --git a/.gitignore b/.gitignore index afde3d861456..55da3a2e5525 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ assets/hashes.js backend_prod_files/* local_compiled_js/* core/templates/prod/* +core/templates/dev/head/dist/* core/tests/.browserstack.env node_modules/* .coverage* diff --git a/app.yaml b/app.yaml index 47ddda043765..380b6b1210b0 100644 --- a/app.yaml +++ b/app.yaml @@ -43,6 +43,11 @@ handlers: expiration: "90d" # DEVELOPMENT STATIC +- url: /dist + static_dir: core/templates/dev/head/dist + secure: always + application_readable: true + expiration: "0" - url: /assets static_dir: assets secure: always @@ -61,9 +66,9 @@ handlers: upload: local_compiled_js/core/templates/dev/head/(.*\.(js))$ secure: always expiration: "0" -- url: /templates/dev/head/(.*directive\.html)$ +- url: /templates/dev/head/(.*\.(html))$ static_files: core/templates/dev/head/\1 - upload: core/templates/dev/head/(.*directive\.html)$ + upload: core/templates/dev/head/(.*\.(html))$ secure: always expiration: "0" application_readable: true diff --git a/core/controllers/admin.py b/core/controllers/admin.py index 865ccae8c00d..d6917e315536 100644 --- a/core/controllers/admin.py +++ b/core/controllers/admin.py @@ -111,7 +111,7 @@ def get(self): 'role_graph_data': role_services.get_role_graph_data() }) - self.render_template('pages/admin/admin.html') + self.render_template('dist/admin.html') class AdminHandler(base.BaseHandler): diff --git a/core/controllers/base.py b/core/controllers/base.py index cf7d1893a02f..f9b07d6b0365 100755 --- a/core/controllers/base.py +++ b/core/controllers/base.py @@ -387,7 +387,7 @@ def _render_exception_json_or_html(self, return_type, values): self.render_template( 'pages/error/error_iframed.html', iframe_restriction=None) else: - self.render_template('pages/error/error.html') + self.render_template('dist/error.html') else: if return_type != feconf.HANDLER_TYPE_JSON and ( return_type != feconf.HANDLER_TYPE_DOWNLOADABLE): diff --git a/core/controllers/collection_editor.py b/core/controllers/collection_editor.py index 2d478c7fa71e..9afbd3db9b11 100644 --- a/core/controllers/collection_editor.py +++ b/core/controllers/collection_editor.py @@ -21,6 +21,7 @@ from core.controllers import acl_decorators from core.controllers import base from core.domain import collection_services +from core.domain import interaction_registry from core.domain import rights_manager from core.domain import search_services from core.domain import summary_services @@ -67,9 +68,10 @@ def get(self, collection_id): feconf.SHOW_COLLECTION_NAVIGATION_TAB_STATS), 'TAG_REGEX': feconf.TAG_REGEX, 'title': collection.title, + 'INTERACTION_SPECS': interaction_registry.Registry.get_all_specs(), }) - self.render_template('pages/collection_editor/collection_editor.html') + self.render_template('dist/collection_editor.html') class EditableCollectionDataHandler(CollectionEditorHandler): diff --git a/core/controllers/collection_viewer.py b/core/controllers/collection_viewer.py index c91e002e36aa..bf491f02af92 100644 --- a/core/controllers/collection_viewer.py +++ b/core/controllers/collection_viewer.py @@ -49,7 +49,7 @@ def get(self, collection_id): 'meta_description': utils.capitalize_string(collection.objective) }) - self.render_template('pages/collection_player/collection_player.html') + self.render_template('dist/collection_player.html') class CollectionDataHandler(base.BaseHandler): diff --git a/core/controllers/creator_dashboard.py b/core/controllers/creator_dashboard.py index 08c8d4727c0e..09fe85184d8e 100644 --- a/core/controllers/creator_dashboard.py +++ b/core/controllers/creator_dashboard.py @@ -67,7 +67,7 @@ def get(self): 'meta_description': feconf.CREATOR_DASHBOARD_PAGE_DESCRIPTION, }) self.render_template( - 'pages/notifications_dashboard/notifications_dashboard.html') + 'dist/notifications_dashboard.html') class NotificationsDashboardHandler(base.BaseHandler): @@ -145,7 +145,7 @@ def get(self): interaction_templates), 'dependencies_html': jinja2.utils.Markup(dependencies_html) }) - self.render_template('pages/creator_dashboard/creator_dashboard.html') + self.render_template('dist/creator_dashboard.html') class CreatorDashboardHandler(base.BaseHandler): diff --git a/core/controllers/custom_landing_pages.py b/core/controllers/custom_landing_pages.py index e300379e359f..4bc8e8a5f4cb 100644 --- a/core/controllers/custom_landing_pages.py +++ b/core/controllers/custom_landing_pages.py @@ -38,7 +38,7 @@ def get(self, subject, topic): """Handles GET requests.""" if subject in feconf.AVAILABLE_LANDING_PAGES: if topic in feconf.AVAILABLE_LANDING_PAGES[subject]: - self.render_template('pages/landing/topic_landing_page.html') + self.render_template('dist/topic_landing_page.html') else: raise self.PageNotFoundException else: @@ -54,4 +54,4 @@ class StewardsLandingPage(base.BaseHandler): def get(self): """Handles GET requests.""" self.render_template( - 'pages/landing/stewards/landing_page_stewards.html') + 'dist/landing_page_stewards.html') diff --git a/core/controllers/editor.py b/core/controllers/editor.py index 4df6effa5a09..f185615bb924 100644 --- a/core/controllers/editor.py +++ b/core/controllers/editor.py @@ -159,7 +159,7 @@ def get(self, exploration_id): 'TAG_REGEX': feconf.TAG_REGEX, }) - self.render_template('pages/exploration_editor/exploration_editor.html') + self.render_template('dist/exploration_editor.html') class ExplorationHandler(EditorHandler): diff --git a/core/controllers/email_dashboard.py b/core/controllers/email_dashboard.py index c7b9011e7eab..022f454392a5 100644 --- a/core/controllers/email_dashboard.py +++ b/core/controllers/email_dashboard.py @@ -34,7 +34,7 @@ class EmailDashboardPage(base.BaseHandler): @acl_decorators.can_manage_email_dashboard def get(self): """Handles GET requests.""" - self.render_template('pages/email_dashboard/email_dashboard.html') + self.render_template('dist/email_dashboard.html') class EmailDashboardDataHandler(base.BaseHandler): @@ -168,7 +168,7 @@ def get(self, query_id): 'query_id': query_id, }) self.render_template( - 'pages/email_dashboard/email_dashboard_result.html') + 'dist/email_dashboard_result.html') @acl_decorators.can_manage_email_dashboard def post(self, query_id): diff --git a/core/controllers/learner_dashboard.py b/core/controllers/learner_dashboard.py index de73e5020309..a1a386021bee 100644 --- a/core/controllers/learner_dashboard.py +++ b/core/controllers/learner_dashboard.py @@ -33,7 +33,7 @@ class LearnerDashboardPage(base.BaseHandler): @acl_decorators.can_access_learner_dashboard def get(self): """Handles GET requests.""" - self.render_template('pages/learner_dashboard/learner_dashboard.html') + self.render_template('dist/learner_dashboard.html') class LearnerDashboardHandler(base.BaseHandler): diff --git a/core/controllers/library.py b/core/controllers/library.py index 58af1472de5c..a7ee07ca7abb 100644 --- a/core/controllers/library.py +++ b/core/controllers/library.py @@ -84,7 +84,7 @@ def get(self): self.user_id and user_services.has_fully_registered(self.user_id)), }) - self.render_template('pages/library/library.html') + self.render_template('dist/library.html') class LibraryIndexHandler(base.BaseHandler): @@ -157,7 +157,7 @@ def get(self): self.user_id and user_services.has_fully_registered(self.user_id)), }) - self.render_template('pages/library/library.html') + self.render_template('dist/library.html') class LibraryGroupIndexHandler(base.BaseHandler): diff --git a/core/controllers/moderator.py b/core/controllers/moderator.py index aaaf695ec552..546af50407fd 100644 --- a/core/controllers/moderator.py +++ b/core/controllers/moderator.py @@ -29,7 +29,7 @@ class ModeratorPage(base.BaseHandler): @acl_decorators.can_access_moderator_page def get(self): """Handles GET requests.""" - self.render_template('pages/moderator/moderator.html') + self.render_template('dist/moderator.html') class FeaturedActivitiesHandler(base.BaseHandler): diff --git a/core/controllers/pages.py b/core/controllers/pages.py index d1d2133d349d..f2f9ba20d9ec 100644 --- a/core/controllers/pages.py +++ b/core/controllers/pages.py @@ -45,10 +45,10 @@ def get(self): }) if not c_value: - self.render_template('pages/splash/splash.html') + self.render_template('dist/splash.html') else: try: - self.render_template('pages/splash/splash_%s.html' % c_value) + self.render_template('dist/splash_%s.html' % c_value) except Exception: # Old c values may have been deprecated, in which case we # revert to the default splash page URL. When redirecting, @@ -74,7 +74,7 @@ def get(self): self.values.update({ 'meta_description': feconf.ABOUT_PAGE_DESCRIPTION, }) - self.render_template('pages/about/about.html') + self.render_template('dist/about.html') class GetStartedPage(base.BaseHandler): @@ -86,7 +86,7 @@ def get(self): self.values.update({ 'meta_description': feconf.GET_STARTED_PAGE_DESCRIPTION, }) - self.render_template('pages/get_started/get_started.html') + self.render_template('dist/get_started.html') class TeachPage(base.BaseHandler): @@ -98,7 +98,7 @@ def get(self): self.values.update({ 'meta_description': feconf.TEACH_PAGE_DESCRIPTION, }) - self.render_template('pages/teach/teach.html') + self.render_template('dist/teach.html') class ContactPage(base.BaseHandler): @@ -110,7 +110,7 @@ def get(self): self.values.update({ 'meta_description': feconf.CONTACT_PAGE_DESCRIPTION, }) - self.render_template('pages/contact/contact.html') + self.render_template('dist/contact.html') class DonatePage(base.BaseHandler): @@ -122,7 +122,7 @@ def get(self): self.values.update({ 'meta_description': feconf.DONATE_PAGE_DESCRIPTION, }) - self.render_template('pages/donate/donate.html') + self.render_template('dist/donate.html') class ThanksPage(base.BaseHandler): @@ -134,7 +134,7 @@ def get(self): self.values.update({ 'meta_description': feconf.THANKS_PAGE_DESCRIPTION, }) - self.render_template('pages/thanks/thanks.html') + self.render_template('dist/thanks.html') class ForumRedirectPage(base.BaseHandler): @@ -155,7 +155,7 @@ def get(self): 'meta_description': feconf.TERMS_PAGE_DESCRIPTION, }) - self.render_template('pages/terms/terms.html') + self.render_template('dist/terms.html') class PrivacyPage(base.BaseHandler): @@ -164,7 +164,7 @@ class PrivacyPage(base.BaseHandler): @acl_decorators.open_access def get(self): """Handles GET requests.""" - self.render_template('pages/privacy/privacy.html') + self.render_template('dist/privacy.html') class AboutRedirectPage(base.BaseHandler): @@ -200,7 +200,7 @@ class ConsoleErrorPage(base.BaseHandler): @acl_decorators.open_access def get(self): """Handles GET requests.""" - self.render_template('pages/tests/console_errors.html') + self.render_template('dist/console_errors.html') class MaintenancePage(base.BaseHandler): @@ -209,4 +209,4 @@ class MaintenancePage(base.BaseHandler): @acl_decorators.open_access def get(self, *args, **kwargs): """Handles GET requests.""" - self.render_template('pages/maintenance/maintenance.html') + self.render_template('dist/maintenance.html') diff --git a/core/controllers/practice_sessions.py b/core/controllers/practice_sessions.py index 0dfdaac3ff14..2207910e4fdd 100644 --- a/core/controllers/practice_sessions.py +++ b/core/controllers/practice_sessions.py @@ -37,7 +37,7 @@ def get(self, topic_name): raise self.PageNotFoundException( Exception('The topic with the given name doesn\'t exist.')) - self.render_template('/pages/practice_session/practice_session.html') + self.render_template('dist/practice_session.html') class PracticeSessionsPageDataHandler(base.BaseHandler): diff --git a/core/controllers/profile.py b/core/controllers/profile.py index c964efa0c793..33f7bf404087 100644 --- a/core/controllers/profile.py +++ b/core/controllers/profile.py @@ -45,7 +45,7 @@ def get(self, username): self.values.update({ 'PROFILE_USERNAME': user_settings.username, }) - self.render_template('pages/profile/profile.html') + self.render_template('dist/profile.html') class ProfileHandler(base.BaseHandler): @@ -108,7 +108,7 @@ def get(self): self.values.update({ 'meta_description': feconf.PREFERENCES_PAGE_DESCRIPTION, }) - self.render_template('pages/preferences/preferences.html') + self.render_template('dist/preferences.html') class PreferencesHandler(base.BaseHandler): @@ -261,7 +261,7 @@ def get(self): 'meta_description': feconf.SIGNUP_PAGE_DESCRIPTION, 'CAN_SEND_EMAILS': feconf.CAN_SEND_EMAILS, }) - self.render_template('pages/signup/signup.html') + self.render_template('dist/signup.html') class SignupHandler(base.BaseHandler): diff --git a/core/controllers/reader.py b/core/controllers/reader.py index 89ad439688a3..6c39d6e94eba 100644 --- a/core/controllers/reader.py +++ b/core/controllers/reader.py @@ -188,7 +188,7 @@ def get(self, exploration_id): self.values.update(exploration_data_values) self.values['iframed'] = True self.render_template( - 'pages/exploration_player/exploration_player.html', + 'dist/exploration_player.html', iframe_restriction=None) @@ -234,7 +234,7 @@ def get(self, exploration_id): self.values.update(exploration_data_values) self.values['iframed'] = False self.render_template( - 'pages/exploration_player/exploration_player.html') + 'dist/exploration_player.html') class ExplorationHandler(base.BaseHandler): diff --git a/core/controllers/skill_editor.py b/core/controllers/skill_editor.py index 6a0d2874cd73..d606d7b6c097 100644 --- a/core/controllers/skill_editor.py +++ b/core/controllers/skill_editor.py @@ -98,7 +98,7 @@ def get(self, skill_id): 'dependencies_html': jinja2.utils.Markup(dependencies_html) }) - self.render_template('pages/skill_editor/skill_editor.html') + self.render_template('dist/skill_editor.html') def check_can_edit_skill_description(user): diff --git a/core/controllers/story_editor.py b/core/controllers/story_editor.py index 9397bb6d9701..8f415846ea3d 100644 --- a/core/controllers/story_editor.py +++ b/core/controllers/story_editor.py @@ -51,7 +51,7 @@ def get(self, topic_id, story_id): 'story_title': story.title, }) - self.render_template('pages/story_editor/story_editor.html') + self.render_template('dist/story_editor.html') class EditableStoryDataHandler(base.BaseHandler): diff --git a/core/controllers/topic_editor.py b/core/controllers/topic_editor.py index f65105bce4d4..12a0655ab28c 100644 --- a/core/controllers/topic_editor.py +++ b/core/controllers/topic_editor.py @@ -170,7 +170,7 @@ def get(self, topic_id): 'dependencies_html': jinja2.utils.Markup(dependencies_html) }) - self.render_template('pages/topic_editor/topic_editor.html') + self.render_template('dist/topic_editor.html') class EditableSubtopicPageDataHandler(base.BaseHandler): diff --git a/core/controllers/topic_viewer.py b/core/controllers/topic_viewer.py index c762622fafa5..23bd8823c322 100644 --- a/core/controllers/topic_viewer.py +++ b/core/controllers/topic_viewer.py @@ -37,7 +37,7 @@ def get(self, topic_name): self.values.update({ 'topic_name': topic.name }) - self.render_template('/pages/topic_viewer/topic_viewer.html') + self.render_template('dist/topic_viewer.html') class TopicPageDataHandler(base.BaseHandler): diff --git a/core/controllers/topics_and_skills_dashboard.py b/core/controllers/topics_and_skills_dashboard.py index 859635de9f67..a7a921fe1e55 100644 --- a/core/controllers/topics_and_skills_dashboard.py +++ b/core/controllers/topics_and_skills_dashboard.py @@ -36,9 +36,7 @@ def get(self): if not constants.ENABLE_NEW_STRUCTURE_EDITORS: raise self.PageNotFoundException - self.render_template( - 'pages/topics_and_skills_dashboard/' - 'topics_and_skills_dashboard.html') + self.render_template('dist/topics_and_skills_dashboard.html') class TopicsAndSkillsDashboardPageDataHandler(base.BaseHandler): diff --git a/core/templates/dev/head/App.ts b/core/templates/dev/head/App.ts index 0e6f35d0936f..3a81a32076fa 100644 --- a/core/templates/dev/head/App.ts +++ b/core/templates/dev/head/App.ts @@ -15,22 +15,45 @@ /** * @fileoverview Initialization and basic configuration for the Oppia module. */ -// TODO(sll): Remove the check for window.GLOBALS. This check is currently -// only there so that the Karma tests run, since it looks like Karma doesn't -// 'see' the GLOBALS variable that is defined in base.html. We should fix this -// in order to make the testing and production environments match. -var oppia = angular.module( - 'oppia', [ - 'angularAudioRecorder', 'dndLists', 'headroom', 'infinite-scroll', - 'ngAnimate', 'ngAudio', 'ngCookies', 'ngImgCrop', 'ngJoyRide', 'ngMaterial', - 'ngResource', 'ngSanitize', 'ngTouch', 'pascalprecht.translate', 'toastr', - 'ui.bootstrap', 'ui.sortable', 'ui.tree', 'ui.validate' - ].concat( - window.GLOBALS ? (window.GLOBALS.ADDITIONAL_ANGULAR_MODULES || []) : [])); - -for (var constantName in constants) { - oppia.constant(constantName, constants[constantName]); -} + +require('I18nFooter.ts'); +require('directives/FocusOnDirective.ts'); + +require('pages/Base.ts'); + +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/NavigationService.ts'); +require('services/UtilsService.ts'); +require('services/DebouncerService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/IdGenerationService.ts'); +require('services/HtmlEscaperService.ts'); +require('services/TranslationFileHashLoaderService.ts'); +require('services/RteHelperService.ts'); +require('services/StateRulesStatsService.ts'); +require('services/ConstructTranslationIdsService.ts'); +require('services/UserService.ts'); +require('services/PromoBarService.ts'); +require('services/contextual/DeviceInfoService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); +require('services/stateful/BackgroundMaskService.ts'); +require('services/stateful/FocusManagerService.ts'); +require('services/SiteAnalyticsService.ts'); + +require('components/alerts/AlertMessageDirective.ts'); +require('components/create_button/CreateActivityButtonDirective.ts'); + +require('components/forms/ObjectEditorDirective.ts'); +require('components/promo/PromoBarDirective.ts'); +require('components/side_navigation_bar/SideNavigationBarDirective.ts'); +require('components/social_buttons/SocialButtonsDirective.ts'); +require('components/top_navigation_bar/TopNavigationBarDirective.ts'); + +require('domain/sidebar/SidebarStatusService.ts'); +require('domain/user/UserInfoObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); oppia.constant( 'EXPLORATION_SUMMARY_DATA_URL_TEMPLATE', '/explorationsummarieshandler/data'); @@ -110,6 +133,19 @@ oppia.constant('LOGOUT_URL', '/logout'); // page visited. oppia.constant('ENABLE_PROMO_BAR', true); +// TODO(vojtechjelinek): Move these to separate file later, after we establish +// process to follow for Angular constants (#6731). +oppia.constant( + 'TOPIC_MANAGER_RIGHTS_URL_TEMPLATE', + '/rightshandler/assign_topic_manager//'); +oppia.constant( + 'TOPIC_RIGHTS_URL_TEMPLATE', '/rightshandler/get_topic_rights/'); +oppia.constant( + 'SUBTOPIC_PAGE_EDITOR_DATA_URL_TEMPLATE', + '/subtopic_page_editor_handler/data//'); +oppia.constant( + 'EDITABLE_TOPIC_DATA_URL_TEMPLATE', '/topic_editor_handler/data/'); + oppia.config([ '$compileProvider', '$cookiesProvider', '$httpProvider', '$interpolateProvider', '$locationProvider', diff --git a/core/templates/dev/head/AppInit.ts b/core/templates/dev/head/AppInit.ts new file mode 100644 index 000000000000..ebfc6f55fcc7 --- /dev/null +++ b/core/templates/dev/head/AppInit.ts @@ -0,0 +1,26 @@ +// Copyright 2014 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +var oppia = angular.module( + 'oppia', [ + 'angularAudioRecorder', 'dndLists', 'headroom', 'infinite-scroll', + 'ngAnimate', 'ngAudio', 'ngCookies', 'ngImgCrop', 'ngJoyRide', 'ngMaterial', + 'ngResource', 'ngSanitize', 'ngTouch', 'pascalprecht.translate', 'toastr', + 'ui.bootstrap', 'ui.sortable', 'ui.tree', 'ui.validate' + ].concat( + window.GLOBALS ? (window.GLOBALS.ADDITIONAL_ANGULAR_MODULES || []) : [])); + +for (var constantName in constants) { + oppia.constant(constantName, constants[constantName]); +} diff --git a/core/templates/dev/head/components/CkEditorRteDirective.ts b/core/templates/dev/head/components/CkEditorRteDirective.ts index 004492c29177..0c97abc15489 100644 --- a/core/templates/dev/head/components/CkEditorRteDirective.ts +++ b/core/templates/dev/head/components/CkEditorRteDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Modal and functionality for the create story button. */ +require('services/ContextService.ts'); +require('services/RteHelperService.ts'); + oppia.directive('ckEditorRte', [ 'ContextService', 'RteHelperService', 'PAGE_CONTEXT', function(ContextService, RteHelperService, PAGE_CONTEXT) { diff --git a/core/templates/dev/head/components/CkEditorWidgetsInitializer.ts b/core/templates/dev/head/components/CkEditorWidgetsInitializer.ts index ee23c118c255..6f2d27fcda42 100644 --- a/core/templates/dev/head/components/CkEditorWidgetsInitializer.ts +++ b/core/templates/dev/head/components/CkEditorWidgetsInitializer.ts @@ -17,6 +17,9 @@ * text components. */ +require('services/HtmlEscaperService.ts'); +require('services/RteHelperService.ts'); + oppia.run([ '$timeout', '$compile', '$rootScope', '$uibModal', 'RteHelperService', 'HtmlEscaperService', diff --git a/core/templates/dev/head/components/CollectionCreationService.ts b/core/templates/dev/head/components/CollectionCreationService.ts index 0307fe6064ca..1c4ca56cb0d4 100644 --- a/core/templates/dev/head/components/CollectionCreationService.ts +++ b/core/templates/dev/head/components/CollectionCreationService.ts @@ -16,6 +16,10 @@ * @fileoverview Modal and functionality for the create collection button. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/SiteAnalyticsService.ts'); + // TODO(bhenning): Refactor this to match the frontend design spec and reduce // duplicated code between CollectionCreationService and // ExplorationCreationService. diff --git a/core/templates/dev/head/components/ExplorationCreationService.ts b/core/templates/dev/head/components/ExplorationCreationService.ts index 73c815da5120..2fbbb785e439 100644 --- a/core/templates/dev/head/components/ExplorationCreationService.ts +++ b/core/templates/dev/head/components/ExplorationCreationService.ts @@ -17,6 +17,10 @@ * modal. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/SiteAnalyticsService.ts'); + oppia.factory('ExplorationCreationService', [ '$http', '$rootScope', '$timeout', '$uibModal', '$window', 'AlertsService', 'SiteAnalyticsService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/HintAndSolutionButtonsDirective.ts b/core/templates/dev/head/components/HintAndSolutionButtonsDirective.ts index 35c39b6c8758..24176cc89a3f 100644 --- a/core/templates/dev/head/components/HintAndSolutionButtonsDirective.ts +++ b/core/templates/dev/head/components/HintAndSolutionButtonsDirective.ts @@ -16,6 +16,16 @@ * @fileoverview Directive for hint and solution buttons. */ +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/HintsAndSolutionManagerService.ts'); +require('pages/exploration_player/HintAndSolutionModalService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('pages/exploration_player/StatsReportingService.ts'); +require('services/ContextService.ts'); +require('services/contextual/DeviceInfoService.ts'); + oppia.directive('hintAndSolutionButtons', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/QuestionCreationService.ts b/core/templates/dev/head/components/QuestionCreationService.ts index 0180d5285341..cb4ca180289d 100644 --- a/core/templates/dev/head/components/QuestionCreationService.ts +++ b/core/templates/dev/head/components/QuestionCreationService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to create the question. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('QuestionCreationService', [ '$http', '$q', 'UrlInterpolationService', function($http, $q, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/RatingComputationServiceSpec.ts b/core/templates/dev/head/components/RatingComputationServiceSpec.ts index 6800e6b975fc..3b738b4573bd 100644 --- a/core/templates/dev/head/components/RatingComputationServiceSpec.ts +++ b/core/templates/dev/head/components/RatingComputationServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests that average ratings are being computed correctly. */ +require('components/RatingComputationService.ts'); + describe('Rating computation service', function() { var RatingComputationService; diff --git a/core/templates/dev/head/components/RatingDisplayDirective.ts b/core/templates/dev/head/components/RatingDisplayDirective.ts index e99f8d398577..ff1384a0e1d7 100644 --- a/core/templates/dev/head/components/RatingDisplayDirective.ts +++ b/core/templates/dev/head/components/RatingDisplayDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for displaying summary rating information. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('ratingDisplay', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/RatingDisplayDirectiveSpec.ts b/core/templates/dev/head/components/RatingDisplayDirectiveSpec.ts index 9861a1b68786..9c9f2760dfe7 100644 --- a/core/templates/dev/head/components/RatingDisplayDirectiveSpec.ts +++ b/core/templates/dev/head/components/RatingDisplayDirectiveSpec.ts @@ -16,9 +16,10 @@ * @fileoverview Tests that ratings are being displayed correctly. */ +require('components/RatingDisplayDirective.ts'); + describe('Rating display directive', function() { var outerScope, ctrlScope; - beforeEach(angular.mock.module('directiveTemplates')); beforeEach( angular.mock.module('oppia', GLOBALS.TRANSLATOR_PROVIDER_FOR_TESTS)); @@ -28,7 +29,6 @@ describe('Rating display directive', function() { '/core/templates/dev/head/components/rating_display_directive.html'); $compile(templateHtml)($rootScope); $rootScope.$digest(); - outerScope = $rootScope.$new(); var elem = angular.element( '' + diff --git a/core/templates/dev/head/components/SkillCreationService.ts b/core/templates/dev/head/components/SkillCreationService.ts index 4786b38bfe70..c83eae07e8da 100644 --- a/core/templates/dev/head/components/SkillCreationService.ts +++ b/core/templates/dev/head/components/SkillCreationService.ts @@ -16,6 +16,9 @@ * @fileoverview Functionality for creating a new skill. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.factory('SkillCreationService', [ '$http', '$rootScope', '$timeout', '$window', 'AlertsService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/StoryCreationService.ts b/core/templates/dev/head/components/StoryCreationService.ts index 267c50b66e27..be9f3d63c480 100644 --- a/core/templates/dev/head/components/StoryCreationService.ts +++ b/core/templates/dev/head/components/StoryCreationService.ts @@ -16,6 +16,11 @@ * @fileoverview Modal and functionality for the create story button. */ +require('domain/topic/TopicUpdateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/AlertsService.ts'); + oppia.factory('StoryCreationService', [ '$http', '$rootScope', '$timeout', '$uibModal', '$window', 'AlertsService', 'TopicEditorStateService', 'TopicUpdateService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/SummaryListHeaderDirective.ts b/core/templates/dev/head/components/SummaryListHeaderDirective.ts index 036c47a8503a..a4eb52126ce8 100644 --- a/core/templates/dev/head/components/SummaryListHeaderDirective.ts +++ b/core/templates/dev/head/components/SummaryListHeaderDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the header of items in a list. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('summaryListHeader', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/TopicCreationService.ts b/core/templates/dev/head/components/TopicCreationService.ts index 6a8aacfaaef0..5f012c50460b 100644 --- a/core/templates/dev/head/components/TopicCreationService.ts +++ b/core/templates/dev/head/components/TopicCreationService.ts @@ -16,6 +16,9 @@ * @fileoverview Modal and functionality for the create topic button. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.factory('TopicCreationService', [ '$http', '$rootScope', '$timeout', '$uibModal', '$window', 'AlertsService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/VersionDiffVisualizationDirective.ts b/core/templates/dev/head/components/VersionDiffVisualizationDirective.ts index 019e0232b17f..f2f66b3a32ea 100644 --- a/core/templates/dev/head/components/VersionDiffVisualizationDirective.ts +++ b/core/templates/dev/head/components/VersionDiffVisualizationDirective.ts @@ -17,6 +17,10 @@ * versions of an exploration. */ +require('components/loading/LoadingDotsDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('versionDiffVisualization', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/alerts/AlertMessageDirective.ts b/core/templates/dev/head/components/alerts/AlertMessageDirective.ts index e404d4a0b4b0..3af9e8b0470e 100644 --- a/core/templates/dev/head/components/alerts/AlertMessageDirective.ts +++ b/core/templates/dev/head/components/alerts/AlertMessageDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for Alert Messages */ +require('services/AlertsService.ts'); + oppia.directive('alertMessage', [function() { return { restrict: 'E', diff --git a/core/templates/dev/head/components/attribution_guide/AttributionGuideDirective.ts b/core/templates/dev/head/components/attribution_guide/AttributionGuideDirective.ts index e3a0d156e1fc..3fde1a76e0ee 100644 --- a/core/templates/dev/head/components/attribution_guide/AttributionGuideDirective.ts +++ b/core/templates/dev/head/components/attribution_guide/AttributionGuideDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for the attribution guide. */ +require('domain/utilities/BrowserCheckerService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('attributionGuide', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/background/BackgroundBannerDirective.ts b/core/templates/dev/head/components/background/BackgroundBannerDirective.ts index cecd08f90f1b..2690c5c3992d 100644 --- a/core/templates/dev/head/components/background/BackgroundBannerDirective.ts +++ b/core/templates/dev/head/components/background/BackgroundBannerDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the background banner. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('backgroundBanner', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/create_button/CreateActivityButtonDirective.ts b/core/templates/dev/head/components/create_button/CreateActivityButtonDirective.ts index 2634eb9768da..9f0408ab3d18 100644 --- a/core/templates/dev/head/components/create_button/CreateActivityButtonDirective.ts +++ b/core/templates/dev/head/components/create_button/CreateActivityButtonDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Directive for the Create Exploration/Collection button. */ +require('components/CollectionCreationService.ts'); +require('components/ExplorationCreationService.ts'); +require('domain/utilities/BrowserCheckerService.ts'); +require('services/contextual/UrlService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); + oppia.directive('createActivityButton', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/embed_modal/ExplorationEmbedButtonService.ts b/core/templates/dev/head/components/embed_modal/ExplorationEmbedButtonService.ts index bd99b07c9a25..ce2e26a5284f 100644 --- a/core/templates/dev/head/components/embed_modal/ExplorationEmbedButtonService.ts +++ b/core/templates/dev/head/components/embed_modal/ExplorationEmbedButtonService.ts @@ -16,6 +16,9 @@ * @fileoverview Service for the 'embed exploration' modal. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SiteAnalyticsService.ts'); + oppia.factory('ExplorationEmbedButtonService', [ '$uibModal', 'SiteAnalyticsService', 'UrlInterpolationService', function($uibModal, SiteAnalyticsService, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/forms/ApplyValidationDirective.ts b/core/templates/dev/head/components/forms/ApplyValidationDirective.ts index a1549f20e4bf..db0ef78f1d5a 100644 --- a/core/templates/dev/head/components/forms/ApplyValidationDirective.ts +++ b/core/templates/dev/head/components/forms/ApplyValidationDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for applying validation. */ +require('filters/UnderscoresToCamelCaseFilter.ts'); + /* eslint-disable angular/directive-restrict */ oppia.directive('applyValidation', ['$filter', function($filter) { return { diff --git a/core/templates/dev/head/components/forms/AudioFileUploaderDirective.ts b/core/templates/dev/head/components/forms/AudioFileUploaderDirective.ts index b5ac4bf244bb..0883e7e403e7 100644 --- a/core/templates/dev/head/components/forms/AudioFileUploaderDirective.ts +++ b/core/templates/dev/head/components/forms/AudioFileUploaderDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive that enables the user to upload audio files. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/IdGenerationService.ts'); + oppia.directive('audioFileUploader', [ 'IdGenerationService', 'UrlInterpolationService', function(IdGenerationService, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/forms/ConvertUnicodeToHtmlFilter.ts b/core/templates/dev/head/components/forms/ConvertUnicodeToHtmlFilter.ts index 686bd246de5b..108c0425dd47 100644 --- a/core/templates/dev/head/components/forms/ConvertUnicodeToHtmlFilter.ts +++ b/core/templates/dev/head/components/forms/ConvertUnicodeToHtmlFilter.ts @@ -16,6 +16,8 @@ * @fileoverview Converts unicode to HTML. */ +require('services/HtmlEscaperService.ts'); + oppia.filter('convertUnicodeToHtml', [ '$sanitize', 'HtmlEscaperService', function($sanitize, HtmlEscaperService) { diff --git a/core/templates/dev/head/components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts b/core/templates/dev/head/components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts index 7b082c3a8e90..9d0190abd606 100644 --- a/core/templates/dev/head/components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts +++ b/core/templates/dev/head/components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts @@ -21,6 +21,8 @@ * this is the end of a parameter. */ +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); + oppia.filter('convertUnicodeWithParamsToHtml', ['$filter', function($filter) { var assert = function(text) { if (!text) { diff --git a/core/templates/dev/head/components/forms/FormBuilderSpec.ts b/core/templates/dev/head/components/forms/FormBuilderSpec.ts index a56fba02d691..246be89b892f 100644 --- a/core/templates/dev/head/components/forms/FormBuilderSpec.ts +++ b/core/templates/dev/head/components/forms/FormBuilderSpec.ts @@ -16,6 +16,17 @@ * @fileoverview Tests for the form builders. */ +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); + describe('HTML to text', function() { beforeEach(angular.mock.module('oppia')); @@ -182,6 +193,11 @@ describe('Testing requireIsFloat directive', function() { '' + ''; + scope.validators = function() { + return [{ + id: 'isFloat' + }]; + }; $compile(element)(scope); testInput = scope.testForm.floatValue; })); diff --git a/core/templates/dev/head/components/forms/HtmlSelectDirective.ts b/core/templates/dev/head/components/forms/HtmlSelectDirective.ts index 6def305f5b31..2f0d9488c0dd 100644 --- a/core/templates/dev/head/components/forms/HtmlSelectDirective.ts +++ b/core/templates/dev/head/components/forms/HtmlSelectDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the selection dropdown with HTML content. */ +require('domain/utilities/UrlInterpolationService.ts'); + // This directive allows user to put html into select's options. // 'options' should be an array of objects containing attributes 'id' and 'val' // Attribute 'val' is presented to the user. After user selection, the diff --git a/core/templates/dev/head/components/forms/ImageUploaderDirective.ts b/core/templates/dev/head/components/forms/ImageUploaderDirective.ts index 9c47d6556c02..59635c2105b3 100644 --- a/core/templates/dev/head/components/forms/ImageUploaderDirective.ts +++ b/core/templates/dev/head/components/forms/ImageUploaderDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for uploading images. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/IdGenerationService.ts'); + oppia.directive('imageUploader', [ 'IdGenerationService', 'UrlInterpolationService', function(IdGenerationService, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/forms/RequireIsFloatDirective.ts b/core/templates/dev/head/components/forms/RequireIsFloatDirective.ts index 729981175a96..d3bb7cead1db 100644 --- a/core/templates/dev/head/components/forms/RequireIsFloatDirective.ts +++ b/core/templates/dev/head/components/forms/RequireIsFloatDirective.ts @@ -19,6 +19,8 @@ // This should come before 'apply-validation', if that is defined as // an attribute on the HTML tag. +require('components/forms/validators/IsFloatFilter.ts'); + /* eslint-disable angular/directive-restrict */ oppia.directive('requireIsFloat', ['$filter', function($filter) { return { diff --git a/core/templates/dev/head/components/forms/Select2DropdownDirective.ts b/core/templates/dev/head/components/forms/Select2DropdownDirective.ts index bb240e05c43d..82744d715c75 100644 --- a/core/templates/dev/head/components/forms/Select2DropdownDirective.ts +++ b/core/templates/dev/head/components/forms/Select2DropdownDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the select2 autocomplete component. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('select2Dropdown', [ 'UrlInterpolationService', function(UrlInterpolationService) { // Directive for incorporating select2 dropdowns. diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts index 79da424c8293..666319ecbc89 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based editor for booleans. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedBoolEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts index 21520660c2c1..f677a3b7529e 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based editor for multiple choice. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedChoicesEditor', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts index 1a0789a7be5d..2213bc63f2cb 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based editor for custom values. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedCustomEditor', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedDictEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedDictEditorDirective.ts index 3cf109453571..c43fd9d194cb 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedDictEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedDictEditorDirective.ts @@ -16,6 +16,12 @@ * @fileoverview Directive for a schema-based editor for dicts. */ +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/IdGenerationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedDictEditor', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedEditorDirective.ts index c71ed9f3f167..9df9af9c2cb1 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedEditorDirective.ts @@ -16,6 +16,18 @@ * @fileoverview Directive for general schema-based editors. */ +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts index df4ec02b2a5b..cb7f6615d962 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based editor for expressions. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedExpressionEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts index b82b4a476004..5b966e49584b 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for a schema-based editor for floats. */ +require('components/forms/validators/IsFloatFilter.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('schemaBasedFloatEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts index 19a4c81a17c7..e7649621f21f 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based editor for HTML. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedHtmlEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedIntEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedIntEditorDirective.ts index 9b3738d55dcf..0b96240b62f9 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedIntEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedIntEditorDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based editor for integers. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedIntEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedListEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedListEditorDirective.ts index 8530ba981dbf..ce26fa377823 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedListEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedListEditorDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for a schema-based editor for lists. */ +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/IdGenerationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); +require('services/SchemaDefaultValueService.ts'); +require('services/SchemaUndefinedLastElementService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('schemaBasedListEditor', [ 'FocusManagerService', 'IdGenerationService', 'NestedDirectivesRecursionTimeoutPreventionService', diff --git a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts index 4a74f35be58a..49ca26651645 100644 --- a/core/templates/dev/head/components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts +++ b/core/templates/dev/head/components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for a schema-based editor for unicode strings. */ +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/contextual/DeviceInfoService.ts'); + oppia.directive('schemaBasedUnicodeEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts index 7271b0d0568f..3b0c2d477186 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based viewer for custom values. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedCustomViewer', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts index 6fab339669e9..d8c660ba59b0 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based viewer for dicts. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedDictViewer', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts index 3cb8c4e79132..54457a50255b 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based viewer for HTML. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedHtmlViewer', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedListViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedListViewerDirective.ts index 30e22d4c4abd..c1dfbc38e4da 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedListViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedListViewerDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based viewer for lists. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); + oppia.directive('schemaBasedListViewer', [ 'NestedDirectivesRecursionTimeoutPreventionService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts index 69c55471d3b3..303d0e2feec2 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for a schema-based viewer for primitive types. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedPrimitiveViewer', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts index 4a07e10c0209..9fabbfcbe97a 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for a schema-based viewer for unicode strings. */ +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedUnicodeViewer', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedViewerDirective.ts b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedViewerDirective.ts index cfa75a06a7a1..3067cec635ef 100644 --- a/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedViewerDirective.ts +++ b/core/templates/dev/head/components/forms/schema_viewers/SchemaBasedViewerDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for general schema-based viewers. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('schemaBasedViewer', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/loading/LoadingDotsDirective.ts b/core/templates/dev/head/components/loading/LoadingDotsDirective.ts index 0becf9360259..2da578b446eb 100644 --- a/core/templates/dev/head/components/loading/LoadingDotsDirective.ts +++ b/core/templates/dev/head/components/loading/LoadingDotsDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for displaying animated loading dots. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('loadingDots', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/profile_link/ProfileLinkImageDirective.ts b/core/templates/dev/head/components/profile_link/ProfileLinkImageDirective.ts index c814cbd8a5f5..bdc990c5e14d 100644 --- a/core/templates/dev/head/components/profile_link/ProfileLinkImageDirective.ts +++ b/core/templates/dev/head/components/profile_link/ProfileLinkImageDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for creating image links to a user's profile page. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('profileLinkImage', [ 'UrlInterpolationService', 'SYSTEM_USER_IDS', function(UrlInterpolationService, SYSTEM_USER_IDS) { diff --git a/core/templates/dev/head/components/profile_link/ProfileLinkTextDirective.ts b/core/templates/dev/head/components/profile_link/ProfileLinkTextDirective.ts index ace477f03a4e..b4275442f560 100644 --- a/core/templates/dev/head/components/profile_link/ProfileLinkTextDirective.ts +++ b/core/templates/dev/head/components/profile_link/ProfileLinkTextDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directives for creating text links to a user's profile page. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('profileLinkText', [ 'UrlInterpolationService', 'SYSTEM_USER_IDS', function(UrlInterpolationService, SYSTEM_USER_IDS) { diff --git a/core/templates/dev/head/components/promo/PromoBarDirective.ts b/core/templates/dev/head/components/promo/PromoBarDirective.ts index 0cb036aab7e5..de3983342be8 100644 --- a/core/templates/dev/head/components/promo/PromoBarDirective.ts +++ b/core/templates/dev/head/components/promo/PromoBarDirective.ts @@ -18,6 +18,9 @@ * dismissible. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PromoBarService.ts'); + oppia.directive('promoBar', [ 'PromoBarService', 'UrlInterpolationService', function(PromoBarService, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/share/SharingLinksDirective.ts b/core/templates/dev/head/components/share/SharingLinksDirective.ts index 42d88664e59a..9ebc33b20a13 100644 --- a/core/templates/dev/head/components/share/SharingLinksDirective.ts +++ b/core/templates/dev/head/components/share/SharingLinksDirective.ts @@ -16,6 +16,11 @@ * @fileoverview Directive for the Social Sharing Links. */ +require('components/embed_modal/ExplorationEmbedButtonService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/HtmlEscaperService.ts'); +require('services/SiteAnalyticsService.ts'); + oppia.directive('sharingLinks', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/side_navigation_bar/SideNavigationBarDirective.ts b/core/templates/dev/head/components/side_navigation_bar/SideNavigationBarDirective.ts index 3443f841b849..7c1e9a462087 100644 --- a/core/templates/dev/head/components/side_navigation_bar/SideNavigationBarDirective.ts +++ b/core/templates/dev/head/components/side_navigation_bar/SideNavigationBarDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the side navigation bar. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('sideNavigationBar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/social_buttons/SocialButtonsDirective.ts b/core/templates/dev/head/components/social_buttons/SocialButtonsDirective.ts index 8953f47d118a..816285616ae1 100644 --- a/core/templates/dev/head/components/social_buttons/SocialButtonsDirective.ts +++ b/core/templates/dev/head/components/social_buttons/SocialButtonsDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the social buttons displayed in footer. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('socialButtons', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/AnswerGroupEditorDirective.ts b/core/templates/dev/head/components/state/AnswerGroupEditorDirective.ts index ae110f231a7e..24d3ba9c043b 100644 --- a/core/templates/dev/head/components/state/AnswerGroupEditorDirective.ts +++ b/core/templates/dev/head/components/state/AnswerGroupEditorDirective.ts @@ -16,6 +16,19 @@ * @fileoverview Directive for the answer group editor. */ +require('components/state/OutcomeEditorDirective.ts'); +require('components/state/RuleEditorDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('domain/exploration/RuleObjectFactory.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require( + 'pages/exploration_editor/editor_tab/TrainingDataEditorPanelService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/AlertsService.ts'); + oppia.directive('answerGroupEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/HintEditorDirective.ts b/core/templates/dev/head/components/state/HintEditorDirective.ts index f3e9793e9cfa..ddb416d43abb 100644 --- a/core/templates/dev/head/components/state/HintEditorDirective.ts +++ b/core/templates/dev/head/components/state/HintEditorDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Directive for the hint editor. */ +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('hintEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/OutcomeDestinationEditorDirective.ts b/core/templates/dev/head/components/state/OutcomeDestinationEditorDirective.ts index 5b63aaad58af..23da15abd08d 100644 --- a/core/templates/dev/head/components/state/OutcomeDestinationEditorDirective.ts +++ b/core/templates/dev/head/components/state/OutcomeDestinationEditorDirective.ts @@ -16,6 +16,14 @@ * @fileoverview Directives for the outcome destination editor. */ +require('components/StateGraphLayoutService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/EditorFirstTimeEventsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/EditabilityService.ts'); +require('services/UserService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('outcomeDestinationEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/OutcomeEditorDirective.ts b/core/templates/dev/head/components/state/OutcomeEditorDirective.ts index 30e13dd41541..e18f5aadb070 100644 --- a/core/templates/dev/head/components/state/OutcomeEditorDirective.ts +++ b/core/templates/dev/head/components/state/OutcomeEditorDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directives for the outcome editor. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); + oppia.directive('outcomeEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/OutcomeFeedbackEditorDirective.ts b/core/templates/dev/head/components/state/OutcomeFeedbackEditorDirective.ts index 00584ca6dcac..649a865482e3 100644 --- a/core/templates/dev/head/components/state/OutcomeFeedbackEditorDirective.ts +++ b/core/templates/dev/head/components/state/OutcomeFeedbackEditorDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directives for the outcome feedback editor. */ +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('outcomeFeedbackEditor', [ 'SubtitledHtmlObjectFactory', 'UrlInterpolationService', function(SubtitledHtmlObjectFactory, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/state/ResponseHeaderDirective.ts b/core/templates/dev/head/components/state/ResponseHeaderDirective.ts index 4df1cce2c66a..a65560600ce7 100644 --- a/core/templates/dev/head/components/state/ResponseHeaderDirective.ts +++ b/core/templates/dev/head/components/state/ResponseHeaderDirective.ts @@ -16,6 +16,11 @@ * @fileoverview Directive for the header of the response tiles. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('responseHeader', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/state/RuleEditorDirective.ts b/core/templates/dev/head/components/state/RuleEditorDirective.ts index 887a8766dca0..bbde104d7f9c 100644 --- a/core/templates/dev/head/components/state/RuleEditorDirective.ts +++ b/core/templates/dev/head/components/state/RuleEditorDirective.ts @@ -16,6 +16,14 @@ * @fileoverview Directive for the rule editor. */ +require('filters/TruncateFilter.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/ValidatorsService.ts'); + // This directive controls an editor for selecting the type and input parameters // to a rule. It also includes 'Cancel' and 'Save Answer' buttons which call // respective 'onCancelRuleEdit' and 'onSaveRule' callbacks when called. These diff --git a/core/templates/dev/head/components/state/RuleTypeSelectorDirective.ts b/core/templates/dev/head/components/state/RuleTypeSelectorDirective.ts index 2ca56426c18c..602db72f7a34 100644 --- a/core/templates/dev/head/components/state/RuleTypeSelectorDirective.ts +++ b/core/templates/dev/head/components/state/RuleTypeSelectorDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for the rule type selector. */ +require('filters/ReplaceInputsWithEllipsesFilter.ts'); +require('filters/TruncateAtFirstEllipsisFilter.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); + oppia.directive('ruleTypeSelector', [function() { return { restrict: 'E', diff --git a/core/templates/dev/head/components/state/SolutionEditorDirective.ts b/core/templates/dev/head/components/state/SolutionEditorDirective.ts index 990e5925647d..7ec117cd7deb 100644 --- a/core/templates/dev/head/components/state/SolutionEditorDirective.ts +++ b/core/templates/dev/head/components/state/SolutionEditorDirective.ts @@ -16,6 +16,18 @@ * @fileoverview Directive for the solution editor. */ +require('components/state/SolutionExplanationEditorDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); +require('pages/exploration_editor/editor_tab/SolutionVerificationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); + oppia.directive('solutionEditor', [ '$uibModal', 'AlertsService', 'ContextService', 'ExplorationHtmlFormatterService', 'SolutionObjectFactory', diff --git a/core/templates/dev/head/components/state/SolutionExplanationEditorDirective.ts b/core/templates/dev/head/components/state/SolutionExplanationEditorDirective.ts index 6f2234d35af1..566a9cac0e5a 100644 --- a/core/templates/dev/head/components/state/SolutionExplanationEditorDirective.ts +++ b/core/templates/dev/head/components/state/SolutionExplanationEditorDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for the solution explanation editor. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('solutionExplanationEditor', [ 'StateSolutionService', 'UrlInterpolationService', function(StateSolutionService, UrlInterpolationService) { diff --git a/core/templates/dev/head/components/summary_tile/CircularImageDirective.ts b/core/templates/dev/head/components/summary_tile/CircularImageDirective.ts index a59d590762c8..910d63eacaa8 100644 --- a/core/templates/dev/head/components/summary_tile/CircularImageDirective.ts +++ b/core/templates/dev/head/components/summary_tile/CircularImageDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Displays circled images with linking (when available). */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('circularImage', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/summary_tile/CollectionSummaryTileDirective.ts b/core/templates/dev/head/components/summary_tile/CollectionSummaryTileDirective.ts index c695af3fe1b8..f0c135d91e94 100644 --- a/core/templates/dev/head/components/summary_tile/CollectionSummaryTileDirective.ts +++ b/core/templates/dev/head/components/summary_tile/CollectionSummaryTileDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Summary tile for collections. */ +require('domain/learner_dashboard/LearnerDashboardIconsDirective.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/UserService.ts'); + oppia.constant( 'COLLECTION_VIEWER_URL', '/collection/'); oppia.constant( diff --git a/core/templates/dev/head/components/summary_tile/ExplorationSummaryTileDirective.ts b/core/templates/dev/head/components/summary_tile/ExplorationSummaryTileDirective.ts index 902758e27630..603a1f069e68 100644 --- a/core/templates/dev/head/components/summary_tile/ExplorationSummaryTileDirective.ts +++ b/core/templates/dev/head/components/summary_tile/ExplorationSummaryTileDirective.ts @@ -16,6 +16,19 @@ * @fileoverview Component for an exploration summary tile. */ +require('components/summary_tile/CircularImageDirective.ts'); +require('domain/learner_dashboard/LearnerDashboardIconsDirective.ts'); +require('filters/SummarizeNonnegativeNumberFilter.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); +require('filters/TruncateFilter.ts'); + +require('components/RatingComputationService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/UserService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('explorationSummaryTile', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/summary_tile/StorySummaryTileDirective.ts b/core/templates/dev/head/components/summary_tile/StorySummaryTileDirective.ts index cd22cdfc82b0..c909f41984db 100644 --- a/core/templates/dev/head/components/summary_tile/StorySummaryTileDirective.ts +++ b/core/templates/dev/head/components/summary_tile/StorySummaryTileDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Component for a canonical story tile. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('storySummaryTile', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/components/top_navigation_bar/TopNavigationBarDirective.ts b/core/templates/dev/head/components/top_navigation_bar/TopNavigationBarDirective.ts index 62754a21fdab..37ab74400f96 100644 --- a/core/templates/dev/head/components/top_navigation_bar/TopNavigationBarDirective.ts +++ b/core/templates/dev/head/components/top_navigation_bar/TopNavigationBarDirective.ts @@ -18,6 +18,15 @@ * the editor pages). */ +require('domain/sidebar/SidebarStatusService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/DebouncerService.ts'); +require('services/NavigationService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); +require('services/contextual/DeviceInfoService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('topNavigationBar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/domain/classifier/AnswerClassificationResultObjectFactorySpec.ts b/core/templates/dev/head/domain/classifier/AnswerClassificationResultObjectFactorySpec.ts index 6b9e19f7dfeb..5e3a71514058 100755 --- a/core/templates/dev/head/domain/classifier/AnswerClassificationResultObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/classifier/AnswerClassificationResultObjectFactorySpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the AnswerClassificationResultObjectFactory. */ +require('domain/classifier/AnswerClassificationResultObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); + describe('Answer classification result object factory', function() { var oof, acrof; var DEFAULT_OUTCOME_CLASSIFICATION; diff --git a/core/templates/dev/head/domain/classifier/ClassifierObjectFactorySpec.ts b/core/templates/dev/head/domain/classifier/ClassifierObjectFactorySpec.ts index 53dbe6f9e152..99926194eb44 100755 --- a/core/templates/dev/head/domain/classifier/ClassifierObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/classifier/ClassifierObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the ClassifierObjectFactory. */ +require('domain/classifier/ClassifierObjectFactory.ts'); + describe('Classifier Object Factory', function() { var ClassifierObjectFactory; diff --git a/core/templates/dev/head/domain/collection/CollectionNodeObjectFactorySpec.ts b/core/templates/dev/head/domain/collection/CollectionNodeObjectFactorySpec.ts index 205744652148..b4f9c4fb45d7 100644 --- a/core/templates/dev/head/domain/collection/CollectionNodeObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionNodeObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for CollectionNodeObjectFactory. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); + describe('Collection node object factory', function() { var CollectionNodeObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/CollectionObjectFactory.ts b/core/templates/dev/head/domain/collection/CollectionObjectFactory.ts index e79c813cb8a6..c0dbf10f7e71 100644 --- a/core/templates/dev/head/domain/collection/CollectionObjectFactory.ts +++ b/core/templates/dev/head/domain/collection/CollectionObjectFactory.ts @@ -17,6 +17,8 @@ * collection domain objects. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); + oppia.factory('CollectionObjectFactory', [ 'CollectionNodeObjectFactory', function(CollectionNodeObjectFactory) { diff --git a/core/templates/dev/head/domain/collection/CollectionObjectFactorySpec.ts b/core/templates/dev/head/domain/collection/CollectionObjectFactorySpec.ts index e18381bec447..6769fc5afb06 100644 --- a/core/templates/dev/head/domain/collection/CollectionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests for CollectionObjectFactory. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionObjectFactory.ts'); + describe('Collection object factory', function() { var CollectionObjectFactory = null; var CollectionNodeObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/CollectionRightsBackendApiService.ts b/core/templates/dev/head/domain/collection/CollectionRightsBackendApiService.ts index 5da5f4fae1c4..47c7d3115536 100644 --- a/core/templates/dev/head/domain/collection/CollectionRightsBackendApiService.ts +++ b/core/templates/dev/head/domain/collection/CollectionRightsBackendApiService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to change the rights of collections in the backend. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('CollectionRightsBackendApiService', [ '$http', '$log', '$q', 'UrlInterpolationService', 'COLLECTION_RIGHTS_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/collection/CollectionRightsBackendApiServiceSpec.ts b/core/templates/dev/head/domain/collection/CollectionRightsBackendApiServiceSpec.ts index 558cf141c7d1..d5cc66fd0933 100644 --- a/core/templates/dev/head/domain/collection/CollectionRightsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionRightsBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for CollectionRightsBackendApiService. */ +require('domain/collection/CollectionRightsBackendApiService.ts'); +require('pages/collection_editor/CollectionEditor.ts'); + describe('Collection rights backend API service', function() { var CollectionRightsBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/collection/CollectionRightsObjectFactorySpec.ts b/core/templates/dev/head/domain/collection/CollectionRightsObjectFactorySpec.ts index 56747bb7c4a3..7cf6c92fd599 100644 --- a/core/templates/dev/head/domain/collection/CollectionRightsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionRightsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for CollectionRightsObjectFactory. */ +require('domain/collection/CollectionRightsObjectFactory.ts'); + describe('Collection rights object factory', function() { var CollectionRightsObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/CollectionUpdateService.ts b/core/templates/dev/head/domain/collection/CollectionUpdateService.ts index d0ed22c5be91..8fa5f6c3750f 100644 --- a/core/templates/dev/head/domain/collection/CollectionUpdateService.ts +++ b/core/templates/dev/head/domain/collection/CollectionUpdateService.ts @@ -19,6 +19,10 @@ * undo/redo service. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); + // These should match the constants defined in core.domain.collection_domain. // TODO(bhenning): The values of these constants should be provided by the // backend. diff --git a/core/templates/dev/head/domain/collection/CollectionUpdateServiceSpec.ts b/core/templates/dev/head/domain/collection/CollectionUpdateServiceSpec.ts index 7224d5321f43..feca38df903b 100644 --- a/core/templates/dev/head/domain/collection/CollectionUpdateServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionUpdateServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Tests for Collection update service. */ +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/CollectionUpdateService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); + describe('Collection update service', function() { var CollectionUpdateService = null; var CollectionObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/CollectionValidationService.ts b/core/templates/dev/head/domain/collection/CollectionValidationService.ts index dfcb45b5b783..570b2e7f4af8 100644 --- a/core/templates/dev/head/domain/collection/CollectionValidationService.ts +++ b/core/templates/dev/head/domain/collection/CollectionValidationService.ts @@ -19,6 +19,8 @@ * in collection_domain.Collection and subsequent domain objects. */ +require('pages/collection_editor/editor_tab/CollectionLinearizerService.ts'); + oppia.factory('CollectionValidationService', [ 'CollectionLinearizerService', function(CollectionLinearizerService) { diff --git a/core/templates/dev/head/domain/collection/CollectionValidationServiceSpec.ts b/core/templates/dev/head/domain/collection/CollectionValidationServiceSpec.ts index ec02fa1cec43..b5fb296404a4 100644 --- a/core/templates/dev/head/domain/collection/CollectionValidationServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/CollectionValidationServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Tests for CollectionValidationService. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/CollectionValidationService.ts'); + describe('Collection validation service', function() { var CollectionValidationService = null; var CollectionObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/EditableCollectionBackendApiService.ts b/core/templates/dev/head/domain/collection/EditableCollectionBackendApiService.ts index d045a11ea6c6..8418fab8a9db 100644 --- a/core/templates/dev/head/domain/collection/EditableCollectionBackendApiService.ts +++ b/core/templates/dev/head/domain/collection/EditableCollectionBackendApiService.ts @@ -16,6 +16,9 @@ * @fileoverview Service to send changes to a collection to the backend. */ +require('domain/collection/ReadOnlyCollectionBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + // TODO(bhenning): I think that this might be better merged with the // CollectionBackendApiService. However, that violates the principle of a // backend API service being available for exactly one URL. To fix this, the diff --git a/core/templates/dev/head/domain/collection/EditableCollectionBackendApiServiceSpec.ts b/core/templates/dev/head/domain/collection/EditableCollectionBackendApiServiceSpec.ts index 982b30bb96ae..12f317262bc6 100644 --- a/core/templates/dev/head/domain/collection/EditableCollectionBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/EditableCollectionBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for EditableCollectionBackendApiService. */ +require('domain/collection/EditableCollectionBackendApiService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); + describe('Editable collection backend API service', function() { var EditableCollectionBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/collection/GuestCollectionProgressObjectFactorySpec.ts b/core/templates/dev/head/domain/collection/GuestCollectionProgressObjectFactorySpec.ts index c6ccbcfb6e5e..7f5e266461e2 100644 --- a/core/templates/dev/head/domain/collection/GuestCollectionProgressObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/collection/GuestCollectionProgressObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests for GuestCollectionProgressObjectFactory. */ +require('domain/collection/GuestCollectionProgressObjectFactory.ts'); + + describe('Guest collection progress object factory', function() { var GuestCollectionProgressObjectFactory = null; var _collectionId0 = null; diff --git a/core/templates/dev/head/domain/collection/GuestCollectionProgressService.ts b/core/templates/dev/head/domain/collection/GuestCollectionProgressService.ts index 6806ad4f7f96..69b47a424be5 100644 --- a/core/templates/dev/head/domain/collection/GuestCollectionProgressService.ts +++ b/core/templates/dev/head/domain/collection/GuestCollectionProgressService.ts @@ -25,6 +25,8 @@ // TODO(bhenning): This should be reset upon login, otherwise the progress will // be different depending on the user's logged in/logged out state. +require('domain/collection/GuestCollectionProgressObjectFactory.ts'); + oppia.factory('GuestCollectionProgressService', [ '$window', 'GuestCollectionProgressObjectFactory', function($window, GuestCollectionProgressObjectFactory) { diff --git a/core/templates/dev/head/domain/collection/GuestCollectionProgressServiceSpec.ts b/core/templates/dev/head/domain/collection/GuestCollectionProgressServiceSpec.ts index b084b03e2892..337265ca27f9 100644 --- a/core/templates/dev/head/domain/collection/GuestCollectionProgressServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/GuestCollectionProgressServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Tests for GuestCollectionProgressService. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/GuestCollectionProgressService.ts'); + describe('Guest collection progress service', function() { var GuestCollectionProgressService = null; var CollectionObjectFactory = null; diff --git a/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiService.ts b/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiService.ts index bd9477d97900..66bae2d24e7b 100644 --- a/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiService.ts +++ b/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiService.ts @@ -17,6 +17,8 @@ * about collections from the backend. */ +require('domain/utilities/UrlInterpolationService.ts'); + // TODO(bhenning): For preview mode, this service should be replaced by a // separate CollectionDataService implementation which returns a local copy of // the collection instead. This file should not be included on the page in that diff --git a/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiServiceSpec.ts b/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiServiceSpec.ts index ee6f54bb1685..75004dd86375 100644 --- a/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/ReadOnlyCollectionBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for ReadOnlyCollectionBackendApiService. */ +require('domain/collection/ReadOnlyCollectionBackendApiService.ts'); + describe('Read only collection backend API service', function() { var ReadOnlyCollectionBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiService.ts b/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiService.ts index 4e606fe6a890..010c5a4ec55a 100644 --- a/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiService.ts +++ b/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiService.ts @@ -16,6 +16,9 @@ * @fileoverview Service to search explorations metadata. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.factory('SearchExplorationsBackendApiService', [ '$http', '$q', 'AlertsService', 'UrlInterpolationService', 'SEARCH_EXPLORATION_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiServiceSpec.ts b/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiServiceSpec.ts index 92ad16a89a8b..1a8904b0f4c6 100644 --- a/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/collection/SearchExplorationsBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for SearchExplorationsBackendApiService. */ +require('domain/collection/SearchExplorationsBackendApiService.ts'); + describe('Exploration search backend API service', function() { var SearchExplorationsBackendApiService = null; var $rootScope = null; diff --git a/core/templates/dev/head/domain/creator_dashboard/CreatorDashboardBackendApiServiceSpec.ts b/core/templates/dev/head/domain/creator_dashboard/CreatorDashboardBackendApiServiceSpec.ts index 989fa89ab0e2..0e0f11730703 100644 --- a/core/templates/dev/head/domain/creator_dashboard/CreatorDashboardBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/creator_dashboard/CreatorDashboardBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for CreatorDashboardBackendApiService. */ +require('domain/creator_dashboard/CreatorDashboardBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + describe('Creator Dashboard backend API service', function() { var CreatorDashboardBackendApiService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/editor/undo_redo/ChangeObjectFactorySpec.ts b/core/templates/dev/head/domain/editor/undo_redo/ChangeObjectFactorySpec.ts index 161db2d02393..3b6f4b3d8853 100644 --- a/core/templates/dev/head/domain/editor/undo_redo/ChangeObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/editor/undo_redo/ChangeObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for ChangeObjectFactory. */ +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); + describe('Factory for Change domain objects', function() { var ChangeObjectFactory = null; diff --git a/core/templates/dev/head/domain/editor/undo_redo/UndoRedoService.ts b/core/templates/dev/head/domain/editor/undo_redo/UndoRedoService.ts index a5b04cb6aa5b..5afac88a5638 100644 --- a/core/templates/dev/head/domain/editor/undo_redo/UndoRedoService.ts +++ b/core/templates/dev/head/domain/editor/undo_redo/UndoRedoService.ts @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('domain/editor/undo_redo/BaseUndoRedoService.ts'); + oppia.factory('UndoRedoService', [ 'BaseUndoRedoService', function(BaseUndoRedoService) { var child = Object.create(BaseUndoRedoService); diff --git a/core/templates/dev/head/domain/editor/undo_redo/UndoRedoServiceSpec.ts b/core/templates/dev/head/domain/editor/undo_redo/UndoRedoServiceSpec.ts index 65922d63e708..a39e88f8f137 100644 --- a/core/templates/dev/head/domain/editor/undo_redo/UndoRedoServiceSpec.ts +++ b/core/templates/dev/head/domain/editor/undo_redo/UndoRedoServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests for UndoRedoService. */ +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); + describe('Undo/Redo Service', function() { var UndoRedoService = null; var ChangeObjectFactory = null; diff --git a/core/templates/dev/head/domain/exploration/AnswerGroupObjectFactory.ts b/core/templates/dev/head/domain/exploration/AnswerGroupObjectFactory.ts index 5b2e3b71b8d5..28b27986f5ec 100644 --- a/core/templates/dev/head/domain/exploration/AnswerGroupObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/AnswerGroupObjectFactory.ts @@ -17,6 +17,9 @@ * domain objects. */ +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/RuleObjectFactory.ts'); + oppia.factory('AnswerGroupObjectFactory', [ 'OutcomeObjectFactory', 'RuleObjectFactory', function(OutcomeObjectFactory, RuleObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/AudioTranslationObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/AudioTranslationObjectFactorySpec.ts index 194af3d9036c..cadbed267351 100644 --- a/core/templates/dev/head/domain/exploration/AudioTranslationObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/AudioTranslationObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the AudioTranslation object factory. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); + describe('AudioTranslation object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts b/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts index bfd1ee398f89..e039a0f71802 100644 --- a/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts @@ -17,6 +17,9 @@ * ContentIdsToAudioTranslations domain objects. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/utilities/LanguageUtilService.ts'); + oppia.factory('ContentIdsToAudioTranslationsObjectFactory', [ 'AudioTranslationObjectFactory', 'LanguageUtilService', 'COMPONENT_NAME_FEEDBACK', function(AudioTranslationObjectFactory, diff --git a/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactorySpec.ts index 1ed56474e8cf..4295b9bcb61a 100644 --- a/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ContentIdsToAudioTranslationsObjectFactorySpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for ContentIdsToAudioTranslations object factory. */ +require('App.ts'); +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); + describe('ContentIdsToAudioTranslations object factory', function() { beforeEach(angular.mock.module('oppia', function($provide) { $provide.value('LanguageUtilService', { diff --git a/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiService.ts b/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiService.ts index 44d459635450..2c83b456c360 100644 --- a/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiService.ts +++ b/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiService.ts @@ -16,6 +16,10 @@ * @fileoverview Service to send changes to a exploration to the backend. */ +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); + oppia.factory('EditableExplorationBackendApiService', [ '$http', '$q', 'ReadOnlyExplorationBackendApiService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiServiceSpec.ts b/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiServiceSpec.ts index 2d6554cdb6e6..27ef3d87e397 100644 --- a/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/exploration/EditableExplorationBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for EditableExplorationBackendApiService. */ +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); + describe('Editable exploration backend API service', function() { var EditableExplorationBackendApiService = null; var ReadOnlyExplorationBackendApiService = null; diff --git a/core/templates/dev/head/domain/exploration/ExplorationDraftObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ExplorationDraftObjectFactorySpec.ts index 030c105845ab..7f5f564521b9 100644 --- a/core/templates/dev/head/domain/exploration/ExplorationDraftObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ExplorationDraftObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview unit tests for the local save services. */ +require('domain/exploration/ExplorationDraftObjectFactory.ts'); + describe('ExplorationDraftObjectFactory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/ExplorationObjectFactory.ts b/core/templates/dev/head/domain/exploration/ExplorationObjectFactory.ts index 440330c58b83..cd126287b3fc 100644 --- a/core/templates/dev/head/domain/exploration/ExplorationObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ExplorationObjectFactory.ts @@ -17,6 +17,11 @@ * domain objects. */ +require('domain/exploration/ParamChangesObjectFactory.ts'); +require('domain/exploration/ParamSpecsObjectFactory.ts'); +require('domain/exploration/StatesObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('ExplorationObjectFactory', [ '$log', 'ParamChangesObjectFactory', 'ParamSpecsObjectFactory', 'StatesObjectFactory', 'UrlInterpolationService', diff --git a/core/templates/dev/head/domain/exploration/ExplorationObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ExplorationObjectFactorySpec.ts index 06387b2fbbfd..0b54677e00c7 100644 --- a/core/templates/dev/head/domain/exploration/ExplorationObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ExplorationObjectFactorySpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for the Exploration object factory. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/ExplorationObjectFactory.ts'); +require('domain/exploration/VoiceoverObjectFactory.ts'); +require('domain/state/StateObjectFactory.ts'); + describe('Exploration object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/HintObjectFactory.ts b/core/templates/dev/head/domain/exploration/HintObjectFactory.ts index 15d5d2b71b0c..e0fc4e2a2707 100644 --- a/core/templates/dev/head/domain/exploration/HintObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/HintObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + oppia.factory('HintObjectFactory', [ 'SubtitledHtmlObjectFactory', function(SubtitledHtmlObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/HintObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/HintObjectFactorySpec.ts index 59e9d506b408..2ea266898f90 100644 --- a/core/templates/dev/head/domain/exploration/HintObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/HintObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for hint object factory. */ +require('domain/exploration/HintObjectFactory.ts'); + describe('Hint object factory', function() { beforeEach(angular.mock.module('oppia')); var hof = null; diff --git a/core/templates/dev/head/domain/exploration/InteractionObjectFactory.ts b/core/templates/dev/head/domain/exploration/InteractionObjectFactory.ts index 8d8b0b9cd2b0..b6104f494d5f 100644 --- a/core/templates/dev/head/domain/exploration/InteractionObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/InteractionObjectFactory.ts @@ -17,6 +17,11 @@ * domain objects. */ +require('domain/exploration/AnswerGroupObjectFactory.ts'); +require('domain/exploration/HintObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); + oppia.factory('InteractionObjectFactory', [ 'AnswerGroupObjectFactory', 'HintObjectFactory', 'OutcomeObjectFactory', 'SolutionObjectFactory', diff --git a/core/templates/dev/head/domain/exploration/InteractionObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/InteractionObjectFactorySpec.ts index b61587ebc438..6f89431a14ea 100644 --- a/core/templates/dev/head/domain/exploration/InteractionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/InteractionObjectFactorySpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for Interaction object factory. */ +require('domain/exploration/AnswerGroupObjectFactory.ts'); +require('domain/exploration/HintObjectFactory.ts'); +require('domain/exploration/InteractionObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); + describe('Interaction object factory', function() { var iof = null; var oof = null; diff --git a/core/templates/dev/head/domain/exploration/OutcomeObjectFactory.ts b/core/templates/dev/head/domain/exploration/OutcomeObjectFactory.ts index 6a1e0c9ee889..17245e1c83c8 100644 --- a/core/templates/dev/head/domain/exploration/OutcomeObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/OutcomeObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + oppia.factory('OutcomeObjectFactory', [ 'SubtitledHtmlObjectFactory', function(SubtitledHtmlObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/OutcomeObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/OutcomeObjectFactorySpec.ts index fb1434b9e6cf..195d7063a060 100644 --- a/core/templates/dev/head/domain/exploration/OutcomeObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/OutcomeObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview unit tests for outcome object factory. */ +require('domain/exploration/OutcomeObjectFactory.ts'); + describe('Outcome object factory', function() { var oof; beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/ParamChangesObjectFactory.ts b/core/templates/dev/head/domain/exploration/ParamChangesObjectFactory.ts index 4053843911a1..18913e6a165c 100644 --- a/core/templates/dev/head/domain/exploration/ParamChangesObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ParamChangesObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('domain/exploration/ParamChangeObjectFactory.ts'); + oppia.factory('ParamChangesObjectFactory', [ 'ParamChangeObjectFactory', function(ParamChangeObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactory.ts b/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactory.ts index 594fdd345a74..422639005ca8 100644 --- a/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('pages/exploration_editor/ParameterMetadataService.ts'); + oppia.factory('ParamMetadataObjectFactory', [ 'PARAM_ACTION_GET', 'PARAM_ACTION_SET', function(PARAM_ACTION_GET, PARAM_ACTION_SET) { diff --git a/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactorySpec.ts index 6bf610d51246..2ec260d53339 100644 --- a/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ParamMetadataObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for ParamMetadataObjectFactory. */ +require('domain/exploration/ParamMetadataObjectFactory.ts'); + describe('ParameterMetadata object factory', function() { var parameterMetadata = null; var pmof = null; diff --git a/core/templates/dev/head/domain/exploration/ParamSpecObjectFactory.ts b/core/templates/dev/head/domain/exploration/ParamSpecObjectFactory.ts index e40a1a9e6e9d..0015f68dbfaf 100644 --- a/core/templates/dev/head/domain/exploration/ParamSpecObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ParamSpecObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('domain/exploration/ParamTypeObjectFactory.ts'); + oppia.factory('ParamSpecObjectFactory', [ 'ParamTypeObjectFactory', function(ParamTypeObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactory.ts b/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactory.ts index 213754c04d73..312ee8f98a6b 100644 --- a/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactory.ts @@ -18,6 +18,8 @@ * which defines them (represented as ParamSpec objects). */ +require('domain/exploration/ParamSpecObjectFactory.ts'); + oppia.factory('ParamSpecsObjectFactory', [ 'ParamSpecObjectFactory', function(ParamSpecObjectFactory) { diff --git a/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactorySpec.ts index a18925138453..54006b885c53 100644 --- a/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ParamSpecsObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the Param Specs object factory. */ +require('domain/exploration/ParamSpecObjectFactory.ts'); +require('domain/exploration/ParamSpecsObjectFactory.ts'); + describe('ParamSpecs', function() { var ParamSpecsObjectFactory = null; var ParamSpecObjectFactory = null; diff --git a/core/templates/dev/head/domain/exploration/ParamTypeObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/ParamTypeObjectFactorySpec.ts index 992b649bd6a6..d4ec94608528 100644 --- a/core/templates/dev/head/domain/exploration/ParamTypeObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/ParamTypeObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Description of this file. */ +require('domain/exploration/ParamTypeObjectFactory.ts'); + describe('ParamType objects', function() { var ParamType = null; diff --git a/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiService.ts b/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiService.ts index a0d73c21b834..b8554d7686d9 100644 --- a/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiService.ts +++ b/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiService.ts @@ -16,6 +16,10 @@ * @fileoverview Service to retrieve read only information * about explorations from the backend. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); + oppia.factory('ReadOnlyExplorationBackendApiService', [ '$http', '$q', 'UrlInterpolationService', 'EXPLORATION_DATA_URL_TEMPLATE', 'EXPLORATION_VERSION_DATA_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiServiceSpec.ts b/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiServiceSpec.ts index d4e7bc67c6ff..414223d2fdd6 100644 --- a/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/exploration/ReadOnlyExplorationBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for ReadOnlyExplorationBackendApiService. */ +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + describe('Read only exploration backend API service', function() { var ReadOnlyExplorationBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactory.ts b/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactory.ts index d8144af3b072..6e7eccf2bd12 100644 --- a/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactory.ts @@ -17,6 +17,8 @@ * RecordedVoiceovers domain objects. */ +require('domain/exploration/VoiceoverObjectFactory.ts'); + oppia.factory('RecordedVoiceoversObjectFactory', [ 'VoiceoverObjectFactory', 'COMPONENT_NAME_FEEDBACK', function( diff --git a/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactorySpec.ts index 5930cf1e7eb9..f45a08b926ea 100644 --- a/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/RecordedVoiceoversObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for RecordedVoiceovers object factory. */ +require('domain/exploration/RecordedVoiceoversObjectFactory.ts'); +require('domain/exploration/VoiceoverObjectFactory.ts'); + describe('RecordedVoiceovers object factory', function() { var rvof = null; var vof = null; diff --git a/core/templates/dev/head/domain/exploration/SolutionObjectFactory.ts b/core/templates/dev/head/domain/exploration/SolutionObjectFactory.ts index 3d46a7a86fcc..f7e4a30b602e 100644 --- a/core/templates/dev/head/domain/exploration/SolutionObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/SolutionObjectFactory.ts @@ -17,6 +17,13 @@ * domain objects. */ +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/objects/FractionObjectFactory.ts'); +require('domain/objects/NumberWithUnitsObjectFactory.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/HtmlEscaperService.ts'); + oppia.factory('SolutionObjectFactory', [ '$filter', 'ExplorationHtmlFormatterService', 'FractionObjectFactory', 'HtmlEscaperService', 'NumberWithUnitsObjectFactory', diff --git a/core/templates/dev/head/domain/exploration/SolutionObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/SolutionObjectFactorySpec.ts index 72ca7bfe2cd1..687ce122bb1c 100644 --- a/core/templates/dev/head/domain/exploration/SolutionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/SolutionObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Solution object factory. */ +require('domain/exploration/SolutionObjectFactory.ts'); + describe('Solution object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/StatesObjectFactory.ts b/core/templates/dev/head/domain/exploration/StatesObjectFactory.ts index 1a8e24f1b51d..2ed5a09f8bc4 100644 --- a/core/templates/dev/head/domain/exploration/StatesObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/StatesObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects given a list of backend state dictionaries. */ +require('domain/state/StateObjectFactory.ts'); + oppia.factory('StatesObjectFactory', [ 'StateObjectFactory', 'INTERACTION_SPECS', function(StateObjectFactory, INTERACTION_SPECS) { diff --git a/core/templates/dev/head/domain/exploration/StatesObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/StatesObjectFactorySpec.ts index 6ef7d60e4b51..e23028532d33 100644 --- a/core/templates/dev/head/domain/exploration/StatesObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/StatesObjectFactorySpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for the States object factory. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/StatesObjectFactory.ts'); + +require('domain/state/StateObjectFactory.ts'); + describe('States object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/SubtitledHtmlObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/SubtitledHtmlObjectFactorySpec.ts index 09f50dc65d85..03e3e7303625 100644 --- a/core/templates/dev/head/domain/exploration/SubtitledHtmlObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/SubtitledHtmlObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the SubtitledHtml object factory. */ +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + describe('SubtitledHtml object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/VoiceoverObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/VoiceoverObjectFactorySpec.ts index f923991661ea..5f71b5fdbb9d 100644 --- a/core/templates/dev/head/domain/exploration/VoiceoverObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/VoiceoverObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Voiceover object factory. */ +require('domain/exploration/VoiceoverObjectFactory.ts'); + describe('Voiceover object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/WrittenTranslationObjectFactorySpec.ts b/core/templates/dev/head/domain/exploration/WrittenTranslationObjectFactorySpec.ts index 8b64422c8823..6d2a26931b8e 100644 --- a/core/templates/dev/head/domain/exploration/WrittenTranslationObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/exploration/WrittenTranslationObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the WrittenTranslation object factory. */ +require('domain/exploration/WrittenTranslationObjectFactory.ts'); + describe('WrittenTranslation object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/exploration/WrittenTranslationsObjectFactory.ts b/core/templates/dev/head/domain/exploration/WrittenTranslationsObjectFactory.ts index bb96000e548e..edc81d5a8c33 100644 --- a/core/templates/dev/head/domain/exploration/WrittenTranslationsObjectFactory.ts +++ b/core/templates/dev/head/domain/exploration/WrittenTranslationsObjectFactory.ts @@ -17,6 +17,10 @@ * WrittenTranslations domain objects. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/WrittenTranslationObjectFactory.ts'); +require('domain/utilities/LanguageUtilService.ts'); + oppia.factory('WrittenTranslationsObjectFactory', [ 'WrittenTranslationObjectFactory', function(WrittenTranslationObjectFactory) { var WrittenTranslations = function(translationsMapping) { diff --git a/core/templates/dev/head/domain/feedback_message/FeedbackMessageSummaryObjectFactorySpec.ts b/core/templates/dev/head/domain/feedback_message/FeedbackMessageSummaryObjectFactorySpec.ts index 0241b0db9599..b9739d89462b 100644 --- a/core/templates/dev/head/domain/feedback_message/FeedbackMessageSummaryObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/feedback_message/FeedbackMessageSummaryObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for FeedbackMessageSummaryObjectFactory. */ +require('domain/feedback_message/FeedbackMessageSummaryObjectFactory.ts'); + describe('Feedback message object factory', function() { var FeedbackMessageSummaryObjectFactory = null; diff --git a/core/templates/dev/head/domain/feedback_thread/FeedbackThreadObjectFactorySpec.ts b/core/templates/dev/head/domain/feedback_thread/FeedbackThreadObjectFactorySpec.ts index 4a9e67c4b857..0a407b292f41 100644 --- a/core/templates/dev/head/domain/feedback_thread/FeedbackThreadObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/feedback_thread/FeedbackThreadObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for FeedbackThreadObjectFactory. */ +require('domain/feedback_thread/FeedbackThreadObjectFactory.ts'); + describe('Feedback thread object factory', function() { beforeEach(angular.mock.module('oppia')); var FeedbackThreadObjectFactory = null; diff --git a/core/templates/dev/head/domain/feedback_thread/FeedbackThreadSummaryObjectFactorySpec.ts b/core/templates/dev/head/domain/feedback_thread/FeedbackThreadSummaryObjectFactorySpec.ts index c82a4e979c61..bbea52ac1129 100644 --- a/core/templates/dev/head/domain/feedback_thread/FeedbackThreadSummaryObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/feedback_thread/FeedbackThreadSummaryObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for FeedbackThreadSummaryObjectFactory. */ +require('domain/feedback_thread/FeedbackThreadSummaryObjectFactory.ts'); + describe('Feedback thread object factory', function() { var FeedbackThreadSummaryObjectFactory = null; diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactorySpec.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactorySpec.ts index 8634a09b5426..3831aa0e3b61 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for LearnerDashboardActivityIdsObjectFactory. */ +require('domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactory.ts'); + describe('Learner dashboard activity ids object factory', function() { var LearnerDashboardActivityIdsObjectFactory = null; var learnerDashboardActivityIdsDict = null; diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardBackendApiServiceSpec.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardBackendApiServiceSpec.ts index f1f063a00eb3..ddeeaad3b533 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for LearnerDashboardBackendApiService. */ +require('domain/learner_dashboard/LearnerDashboardBackendApiService.ts'); + describe('Learner Dashboard Backend API Service', function() { var LearnerDashboardBackendApiService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIconsDirective.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIconsDirective.ts index dd47616e66d7..9beb3f01d5c1 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIconsDirective.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIconsDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for showing learner dashboard icons. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('learnerDashboardIcons', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIdsBackendApiServiceSpec.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIdsBackendApiServiceSpec.ts index fa1ee5e2b730..a25b98745feb 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIdsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerDashboardIdsBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for LearnerDashboardIdsBackendApiService. */ +require('domain/learner_dashboard/LearnerDashboardIdsBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + describe('Learner Dashboard Backend API Service', function() { var LearnerDashboardIdsBackendApiService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistService.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistService.ts index ecfa9a6578a6..97bdb57bcb96 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistService.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistService.ts @@ -16,6 +16,9 @@ * @fileoverview Service related to the learner playlist. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.factory('LearnerPlaylistService', [ '$http', '$uibModal', 'AlertsService', 'UrlInterpolationService', function($http, $uibModal, AlertsService, UrlInterpolationService) { diff --git a/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistServiceSpec.ts b/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistServiceSpec.ts index b4a22f83cbd9..7970eb8b59be 100644 --- a/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistServiceSpec.ts +++ b/core/templates/dev/head/domain/learner_dashboard/LearnerPlaylistServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests for LearnerPlaylistService.js. */ +require('domain/learner_dashboard/LearnerPlaylistService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + describe('Learner playlist service factory', function() { var LearnerPlaylistService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/objects/FractionObjectFactorySpec.ts b/core/templates/dev/head/domain/objects/FractionObjectFactorySpec.ts index b2f09fc255d1..76dd1c2a7133 100644 --- a/core/templates/dev/head/domain/objects/FractionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/objects/FractionObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview unit tests for the fraction object type factory service. */ +require('domain/objects/FractionObjectFactory.ts'); + describe('FractionObjectFactory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactory.ts b/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactory.ts index 8256f9e34207..4ce8e961eac1 100644 --- a/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactory.ts +++ b/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactory.ts @@ -17,6 +17,9 @@ * domain objects. */ +require('domain/objects/FractionObjectFactory.ts'); +require('domain/objects/UnitsObjectFactory.ts'); + oppia.constant('NUMBER_WITH_UNITS_PARSING_ERRORS', { INVALID_VALUE: 'Please ensure that value is either a fraction or a number', diff --git a/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactorySpec.ts b/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactorySpec.ts index 4a96ecc0c6ff..1e0fa74a7fff 100644 --- a/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/objects/NumberWithUnitsObjectFactorySpec.ts @@ -16,6 +16,10 @@ * @fileoverview unit tests for number with units object type factory service. */ +require('domain/objects/FractionObjectFactory.ts'); +require('domain/objects/NumberWithUnitsObjectFactory.ts'); +require('domain/objects/UnitsObjectFactory.ts'); + describe('NumberWithUnitsObjectFactory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/question/EditableQuestionBackendApiService.ts b/core/templates/dev/head/domain/question/EditableQuestionBackendApiService.ts index c19b36a7e489..7b1952830202 100644 --- a/core/templates/dev/head/domain/question/EditableQuestionBackendApiService.ts +++ b/core/templates/dev/head/domain/question/EditableQuestionBackendApiService.ts @@ -16,6 +16,17 @@ * @fileoverview Service to send and receive changes to a question in the * backend. */ + +require('domain/collection/GuestCollectionProgressService.ts'); +require('domain/exploration/AnswerGroupObjectFactory.ts'); +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/HintObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/ParamSpecObjectFactory.ts'); +require('domain/exploration/WrittenTranslationObjectFactory.ts'); +require('domain/objects/FractionObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'EDITABLE_QUESTION_DATA_URL_TEMPLATE', '/question_editor_handler/data/'); diff --git a/core/templates/dev/head/domain/question/EditableQuestionBackendApiServiceSpec.ts b/core/templates/dev/head/domain/question/EditableQuestionBackendApiServiceSpec.ts index 008e3fb4d68b..7962072f773b 100644 --- a/core/templates/dev/head/domain/question/EditableQuestionBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/question/EditableQuestionBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for EditableQuestionBackendApiService. */ +require('domain/question/EditableQuestionBackendApiService.ts'); + describe('Editable question backend API service', function() { var EditableQuestionBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/question/PretestQuestionBackendApiService.ts b/core/templates/dev/head/domain/question/PretestQuestionBackendApiService.ts index 1eb791eed265..5a8fa11edbce 100644 --- a/core/templates/dev/head/domain/question/PretestQuestionBackendApiService.ts +++ b/core/templates/dev/head/domain/question/PretestQuestionBackendApiService.ts @@ -15,6 +15,9 @@ /** * @fileoverview Service to receive questions as pretests for an exploration. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'PRETEST_QUESTIONS_URL_TEMPLATE', '/pretest_handler/?story_id=&cursor='); diff --git a/core/templates/dev/head/domain/question/PretestQuestionBackendApiServiceSpec.ts b/core/templates/dev/head/domain/question/PretestQuestionBackendApiServiceSpec.ts index 93bfb5203c97..bc71130a4108 100644 --- a/core/templates/dev/head/domain/question/PretestQuestionBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/question/PretestQuestionBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for PretestQuestionBackendApiService. */ +require('domain/question/PretestQuestionBackendApiService.ts'); + describe('Pretest question backend API service', function() { var PretestQuestionBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/question/QuestionObjectFactory.ts b/core/templates/dev/head/domain/question/QuestionObjectFactory.ts index 7a590a0caace..c50b9710b16a 100644 --- a/core/templates/dev/head/domain/question/QuestionObjectFactory.ts +++ b/core/templates/dev/head/domain/question/QuestionObjectFactory.ts @@ -17,6 +17,8 @@ * question domain objects. */ +require('domain/state/StateObjectFactory.ts'); + oppia.factory('QuestionObjectFactory', [ 'StateObjectFactory', 'INTERACTION_SPECS', function(StateObjectFactory, INTERACTION_SPECS) { diff --git a/core/templates/dev/head/domain/question/QuestionObjectFactorySpec.ts b/core/templates/dev/head/domain/question/QuestionObjectFactorySpec.ts index c097b83cbf23..8ca551523986 100644 --- a/core/templates/dev/head/domain/question/QuestionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/question/QuestionObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests for QuestionContentsObjectFactory. */ +require('domain/question/QuestionObjectFactory.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); + describe('Question object factory', function() { var QuestionObjectFactory = null; var _sampleQuestion = null; diff --git a/core/templates/dev/head/domain/question/QuestionPlayerBackendApiServiceSpec.ts b/core/templates/dev/head/domain/question/QuestionPlayerBackendApiServiceSpec.ts index 2a6921e4f9ba..80a7fe522ef6 100644 --- a/core/templates/dev/head/domain/question/QuestionPlayerBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/question/QuestionPlayerBackendApiServiceSpec.ts @@ -14,6 +14,9 @@ /** * @fileoverview Unit tests for QuestionPlayerBackendApiService. */ + +require('domain/question/QuestionPlayerBackendApiService.ts'); + describe('Question Player backend Api service', function() { var QuestionPlayerBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/question/QuestionUpdateService.ts b/core/templates/dev/head/domain/question/QuestionUpdateService.ts index 9541df2fbd01..104091d7a9c2 100644 --- a/core/templates/dev/head/domain/question/QuestionUpdateService.ts +++ b/core/templates/dev/head/domain/question/QuestionUpdateService.ts @@ -16,6 +16,11 @@ * @fileoverview Service to handle the updating of a question. */ +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/QuestionUndoRedoService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/question/QuestionObjectFactory.ts'); + oppia.constant('QUESTION_PROPERTY_LANGUAGE_CODE', 'language_code'); oppia.constant('QUESTION_PROPERTY_QUESTION_STATE_DATA', 'question_state_data'); diff --git a/core/templates/dev/head/domain/question/QuestionUpdateServiceSpec.ts b/core/templates/dev/head/domain/question/QuestionUpdateServiceSpec.ts index 7d015f60e0b0..9b650c10d7d9 100644 --- a/core/templates/dev/head/domain/question/QuestionUpdateServiceSpec.ts +++ b/core/templates/dev/head/domain/question/QuestionUpdateServiceSpec.ts @@ -16,6 +16,14 @@ * @fileoverview Unit tests for question update service. */ +require('App.ts'); +require('domain/editor/undo_redo/QuestionUndoRedoService.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/question/QuestionObjectFactory.ts'); +require('domain/question/QuestionUpdateService.ts'); +require('domain/state/StateObjectFactory.ts'); +require('pages/question_editor/QuestionEditorDirective.ts'); + describe('Question update service', function() { var QuestionUpdateService = null; var QuestionObjectFactory = null; diff --git a/core/templates/dev/head/domain/sidebar/SidebarStatusService.ts b/core/templates/dev/head/domain/sidebar/SidebarStatusService.ts index 96803d7b399f..e836f1fc78da 100644 --- a/core/templates/dev/head/domain/sidebar/SidebarStatusService.ts +++ b/core/templates/dev/head/domain/sidebar/SidebarStatusService.ts @@ -17,6 +17,8 @@ * hamburger-menu sidebar. */ +require('services/contextual/WindowDimensionsService.ts'); + oppia.factory('SidebarStatusService', [ 'WindowDimensionsService', function(WindowDimensionsService) { var pendingSidebarClick = false; diff --git a/core/templates/dev/head/domain/sidebar/SidebarStatusServiceSpec.ts b/core/templates/dev/head/domain/sidebar/SidebarStatusServiceSpec.ts index aebcad8029ec..ae509d99609f 100644 --- a/core/templates/dev/head/domain/sidebar/SidebarStatusServiceSpec.ts +++ b/core/templates/dev/head/domain/sidebar/SidebarStatusServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SidebarStatusService. */ +require('domain/sidebar/SidebarStatusService.ts'); + describe('SidebarStatusService', function() { var SidebarStatusService, $window; diff --git a/core/templates/dev/head/domain/skill/ConceptCardBackendApiService.ts b/core/templates/dev/head/domain/skill/ConceptCardBackendApiService.ts index 7e36ebf112f8..01c5b3cf314c 100644 --- a/core/templates/dev/head/domain/skill/ConceptCardBackendApiService.ts +++ b/core/templates/dev/head/domain/skill/ConceptCardBackendApiService.ts @@ -16,6 +16,9 @@ * @fileoverview Service to retrieve read only information * about the concept card of a skill from the backend. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'CONCEPT_CARD_DATA_URL_TEMPLATE', '/concept_card_handler/'); diff --git a/core/templates/dev/head/domain/skill/ConceptCardBackendApiServiceSpec.ts b/core/templates/dev/head/domain/skill/ConceptCardBackendApiServiceSpec.ts index 15f54f932089..d5cb4df11be9 100644 --- a/core/templates/dev/head/domain/skill/ConceptCardBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/skill/ConceptCardBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for ConceptCardBackendApiService. */ +require('domain/skill/ConceptCardBackendApiService.ts'); + describe('Concept card backend API service', function() { var ConceptCardBackendApiService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/skill/ConceptCardObjectFactory.ts b/core/templates/dev/head/domain/skill/ConceptCardObjectFactory.ts index e8e05aa2b3c9..a34e7eba4307 100644 --- a/core/templates/dev/head/domain/skill/ConceptCardObjectFactory.ts +++ b/core/templates/dev/head/domain/skill/ConceptCardObjectFactory.ts @@ -17,6 +17,9 @@ * concept card. In the backend, this is referred to as SkillContents. */ +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + oppia.factory('ConceptCardObjectFactory', [ 'ContentIdsToAudioTranslationsObjectFactory', 'SubtitledHtmlObjectFactory', 'COMPONENT_NAME_EXPLANATION', diff --git a/core/templates/dev/head/domain/skill/ConceptCardObjectFactorySpec.ts b/core/templates/dev/head/domain/skill/ConceptCardObjectFactorySpec.ts index 76f5aecb616c..ebaa245af29b 100644 --- a/core/templates/dev/head/domain/skill/ConceptCardObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/skill/ConceptCardObjectFactorySpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for ConceptCardObjectFactory. */ +require('App.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/skill/ConceptCardObjectFactory.ts'); + describe('Concept card object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/skill/EditableSkillBackendApiService.ts b/core/templates/dev/head/domain/skill/EditableSkillBackendApiService.ts index c6002a89d6f1..54c11871764e 100644 --- a/core/templates/dev/head/domain/skill/EditableSkillBackendApiService.ts +++ b/core/templates/dev/head/domain/skill/EditableSkillBackendApiService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to send changes to a skill to the backend. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'EDITABLE_SKILL_DATA_URL_TEMPLATE', '/skill_editor_handler/data/'); diff --git a/core/templates/dev/head/domain/skill/EditableSkillBackendApiServiceSpec.ts b/core/templates/dev/head/domain/skill/EditableSkillBackendApiServiceSpec.ts index 8a2acc9a2ca6..a0198235f33d 100644 --- a/core/templates/dev/head/domain/skill/EditableSkillBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/skill/EditableSkillBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for EditableSkillBackendApiService. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/skill/EditableSkillBackendApiService.ts'); + describe('Editable skill backend API service', function() { var EditableSkillBackendApiService = null; var UndoRedoService = null; diff --git a/core/templates/dev/head/domain/skill/MisconceptionObjectFactorySpec.ts b/core/templates/dev/head/domain/skill/MisconceptionObjectFactorySpec.ts index 11f0d3ab1222..ec23333d0150 100644 --- a/core/templates/dev/head/domain/skill/MisconceptionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/skill/MisconceptionObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for MisconceptionObjectFacfory. */ +require('domain/skill/MisconceptionObjectFactory.ts'); + describe('Misconception object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/skill/SkillObjectFactory.ts b/core/templates/dev/head/domain/skill/SkillObjectFactory.ts index d62393c07467..327104f74b42 100644 --- a/core/templates/dev/head/domain/skill/SkillObjectFactory.ts +++ b/core/templates/dev/head/domain/skill/SkillObjectFactory.ts @@ -17,6 +17,10 @@ * instances of Skill objects. */ +require('domain/skill/ConceptCardObjectFactory.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('SkillObjectFactory', [ 'ConceptCardObjectFactory', 'MisconceptionObjectFactory', 'ValidatorsService', function( diff --git a/core/templates/dev/head/domain/skill/SkillObjectFactorySpec.ts b/core/templates/dev/head/domain/skill/SkillObjectFactorySpec.ts index 0cb5d9fa5deb..99ed4be27ef7 100644 --- a/core/templates/dev/head/domain/skill/SkillObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/skill/SkillObjectFactorySpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for SkillObjectFactory. */ +require('App.ts'); +require('domain/skill/ConceptCardObjectFactory.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); +require('domain/skill/SkillObjectFactory.ts'); + describe('Skill object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/skill/SkillRightsBackendApiService.ts b/core/templates/dev/head/domain/skill/SkillRightsBackendApiService.ts index 2fcf6ac541ee..acb79bbbb71c 100644 --- a/core/templates/dev/head/domain/skill/SkillRightsBackendApiService.ts +++ b/core/templates/dev/head/domain/skill/SkillRightsBackendApiService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to change the rights of skills in the backend. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('SkillRightsBackendApiService', [ '$http', '$q', 'UrlInterpolationService', 'SKILL_PUBLISH_URL_TEMPLATE', 'SKILL_RIGHTS_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/skill/SkillRightsBackendApiServiceSpec.ts b/core/templates/dev/head/domain/skill/SkillRightsBackendApiServiceSpec.ts index c4c93629f369..40903251eb66 100644 --- a/core/templates/dev/head/domain/skill/SkillRightsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/skill/SkillRightsBackendApiServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for SkillRightsBackendApiService. */ +require('App.ts'); +require('domain/skill/SkillRightsBackendApiService.ts'); +require('pages/skill_editor/SkillEditor.ts'); + describe('Skill rights backend API service', function() { var SkillRightsBackendApiService = null; var $rootScope = null; diff --git a/core/templates/dev/head/domain/skill/SkillRightsObjectFactorySpec.ts b/core/templates/dev/head/domain/skill/SkillRightsObjectFactorySpec.ts index e67bb42ca81f..63828a149fa6 100644 --- a/core/templates/dev/head/domain/skill/SkillRightsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/skill/SkillRightsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SkillRightsObjectFactory. */ +require('domain/skill/SkillRightsObjectFactory.ts'); + describe('Skill rights object factory', function() { var SkillRightsObjectFactory = null; diff --git a/core/templates/dev/head/domain/skill/SkillSummaryObjectFactorySpec.ts b/core/templates/dev/head/domain/skill/SkillSummaryObjectFactorySpec.ts index 7ad57ad1ef17..e0cf3c1e8c73 100644 --- a/core/templates/dev/head/domain/skill/SkillSummaryObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/skill/SkillSummaryObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SkillSummaryObjectFactory. */ +require('domain/skill/SkillSummaryObjectFactory.ts'); + describe('Skill summary object factory', function() { var SkillSummaryObjectFactory = null; diff --git a/core/templates/dev/head/domain/skill/SkillUpdateService.ts b/core/templates/dev/head/domain/skill/SkillUpdateService.ts index aa7b004a3f16..f945990638ca 100644 --- a/core/templates/dev/head/domain/skill/SkillUpdateService.ts +++ b/core/templates/dev/head/domain/skill/SkillUpdateService.ts @@ -16,6 +16,10 @@ * @fileoverview Service to handle the updating of a skill. */ +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/skill/SkillObjectFactory.ts'); + oppia.constant('SKILL_PROPERTY_DESCRIPTION', 'description'); oppia.constant('SKILL_PROPERTY_LANGUAGE_CODE', 'language_code'); oppia.constant('SKILL_CONTENTS_PROPERTY_EXPLANATION', 'explanation'); diff --git a/core/templates/dev/head/domain/skill/SkillUpdateServiceSpec.ts b/core/templates/dev/head/domain/skill/SkillUpdateServiceSpec.ts index c1cd07268eae..da19b9dbda1e 100644 --- a/core/templates/dev/head/domain/skill/SkillUpdateServiceSpec.ts +++ b/core/templates/dev/head/domain/skill/SkillUpdateServiceSpec.ts @@ -16,6 +16,13 @@ * @fileoverview Unit tests for SkillUpdateService. */ +require('App.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); +require('domain/skill/SkillObjectFactory.ts'); +require('domain/skill/SkillUpdateService.ts'); + describe('Skill update service', function() { var SkillUpdateService, SubtitledHtmlObjectFactory, diff --git a/core/templates/dev/head/domain/state/StateObjectFactory.ts b/core/templates/dev/head/domain/state/StateObjectFactory.ts index bcd5ef49b929..82352ff9d9f1 100644 --- a/core/templates/dev/head/domain/state/StateObjectFactory.ts +++ b/core/templates/dev/head/domain/state/StateObjectFactory.ts @@ -17,6 +17,13 @@ * domain objects. */ +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/RecordedVoiceoversObjectFactory.ts'); +require('domain/exploration/InteractionObjectFactory.ts'); +require('domain/exploration/ParamChangesObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/exploration/WrittenTranslationsObjectFactory.ts'); + oppia.factory('StateObjectFactory', [ 'InteractionObjectFactory', 'ParamChangesObjectFactory', 'RecordedVoiceoversObjectFactory', 'SubtitledHtmlObjectFactory', diff --git a/core/templates/dev/head/domain/state_card/StateCardObjectFactory.ts b/core/templates/dev/head/domain/state_card/StateCardObjectFactory.ts index 12ea07fdf688..6de5e967c55a 100644 --- a/core/templates/dev/head/domain/state_card/StateCardObjectFactory.ts +++ b/core/templates/dev/head/domain/state_card/StateCardObjectFactory.ts @@ -17,6 +17,9 @@ * card domain objects used in the exploration player. */ +require('pages/exploration_player/AudioTranslationLanguageService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); + oppia.factory('StateCardObjectFactory', [ 'AudioTranslationLanguageService', 'ExplorationHtmlFormatterService', 'INTERACTION_DISPLAY_MODE_INLINE', 'INTERACTION_SPECS', diff --git a/core/templates/dev/head/domain/state_card/StateCardObjectFactorySpec.ts b/core/templates/dev/head/domain/state_card/StateCardObjectFactorySpec.ts index b037a808d776..eaebce1ffe03 100644 --- a/core/templates/dev/head/domain/state_card/StateCardObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/state_card/StateCardObjectFactorySpec.ts @@ -16,6 +16,14 @@ * @fileoverview Tests for StateCardObjectFactory. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/InteractionObjectFactory.ts'); +require('domain/exploration/RecordedVoiceoversObjectFactory.ts'); +require('domain/exploration/VoiceoverObjectFactory.ts'); +require('domain/state_card/StateCardObjectFactory.ts'); +require('pages/question_editor/QuestionEditorDirective.ts'); + describe('State card object factory', function() { var StateCardObjectFactory = null; var InteractionObjectFactory = null; diff --git a/core/templates/dev/head/domain/statistics/ImprovementActionButtonObjectFactorySpec.ts b/core/templates/dev/head/domain/statistics/ImprovementActionButtonObjectFactorySpec.ts index dcde84b1a842..a265f5eb2449 100644 --- a/core/templates/dev/head/domain/statistics/ImprovementActionButtonObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/statistics/ImprovementActionButtonObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the ImprovementActionButtonObjectFactory. */ +require('domain/statistics/ImprovementActionButtonObjectFactory.ts'); + describe('ImprovementActionButtonObjectFactory', function() { beforeEach(angular.mock.module('oppia')); beforeEach(angular.mock.inject(function($injector) { diff --git a/core/templates/dev/head/domain/statistics/LearnerActionObjectFactorySpec.ts b/core/templates/dev/head/domain/statistics/LearnerActionObjectFactorySpec.ts index 216146e2df15..0f23aa47b838 100644 --- a/core/templates/dev/head/domain/statistics/LearnerActionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/statistics/LearnerActionObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the LearnerActionObjectFactory. */ +require('domain/statistics/LearnerActionObjectFactory.ts'); + describe('Learner Action Object Factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactory.ts b/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactory.ts index f08f2d62e993..f6f19fdb85f4 100644 --- a/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactory.ts +++ b/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactory.ts @@ -16,6 +16,11 @@ * @fileoverview Factory for creating Playthrough Cards in the Improvements Tab. */ + +require('domain/statistics/ImprovementActionButtonObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.constant('PLAYTHROUGH_IMPROVEMENT_CARD_TYPE', 'playthrough'); oppia.factory('PlaythroughImprovementCardObjectFactory', [ diff --git a/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactorySpec.ts b/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactorySpec.ts index 4bb26d421ca4..5ae47672e7e7 100644 --- a/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/statistics/PlaythroughImprovementCardObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the PlaythroughImprovementCardObjectFactory. */ +require('domain/statistics/PlaythroughImprovementCardObjectFactory.ts'); +require('domain/statistics/PlaythroughIssueObjectFactory.ts'); + describe('PlaythroughImprovementCardObjectFactory', function() { beforeEach(angular.mock.module('oppia')); beforeEach(angular.mock.inject(function($injector) { diff --git a/core/templates/dev/head/domain/statistics/PlaythroughIssueObjectFactorySpec.ts b/core/templates/dev/head/domain/statistics/PlaythroughIssueObjectFactorySpec.ts index 37442fcb5dbc..c06ee2b6cd08 100644 --- a/core/templates/dev/head/domain/statistics/PlaythroughIssueObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/statistics/PlaythroughIssueObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the PlaythroughIssueObjectFactory. */ +require('domain/statistics/PlaythroughIssueObjectFactory.ts'); + describe('Playthrough Issue Object Factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/statistics/PlaythroughObjectFactory.ts b/core/templates/dev/head/domain/statistics/PlaythroughObjectFactory.ts index 64f8c16304b9..24ba88c1ed3c 100644 --- a/core/templates/dev/head/domain/statistics/PlaythroughObjectFactory.ts +++ b/core/templates/dev/head/domain/statistics/PlaythroughObjectFactory.ts @@ -17,6 +17,8 @@ * domain objects. */ +require('domain/statistics/LearnerActionObjectFactory.ts'); + oppia.factory('PlaythroughObjectFactory', [ 'LearnerActionObjectFactory', function(LearnerActionObjectFactory) { /** diff --git a/core/templates/dev/head/domain/statistics/PlaythroughObjectFactorySpec.ts b/core/templates/dev/head/domain/statistics/PlaythroughObjectFactorySpec.ts index 3adacfef0326..9dd8c247d6fd 100644 --- a/core/templates/dev/head/domain/statistics/PlaythroughObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/statistics/PlaythroughObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the PlaythroughObjectFactory. */ +require('domain/statistics/LearnerActionObjectFactory.ts'); +require('domain/statistics/PlaythroughObjectFactory.ts'); + describe('Playthrough Object Factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/story/EditableStoryBackendApiService.ts b/core/templates/dev/head/domain/story/EditableStoryBackendApiService.ts index 6c61e740f88a..072878d3f55a 100644 --- a/core/templates/dev/head/domain/story/EditableStoryBackendApiService.ts +++ b/core/templates/dev/head/domain/story/EditableStoryBackendApiService.ts @@ -15,6 +15,9 @@ /** * @fileoverview Service to send changes to a story to the backend. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'EDITABLE_STORY_DATA_URL_TEMPLATE', '/story_editor_handler/data//'); diff --git a/core/templates/dev/head/domain/story/EditableStoryBackendApiServiceSpec.ts b/core/templates/dev/head/domain/story/EditableStoryBackendApiServiceSpec.ts index b2c976863585..49c28471db51 100644 --- a/core/templates/dev/head/domain/story/EditableStoryBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/story/EditableStoryBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for EditableStoryBackendApiService. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/EditableStoryBackendApiService.ts'); + describe('Editable story backend API service', function() { var EditableStoryBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/story/StoryContentsObjectFactory.ts b/core/templates/dev/head/domain/story/StoryContentsObjectFactory.ts index 92dcb220c0fe..6451db37f85a 100644 --- a/core/templates/dev/head/domain/story/StoryContentsObjectFactory.ts +++ b/core/templates/dev/head/domain/story/StoryContentsObjectFactory.ts @@ -17,6 +17,9 @@ * story contents domain objects. */ +require('domain/story/StoryNodeObjectFactory.ts'); +require('pages/story_editor/StoryEditor.ts'); + oppia.factory('StoryContentsObjectFactory', [ 'StoryNodeObjectFactory', 'NODE_ID_PREFIX', function(StoryNodeObjectFactory, NODE_ID_PREFIX) { diff --git a/core/templates/dev/head/domain/story/StoryContentsObjectFactorySpec.ts b/core/templates/dev/head/domain/story/StoryContentsObjectFactorySpec.ts index 4ac98f8258b6..9c941e652e65 100644 --- a/core/templates/dev/head/domain/story/StoryContentsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/story/StoryContentsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for StoryContentsObjectFactory. */ +require('domain/story/StoryContentsObjectFactory.ts'); + describe('Story contents object factory', function() { var StoryContentsObjectFactory = null; var _sampleSubtopic = null; diff --git a/core/templates/dev/head/domain/story/StoryNodeObjectFactory.ts b/core/templates/dev/head/domain/story/StoryNodeObjectFactory.ts index c2df3523dffa..18f5aed58a56 100644 --- a/core/templates/dev/head/domain/story/StoryNodeObjectFactory.ts +++ b/core/templates/dev/head/domain/story/StoryNodeObjectFactory.ts @@ -17,6 +17,8 @@ * story node domain objects. */ +require('pages/story_editor/StoryEditor.ts'); + oppia.factory('StoryNodeObjectFactory', ['NODE_ID_PREFIX', function(NODE_ID_PREFIX) { var StoryNode = function( diff --git a/core/templates/dev/head/domain/story/StoryNodeObjectFactorySpec.ts b/core/templates/dev/head/domain/story/StoryNodeObjectFactorySpec.ts index 45b5435981cb..e2a1ca299bd1 100644 --- a/core/templates/dev/head/domain/story/StoryNodeObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/story/StoryNodeObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for StoryContentsObjectFactory. */ +require('domain/story/StoryNodeObjectFactory.ts'); + describe('Story node object factory', function() { var StoryNodeObjectFactory = null; var _sampleSubtopic = null; diff --git a/core/templates/dev/head/domain/story/StoryObjectFactory.ts b/core/templates/dev/head/domain/story/StoryObjectFactory.ts index fbe3ae0ae111..f1c17fa2d407 100644 --- a/core/templates/dev/head/domain/story/StoryObjectFactory.ts +++ b/core/templates/dev/head/domain/story/StoryObjectFactory.ts @@ -17,6 +17,8 @@ * story domain objects. */ +require('domain/story/StoryContentsObjectFactory.ts'); + oppia.factory('StoryObjectFactory', ['StoryContentsObjectFactory', function(StoryContentsObjectFactory) { var Story = function( diff --git a/core/templates/dev/head/domain/story/StoryObjectFactorySpec.ts b/core/templates/dev/head/domain/story/StoryObjectFactorySpec.ts index f4e6e0913643..7cf5edfc157a 100644 --- a/core/templates/dev/head/domain/story/StoryObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/story/StoryObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for StoryObjectFactory. */ +require('domain/story/StoryObjectFactory.ts'); + describe('Story object factory', function() { var StoryObjectFactory = null; var _sampleStory = null; diff --git a/core/templates/dev/head/domain/story/StoryUpdateService.ts b/core/templates/dev/head/domain/story/StoryUpdateService.ts index d24e5a5d0544..a242566e0d80 100644 --- a/core/templates/dev/head/domain/story/StoryUpdateService.ts +++ b/core/templates/dev/head/domain/story/StoryUpdateService.ts @@ -19,8 +19,10 @@ * undo/redo service. */ -// These should match the constants defined in core.domain.story_domain. +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +// These should match the constants defined in core.domain.story_domain. oppia.constant('CMD_ADD_STORY_NODE', 'add_story_node'); oppia.constant('CMD_DELETE_STORY_NODE', 'delete_story_node'); oppia.constant( diff --git a/core/templates/dev/head/domain/story/StoryUpdateServiceSpec.ts b/core/templates/dev/head/domain/story/StoryUpdateServiceSpec.ts index 3ba9f6e7c4dd..3c97d18a1c14 100644 --- a/core/templates/dev/head/domain/story/StoryUpdateServiceSpec.ts +++ b/core/templates/dev/head/domain/story/StoryUpdateServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Tests for Story update service. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/StoryObjectFactory.ts'); +require('domain/story/StoryUpdateService.ts'); + describe('Story update service', function() { var StoryUpdateService = null; var StoryObjectFactory = null; diff --git a/core/templates/dev/head/domain/suggestion/QuestionSuggestionObjectFactory.ts b/core/templates/dev/head/domain/suggestion/QuestionSuggestionObjectFactory.ts index 77a1bb419983..3c7cf6ae29fa 100644 --- a/core/templates/dev/head/domain/suggestion/QuestionSuggestionObjectFactory.ts +++ b/core/templates/dev/head/domain/suggestion/QuestionSuggestionObjectFactory.ts @@ -17,6 +17,8 @@ suggestion domain objects. */ +require('domain/question/QuestionObjectFactory.ts'); + oppia.factory('QuestionSuggestionObjectFactory', [ 'QuestionObjectFactory', function(QuestionObjectFactory) { var Suggestion = function( diff --git a/core/templates/dev/head/domain/suggestion/SuggestionObjectFactorySpec.ts b/core/templates/dev/head/domain/suggestion/SuggestionObjectFactorySpec.ts index ca4953b19015..4d51c25c5fff 100644 --- a/core/templates/dev/head/domain/suggestion/SuggestionObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/suggestion/SuggestionObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for SuggestionObjectFactory. */ +require('domain/suggestion/SuggestionObjectFactory.ts'); + describe('Suggestion object factory', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactory.ts b/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactory.ts index dcd0bca5e345..05048dbde2c4 100644 --- a/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactory.ts +++ b/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactory.ts @@ -17,6 +17,9 @@ thread domain objects. */ +require('domain/suggestion/QuestionSuggestionObjectFactory.ts'); +require('domain/suggestion/SuggestionObjectFactory.ts'); + oppia.factory('SuggestionThreadObjectFactory', [ 'QuestionSuggestionObjectFactory', 'SuggestionObjectFactory', function(QuestionSuggestionObjectFactory, SuggestionObjectFactory) { diff --git a/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactorySpec.ts b/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactorySpec.ts index 2922e2ca81f3..4bd9d0fe84c8 100644 --- a/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/suggestion/SuggestionThreadObjectFactorySpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for SuggestionThreadObjectFactory. */ +require('domain/suggestion/SuggestionObjectFactory.ts'); +require('domain/suggestion/SuggestionThreadObjectFactory.ts'); + describe('Suggestion thread object factory', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/domain/summary/ExplorationSummaryBackendApiService.ts b/core/templates/dev/head/domain/summary/ExplorationSummaryBackendApiService.ts index 9c48e0cc03f0..a215e5133c85 100644 --- a/core/templates/dev/head/domain/summary/ExplorationSummaryBackendApiService.ts +++ b/core/templates/dev/head/domain/summary/ExplorationSummaryBackendApiService.ts @@ -17,6 +17,9 @@ * from the backend. */ +require('services/AlertsService.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('ExplorationSummaryBackendApiService', [ '$http', '$q', 'AlertsService', 'ValidatorsService', 'EXPLORATION_SUMMARY_DATA_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/topic/EditableTopicBackendApiService.ts b/core/templates/dev/head/domain/topic/EditableTopicBackendApiService.ts index 3dc7ee028436..764c7147ae45 100644 --- a/core/templates/dev/head/domain/topic/EditableTopicBackendApiService.ts +++ b/core/templates/dev/head/domain/topic/EditableTopicBackendApiService.ts @@ -15,6 +15,9 @@ /** * @fileoverview Service to send changes to a topic to the backend. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'TOPIC_EDITOR_STORY_URL_TEMPLATE', '/topic_editor_story_handler/'); diff --git a/core/templates/dev/head/domain/topic/EditableTopicBackendApiServiceSpec.ts b/core/templates/dev/head/domain/topic/EditableTopicBackendApiServiceSpec.ts index 1211392a93d8..5b4377aa9e91 100644 --- a/core/templates/dev/head/domain/topic/EditableTopicBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/topic/EditableTopicBackendApiServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for EditableTopicBackendApiService. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/topic/EditableTopicBackendApiService.ts'); + describe('Editable topic backend API service', function() { var EditableTopicBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/topic/SubtopicObjectFactory.ts b/core/templates/dev/head/domain/topic/SubtopicObjectFactory.ts index 8b464f4667a7..d1f579f006f1 100644 --- a/core/templates/dev/head/domain/topic/SubtopicObjectFactory.ts +++ b/core/templates/dev/head/domain/topic/SubtopicObjectFactory.ts @@ -17,6 +17,8 @@ * subtopic domain objects. */ +require('domain/skill/SkillSummaryObjectFactory.ts'); + oppia.factory('SubtopicObjectFactory', ['SkillSummaryObjectFactory', function(SkillSummaryObjectFactory) { var Subtopic = function( diff --git a/core/templates/dev/head/domain/topic/SubtopicObjectFactorySpec.ts b/core/templates/dev/head/domain/topic/SubtopicObjectFactorySpec.ts index 7da3d4e03328..c49e624e568a 100644 --- a/core/templates/dev/head/domain/topic/SubtopicObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/topic/SubtopicObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SubtopicObjectFactory. */ +require('domain/topic/SubtopicObjectFactory.ts'); + describe('Subtopic object factory', function() { var SubtopicObjectFactory = null; var _sampleSubtopic = null; diff --git a/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactory.ts b/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactory.ts index 20135523e2ff..241df52410af 100644 --- a/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactory.ts +++ b/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactory.ts @@ -17,6 +17,9 @@ * subtopic page data domain objects. */ +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); + oppia.factory('SubtopicPageContentsObjectFactory', [ 'ContentIdsToAudioTranslationsObjectFactory', 'SubtitledHtmlObjectFactory', function( diff --git a/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactorySpec.ts b/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactorySpec.ts index 4f7656f56b44..ad85f66f3e69 100644 --- a/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/topic/SubtopicPageContentsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SubtopicPageContentsObjectFactory. */ +require('domain/topic/SubtopicPageContentsObjectFactory.ts'); + describe('Subtopic page contents object factory', function() { var SubtopicPageContentsObjectFactory = null; diff --git a/core/templates/dev/head/domain/topic/SubtopicPageObjectFactory.ts b/core/templates/dev/head/domain/topic/SubtopicPageObjectFactory.ts index 123f2a8fad01..98bd0fb19afa 100644 --- a/core/templates/dev/head/domain/topic/SubtopicPageObjectFactory.ts +++ b/core/templates/dev/head/domain/topic/SubtopicPageObjectFactory.ts @@ -17,6 +17,8 @@ * subtopic page domain objects. */ +require('domain/topic/SubtopicPageContentsObjectFactory.ts'); + oppia.factory('SubtopicPageObjectFactory', [ 'SubtopicPageContentsObjectFactory', function(SubtopicPageContentsObjectFactory) { diff --git a/core/templates/dev/head/domain/topic/SubtopicPageObjectFactorySpec.ts b/core/templates/dev/head/domain/topic/SubtopicPageObjectFactorySpec.ts index 8aaade765929..703e58767dd7 100644 --- a/core/templates/dev/head/domain/topic/SubtopicPageObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/topic/SubtopicPageObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for SubtopicPageObjectFactory. */ +require('domain/topic/SubtopicPageObjectFactory.ts'); + describe('Subtopic page object factory', function() { var SubtopicPageObjectFactory = null; var _sampleSubtopic = null; diff --git a/core/templates/dev/head/domain/topic/TopicObjectFactory.ts b/core/templates/dev/head/domain/topic/TopicObjectFactory.ts index fa1f329f252d..2953742b48a3 100644 --- a/core/templates/dev/head/domain/topic/TopicObjectFactory.ts +++ b/core/templates/dev/head/domain/topic/TopicObjectFactory.ts @@ -17,6 +17,9 @@ * topic domain objects. */ +require('domain/skill/SkillSummaryObjectFactory.ts'); +require('domain/topic/SubtopicObjectFactory.ts'); + oppia.factory('TopicObjectFactory', [ 'SkillSummaryObjectFactory', 'SubtopicObjectFactory', function(SkillSummaryObjectFactory, SubtopicObjectFactory) { diff --git a/core/templates/dev/head/domain/topic/TopicObjectFactorySpec.ts b/core/templates/dev/head/domain/topic/TopicObjectFactorySpec.ts index e9af8c0565f1..f257c41a474f 100644 --- a/core/templates/dev/head/domain/topic/TopicObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/topic/TopicObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for TopicObjectFactory. */ +require('domain/topic/TopicObjectFactory.ts'); + describe('Topic object factory', function() { var TopicObjectFactory = null; var _sampleTopic = null; diff --git a/core/templates/dev/head/domain/topic/TopicRightsBackendApiService.ts b/core/templates/dev/head/domain/topic/TopicRightsBackendApiService.ts index cb7f2c82a2e9..4ab15ffdf3fd 100644 --- a/core/templates/dev/head/domain/topic/TopicRightsBackendApiService.ts +++ b/core/templates/dev/head/domain/topic/TopicRightsBackendApiService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to change the rights of topic in the backend. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('TopicRightsBackendApiService', [ '$http', '$log', '$q', 'UrlInterpolationService', 'TOPIC_MANAGER_RIGHTS_URL_TEMPLATE', 'TOPIC_RIGHTS_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/topic/TopicRightsBackendApiServiceSpec.ts b/core/templates/dev/head/domain/topic/TopicRightsBackendApiServiceSpec.ts index e7d809a55b9c..1b1dfa95668c 100644 --- a/core/templates/dev/head/domain/topic/TopicRightsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/topic/TopicRightsBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for TopicRightsBackendApiService. */ +require('domain/topic/TopicRightsBackendApiService.ts'); + describe('Topic rights backend API service', function() { var TopicRightsBackendApiService = null; var $rootScope = null; diff --git a/core/templates/dev/head/domain/topic/TopicRightsObjectFactorySpec.ts b/core/templates/dev/head/domain/topic/TopicRightsObjectFactorySpec.ts index 4fbb519b945f..b34c66056106 100644 --- a/core/templates/dev/head/domain/topic/TopicRightsObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/topic/TopicRightsObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for TopicRightsObjectFactory. */ +require('domain/topic/TopicRightsObjectFactory.ts'); + describe('Topic rights object factory', function() { var TopicRightsObjectFactory = null; var sampleTopicRights = null; diff --git a/core/templates/dev/head/domain/topic/TopicUpdateService.ts b/core/templates/dev/head/domain/topic/TopicUpdateService.ts index 6c827ba86896..b36f8601f00a 100644 --- a/core/templates/dev/head/domain/topic/TopicUpdateService.ts +++ b/core/templates/dev/head/domain/topic/TopicUpdateService.ts @@ -19,8 +19,10 @@ * undo/redo service. */ -// These should match the constants defined in core.domain.topic_domain. +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +// These should match the constants defined in core.domain.topic_domain. oppia.constant('CMD_ADD_SUBTOPIC', 'add_subtopic'); oppia.constant('CMD_DELETE_SUBTOPIC', 'delete_subtopic'); oppia.constant('CMD_ADD_UNCATEGORIZED_SKILL_ID', 'add_uncategorized_skill_id'); diff --git a/core/templates/dev/head/domain/topic/TopicUpdateServiceSpec.ts b/core/templates/dev/head/domain/topic/TopicUpdateServiceSpec.ts index 9a14adcd9af1..c2eb0802fd31 100644 --- a/core/templates/dev/head/domain/topic/TopicUpdateServiceSpec.ts +++ b/core/templates/dev/head/domain/topic/TopicUpdateServiceSpec.ts @@ -16,6 +16,18 @@ * @fileoverview Tests for Topic update service. */ +require('App.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/skill/SkillSummaryObjectFactory.ts'); +require('domain/topic/SubtopicObjectFactory.ts'); +require('domain/topic/SubtopicPageContentsObjectFactory.ts'); +require('domain/topic/SubtopicPageObjectFactory.ts'); +require('domain/topic/TopicObjectFactory.ts'); +require('domain/topic/TopicUpdateService.ts'); + describe('Topic update service', function() { var ContentIdsToAudioTranslationsObjectFactory = null; var TopicUpdateService = null; diff --git a/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiService.ts b/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiService.ts index 275a59b59afd..86a08b18d229 100644 --- a/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiService.ts +++ b/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiService.ts @@ -15,6 +15,9 @@ /** * @fileoverview Service to get topic data. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.constant( 'TOPIC_DATA_URL_TEMPLATE', '/topic_data_handler/'); diff --git a/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiServiceSpec.ts b/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiServiceSpec.ts index 2cd3d9cf8600..5eb58be699fb 100644 --- a/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/topic_viewer/TopicViewerBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for TopicViewerBackendApiService. */ +require('domain/topic_viewer/TopicViewerBackendApiService.ts'); + describe('Topic viewer backend API service', function() { var TopicViewerBackendApiService = null; var sampleDataResults = null; diff --git a/core/templates/dev/head/domain/topics_and_skills_dashboard/TopicsAndSkillsDashboardBackendApiServiceSpec.ts b/core/templates/dev/head/domain/topics_and_skills_dashboard/TopicsAndSkillsDashboardBackendApiServiceSpec.ts index 40bf076dc2df..6b4eab1a1291 100644 --- a/core/templates/dev/head/domain/topics_and_skills_dashboard/TopicsAndSkillsDashboardBackendApiServiceSpec.ts +++ b/core/templates/dev/head/domain/topics_and_skills_dashboard/TopicsAndSkillsDashboardBackendApiServiceSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for CreatorDashboardBackendApiService. */ +require( + 'domain/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboardBackendApiService.ts' +); +require('domain/utilities/UrlInterpolationService.ts'); + describe('Topics and Skills Dashboard backend API service', function() { var TopicsAndSkillsDashboardBackendApiService = null; var $httpBackend = null; diff --git a/core/templates/dev/head/domain/user/UserInfoObjectFactorySpec.ts b/core/templates/dev/head/domain/user/UserInfoObjectFactorySpec.ts index d3db73f7037c..500a58d0daf8 100644 --- a/core/templates/dev/head/domain/user/UserInfoObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/user/UserInfoObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for CreatorDashboardBackendApiService. */ +require('domain/user/UserInfoObjectFactory.ts'); + describe('User info factory', function() { var UserInfoObjectFactory = null; diff --git a/core/templates/dev/head/domain/utilities/AudioLanguageObjectFactorySpec.ts b/core/templates/dev/head/domain/utilities/AudioLanguageObjectFactorySpec.ts index 17b18d8b19c0..9467298ba84f 100644 --- a/core/templates/dev/head/domain/utilities/AudioLanguageObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/utilities/AudioLanguageObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for AudioLanguageObjectFactory. */ +require('domain/utilities/AudioLanguageObjectFactory.ts'); + describe('AudioLanguage object factory', function() { var audioLanguage = null; var alof = null; diff --git a/core/templates/dev/head/domain/utilities/AutogeneratedAudioLanguageObjectFactorySpec.ts b/core/templates/dev/head/domain/utilities/AutogeneratedAudioLanguageObjectFactorySpec.ts index 7e72d5ceeb99..398652bdc30c 100644 --- a/core/templates/dev/head/domain/utilities/AutogeneratedAudioLanguageObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/utilities/AutogeneratedAudioLanguageObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for AutogeneratedAudioLanguageObjectFactory. */ +require('domain/utilities/AutogeneratedAudioLanguageObjectFactory.ts'); + describe('AutogeneratedAudioLanguage object factory', function() { var autogenAudioLanguage = null; var aalof = null; diff --git a/core/templates/dev/head/domain/utilities/LanguageUtilService.ts b/core/templates/dev/head/domain/utilities/LanguageUtilService.ts index d5fceb8faeb1..71a7cfdf081c 100644 --- a/core/templates/dev/head/domain/utilities/LanguageUtilService.ts +++ b/core/templates/dev/head/domain/utilities/LanguageUtilService.ts @@ -16,6 +16,10 @@ * @fileoverview Utility service for language operations. */ +require('domain/utilities/AudioLanguageObjectFactory.ts'); +require('domain/utilities/AutogeneratedAudioLanguageObjectFactory.ts'); +require('domain/utilities/BrowserCheckerService.ts'); + oppia.factory('LanguageUtilService', [ 'AudioLanguageObjectFactory', 'AutogeneratedAudioLanguageObjectFactory', 'BrowserCheckerService', 'ALL_LANGUAGE_CODES', diff --git a/core/templates/dev/head/domain/utilities/LanguageUtilServiceSpec.ts b/core/templates/dev/head/domain/utilities/LanguageUtilServiceSpec.ts index d4394ee5ca38..f1fc630a4a82 100644 --- a/core/templates/dev/head/domain/utilities/LanguageUtilServiceSpec.ts +++ b/core/templates/dev/head/domain/utilities/LanguageUtilServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for LanguageUtilService */ +require('domain/utilities/LanguageUtilService.ts'); + describe('Language util service', function() { var lus = null; var mockAutogeneratedAudioLanguages = null; diff --git a/core/templates/dev/head/domain/utilities/StopwatchObjectFactorySpec.ts b/core/templates/dev/head/domain/utilities/StopwatchObjectFactorySpec.ts index 5abcf484c239..35e0d10065a7 100644 --- a/core/templates/dev/head/domain/utilities/StopwatchObjectFactorySpec.ts +++ b/core/templates/dev/head/domain/utilities/StopwatchObjectFactorySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for StopwatchObjectFactory. */ +require('domain/utilities/StopwatchObjectFactory.ts'); + describe('Stopwatch object factory', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/domain/utilities/UrlInterpolationService.ts b/core/templates/dev/head/domain/utilities/UrlInterpolationService.ts index 07f73728ce7e..77a23086dc55 100644 --- a/core/templates/dev/head/domain/utilities/UrlInterpolationService.ts +++ b/core/templates/dev/head/domain/utilities/UrlInterpolationService.ts @@ -12,6 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('services/AlertsService.ts'); +require('services/UtilsService.ts'); + /** * @fileoverview Service to construct URLs by inserting variables within them as * necessary to have a fully-qualified URL. diff --git a/core/templates/dev/head/domain/utilities/UrlInterpolationServiceSpec.ts b/core/templates/dev/head/domain/utilities/UrlInterpolationServiceSpec.ts index 8a7d0ec54f4f..a3be61b180a9 100644 --- a/core/templates/dev/head/domain/utilities/UrlInterpolationServiceSpec.ts +++ b/core/templates/dev/head/domain/utilities/UrlInterpolationServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for UrlInterpolationService. */ +require('domain/utilities/UrlInterpolationService.ts'); + describe('URL Interpolation Service', function() { var uis = null; diff --git a/core/templates/dev/head/expressions/ExpressionEvaluatorService.ts b/core/templates/dev/head/expressions/ExpressionEvaluatorService.ts index bbe444a8a052..9ad751e66dfb 100644 --- a/core/templates/dev/head/expressions/ExpressionEvaluatorService.ts +++ b/core/templates/dev/head/expressions/ExpressionEvaluatorService.ts @@ -58,6 +58,9 @@ // Constraints on the input arguments (number, types, and any other // constraints) as well as the output value and type should be documented. +require('expressions/ExpressionParserService.js'); +require('expressions/ExpressionSyntaxTreeService.ts'); + // Service for expression evaluation. oppia.factory('ExpressionEvaluatorService', [ '$log', 'ExpressionParserService', 'ExpressionSyntaxTreeService', diff --git a/core/templates/dev/head/expressions/ExpressionEvaluatorServiceSpec.ts b/core/templates/dev/head/expressions/ExpressionEvaluatorServiceSpec.ts index a587de906c32..df51b8581962 100644 --- a/core/templates/dev/head/expressions/ExpressionEvaluatorServiceSpec.ts +++ b/core/templates/dev/head/expressions/ExpressionEvaluatorServiceSpec.ts @@ -12,6 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('App.ts'); +require('expressions/ExpressionEvaluatorService.ts'); +require('expressions/ExpressionParserService.js'); +require('expressions/ExpressionSyntaxTreeService.ts'); +require('services/UtilsService.ts'); + describe('Expression evaluator service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/expressions/ExpressionInterpolationService.ts b/core/templates/dev/head/expressions/ExpressionInterpolationService.ts index dad196985008..6e62d478a478 100644 --- a/core/templates/dev/head/expressions/ExpressionInterpolationService.ts +++ b/core/templates/dev/head/expressions/ExpressionInterpolationService.ts @@ -16,6 +16,12 @@ * @fileoverview Service for interpolating expressions. */ +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('expressions/ExpressionEvaluatorService.ts'); +require('expressions/ExpressionParserService.js'); +require('expressions/ExpressionSyntaxTreeService.ts'); +require('services/HtmlEscaperService.ts'); + // Interpolates an HTML or a unicode string containing expressions. // The input value is evaluated against the supplied environments. // diff --git a/core/templates/dev/head/expressions/ExpressionInterpolationServiceSpec.ts b/core/templates/dev/head/expressions/ExpressionInterpolationServiceSpec.ts index 82016ae009de..8d705ddd7290 100644 --- a/core/templates/dev/head/expressions/ExpressionInterpolationServiceSpec.ts +++ b/core/templates/dev/head/expressions/ExpressionInterpolationServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for ExpressionInterpolationService. */ +require('App.ts'); +require('expressions/ExpressionInterpolationService.ts'); + describe('Expression interpolation service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/expressions/ExpressionParserServiceSpec.ts b/core/templates/dev/head/expressions/ExpressionParserServiceSpec.ts index 906b2b1f29a3..3b16ab4a4bd6 100644 --- a/core/templates/dev/head/expressions/ExpressionParserServiceSpec.ts +++ b/core/templates/dev/head/expressions/ExpressionParserServiceSpec.ts @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('expressions/ExpressionParserService.js'); + describe('Expression parser service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/expressions/ExpressionSyntaxTreeService.ts b/core/templates/dev/head/expressions/ExpressionSyntaxTreeService.ts index c5d528cef66d..a7d026e9165b 100644 --- a/core/templates/dev/head/expressions/ExpressionSyntaxTreeService.ts +++ b/core/templates/dev/head/expressions/ExpressionSyntaxTreeService.ts @@ -11,6 +11,9 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. + +require('expressions/ExpressionParserService.js'); + oppia.factory('ExpressionSyntaxTreeService', [ '$log', 'ExpressionParserService', 'PARAMETER_TYPES', function($log, ExpressionParserService, PARAMETER_TYPES) { diff --git a/core/templates/dev/head/expressions/ExpressionTypeParserService.ts b/core/templates/dev/head/expressions/ExpressionTypeParserService.ts index b24da54c721a..25ec07b199bc 100644 --- a/core/templates/dev/head/expressions/ExpressionTypeParserService.ts +++ b/core/templates/dev/head/expressions/ExpressionTypeParserService.ts @@ -12,6 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('expressions/ExpressionParserService.js'); +require('expressions/ExpressionSyntaxTreeService.ts'); + oppia.factory('ExpressionTypeParserService', [ '$log', 'ExpressionParserService', 'ExpressionSyntaxTreeService', 'PARAMETER_TYPES', diff --git a/core/templates/dev/head/expressions/ExpressionTypeParserServiceSpec.ts b/core/templates/dev/head/expressions/ExpressionTypeParserServiceSpec.ts index e28ad3a7c874..2914a1d9dc49 100644 --- a/core/templates/dev/head/expressions/ExpressionTypeParserServiceSpec.ts +++ b/core/templates/dev/head/expressions/ExpressionTypeParserServiceSpec.ts @@ -12,6 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('App.ts'); +require('expressions/ExpressionParserService.js'); +require('expressions/ExpressionSyntaxTreeService.ts'); +require('expressions/ExpressionTypeParserService.ts'); +require('services/UtilsService.ts'); + describe('Expression type parser service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/filters/NormalizeWhitespaceFilter.ts b/core/templates/dev/head/filters/NormalizeWhitespaceFilter.ts index 3eff3049db81..c49f0ad3735c 100644 --- a/core/templates/dev/head/filters/NormalizeWhitespaceFilter.ts +++ b/core/templates/dev/head/filters/NormalizeWhitespaceFilter.ts @@ -16,6 +16,8 @@ * @fileoverview NormalizeWhitespace filter for Oppia. */ +require('services/UtilsService.ts'); + // Filter that removes whitespace from the beginning and end of a string, and // replaces interior whitespace with a single space character. oppia.filter('normalizeWhitespace', ['UtilsService', function(UtilsService) { diff --git a/core/templates/dev/head/filters/ParameterizeRuleDescriptionFilter.ts b/core/templates/dev/head/filters/ParameterizeRuleDescriptionFilter.ts index 2b3dfc0f4ffe..53d2bc658488 100644 --- a/core/templates/dev/head/filters/ParameterizeRuleDescriptionFilter.ts +++ b/core/templates/dev/head/filters/ParameterizeRuleDescriptionFilter.ts @@ -16,6 +16,10 @@ * @fileoverview ParameterizeRuleDescription filter for Oppia. */ +require('domain/objects/FractionObjectFactory.ts'); +require('domain/objects/NumberWithUnitsObjectFactory.ts'); +require('filters/FormatRtePreviewFilter.ts'); + // Filter that changes {{...}} tags into the corresponding parameter input // values. Note that this returns an HTML string to accommodate the case of // multiple-choice input and image-click input. diff --git a/core/templates/dev/head/filters/TruncateFilter.ts b/core/templates/dev/head/filters/TruncateFilter.ts index 37dacc4d9261..8ea8312d207f 100644 --- a/core/templates/dev/head/filters/TruncateFilter.ts +++ b/core/templates/dev/head/filters/TruncateFilter.ts @@ -16,6 +16,8 @@ * @fileoverview Truncate filter for Oppia. */ +require('filters/ConvertToPlainTextFilter.ts'); + // Filter that truncates long descriptors. oppia.filter('truncate', ['$filter', function($filter) { return function(input, length, suffix) { diff --git a/core/templates/dev/head/filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts b/core/templates/dev/head/filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts index 871c1063039f..2633cba951f9 100644 --- a/core/templates/dev/head/filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts +++ b/core/templates/dev/head/filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts @@ -16,6 +16,8 @@ * @fileoverview TruncateInputBasedOnInteractionAnswerType filter for Oppia. */ +require('filters/TruncateFilter.ts'); + /* Filter that trucates the input answer based on interaction type. * @param {string} input - The answer to truncate. * @param {string} interactionId - Interaction for which answer is to be diff --git a/core/templates/dev/head/filters/WrapTextWithEllipsisFilter.ts b/core/templates/dev/head/filters/WrapTextWithEllipsisFilter.ts index fd36224fceb0..f15c406dfb12 100644 --- a/core/templates/dev/head/filters/WrapTextWithEllipsisFilter.ts +++ b/core/templates/dev/head/filters/WrapTextWithEllipsisFilter.ts @@ -16,6 +16,9 @@ * @fileoverview WrapTextWithEllipsis filter for Oppia. */ +require('filters/NormalizeWhitespaceFilter.ts'); +require('services/UtilsService.ts'); + oppia.filter('wrapTextWithEllipsis', [ '$filter', 'UtilsService', function($filter, UtilsService) { return function(input, characterCount) { diff --git a/core/templates/dev/head/filters/filtersSpec.ts b/core/templates/dev/head/filters/filtersSpec.ts index 9c6e0256ea1a..05b64703ff51 100644 --- a/core/templates/dev/head/filters/filtersSpec.ts +++ b/core/templates/dev/head/filters/filtersSpec.ts @@ -16,22 +16,38 @@ * @fileoverview Unit tests for custom filters. */ +require('filters/CamelCaseToHyphensFilter.ts'); +require('filters/CapitalizeFilter.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('filters/GetAbbreviatedTextFilter.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('filters/ParameterizeRuleDescriptionFilter.ts'); +require('filters/ReplaceInputsWithEllipsesFilter.ts'); +require('filters/SummarizeNonnegativeNumberFilter.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); +require('filters/TruncateAtFirstEllipsisFilter.ts'); +require('filters/TruncateAtFirstLineFilter.ts'); +require('filters/TruncateFilter.ts'); +require('filters/UnderscoresToCamelCaseFilter.ts'); +require('filters/WrapTextWithEllipsisFilter.ts'); +require('pages/question_editor/QuestionEditorDirective.ts'); + describe('Testing filters', function() { var filterNames = [ - 'underscoresToCamelCase', 'camelCaseToHyphens', - 'truncate', - 'truncateAtFirstLine', - 'replaceInputsWithEllipses', - 'truncateAtFirstEllipsis', - 'wrapTextWithEllipsis', - 'parameterizeRuleDescription', - 'normalizeWhitespace', + 'capitalize', 'convertToPlainText', + 'getAbbreviatedText', + 'normalizeWhitespace', + 'parameterizeRuleDescription', + 'replaceInputsWithEllipses', 'summarizeNonnegativeNumber', + 'truncate', 'truncateAndCapitalize', - 'capitalize', - 'getAbbreviatedText' + 'truncateAtFirstEllipsis', + 'truncateAtFirstLine', + 'underscoresToCamelCase', + 'wrapTextWithEllipsis', ]; beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/about/About.ts b/core/templates/dev/head/pages/about/About.ts index f7af3af0f4a9..590244a73af8 100644 --- a/core/templates/dev/head/pages/about/About.ts +++ b/core/templates/dev/head/pages/about/About.ts @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('domain/utilities/UrlInterpolationService.ts'); + /** * @fileoverview Controllers for the about page. */ diff --git a/core/templates/dev/head/pages/about/about.html b/core/templates/dev/head/pages/about/about.html index d5fe0caec68f..2ae99822e276 100644 --- a/core/templates/dev/head/pages/about/about.html +++ b/core/templates/dev/head/pages/about/about.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} About us - Oppia @@ -615,8 +615,15 @@

{% block footer_js %} {{ super() }} - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer%} diff --git a/core/templates/dev/head/pages/admin/Admin.ts b/core/templates/dev/head/pages/admin/Admin.ts index 03c0a1c0cbc3..e59981d01ea3 100644 --- a/core/templates/dev/head/pages/admin/Admin.ts +++ b/core/templates/dev/head/pages/admin/Admin.ts @@ -16,6 +16,44 @@ * @fileoverview Data and controllers for the Oppia admin page. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('directives/FocusOnDirective.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/ObjectEditorDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('pages/admin/AdminNavbarDirective.ts'); +require('pages/admin/activities_tab/AdminDevModeActivitiesTabDirective.ts'); +require('pages/admin/activities_tab/AdminProdModeActivitiesTabDirective.ts'); +require('pages/admin/config_tab/AdminConfigTabDirective.ts'); +require('pages/admin/jobs_tab/AdminJobsTabDirective.ts'); +require('pages/admin/misc_tab/AdminMiscTabDirective.ts'); +require('pages/admin/roles_tab/AdminRolesTabDirective.ts'); + +require('domain/objects/NumberWithUnitsObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/admin/AdminRouterService.ts'); +require('services/UtilsService.ts'); + oppia.constant('ADMIN_HANDLER_URL', '/adminhandler'); oppia.constant('ADMIN_ROLE_HANDLER_URL', '/adminrolehandler'); oppia.constant('PROFILE_URL_TEMPLATE', '/profile/'); diff --git a/core/templates/dev/head/pages/admin/AdminNavbarDirective.ts b/core/templates/dev/head/pages/admin/AdminNavbarDirective.ts index c3eb33b77494..6b187f69e059 100644 --- a/core/templates/dev/head/pages/admin/AdminNavbarDirective.ts +++ b/core/templates/dev/head/pages/admin/AdminNavbarDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for the navigation bar in the admin panel. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/admin/AdminRouterService.ts'); +require('services/UserService.ts'); + oppia.directive('adminNavbar', [ 'AdminRouterService', 'UrlInterpolationService', 'ADMIN_TAB_URLS', 'LOGOUT_URL', 'PROFILE_URL_TEMPLATE', diff --git a/core/templates/dev/head/pages/admin/AdminRouterServiceSpec.ts b/core/templates/dev/head/pages/admin/AdminRouterServiceSpec.ts index 7641c6896b00..36a7ce50ff74 100644 --- a/core/templates/dev/head/pages/admin/AdminRouterServiceSpec.ts +++ b/core/templates/dev/head/pages/admin/AdminRouterServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for AdminRouterService. */ +require('pages/admin/AdminRouterService.ts'); + describe('Admin router service', function() { var AdminRouterService = null; diff --git a/core/templates/dev/head/pages/admin/AdminTaskManagerServiceSpec.ts b/core/templates/dev/head/pages/admin/AdminTaskManagerServiceSpec.ts index e50ed63159fd..89fdeebea3d0 100644 --- a/core/templates/dev/head/pages/admin/AdminTaskManagerServiceSpec.ts +++ b/core/templates/dev/head/pages/admin/AdminTaskManagerServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for AdminTaskManagerService. */ +require('pages/admin/AdminTaskManagerService.ts'); + describe('Admin task manager service', function() { var AdminTaskManagerService = null; diff --git a/core/templates/dev/head/pages/admin/activities_tab/AdminDevModeActivitiesTabDirective.ts b/core/templates/dev/head/pages/admin/activities_tab/AdminDevModeActivitiesTabDirective.ts index 394d4c2a300d..9c740905e27b 100644 --- a/core/templates/dev/head/pages/admin/activities_tab/AdminDevModeActivitiesTabDirective.ts +++ b/core/templates/dev/head/pages/admin/activities_tab/AdminDevModeActivitiesTabDirective.ts @@ -17,6 +17,10 @@ * is in developer mode. */ +require('domain/objects/NumberWithUnitsObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/admin/AdminTaskManagerService.ts'); + oppia.directive('adminDevModeActivitiesTab', [ '$http', 'AdminTaskManagerService', 'UrlInterpolationService', 'ADMIN_HANDLER_URL', diff --git a/core/templates/dev/head/pages/admin/activities_tab/AdminProdModeActivitiesTabDirective.ts b/core/templates/dev/head/pages/admin/activities_tab/AdminProdModeActivitiesTabDirective.ts index f60b9aa946e9..d349ae9d9f43 100644 --- a/core/templates/dev/head/pages/admin/activities_tab/AdminProdModeActivitiesTabDirective.ts +++ b/core/templates/dev/head/pages/admin/activities_tab/AdminProdModeActivitiesTabDirective.ts @@ -17,6 +17,8 @@ * is in production mode. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('adminProdModeActivitiesTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/admin/admin.html b/core/templates/dev/head/pages/admin/admin.html index b41e3b147d31..43fac9396da9 100644 --- a/core/templates/dev/head/pages/admin/admin.html +++ b/core/templates/dev/head/pages/admin/admin.html @@ -70,71 +70,16 @@ {% include 'pages/footer_js_libs.html' %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% block footer_js %} {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/collection_editor/CollectionEditor.ts b/core/templates/dev/head/pages/collection_editor/CollectionEditor.ts index f751a8bb88de..289e3ac7e7ee 100644 --- a/core/templates/dev/head/pages/collection_editor/CollectionEditor.ts +++ b/core/templates/dev/head/pages/collection_editor/CollectionEditor.ts @@ -16,6 +16,15 @@ * @fileoverview Primary controller for the collection editor page. */ +require('pages/collection_editor/CollectionEditorNavbarBreadcrumbDirective.ts'); +require('pages/collection_editor/CollectionEditorNavbarDirective.ts'); +require('pages/collection_editor/editor_tab/CollectionEditorTabDirective.ts'); +require('pages/collection_editor/history_tab/CollectionHistoryTabDirective.ts'); +require( + 'pages/collection_editor/settings_tab/CollectionSettingsTabDirective.ts'); +require( + 'pages/collection_editor/statistics_tab/CollectionStatisticsTabDirective.ts'); + // TODO(bhenning): These constants should be provided by the backend. oppia.constant( 'COLLECTION_DATA_URL_TEMPLATE', '/collection_handler/data/'); @@ -33,6 +42,8 @@ oppia.constant( 'SEARCH_EXPLORATION_URL_TEMPLATE', '/exploration/metadata_search?q='); +oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); + oppia.controller('CollectionEditor', [ 'CollectionEditorStateService', function(CollectionEditorStateService) { diff --git a/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarBreadcrumbDirective.ts index 6e774f555459..8384fd61e150 100644 --- a/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarBreadcrumbDirective.ts @@ -16,6 +16,11 @@ * @fileoverview Controller for the navbar breadcrumb of the collection editor. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('services/stateful/FocusManagerService.ts'); + // TODO(bhenning): After the navbar is moved to a directive, this directive // should be updated to say 'Loading...' if the collection editor's controller // is not yet finished loading the collection. Also, this directive should diff --git a/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarDirective.ts b/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarDirective.ts index 800fb149ac8f..321cfff69476 100644 --- a/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/CollectionEditorNavbarDirective.ts @@ -16,6 +16,19 @@ * @fileoverview Directive for the navbar of the collection editor. */ +require('components/forms/Select2DropdownDirective.ts'); +require('components/loading/LoadingDotsDirective.ts'); + +require('domain/collection/CollectionRightsBackendApiService.ts'); +require('domain/collection/CollectionUpdateService.ts'); +require('domain/collection/CollectionValidationService.ts'); +require('domain/collection/EditableCollectionBackendApiService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('services/AlertsService.ts'); + oppia.directive('collectionEditorNavbar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/CollectionEditorStateService.ts b/core/templates/dev/head/pages/collection_editor/CollectionEditorStateService.ts index d47981734a5b..9d35521266af 100644 --- a/core/templates/dev/head/pages/collection_editor/CollectionEditorStateService.ts +++ b/core/templates/dev/head/pages/collection_editor/CollectionEditorStateService.ts @@ -18,6 +18,13 @@ * retrieving the collection, saving it, and listening for changes. */ +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/CollectionRightsBackendApiService.ts'); +require('domain/collection/CollectionRightsObjectFactory.ts'); +require('domain/collection/EditableCollectionBackendApiService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('services/AlertsService.ts'); + oppia.constant('EVENT_COLLECTION_INITIALIZED', 'collectionInitialized'); oppia.constant('EVENT_COLLECTION_REINITIALIZED', 'collectionReinitialized'); diff --git a/core/templates/dev/head/pages/collection_editor/CollectionEditorStateServiceSpec.ts b/core/templates/dev/head/pages/collection_editor/CollectionEditorStateServiceSpec.ts index d0bbc3aca525..f81a7a1b2988 100644 --- a/core/templates/dev/head/pages/collection_editor/CollectionEditorStateServiceSpec.ts +++ b/core/templates/dev/head/pages/collection_editor/CollectionEditorStateServiceSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for CollectionEditorStateService. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/CollectionRightsObjectFactory.ts'); +require('domain/collection/CollectionUpdateService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); + describe('Collection editor state service', function() { var CollectionEditorStateService = null; var CollectionObjectFactory = null; diff --git a/core/templates/dev/head/pages/collection_editor/collection_editor.html b/core/templates/dev/head/pages/collection_editor/collection_editor.html index d2e5bab0de30..73188a8e2456 100644 --- a/core/templates/dev/head/pages/collection_editor/collection_editor.html +++ b/core/templates/dev/head/pages/collection_editor/collection_editor.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {% if title %} @@ -13,6 +13,7 @@ {% endblock header_js %} @@ -49,131 +50,13 @@ {% block footer_js %} {{ super() }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {# TODO(bhenning): Remove these once RouterServices is decoupled from the exploration editor #} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionEditorTabDirective.ts b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionEditorTabDirective.ts index 59219f83102a..6707e9522671 100644 --- a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionEditorTabDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionEditorTabDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Controller for the main tab of the collection editor. */ +require('pages/collection_editor/editor_tab/CollectionNodeCreatorDirective.ts'); +require('pages/collection_editor/editor_tab/CollectionNodeEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('pages/collection_editor/editor_tab/CollectionLinearizerService.ts'); + oppia.directive('collectionEditorTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerService.ts b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerService.ts index 1355b2d8b0ba..d0d24bf42415 100644 --- a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerService.ts +++ b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerService.ts @@ -18,6 +18,8 @@ * retrieving the collection, saving it, and listening for changes. */ +require('domain/collection/CollectionUpdateService.ts'); + oppia.factory('CollectionLinearizerService', [ 'CollectionUpdateService', function(CollectionUpdateService) { diff --git a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerServiceSpec.ts b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerServiceSpec.ts index c493927e573a..3bad800e44c1 100644 --- a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerServiceSpec.ts +++ b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionLinearizerServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Tests for CollectionLinearizerService. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionObjectFactory.ts'); +require('pages/collection_editor/editor_tab/CollectionLinearizerService.ts'); + describe('Collection linearizer service', function() { var CollectionObjectFactory = null; var CollectionNodeObjectFactory = null; diff --git a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeCreatorDirective.ts b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeCreatorDirective.ts index 7b0f1c0308db..5c856366fc4f 100644 --- a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeCreatorDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeCreatorDirective.ts @@ -16,6 +16,18 @@ * @fileoverview Directive for creating a new collection node. */ +require('domain/collection/CollectionNodeObjectFactory.ts'); +require('domain/collection/CollectionUpdateService.ts'); +require('domain/collection/SearchExplorationsBackendApiService.ts'); +require('domain/summary/ExplorationSummaryBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('pages/collection_editor/editor_tab/CollectionLinearizerService.ts'); +require('services/AlertsService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/ValidatorsService.ts'); + oppia.directive('collectionNodeCreator', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeEditorDirective.ts b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeEditorDirective.ts index 9d62f077f839..ceb44316cdb7 100644 --- a/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeEditorDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/editor_tab/CollectionNodeEditorDirective.ts @@ -18,6 +18,12 @@ * and also delete the collection node represented by this directive. */ +require('domain/collection/CollectionUpdateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('pages/collection_editor/editor_tab/CollectionLinearizerService.ts'); +require('services/AlertsService.ts'); + oppia.directive('collectionNodeEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/history_tab/CollectionHistoryTabDirective.ts b/core/templates/dev/head/pages/collection_editor/history_tab/CollectionHistoryTabDirective.ts index 874fec0f7498..4a8482e61c73 100644 --- a/core/templates/dev/head/pages/collection_editor/history_tab/CollectionHistoryTabDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/history_tab/CollectionHistoryTabDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Controller for the history tab of the collection editor. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('collectionHistoryTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionDetailsEditorDirective.ts b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionDetailsEditorDirective.ts index a331416e58e1..dc9a0204684b 100644 --- a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionDetailsEditorDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionDetailsEditorDirective.ts @@ -18,6 +18,15 @@ * adding a new exploration. */ +require('components/forms/Select2DropdownDirective.ts'); + +require('domain/collection/CollectionUpdateService.ts'); +require('domain/collection/CollectionValidationService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditor.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); +require('services/AlertsService.ts'); + oppia.directive('collectionDetailsEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionPermissionsCardDirective.ts b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionPermissionsCardDirective.ts index 115b45b176d9..b366e54897f7 100644 --- a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionPermissionsCardDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionPermissionsCardDirective.ts @@ -17,6 +17,9 @@ * permissions. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/collection_editor/CollectionEditorStateService.ts'); + oppia.directive('collectionPermissionsCard', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionSettingsTabDirective.ts b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionSettingsTabDirective.ts index 312af2943e87..2694889066b8 100644 --- a/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionSettingsTabDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/settings_tab/CollectionSettingsTabDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Controller for the settings tab of the collection editor. */ +require( + 'pages/collection_editor/settings_tab/CollectionDetailsEditorDirective.ts'); +require( + 'pages/collection_editor/settings_tab/CollectionPermissionsCardDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('collectionSettingsTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_editor/statistics_tab/CollectionStatisticsTabDirective.ts b/core/templates/dev/head/pages/collection_editor/statistics_tab/CollectionStatisticsTabDirective.ts index 3af80e73fc68..a7904fe2fded 100644 --- a/core/templates/dev/head/pages/collection_editor/statistics_tab/CollectionStatisticsTabDirective.ts +++ b/core/templates/dev/head/pages/collection_editor/statistics_tab/CollectionStatisticsTabDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Controller for the statistics tab of the collection editor. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('collectionStatisticsTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_player/CollectionFooterDirective.ts b/core/templates/dev/head/pages/collection_player/CollectionFooterDirective.ts index 5c7aa5827eb9..55ac61305b81 100644 --- a/core/templates/dev/head/pages/collection_player/CollectionFooterDirective.ts +++ b/core/templates/dev/head/pages/collection_player/CollectionFooterDirective.ts @@ -17,6 +17,10 @@ * in collection player. */ +require('components/share/SharingLinksDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('collectionFooter', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_player/CollectionNodeListDirective.ts b/core/templates/dev/head/pages/collection_player/CollectionNodeListDirective.ts index d85d7d607736..1e2cad8a9be3 100644 --- a/core/templates/dev/head/pages/collection_player/CollectionNodeListDirective.ts +++ b/core/templates/dev/head/pages/collection_player/CollectionNodeListDirective.ts @@ -17,6 +17,8 @@ * playing the exploration in each node. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('collectionNodeList', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/collection_player/CollectionPlayer.ts b/core/templates/dev/head/pages/collection_player/CollectionPlayer.ts index 31ccfd9098e5..4f2f7ee199e0 100644 --- a/core/templates/dev/head/pages/collection_player/CollectionPlayer.ts +++ b/core/templates/dev/head/pages/collection_player/CollectionPlayer.ts @@ -16,6 +16,24 @@ * @fileoverview Controller for the learner's view of a collection. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('pages/collection_player/CollectionNodeListDirective.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('components/attribution_guide/AttributionGuideDirective.ts'); +require('components/background/BackgroundBannerDirective.ts'); +require('components/summary_tile/ExplorationSummaryTileDirective.ts'); +require('pages/collection_player/CollectionFooterDirective.ts'); +require('pages/collection_player/CollectionLocalNav.ts'); + +require('domain/collection/CollectionObjectFactory.ts'); +require('domain/collection/CollectionPlaythroughObjectFactory.ts'); +require('domain/collection/GuestCollectionProgressService.ts'); +require('domain/collection/ReadOnlyCollectionBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.constant( 'COLLECTION_DATA_URL_TEMPLATE', '/collection_handler/data/'); diff --git a/core/templates/dev/head/pages/collection_player/collection_player.html b/core/templates/dev/head/pages/collection_player/collection_player.html index 6f8139b7ed45..b2046c48f3f7 100644 --- a/core/templates/dev/head/pages/collection_player/collection_player.html +++ b/core/templates/dev/head/pages/collection_player/collection_player.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {{ collection_title }} - Oppia @@ -379,36 +379,13 @@

{% block footer_js %} {{ super() }} - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer%} diff --git a/core/templates/dev/head/pages/creator_dashboard/CreatorDashboard.ts b/core/templates/dev/head/pages/creator_dashboard/CreatorDashboard.ts index 938e8d927ea9..5367c782b435 100644 --- a/core/templates/dev/head/pages/creator_dashboard/CreatorDashboard.ts +++ b/core/templates/dev/head/pages/creator_dashboard/CreatorDashboard.ts @@ -16,6 +16,98 @@ * @fileoverview Controllers for the creator dashboard. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('directives/AngularHtmlBindDirective.ts'); +require('directives/MathjaxBindDirective.ts'); +require('filters/CamelCaseToHyphensFilter.ts'); +require('filters/CapitalizeFilter.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('filters/FormatRtePreviewFilter.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('filters/NormalizeWhitespacePunctuationAndCaseFilter.ts'); +require('filters/ParameterizeRuleDescriptionFilter.ts'); +require('filters/RemoveDuplicatesInArrayFilter.ts'); +require('filters/ReplaceInputsWithEllipsesFilter.ts'); +require('filters/TruncateFilter.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); +require('filters/TruncateAtFirstEllipsisFilter.ts'); +require('filters/TruncateAtFirstLineFilter.ts'); +require('filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts'); +require('filters/UnderscoresToCamelCaseFilter.ts'); +require('filters/WrapTextWithEllipsisFilter.ts'); +require('components/RatingComputationService.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedListViewerDirective.ts'); +require( + 'components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedViewerDirective.ts'); +require('components/forms/Select2DropdownDirective.ts'); +require('components/forms/ImageUploaderDirective.ts'); +require('components/forms/AudioFileUploaderDirective.ts'); +require('pages/question_editor/QuestionEditorDirective.ts'); +require('components/state/AnswerGroupEditorDirective.ts'); +require('components/state/HintEditorDirective.ts'); +require('components/state/OutcomeEditorDirective.ts'); +require('components/state/OutcomeDestinationEditorDirective.ts'); +require('components/state/OutcomeFeedbackEditorDirective.ts'); +require('components/state/ResponseHeaderDirective.ts'); +require('components/state/RuleEditorDirective.ts'); +require('components/state/RuleTypeSelectorDirective.ts'); +require('components/state/SolutionEditorDirective.ts'); +require('components/state/SolutionExplanationEditorDirective.ts'); +require('components/forms/HtmlSelectDirective.ts'); +require('services/AutoplayedVideosService.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('components/share/SharingLinksDirective.ts'); +require('components/background/BackgroundBannerDirective.ts'); +require('components/summary_tile/CollectionSummaryTileDirective.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('pages/exploration_editor/feedback_tab/ThreadTableDirective.ts'); + +require('components/ExplorationCreationService.ts'); +require('components/RatingComputationService.ts'); +require('domain/creator_dashboard/CreatorDashboardBackendApiService.ts'); +require('domain/question/QuestionObjectFactory.ts'); +require('domain/suggestion/SuggestionObjectFactory.ts'); +require('domain/suggestion/SuggestionThreadObjectFactory.ts'); +require( + 'domain/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboardBackendApiService.ts' +); +require('pages/exploration_editor/feedback_tab/ThreadStatusDisplayService.ts'); +require('pages/suggestion_editor/ShowSuggestionModalForCreatorViewService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/UserService.ts'); + oppia.constant('EXPLORATION_DROPDOWN_STATS', { OPEN_FEEDBACK: 'open_feedback' }); diff --git a/core/templates/dev/head/pages/creator_dashboard/CreatorDashboardSpec.ts b/core/templates/dev/head/pages/creator_dashboard/CreatorDashboardSpec.ts index 92cb48513975..b341fc11586f 100644 --- a/core/templates/dev/head/pages/creator_dashboard/CreatorDashboardSpec.ts +++ b/core/templates/dev/head/pages/creator_dashboard/CreatorDashboardSpec.ts @@ -17,6 +17,8 @@ * user's explorations. */ +require('pages/creator_dashboard/CreatorDashboard.ts'); + describe('Creator dashboard controller', function() { describe('CreatorDashboard', function() { var scope, ctrl, $httpBackend; diff --git a/core/templates/dev/head/pages/creator_dashboard/creator_dashboard.html b/core/templates/dev/head/pages/creator_dashboard/creator_dashboard.html index 2f789c5b0310..f5cc0fae934f 100644 --- a/core/templates/dev/head/pages/creator_dashboard/creator_dashboard.html +++ b/core/templates/dev/head/pages/creator_dashboard/creator_dashboard.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Creator Dashboard - Oppia @@ -873,58 +873,6 @@

Suggestions to review

{{ super() }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -952,184 +900,17 @@

Suggestions to review

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} {{ interaction_templates }} {{ visualizations_html }} diff --git a/core/templates/dev/head/pages/donate/Donate.ts b/core/templates/dev/head/pages/donate/Donate.ts index b4efeb5b7eac..5f8dceb3826a 100644 --- a/core/templates/dev/head/pages/donate/Donate.ts +++ b/core/templates/dev/head/pages/donate/Donate.ts @@ -16,6 +16,10 @@ * @fileoverview Controllers for the donate page. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.controller('Donate', [ '$http', '$scope', '$timeout', '$window', 'SiteAnalyticsService', 'UrlInterpolationService', 'WindowDimensionsService', diff --git a/core/templates/dev/head/pages/donate/donate.html b/core/templates/dev/head/pages/donate/donate.html index ae9116ed98ea..0d902869734b 100644 --- a/core/templates/dev/head/pages/donate/donate.html +++ b/core/templates/dev/head/pages/donate/donate.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Donate - Oppia @@ -152,8 +152,15 @@

Hear from our Oppia community

{% block footer_js %} {{ super() }} - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer %} diff --git a/core/templates/dev/head/pages/email_dashboard/EmailDashboard.ts b/core/templates/dev/head/pages/email_dashboard/EmailDashboard.ts index 0eea42bbf03f..7150006c968d 100644 --- a/core/templates/dev/head/pages/email_dashboard/EmailDashboard.ts +++ b/core/templates/dev/head/pages/email_dashboard/EmailDashboard.ts @@ -16,6 +16,9 @@ * @fileoverview Controller for oppia email dashboard page. */ +require('pages/email_dashboard/EmailDashboardDataService.ts'); +require('services/UserService.ts'); + oppia.controller('EmailDashboard', [ '$rootScope', '$scope', 'EmailDashboardDataService', 'UserService', function($rootScope, $scope, EmailDashboardDataService, UserService) { diff --git a/core/templates/dev/head/pages/email_dashboard/EmailDashboardDataServiceSpec.ts b/core/templates/dev/head/pages/email_dashboard/EmailDashboardDataServiceSpec.ts index 400b66e3594c..1ef109d8c6e0 100644 --- a/core/templates/dev/head/pages/email_dashboard/EmailDashboardDataServiceSpec.ts +++ b/core/templates/dev/head/pages/email_dashboard/EmailDashboardDataServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the email dashboard page. */ +require('pages/email_dashboard/EmailDashboardDataService.ts'); + describe('Email Dashboard Services', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/email_dashboard/EmailDashboardResult.ts b/core/templates/dev/head/pages/email_dashboard/EmailDashboardResult.ts index 9f49b78d6034..2758eb8a1764 100644 --- a/core/templates/dev/head/pages/email_dashboard/EmailDashboardResult.ts +++ b/core/templates/dev/head/pages/email_dashboard/EmailDashboardResult.ts @@ -16,6 +16,8 @@ * @fileoverview Controller for oppia email dashboard page. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.controller('EmailDashboardResult', [ '$http', '$scope', '$timeout', '$window', 'UrlInterpolationService', function($http, $scope, $timeout, $window, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/email_dashboard/email_dashboard.html b/core/templates/dev/head/pages/email_dashboard/email_dashboard.html index 5096e2b18b79..1bd89d71d093 100644 --- a/core/templates/dev/head/pages/email_dashboard/email_dashboard.html +++ b/core/templates/dev/head/pages/email_dashboard/email_dashboard.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Email Dashboard - Oppia @@ -83,6 +83,13 @@ {% block footer_js %} {{ super() }} - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/email_dashboard/email_dashboard_result.html b/core/templates/dev/head/pages/email_dashboard/email_dashboard_result.html index fecdf883329c..a55b7dcbfc46 100644 --- a/core/templates/dev/head/pages/email_dashboard/email_dashboard_result.html +++ b/core/templates/dev/head/pages/email_dashboard/email_dashboard_result.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Email Dashboard Result - Oppia @@ -68,5 +68,13 @@ {% block footer_js %} {{ super() }} - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/error/Error.ts b/core/templates/dev/head/pages/error/Error.ts index b5907a53c244..2d7aaff9bb6f 100644 --- a/core/templates/dev/head/pages/error/Error.ts +++ b/core/templates/dev/head/pages/error/Error.ts @@ -16,6 +16,9 @@ * @fileoverview Controllers for the error page. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PageTitleService.ts'); + oppia.controller('Error', [ '$scope', 'PageTitleService', 'UrlInterpolationService', function( diff --git a/core/templates/dev/head/pages/error/error.html b/core/templates/dev/head/pages/error/error.html index 5d2290dd9788..971937373c37 100644 --- a/core/templates/dev/head/pages/error/error.html +++ b/core/templates/dev/head/pages/error/error.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block navbar_breadcrumb %} {% endblock navbar_breadcrumb %} @@ -60,8 +60,15 @@

- + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer %} diff --git a/core/templates/dev/head/pages/exploration_editor/AngularNameServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/AngularNameServiceSpec.ts index f41732e318fc..b26c92490649 100644 --- a/core/templates/dev/head/pages/exploration_editor/AngularNameServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/AngularNameServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit test for the Angular names service. */ +require('pages/exploration_editor/AngularNameService.ts'); + describe('Angular names service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/AutosaveInfoModalsService.ts b/core/templates/dev/head/pages/exploration_editor/AutosaveInfoModalsService.ts index 494a722aa9d7..a8b63db822f4 100644 --- a/core/templates/dev/head/pages/exploration_editor/AutosaveInfoModalsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/AutosaveInfoModalsService.ts @@ -17,6 +17,11 @@ * on the type of response received as a result of the autosaving request. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ChangesInHumanReadableFormService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('services/LocalStorageService.ts'); + oppia.factory('AutosaveInfoModalsService', [ '$log', '$timeout', '$uibModal', '$window', 'ChangesInHumanReadableFormService', 'ExplorationDataService', diff --git a/core/templates/dev/head/pages/exploration_editor/ChangeListService.ts b/core/templates/dev/head/pages/exploration_editor/ChangeListService.ts index 84cb2f9e8b7b..4b46552a1490 100644 --- a/core/templates/dev/head/pages/exploration_editor/ChangeListService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ChangeListService.ts @@ -17,6 +17,10 @@ * committed to the server. */ +require('pages/exploration_editor/AutosaveInfoModalsService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('services/AlertsService.ts'); + oppia.factory('ChangeListService', [ '$log', '$rootScope', 'AlertsService', 'AutosaveInfoModalsService', 'ExplorationDataService', diff --git a/core/templates/dev/head/pages/exploration_editor/ChangesInHumanReadableFormService.ts b/core/templates/dev/head/pages/exploration_editor/ChangesInHumanReadableFormService.ts index 54315c3ef1b9..125aa7bcd639 100644 --- a/core/templates/dev/head/pages/exploration_editor/ChangesInHumanReadableFormService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ChangesInHumanReadableFormService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to get changes in human readable form. */ +require('services/UtilsService.ts'); + oppia.factory('ChangesInHumanReadableFormService', [ 'UtilsService', function(UtilsService) { var CMD_ADD_STATE = 'add_state'; diff --git a/core/templates/dev/head/pages/exploration_editor/EditorFirstTimeEventsService.ts b/core/templates/dev/head/pages/exploration_editor/EditorFirstTimeEventsService.ts index 833d2e13f3d5..c6cc380d8d0f 100644 --- a/core/templates/dev/head/pages/exploration_editor/EditorFirstTimeEventsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/EditorFirstTimeEventsService.ts @@ -18,6 +18,8 @@ * is opened for the first time for an exploration. */ +require('services/SiteAnalyticsService.ts'); + oppia.factory('EditorFirstTimeEventsService', [ 'SiteAnalyticsService', function(SiteAnalyticsService) { diff --git a/core/templates/dev/head/pages/exploration_editor/EditorNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/exploration_editor/EditorNavbarBreadcrumbDirective.ts index 8bb2b55d1655..11c6e2ffa0e1 100644 --- a/core/templates/dev/head/pages/exploration_editor/EditorNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/EditorNavbarBreadcrumbDirective.ts @@ -17,6 +17,11 @@ * in editor navbar. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('editorNavbarBreadcrumb', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/EditorNavigationDirective.ts b/core/templates/dev/head/pages/exploration_editor/EditorNavigationDirective.ts index c3fb8a352ddc..2daef89d44d6 100644 --- a/core/templates/dev/head/pages/exploration_editor/EditorNavigationDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/EditorNavigationDirective.ts @@ -17,6 +17,18 @@ * in editor. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/exploration_editor/StateTutorialFirstTimeService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadDataService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('editorNavigation', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts index ca9532e0c187..5d10d62b8876 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts @@ -17,6 +17,8 @@ * text to speech data. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationAutomaticTextToSpeechService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationCategoryService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationCategoryService.ts index 64982649e08b..fea7cbcb2b32 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationCategoryService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationCategoryService.ts @@ -17,6 +17,11 @@ * that it can be displayed and edited in multiple places in the UI. */ +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/exploration_editor/ExplorationPropertyService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('ExplorationCategoryService', [ '$filter', 'ExplorationPropertyService', 'ExplorationRightsService', 'ValidatorsService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts index c34a37b1dd26..8cc2bc14270b 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts @@ -17,6 +17,8 @@ * exploration. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationCorrectnessFeedbackService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationDataService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationDataService.ts index 63118374da03..a5a897c42215 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationDataService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationDataService.ts @@ -17,6 +17,12 @@ * with the exploration editor backend. */ +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('services/AlertsService.ts'); +require('services/LocalStorageService.ts'); +require('services/contextual/UrlService.ts'); + oppia.factory('ExplorationDataService', [ '$http', '$log', '$q', '$window', 'AlertsService', 'EditableExplorationBackendApiService', 'LocalStorageService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationDataServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationDataServiceSpec.ts index 9ec7451b414b..17ad5df6af2c 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationDataServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationDataServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Exploration data service. */ +require('pages/exploration_editor/ExplorationDataService.ts'); + describe('Exploration data service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationEditor.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationEditor.ts index 367ef64371b0..f4f13c299502 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationEditor.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationEditor.ts @@ -17,6 +17,150 @@ * help tab in the navbar. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('components/CkEditorRteDirective.ts'); +require('components/CkEditorWidgetsInitializer.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/AudioFileUploaderDirective.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('components/forms/ImageUploaderDirective.ts'); +require('components/forms/HtmlSelectDirective.ts'); +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedListViewerDirective.ts'); +require( + 'components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedViewerDirective.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/state/AnswerGroupEditorDirective.ts'); +require('components/state/HintEditorDirective.ts'); +require('components/state/OutcomeEditorDirective.ts'); +require('components/state/OutcomeDestinationEditorDirective.ts'); +require('components/state/OutcomeFeedbackEditorDirective.ts'); +require('components/state/ResponseHeaderDirective.ts'); +require('components/state/RuleEditorDirective.ts'); +require('components/state/RuleTypeSelectorDirective.ts'); +require('components/state/SolutionEditorDirective.ts'); +require('components/state/SolutionExplanationEditorDirective.ts'); +require('components/CodemirrorMergeviewDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('directives/MathjaxBindDirective.ts'); +require('filters/CamelCaseToHyphensFilter.ts'); +require('filters/CapitalizeFilter.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('filters/FormatRtePreviewFilter.ts'); +require('filters/FormatTimerFilter.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('filters/NormalizeWhitespacePunctuationAndCaseFilter.ts'); +require('filters/ParameterizeRuleDescriptionFilter.ts'); +require('filters/RemoveDuplicatesInArrayFilter.ts'); +require('filters/ReplaceInputsWithEllipsesFilter.ts'); +require('filters/SummarizeNonnegativeNumberFilter.ts'); +require('filters/TruncateFilter.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); +require('filters/TruncateAtFirstEllipsisFilter.ts'); +require('filters/TruncateAtFirstLineFilter.ts'); +require('filters/TruncateInputBasedOnInteractionAnswerTypeFilter.ts'); +require('filters/UnderscoresToCamelCaseFilter.ts'); +require('filters/WrapTextWithEllipsisFilter.ts'); +require( + 'pages/exploration_editor/' + + 'MarkAllAudioAndTranslationsAsNeedingUpdateController.ts' +); +require('pages/exploration_editor/statistics_tab/BarChartDirective.ts'); +require('pages/suggestion_editor/ShowSuggestionModalForEditorView.ts'); +require('services/AutoplayedVideosService.ts'); +require('services/CodeNormalizerService.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('components/VersionDiffVisualizationDirective.ts'); +require('components/attribution_guide/AttributionGuideDirective.ts'); +require('components/forms/Select2DropdownDirective.ts'); +require('components/profile_link/ProfileLinkTextDirective.ts'); +require('pages/exploration_editor/EditorNavbarBreadcrumbDirective.ts'); +require('pages/exploration_editor/EditorNavigationDirective.ts'); +require('pages/exploration_editor/ExplorationObjectiveEditorDirective.ts'); +require( + 'pages/exploration_editor/ExplorationSaveAndPublishButtonsDirective.ts'); +require('pages/exploration_editor/ExplorationTitleEditorDirective.ts'); +require('pages/exploration_editor/ParamChangesEditorDirective.ts'); +require('pages/exploration_editor/editor_tab/ExplorationEditorTab.ts'); +require('pages/exploration_editor/editor_tab/ExplorationGraph.ts'); +require( + 'pages/exploration_editor/editor_tab/UnresolvedAnswersOverviewDirective.ts'); +require('pages/exploration_editor/feedback_tab/FeedbackTab.ts'); +require('pages/exploration_editor/feedback_tab/ThreadTableDirective.ts'); +require('pages/exploration_editor/history_tab/HistoryTab.ts'); +require( + 'pages/exploration_editor/improvements_tab/ImprovementsTabDirective.ts'); +require('pages/exploration_editor/preview_tab/PreviewTab.ts'); +require('pages/exploration_editor/settings_tab/SettingsTab.ts'); +require('pages/exploration_editor/statistics_tab/PieChartDirective.ts'); +require( + 'pages/exploration_editor/statistics_tab/PlaythroughIssuesDirective.ts'); +require('pages/exploration_editor/statistics_tab/StatisticsTab.ts'); +require('pages/exploration_editor/translation_tab/TranslationTabDirective.ts'); +require('pages/exploration_player/ConversationSkinDirective.ts'); +require('pages/exploration_player/ExplorationFooterDirective.ts'); +require('pages/exploration_player/PlayerConstants.ts'); + +require('domain/exploration/ParamChangesObjectFactory.ts'); +require('domain/exploration/ParamSpecsObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/AutosaveInfoModalsService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts'); +require('pages/exploration_editor/ExplorationCategoryService.ts'); +require('pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationLanguageCodeService.ts'); +require('pages/exploration_editor/ExplorationObjectiveService.ts'); +require('pages/exploration_editor/ExplorationParamChangesService.ts'); +require('pages/exploration_editor/ExplorationParamSpecsService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationTagsService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/exploration_player/StateClassifierMappingService.ts'); +require('pages/exploration_editor/StateTutorialFirstTimeService.ts'); +require('pages/exploration_editor/UserEmailPreferencesService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadDataService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/ContextService.ts'); +require('services/EditabilityService.ts'); +require('services/ExplorationFeaturesBackendApiService.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/PlaythroughIssuesService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/StateTopAnswersStatsBackendApiService.ts'); +require('services/StateTopAnswersStatsService.ts'); + oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); oppia.constant( 'EXPLORATION_TITLE_INPUT_FOCUS_LABEL', @@ -37,6 +181,7 @@ oppia.constant( 'EDITABLE_EXPLORATION_DATA_DRAFT_URL_TEMPLATE', '/createhandler/data/?apply_draft='); + oppia.controller('ExplorationEditor', [ '$http', '$log', '$q', '$rootScope', '$scope', '$templateCache', '$timeout', '$uibModal', '$window', 'AutosaveInfoModalsService', 'ChangeListService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationInitStateNameService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationInitStateNameService.ts index ae0885b4a980..22ae97170d75 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationInitStateNameService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationInitStateNameService.ts @@ -19,6 +19,8 @@ * valid. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationInitStateNameService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationLanguageCodeService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationLanguageCodeService.ts index a9b088ebcad8..00d17aa4b0a1 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationLanguageCodeService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationLanguageCodeService.ts @@ -14,6 +14,9 @@ /** @fileoverview A data service that stores the exploration language code. */ + +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationLanguageCodeService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveEditorDirective.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveEditorDirective.ts index 091d33eb599a..bf25310d3d92 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveEditorDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveEditorDirective.ts @@ -16,6 +16,9 @@ * @fileoverview Directive for the exploration objective/goal field in forms. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationObjectiveService.ts'); + oppia.directive('explorationObjectiveEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveService.ts index 3f8b01bb1783..ca2d49a81c77 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationObjectiveService.ts @@ -17,6 +17,11 @@ * that it can be displayed and edited in multiple places in the UI. */ +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/exploration_editor/ExplorationPropertyService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('ExplorationObjectiveService', [ '$filter', 'ExplorationPropertyService', 'ExplorationRightsService', 'ValidatorsService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationParamChangesService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationParamChangesService.ts index 9a2d4e1bcad4..ee6071a4410e 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationParamChangesService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationParamChangesService.ts @@ -17,6 +17,8 @@ * changes to parameters. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationParamChangesService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationParamSpecsService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationParamSpecsService.ts index 0378de83877c..3f79923da4b0 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationParamSpecsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationParamSpecsService.ts @@ -17,6 +17,8 @@ * the specification of the parameters. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationParamSpecsService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { var child = Object.create(ExplorationPropertyService); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationPropertyService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationPropertyService.ts index 6624e21478e0..a23d8528a304 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationPropertyService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationPropertyService.ts @@ -18,6 +18,9 @@ * with base class as ExplorationPropertyService. */ +require('pages/exploration_editor/ChangeListService.ts'); +require('services/AlertsService.ts'); + oppia.factory('ExplorationPropertyService', [ '$log', '$rootScope', 'AlertsService', 'ChangeListService', function($log, $rootScope, AlertsService, ChangeListService) { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationRightsService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationRightsService.ts index 8e1167c13d1a..728b40ad23f3 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationRightsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationRightsService.ts @@ -17,6 +17,9 @@ * about the rights for this exploration. */ +require('pages/exploration_editor/ExplorationDataService.ts'); +require('services/AlertsService.ts'); + oppia.factory('ExplorationRightsService', [ '$http', 'AlertsService', 'ExplorationDataService', 'ACTIVITY_STATUS_PRIVATE', 'ACTIVITY_STATUS_PUBLIC', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationRightsServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationRightsServiceSpec.ts index f41bb86f2398..d2f6a41e7130 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationRightsServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationRightsServiceSpec.ts @@ -17,6 +17,8 @@ * of the exploration editor page. */ +require('pages/exploration_editor/ExplorationRightsService.ts'); + describe('Exploration rights service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationSaveAndPublishButtonsDirective.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationSaveAndPublishButtonsDirective.ts index a820232815c7..b622bb35a894 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationSaveAndPublishButtonsDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationSaveAndPublishButtonsDirective.ts @@ -15,6 +15,16 @@ /** * @fileoverview Directive for the exploration save & publish buttons. */ + +require('components/loading/LoadingDotsDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationSaveService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('explorationSaveAndPublishButtons', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationSaveService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationSaveService.ts index fe5f8f94fe36..7f09f1cb7b77 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationSaveService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationSaveService.ts @@ -16,6 +16,29 @@ * @fileoverview Service for exploration saving & publication functionality. */ +require('components/share/SharingLinksDirective.ts'); + +require('domain/exploration/StatesObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/AutosaveInfoModalsService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationCategoryService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationDiffService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationLanguageCodeService.ts'); +require('pages/exploration_editor/ExplorationObjectiveService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationTagsService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.factory('ExplorationSaveService', [ '$log', '$q', '$rootScope', '$timeout', '$uibModal', 'AlertsService', 'AutosaveInfoModalsService', 'ChangeListService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationStatesService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationStatesService.ts index 28f9026c0c88..06fbba927bf4 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationStatesService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationStatesService.ts @@ -18,6 +18,19 @@ * keeps no mementos. */ +require('domain/exploration/StatesObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/exploration_editor/AngularNameService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('ExplorationStatesService', [ '$filter', '$injector', '$location', '$log', '$q', '$rootScope', '$uibModal', 'AlertsService', 'AngularNameService', 'AnswerClassificationService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationStatesServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationStatesServiceSpec.ts index ce1c3d6e551e..84de9f885fba 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationStatesServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationStatesServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests for ExplorationStatesService. */ +require('pages/exploration_editor/ExplorationStatesService.ts'); + describe('ExplorationStatesService', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationTagsService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationTagsService.ts index b4dc422329d7..923d74fba1f4 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationTagsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationTagsService.ts @@ -14,6 +14,8 @@ /** @fileoverview A data service that stores tags for the exploration. */ +require('pages/exploration_editor/ExplorationPropertyService.ts'); + oppia.factory('ExplorationTagsService', [ 'ExplorationPropertyService', function(ExplorationPropertyService) { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationTitleEditorDirective.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationTitleEditorDirective.ts index 2d9eb5a420ee..512ebe34ba9c 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationTitleEditorDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationTitleEditorDirective.ts @@ -15,6 +15,9 @@ /** * @fileoverview Directive for the exploration title field in forms. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('explorationTitleEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationTitleService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationTitleService.ts index 256d9a6e4aaa..08583bef2cdc 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationTitleService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationTitleService.ts @@ -17,6 +17,11 @@ * that it can be displayed and edited in multiple places in the UI. */ +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/exploration_editor/ExplorationPropertyService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('services/ValidatorsService.ts'); + oppia.factory('ExplorationTitleService', [ '$filter', 'ExplorationPropertyService', 'ExplorationRightsService', 'ValidatorsService', diff --git a/core/templates/dev/head/pages/exploration_editor/ExplorationWarningsService.ts b/core/templates/dev/head/pages/exploration_editor/ExplorationWarningsService.ts index 0552185523b0..1cf589f111ee 100644 --- a/core/templates/dev/head/pages/exploration_editor/ExplorationWarningsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ExplorationWarningsService.ts @@ -16,6 +16,15 @@ * @fileoverview A service that lists all the exploration warnings. */ +require('expressions/ExpressionInterpolationService.ts'); +require('pages/exploration_editor/ExplorationParamChangesService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/ParameterMetadataService.ts'); +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); +require('services/ImprovementsService.ts'); +require('services/StateTopAnswersStatsService.ts'); + // When an unresolved answer's frequency exceeds this threshold, an exploration // will be blocked from being published until the answer is resolved. oppia.constant('UNRESOLVED_ANSWER_FREQUENCY_THRESHOLD', 5); diff --git a/core/templates/dev/head/pages/exploration_editor/GraphDataService.ts b/core/templates/dev/head/pages/exploration_editor/GraphDataService.ts index ae0c93d34519..44383d6b2446 100644 --- a/core/templates/dev/head/pages/exploration_editor/GraphDataService.ts +++ b/core/templates/dev/head/pages/exploration_editor/GraphDataService.ts @@ -16,6 +16,10 @@ * @fileoverview Service for computing graph data. */ +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('services/ComputeGraphService.ts'); + oppia.factory('GraphDataService', [ 'ComputeGraphService', 'ExplorationInitStateNameService', 'ExplorationStatesService', diff --git a/core/templates/dev/head/pages/exploration_editor/ParamChangesEditorDirective.ts b/core/templates/dev/head/pages/exploration_editor/ParamChangesEditorDirective.ts index 7c32cbaa7e9a..2021068fdb99 100644 --- a/core/templates/dev/head/pages/exploration_editor/ParamChangesEditorDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/ParamChangesEditorDirective.ts @@ -17,6 +17,17 @@ * both the exploration settings tab and the state editor page). */ +require('components/forms/Select2DropdownDirective.ts'); +require('pages/exploration_editor/ValueGeneratorEditorDirective.ts'); + +require('domain/exploration/ParamChangeObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationParamSpecsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/AlertsService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('paramChangesEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/ParameterMetadataService.ts b/core/templates/dev/head/pages/exploration_editor/ParameterMetadataService.ts index 66294173ffeb..260c008863a7 100644 --- a/core/templates/dev/head/pages/exploration_editor/ParameterMetadataService.ts +++ b/core/templates/dev/head/pages/exploration_editor/ParameterMetadataService.ts @@ -16,6 +16,12 @@ * @fileoverview Service for computing parameter metadata. */ +require('domain/exploration/ParamMetadataObjectFactory.ts'); +require('expressions/ExpressionInterpolationService.ts'); +require('pages/exploration_editor/ExplorationParamChangesService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); + oppia.constant('PARAM_ACTION_GET', 'get'); oppia.constant('PARAM_ACTION_SET', 'set'); diff --git a/core/templates/dev/head/pages/exploration_editor/RouterService.ts b/core/templates/dev/head/pages/exploration_editor/RouterService.ts index 6538e68875e5..8a433e561035 100644 --- a/core/templates/dev/head/pages/exploration_editor/RouterService.ts +++ b/core/templates/dev/head/pages/exploration_editor/RouterService.ts @@ -16,6 +16,11 @@ * @fileoverview Service that handles routing for the exploration editor page. */ +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/ExplorationFeaturesService.ts'); + oppia.factory('RouterService', [ '$interval', '$location', '$rootScope', '$timeout', '$window', 'ExplorationFeaturesService', 'ExplorationInitStateNameService', diff --git a/core/templates/dev/head/pages/exploration_editor/StateTutorialFirstTimeService.ts b/core/templates/dev/head/pages/exploration_editor/StateTutorialFirstTimeService.ts index 8e53ebda0cc4..025772d9cdfa 100644 --- a/core/templates/dev/head/pages/exploration_editor/StateTutorialFirstTimeService.ts +++ b/core/templates/dev/head/pages/exploration_editor/StateTutorialFirstTimeService.ts @@ -16,6 +16,8 @@ * @fileoverview Service for all tutorials to be run only for the first time. */ +require('pages/exploration_editor/EditorFirstTimeEventsService.ts'); + oppia.factory('StateTutorialFirstTimeService', [ '$http', '$rootScope', 'EditorFirstTimeEventsService', function($http, $rootScope, EditorFirstTimeEventsService) { diff --git a/core/templates/dev/head/pages/exploration_editor/UserEmailPreferencesService.ts b/core/templates/dev/head/pages/exploration_editor/UserEmailPreferencesService.ts index 57c7839e0aca..aff44f492ef7 100644 --- a/core/templates/dev/head/pages/exploration_editor/UserEmailPreferencesService.ts +++ b/core/templates/dev/head/pages/exploration_editor/UserEmailPreferencesService.ts @@ -16,6 +16,10 @@ * @fileoverview User exploration emails service for the exploration settings. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('services/AlertsService.ts'); + oppia.factory('UserEmailPreferencesService', [ '$http', '$q', 'AlertsService', 'ExplorationDataService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/AnswerGroupsCacheServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/AnswerGroupsCacheServiceSpec.ts index d670dbf9e0e7..ba85a810529f 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/AnswerGroupsCacheServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/AnswerGroupsCacheServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for Answer Groups Cache Service. */ +require('pages/exploration_editor/editor_tab/AnswerGroupsCacheService.ts'); + describe('Answer Groups Cache Service', function() { describe('AnswerGroupsCache', function() { beforeEach(function() { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTab.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTab.ts index d41b9b281e52..f0cd384a80c3 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTab.ts @@ -16,6 +16,23 @@ * @fileoverview Controller for the Editor tab in the exploration editor page. */ +require('pages/exploration_editor/editor_tab/StateNameEditorDirective.ts'); +require( + 'pages/exploration_editor/editor_tab/StateParamChangesEditorDirective.ts'); +require('pages/state_editor/StateEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationFeaturesService.ts'); + oppia.controller('ExplorationEditorTab', [ '$rootScope', '$scope', '$uibModal', 'AlertsService', 'ContextService', 'ExplorationCorrectnessFeedbackService', 'ExplorationFeaturesService', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTabSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTabSpec.ts index 712df4983136..ac0aa455e275 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTabSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationEditorTabSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for the controller of the 'State Editor'. */ +require('App.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/editor_tab/ExplorationEditorTab.ts'); +require('pages/state_editor/state_properties/StateContentService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); + describe('Exploration editor tab controller', function() { describe('ExplorationEditorTab', function() { var scope, ecs, ess, scs, rootScope; diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationGraph.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationGraph.ts index 7902da1cea9c..c28a98bd8206 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationGraph.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/ExplorationGraph.ts @@ -16,6 +16,14 @@ * @fileoverview Controllers for the exploration graph. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/AlertsService.ts'); +require('services/EditabilityService.ts'); + oppia.controller('ExplorationGraph', [ '$scope', '$uibModal', 'AlertsService', 'EditabilityService', 'ExplorationStatesService', 'GraphDataService', 'RouterService', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/InteractionDetailsCacheServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/InteractionDetailsCacheServiceSpec.ts index b4e2fbb02d6f..980b3d50f743 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/InteractionDetailsCacheServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/InteractionDetailsCacheServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for Interaction Details Cache Service. */ +require( + 'pages/exploration_editor/editor_tab/InteractionDetailsCacheService.ts'); + describe('Interaction Details Cache Service', function() { describe('InteractionDetailsCache', function() { beforeEach(function() { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/ResponsesService.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/ResponsesService.ts index 15c8af8e618c..0fac82993616 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/ResponsesService.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/ResponsesService.ts @@ -17,6 +17,15 @@ * answer groups. */ +require('domain/exploration/OutcomeObjectFactory.ts'); +require('pages/exploration_editor/editor_tab/AnswerGroupsCacheService.ts'); +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); +require('pages/exploration_editor/editor_tab/SolutionVerificationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); + oppia.factory('ResponsesService', [ '$rootScope', 'AlertsService', 'AnswerGroupsCacheService', 'ContextService', 'OutcomeObjectFactory', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionValidityServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionValidityServiceSpec.ts index 368f9a6f5c0a..aa0e3c336deb 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionValidityServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionValidityServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for Solution Validity Service. */ +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); + describe('Solution Validity Service', function() { describe('SolutionValidityService', function() { beforeEach(function() { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationService.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationService.ts index 271b1bfbf7fd..f125e4d96b3c 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationService.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationService.ts @@ -16,6 +16,10 @@ * @fileoverview Service for solution verification. */ +require('pages/exploration_editor/AngularNameService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); + oppia.factory('SolutionVerificationService', [ '$injector', 'AngularNameService', 'AnswerClassificationService', 'StateEditorService', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationServiceSpec.ts index 87520d61eb88..fa016c9c840f 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/SolutionVerificationServiceSpec.ts @@ -16,6 +16,16 @@ * @fileoverview Unit tests for Solution Verification Service. */ +require('App.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require( + 'pages/exploration_editor/editor_tab/InteractionDetailsCacheService.ts'); +require('pages/exploration_editor/editor_tab/SolutionVerificationService.ts'); +require('pages/state_editor/state_properties/StateCustomizationArgsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); + describe('Solution Verification Service', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateGraphVisualizationDirective.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateGraphVisualizationDirective.ts index 04c2eec59ddd..4ef9ca5bfa21 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateGraphVisualizationDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateGraphVisualizationDirective.ts @@ -16,6 +16,12 @@ * @fileoverview Directive for the state graph visualization. */ +require('components/StateGraphLayoutService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/TruncateFilter.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/translation_tab/TranslationStatusService.ts'); + /* eslint-disable angular/directive-restrict */ oppia.directive('stateGraphVisualization', [ 'UrlInterpolationService', function(UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirective.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirective.ts index ebe80bf4c873..c78409c3b654 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for the state name editor section of the state * editor. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/EditabilityService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('stateNameEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirectiveSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirectiveSpec.ts index 90eb2cf16590..6d5ee1610979 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirectiveSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateNameEditorDirectiveSpec.ts @@ -16,6 +16,13 @@ * @fileoverview Unit tests for the controller of the 'State Editor'. */ +require('App.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/editor_tab/StateNameEditorDirective.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/stateful/FocusManagerService.ts'); + describe('Sidebar state name controller', function() { describe('SidebarStateName', function() { var scope, filter, ctrl, ecs, fs, ess, rootScope, outerScope; @@ -156,12 +163,6 @@ describe('Sidebar state name controller', function() { } }); - var templateHtml = $templateCache.get( - '/pages/exploration_editor/editor_tab/' + - 'state_name_editor_directive.html'); - $compile(templateHtml, $rootScope); - $rootScope.$digest(); - outerScope = $rootScope.$new(); var elem = angular.element( ''); diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateParamChangesEditorDirective.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateParamChangesEditorDirective.ts index 9be9114ea046..058c141f8334 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/StateParamChangesEditorDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/StateParamChangesEditorDirective.ts @@ -16,6 +16,11 @@ * @fileoverview Directive for the param changes editor section of the * state editor. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); + oppia.directive('stateParamChangesEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/TestInteractionPanelDirective.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/TestInteractionPanelDirective.ts index d181f5337633..ab2359115808 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/TestInteractionPanelDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/TestInteractionPanelDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for the test interaction panel in the state editor. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); + oppia.directive('testInteractionPanel', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataEditorPanelService.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataEditorPanelService.ts index 3c869e54fea3..adce9a723309 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataEditorPanelService.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataEditorPanelService.ts @@ -17,6 +17,23 @@ * the training data editor of an answer group. */ +require('pages/exploration_editor/editor_tab/TestInteractionPanelDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/AngularNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/exploration_editor/editor_tab/TrainingDataService.ts'); +require('pages/exploration_editor/editor_tab/TrainingModalService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.factory('TrainingDataEditorPanelService', [ '$rootScope', '$uibModal', 'AlertsService', 'UrlInterpolationService', function($rootScope, $uibModal, AlertsService, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataService.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataService.ts index b30ac7b5e912..300cb73c947c 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataService.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataService.ts @@ -18,6 +18,12 @@ * across all answer groups. */ +require('domain/exploration/RuleObjectFactory.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); + oppia.factory('TrainingDataService', [ '$http', '$rootScope', 'ExplorationStatesService', 'GraphDataService', 'ResponsesService', 'RuleObjectFactory', 'StateEditorService', diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataServiceSpec.ts index 6054d0277802..f9a729bd2ff0 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingDataServiceSpec.ts @@ -16,6 +16,15 @@ * @fileoverview Unit tests for the training data service. */ +require('App.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/exploration_editor/editor_tab/TrainingDataService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); + describe('TrainingDataService', function() { var $httpBackend; var scope, siis, ecs, cls, rs, tds, ess, IS, oof; diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingModalService.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingModalService.ts index 1cec8e79eb74..ab3e1e6244e0 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingModalService.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/TrainingModalService.ts @@ -17,6 +17,22 @@ * the training modal used for unresolved answers. */ +require('pages/exploration_editor/editor_tab/TrainingPanelDirective.ts'); + +require('domain/exploration/AnswerGroupObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/AngularNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/exploration_editor/editor_tab/TrainingDataService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); + oppia.factory('TrainingModalService', [ '$rootScope', '$uibModal', 'AlertsService', 'UrlInterpolationService', function($rootScope, $uibModal, AlertsService, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_editor/editor_tab/UnresolvedAnswersOverviewDirective.ts b/core/templates/dev/head/pages/exploration_editor/editor_tab/UnresolvedAnswersOverviewDirective.ts index a75fa011e673..24ee882e9631 100644 --- a/core/templates/dev/head/pages/exploration_editor/editor_tab/UnresolvedAnswersOverviewDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/editor_tab/UnresolvedAnswersOverviewDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for the state graph visualization. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/EditabilityService.ts'); +require('services/ImprovementsService.ts'); +require('services/StateTopAnswersStatsService.ts'); + oppia.directive('unresolvedAnswersOverview', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/exploration_editor.html b/core/templates/dev/head/pages/exploration_editor/exploration_editor.html index 5765b67ce7e7..2a663cf35480 100644 --- a/core/templates/dev/head/pages/exploration_editor/exploration_editor.html +++ b/core/templates/dev/head/pages/exploration_editor/exploration_editor.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {% if title %} @@ -139,62 +139,6 @@ {{ value_generators_js }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -224,277 +168,17 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} {{ interaction_templates }} {{ visualizations_html }} diff --git a/core/templates/dev/head/pages/exploration_editor/feedback_tab/FeedbackTab.ts b/core/templates/dev/head/pages/exploration_editor/feedback_tab/FeedbackTab.ts index 72694682950d..69e7b40f7f55 100644 --- a/core/templates/dev/head/pages/exploration_editor/feedback_tab/FeedbackTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/feedback_tab/FeedbackTab.ts @@ -16,6 +16,18 @@ * @fileoverview Controller for the exploration editor feedback tab. */ +require('domain/state/StateObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadDataService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadStatusDisplayService.ts'); +require('pages/suggestion_editor/ShowSuggestionModalForEditorViewService.ts'); +require('services/AlertsService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/UserService.ts'); + oppia.controller('FeedbackTab', [ '$log', '$q', '$rootScope', '$scope', '$uibModal', 'AlertsService', 'ChangeListService', 'DateTimeFormatService', diff --git a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataService.ts b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataService.ts index b658bc58a7d3..da7068e8035f 100644 --- a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataService.ts +++ b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataService.ts @@ -17,6 +17,12 @@ * feedback tab of the exploration editor. */ +require('domain/feedback_thread/FeedbackThreadObjectFactory.ts'); +require('domain/suggestion/SuggestionObjectFactory.ts'); +require('domain/suggestion/SuggestionThreadObjectFactory.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('services/AlertsService.ts'); + oppia.factory('ThreadDataService', [ '$http', '$log', '$q', 'AlertsService', 'ExplorationDataService', 'FeedbackThreadObjectFactory', 'SuggestionObjectFactory', diff --git a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataServiceSpec.ts index 946f823be12b..c4fa01a30b78 100644 --- a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadDataServiceSpec.ts @@ -17,6 +17,8 @@ * data for the feedback tab of the exploration editor. */ +require('pages/exploration_editor/feedback_tab/ThreadDataService.ts'); + describe('retrieving threads service', function() { var expId = '12345'; beforeEach( diff --git a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadStatusDisplayServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadStatusDisplayServiceSpec.ts index cc3efba5965a..98b8c206d154 100644 --- a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadStatusDisplayServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadStatusDisplayServiceSpec.ts @@ -18,6 +18,8 @@ * feedback tab of the exploration editor. */ +require('pages/exploration_editor/feedback_tab/ThreadStatusDisplayService.ts'); + describe('Thread Status Display Service', function() { beforeEach( angular.mock.module('oppia', GLOBALS.TRANSLATOR_PROVIDER_FOR_TESTS)); diff --git a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadTableDirective.ts b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadTableDirective.ts index 9d43673076d3..67d8249cdb09 100644 --- a/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadTableDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/feedback_tab/ThreadTableDirective.ts @@ -17,6 +17,12 @@ * tab of the exploration editor. */ +require('filters/TruncateFilter.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadStatusDisplayService.ts'); +require('services/DateTimeFormatService.ts'); + oppia.directive('threadTable', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsService.ts b/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsService.ts index ec8cf522bbb7..b9a810c3b583 100644 --- a/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsService.ts +++ b/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsService.ts @@ -16,6 +16,13 @@ * @fileoverview Service to compare versions of explorations. */ +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/state/StateObjectFactory.ts'); +require('domain/exploration/StatesObjectFactory.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationDiffService.ts'); +require('pages/exploration_editor/history_tab/VersionTreeService.ts'); + oppia.factory('CompareVersionsService', [ '$http', '$q', 'ExplorationDataService', 'ExplorationDiffService', 'ReadOnlyExplorationBackendApiService', 'StateObjectFactory', diff --git a/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsServiceSpec.ts index f56bcafdfe34..c24f1c1362a2 100644 --- a/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/history_tab/CompareVersionsServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the Compare versions Service. */ +require('pages/exploration_editor/history_tab/CompareVersionsService.ts'); +require('pages/exploration_editor/history_tab/VersionTreeService.ts'); + describe('Compare versions service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTab.ts b/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTab.ts index ff8a006737f6..72d3e425ee69 100644 --- a/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTab.ts @@ -16,6 +16,12 @@ * @fileoverview Controllers for the exploration history tab. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/history_tab/CompareVersionsService.ts'); +require('pages/exploration_editor/history_tab/VersionTreeService.ts'); +require('services/DateTimeFormatService.ts'); + oppia.controller('HistoryTab', [ '$http', '$log', '$rootScope', '$scope', '$uibModal', 'CompareVersionsService', diff --git a/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTabSpec.ts b/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTabSpec.ts index 41e62399cc97..0f73ef701cb2 100644 --- a/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTabSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/history_tab/HistoryTabSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the exploration history tab. */ +require('pages/exploration_editor/history_tab/HistoryTab.ts'); + describe('HistoryTab controller', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/history_tab/VersionTreeServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/history_tab/VersionTreeServiceSpec.ts index 86d369ad6dfd..71bc8c5bc0cc 100644 --- a/core/templates/dev/head/pages/exploration_editor/history_tab/VersionTreeServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/history_tab/VersionTreeServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Versions Tree Service. */ +require('pages/exploration_editor/history_tab/VersionTreeService.ts'); + describe('Versions tree service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/improvements_tab/ImprovementsTabDirective.ts b/core/templates/dev/head/pages/exploration_editor/improvements_tab/ImprovementsTabDirective.ts index a3b2a3412a4e..c7646e76d273 100644 --- a/core/templates/dev/head/pages/exploration_editor/improvements_tab/ImprovementsTabDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/improvements_tab/ImprovementsTabDirective.ts @@ -17,6 +17,14 @@ * exploration editor. */ +require( + 'pages/exploration_editor/improvements_tab/' + + 'PlaythroughImprovementCardDirective.ts' +); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/ImprovementCardService.ts'); + oppia.directive('improvementsTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/improvements_tab/PlaythroughImprovementCardDirective.ts b/core/templates/dev/head/pages/exploration_editor/improvements_tab/PlaythroughImprovementCardDirective.ts index 031b6e943f0f..6f5b4d015a90 100644 --- a/core/templates/dev/head/pages/exploration_editor/improvements_tab/PlaythroughImprovementCardDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/improvements_tab/PlaythroughImprovementCardDirective.ts @@ -12,6 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.directive('playthroughImprovementCard', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/preview_tab/PreviewTab.ts b/core/templates/dev/head/pages/exploration_editor/preview_tab/PreviewTab.ts index 15a6658ff179..c0f8fbe7532f 100644 --- a/core/templates/dev/head/pages/exploration_editor/preview_tab/PreviewTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/preview_tab/PreviewTab.ts @@ -17,6 +17,25 @@ * editor page. */ +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ParamChangeObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationCategoryService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationParamChangesService.ts'); +require('pages/exploration_editor/ExplorationParamSpecsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); +require('pages/exploration_editor/ParameterMetadataService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/LearnerParamsService.ts'); +require('pages/exploration_player/NumberAttemptsService.ts'); +require('pages/exploration_player/PlayerCorrectnessFeedbackEnabledService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationFeaturesService.ts'); + oppia.controller('PreviewTab', [ '$q', '$scope', '$timeout', '$uibModal', 'ContextService', 'EditableExplorationBackendApiService', 'ExplorationCategoryService', diff --git a/core/templates/dev/head/pages/exploration_editor/settings_tab/SettingsTab.ts b/core/templates/dev/head/pages/exploration_editor/settings_tab/SettingsTab.ts index 7a83f4f9d71a..29c648850507 100644 --- a/core/templates/dev/head/pages/exploration_editor/settings_tab/SettingsTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/settings_tab/SettingsTab.ts @@ -16,6 +16,28 @@ * @fileoverview Controllers for the exploration settings tab. */ +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationAutomaticTextToSpeechService.ts'); +require('pages/exploration_editor/ExplorationCategoryService.ts'); +require('pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationEditor.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationLanguageCodeService.ts'); +require('pages/exploration_editor/ExplorationObjectiveService.ts'); +require('pages/exploration_editor/ExplorationParamChangesService.ts'); +require('pages/exploration_editor/ExplorationParamSpecsService.ts'); +require('pages/exploration_editor/ExplorationRightsService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/ExplorationTagsService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); +require('pages/exploration_editor/ExplorationWarningsService.ts'); +require('pages/exploration_editor/UserEmailPreferencesService.ts'); +require('services/AlertsService.ts'); +require('services/ExplorationFeaturesService.ts'); + oppia.controller('SettingsTab', [ '$http', '$rootScope', '$scope', '$uibModal', '$window', 'AlertsService', 'ChangeListService', 'EditableExplorationBackendApiService', diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/CyclicTransitionsIssueDirective.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/CyclicTransitionsIssueDirective.ts index 94a8d76ae877..aa22207e5b80 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/CyclicTransitionsIssueDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/CyclicTransitionsIssueDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for visualizing multiple incorrect issue. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.directive('cyclicTransitionsIssue', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/EarlyQuitIssueDirective.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/EarlyQuitIssueDirective.ts index fd0713e3da0b..3e13228488cf 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/EarlyQuitIssueDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/EarlyQuitIssueDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for visualizing early quit issue. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.directive('earlyQuitIssue', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/LearnerActionRenderServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/LearnerActionRenderServiceSpec.ts index c3e1eeb5ced0..712a3c60aa41 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/LearnerActionRenderServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/LearnerActionRenderServiceSpec.ts @@ -19,6 +19,12 @@ * jasmine.any(Object). */ +require('domain/statistics/LearnerActionObjectFactory.ts'); +require( + 'pages/exploration_editor/statistics_tab/LearnerActionRenderService.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/PlaythroughService.ts'); + describe('Learner Action Render Service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/MultipleIncorrectIssueDirective.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/MultipleIncorrectIssueDirective.ts index 2b87117fc9d7..79e0c44f88cd 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/MultipleIncorrectIssueDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/MultipleIncorrectIssueDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for visualizing multiple incorrect issue. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.directive('multipleIncorrectIssue', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/PlaythroughIssuesDirective.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/PlaythroughIssuesDirective.ts index 18291af10a61..526e23d37ffa 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/PlaythroughIssuesDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/PlaythroughIssuesDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for visualizing issues. */ +require('pages/exploration_editor/statistics_tab/EarlyQuitIssueDirective.ts'); +require( + 'pages/exploration_editor/statistics_tab/MultipleIncorrectIssueDirective.ts'); +require( + 'pages/exploration_editor/statistics_tab/CyclicTransitionsIssueDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PlaythroughIssuesService.ts'); + oppia.directive('playthroughIssues', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/StateImprovementSuggestionServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/StateImprovementSuggestionServiceSpec.ts index d8e5698e79a1..4b3a3191653e 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/StateImprovementSuggestionServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/StateImprovementSuggestionServiceSpec.ts @@ -16,6 +16,13 @@ * @fileoverview Unit tests for statistics services. */ +require('domain/exploration/StatesObjectFactory.ts'); +require( + 'pages/exploration_editor/statistics_tab/' + + 'StateImprovementSuggestionService.ts' +); +require('pages/exploration_editor/statistics_tab/StatisticsTab.ts'); + describe('StateImprovementSuggestionService', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_editor/statistics_tab/StatisticsTab.ts b/core/templates/dev/head/pages/exploration_editor/statistics_tab/StatisticsTab.ts index c94fdc57a6ab..13cb3c21dc8e 100644 --- a/core/templates/dev/head/pages/exploration_editor/statistics_tab/StatisticsTab.ts +++ b/core/templates/dev/head/pages/exploration_editor/statistics_tab/StatisticsTab.ts @@ -17,6 +17,23 @@ * exploration editor. */ +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/exploration/StatesObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/CamelCaseToHyphensFilter.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require( + 'pages/exploration_editor/statistics_tab/' + + 'StateImprovementSuggestionService.ts' +); +require('services/AlertsService.ts'); +require('services/ComputeGraphService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/StateRulesStatsService.ts'); + oppia.constant('IMPROVE_TYPE_INCOMPLETE', 'incomplete'); oppia.controller('StatisticsTab', [ diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/AudioTranslationBarDirective.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/AudioTranslationBarDirective.ts index 005ebf6fb153..e705d7d4d26b 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/AudioTranslationBarDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/AudioTranslationBarDirective.ts @@ -15,6 +15,25 @@ /** * @fileoverview Directive for the audio translation bar. */ + +require('filters/FormatTimerFilter.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require( + 'pages/exploration_editor/translation_tab/TranslationLanguageService.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveContentIdService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); +require('services/AlertsService.ts'); +require('services/AssetsBackendApiService.ts'); +require('services/AudioPlayerService.ts'); +require('services/ContextService.ts'); +require('services/EditabilityService.ts'); +require('services/IdGenerationService.ts'); + // Constant for audio recording time limit. oppia.constant('RECORDING_TIME_LIMIT', 300); diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationDirective.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationDirective.ts index 43c49054c60b..1d5ae248997f 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationDirective.ts @@ -15,6 +15,29 @@ /** * @fileoverview Directive containing the exploration material to be translated. */ +require('components/state/ResponseHeaderDirective.ts'); +require( + 'pages/exploration_editor/translation_tab/AudioTranslationBarDirective.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'StateTranslationEditorDirective.ts' +); + +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('filters/ParameterizeRuleDescriptionFilter.ts'); +require('filters/TruncateFilter.ts'); +require('filters/WrapTextWithEllipsisFilter.ts'); +require('pages/exploration_editor/ExplorationCorrectnessFeedbackService.ts'); +require('pages/exploration_editor/ExplorationInitStateNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/RouterService.ts'); +require('pages/exploration_editor/translation_tab/TranslationStatusService.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveContentIdService.ts' +); +require('pages/state_editor/state_properties/StateEditorService.ts'); oppia.directive('stateTranslation', [ 'UrlInterpolationService', function(UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationStatusGraphDirective.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationStatusGraphDirective.ts index f871f5efa9dd..7217fe9aa70f 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationStatusGraphDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/StateTranslationStatusGraphDirective.ts @@ -16,6 +16,20 @@ * @fileoverview Directive for the state translation status graph. */ +require( + 'pages/exploration_editor/editor_tab/StateGraphVisualizationDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/GraphDataService.ts'); +require('pages/exploration_editor/translation_tab/TranslationStatusService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); +require( + 'pages/state_editor/state_properties/StateWrittenTranslationsService.ts'); + oppia.directive('stateTranslationStatusGraph', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageService.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageService.ts index dae07d483646..d111920541fd 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageService.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageService.ts @@ -17,6 +17,8 @@ * in the translation tab is currently active. */ +require('domain/utilities/LanguageUtilService.ts'); + oppia.factory('TranslationLanguageService', [ '$log', '$rootScope', 'LanguageUtilService', function($log, $rootScope, LanguageUtilService) { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageServiceSpec.ts index 77cd95750930..2975aece59c8 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationLanguageServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit test for the Translation language service. */ +require( + 'pages/exploration_editor/translation_tab/TranslationLanguageService.ts'); + describe('Translation language service', function() { beforeEach(angular.mock.module('oppia', function($provide) { $provide.value('LanguageUtilService', { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusService.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusService.ts index 54a81fccb5bc..e7bc2701243f 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusService.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusService.ts @@ -17,6 +17,19 @@ * its components. */ +require('pages/exploration_editor/ExplorationStatesService.ts'); +require( + 'pages/exploration_editor/translation_tab/TranslationLanguageService.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveModeService.ts' +); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); +require( + 'pages/state_editor/state_properties/StateWrittenTranslationsService.ts'); + oppia.factory('TranslationStatusService', [ 'ExplorationStatesService', 'StateRecordedVoiceoversService', 'StateWrittenTranslationsService', 'TranslationLanguageService', diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusServiceSpec.ts index a35cc01b10e7..bd5b38aa27e2 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationStatusServiceSpec.ts @@ -16,6 +16,17 @@ * @fileoverview Unit test for the Translation status service. */ +require('pages/exploration_editor/ExplorationStatesService.ts'); +require( + 'pages/exploration_editor/translation_tab/TranslationLanguageService.ts'); +require('pages/exploration_editor/translation_tab/TranslationStatusService.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveModeService.ts' +); +require( + 'pages/state_editor/state_properties/StateWrittenTranslationsService.ts'); + describe('Translation status service', function() { beforeEach(angular.mock.module('oppia', function($provide) { $provide.value('LanguageUtilService', { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdService.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdService.ts index d319a064000d..8ba141ea0e25 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdService.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdService.ts @@ -16,6 +16,10 @@ * @fileoverview Service to get and set active content id in translation tab. */ +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); + oppia.factory('TranslationTabActiveContentIdService', [ '$log', '$rootScope', 'StateRecordedVoiceoversService', function($log, $rootScope, StateRecordedVoiceoversService) { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdServiceSpec.ts index 0d135033ed47..6446fd5ac6f2 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveContentIdServiceSpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit test for the Translation tab active content id service. */ +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveContentIdService.ts' +); + describe('Translation tab active content id service', function() { beforeEach(angular.mock.module('oppia', function($provide) { $provide.value('StateRecordedVoiceoversService', { diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveModeServiceSpec.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveModeServiceSpec.ts index 9f045191782c..4acb0f35ee88 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveModeServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabActiveModeServiceSpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit test for the Translation tab active mode service. */ +require( + 'pages/exploration_editor/translation_tab/' + + 'TranslationTabActiveModeService.ts' +); + describe('Translation tab active mode service', function() { beforeEach(angular.mock.module('oppia')); var ttams = null; diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabDirective.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabDirective.ts index 198a75d3c5a5..08b8d669fcc0 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslationTabDirective.ts @@ -16,6 +16,27 @@ * @fileoverview Directive for the translation tab. */ +require('components/attribution_guide/AttributionGuideDirective.ts'); +require( + 'pages/exploration_editor/translation_tab/StateTranslationDirective.ts'); +require( + 'pages/exploration_editor/translation_tab/' + + 'StateTranslationStatusGraphDirective.ts' +); +require( + 'pages/exploration_editor/translation_tab/TranslatorOverviewDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/StateTutorialFirstTimeService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); +require('services/ContextService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('translationTab', [ 'ContextService', 'ExplorationDataService', 'ExplorationStatesService', 'StateEditorService', 'StateRecordedVoiceoversService', diff --git a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslatorOverviewDirective.ts b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslatorOverviewDirective.ts index ba2c4729559b..e09f342c524e 100644 --- a/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslatorOverviewDirective.ts +++ b/core/templates/dev/head/pages/exploration_editor/translation_tab/TranslatorOverviewDirective.ts @@ -17,6 +17,12 @@ * translation language. */ +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require( + 'pages/exploration_editor/translation_tab/TranslationLanguageService.ts'); +require('pages/exploration_editor/translation_tab/TranslationStatusService.ts'); + oppia.constant('DEFAULT_AUDIO_LANGUAGE', 'en'); oppia.directive('translatorOverview', [ diff --git a/core/templates/dev/head/pages/exploration_player/AnswerClassificationService.ts b/core/templates/dev/head/pages/exploration_player/AnswerClassificationService.ts index 3713fe2793f7..190325faad62 100644 --- a/core/templates/dev/head/pages/exploration_player/AnswerClassificationService.ts +++ b/core/templates/dev/head/pages/exploration_player/AnswerClassificationService.ts @@ -16,6 +16,11 @@ * @fileoverview Classification service for answer groups. */ +require('domain/classifier/AnswerClassificationResultObjectFactory.ts'); +require('pages/exploration_player/PredictionAlgorithmRegistryService.ts'); +require('pages/exploration_player/StateClassifierMappingService.ts'); +require('services/AlertsService.ts'); + // TODO(bhenning): Find a better place for these constants. // NOTE TO DEVELOPERS: These constants must be the same (in name and value) as diff --git a/core/templates/dev/head/pages/exploration_player/AnswerClassificationServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/AnswerClassificationServiceSpec.ts index a62a5857ede2..7fc3ca85b387 100644 --- a/core/templates/dev/head/pages/exploration_player/AnswerClassificationServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/AnswerClassificationServiceSpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for the answer classification service */ +require('domain/classifier/AnswerClassificationResultObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/StatesObjectFactory.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); + describe('Answer classification service with string classifier disabled', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/AudioBarDirective.ts b/core/templates/dev/head/pages/exploration_player/AudioBarDirective.ts index 71204dbdae85..403cb44ae67f 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioBarDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioBarDirective.ts @@ -17,6 +17,18 @@ * audio translation in the learner view. */ +require('domain/utilities/BrowserCheckerService.ts'); +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioPreloaderService.ts'); +require('pages/exploration_player/AudioTranslationLanguageService.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('services/AssetsBackendApiService.ts'); +require('services/AudioPlayerService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('audioBar', [ 'AudioPreloaderService', 'UrlInterpolationService', function(AudioPreloaderService, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_player/AudioPreloaderService.ts b/core/templates/dev/head/pages/exploration_player/AudioPreloaderService.ts index 7bf0324381ab..c303b89603b9 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioPreloaderService.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioPreloaderService.ts @@ -16,6 +16,13 @@ * @fileoverview Service to preload audio into AssetsBackendApiService's cache. */ +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioTranslationLanguageService.ts'); +require('services/AssetsBackendApiService.ts'); +require('services/ComputeGraphService.ts'); +require('services/ContextService.ts'); + oppia.factory('AudioPreloaderService', [ '$uibModal', 'AssetsBackendApiService', 'AudioTranslationLanguageService', 'ComputeGraphService', 'ContextService', diff --git a/core/templates/dev/head/pages/exploration_player/AudioPreloaderServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/AudioPreloaderServiceSpec.ts index 11c3d895b53a..16c5108d50d1 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioPreloaderServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioPreloaderServiceSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for the audio preloader service. */ +require('domain/exploration/ExplorationObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioPreloaderService.ts'); +require('pages/exploration_player/AudioTranslationLanguageService.ts'); +require('services/ContextService.ts'); + describe('Audio preloader service', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageService.ts b/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageService.ts index 5b848ef74bda..229a2fa175e6 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageService.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageService.ts @@ -17,6 +17,9 @@ * used for audio translations. */ +require('domain/utilities/BrowserCheckerService.ts'); +require('domain/utilities/LanguageUtilService.ts'); + oppia.factory('AudioTranslationLanguageService', [ 'BrowserCheckerService', 'LanguageUtilService', function( diff --git a/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageServiceSpec.ts index 506ff3f23a76..a25966a0e771 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioTranslationLanguageServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the audio translation language service. */ +require('pages/exploration_player/AudioTranslationLanguageService.ts'); + describe('Audio translation language service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/AudioTranslationManagerServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/AudioTranslationManagerServiceSpec.ts index 8ebc4588c239..78d9a8fdcea7 100644 --- a/core/templates/dev/head/pages/exploration_player/AudioTranslationManagerServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/AudioTranslationManagerServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the audio translation manager service. */ +require('domain/exploration/AudioTranslationObjectFactory.ts'); +require('domain/exploration/VoiceoverObjectFactory.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); + describe('Audio translation manager service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/ContinueButtonDirective.ts b/core/templates/dev/head/pages/exploration_player/ContinueButtonDirective.ts index e3c75a1935a8..2afc1846fe3b 100644 --- a/core/templates/dev/head/pages/exploration_player/ContinueButtonDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/ContinueButtonDirective.ts @@ -17,6 +17,8 @@ * editor. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('continueButton', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/ConversationSkinDirective.ts b/core/templates/dev/head/pages/exploration_player/ConversationSkinDirective.ts index 9d4fd8621f24..0d26c117dff6 100644 --- a/core/templates/dev/head/pages/exploration_player/ConversationSkinDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/ConversationSkinDirective.ts @@ -16,6 +16,55 @@ * @fileoverview Controller for the conversation skin. */ +require('components/RatingDisplayDirective.ts'); +require('components/summary_tile/ExplorationSummaryTileDirective.ts'); +require('components/summary_tile/CollectionSummaryTileDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('pages/exploration_player/CorrectnessFooterDirective.ts'); +require('pages/exploration_player/ProgressNavDirective.ts'); +require('pages/exploration_player/SupplementalCardDirective.ts'); +require('pages/exploration_player/TutorCardDirective.ts'); + +require('domain/collection/GuestCollectionProgressService.ts'); +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/question/PretestQuestionBackendApiService.ts'); +require('domain/skill/ConceptCardBackendApiService.ts'); +require('domain/skill/ConceptCardObjectFactory.ts'); +require('domain/state_card/StateCardObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/ExplorationRecommendationsService.ts'); +require('pages/exploration_player/FatigueDetectionService.ts'); +require('pages/exploration_player/FeedbackPopupDirective.ts'); +require('pages/exploration_player/HintsAndSolutionManagerService.ts'); +require('pages/exploration_player/ImagePreloaderService.ts'); +require('pages/exploration_player/LearnerParamsService.ts'); +require('pages/exploration_player/LearnerViewRatingService.ts'); +require('pages/exploration_player/NumberAttemptsService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('pages/exploration_player/PlayerCorrectnessFeedbackEnabledService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('pages/exploration_player/PretestEngineService.ts'); +require( + 'pages/exploration_player/RefresherExplorationConfirmationModalService.ts'); +require('pages/exploration_player/StateClassifierMappingService.ts'); +require('pages/exploration_player/StatsReportingService.ts'); +require('services/AlertsService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); +require('services/ContextService.ts'); +require('services/MessengerService.ts'); +require('services/PlaythroughService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); +require('services/stateful/FocusManagerService.ts'); + // Note: This file should be assumed to be in an IIFE, and the constants below // should only be used within this file. var TIME_FADEOUT_MSEC = 100; diff --git a/core/templates/dev/head/pages/exploration_player/CorrectnessFooterDirective.ts b/core/templates/dev/head/pages/exploration_player/CorrectnessFooterDirective.ts index 540b4df5156e..859b7cd66247 100644 --- a/core/templates/dev/head/pages/exploration_player/CorrectnessFooterDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/CorrectnessFooterDirective.ts @@ -16,6 +16,8 @@ * @fileoverview Directive for the correctness footer in the exploration player. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('correctnessFooter', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/CurrentInteractionServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/CurrentInteractionServiceSpec.ts index 7d48e88335e5..bfdbe6412144 100644 --- a/core/templates/dev/head/pages/exploration_player/CurrentInteractionServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/CurrentInteractionServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for CurrentInteractionService. */ +require('pages/exploration_player/CurrentInteractionService.ts'); + describe('Current Interaction Service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/ExplorationEngineService.ts b/core/templates/dev/head/pages/exploration_player/ExplorationEngineService.ts index b5a61df7468b..385bb3ad75af 100644 --- a/core/templates/dev/head/pages/exploration_player/ExplorationEngineService.ts +++ b/core/templates/dev/head/pages/exploration_player/ExplorationEngineService.ts @@ -16,6 +16,31 @@ * @fileoverview Utility service for the learner's view of an exploration. */ +require('domain/collection/GuestCollectionProgressService.ts'); +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ExplorationObjectFactory.ts'); +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/state_card/StateCardObjectFactory.ts'); +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('expressions/ExpressionInterpolationService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/exploration_player/AudioPreloaderService.ts'); +require('pages/exploration_player/AudioTranslationLanguageService.ts'); +require('pages/exploration_player/ImagePreloaderService.ts'); +require('pages/exploration_player/LearnerParamsService.ts'); +require('pages/exploration_player/NumberAttemptsService.ts'); +require('pages/exploration_player/PlayerCorrectnessFeedbackEnabledService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('pages/exploration_player/StateClassifierMappingService.ts'); +require('pages/exploration_player/StatsReportingService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/UserService.ts'); +require('services/contextual/WindowDimensionsService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); // A service that provides a number of utility functions for JS used by diff --git a/core/templates/dev/head/pages/exploration_player/ExplorationFooterDirective.ts b/core/templates/dev/head/pages/exploration_player/ExplorationFooterDirective.ts index 54fec32dfb49..fee2bfd8ffc3 100644 --- a/core/templates/dev/head/pages/exploration_player/ExplorationFooterDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/ExplorationFooterDirective.ts @@ -17,6 +17,14 @@ * in exploration player. */ +require('components/HintAndSolutionButtonsDirective.ts'); + +require('domain/summary/ExplorationSummaryBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/ContextService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('explorationFooter', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/ExplorationPlayer.ts b/core/templates/dev/head/pages/exploration_player/ExplorationPlayer.ts new file mode 100644 index 000000000000..658de2f35d2b --- /dev/null +++ b/core/templates/dev/head/pages/exploration_player/ExplorationPlayer.ts @@ -0,0 +1,64 @@ +// Copyright 2019 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** + * @fileoverview Dependencies for the explaration player page. + */ + +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('components/CkEditorRteDirective.ts'); +require('components/CkEditorWidgetsInitializer.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('directives/MathjaxBindDirective.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedListViewerDirective.ts'); +require( + 'components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedViewerDirective.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('services/AutoplayedVideosService.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('components/attribution_guide/AttributionGuideDirective.ts'); +require('components/background/BackgroundBannerDirective.ts'); +require('pages/exploration_player/ConversationSkinDirective.ts'); +require('pages/exploration_player/ExplorationFooterDirective.ts'); +require('pages/exploration_player/LearnerLocalNav.ts'); +require('pages/exploration_player/LearnerViewInfo.ts'); diff --git a/core/templates/dev/head/pages/exploration_player/ExplorationPlayerStateService.ts b/core/templates/dev/head/pages/exploration_player/ExplorationPlayerStateService.ts index c252ce0dae28..b5fb8b2abaaa 100644 --- a/core/templates/dev/head/pages/exploration_player/ExplorationPlayerStateService.ts +++ b/core/templates/dev/head/pages/exploration_player/ExplorationPlayerStateService.ts @@ -17,6 +17,23 @@ * like engine service. */ +require('domain/exploration/EditableExplorationBackendApiService.ts'); +require('domain/exploration/ReadOnlyExplorationBackendApiService.ts'); +require('domain/question/PretestQuestionBackendApiService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/NumberAttemptsService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('pages/exploration_player/PretestEngineService.ts'); +require('pages/exploration_player/StateClassifierMappingService.ts'); +require('pages/exploration_player/StatsReportingService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationFeaturesBackendApiService.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/PlaythroughIssuesService.ts'); +require('services/PlaythroughService.ts'); +require('services/contextual/UrlService.ts'); + oppia.factory('ExplorationPlayerStateService', [ '$log', '$q', 'ContextService', 'EditableExplorationBackendApiService', 'ExplorationEngineService', 'ExplorationFeaturesBackendApiService', diff --git a/core/templates/dev/head/pages/exploration_player/ExplorationRecommendationsService.ts b/core/templates/dev/head/pages/exploration_player/ExplorationRecommendationsService.ts index 1231bcd9ee54..875f6181277d 100644 --- a/core/templates/dev/head/pages/exploration_player/ExplorationRecommendationsService.ts +++ b/core/templates/dev/head/pages/exploration_player/ExplorationRecommendationsService.ts @@ -17,6 +17,9 @@ * exploration. */ +require('services/ContextService.ts'); +require('services/contextual/UrlService.ts'); + oppia.factory('ExplorationRecommendationsService', [ '$http', 'ContextService', 'UrlService', 'EXPLORATION_EDITOR_TAB_CONTEXT', 'PAGE_CONTEXT', diff --git a/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateService.ts b/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateService.ts index 32efc7e88a5e..c93c0799144c 100644 --- a/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateService.ts +++ b/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to extract image filenames in a State. */ +require('services/HtmlEscaperService.ts'); + oppia.factory('ExtractImageFilenamesFromStateService', [ 'HtmlEscaperService', function(HtmlEscaperService) { var INTERACTION_TYPE_MULTIPLE_CHOICE = 'MultipleChoiceInput'; diff --git a/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateServiceSpec.ts index 6d1cf8d2a62e..98fb5a94acd3 100644 --- a/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/ExtractImageFilenamesFromStateServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the extracting image files in state service. */ +require('domain/exploration/ExplorationObjectFactory.ts'); +require('pages/exploration_player/ExtractImageFilenamesFromStateService.ts'); +require('services/ContextService.ts'); + describe('Extracting Image file names in the state service', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/pages/exploration_player/FatigueDetectionService.ts b/core/templates/dev/head/pages/exploration_player/FatigueDetectionService.ts index 548f8e6ca5cd..2f4c616595be 100644 --- a/core/templates/dev/head/pages/exploration_player/FatigueDetectionService.ts +++ b/core/templates/dev/head/pages/exploration_player/FatigueDetectionService.ts @@ -16,6 +16,8 @@ * @fileoverview Service for detecting spamming behavior from the learner. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('FatigueDetectionService', [ '$uibModal', 'UrlInterpolationService', function($uibModal, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/exploration_player/FeedbackPopupDirective.ts b/core/templates/dev/head/pages/exploration_player/FeedbackPopupDirective.ts index 5b55a44f355b..4d4a501b9632 100644 --- a/core/templates/dev/head/pages/exploration_player/FeedbackPopupDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/FeedbackPopupDirective.ts @@ -16,6 +16,16 @@ * @fileoverview Directive for the feedback popup. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/GetAbbreviatedTextFilter.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('services/AlertsService.ts'); +require('services/UserService.ts'); +require('services/contextual/WindowDimensionsService.ts'); +require('services/stateful/BackgroundMaskService.ts'); +require('services/stateful/FocusManagerService.ts'); + // This directive is unusual in that it should only be invoked indirectly, as // follows: // diff --git a/core/templates/dev/head/pages/exploration_player/HintAndSolutionModalService.ts b/core/templates/dev/head/pages/exploration_player/HintAndSolutionModalService.ts index ef61ea66e7d2..c31f20edd2dd 100644 --- a/core/templates/dev/head/pages/exploration_player/HintAndSolutionModalService.ts +++ b/core/templates/dev/head/pages/exploration_player/HintAndSolutionModalService.ts @@ -16,6 +16,15 @@ * @fileoverview Service for showing the hint and solution modals. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/HintsAndSolutionManagerService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('services/AudioPlayerService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); + oppia.factory('HintAndSolutionModalService', [ '$uibModal', 'AudioPlayerService', 'AudioTranslationManagerService', diff --git a/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerService.ts b/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerService.ts index 010f84974e00..def8945a1496 100644 --- a/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerService.ts +++ b/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerService.ts @@ -16,6 +16,8 @@ * @fileoverview Utility service for Hints in the learner's view. */ +require('pages/exploration_player/PlayerConstants.ts'); + oppia.factory('HintsAndSolutionManagerService', [ '$rootScope', '$timeout', 'DELAY_FOR_HINT_FEEDBACK_MSEC', 'EVENT_NEW_CARD_AVAILABLE', diff --git a/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerServiceSpec.ts index 9273ef42b586..c02870c52aae 100644 --- a/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/HintsAndSolutionManagerServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the Hints/Solution Manager service. */ +require('domain/exploration/HintObjectFactory.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); +require('pages/exploration_player/HintsAndSolutionManagerService.ts'); + describe('HintsAndSolutionManager service', function() { var $timeout; var $rootScope; diff --git a/core/templates/dev/head/pages/exploration_player/ImagePreloaderService.ts b/core/templates/dev/head/pages/exploration_player/ImagePreloaderService.ts index c52aef55acb4..cb24a52daad8 100644 --- a/core/templates/dev/head/pages/exploration_player/ImagePreloaderService.ts +++ b/core/templates/dev/head/pages/exploration_player/ImagePreloaderService.ts @@ -16,6 +16,12 @@ * @fileoverview Service to preload image into AssetsBackendApiService's cache. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ExtractImageFilenamesFromStateService.ts'); +require('services/AssetsBackendApiService.ts'); +require('services/ComputeGraphService.ts'); +require('services/ContextService.ts'); + oppia.factory('ImagePreloaderService', [ '$q', '$uibModal', 'AssetsBackendApiService', 'ComputeGraphService', 'ContextService', 'ExtractImageFilenamesFromStateService', diff --git a/core/templates/dev/head/pages/exploration_player/ImagePreloaderServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/ImagePreloaderServiceSpec.ts index fa83a59dd007..2693dc76ea24 100644 --- a/core/templates/dev/head/pages/exploration_player/ImagePreloaderServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/ImagePreloaderServiceSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for the image preloader service. */ +require('domain/exploration/ExplorationObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ImagePreloaderService.ts'); +require('services/AssetsBackendApiService.ts'); +require('services/ContextService.ts'); + describe('Image preloader service', function() { beforeEach(function() { angular.mock.module('oppia'); diff --git a/core/templates/dev/head/pages/exploration_player/InputResponsePairDirective.ts b/core/templates/dev/head/pages/exploration_player/InputResponsePairDirective.ts index fbf93b2ec265..f12e0d026422 100644 --- a/core/templates/dev/head/pages/exploration_player/InputResponsePairDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/InputResponsePairDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for an input/response pair in the learner view. */ +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('services/AudioPlayerService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); + oppia.directive('inputResponsePair', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/LearnerLocalNav.ts b/core/templates/dev/head/pages/exploration_player/LearnerLocalNav.ts index 600c7dba6beb..3a38dd7ea037 100644 --- a/core/templates/dev/head/pages/exploration_player/LearnerLocalNav.ts +++ b/core/templates/dev/head/pages/exploration_player/LearnerLocalNav.ts @@ -16,6 +16,18 @@ * @fileoverview Controller for the local navigation in the learner view. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/FeedbackPopupDirective.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require( + 'pages/suggestion_editor/ShowSuggestionModalForLearnerLocalViewService.ts'); +require('services/AlertsService.ts'); +require('services/UserService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.constant( 'FLAG_EXPLORATION_URL_TEMPLATE', '/flagexplorationhandler/'); diff --git a/core/templates/dev/head/pages/exploration_player/LearnerParamsServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/LearnerParamsServiceSpec.ts index c4a2703b7d2c..511ddb3329f3 100644 --- a/core/templates/dev/head/pages/exploration_player/LearnerParamsServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/LearnerParamsServiceSpec.ts @@ -16,6 +16,13 @@ * @fileoverview Unit tests for the learner parameters service. */ +require('domain/classifier/AnswerClassificationResultObjectFactory.ts'); +require('domain/exploration/ExplorationObjectFactory.ts'); +require('domain/exploration/SolutionObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ImagePreloaderService.ts'); +require('pages/exploration_player/LearnerParamsService.ts'); + describe('Learner parameters service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/LearnerViewInfo.ts b/core/templates/dev/head/pages/exploration_player/LearnerViewInfo.ts index b49910095d6f..f0497ceb8160 100644 --- a/core/templates/dev/head/pages/exploration_player/LearnerViewInfo.ts +++ b/core/templates/dev/head/pages/exploration_player/LearnerViewInfo.ts @@ -17,6 +17,16 @@ * footer. */ +require('components/profile_link/ProfileLinkImageDirective.ts'); +require('components/share/SharingLinksDirective.ts'); +require('filters/SummarizeNonnegativeNumberFilter.ts'); +require('filters/TruncateAndCapitalizeFilter.ts'); + +require('components/RatingComputationService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/ContextService.ts'); +require('services/DateTimeFormatService.ts'); + oppia.controller('LearnerViewInfo', [ '$http', '$log', '$scope', '$uibModal', 'ContextService', 'UrlInterpolationService', 'EXPLORATION_SUMMARY_DATA_URL_TEMPLATE', diff --git a/core/templates/dev/head/pages/exploration_player/LearnerViewRatingService.ts b/core/templates/dev/head/pages/exploration_player/LearnerViewRatingService.ts index 0454d07458de..5b363377e04b 100644 --- a/core/templates/dev/head/pages/exploration_player/LearnerViewRatingService.ts +++ b/core/templates/dev/head/pages/exploration_player/LearnerViewRatingService.ts @@ -16,6 +16,8 @@ * @fileoverview Service for the rating functionality in the learner view. */ +require('pages/exploration_player/ExplorationEngineService.ts'); + oppia.factory('LearnerViewRatingService', [ '$http', '$rootScope', 'ExplorationEngineService', function($http, $rootScope, ExplorationEngineService) { diff --git a/core/templates/dev/head/pages/exploration_player/NumberAttemptsServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/NumberAttemptsServiceSpec.ts index 8fedab90fb12..ecf6c0d27913 100644 --- a/core/templates/dev/head/pages/exploration_player/NumberAttemptsServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/NumberAttemptsServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the number attempts service. */ +require('pages/exploration_player/NumberAttemptsService.ts'); + describe('Number attempts service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/PlayerPositionService.ts b/core/templates/dev/head/pages/exploration_player/PlayerPositionService.ts index c8b5b55e4c86..fd1f88fdda6b 100644 --- a/core/templates/dev/head/pages/exploration_player/PlayerPositionService.ts +++ b/core/templates/dev/head/pages/exploration_player/PlayerPositionService.ts @@ -16,6 +16,8 @@ * @fileoverview Service for keeping track of the learner's position. */ +require('pages/exploration_player/PlayerTranscriptService.ts'); + oppia.factory('PlayerPositionService', [ 'PlayerTranscriptService', function(PlayerTranscriptService) { var displayedCardIndex = null; diff --git a/core/templates/dev/head/pages/exploration_player/PlayerPositionServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/PlayerPositionServiceSpec.ts index bb1f761d849e..dcb1fae6c6d4 100644 --- a/core/templates/dev/head/pages/exploration_player/PlayerPositionServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/PlayerPositionServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the player position service. */ +require('domain/state_card/StateCardObjectFactory.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); + describe('Player position service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/PlayerTranscriptService.ts b/core/templates/dev/head/pages/exploration_player/PlayerTranscriptService.ts index b84a964d2ce7..ea242c8d6880 100644 --- a/core/templates/dev/head/pages/exploration_player/PlayerTranscriptService.ts +++ b/core/templates/dev/head/pages/exploration_player/PlayerTranscriptService.ts @@ -16,6 +16,8 @@ * @fileoverview Service for the learner view transcript. */ +require('domain/state_card/StateCardObjectFactory.ts'); + // A service that maintains the transcript of the playthrough (i.e., what cards // are shown, what answers have been given, etc. Note that this service does // not maintain the currently-active card -- it's more like a log of what the diff --git a/core/templates/dev/head/pages/exploration_player/PlayerTranscriptServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/PlayerTranscriptServiceSpec.ts index 6805a20d6ad7..38d35db5c7b3 100644 --- a/core/templates/dev/head/pages/exploration_player/PlayerTranscriptServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/PlayerTranscriptServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the player transcript service. */ +require('domain/state_card/StateCardObjectFactory.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); + describe('Player transcript service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/PredictionAlgorithmRegistryServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/PredictionAlgorithmRegistryServiceSpec.ts index 877837bb41fb..efb3fa7e9790 100644 --- a/core/templates/dev/head/pages/exploration_player/PredictionAlgorithmRegistryServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/PredictionAlgorithmRegistryServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the prediction algorithm registry service. */ +require('pages/exploration_player/PredictionAlgorithmRegistryService.ts'); + describe('Prediction algorithm registry service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/PretestEngineService.ts b/core/templates/dev/head/pages/exploration_player/PretestEngineService.ts index 68c811052552..8a8cf4945361 100644 --- a/core/templates/dev/head/pages/exploration_player/PretestEngineService.ts +++ b/core/templates/dev/head/pages/exploration_player/PretestEngineService.ts @@ -16,6 +16,15 @@ * @fileoverview Utility service for the pretests for an exploration. */ +require('domain/question/QuestionObjectFactory.ts'); +require('domain/state_card/StateCardObjectFactory.ts'); +require('expressions/ExpressionInterpolationService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); oppia.factory('PretestEngineService', [ diff --git a/core/templates/dev/head/pages/exploration_player/ProgressNavDirective.ts b/core/templates/dev/head/pages/exploration_player/ProgressNavDirective.ts index 1fb66fd7c8b0..8f36d1bbccc2 100644 --- a/core/templates/dev/head/pages/exploration_player/ProgressNavDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/ProgressNavDirective.ts @@ -16,6 +16,17 @@ * @fileoverview Directive for navigation in the conversation skin. */ +require('pages/exploration_player/ContinueButtonDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('progressNav', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/RefresherExplorationConfirmationModalService.ts b/core/templates/dev/head/pages/exploration_player/RefresherExplorationConfirmationModalService.ts index 33dc47cdcb16..f53d14023cf8 100644 --- a/core/templates/dev/head/pages/exploration_player/RefresherExplorationConfirmationModalService.ts +++ b/core/templates/dev/head/pages/exploration_player/RefresherExplorationConfirmationModalService.ts @@ -17,6 +17,10 @@ * exploration. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('services/contextual/UrlService.ts'); + oppia.factory('RefresherExplorationConfirmationModalService', [ '$uibModal', 'ExplorationEngineService', 'UrlInterpolationService', 'UrlService', diff --git a/core/templates/dev/head/pages/exploration_player/StateClassifierMappingService.ts b/core/templates/dev/head/pages/exploration_player/StateClassifierMappingService.ts index 46daa193b556..71adbfd79a62 100644 --- a/core/templates/dev/head/pages/exploration_player/StateClassifierMappingService.ts +++ b/core/templates/dev/head/pages/exploration_player/StateClassifierMappingService.ts @@ -16,6 +16,8 @@ * @fileoverview Services for mapping state names to classifier details. */ +require('domain/classifier/ClassifierObjectFactory.ts'); + oppia.factory('StateClassifierMappingService', [ 'ClassifierObjectFactory', function(ClassifierObjectFactory) { var stateClassifierMapping = null; diff --git a/core/templates/dev/head/pages/exploration_player/StateClassifierMappingServiceSpec.ts b/core/templates/dev/head/pages/exploration_player/StateClassifierMappingServiceSpec.ts index 8e70b1ec2c94..6fb1345a3039 100644 --- a/core/templates/dev/head/pages/exploration_player/StateClassifierMappingServiceSpec.ts +++ b/core/templates/dev/head/pages/exploration_player/StateClassifierMappingServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the State classifier mapping service. */ +require('pages/exploration_player/StateClassifierMappingService.ts'); + describe('State classifier mapping service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/exploration_player/StatsReportingService.ts b/core/templates/dev/head/pages/exploration_player/StatsReportingService.ts index 0c49caccca1a..c4ddd6fb74bf 100644 --- a/core/templates/dev/head/pages/exploration_player/StatsReportingService.ts +++ b/core/templates/dev/head/pages/exploration_player/StatsReportingService.ts @@ -16,6 +16,15 @@ * @fileoverview Services for stats reporting. */ +require('domain/utilities/StopwatchObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('services/ContextService.ts'); +require('services/MessengerService.ts'); +require('services/PlaythroughService.ts'); +require('services/SiteAnalyticsService.ts'); + oppia.constant('STATS_EVENT_TYPES', { EVENT_TYPE_START_EXPLORATION: 'start', EVENT_TYPE_ACTUAL_START_EXPLORATION: 'actual_start', diff --git a/core/templates/dev/head/pages/exploration_player/SupplementalCardDirective.ts b/core/templates/dev/head/pages/exploration_player/SupplementalCardDirective.ts index a583fcd49f16..53803385b572 100644 --- a/core/templates/dev/head/pages/exploration_player/SupplementalCardDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/SupplementalCardDirective.ts @@ -16,6 +16,14 @@ * @fileoverview Controller for the supplemental card. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('services/AudioPlayerService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('supplementalCard', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/exploration_player/TutorCardDirective.ts b/core/templates/dev/head/pages/exploration_player/TutorCardDirective.ts index 3c4f4ec000ae..2e1396ca8a7c 100644 --- a/core/templates/dev/head/pages/exploration_player/TutorCardDirective.ts +++ b/core/templates/dev/head/pages/exploration_player/TutorCardDirective.ts @@ -16,6 +16,25 @@ * @fileoverview Controller for the Tutor Card. */ +require('directives/AngularHtmlBindDirective.ts'); +require('pages/exploration_player/AudioBarDirective.ts'); +require('pages/exploration_player/InputResponsePairDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_player/AudioPreloaderService.ts'); +require('pages/exploration_player/AudioTranslationManagerService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/ExplorationPlayerStateService.ts'); +require('pages/exploration_player/PlayerConstants.ts'); +require('services/AudioPlayerService.ts'); +require('services/AutogeneratedAudioPlayerService.ts'); +require('services/ContextService.ts'); +require('services/UserService.ts'); +require('services/contextual/DeviceInfoService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.animation('.conversation-skin-responses-animate-slide', function() { return { removeClass: function(element, className, done) { diff --git a/core/templates/dev/head/pages/exploration_player/exploration_player.html b/core/templates/dev/head/pages/exploration_player/exploration_player.html index 5e89b12ea4d3..1d4f5f96553e 100644 --- a/core/templates/dev/head/pages/exploration_player/exploration_player.html +++ b/core/templates/dev/head/pages/exploration_player/exploration_player.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {{ exploration_title }} - Oppia @@ -79,192 +79,22 @@

+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} {{ interaction_templates }} {{ dependencies_html }} diff --git a/core/templates/dev/head/pages/get_started/GetStarted.ts b/core/templates/dev/head/pages/get_started/GetStarted.ts new file mode 100644 index 000000000000..6e9ac5a621fc --- /dev/null +++ b/core/templates/dev/head/pages/get_started/GetStarted.ts @@ -0,0 +1,15 @@ +// Copyright 2019 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +require('components/background/BackgroundBannerDirective.ts'); diff --git a/core/templates/dev/head/pages/get_started/get_started.html b/core/templates/dev/head/pages/get_started/get_started.html index d4d25596335f..7c15b26bb12f 100644 --- a/core/templates/dev/head/pages/get_started/get_started.html +++ b/core/templates/dev/head/pages/get_started/get_started.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Get Started - Oppia @@ -86,7 +86,15 @@

{% block footer_js %} {{ super() }} - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer%} diff --git a/core/templates/dev/head/pages/landing/TopicLandingPage.ts b/core/templates/dev/head/pages/landing/TopicLandingPage.ts index a4d3f97433c0..0172e47aab9a 100644 --- a/core/templates/dev/head/pages/landing/TopicLandingPage.ts +++ b/core/templates/dev/head/pages/landing/TopicLandingPage.ts @@ -16,6 +16,12 @@ * @fileoverview Controller for landing page. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/CapitalizeFilter.ts'); +require('pages/landing/TopicLandingPage.ts'); +require('services/PageTitleService.ts'); +require('services/SiteAnalyticsService.ts'); + // Note: This oppia constant needs to be keep in sync with // AVAILABLE_LANDING_PAGES constant defined in feconf.py file. oppia.constant('TOPIC_LANDING_PAGE_DATA', { @@ -39,6 +45,8 @@ oppia.constant('TOPIC_LANDING_PAGE_DATA', { } }); + + oppia.controller('TopicLandingPage', [ '$filter', '$scope', '$timeout', '$window', 'PageTitleService', 'SiteAnalyticsService', 'UrlInterpolationService', 'TOPIC_LANDING_PAGE_DATA', diff --git a/core/templates/dev/head/pages/landing/stewards/Stewards.ts b/core/templates/dev/head/pages/landing/stewards/Stewards.ts index 005b57542efb..7382ae90ba0b 100644 --- a/core/templates/dev/head/pages/landing/stewards/Stewards.ts +++ b/core/templates/dev/head/pages/landing/stewards/Stewards.ts @@ -16,6 +16,11 @@ * @fileoverview Controller for the stewards landing page. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.controller('Stewards', [ '$scope', '$timeout', '$window', 'SiteAnalyticsService', 'UrlInterpolationService', 'UrlService', 'WindowDimensionsService', diff --git a/core/templates/dev/head/pages/landing/stewards/landing_page_stewards.html b/core/templates/dev/head/pages/landing/stewards/landing_page_stewards.html index 17159a4d4046..a062f2a98c57 100644 --- a/core/templates/dev/head/pages/landing/stewards/landing_page_stewards.html +++ b/core/templates/dev/head/pages/landing/stewards/landing_page_stewards.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Getting Started with Oppia @@ -578,6 +578,13 @@

{% block footer_js %} {{ super() }} - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/landing/topic_landing_page.html b/core/templates/dev/head/pages/landing/topic_landing_page.html index 2b4ded23db55..3d9162c73f56 100644 --- a/core/templates/dev/head/pages/landing/topic_landing_page.html +++ b/core/templates/dev/head/pages/landing/topic_landing_page.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block content %}
@@ -485,8 +485,13 @@

- - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/learner_dashboard/LearnerDashboard.ts b/core/templates/dev/head/pages/learner_dashboard/LearnerDashboard.ts index 9b6efbfff065..9d86492cd50c 100644 --- a/core/templates/dev/head/pages/learner_dashboard/LearnerDashboard.ts +++ b/core/templates/dev/head/pages/learner_dashboard/LearnerDashboard.ts @@ -16,6 +16,22 @@ * @fileoverview Controllers for the creator dashboard. */ +require('components/background/BackgroundBannerDirective.ts'); +require('components/loading/LoadingDotsDirective.ts'); +require('components/summary_tile/CollectionSummaryTileDirective.ts'); +require('components/summary_tile/ExplorationSummaryTileDirective.ts'); +require('filters/TruncateFilter.ts'); + +require('domain/feedback_message/FeedbackMessageSummaryObjectFactory.ts'); +require('domain/feedback_thread/FeedbackThreadSummaryObjectFactory.ts'); +require('domain/learner_dashboard/LearnerDashboardBackendApiService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadStatusDisplayService.ts'); +require('pages/suggestion_editor/ShowSuggestionModalForLearnerViewService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/DateTimeFormatService.ts'); +require('services/UserService.ts'); + oppia.constant('LEARNER_DASHBOARD_SECTION_I18N_IDS', { INCOMPLETE: 'I18N_LEARNER_DASHBOARD_INCOMPLETE_SECTION', COMPLETED: 'I18N_LEARNER_DASHBOARD_COMPLETED_SECTION', diff --git a/core/templates/dev/head/pages/learner_dashboard/learner_dashboard.html b/core/templates/dev/head/pages/learner_dashboard/learner_dashboard.html index c1fdae567e1b..53b940b25943 100644 --- a/core/templates/dev/head/pages/learner_dashboard/learner_dashboard.html +++ b/core/templates/dev/head/pages/learner_dashboard/learner_dashboard.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Learner Dashboard - Oppia @@ -1178,27 +1178,13 @@

<[subscriptionsList.length]>

{% block footer_js %} {{ super() }} - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/library/ActivityTilesInfinityGridDirective.ts b/core/templates/dev/head/pages/library/ActivityTilesInfinityGridDirective.ts index de72a75a7c18..112e1a80beb7 100644 --- a/core/templates/dev/head/pages/library/ActivityTilesInfinityGridDirective.ts +++ b/core/templates/dev/head/pages/library/ActivityTilesInfinityGridDirective.ts @@ -16,6 +16,10 @@ * @fileoverview Directive for an infinitely-scrollable view of activity tiles */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SearchService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('activityTilesInfinityGrid', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/library/Library.ts b/core/templates/dev/head/pages/library/Library.ts index ec77975507ec..539db6edd781 100755 --- a/core/templates/dev/head/pages/library/Library.ts +++ b/core/templates/dev/head/pages/library/Library.ts @@ -16,6 +16,29 @@ * @fileoverview Data and controllers for the Oppia contributors' library page. */ +require('components/loading/LoadingDotsDirective.ts'); +require('components/summary_tile/ExplorationSummaryTileDirective.ts'); +require('components/summary_tile/CollectionSummaryTileDirective.ts'); +require('pages/library/LibraryFooter.ts'); +require('pages/library/SearchBarDirective.ts'); +require('pages/library/SearchResultsDirective.ts'); + +require('domain/learner_dashboard/LearnerDashboardActivityIdsObjectFactory.ts'); +require('domain/learner_dashboard/LearnerDashboardIdsBackendApiService.ts'); +require('domain/learner_dashboard/LearnerPlaylistService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/ConstructTranslationIdsService.ts'); +require('services/PageTitleService.ts'); +require('services/SearchService.ts'); +require('services/UserService.ts'); +require('services/contextual/UrlService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + +// NOTE TO DEVELOPERS: The constants defined below in LIBRARY_PAGE_MODES should +// be same as the LIBRARY_PAGE_MODE constants defined in feconf.py. For example +// LIBRARY_PAGE_MODES.GROUP should have the same value as +// LIBRARY_PAGE_MODE_GROUP in feconf.py. oppia.constant('LIBRARY_PAGE_MODES', { GROUP: 'group', INDEX: 'index', diff --git a/core/templates/dev/head/pages/library/LibrarySpec.ts b/core/templates/dev/head/pages/library/LibrarySpec.ts index 5d596149650d..7a70dc6c5278 100644 --- a/core/templates/dev/head/pages/library/LibrarySpec.ts +++ b/core/templates/dev/head/pages/library/LibrarySpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the controller of the library page. */ +require('pages/library/Library.ts'); + describe('Library controller', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/library/SearchBarDirective.ts b/core/templates/dev/head/pages/library/SearchBarDirective.ts index c8b9117f9614..64c991dcf869 100755 --- a/core/templates/dev/head/pages/library/SearchBarDirective.ts +++ b/core/templates/dev/head/pages/library/SearchBarDirective.ts @@ -16,6 +16,17 @@ * @fileoverview Directive for the Search Bar. */ +require('filters/TruncateFilter.ts'); + +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/ConstructTranslationIdsService.ts'); +require('services/DebouncerService.ts'); +require('services/HtmlEscaperService.ts'); +require('services/NavigationService.ts'); +require('services/SearchService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('searchBar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/library/SearchResultsDirective.ts b/core/templates/dev/head/pages/library/SearchResultsDirective.ts index b61f6329c8cf..815b2a756a6e 100644 --- a/core/templates/dev/head/pages/library/SearchResultsDirective.ts +++ b/core/templates/dev/head/pages/library/SearchResultsDirective.ts @@ -16,6 +16,12 @@ * @fileoverview Directive for showing search results. */ +require('pages/library/ActivityTilesInfinityGridDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); + oppia.directive('searchResults', [ '$q', 'UrlInterpolationService', function($q, UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/library/library.html b/core/templates/dev/head/pages/library/library.html index d37a810ad579..bdcd604b62db 100644 --- a/core/templates/dev/head/pages/library/library.html +++ b/core/templates/dev/head/pages/library/library.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block navbar_breadcrumb %} {% endblock navbar_breadcrumb %} @@ -349,38 +349,13 @@

The Oppia site is temporarily unavailable.

{% include 'pages/footer_js_libs.html' %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> diff --git a/core/templates/dev/head/pages/moderator/Moderator.ts b/core/templates/dev/head/pages/moderator/Moderator.ts index a0028373b0d9..6879d8a58d0b 100644 --- a/core/templates/dev/head/pages/moderator/Moderator.ts +++ b/core/templates/dev/head/pages/moderator/Moderator.ts @@ -16,6 +16,29 @@ * @fileoverview Data and controllers for the Oppia moderator page. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('filters/UnderscoresToCamelCaseFilter.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('services/AlertsService.ts'); +require('services/DateTimeFormatService.ts'); + oppia.controller('Moderator', [ '$http', '$rootScope', '$scope', 'AlertsService', 'DateTimeFormatService', function($http, $rootScope, $scope, AlertsService, DateTimeFormatService) { diff --git a/core/templates/dev/head/pages/moderator/moderator.html b/core/templates/dev/head/pages/moderator/moderator.html index 39678edb30d6..25f916a99bc6 100644 --- a/core/templates/dev/head/pages/moderator/moderator.html +++ b/core/templates/dev/head/pages/moderator/moderator.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Moderator Tools - Oppia @@ -106,28 +106,13 @@

Activities to feature in the library

{% block footer_js %} {{ super() }} - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/notifications_dashboard/NotificationsDashboard.ts b/core/templates/dev/head/pages/notifications_dashboard/NotificationsDashboard.ts index cd3cef080824..ca04d5c7465f 100644 --- a/core/templates/dev/head/pages/notifications_dashboard/NotificationsDashboard.ts +++ b/core/templates/dev/head/pages/notifications_dashboard/NotificationsDashboard.ts @@ -16,6 +16,8 @@ * @fileoverview Data and controllers for the user's notifications dashboard. */ +require('services/DateTimeFormatService.ts'); + oppia.controller('NotificationsDashboard', [ '$http', '$rootScope', '$scope', 'DateTimeFormatService', function($http, $rootScope, $scope, DateTimeFormatService) { diff --git a/core/templates/dev/head/pages/notifications_dashboard/notifications_dashboard.html b/core/templates/dev/head/pages/notifications_dashboard/notifications_dashboard.html index 2b914e6aa599..aca44d970aea 100644 --- a/core/templates/dev/head/pages/notifications_dashboard/notifications_dashboard.html +++ b/core/templates/dev/head/pages/notifications_dashboard/notifications_dashboard.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Notifications - Oppia @@ -112,5 +112,13 @@

Notifications

{% block footer_js %} {{ super() }} - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/practice_session/PracticeSession.ts b/core/templates/dev/head/pages/practice_session/PracticeSession.ts index 7256b4d19f1c..274b009996de 100644 --- a/core/templates/dev/head/pages/practice_session/PracticeSession.ts +++ b/core/templates/dev/head/pages/practice_session/PracticeSession.ts @@ -20,6 +20,12 @@ oppia.constant( 'PRACTICE_SESSIONS_DATA_URL', '/practice_session/data/'); +require('components/background/BackgroundBannerDirective.ts'); +require('pages/question_player/QuestionPlayerDirective.ts'); + +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.controller('PracticeSession', [ '$http', '$rootScope', '$scope', 'AlertsService', 'UrlInterpolationService', 'UrlService', diff --git a/core/templates/dev/head/pages/practice_session/practice_session.html b/core/templates/dev/head/pages/practice_session/practice_session.html index 45d1d90b2e85..c17412c5cb46 100644 --- a/core/templates/dev/head/pages/practice_session/practice_session.html +++ b/core/templates/dev/head/pages/practice_session/practice_session.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Practice Session: {{ topic_name }} - Oppia @@ -51,9 +51,13 @@ {% block footer_js %} {{ super() }} - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/preferences/Preferences.ts b/core/templates/dev/head/pages/preferences/Preferences.ts index 0031fcee5ee0..46ae75373181 100644 --- a/core/templates/dev/head/pages/preferences/Preferences.ts +++ b/core/templates/dev/head/pages/preferences/Preferences.ts @@ -16,6 +16,17 @@ * @fileoverview Data and controllers for the Oppia 'edit preferences' page. */ +require('components/forms/Select2DropdownDirective.ts'); +require('components/forms/ImageUploaderDirective.ts'); +require('components/background/BackgroundBannerDirective.ts'); +require('filters/TruncateFilter.ts'); + +require('domain/utilities/LanguageUtilService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/UserService.ts'); +require('services/UtilsService.ts'); + oppia.controller('Preferences', [ '$http', '$q', '$rootScope', '$scope', '$timeout', '$translate', '$uibModal', 'AlertsService', 'LanguageUtilService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/pages/preferences/PreferencesSpec.ts b/core/templates/dev/head/pages/preferences/PreferencesSpec.ts index cc27680ee4cb..0001f5ca8634 100644 --- a/core/templates/dev/head/pages/preferences/PreferencesSpec.ts +++ b/core/templates/dev/head/pages/preferences/PreferencesSpec.ts @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('pages/preferences/Preferences.ts'); + describe('Preferences Controller', function() { describe('PreferencesCtrl', function() { var scope, ctrl, $httpBackend, mockAlertsService, SUPPORTED_AUDIO_LANGUAGES; diff --git a/core/templates/dev/head/pages/preferences/preferences.html b/core/templates/dev/head/pages/preferences/preferences.html index 31944b981d3d..81406e38f51a 100644 --- a/core/templates/dev/head/pages/preferences/preferences.html +++ b/core/templates/dev/head/pages/preferences/preferences.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Preferences - Oppia @@ -277,17 +277,13 @@ {% block footer_js %} {{ super() }} - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/privacy/privacy.html b/core/templates/dev/head/pages/privacy/privacy.html index 2dca82546df2..32029d9265fa 100644 --- a/core/templates/dev/head/pages/privacy/privacy.html +++ b/core/templates/dev/head/pages/privacy/privacy.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Privacy Policy - Oppia diff --git a/core/templates/dev/head/pages/profile/Profile.ts b/core/templates/dev/head/pages/profile/Profile.ts index 827272cecf98..56e3fc2b4e75 100644 --- a/core/templates/dev/head/pages/profile/Profile.ts +++ b/core/templates/dev/head/pages/profile/Profile.ts @@ -16,6 +16,14 @@ * @fileoverview Data and controllers for the Oppia profile page. */ +require('components/background/BackgroundBannerDirective.ts'); +require('components/summary_tile/ExplorationSummaryTileDirective.ts'); +require('filters/TruncateFilter.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/UserService.ts'); +require('services/DateTimeFormatService.ts'); + oppia.controller('Profile', [ '$http', '$log', '$rootScope', '$scope', '$window', 'DateTimeFormatService', 'UrlInterpolationService', 'UserService', diff --git a/core/templates/dev/head/pages/profile/profile.html b/core/templates/dev/head/pages/profile/profile.html index 97dc3c09ce40..0d323ad0d5a5 100644 --- a/core/templates/dev/head/pages/profile/profile.html +++ b/core/templates/dev/head/pages/profile/profile.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Profile - Oppia @@ -428,15 +428,13 @@

{% block footer_js %} {{ super() }} - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/question_editor/QuestionEditorDirective.ts b/core/templates/dev/head/pages/question_editor/QuestionEditorDirective.ts index b21aa55adc2e..0b94e0eb5bcd 100644 --- a/core/templates/dev/head/pages/question_editor/QuestionEditorDirective.ts +++ b/core/templates/dev/head/pages/question_editor/QuestionEditorDirective.ts @@ -15,6 +15,21 @@ /** * @fileoverview Controller for the questions editor directive. */ + +require('pages/state_editor/StateEditorDirective.ts'); + +require('components/QuestionCreationService.ts'); +require('domain/question/EditableQuestionBackendApiService.ts'); +require('domain/question/QuestionObjectFactory.ts'); +require('domain/question/QuestionUpdateService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/EditabilityService.ts'); + oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); oppia.directive('questionEditor', [ diff --git a/core/templates/dev/head/pages/question_player/QuestionPlayerDirective.ts b/core/templates/dev/head/pages/question_player/QuestionPlayerDirective.ts index 2759394d83ab..bd77adc3fff2 100644 --- a/core/templates/dev/head/pages/question_player/QuestionPlayerDirective.ts +++ b/core/templates/dev/head/pages/question_player/QuestionPlayerDirective.ts @@ -15,6 +15,10 @@ /** * @fileoverview Controller for the questions player directive. */ + +require('domain/question/QuestionPlayerBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('questionPlayer', [ '$http', 'UrlInterpolationService', function( diff --git a/core/templates/dev/head/pages/questions_list/QuestionsListDirective.ts b/core/templates/dev/head/pages/questions_list/QuestionsListDirective.ts index e09e3ed74950..1112a1289a8c 100644 --- a/core/templates/dev/head/pages/questions_list/QuestionsListDirective.ts +++ b/core/templates/dev/head/pages/questions_list/QuestionsListDirective.ts @@ -16,6 +16,23 @@ /** * @fileoverview Controller for the questions list. */ + +require('directives/AngularHtmlBindDirective.ts'); +require('pages/question_editor/QuestionEditorDirective.ts'); + +require('components/QuestionCreationService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/question/EditableQuestionBackendApiService.ts'); +require('domain/question/QuestionObjectFactory.ts'); +require('domain/skill/EditableSkillBackendApiService.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/TruncateFilter.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('questionsList', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/signup/Signup.ts b/core/templates/dev/head/pages/signup/Signup.ts index dd447ec27e06..5c1f98dd7c52 100644 --- a/core/templates/dev/head/pages/signup/Signup.ts +++ b/core/templates/dev/head/pages/signup/Signup.ts @@ -16,6 +16,14 @@ * @fileoverview Data and controllers for the Oppia profile page. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); +require('services/IdGenerationService.ts'); +require('services/SiteAnalyticsService.ts'); +require('services/UserService.ts'); +require('services/contextual/UrlService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.controller('Signup', [ '$http', '$rootScope', '$scope', '$uibModal', 'AlertsService', 'FocusManagerService', diff --git a/core/templates/dev/head/pages/signup/SignupSpec.ts b/core/templates/dev/head/pages/signup/SignupSpec.ts index 90f8655943f8..5023eedf2e03 100644 --- a/core/templates/dev/head/pages/signup/SignupSpec.ts +++ b/core/templates/dev/head/pages/signup/SignupSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the editor prerequisites page. */ +require('pages/signup/Signup.ts'); + describe('Signup controller', function() { describe('SignupCtrl', function() { var scope, ctrl, $httpBackend, rootScope, mockAlertsService, urlParams; diff --git a/core/templates/dev/head/pages/signup/signup.html b/core/templates/dev/head/pages/signup/signup.html index d5c7798e8270..56705ec6dab9 100644 --- a/core/templates/dev/head/pages/signup/signup.html +++ b/core/templates/dev/head/pages/signup/signup.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Join the community - Oppia @@ -109,7 +109,13 @@

- + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/splash/splash_at0.html b/core/templates/dev/head/pages/splash/splash_at0.html index 6755686cb1dd..a1fac9fa334c 100644 --- a/core/templates/dev/head/pages/splash/splash_at0.html +++ b/core/templates/dev/head/pages/splash/splash_at0.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block prerender %} @@ -210,6 +210,13 @@

- + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/splash/splash_at1.html b/core/templates/dev/head/pages/splash/splash_at1.html index c28a3c8241e6..58fa6b16d3a2 100644 --- a/core/templates/dev/head/pages/splash/splash_at1.html +++ b/core/templates/dev/head/pages/splash/splash_at1.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block prerender %} @@ -210,6 +210,13 @@

- + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/state_editor/StateContentEditorDirective.ts b/core/templates/dev/head/pages/state_editor/StateContentEditorDirective.ts index c0d26ff5a7a0..5e7926bdbce8 100644 --- a/core/templates/dev/head/pages/state_editor/StateContentEditorDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateContentEditorDirective.ts @@ -16,6 +16,14 @@ * @fileoverview Directive for the state content editor. */ +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/EditorFirstTimeEventsService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); +require('services/EditabilityService.ts'); + oppia.directive('stateContentEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/StateContentEditorDirectiveSpec.ts b/core/templates/dev/head/pages/state_editor/StateContentEditorDirectiveSpec.ts index 77a28e6eeb66..7c5ccfbe0ee4 100644 --- a/core/templates/dev/head/pages/state_editor/StateContentEditorDirectiveSpec.ts +++ b/core/templates/dev/head/pages/state_editor/StateContentEditorDirectiveSpec.ts @@ -16,6 +16,16 @@ * @fileoverview Unit tests for the state content editor directive. */ +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('domain/exploration/RecordedVoiceoversObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/state_editor/state_properties/StateContentService.ts'); +require( + 'pages/state_editor/state_properties/StateRecordedVoiceoversService.ts'); +require('services/EditabilityService.ts'); + describe('State content editor directive', function() { var outerScope, ctrlScope, shof, cls, scs, es, ess, rvo, srvos; var mockExplorationData; diff --git a/core/templates/dev/head/pages/state_editor/StateEditorDirective.ts b/core/templates/dev/head/pages/state_editor/StateEditorDirective.ts index 5ff9baaf3d13..9a5bc50fc03e 100644 --- a/core/templates/dev/head/pages/state_editor/StateEditorDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateEditorDirective.ts @@ -15,6 +15,17 @@ /** * @fileoverview Controller for the state editor directive. */ + +require('pages/state_editor/StateContentEditorDirective.ts'); +require('pages/state_editor/StateHintsEditorDirective.ts'); +require('pages/state_editor/StateInteractionEditorDirective.ts'); +require('pages/state_editor/StateResponsesDirective.ts'); +require('pages/state_editor/StateSolutionEditorDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StatePropertyService.ts'); + oppia.directive('stateEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/StateHintsEditorDirective.ts b/core/templates/dev/head/pages/state_editor/StateHintsEditorDirective.ts index 0bdfb710bd4d..ca5af36de78d 100644 --- a/core/templates/dev/head/pages/state_editor/StateHintsEditorDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateHintsEditorDirective.ts @@ -16,6 +16,20 @@ * @fileoverview Directive for the add and view hints section of the state * editor. */ + +require('components/state/HintEditorDirective.ts'); +require('components/state/ResponseHeaderDirective.ts'); + +require('domain/exploration/HintObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateHintsService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); +require('pages/state_editor/state_properties/StateSolutionService.ts'); +require('services/AlertsService.ts'); +require('services/EditabilityService.ts'); +require('services/GenerateContentIdService.ts'); + oppia.directive('stateHintsEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirective.ts b/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirective.ts index aada1f16945e..9b0632c2d193 100644 --- a/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirective.ts @@ -16,6 +16,25 @@ * @fileoverview Directive for the interaction editor section in the state * editor. */ + +require('directives/AngularHtmlBindDirective.ts'); + +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/EditorFirstTimeEventsService.ts'); +require( + 'pages/exploration_editor/editor_tab/InteractionDetailsCacheService.ts'); +require('pages/state_editor/state_properties/StateContentService.ts'); +require('pages/state_editor/state_properties/StateCustomizationArgsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateHintsService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); +require('pages/state_editor/state_properties/StateSolutionService.ts'); +require('services/AlertsService.ts'); +require('services/EditabilityService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/HtmlEscaperService.ts'); + oppia.directive('stateInteractionEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirectiveSpec.ts b/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirectiveSpec.ts index d9246e9b2dd0..55cea5a5dd93 100644 --- a/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirectiveSpec.ts +++ b/core/templates/dev/head/pages/state_editor/StateInteractionEditorDirectiveSpec.ts @@ -16,6 +16,15 @@ * @fileoverview Unit tests for the controller of 'State Interactions'. */ +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require( + 'pages/exploration_editor/editor_tab/InteractionDetailsCacheService.ts'); +require('pages/state_editor/state_properties/StateContentService.ts'); +require('pages/state_editor/state_properties/StateCustomizationArgsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); + describe('State Interaction controller', function() { describe('StateInteraction', function() { beforeEach(function() { diff --git a/core/templates/dev/head/pages/state_editor/StateResponsesDirective.ts b/core/templates/dev/head/pages/state_editor/StateResponsesDirective.ts index 977757bc1e30..f45f8233be5f 100644 --- a/core/templates/dev/head/pages/state_editor/StateResponsesDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateResponsesDirective.ts @@ -15,6 +15,37 @@ /** * @fileoverview Directive for managing the state responses in the state editor. */ +require('components/state/AnswerGroupEditorDirective.ts'); +require('components/state/ResponseHeaderDirective.ts'); + +require('domain/exploration/AnswerGroupObjectFactory.ts'); +require('domain/exploration/HintObjectFactory.ts'); +require('domain/exploration/OutcomeObjectFactory.ts'); +require('domain/exploration/RuleObjectFactory.ts'); +require('domain/exploration/SubtitledHtmlObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/CamelCaseToHyphensFilter.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('filters/ParameterizeRuleDescriptionFilter.ts'); +require('filters/TruncateFilter.ts'); +require('filters/WrapTextWithEllipsisFilter.ts'); +require('pages/exploration_editor/EditorFirstTimeEventsService.ts'); +require( + 'pages/exploration_editor/editor_tab/InteractionDetailsCacheService.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/state_editor/state_properties/StateContentService.ts'); +require('pages/state_editor/state_properties/StateCustomizationArgsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateHintsService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); +require('pages/state_editor/state_properties/StateSolutionService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/EditabilityService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/GenerateContentIdService.ts'); +require('services/HtmlEscaperService.ts'); + oppia.directive('stateResponses', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/StateSolutionEditorDirective.ts b/core/templates/dev/head/pages/state_editor/StateSolutionEditorDirective.ts index 82110436d700..b4411d9dd11a 100644 --- a/core/templates/dev/head/pages/state_editor/StateSolutionEditorDirective.ts +++ b/core/templates/dev/head/pages/state_editor/StateSolutionEditorDirective.ts @@ -16,6 +16,28 @@ * @fileoverview Directive for the solution viewer and editor section in the * state editor. */ + +require('components/state/ResponseHeaderDirective.ts'); +require('components/state/SolutionEditorDirective.ts'); + +require('domain/exploration/SolutionObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('filters/ConvertToPlainTextFilter.ts'); +require('pages/exploration_editor/editor_tab/ResponsesService.ts'); +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); +require('pages/exploration_editor/editor_tab/SolutionVerificationService.ts'); +require('pages/exploration_player/CurrentInteractionService.ts'); +require('pages/state_editor/state_properties/StateCustomizationArgsService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/state_editor/state_properties/StateHintsService.ts'); +require('pages/state_editor/state_properties/StateInteractionIdService.ts'); +require('pages/state_editor/state_properties/StateSolutionService.ts'); +require('services/AlertsService.ts'); +require('services/ContextService.ts'); +require('services/EditabilityService.ts'); +require('services/ExplorationHtmlFormatterService.ts'); +require('services/GenerateContentIdService.ts'); + oppia.directive('stateSolutionEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/state_editor/state_properties/StateEditorService.ts b/core/templates/dev/head/pages/state_editor/state_properties/StateEditorService.ts index 96952cf49f74..1ea2a51215b9 100644 --- a/core/templates/dev/head/pages/state_editor/state_properties/StateEditorService.ts +++ b/core/templates/dev/head/pages/state_editor/state_properties/StateEditorService.ts @@ -17,6 +17,8 @@ * a state. */ +require('pages/exploration_editor/editor_tab/SolutionValidityService.ts'); + oppia.factory('StateEditorService', [ '$log', 'SolutionValidityService', function( diff --git a/core/templates/dev/head/pages/state_editor/state_properties/StateEditorServiceSpec.ts b/core/templates/dev/head/pages/state_editor/state_properties/StateEditorServiceSpec.ts index 3f7d48d4df12..086aa0585f9a 100644 --- a/core/templates/dev/head/pages/state_editor/state_properties/StateEditorServiceSpec.ts +++ b/core/templates/dev/head/pages/state_editor/state_properties/StateEditorServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit test for the Editor state service. */ +require('pages/state_editor/state_properties/StateEditorService.ts'); + describe('Editor state service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyService.ts b/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyService.ts index 984720000c28..f35eb3faa6ee 100644 --- a/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyService.ts +++ b/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyService.ts @@ -16,6 +16,8 @@ * @fileoverview Standalone services for the general state editor page. */ +require('services/AlertsService.ts'); + oppia.factory('StatePropertyService', [ '$log', 'AlertsService', function($log, AlertsService) { diff --git a/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyServiceSpec.ts b/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyServiceSpec.ts index 506d29df64ca..17dbe166a5b0 100644 --- a/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyServiceSpec.ts +++ b/core/templates/dev/head/pages/state_editor/state_properties/StatePropertyServiceSpec.ts @@ -17,6 +17,9 @@ * editor page. */ +require('pages/exploration_editor/ChangeListService.ts'); +require('pages/exploration_editor/ExplorationTitleService.ts'); + describe('Change list service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/pages/state_editor/state_properties/StateRecordedVoiceoversService.ts b/core/templates/dev/head/pages/state_editor/state_properties/StateRecordedVoiceoversService.ts index f428f855b702..31c6b6ccc89e 100644 --- a/core/templates/dev/head/pages/state_editor/state_properties/StateRecordedVoiceoversService.ts +++ b/core/templates/dev/head/pages/state_editor/state_properties/StateRecordedVoiceoversService.ts @@ -17,6 +17,9 @@ * to audio translations. */ +require( + 'pages/state_editor/state_properties/StatePropertyService.ts'); + oppia.factory('StateRecordedVoiceoversService', [ 'StatePropertyService', function(StatePropertyService) { var child = Object.create(StatePropertyService); diff --git a/core/templates/dev/head/pages/story_editor/StoryEditor.ts b/core/templates/dev/head/pages/story_editor/StoryEditor.ts index 236decdfb031..78cb8502a287 100644 --- a/core/templates/dev/head/pages/story_editor/StoryEditor.ts +++ b/core/templates/dev/head/pages/story_editor/StoryEditor.ts @@ -15,6 +15,69 @@ /** * @fileoverview Primary controller for the story editor page. */ + +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('components/CkEditorRteDirective.ts'); +require('components/CkEditorWidgetsInitializer.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('directives/MathjaxBindDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedListViewerDirective.ts'); +require( + 'components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedViewerDirective.ts'); +require('services/HtmlEscaperService.ts'); +require('services/IdGenerationService.ts'); +require('services/RteHelperService.ts'); +require('services/SchemaDefaultValueService.ts'); +require('services/SchemaUndefinedLastElementService.ts'); +require('services/NestedDirectivesRecursionTimeoutPreventionService.ts'); +require('services/GenerateContentIdService.ts'); +require('components/loading/LoadingDotsDirective.ts'); +require('domain/editor/undo_redo/ChangeObjectFactory.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/editor/undo_redo/QuestionUndoRedoService.ts'); +require('domain/editor/undo_redo/BaseUndoRedoService.ts'); +require('domain/story/EditableStoryBackendApiService.ts'); +require('domain/story/StoryObjectFactory.ts'); +require('domain/story/StoryContentsObjectFactory.ts'); +require('domain/story/StoryNodeObjectFactory.ts'); +require('domain/story/StoryUpdateService.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('pages/story_editor/StoryEditorNavbarBreadcrumbDirective.ts'); +require('pages/story_editor/StoryEditorNavbarDirective.ts'); +require('pages/story_editor/main_editor/StoryEditorDirective.ts'); + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); +require('services/contextual/UrlService.ts'); + oppia.constant('NODE_ID_PREFIX', 'node_'); oppia.controller('StoryEditor', [ diff --git a/core/templates/dev/head/pages/story_editor/StoryEditorNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/story_editor/StoryEditorNavbarBreadcrumbDirective.ts index 5a6acba91359..ee0b4b18a7f4 100644 --- a/core/templates/dev/head/pages/story_editor/StoryEditorNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/story_editor/StoryEditorNavbarBreadcrumbDirective.ts @@ -15,6 +15,13 @@ /** * @fileoverview Controller for the navbar breadcrumb of the story editor. */ + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); +require('pages/story_editor/main_editor/StoryEditorDirective.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('storyEditorNavbarBreadcrumb', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/story_editor/StoryEditorNavbarDirective.ts b/core/templates/dev/head/pages/story_editor/StoryEditorNavbarDirective.ts index 4b50240d1de6..dbe490e89a00 100644 --- a/core/templates/dev/head/pages/story_editor/StoryEditorNavbarDirective.ts +++ b/core/templates/dev/head/pages/story_editor/StoryEditorNavbarDirective.ts @@ -16,6 +16,13 @@ * @fileoverview Directive for the navbar of the story editor. */ +require('domain/editor/undo_redo/BaseUndoRedoService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('storyEditorNavbar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/story_editor/StoryEditorStateService.ts b/core/templates/dev/head/pages/story_editor/StoryEditorStateService.ts index 83a4b03c3108..c35ccdfbd935 100644 --- a/core/templates/dev/head/pages/story_editor/StoryEditorStateService.ts +++ b/core/templates/dev/head/pages/story_editor/StoryEditorStateService.ts @@ -18,6 +18,11 @@ * retrieving the story, saving it, and listening for changes. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/EditableStoryBackendApiService.ts'); +require('domain/story/StoryObjectFactory.ts'); +require('services/AlertsService.ts'); + oppia.constant('EVENT_STORY_INITIALIZED', 'storyInitialized'); oppia.constant('EVENT_STORY_REINITIALIZED', 'storyReinitialized'); diff --git a/core/templates/dev/head/pages/story_editor/StoryEditorStateServiceSpec.ts b/core/templates/dev/head/pages/story_editor/StoryEditorStateServiceSpec.ts index 6b79fafad709..5e0693f38f66 100644 --- a/core/templates/dev/head/pages/story_editor/StoryEditorStateServiceSpec.ts +++ b/core/templates/dev/head/pages/story_editor/StoryEditorStateServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for StoryEditorStateService. */ +require('domain/story/StoryObjectFactory.ts'); +require('domain/story/StoryUpdateService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); + describe('Story editor state service', function() { var StoryEditorStateService = null; var StoryObjectFactory = null; diff --git a/core/templates/dev/head/pages/story_editor/main_editor/StoryEditorDirective.ts b/core/templates/dev/head/pages/story_editor/main_editor/StoryEditorDirective.ts index 65e00458677f..93963a50d6d5 100644 --- a/core/templates/dev/head/pages/story_editor/main_editor/StoryEditorDirective.ts +++ b/core/templates/dev/head/pages/story_editor/main_editor/StoryEditorDirective.ts @@ -15,6 +15,16 @@ /** * @fileoverview Controller for the main story editor. */ + +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('pages/story_editor/main_editor/StoryNodeEditorDirective.ts'); + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/StoryUpdateService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); +require('services/AlertsService.ts'); + oppia.constant('EVENT_VIEW_STORY_NODE_EDITOR', 'viewStoryNodeEditor'); oppia.directive('storyEditor', [ diff --git a/core/templates/dev/head/pages/story_editor/main_editor/StoryNodeEditorDirective.ts b/core/templates/dev/head/pages/story_editor/main_editor/StoryNodeEditorDirective.ts index d085a3df28f4..84b7d1c7cea5 100644 --- a/core/templates/dev/head/pages/story_editor/main_editor/StoryNodeEditorDirective.ts +++ b/core/templates/dev/head/pages/story_editor/main_editor/StoryNodeEditorDirective.ts @@ -15,6 +15,12 @@ /** * @fileoverview Controller for the story node editor. */ + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/StoryUpdateService.ts'); +require('pages/story_editor/StoryEditorStateService.ts'); +require('services/AlertsService.ts'); + oppia.directive('storyNodeEditor', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/story_editor/story_editor.html b/core/templates/dev/head/pages/story_editor/story_editor.html index 1cae676493c1..5f1e826131c7 100644 --- a/core/templates/dev/head/pages/story_editor/story_editor.html +++ b/core/templates/dev/head/pages/story_editor/story_editor.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {{ story_title }} - Oppia @@ -37,68 +37,17 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorView.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorView.ts index c52b5dd21528..f077835ab0c4 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorView.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorView.ts @@ -16,6 +16,8 @@ * @fileoverview Controller to show suggestion modal in creator view. */ +require('pages/suggestion_editor/SuggestionModalService.ts'); + oppia.controller('ShowSuggestionModalForCreatorView', [ '$log', '$scope', '$uibModalInstance', 'SuggestionModalService', 'canReviewActiveThread', 'description', 'newContent', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorViewService.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorViewService.ts index f5704637603a..ccd5df20674a 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorViewService.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForCreatorViewService.ts @@ -16,6 +16,8 @@ * @fileoverview Service to display suggestion modal in creator view. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('ShowSuggestionModalForCreatorViewService', [ '$http', '$log', '$rootScope', '$uibModal', 'UrlInterpolationService', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorView.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorView.ts index e17f190ec0c4..c81a25147f54 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorView.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorView.ts @@ -16,6 +16,9 @@ * @fileoverview Controller to show suggestion modal in editor view. */ +require('pages/suggestion_editor/SuggestionModalService.ts'); +require('services/EditabilityService.ts'); + // TODO(Allan): Implement ability to edit suggestions before applying. oppia.controller('ShowSuggestionModalForEditorView', [ '$log', '$scope', '$uibModalInstance', 'EditabilityService', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorViewService.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorViewService.ts index 10043cfbfa03..62b70f529ed7 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorViewService.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForEditorViewService.ts @@ -16,6 +16,14 @@ * @fileoverview Service to display suggestion modal in editor view. */ +require('domain/state/StateObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/exploration_editor/ExplorationDataService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_editor/feedback_tab/ThreadDataService.ts'); +require('pages/suggestion_editor/ShowSuggestionModalForEditorView.ts'); +require('pages/suggestion_editor/SuggestionModalService.ts'); + oppia.factory('ShowSuggestionModalForEditorViewService', [ '$log', '$rootScope', '$uibModal', 'ExplorationDataService', 'ExplorationStatesService', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalView.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalView.ts index 2125f0c8f58e..99134f3717df 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalView.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalView.ts @@ -16,6 +16,12 @@ * @fileoverview Controller to show suggestion modal in learner local view. */ + +require('pages/exploration_player/ExplorationEngineService.ts'); +require('pages/exploration_player/PlayerPositionService.ts'); +require('pages/exploration_player/PlayerTranscriptService.ts'); +require('pages/suggestion_editor/SuggestionModalService.ts'); + oppia.controller('ShowSuggestionModalForLearnerLocalView', [ '$scope', '$timeout', '$uibModalInstance', 'ExplorationEngineService', 'PlayerPositionService', 'PlayerTranscriptService', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalViewService.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalViewService.ts index fe2b8866da30..c0667cd9f85e 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalViewService.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerLocalViewService.ts @@ -16,6 +16,11 @@ * @fileoverview Service to display suggestion modal in learner local view. */ +require('domain/utilities/UrlInterpolationService.ts'); +require( + 'pages/suggestion_editor/ShowSuggestionModalForLearnerLocalView.ts'); +require('services/AlertsService.ts'); + oppia.factory('ShowSuggestionModalForLearnerLocalViewService', [ '$http', '$uibModal', 'AlertsService', 'UrlInterpolationService', function($http, $uibModal, AlertsService, UrlInterpolationService) { diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerView.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerView.ts index 0ce384cb4564..3e5b0fdfcdf8 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerView.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerView.ts @@ -16,6 +16,8 @@ * @fileoverview Controller to show suggestion modal in learner view. */ +require('pages/suggestion_editor/SuggestionModalService.ts'); + oppia.controller('ShowSuggestionModalForLearnerView', [ '$scope', '$uibModalInstance', 'SuggestionModalService', 'description', 'newContent', 'oldContent', diff --git a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerViewService.ts b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerViewService.ts index bacfd97354f1..e2f741ab7c90 100644 --- a/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerViewService.ts +++ b/core/templates/dev/head/pages/suggestion_editor/ShowSuggestionModalForLearnerViewService.ts @@ -16,11 +16,11 @@ * @fileoverview Service to display suggestion modal in learner view. */ +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('ShowSuggestionModalForLearnerViewService', [ - '$rootScope', '$uibModal', - 'UrlInterpolationService', - function($rootScope, $uibModal, - UrlInterpolationService) { + '$rootScope', '$uibModal', 'UrlInterpolationService', + function($rootScope, $uibModal, UrlInterpolationService) { var _templateUrl = UrlInterpolationService.getDirectiveTemplateUrl( '/pages/suggestion_editor/' + 'learner_view_suggestion_modal_directive.html' diff --git a/core/templates/dev/head/pages/teach/Teach.ts b/core/templates/dev/head/pages/teach/Teach.ts index 9b99a5b1e370..0dd27eeb2a2b 100644 --- a/core/templates/dev/head/pages/teach/Teach.ts +++ b/core/templates/dev/head/pages/teach/Teach.ts @@ -16,6 +16,10 @@ * @fileoverview Controllers for the teach page. */ +require('components/background/BackgroundBannerDirective.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/SiteAnalyticsService.ts'); + oppia.controller('Teach', [ '$scope', '$timeout', '$window', 'SiteAnalyticsService', 'UrlInterpolationService', diff --git a/core/templates/dev/head/pages/teach/teach.html b/core/templates/dev/head/pages/teach/teach.html index 7bf1374711a6..5e6fee032ff9 100644 --- a/core/templates/dev/head/pages/teach/teach.html +++ b/core/templates/dev/head/pages/teach/teach.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block subtitle %} Teach @@ -150,9 +150,15 @@

{% block footer_js %} {{ super() }} - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer%} diff --git a/core/templates/dev/head/pages/terms/terms.html b/core/templates/dev/head/pages/terms/terms.html index d775b283cd7a..eeab3065a9bf 100644 --- a/core/templates/dev/head/pages/terms/terms.html +++ b/core/templates/dev/head/pages/terms/terms.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Terms of Use - Oppia diff --git a/core/templates/dev/head/pages/tests/console_errors.html b/core/templates/dev/head/pages/tests/console_errors.html index 9a18390b749b..e3f916a89ce3 100644 --- a/core/templates/dev/head/pages/tests/console_errors.html +++ b/core/templates/dev/head/pages/tests/console_errors.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block content %}
diff --git a/core/templates/dev/head/pages/tests/jinja_escaping.html b/core/templates/dev/head/pages/tests/jinja_escaping.html index ce54068a9771..4d0c440729df 100644 --- a/core/templates/dev/head/pages/tests/jinja_escaping.html +++ b/core/templates/dev/head/pages/tests/jinja_escaping.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block content %}

{{DEV_MODE}}

diff --git a/core/templates/dev/head/pages/thanks/Thanks.ts b/core/templates/dev/head/pages/thanks/Thanks.ts index a0e366810981..d1c8013c2aa6 100644 --- a/core/templates/dev/head/pages/thanks/Thanks.ts +++ b/core/templates/dev/head/pages/thanks/Thanks.ts @@ -16,6 +16,9 @@ * @fileoverview Controllers for the 'thanks' page. */ +require('components/background/BackgroundBannerDirective.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.controller('Thanks', [ '$scope', 'UrlInterpolationService', function( diff --git a/core/templates/dev/head/pages/thanks/thanks.html b/core/templates/dev/head/pages/thanks/thanks.html index 063ed2aa279a..883a7a204576 100644 --- a/core/templates/dev/head/pages/thanks/thanks.html +++ b/core/templates/dev/head/pages/thanks/thanks.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Thanks - Oppia @@ -45,8 +45,15 @@

Thank you for donating to The Oppia Foundation!

{% block footer_js %} {{ super() }} - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} {% block footer%} diff --git a/core/templates/dev/head/pages/topic_editor/TopicEditor.ts b/core/templates/dev/head/pages/topic_editor/TopicEditor.ts index 8ec7b9331ad1..cddea08d61af 100644 --- a/core/templates/dev/head/pages/topic_editor/TopicEditor.ts +++ b/core/templates/dev/head/pages/topic_editor/TopicEditor.ts @@ -16,17 +16,68 @@ * @fileoverview Primary controller for the topic editor page. */ +// TODO(vojtechjelinek): this block of requires should be removed after we +// introduce webpack for /extensions +require('components/CkEditorRteDirective.ts'); +require('components/CkEditorWidgetsInitializer.ts'); +require('components/forms/ConvertUnicodeWithParamsToHtmlFilter.ts'); +require('components/forms/ConvertHtmlToUnicodeFilter.ts'); +require('components/forms/ConvertUnicodeToHtmlFilter.ts'); +require('components/forms/validators/IsAtLeastFilter.ts'); +require('components/forms/validators/IsAtMostFilter.ts'); +require('components/forms/validators/IsFloatFilter.ts'); +require('components/forms/validators/IsIntegerFilter.ts'); +require('components/forms/validators/IsNonemptyFilter.ts'); +require('components/forms/ApplyValidationDirective.ts'); +require('components/forms/RequireIsFloatDirective.ts'); +require('directives/AngularHtmlBindDirective.ts'); +require('directives/MathjaxBindDirective.ts'); +require('components/forms/schema_editors/SchemaBasedBoolEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedChoicesEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedCustomEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedDictEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedEditorDirective.ts'); +require( + 'components/forms/schema_editors/SchemaBasedExpressionEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedFloatEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedHtmlEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedIntEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedListEditorDirective.ts'); +require('components/forms/schema_editors/SchemaBasedUnicodeEditorDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedCustomViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedDictViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedHtmlViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedListViewerDirective.ts'); +require( + 'components/forms/schema_viewers/SchemaBasedPrimitiveViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedUnicodeViewerDirective.ts'); +require('components/forms/schema_viewers/SchemaBasedViewerDirective.ts'); +require('components/forms/Select2DropdownDirective.ts'); +require('components/forms/ImageUploaderDirective.ts'); +require('components/state/AnswerGroupEditorDirective.ts'); +require('components/state/HintEditorDirective.ts'); +require('components/state/OutcomeEditorDirective.ts'); +require('components/state/OutcomeDestinationEditorDirective.ts'); +require('components/state/OutcomeFeedbackEditorDirective.ts'); +require('components/state/ResponseHeaderDirective.ts'); +require('components/state/RuleEditorDirective.ts'); +require('components/state/RuleTypeSelectorDirective.ts'); +require('components/state/SolutionEditorDirective.ts'); +require('components/state/SolutionExplanationEditorDirective.ts'); +require('filters/NormalizeWhitespaceFilter.ts'); +require('services/AutoplayedVideosService.ts'); +// ^^^ this block of requires should be removed ^^^ + +require('pages/topic_editor/TopicEditorNavbarBreadcrumbDirective.ts'); +require('pages/topic_editor/TopicEditorNavbarDirective.ts'); +require('pages/topic_editor/main_editor/TopicEditorTabDirective.ts'); +require('pages/topic_editor/questions/QuestionsTabDirective.ts'); +require('pages/topic_editor/subtopics_editor/SubtopicsListTabDirective.ts'); + +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/contextual/UrlService.ts'); + oppia.constant('INTERACTION_SPECS', GLOBALS.INTERACTION_SPECS); -oppia.constant( - 'EDITABLE_TOPIC_DATA_URL_TEMPLATE', '/topic_editor_handler/data/'); -oppia.constant( - 'TOPIC_MANAGER_RIGHTS_URL_TEMPLATE', - '/rightshandler/assign_topic_manager//'); -oppia.constant( - 'TOPIC_RIGHTS_URL_TEMPLATE', '/rightshandler/get_topic_rights/'); -oppia.constant( - 'SUBTOPIC_PAGE_EDITOR_DATA_URL_TEMPLATE', - '/subtopic_page_editor_handler/data//'); oppia.constant( 'TOPIC_NAME_INPUT_FOCUS_LABEL', 'topicNameInputFocusLabel'); diff --git a/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarBreadcrumbDirective.ts index cc7d2fc148ee..a38dfa76b0b0 100644 --- a/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarBreadcrumbDirective.ts @@ -15,6 +15,11 @@ /** * @fileoverview Controller for the navbar breadcrumb of the topic editor. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/stateful/FocusManagerService.ts'); + oppia.directive('topicEditorNavbarBreadcrumb', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarDirective.ts b/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarDirective.ts index 383995555259..e8e34fbd6dac 100644 --- a/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/TopicEditorNavbarDirective.ts @@ -16,6 +16,15 @@ * @fileoverview Directive for the navbar of the topic editor. */ +require('components/loading/LoadingDotsDirective.ts'); + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/topic/TopicRightsBackendApiService.ts'); +require('pages/topic_editor/TopicEditorRoutingService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('topicEditorNavbar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/TopicEditorStateService.ts b/core/templates/dev/head/pages/topic_editor/TopicEditorStateService.ts index bd4fe74a86fe..16d13d938eef 100644 --- a/core/templates/dev/head/pages/topic_editor/TopicEditorStateService.ts +++ b/core/templates/dev/head/pages/topic_editor/TopicEditorStateService.ts @@ -18,6 +18,15 @@ * retrieving the topic, saving it, and listening for changes. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/story/EditableStoryBackendApiService.ts'); +require('domain/topic/EditableTopicBackendApiService.ts'); +require('domain/topic/SubtopicPageObjectFactory.ts'); +require('domain/topic/TopicObjectFactory.ts'); +require('domain/topic/TopicRightsBackendApiService.ts'); +require('domain/topic/TopicRightsObjectFactory.ts'); +require('services/AlertsService.ts'); + oppia.constant('EVENT_TOPIC_INITIALIZED', 'topicInitialized'); oppia.constant('EVENT_TOPIC_REINITIALIZED', 'topicReinitialized'); oppia.constant('EVENT_SUBTOPIC_PAGE_LOADED', 'subtopicPageLoaded'); diff --git a/core/templates/dev/head/pages/topic_editor/TopicEditorStateServiceSpec.ts b/core/templates/dev/head/pages/topic_editor/TopicEditorStateServiceSpec.ts index 3d1493e8a049..137ce0ecba15 100644 --- a/core/templates/dev/head/pages/topic_editor/TopicEditorStateServiceSpec.ts +++ b/core/templates/dev/head/pages/topic_editor/TopicEditorStateServiceSpec.ts @@ -16,6 +16,12 @@ * @fileoverview Unit tests for TopicEditorStateService. */ +require('domain/topic/SubtopicPageObjectFactory.ts'); +require('domain/topic/TopicObjectFactory.ts'); +require('domain/topic/TopicRightsObjectFactory.ts'); +require('domain/topic/TopicUpdateService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); + describe('Topic editor state service', function() { var TopicEditorStateService = null; var TopicObjectFactory = null; diff --git a/core/templates/dev/head/pages/topic_editor/main_editor/StoriesListDirective.ts b/core/templates/dev/head/pages/topic_editor/main_editor/StoriesListDirective.ts index 0f56860a925c..5067f61d1b1c 100644 --- a/core/templates/dev/head/pages/topic_editor/main_editor/StoriesListDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/main_editor/StoriesListDirective.ts @@ -15,6 +15,14 @@ /** * @fileoverview Controller for the stories list viewer. */ + +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/topic/EditableTopicBackendApiService.ts'); +require('domain/topic/TopicUpdateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('storiesList', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/main_editor/TopicEditorTabDirective.ts b/core/templates/dev/head/pages/topic_editor/main_editor/TopicEditorTabDirective.ts index f81de91c1e03..46280021e9c2 100644 --- a/core/templates/dev/head/pages/topic_editor/main_editor/TopicEditorTabDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/main_editor/TopicEditorTabDirective.ts @@ -15,6 +15,15 @@ /** * @fileoverview Controller for the main topic editor. */ + +require('pages/topic_editor/main_editor/StoriesListDirective.ts'); + +require('components/StoryCreationService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/topic/TopicUpdateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); + oppia.directive('topicEditorTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/questions/QuestionsTabDirective.ts b/core/templates/dev/head/pages/topic_editor/questions/QuestionsTabDirective.ts index 0a867d071835..6add11caf694 100644 --- a/core/templates/dev/head/pages/topic_editor/questions/QuestionsTabDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/questions/QuestionsTabDirective.ts @@ -15,6 +15,24 @@ /** * @fileoverview Controller for the questions tab. */ + +require('pages/questions_list/QuestionsListDirective.ts'); + +require('components/QuestionCreationService.ts'); +require('domain/editor/undo_redo/QuestionUndoRedoService.ts'); +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/question/EditableQuestionBackendApiService.ts'); +require('domain/question/QuestionObjectFactory.ts'); +require('domain/skill/EditableSkillBackendApiService.ts'); +require('domain/skill/MisconceptionObjectFactory.ts'); +require('domain/suggestion/QuestionSuggestionObjectFactory.ts'); +require('domain/suggestion/SuggestionThreadObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/state_editor/state_properties/StateEditorService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('questionsTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/subtopics_editor/SubtopicsListTabDirective.ts b/core/templates/dev/head/pages/topic_editor/subtopics_editor/SubtopicsListTabDirective.ts index ca5873af4f59..52bdc0f0a46d 100644 --- a/core/templates/dev/head/pages/topic_editor/subtopics_editor/SubtopicsListTabDirective.ts +++ b/core/templates/dev/head/pages/topic_editor/subtopics_editor/SubtopicsListTabDirective.ts @@ -16,6 +16,12 @@ * @fileoverview Controller for the subtopics list editor. */ +require('domain/editor/undo_redo/UndoRedoService.ts'); +require('domain/topic/SubtopicPageObjectFactory.ts'); +require('domain/topic/TopicUpdateService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('pages/topic_editor/TopicEditorStateService.ts'); + oppia.directive('subtopicsListTab', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_editor/topic_editor.html b/core/templates/dev/head/pages/topic_editor/topic_editor.html index 45e2e98fd86d..426d8bfc3f7f 100644 --- a/core/templates/dev/head/pages/topic_editor/topic_editor.html +++ b/core/templates/dev/head/pages/topic_editor/topic_editor.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} {{ topic_name }} - Oppia @@ -43,61 +43,9 @@ {% block footer_js %} {{ super() }} - . + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -126,179 +74,17 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% include 'components/rich_text_components.html' %} {{ interaction_templates }} {{ visualizations_html }} diff --git a/core/templates/dev/head/pages/topic_viewer/StoriesListDirective.ts b/core/templates/dev/head/pages/topic_viewer/StoriesListDirective.ts index 8657170034fe..02a9dce8819a 100644 --- a/core/templates/dev/head/pages/topic_viewer/StoriesListDirective.ts +++ b/core/templates/dev/head/pages/topic_viewer/StoriesListDirective.ts @@ -15,6 +15,12 @@ /** * @fileoverview Directive for the stories list. */ + +require('components/summary_tile/StorySummaryTileDirective.ts'); + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/contextual/WindowDimensionsService.ts'); + oppia.directive('storiesList', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_viewer/TopicViewer.ts b/core/templates/dev/head/pages/topic_viewer/TopicViewer.ts index 6e93cc4976d4..7146dd5f45d1 100644 --- a/core/templates/dev/head/pages/topic_viewer/TopicViewer.ts +++ b/core/templates/dev/head/pages/topic_viewer/TopicViewer.ts @@ -16,6 +16,14 @@ * @fileoverview Controllers for the topic viewer. */ +require('components/background/BackgroundBannerDirective.ts'); +require('pages/topic_viewer/StoriesListDirective.ts'); +require('pages/topic_viewer/TopicViewerNavbarBreadcrumbDirective.ts'); + +require('domain/topic_viewer/TopicViewerBackendApiService.ts'); +require('services/AlertsService.ts'); +require('services/contextual/UrlService.ts'); + oppia.controller('TopicViewer', [ '$rootScope', '$scope', '$window', 'AlertsService', 'TopicViewerBackendApiService', diff --git a/core/templates/dev/head/pages/topic_viewer/TopicViewerNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/topic_viewer/TopicViewerNavbarBreadcrumbDirective.ts index 9e063d6ba86e..8ee96f489524 100644 --- a/core/templates/dev/head/pages/topic_viewer/TopicViewerNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/topic_viewer/TopicViewerNavbarBreadcrumbDirective.ts @@ -15,6 +15,10 @@ /** * @fileoverview Directive for the navbar breadcrumb of the topic viewer. */ + +require('domain/utilities/UrlInterpolationService.ts'); +require('services/contextual/UrlService.ts'); + oppia.directive('topicViewerNavbarBreadcrumb', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topic_viewer/topic_viewer.html b/core/templates/dev/head/pages/topic_viewer/topic_viewer.html index aa4dbe7436e7..3b04109cb1c0 100644 --- a/core/templates/dev/head/pages/topic_viewer/topic_viewer.html +++ b/core/templates/dev/head/pages/topic_viewer/topic_viewer.html @@ -125,14 +125,13 @@ {% block footer_js %} {{ super() }} - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/SelectTopicsDirective.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/SelectTopicsDirective.ts index 621d21ad574f..a379bb201e20 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/SelectTopicsDirective.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/SelectTopicsDirective.ts @@ -15,6 +15,9 @@ /** * @fileoverview Controller for the select topics viewer. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('selectTopics', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/SkillsListDirective.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/SkillsListDirective.ts index ac22edcab7f4..5ea126641780 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/SkillsListDirective.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/SkillsListDirective.ts @@ -15,6 +15,14 @@ /** * @fileoverview Controller for the skills list viewer. */ + +require('pages/topics_and_skills_dashboard/SelectTopicsDirective.ts'); + +require('domain/skill/EditableSkillBackendApiService.ts'); +require('domain/topic/EditableTopicBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.directive('skillsList', [ '$http', 'AlertsService', 'UrlInterpolationService', function( diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboard.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboard.ts index 683858d8fdae..469264d509c2 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboard.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboard.ts @@ -15,6 +15,28 @@ /** * @fileoverview Controllers for the topics and skills dashboard. */ + +require('components/background/BackgroundBannerDirective.ts'); +require('pages/topics_and_skills_dashboard/SkillsListDirective.ts'); +require( + 'pages/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboardNavbarBreadcrumbDirective.ts' +); +require( + 'pages/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboardNavbarDirective.ts' +); +require('pages/topics_and_skills_dashboard/TopicsListDirective.ts'); + +require('components/SkillCreationService.ts'); +require('components/TopicCreationService.ts'); +require( + 'domain/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboardBackendApiService.ts' +); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.constant( 'EDITABLE_TOPIC_DATA_URL_TEMPLATE', '/topic_editor_handler/data/'); oppia.constant( diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarBreadcrumbDirective.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarBreadcrumbDirective.ts index 76705a1271c2..20bd41a1b1df 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarBreadcrumbDirective.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarBreadcrumbDirective.ts @@ -15,6 +15,9 @@ /** * @fileoverview Controller for the navbar breadcrumb of the collection editor. */ + +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('topicsAndSkillsDashboardNavbarBreadcrumb', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarDirective.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarDirective.ts index 53dd6686118f..54977eaa251a 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarDirective.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsAndSkillsDashboardNavbarDirective.ts @@ -16,6 +16,11 @@ * @fileoverview Directive for the navbar of the collection editor. */ +require('components/SkillCreationService.ts'); +require('components/TopicCreationService.ts'); +require('domain/topic/EditableTopicBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.directive('topicsAndSkillsDashboardNavbar', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsListDirective.ts b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsListDirective.ts index c7f459e12fde..3e409e32c74b 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsListDirective.ts +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/TopicsListDirective.ts @@ -15,6 +15,11 @@ /** * @fileoverview Controller for the topics list viewer. */ + +require('domain/topic/EditableTopicBackendApiService.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AlertsService.ts'); + oppia.directive('topicsList', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/core/templates/dev/head/pages/topics_and_skills_dashboard/topics_and_skills_dashboard.html b/core/templates/dev/head/pages/topics_and_skills_dashboard/topics_and_skills_dashboard.html index 939e5c82219e..2f3efa742a81 100644 --- a/core/templates/dev/head/pages/topics_and_skills_dashboard/topics_and_skills_dashboard.html +++ b/core/templates/dev/head/pages/topics_and_skills_dashboard/topics_and_skills_dashboard.html @@ -1,4 +1,4 @@ -{% extends 'pages/base.html' %} +{% extends 'dist/base.html' %} {% block maintitle %} Topics and Skills Dashboard - Oppia @@ -239,19 +239,13 @@

- - - - - - - - - - - - - - + + <% for (var chunk in htmlWebpackPlugin.files.js) { %> + <% if (webpackConfig.mode == 'production') { %> + + <% } else { %> + + <% } %> + <% } %> {% endblock footer_js %} diff --git a/core/templates/dev/head/services/AlertsServiceSpec.ts b/core/templates/dev/head/services/AlertsServiceSpec.ts index e9cafef5aa43..1a69065c56d9 100644 --- a/core/templates/dev/head/services/AlertsServiceSpec.ts +++ b/core/templates/dev/head/services/AlertsServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Alerts Service. */ +require('services/AlertsService.ts'); + describe('Alerts Service', function() { var AlertsService; diff --git a/core/templates/dev/head/services/AssetsBackendApiService.ts b/core/templates/dev/head/services/AssetsBackendApiService.ts index aeef7ddfd77c..279b1db85692 100644 --- a/core/templates/dev/head/services/AssetsBackendApiService.ts +++ b/core/templates/dev/head/services/AssetsBackendApiService.ts @@ -17,6 +17,11 @@ * assets from Google Cloud Storage. */ +require('domain/utilities/AudioFileObjectFactory.ts'); +require('domain/utilities/FileDownloadRequestObjectFactory.ts'); +require('domain/utilities/ImageFileObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); + oppia.factory('AssetsBackendApiService', [ '$http', '$q', 'AudioFileObjectFactory', 'FileDownloadRequestObjectFactory', 'ImageFileObjectFactory', 'UrlInterpolationService', 'DEV_MODE', diff --git a/core/templates/dev/head/services/AssetsBackendApiServiceSpec.ts b/core/templates/dev/head/services/AssetsBackendApiServiceSpec.ts index d917c86101fb..e73acdc13e8e 100644 --- a/core/templates/dev/head/services/AssetsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/services/AssetsBackendApiServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for AssetsBackendApiService */ +require('domain/utilities/FileDownloadRequestObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/AssetsBackendApiService.ts'); + describe('Assets Backend API Service', function() { var AssetsBackendApiService = null; var FileDownloadRequestObjectFactory = null; diff --git a/core/templates/dev/head/services/AutogeneratedAudioPlayerService.ts b/core/templates/dev/head/services/AutogeneratedAudioPlayerService.ts index e406d7ece56b..f5c7c4a77d61 100644 --- a/core/templates/dev/head/services/AutogeneratedAudioPlayerService.ts +++ b/core/templates/dev/head/services/AutogeneratedAudioPlayerService.ts @@ -17,6 +17,8 @@ * using the SpeechSynthesis API. */ +require('services/SpeechSynthesisChunkerService.ts'); + oppia.factory('AutogeneratedAudioPlayerService', [ 'SpeechSynthesisChunkerService', function(SpeechSynthesisChunkerService) { diff --git a/core/templates/dev/head/services/AutoplayedVideosServiceSpec.ts b/core/templates/dev/head/services/AutoplayedVideosServiceSpec.ts index 270f39bb66f8..ecb6bfef31d2 100644 --- a/core/templates/dev/head/services/AutoplayedVideosServiceSpec.ts +++ b/core/templates/dev/head/services/AutoplayedVideosServiceSpec.ts @@ -15,6 +15,8 @@ * @fileoverview Unit tests for AutoplayedVideosService. */ +require('services/AutoplayedVideosService.ts'); + describe('AutoplayedVideosService', function() { var AutoplayedVideosService = null; diff --git a/core/templates/dev/head/services/CodeNormalizerServiceSpec.ts b/core/templates/dev/head/services/CodeNormalizerServiceSpec.ts index 047a84a1413b..918cf207df9a 100644 --- a/core/templates/dev/head/services/CodeNormalizerServiceSpec.ts +++ b/core/templates/dev/head/services/CodeNormalizerServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the Code Normalizer Service. */ +require('services/CodeNormalizerService.ts'); + describe('Code Normalization', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/ContextServiceSpec.ts b/core/templates/dev/head/services/ContextServiceSpec.ts index d1a6d21aee76..2b56e9a30ed7 100644 --- a/core/templates/dev/head/services/ContextServiceSpec.ts +++ b/core/templates/dev/head/services/ContextServiceSpec.ts @@ -17,6 +17,8 @@ * editor page. */ +require('services/ContextService.ts'); + describe('Context service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/DateTimeFormatServiceSpec.ts b/core/templates/dev/head/services/DateTimeFormatServiceSpec.ts index 49d41343d29f..f0ad28879aa7 100644 --- a/core/templates/dev/head/services/DateTimeFormatServiceSpec.ts +++ b/core/templates/dev/head/services/DateTimeFormatServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit test for DateTimeFormatService. */ +require('services/DateTimeFormatService.ts'); + describe('Datetime Formatter', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/EditabilityServiceSpec.ts b/core/templates/dev/head/services/EditabilityServiceSpec.ts index 60a299357599..6f771b6406cc 100644 --- a/core/templates/dev/head/services/EditabilityServiceSpec.ts +++ b/core/templates/dev/head/services/EditabilityServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for EditabilityService. */ +require('services/EditabilityService.ts'); + describe('EditabilityService', function() { var EditabilityService = null; diff --git a/core/templates/dev/head/services/ExplorationHtmlFormatterService.ts b/core/templates/dev/head/services/ExplorationHtmlFormatterService.ts index 2ea88304a371..418e42082495 100644 --- a/core/templates/dev/head/services/ExplorationHtmlFormatterService.ts +++ b/core/templates/dev/head/services/ExplorationHtmlFormatterService.ts @@ -17,6 +17,10 @@ * the learner and editor views. */ +require('filters/CamelCaseToHyphensFilter.ts'); +require('services/ExtensionTagAssemblerService.ts'); +require('services/HtmlEscaperService.ts'); + // A service that provides a number of utility functions useful to both the // editor and player. oppia.factory('ExplorationHtmlFormatterService', [ diff --git a/core/templates/dev/head/services/ExplorationHtmlFormatterServiceSpec.ts b/core/templates/dev/head/services/ExplorationHtmlFormatterServiceSpec.ts index 43cad42c230b..3f807c8958e6 100644 --- a/core/templates/dev/head/services/ExplorationHtmlFormatterServiceSpec.ts +++ b/core/templates/dev/head/services/ExplorationHtmlFormatterServiceSpec.ts @@ -17,6 +17,8 @@ * by both the learner and editor views */ +require('services/ExplorationHtmlFormatterService.ts'); + describe('Exploration Html Formatter Service', function() { beforeEach(angular.mock.module('oppia')); var ehfs = null; diff --git a/core/templates/dev/head/services/ExtensionTagAssemblerService.ts b/core/templates/dev/head/services/ExtensionTagAssemblerService.ts index 49db9512dcb5..4ce5f4ed9401 100644 --- a/core/templates/dev/head/services/ExtensionTagAssemblerService.ts +++ b/core/templates/dev/head/services/ExtensionTagAssemblerService.ts @@ -17,6 +17,8 @@ * the learner and editor views. */ +require('filters/CamelCaseToHyphensFilter.ts'); + // Service for assembling extension tags (for interactions). oppia.factory('ExtensionTagAssemblerService', [ '$filter', 'HtmlEscaperService', function($filter, HtmlEscaperService) { diff --git a/core/templates/dev/head/services/GenerateContentIdServiceSpec.ts b/core/templates/dev/head/services/GenerateContentIdServiceSpec.ts index 89e88e271ad4..9dd0bd6d307a 100644 --- a/core/templates/dev/head/services/GenerateContentIdServiceSpec.ts +++ b/core/templates/dev/head/services/GenerateContentIdServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for GenerateContentIdService. */ +require('domain/exploration/ContentIdsToAudioTranslationsObjectFactory.ts'); +require('services/GenerateContentIdService.ts'); + describe('GenerateContentIdService', function() { beforeEach(angular.mock.module('oppia', function($provide) { $provide.value('COMPONENT_NAME_FEEDBACK', 'feedback'); diff --git a/core/templates/dev/head/services/HtmlEscaperServiceSpec.ts b/core/templates/dev/head/services/HtmlEscaperServiceSpec.ts index 2234af8df12e..317f15a822d5 100644 --- a/core/templates/dev/head/services/HtmlEscaperServiceSpec.ts +++ b/core/templates/dev/head/services/HtmlEscaperServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for HTML serialization and escaping services. */ +require('services/HtmlEscaperService.ts'); + describe('HTML escaper', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/IdGenerationServiceSpec.ts b/core/templates/dev/head/services/IdGenerationServiceSpec.ts index d4c2ae5e4676..3dccb9a47f5a 100644 --- a/core/templates/dev/head/services/IdGenerationServiceSpec.ts +++ b/core/templates/dev/head/services/IdGenerationServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for IdGenerationService. */ +require('services/IdGenerationService.ts'); + describe('IdGenerationService', function() { var IdGenerationService = null; diff --git a/core/templates/dev/head/services/ImprovementCardServiceSpec.ts b/core/templates/dev/head/services/ImprovementCardServiceSpec.ts index d2ba1189cd67..45a5c017183d 100644 --- a/core/templates/dev/head/services/ImprovementCardServiceSpec.ts +++ b/core/templates/dev/head/services/ImprovementCardServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for the ImprovementCardService. */ +require('domain/statistics/PlaythroughImprovementCardObjectFactory.ts'); +require('services/ImprovementCardService.ts'); + describe('ImprovementCardService', function() { beforeEach(angular.mock.module('oppia')); beforeEach(angular.mock.inject(function($injector) { diff --git a/core/templates/dev/head/services/ImprovementsServiceSpec.ts b/core/templates/dev/head/services/ImprovementsServiceSpec.ts index d2c2824a72dc..515c49609e46 100644 --- a/core/templates/dev/head/services/ImprovementsServiceSpec.ts +++ b/core/templates/dev/head/services/ImprovementsServiceSpec.ts @@ -12,6 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. +require('services/ImprovementsService.ts'); + describe('ImprovementsService', function() { beforeEach(angular.mock.module('oppia')); beforeEach(angular.mock.inject(function($injector) { diff --git a/core/templates/dev/head/services/LocalStorageService.ts b/core/templates/dev/head/services/LocalStorageService.ts index 66beabef9dcc..12e2bc8354ed 100644 --- a/core/templates/dev/head/services/LocalStorageService.ts +++ b/core/templates/dev/head/services/LocalStorageService.ts @@ -16,6 +16,8 @@ * @fileoverview Utility service for saving data locally on the client machine. */ +require('domain/exploration/ExplorationDraftObjectFactory.ts'); + // Service for saving exploration draft changes to local storage. // // Note that the draft is only saved if localStorage exists and works diff --git a/core/templates/dev/head/services/LocalStorageServiceSpec.ts b/core/templates/dev/head/services/LocalStorageServiceSpec.ts index e10ef7d51d87..51f7a91504da 100644 --- a/core/templates/dev/head/services/LocalStorageServiceSpec.ts +++ b/core/templates/dev/head/services/LocalStorageServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview unit tests for the local save services. */ +require('domain/exploration/ExplorationDraftObjectFactory.ts'); +require('services/LocalStorageService.ts'); + describe('LocalStorageService', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/PageTitleServiceSpec.ts b/core/templates/dev/head/services/PageTitleServiceSpec.ts index 345c4080e858..b0ac9f434f0b 100644 --- a/core/templates/dev/head/services/PageTitleServiceSpec.ts +++ b/core/templates/dev/head/services/PageTitleServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit test for the page title service. */ +require('services/PageTitleService.ts'); + describe('Page title service', function() { beforeEach(angular.mock.module('oppia')); var pts = null; diff --git a/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts b/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts index f4c4cb5ad0a9..349288fa3ed7 100644 --- a/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts +++ b/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts @@ -15,6 +15,9 @@ /** * @fileoverview Service for fetching issues and playthroughs from the backend. */ +require('domain/statistics/PlaythroughObjectFactory.ts'); +require('domain/statistics/PlaythroughIssueObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); oppia.constant( 'FETCH_ISSUES_URL', '/issuesdatahandler/'); diff --git a/core/templates/dev/head/services/PlaythroughIssuesBackendApiServiceSpec.ts b/core/templates/dev/head/services/PlaythroughIssuesBackendApiServiceSpec.ts index abd1ee79b6eb..e97f6a4d4b81 100644 --- a/core/templates/dev/head/services/PlaythroughIssuesBackendApiServiceSpec.ts +++ b/core/templates/dev/head/services/PlaythroughIssuesBackendApiServiceSpec.ts @@ -16,6 +16,10 @@ * @fileoverview Unit tests for the issues backend api service. */ +require('domain/statistics/PlaythroughObjectFactory.ts'); +require('domain/statistics/PlaythroughIssueObjectFactory.ts'); +require('services/PlaythroughIssuesBackendApiService.ts'); + describe('PlaythroughIssuesBackendApiService', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/PlaythroughIssuesService.ts b/core/templates/dev/head/services/PlaythroughIssuesService.ts index 7cf7a9b20d36..12199eae57f2 100644 --- a/core/templates/dev/head/services/PlaythroughIssuesService.ts +++ b/core/templates/dev/head/services/PlaythroughIssuesService.ts @@ -16,6 +16,9 @@ * @fileoverview Service for retrieving issues and playthroughs. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/PlaythroughIssuesBackendApiService.ts'); + oppia.factory('PlaythroughIssuesService', [ '$uibModal', 'PlaythroughIssuesBackendApiService', 'UrlInterpolationService', 'ISSUE_TYPE_CYCLIC_STATE_TRANSITIONS', 'ISSUE_TYPE_EARLY_QUIT', diff --git a/core/templates/dev/head/services/PlaythroughService.ts b/core/templates/dev/head/services/PlaythroughService.ts index f93bb4379f65..b74aff270085 100644 --- a/core/templates/dev/head/services/PlaythroughService.ts +++ b/core/templates/dev/head/services/PlaythroughService.ts @@ -16,6 +16,12 @@ * @fileoverview Service for recording and scrutinizing playthroughs. */ +require('domain/statistics/LearnerActionObjectFactory.ts'); +require('domain/statistics/PlaythroughObjectFactory.ts'); +require('domain/utilities/StopwatchObjectFactory.ts'); +require('domain/utilities/UrlInterpolationService.ts'); +require('services/ExplorationFeaturesService.ts'); + oppia.constant( 'STORE_PLAYTHROUGH_URL', '/explorehandler/store_playthrough/'); diff --git a/core/templates/dev/head/services/PlaythroughServiceSpec.ts b/core/templates/dev/head/services/PlaythroughServiceSpec.ts index 0fbb2423730c..71d5d264f3ac 100644 --- a/core/templates/dev/head/services/PlaythroughServiceSpec.ts +++ b/core/templates/dev/head/services/PlaythroughServiceSpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for the playthrough service. */ +require('App.ts'); +require('domain/statistics/LearnerActionObjectFactory.ts'); +require('services/ExplorationFeaturesService.ts'); +require('services/PlaythroughService.ts'); + describe('PlaythroughService', function() { beforeEach(angular.mock.module('oppia')); beforeEach(angular.mock.inject(function($injector) { diff --git a/core/templates/dev/head/services/PromoBarServiceSpec.ts b/core/templates/dev/head/services/PromoBarServiceSpec.ts index 1d36b2817d1f..b1704f5e9fcb 100644 --- a/core/templates/dev/head/services/PromoBarServiceSpec.ts +++ b/core/templates/dev/head/services/PromoBarServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests that the resource service is working as expected. */ +require('App.ts'); +require('services/PromoBarService.ts'); + describe('Promo bar Service', function() { var PromoBarService, $httpBackend; diff --git a/core/templates/dev/head/services/SearchServiceSpec.ts b/core/templates/dev/head/services/SearchServiceSpec.ts index 3f21810c1230..d90107bf7271 100644 --- a/core/templates/dev/head/services/SearchServiceSpec.ts +++ b/core/templates/dev/head/services/SearchServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests that average ratings are being computed correctly. */ +require('services/SearchService.ts'); + describe('Search service', function() { var SearchService; diff --git a/core/templates/dev/head/services/SpeechSynthesisChunkerServiceSpec.ts b/core/templates/dev/head/services/SpeechSynthesisChunkerServiceSpec.ts index 8967ccd96da3..bdd433a3bab8 100644 --- a/core/templates/dev/head/services/SpeechSynthesisChunkerServiceSpec.ts +++ b/core/templates/dev/head/services/SpeechSynthesisChunkerServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for SpeechSynthesisChunkerService. */ +require('services/RteHelperService.ts'); +require('services/SpeechSynthesisChunkerService.ts'); + describe('Speech Synthesis Chunker Service', function() { var SpeechSynthesisChunkerService = null; diff --git a/core/templates/dev/head/services/StateRulesStatsServiceSpec.ts b/core/templates/dev/head/services/StateRulesStatsServiceSpec.ts index 0c80682468d2..b37ee11e538b 100644 --- a/core/templates/dev/head/services/StateRulesStatsServiceSpec.ts +++ b/core/templates/dev/head/services/StateRulesStatsServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Unit tests for state rules stats service. */ +require('App.ts'); +require('services/StateRulesStatsService.ts'); + describe('State Rules Stats Service', function() { var StateRulesStatsService = null; diff --git a/core/templates/dev/head/services/StateTopAnswersStatsBackendApiServiceSpec.ts b/core/templates/dev/head/services/StateTopAnswersStatsBackendApiServiceSpec.ts index ca02f9aaee07..31cbfc4f24ea 100644 --- a/core/templates/dev/head/services/StateTopAnswersStatsBackendApiServiceSpec.ts +++ b/core/templates/dev/head/services/StateTopAnswersStatsBackendApiServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for StateTopAnswersStatsBackendApiService. */ +require('services/StateTopAnswersStatsBackendApiService.ts'); + describe('StateTopAnswersStatsBackendApiService', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/StateTopAnswersStatsService.ts b/core/templates/dev/head/services/StateTopAnswersStatsService.ts index 2cc6cb726bef..1b08c8931f3c 100644 --- a/core/templates/dev/head/services/StateTopAnswersStatsService.ts +++ b/core/templates/dev/head/services/StateTopAnswersStatsService.ts @@ -17,6 +17,12 @@ * each state of an exploration. */ +require('domain/exploration/AnswerStatsObjectFactory.ts'); +require('pages/exploration_editor/AngularNameService.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('pages/exploration_player/AnswerClassificationService.ts'); +require('services/ContextService.ts'); + oppia.factory('StateTopAnswersStatsService', [ '$injector', 'AngularNameService', 'AnswerClassificationService', 'AnswerStatsObjectFactory', 'ContextService', diff --git a/core/templates/dev/head/services/StateTopAnswersStatsServiceSpec.ts b/core/templates/dev/head/services/StateTopAnswersStatsServiceSpec.ts index 90a375d5f8d7..8fe121cb47dd 100644 --- a/core/templates/dev/head/services/StateTopAnswersStatsServiceSpec.ts +++ b/core/templates/dev/head/services/StateTopAnswersStatsServiceSpec.ts @@ -17,6 +17,10 @@ * statistics for a particular state. */ +require('App.ts'); +require('pages/exploration_editor/ExplorationStatesService.ts'); +require('services/StateTopAnswersStatsService.ts'); + var joC = jasmine.objectContaining; describe('StateTopAnswersStatsService', function() { diff --git a/core/templates/dev/head/services/UserServiceSpec.ts b/core/templates/dev/head/services/UserServiceSpec.ts index d94f67d28e69..727a80d5c273 100644 --- a/core/templates/dev/head/services/UserServiceSpec.ts +++ b/core/templates/dev/head/services/UserServiceSpec.ts @@ -16,6 +16,9 @@ * @fileoverview Tests that the user service is working as expected. */ +require('domain/utilities/UrlInterpolationService.ts'); +require('services/UserService.ts'); + describe('User Service', function() { var UserService, $httpBackend, UrlInterpolationService; diff --git a/core/templates/dev/head/services/UtilsServiceSpec.ts b/core/templates/dev/head/services/UtilsServiceSpec.ts index ed1dcbe69ebf..c790a034d9cf 100644 --- a/core/templates/dev/head/services/UtilsServiceSpec.ts +++ b/core/templates/dev/head/services/UtilsServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Tests that the utility functions are working as expected. */ +require('services/UtilsService.ts'); + describe('Utils Service', function() { var UtilsService; diff --git a/core/templates/dev/head/services/ValidatorsService.ts b/core/templates/dev/head/services/ValidatorsService.ts index 88fa5924764a..b731600105b8 100644 --- a/core/templates/dev/head/services/ValidatorsService.ts +++ b/core/templates/dev/head/services/ValidatorsService.ts @@ -17,6 +17,8 @@ * warning messages if the validation fails. */ +require('filters/NormalizeWhitespaceFilter.ts'); + oppia.factory('ValidatorsService', [ '$filter', 'AlertsService', 'INVALID_NAME_CHARS', function($filter, AlertsService, INVALID_NAME_CHARS) { diff --git a/core/templates/dev/head/services/ValidatorsServiceSpec.ts b/core/templates/dev/head/services/ValidatorsServiceSpec.ts index 9e4c5c839ffc..ff20c17934e8 100644 --- a/core/templates/dev/head/services/ValidatorsServiceSpec.ts +++ b/core/templates/dev/head/services/ValidatorsServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for Validators Service. */ +require('services/ValidatorsService.ts'); + describe('Validators service', function() { beforeEach(angular.mock.module('oppia')); diff --git a/core/templates/dev/head/services/contextual/UrlServiceSpec.ts b/core/templates/dev/head/services/contextual/UrlServiceSpec.ts index afd3601f517d..866aaf1134a9 100644 --- a/core/templates/dev/head/services/contextual/UrlServiceSpec.ts +++ b/core/templates/dev/head/services/contextual/UrlServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the BackgroundMaskService. */ +require('services/contextual/UrlService.ts'); + describe('Url Service', function() { var UrlService = null; var sampleHash = 'sampleHash'; diff --git a/core/templates/dev/head/services/stateful/BackgroundMaskServiceSpec.ts b/core/templates/dev/head/services/stateful/BackgroundMaskServiceSpec.ts index f013a5c0653e..6ac5b27abdc9 100644 --- a/core/templates/dev/head/services/stateful/BackgroundMaskServiceSpec.ts +++ b/core/templates/dev/head/services/stateful/BackgroundMaskServiceSpec.ts @@ -16,6 +16,8 @@ * @fileoverview Unit tests for the BackgroundMaskService. */ +require('services/stateful/BackgroundMaskService.ts'); + describe('Background Mask Service', function() { var BackgroundMaskService; diff --git a/core/templates/dev/head/services/stateful/FocusManagerServiceSpec.ts b/core/templates/dev/head/services/stateful/FocusManagerServiceSpec.ts index c47594b6ccf9..f2b22efe9130 100644 --- a/core/templates/dev/head/services/stateful/FocusManagerServiceSpec.ts +++ b/core/templates/dev/head/services/stateful/FocusManagerServiceSpec.ts @@ -16,6 +16,11 @@ * @fileoverview Unit tests for the FocusManagerService. */ +require('App.ts'); +require('services/IdGenerationService.ts'); +require('services/contextual/DeviceInfoService.ts'); +require('services/stateful/FocusManagerService.ts'); + describe('Focus Manager Service', function() { var FocusManagerService; var DeviceInfoService; diff --git a/core/tests/karma.conf.ts b/core/tests/karma.conf.ts index ad993006cc05..50d898ea7558 100644 --- a/core/tests/karma.conf.ts +++ b/core/tests/karma.conf.ts @@ -27,12 +27,14 @@ module.exports = function(config) { 'third_party/static/angular-recorder-1.4.1/dist' + '/angular-audio-recorder.min.js', generatedJs, - 'local_compiled_js/core/templates/dev/head/*.js', + 'local_compiled_js/core/templates/dev/head/AppInit.js', // Note that unexpected errors occur ("Cannot read property 'num' of // undefined" in MusicNotesInput.js) if the order of core/templates/... // and extensions/... are switched. The test framework may be flaky. - 'local_compiled_js/core/templates/dev/head/**/*.js', 'core/templates/dev/head/**/*_directive.html', + 'core/templates/dev/head/**/*Spec.ts', + 'core/templates/dev/head/*Spec.ts', + 'local_compiled_js/core/templates/dev/head/**/*.js', 'local_compiled_js/extensions/**/*.js', { pattern: 'extensions/**/*.png', @@ -53,7 +55,19 @@ module.exports = function(config) { exclude: [ 'local_compiled_js/core/templates/dev/head/**/*-e2e.js', 'local_compiled_js/extensions/**/protractor.js', - 'backend_prod_files/extensions/**' + 'backend_prod_files/extensions/**', + // TODO(vojtechjelinek): add these back after the templateCache + // is repaired, the templateCache is broken due to the fact that + // webpack is not yet implemented for /extensions (#6732) + 'core/templates/dev/head/components/RatingDisplayDirectiveSpec.js', + ('core/templates/dev/head/pages/exploration_editor/editor_tab/' + + 'SolutionVerificationServiceSpec.ts'), + ('core/templates/dev/head/pages/exploration_editor/editor_tab/' + + 'StateNameEditorDirectiveSpec.ts'), + ('core/templates/dev/head/pages/state_editor/' + + 'StateContentEditorDirectiveSpec.ts'), + ('core/templates/dev/head/pages/state_editor/' + + 'StateInteractionEditorDirectiveSpec.ts'), ], proxies: { // Karma serves files under the /base directory. @@ -63,10 +77,12 @@ module.exports = function(config) { '/extensions/': '/base/extensions/' }, preprocessors: { - 'local_compiled_js/core/templates/dev/head/!(*Spec).js': ['coverage'], - 'local_compiled_js/core/templates/dev/head/**/!(*Spec).js': ['coverage'], - 'local_compiled_js/extensions/!(*Spec).js': ['coverage'], - 'local_compiled_js/extensions/**/!(*Spec).js': ['coverage'], + 'core/templates/dev/head/*.ts': ['webpack'], + 'core/templates/dev/head/**/*.ts': ['webpack'], + 'core/templates/dev/head/!(*Spec).js': ['coverage'], + 'core/templates/dev/head/**/!(*Spec).js': ['coverage'], + 'extensions/!(*Spec).js': ['coverage'], + 'extensions/**/!(*Spec).js': ['coverage'], // Note that these files should contain only directive templates, and no // Jinja expressions. They should also be specified within the 'files' // list above. @@ -103,12 +119,14 @@ module.exports = function(config) { flags: ['--no-sandbox'] } }, + plugins: [ 'karma-jasmine', 'karma-chrome-launcher', 'karma-ng-html2js-preprocessor', 'karma-json-fixtures-preprocessor', - 'karma-coverage' + 'karma-coverage', + 'karma-webpack' ], ngHtml2JsPreprocessor: { moduleName: 'directiveTemplates', @@ -123,6 +141,19 @@ module.exports = function(config) { }, jsonFixturesPreprocessor: { variableName: '__fixtures__' + }, + + webpack: { + mode: 'development', + resolve: { + modules: ['core/templates/dev/head'], + }, + module: { + rules: [{ + test: /\.ts$/, + use: 'ts-loader', + }] + } } }); }; diff --git a/extensions/dependencies/code_repl_prediction.html b/extensions/dependencies/code_repl_prediction.html index ac701e4c4251..8146b3ae5229 100644 --- a/extensions/dependencies/code_repl_prediction.html +++ b/extensions/dependencies/code_repl_prediction.html @@ -1,3 +1,4 @@ + diff --git a/extensions/dependencies/text_input_prediction.html b/extensions/dependencies/text_input_prediction.html index de839b7a5bd8..79d9a6a68a18 100644 --- a/extensions/dependencies/text_input_prediction.html +++ b/extensions/dependencies/text_input_prediction.html @@ -1,3 +1,4 @@ + diff --git a/extensions/interactions/CodeRepl/CodeRepl.html b/extensions/interactions/CodeRepl/CodeRepl.html index 34c45b1322f2..449e22dc137b 100644 --- a/extensions/interactions/CodeRepl/CodeRepl.html +++ b/extensions/interactions/CodeRepl/CodeRepl.html @@ -1,6 +1,6 @@ - + diff --git a/extensions/interactions/LogicProof/LogicProof.html b/extensions/interactions/LogicProof/LogicProof.html index 1afe11c713f2..28742ec5a4aa 100644 --- a/extensions/interactions/LogicProof/LogicProof.html +++ b/extensions/interactions/LogicProof/LogicProof.html @@ -1,5 +1,6 @@ + diff --git a/extensions/interactions/MultipleChoiceInput/MultipleChoiceInput.html b/extensions/interactions/MultipleChoiceInput/MultipleChoiceInput.html index 884e6fb773b4..3919e03f00c5 100644 --- a/extensions/interactions/MultipleChoiceInput/MultipleChoiceInput.html +++ b/extensions/interactions/MultipleChoiceInput/MultipleChoiceInput.html @@ -1,6 +1,7 @@ + diff --git a/extensions/interactions/PencilCodeEditor/PencilCodeEditor.html b/extensions/interactions/PencilCodeEditor/PencilCodeEditor.html index d21f17164314..c2a61b71e8fa 100644 --- a/extensions/interactions/PencilCodeEditor/PencilCodeEditor.html +++ b/extensions/interactions/PencilCodeEditor/PencilCodeEditor.html @@ -1,4 +1,4 @@ - + diff --git a/extensions/interactions/TextInput/TextInput.html b/extensions/interactions/TextInput/TextInput.html index 0aeed4626200..0a31f5e521dc 100644 --- a/extensions/interactions/TextInput/TextInput.html +++ b/extensions/interactions/TextInput/TextInput.html @@ -1,4 +1,4 @@ - + diff --git a/package-lock.json b/package-lock.json index 91b8d2a7536d..49e4b112d3d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -412,6 +412,194 @@ } } }, + "@webassemblyjs/ast": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", + "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", + "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", + "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", + "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", + "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", + "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", + "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/helper-wasm-section": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-opt": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", + "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", + "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", + "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", + "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/floating-point-hex-parser": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-code-frame": "1.8.5", + "@webassemblyjs/helper-fsm": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", + "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, "abbrev": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", @@ -434,6 +622,12 @@ "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", "dev": true }, + "acorn-dynamic-import": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", + "dev": true + }, "acorn-jsx": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", @@ -473,6 +667,18 @@ "uri-js": "^4.2.2" } }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "ajv-keywords": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", + "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", + "dev": true + }, "amdefine": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", @@ -544,6 +750,12 @@ "buffer-equal": "^1.0.0" } }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, "archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", @@ -715,6 +927,44 @@ "safer-buffer": "~2.1.0" } }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -827,6 +1077,16 @@ "eslint-visitor-keys": "^1.0.0" } }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, "bach": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", @@ -923,6 +1183,12 @@ "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", "dev": true }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, "base64id": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", @@ -947,6 +1213,12 @@ "callsite": "1.0.0" } }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, "binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", @@ -982,6 +1254,12 @@ "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==", "dev": true }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", @@ -1017,6 +1295,12 @@ } } }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1056,6 +1340,83 @@ } } }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, "browserslist": { "version": "4.5.5", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.5.5.tgz", @@ -1089,6 +1450,17 @@ "temp-fs": "^0.9.9" } }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, "buffer-alloc": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", @@ -1123,6 +1495,18 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, "bulk-require": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/bulk-require/-/bulk-require-1.0.1.tgz", @@ -1138,6 +1522,60 @@ "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", "dev": true }, + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "dev": true, + "requires": { + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -1199,6 +1637,16 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -1310,6 +1758,31 @@ } } }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "cjson": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/cjson/-/cjson-0.5.0.tgz", @@ -1342,50 +1815,153 @@ } } }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", "dev": true, "requires": { - "restore-cursor": "^2.0.0" + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "clean-webpack-plugin": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-2.0.2.tgz", + "integrity": "sha512-pi1111o4OBd9qvacbgs+NRqClfVPKVIc66B4d8kx6Ho/L+i9entQ/NpK600CsTYTPu3kWvKwwyKarsYMvC2xeA==", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" + "del": "^4.0.0" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "is-path-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.1.0.tgz", + "integrity": "sha512-Sc5j3/YnM8tDeyCsVeKlm/0p95075DyLmDEIkSgQ7mXkrOX+uTCtmQFm0CYzVyJwcCCmO3k8qfJt17SxQwB5Zw==", + "dev": true + }, + "is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "dev": true, + "requires": { + "is-path-inside": "^2.1.0" + } + }, + "is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "dev": true, + "requires": { + "path-is-inside": "^1.0.2" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { @@ -1551,6 +2127,12 @@ "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", "dev": true }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, "component-bind": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", @@ -1665,6 +2247,21 @@ } } }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, "content-type": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", @@ -1686,6 +2283,20 @@ "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", "dev": true }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -1754,6 +2365,43 @@ } } }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -1767,6 +2415,55 @@ "which": "^1.2.9" } }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + }, + "dependencies": { + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + } + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -1782,6 +2479,12 @@ "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", "dev": true }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, "d": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", @@ -1806,6 +2509,12 @@ "integrity": "sha512-M6UqVvZVgFYqZL1SfHsRGIQSz3ZL+qgbsV5Lp1Vj61LZVYuEwcMXYay7DRDtYs2HQQBK5hQtQ0fD9aEJ89V0LA==", "dev": true }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, "dateformat": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", @@ -1959,6 +2668,16 @@ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", "dev": true }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", @@ -1971,6 +2690,17 @@ "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", "dev": true }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, "dir-glob": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", @@ -2006,6 +2736,15 @@ "esutils": "^2.0.2" } }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "requires": { + "utila": "~0.4" + } + }, "dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", @@ -2028,6 +2767,12 @@ "entities": "^1.1.1" } }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", @@ -2150,12 +2895,33 @@ "integrity": "sha512-1o25iFRf/dbgauTWalEzmD1EmRN3a2CzP/K7UVpYLEBduk96LF0FyUdCcf4Ry2mAWJ1VxyblFjC93q6qlLwA2A==", "dev": true }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -2257,6 +3023,17 @@ "has-binary2": "~1.0.2" } }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, "ent": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", @@ -2269,6 +3046,15 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", "dev": true }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -2278,6 +3064,31 @@ "is-arrayish": "^0.2.1" } }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, "es5-ext": { "version": "0.10.49", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", @@ -2547,6 +3358,22 @@ "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", "dev": true }, + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", @@ -2802,6 +3629,12 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "dev": true + }, "figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", @@ -2881,6 +3714,17 @@ } } }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, "find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", @@ -3068,6 +3912,48 @@ "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", "dev": true }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "fs-access": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", @@ -3098,16 +3984,60 @@ "through2": "^2.0.3" } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", - "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", + "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", "dev": true, "optional": true, "requires": { @@ -4017,6 +4947,15 @@ "har-schema": "^2.0.0" } }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -4101,6 +5040,43 @@ } } }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, "homedir-polyfill": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", @@ -4116,12 +5092,73 @@ "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", "dev": true }, + "html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "requires": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "uglify-js": { + "version": "3.4.10", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", + "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", + "dev": true, + "requires": { + "commander": "~2.19.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + } + } + } + } + }, "html-tags": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz", "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=", "dev": true }, + "html-webpack-plugin": { + "version": "4.0.0-beta.5", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.0.0-beta.5.tgz", + "integrity": "sha512-y5l4lGxOW3pz3xBTFdfB9rnnrWRPVxlAhX6nrBYIcW+2k2zC3mSp/3DxlWVCMBfnO6UAnoF8OcFn0IMy6kaKAQ==", + "dev": true, + "requires": { + "html-minifier": "^3.5.20", + "loader-utils": "^1.1.0", + "lodash": "^4.17.11", + "pretty-error": "^2.1.1", + "tapable": "^1.1.0", + "util.promisify": "1.0.0" + } + }, "htmllint": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/htmllint/-/htmllint-0.8.0.tgz", @@ -4322,6 +5359,12 @@ "sshpk": "^1.7.0" } }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, "https-proxy-agent": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", @@ -4352,6 +5395,18 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -4380,6 +5435,16 @@ "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", "dev": true }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -4552,6 +5617,12 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -4572,6 +5643,12 @@ } } }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, "is-decimal": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", @@ -4722,6 +5799,15 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, "is-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", @@ -4755,6 +5841,15 @@ "integrity": "sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ==", "dev": true }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5200,6 +6295,20 @@ "integrity": "sha1-ENjIz6pBNvHIp22RpMvO7evsSjE=", "dev": true }, + "karma-webpack": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-3.0.5.tgz", + "integrity": "sha512-nRudGJWstvVuA6Tbju9tyGUfXTtI1UXMXoRHVmM2/78D0q6s/Ye2IC157PKNDC15PWFGR0mVIRtWLAdcfsRJoA==", + "dev": true, + "requires": { + "async": "^2.0.0", + "babel-runtime": "^6.0.0", + "loader-utils": "^1.0.0", + "lodash": "^4.0.0", + "source-map": "^0.5.6", + "webpack-dev-middleware": "^2.0.6" + } + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -5335,6 +6444,40 @@ "strip-bom": "^2.0.0" } }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -5387,6 +6530,16 @@ "streamroller": "^1.0.4" } }, + "loglevelnext": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz", + "integrity": "sha512-V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A==", + "dev": true, + "requires": { + "es6-symbol": "^3.1.1", + "object.assign": "^4.1.0" + } + }, "lolex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/lolex/-/lolex-1.3.2.tgz", @@ -5409,6 +6562,12 @@ "signal-exit": "^3.0.0" } }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, "lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", @@ -5419,6 +6578,24 @@ "yallist": "^2.1.2" } }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, "make-iterator": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", @@ -5428,6 +6605,12 @@ "kind-of": "^6.0.2" } }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", + "dev": true + }, "map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -5517,6 +6700,17 @@ "integrity": "sha512-3Zs9P/0zzwTob2pdgT0CHZuMbnSUSp8MB1bddfm+HDmnFWHGT4jvEZRf+2RuPoa+cjdn/z25SEt5gFTqdhvJAg==", "dev": true }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "mdast-util-compact": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-1.0.2.tgz", @@ -5541,6 +6735,48 @@ "mimic-fn": "^1.0.0" } }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "meow": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", @@ -5594,6 +6830,16 @@ "to-regex": "^3.0.2" } }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, "mime": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.2.tgz", @@ -5621,6 +6867,18 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -5646,6 +6904,36 @@ "is-plain-obj": "^1.1.0" } }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", @@ -5676,10 +6964,24 @@ "minimist": "0.0.8" } }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, "mute-stdout": { @@ -5750,6 +7052,86 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "^1.1.1" + } + }, + "node-libs-browser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", + "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.0", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + } + } + }, "node-releases": { "version": "1.1.17", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.17.tgz", @@ -5819,6 +7201,15 @@ "path-key": "^2.0.0" } }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, "null-check": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", @@ -5925,6 +7316,16 @@ "isobject": "^3.0.0" } }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, "object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", @@ -6054,6 +7455,12 @@ } } }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", @@ -6105,6 +7512,12 @@ "p-limit": "^1.1.0" } }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + }, "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", @@ -6117,6 +7530,58 @@ "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", "dev": true }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "^2.2.0" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -6126,6 +7591,20 @@ "callsites": "^3.0.0" } }, + "parse-asn1": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, "parse-entities": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.1.tgz", @@ -6202,6 +7681,12 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "dev": true + }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -6276,6 +7761,19 @@ "through": "~2.3" } }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -6309,6 +7807,66 @@ "pinkie": "^2.0.0" } }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -6461,12 +8019,28 @@ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", "dev": true }, + "pretty-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", + "dev": true, + "requires": { + "renderkid": "^2.0.1", + "utila": "~0.4" + } + }, "pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", "dev": true }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, "process-nextick-args": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", @@ -6488,6 +8062,12 @@ "asap": "~2.0.6" } }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, "protractor": { "version": "5.4.2", "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.2.tgz", @@ -6582,6 +8162,12 @@ } } }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, "ps-tree": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.1.1.tgz", @@ -6603,6 +8189,20 @@ "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", "dev": true }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "pump": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", @@ -6648,12 +8248,43 @@ "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", "dev": true }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, "quick-lru": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", "dev": true }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -6766,6 +8397,12 @@ "strip-indent": "^1.0.1" } }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -6782,6 +8419,12 @@ "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, "remark": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/remark/-/remark-10.0.1.tgz", @@ -6865,6 +8508,36 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, + "renderkid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.3.tgz", + "integrity": "sha512-z8CLQp7EZBPCwCnncgf9C4XAi3WR0dv+uWu/PjIyhhAb5d6IJ/QZqlHFprHeKT+59//V6BNUsLbvN8+2LarxGA==", + "dev": true, + "requires": { + "css-select": "^1.1.0", + "dom-converter": "^0.2", + "htmlparser2": "^3.3.0", + "strip-ansi": "^3.0.0", + "utila": "^0.4.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", @@ -6966,6 +8639,23 @@ "path-parse": "^1.0.6" } }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + } + } + }, "resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", @@ -7028,7 +8718,17 @@ "glob": "^7.0.5" } }, - "run-async": { + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "run-async": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", @@ -7037,6 +8737,15 @@ "is-promise": "^2.1.0" } }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, "rxjs": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", @@ -7088,6 +8797,17 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, "selenium-webdriver": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", @@ -7126,6 +8846,12 @@ "sver-compat": "^1.5.0" } }, + "serialize-javascript": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", + "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", + "dev": true + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -7161,12 +8887,28 @@ } } }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, "setprototypeof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", "dev": true }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -7461,6 +9203,12 @@ } } }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -7586,6 +9334,15 @@ "tweetnacl": "~0.14.0" } }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, "stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", @@ -7625,6 +9382,48 @@ "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", "dev": true }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "stream-combiner": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz", @@ -7634,12 +9433,67 @@ "duplexer": "~0.1.1" } }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, "stream-exhaust": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", "dev": true }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "stream-shift": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", @@ -8201,6 +10055,12 @@ } } }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, "temp-fs": { "version": "0.9.9", "resolved": "https://registry.npmjs.org/temp-fs/-/temp-fs-0.9.9.tgz", @@ -8210,6 +10070,59 @@ "rimraf": "~2.5.2" } }, + "terser": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", + "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } + } + }, + "terser-webpack-plugin": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.2.3.tgz", + "integrity": "sha512-GOK7q85oAb/5kE12fMuLdn2btOS9OBZn4VsecpHDywoUC/jLhSAKOiYo0ezx7ss2EXPMzyEWFoE0s1WLE+4+oA==", + "dev": true, + "requires": { + "cacache": "^11.0.2", + "find-cache-dir": "^2.0.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "terser": "^3.16.1", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -8280,6 +10193,15 @@ "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", "dev": true }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -8305,6 +10227,12 @@ "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", "dev": true }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -8416,12 +10344,31 @@ "integrity": "sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==", "dev": true }, + "ts-loader": { + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-5.4.5.tgz", + "integrity": "sha512-XYsjfnRQCBum9AMRZpk2rTYSVpdZBpZK+kDh0TeT3kxmQNBDVIeUjdPjY5RZry4eIAb8XHc4gYSUiUWPYvzSRw==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "enhanced-resolve": "^4.0.0", + "loader-utils": "^1.0.2", + "micromatch": "^3.1.4", + "semver": "^5.0.1" + } + }, "tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", "dev": true }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -8588,6 +10535,24 @@ "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", "dev": true }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, "unique-stream": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", @@ -8704,6 +10669,12 @@ "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", "dev": true }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -8719,6 +10690,30 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-join": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-2.0.5.tgz", + "integrity": "sha1-WvIvGMBSoACkjXuCxenC4v7tpyg=", + "dev": true + }, "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", @@ -8750,6 +10745,22 @@ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "dev": true }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -8762,6 +10773,12 @@ "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", "dev": true }, + "v8-compile-cache": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", + "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", + "dev": true + }, "v8flags": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.2.tgz", @@ -8919,12 +10936,32 @@ "vinyl": "^2.0.0" } }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, "void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", "dev": true }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, "webdriver-js-extender": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", @@ -9010,6 +11047,316 @@ } } }, + "webpack": { + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.31.0.tgz", + "integrity": "sha512-n6RVO3X0LbbipoE62akME9K/JI7qYrwwufs20VvgNNpqUoH4860KkaxJTbGq5bgkVZF9FqyyTG/0WPLH3PVNJA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/wasm-edit": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "acorn": "^6.0.5", + "acorn-dynamic-import": "^4.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^1.0.0", + "tapable": "^1.1.0", + "terser-webpack-plugin": "^1.1.0", + "watchpack": "^1.5.0", + "webpack-sources": "^1.3.0" + }, + "dependencies": { + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + } + } + }, + "webpack-cli": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.2.tgz", + "integrity": "sha512-FLkobnaJJ+03j5eplxlI0TUxhGCOdfewspIGuvDVtpOlrAuKMFC57K42Ukxqs1tn8947/PM6tP95gQc0DCzRYA==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "enhanced-resolve": "^4.1.0", + "findup-sync": "^2.0.0", + "global-modules": "^1.0.0", + "import-local": "^2.0.0", + "interpret": "^1.1.0", + "loader-utils": "^1.1.0", + "supports-color": "^5.5.0", + "v8-compile-cache": "^2.0.2", + "yargs": "^12.0.5" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "webpack-dev-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-2.0.6.tgz", + "integrity": "sha512-tj5LLD9r4tDuRIDa5Mu9lnY2qBBehAITv6A9irqXhw/HQquZgTx3BCd57zYbU2gMDnncA49ufK2qVQSbaKJwOw==", + "dev": true, + "requires": { + "loud-rejection": "^1.6.0", + "memory-fs": "~0.4.1", + "mime": "^2.1.0", + "path-is-absolute": "^1.0.0", + "range-parser": "^1.0.3", + "url-join": "^2.0.2", + "webpack-log": "^1.0.1" + } + }, + "webpack-log": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz", + "integrity": "sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA==", + "dev": true, + "requires": { + "chalk": "^2.1.0", + "log-symbols": "^2.1.0", + "loglevelnext": "^1.0.1", + "uuid": "^3.1.0" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -9031,6 +11378,15 @@ "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", diff --git a/package.json b/package.json index 94120f248d51..b6121c7e5871 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,9 @@ "ajv": "^6.10.0", "babel-eslint": "^10.0.1", "browserstack-local": "^1.3.7", + "clean-webpack-plugin": "^2.0.1", "dotenv": "^7.0.0", + "enhanced-resolve": "^4.1.0", "eslint": "^5.16.0", "eslint-plugin-angular": "^4.0.0", "eslint-plugin-html": "^5.0.3", @@ -48,6 +50,7 @@ "gulp-concat": "^2.6.1", "htmllint": "^0.8.0", "htmllint-cli": "0.0.7", + "html-webpack-plugin": "4.0.0-beta.5", "jasmine-core": "^3.4.0", "jasmine-spec-reporter": "^4.2.1", "karma": "^4.1.0", @@ -56,14 +59,18 @@ "karma-jasmine": "^2.0.1", "karma-json-fixtures-preprocessor": "^0.0.6", "karma-ng-html2js-preprocessor": "^1.0.0", + "karma-webpack": "^3.0.5", "postcss-syntax": "^0.36.2", "protractor": "^5.4.2", "protractor-screenshot-reporter": "0.0.5", "stylelint": "^10.0.1", "stylelint-config-standard": "^18.3.0", + "ts-loader": "^5.4.4", "typescript": "^3.4.5", "uglify-js": "^3.5.8", "webdriver-manager": "^12.1.2", + "webpack": "^4.29.6", + "webpack-cli": "^3.3.1", "yargs": "^13.2.2" }, "keywords": [] diff --git a/scripts/build.py b/scripts/build.py index 3aafc2cb3cb3..94ff66c51026 100644 --- a/scripts/build.py +++ b/scripts/build.py @@ -70,6 +70,8 @@ NODE_FILE = os.path.join( PARENT_DIR, 'oppia_tools', 'node-10.15.3', 'bin', 'node') UGLIFY_FILE = os.path.join('node_modules', 'uglify-js', 'bin', 'uglifyjs') +WEBPACK_FILE = os.path.join('node_modules', 'webpack', 'bin', 'webpack.js') +WEBPACK_PROD_CONFIG = 'webpack.prod.config.ts' # Files with these extensions shouldn't be moved to build directory. FILE_EXTENSIONS_TO_IGNORE = ('.py', '.pyc', '.stylelintrc', '.ts') @@ -77,6 +79,7 @@ # not be served in production. (This includes protractor.js files in # /extensions.) JS_FILENAME_SUFFIXES_TO_IGNORE = ('Spec.js', 'protractor.js') +JS_FILENAME_SUFFIXES_NOT_TO_MINIFY = ('.bundle.js',) GENERAL_FILENAMES_TO_IGNORE = ('.pyc', '.stylelintrc') # These files are present in both extensions and local_compiled_js/extensions. @@ -96,7 +99,9 @@ FILEPATHS_NOT_TO_RENAME = ( '*.py', 'third_party/generated/fonts/*', - 'third_party/generated/js/third_party.min.js.map') + 'third_party/generated/js/third_party.min.js.map', + '*.bundle.js', + '*.bundle.js.map') # Hashes for files with these paths should be provided to the frontend in # JS hashes object. @@ -510,6 +515,21 @@ def build_third_party_libs(third_party_directory_path): dependency_filepaths['fonts'], FONTS_DIR)) +def build_using_webpack(): + """Execute webpack build process. This takes all TypeScript files we have in + /templates/dev/head and generates JS bundles according the require() imports + and also compiles HTML pages into the /templates/dev/head/dist folder. + + The settings for this are specified in webpack.prod.config.ts. + """ + + print 'Building webpack' + + cmd = '%s --config %s' % ( + WEBPACK_FILE, WEBPACK_PROD_CONFIG) + subprocess.check_call(cmd, shell=True) + + def hash_should_be_inserted(filepath): """Returns if the file should be renamed to include hash in the path. @@ -726,12 +746,15 @@ def minify_func(source_path, target_path, file_hashes, filename): - CSS or JS files: Minify and save at target directory. - Other files: Copy the file from source directory to target directory. """ + skip_minify = any( + filename.endswith(p) for p in JS_FILENAME_SUFFIXES_NOT_TO_MINIFY) if filename.endswith('.html'): print 'Building %s' % source_path with open(source_path, 'r+') as source_html_file: with open(target_path, 'w+') as minified_html_file: process_html(source_html_file, minified_html_file, file_hashes) - elif filename.endswith('.css') or filename.endswith('.js'): + elif ((filename.endswith('.css') or filename.endswith('.js')) and + not skip_minify): print 'Minifying %s' % source_path _minify(source_path, target_path) else: @@ -1237,6 +1260,7 @@ def build(): raise Exception( 'minify_third_party_libs_only should not be set in non-prod mode.') if options.prod_mode: + build_using_webpack() minify_third_party_libs(THIRD_PARTY_GENERATED_DEV_DIR) if not options.minify_third_party_libs_only: generate_build_directory() diff --git a/scripts/pre_commit_linter.py b/scripts/pre_commit_linter.py index 71d0ca58ccfe..9366ba097a99 100644 --- a/scripts/pre_commit_linter.py +++ b/scripts/pre_commit_linter.py @@ -182,7 +182,13 @@ 'for this purpose.', 'excluded_files': (), 'excluded_dirs': () - } + }, + { + 'regexp': r'require\(.*\.\..*\);', + 'message': 'Please, don\'t use relative imports in require().', + 'excluded_files': (), + 'excluded_dirs': ('core/tests/') + }, ] BAD_LINE_PATTERNS_HTML_REGEXP = [ @@ -263,7 +269,10 @@ 'core/tests/karma.conf.ts', 'core/templates/dev/head/mathjaxConfig.ts', 'assets/constants.js', - 'assets/rich_text_components_definitions.js') + 'assets/rich_text_components_definitions.js', + 'webpack.config.ts', + 'webpack.dev.config.ts', + 'webpack.prod.config.ts') if not os.getcwd().endswith('oppia'): print '' @@ -794,8 +803,9 @@ def handle_endtag(self, tag): def handle_data(self, data): """Handle indentation level.""" data_lines = data.split('\n') - opening_block = tuple(['{% block', '{% macro', '{% if']) - ending_block = tuple(['{% end', '{%- end']) + opening_block = tuple( + ['{% block', '{% macro', '{% if', '% for', '% if']) + ending_block = tuple(['{% end', '{%- end', '% } %>']) for data_line in data_lines: data_line = data_line.lstrip() if data_line.startswith(opening_block): diff --git a/scripts/run_backend_tests.sh b/scripts/run_backend_tests.sh index e3d7651dfe96..ac681f9413d8 100755 --- a/scripts/run_backend_tests.sh +++ b/scripts/run_backend_tests.sh @@ -89,6 +89,10 @@ done echo "Compiling typescript..." $NODE_MODULE_DIR/typescript/bin/tsc --project . +echo "Compiling webpack..." +$NODE_MODULE_DIR/webpack/bin/webpack.js --config webpack.dev.config.ts +$PYTHON_CMD scripts/build.py + $PYTHON_CMD scripts/backend_tests.py $@ for arg in "$@"; do diff --git a/scripts/start.sh b/scripts/start.sh index 4cfd12f2420f..df5960d95a1e 100755 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -107,6 +107,7 @@ echo Starting GAE development server if ! [[ "$FORCE_PROD_MODE" == "True" ]]; then ($NODE_PATH/bin/node $NODE_MODULE_DIR/gulp/bin/gulp.js watch)& + ($NODE_MODULE_DIR/webpack/bin/webpack.js --config webpack.dev.config.ts --watch)& fi (python $GOOGLE_APP_ENGINE_HOME/dev_appserver.py $CLEAR_DATASTORE_ARG $ENABLE_CONSOLE_ARG --admin_host 0.0.0.0 --admin_port 8000 --host 0.0.0.0 --port 8181 --skip_sdk_update_check true app.yaml)& diff --git a/tsconfig.json b/tsconfig.json index 8d37e7b39c76..490e3c8d0aff 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,7 +9,17 @@ "target": "es5", "typeRoots": ["./node_modules/@types"], }, - "files": ["assets/constants.js", "assets/rich_text_components_definitions.js", "core/tests/karma-globals.ts", "core/tests/karma.conf.ts"], - "include": ["core", "extensions", "typings"], - "exclude": ["core/tests"] + "files": [ + "assets/constants.js", + "assets/rich_text_components_definitions.js", + "core/tests/karma-globals.ts", + "core/tests/karma.conf.ts", + "core/templates/dev/head/AppInit.ts", + "core/templates/dev/head/mathjaxConfig.ts", + "core/templates/dev/head/domain/classifier/PredictionResultObjectFactory.ts", + "core/templates/dev/head/expressions/ExpressionParserService.js", + "core/templates/dev/head/filters/ConvertToPlainTextFilter.ts", + "core/templates/dev/head/filters/TruncateAtFirstLineFilter.ts" + ], + "include": ["extensions", "typings"] } diff --git a/webpack.config.ts b/webpack.config.ts new file mode 100644 index 000000000000..3c0e8f0de4db --- /dev/null +++ b/webpack.config.ts @@ -0,0 +1,356 @@ +// Copyright 2019 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +var CleanWebpackPlugin = require('clean-webpack-plugin'); +var HtmlWebpackPlugin = require('html-webpack-plugin'); + +var htmlMinifyConfig = { + ignoreCustomFragments: [ + /\{\{[\s\S]*?\}\}/, + /<\{%[\s\S]*?%\}/, + /<\[[\s\S]*?\]>/] +}; + +var commonPrefix = './core/templates/dev/head'; + +module.exports = { + entries: { + about: commonPrefix + '/pages/about/About.ts', + admin: commonPrefix + '/pages/admin/Admin.ts', + app: commonPrefix + '/App.ts', + collection_editor: + commonPrefix + '/pages/collection_editor/CollectionEditor.ts', + collection_player: + commonPrefix + '/pages/collection_player/CollectionPlayer.ts', + contact: commonPrefix + '/pages/contact/Contact.ts', + creator_dashboard: + commonPrefix + '/pages/creator_dashboard/CreatorDashboard.ts', + donate: commonPrefix + '/pages/donate/Donate.ts', + email_dashboard: + commonPrefix + '/pages/email_dashboard/EmailDashboard.ts', + email_dashboard_result: + commonPrefix + '/pages/email_dashboard/EmailDashboardResult.ts', + error: commonPrefix + '/pages/error/Error.ts', + exploration_editor: + commonPrefix + '/pages/exploration_editor/ExplorationEditor.ts', + exploration_player: + commonPrefix + '/pages/exploration_player/ExplorationPlayer.ts', + get_started: commonPrefix + '/pages/get_started/GetStarted.ts', + landing: commonPrefix + '/pages/landing/TopicLandingPage.ts', + learner_dashboard: + commonPrefix + '/pages/learner_dashboard/LearnerDashboard.ts', + library: commonPrefix + '/pages/library/Library.ts', + maintenance: commonPrefix + '/pages/maintenance/Maintenance.ts', + moderator: commonPrefix + '/pages/moderator/Moderator.ts', + notifications_dashboard: + commonPrefix + '/pages/notifications_dashboard/NotificationsDashboard.ts', + practice_session: + commonPrefix + '/pages/practice_session/PracticeSession.ts', + preferences: commonPrefix + '/pages/preferences/Preferences.ts', + profile: commonPrefix + '/pages/profile/Profile.ts', + signup: commonPrefix + '/pages/signup/Signup.ts', + skill_editor: commonPrefix + '/pages/skill_editor/SkillEditor.ts', + splash: commonPrefix + '/pages/splash/Splash.ts', + stewards: commonPrefix + '/pages/landing/stewards/Stewards.ts', + story_editor: commonPrefix + '/pages/story_editor/StoryEditor.ts', + teach: commonPrefix + '/pages/teach/Teach.ts', + thanks: commonPrefix + '/pages/thanks/Thanks.ts', + topic_editor: commonPrefix + '/pages/topic_editor/TopicEditor.ts', + topics_and_skills_dashboard: ( + commonPrefix + + '/pages/topics_and_skills_dashboard/' + + 'TopicsAndSkillsDashboard.ts' + ), + topic_viewer: commonPrefix + '/pages/topic_viewer/TopicViewer.ts', + }, + plugins: [ + new HtmlWebpackPlugin({ + chunks: ['app', 'admin'], + filename: 'admin.html', + template: commonPrefix + '/pages/admin/admin.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['app'], + filename: 'base.html', + template: 'core/templates/dev/head/pages/base.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['about'], + filename: 'about.html', + template: commonPrefix + '/pages/about/about.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['collection_editor'], + filename: 'collection_editor.html', + template: + commonPrefix + '/pages/collection_editor/collection_editor.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['collection_player'], + filename: 'collection_player.html', + template: + commonPrefix + '/pages/collection_player/collection_player.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + filename: 'console_errors.html', + template: commonPrefix + '/pages/tests/console_errors.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['contact'], + filename: 'contact.html', + template: commonPrefix + '/pages/contact/contact.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['creator_dashboard'], + filename: 'creator_dashboard.html', + template: + commonPrefix + '/pages/creator_dashboard/creator_dashboard.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['donate'], + filename: 'donate.html', + template: commonPrefix + '/pages/donate/donate.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['email_dashboard'], + filename: 'email_dashboard.html', + template: commonPrefix + '/pages/email_dashboard/email_dashboard.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['email_dashboard_result'], + filename: 'email_dashboard_result.html', + template: + commonPrefix + '/pages/email_dashboard/email_dashboard_result.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['error'], + filename: 'error.html', + template: commonPrefix + '/pages/error/error.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['exploration_editor'], + filename: 'exploration_editor.html', + template: + commonPrefix + '/pages/exploration_editor/exploration_editor.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['exploration_player'], + filename: 'exploration_player.html', + template: + commonPrefix + '/pages/exploration_player/exploration_player.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['get_started'], + filename: 'get_started.html', + template: commonPrefix + '/pages/get_started/get_started.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['landing'], + filename: 'topic_landing_page.html', + template: commonPrefix + '/pages/landing/topic_landing_page.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['learner_dashboard'], + filename: 'learner_dashboard.html', + template: + commonPrefix + '/pages/learner_dashboard/learner_dashboard.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['library'], + filename: 'library.html', + template: commonPrefix + '/pages/library/library.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['app', 'maintenance'], + filename: 'maintenance.html', + template: commonPrefix + '/pages/maintenance/maintenance.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['moderator'], + filename: 'moderator.html', + template: commonPrefix + '/pages/moderator/moderator.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + filename: 'privacy.html', + template: commonPrefix + '/pages/privacy/privacy.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['notifications_dashboard'], + filename: 'notifications_dashboard.html', + template: ( + commonPrefix + + '/pages/notifications_dashboard/notifications_dashboard.html' + ), + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['practice_session'], + filename: 'practice_session.html', + template: commonPrefix + '/pages/practice_session/practice_session.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['preferences'], + filename: 'preferences.html', + template: commonPrefix + '/pages/preferences/preferences.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['profile'], + filename: 'profile.html', + template: commonPrefix + '/pages/profile/profile.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['signup'], + filename: 'signup.html', + template: commonPrefix + '/pages/signup/signup.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['skill_editor'], + filename: 'skill_editor.html', + template: commonPrefix + '/pages/skill_editor/skill_editor.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['splash'], + filename: 'splash.html', + template: commonPrefix + '/pages/splash/splash.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['splash'], + filename: 'splash_at0.html', + template: commonPrefix + '/pages/splash/splash_at0.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['splash'], + filename: 'splash_at1.html', + template: commonPrefix + '/pages/splash/splash_at1.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['stewards'], + filename: 'landing_page_stewards.html', + template: + commonPrefix + '/pages/landing/stewards/landing_page_stewards.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['story_editor'], + filename: 'story_editor.html', + template: commonPrefix + '/pages/story_editor/story_editor.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['teach'], + filename: 'teach.html', + template: commonPrefix + '/pages/teach/teach.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + filename: 'terms.html', + template: commonPrefix + '/pages/terms/terms.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['thanks'], + filename: 'thanks.html', + template: commonPrefix + '/pages/thanks/thanks.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['topic_editor'], + filename: 'topic_editor.html', + template: commonPrefix + '/pages/topic_editor/topic_editor.html', + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['topics_and_skills_dashboard'], + filename: 'topics_and_skills_dashboard.html', + template: ( + commonPrefix + + '/pages/topics_and_skills_dashboard/topics_and_skills_dashboard.html' + ), + minify: htmlMinifyConfig, + inject: false + }), + new HtmlWebpackPlugin({ + chunks: ['topic_viewer'], + filename: 'topic_viewer.html', + template: commonPrefix + '/pages/topic_viewer/topic_viewer.html', + minify: htmlMinifyConfig, + inject: false + }), + ] +}; diff --git a/webpack.dev.config.ts b/webpack.dev.config.ts new file mode 100644 index 000000000000..de6d414750e3 --- /dev/null +++ b/webpack.dev.config.ts @@ -0,0 +1,52 @@ +// Copyright 2019 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + + +var commonWebpackConfig = require('./webpack.config.ts'); +var path = require('path'); + +module.exports = { + mode: 'development', + resolve: { + modules: [ + path.resolve(__dirname, 'core/templates/dev/head'), + ], + }, + entry: commonWebpackConfig.entries, + plugins: commonWebpackConfig.plugins, + module: { + rules: [ + { + test: /\.ts$/, + use: 'ts-loader', + } + ] + }, + output: { + filename: '[name].bundle.js', + path: path.resolve(__dirname, 'core/templates/dev/head/dist') + }, + devtool: 'inline-source-map', + optimization: { + splitChunks: { + chunks: 'all', + minSize: 1024 * 10, + maxInitialRequests: 9, + } + }, + watchOptions: { + aggregateTimeout: 500, + poll: 1000 + } +}; diff --git a/webpack.prod.config.ts b/webpack.prod.config.ts new file mode 100644 index 000000000000..5529b2580dbb --- /dev/null +++ b/webpack.prod.config.ts @@ -0,0 +1,48 @@ +// Copyright 2019 The Oppia Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + + +var commonWebpackConfig = require('./webpack.config.ts'); +var path = require('path'); + +module.exports = { + mode: 'production', + resolve: { + modules: [ + path.resolve(__dirname, 'core/templates/dev/head'), + ], + }, + entry: commonWebpackConfig.entries, + plugins: commonWebpackConfig.plugins, + module: { + rules: [ + { + test: /\.ts$/, + use: 'ts-loader', + } + ] + }, + output: { + filename: '[name].[contenthash].bundle.js', + path: path.resolve(__dirname, 'core/templates/dev/head/dist') + }, + devtool: 'source-map', + optimization: { + splitChunks: { + chunks: 'all', + minSize: 1024 * 10, + maxInitialRequests: 9, + } + } +};