From 389110972ee117b585a83364d7049a0052377309 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Tue, 18 Jun 2019 12:47:20 +0530 Subject: [PATCH 1/9] Services --- .../dev/head/services/ContextService.ts | 13 +--- .../ExplorationFeaturesBackendApiService.ts | 3 +- .../PlaythroughIssuesBackendApiService.ts | 10 +-- .../dev/head/services/PlaythroughService.ts | 11 +-- .../dev/head/services/PromoBarService.ts | 6 +- .../dev/head/services/RteHelperService.ts | 2 +- .../dev/head/services/SearchService.ts | 2 +- .../StateTopAnswersStatsBackendApiService.ts | 4 +- .../dev/head/services/services.constants.ts | 68 +++++++++++++++++++ 9 files changed, 76 insertions(+), 43 deletions(-) create mode 100644 core/templates/dev/head/services/services.constants.ts diff --git a/core/templates/dev/head/services/ContextService.ts b/core/templates/dev/head/services/ContextService.ts index 78799faf3600..93170ff03283 100644 --- a/core/templates/dev/head/services/ContextService.ts +++ b/core/templates/dev/head/services/ContextService.ts @@ -17,18 +17,7 @@ * context. */ -oppia.constant('PAGE_CONTEXT', { - EXPLORATION_EDITOR: 'editor', - EXPLORATION_PLAYER: 'learner', - QUESTION_EDITOR: 'question_editor', - QUESTION_PLAYER: 'question_player', - OTHER: 'other' -}); - -oppia.constant('EXPLORATION_EDITOR_TAB_CONTEXT', { - EDITOR: 'editor', - PREVIEW: 'preview' -}); +require('services/services.constants.ts'); oppia.factory('ContextService', [ 'UrlService', 'EXPLORATION_EDITOR_TAB_CONTEXT', 'PAGE_CONTEXT', diff --git a/core/templates/dev/head/services/ExplorationFeaturesBackendApiService.ts b/core/templates/dev/head/services/ExplorationFeaturesBackendApiService.ts index a4da10cd34aa..8b84502d00aa 100644 --- a/core/templates/dev/head/services/ExplorationFeaturesBackendApiService.ts +++ b/core/templates/dev/head/services/ExplorationFeaturesBackendApiService.ts @@ -17,8 +17,7 @@ * configured to support. */ -oppia.constant( - 'EXPLORATION_FEATURES_URL', '/explorehandler/features/'); +require('services/services.constants.ts'); oppia.factory('ExplorationFeaturesBackendApiService', [ '$http', 'UrlInterpolationService', 'EXPLORATION_FEATURES_URL', diff --git a/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts b/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts index 349288fa3ed7..8c182599763d 100644 --- a/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts +++ b/core/templates/dev/head/services/PlaythroughIssuesBackendApiService.ts @@ -19,15 +19,7 @@ require('domain/statistics/PlaythroughObjectFactory.ts'); require('domain/statistics/PlaythroughIssueObjectFactory.ts'); require('domain/utilities/UrlInterpolationService.ts'); -oppia.constant( - 'FETCH_ISSUES_URL', '/issuesdatahandler/'); - -oppia.constant( - 'FETCH_PLAYTHROUGH_URL', - '/playthroughdatahandler//'); - -oppia.constant( - 'RESOLVE_ISSUE_URL', '/resolveissuehandler/'); +require('services/services.constants.ts'); oppia.factory('PlaythroughIssuesBackendApiService', [ '$http', 'PlaythroughIssueObjectFactory', 'PlaythroughObjectFactory', diff --git a/core/templates/dev/head/services/PlaythroughService.ts b/core/templates/dev/head/services/PlaythroughService.ts index b9fb3b2cf22b..578279735324 100644 --- a/core/templates/dev/head/services/PlaythroughService.ts +++ b/core/templates/dev/head/services/PlaythroughService.ts @@ -22,16 +22,7 @@ require('domain/utilities/StopwatchObjectFactory.ts'); require('domain/utilities/UrlInterpolationService.ts'); require('services/ExplorationFeaturesService.ts'); -oppia.constant( - 'STORE_PLAYTHROUGH_URL', - '/explorehandler/store_playthrough/'); - -// Enables recording playthroughs from learner sessions. -oppia.constant('EARLY_QUIT_THRESHOLD_IN_SECS', 45); -oppia.constant('NUM_INCORRECT_ANSWERS_THRESHOLD', 3); -oppia.constant('NUM_REPEATED_CYCLES_THRESHOLD', 3); -oppia.constant('CURRENT_ACTION_SCHEMA_VERSION', 1); -oppia.constant('CURRENT_ISSUE_SCHEMA_VERSION', 1); +require('services/services.constants.ts'); oppia.factory('PlaythroughService', [ '$http', 'ExplorationFeaturesService', 'LearnerActionObjectFactory', diff --git a/core/templates/dev/head/services/PromoBarService.ts b/core/templates/dev/head/services/PromoBarService.ts index f2a889105f0a..37a1439092fa 100644 --- a/core/templates/dev/head/services/PromoBarService.ts +++ b/core/templates/dev/head/services/PromoBarService.ts @@ -16,11 +16,7 @@ * @fileoverview Service Promo bar. */ -// Whether to enable the promo bar functionality. This does not actually turn on -// the promo bar, as that is gated by a config value (see config_domain). This -// merely avoids checking for whether the promo bar is enabled for every Oppia -// page visited. -oppia.constant('ENABLE_PROMO_BAR', true); +require('services/services.constants.ts'); oppia.factory('PromoBarService', [ '$http', '$q', 'ENABLE_PROMO_BAR', diff --git a/core/templates/dev/head/services/RteHelperService.ts b/core/templates/dev/head/services/RteHelperService.ts index 8619a0b1ba1b..263f70bab24e 100644 --- a/core/templates/dev/head/services/RteHelperService.ts +++ b/core/templates/dev/head/services/RteHelperService.ts @@ -16,7 +16,7 @@ * @fileoverview A helper service for the Rich text editor(RTE). */ -oppia.constant('RTE_COMPONENT_SPECS', richTextComponents); +require('services/services.constants.ts'); oppia.factory('RteHelperService', [ '$document', '$filter', '$interpolate', '$log', '$uibModal', diff --git a/core/templates/dev/head/services/SearchService.ts b/core/templates/dev/head/services/SearchService.ts index 55d8a6413b14..e428a45dd828 100644 --- a/core/templates/dev/head/services/SearchService.ts +++ b/core/templates/dev/head/services/SearchService.ts @@ -16,7 +16,7 @@ * @fileoverview search service for activityTilesInfinityGrid */ -oppia.constant('SEARCH_DATA_URL', '/searchhandler/data'); +require('services/services.constants.ts'); oppia.factory('SearchService', [ '$http', '$log', '$rootScope', '$translate', 'SEARCH_DATA_URL', diff --git a/core/templates/dev/head/services/StateTopAnswersStatsBackendApiService.ts b/core/templates/dev/head/services/StateTopAnswersStatsBackendApiService.ts index 68e7e3f50c5c..22718ce50e40 100644 --- a/core/templates/dev/head/services/StateTopAnswersStatsBackendApiService.ts +++ b/core/templates/dev/head/services/StateTopAnswersStatsBackendApiService.ts @@ -16,9 +16,7 @@ * @fileoverview Service to fetch statistics about an exploration's states. */ -oppia.constant( - 'STATE_ANSWER_STATS_URL', - '/createhandler/state_answer_stats/'); +require('services/services.constants.ts'); oppia.factory('StateTopAnswersStatsBackendApiService', [ '$http', 'UrlInterpolationService', 'STATE_ANSWER_STATS_URL', diff --git a/core/templates/dev/head/services/services.constants.ts b/core/templates/dev/head/services/services.constants.ts new file mode 100644 index 000000000000..02b76f94abf4 --- /dev/null +++ b/core/templates/dev/head/services/services.constants.ts @@ -0,0 +1,68 @@ +// Copyright 2018 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 Constants for shared services across Oppia. + */ + +oppia.constant('PAGE_CONTEXT', { + EXPLORATION_EDITOR: 'editor', + EXPLORATION_PLAYER: 'learner', + QUESTION_EDITOR: 'question_editor', + QUESTION_PLAYER: 'question_player', + OTHER: 'other' +}); + +oppia.constant('EXPLORATION_EDITOR_TAB_CONTEXT', { + EDITOR: 'editor', + PREVIEW: 'preview' +}); + +oppia.constant( + 'EXPLORATION_FEATURES_URL', '/explorehandler/features/'); + +oppia.constant( + 'FETCH_ISSUES_URL', '/issuesdatahandler/'); + +oppia.constant( + 'FETCH_PLAYTHROUGH_URL', + '/playthroughdatahandler//'); + +oppia.constant( + 'RESOLVE_ISSUE_URL', '/resolveissuehandler/'); + +oppia.constant( + 'STORE_PLAYTHROUGH_URL', + '/explorehandler/store_playthrough/'); + +// Enables recording playthroughs from learner sessions. +oppia.constant('EARLY_QUIT_THRESHOLD_IN_SECS', 45); +oppia.constant('NUM_INCORRECT_ANSWERS_THRESHOLD', 3); +oppia.constant('NUM_REPEATED_CYCLES_THRESHOLD', 3); +oppia.constant('CURRENT_ACTION_SCHEMA_VERSION', 1); +oppia.constant('CURRENT_ISSUE_SCHEMA_VERSION', 1); + +// Whether to enable the promo bar functionality. This does not actually turn on +// the promo bar, as that is gated by a config value (see config_domain). This +// merely avoids checking for whether the promo bar is enabled for every Oppia +// page visited. +oppia.constant('ENABLE_PROMO_BAR', true); + +oppia.constant('RTE_COMPONENT_SPECS', richTextComponents); + +oppia.constant('SEARCH_DATA_URL', '/searchhandler/data'); + +oppia.constant( + 'STATE_ANSWER_STATS_URL', + '/createhandler/state_answer_stats/'); From aa5e39f353967c46d13d7d3ac9ef6be8031daae3 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Tue, 18 Jun 2019 13:01:41 +0530 Subject: [PATCH 2/9] Interactions --- .../classifiers/PythonProgramTokenizer.ts | 14 +----- .../classifiers-extension.constants.ts | 30 ++++++++++++ .../CodeRepl/CodeReplPredictionService.ts | 5 +- .../OppiaInteractiveGraphInputDirective.ts | 2 +- ...ppiaInteractiveMusicNotesInputDirective.ts | 17 +------ .../TextInput/TextInputPredictionService.ts | 5 +- .../interactions-extension.constants.ts | 46 +++++++++++++++++++ 7 files changed, 81 insertions(+), 38 deletions(-) create mode 100644 extensions/classifiers/classifiers-extension.constants.ts create mode 100644 extensions/interactions/interactions-extension.constants.ts diff --git a/extensions/classifiers/PythonProgramTokenizer.ts b/extensions/classifiers/PythonProgramTokenizer.ts index 4698e6dc0181..83fb2c1c1e69 100644 --- a/extensions/classifiers/PythonProgramTokenizer.ts +++ b/extensions/classifiers/PythonProgramTokenizer.ts @@ -26,19 +26,7 @@ * https://github.com/python/cpython/blob/2.7/Lib/tokenize.py */ - -oppia.constant('PythonProgramTokenType', { - COMMENT: 'COMMENT', - NL: 'NL', - STRING: 'STRING', - INDENT: 'INDENT', - DEDENT: 'DEDENT', - ENDMARKER: 'ENDMARKER', - NUMBER: 'NUMBER', - NAME: 'NAME', - OP: 'OP', - ERRORTOKEN: 'ERRORTOKEN' -}); +require('classifiers/classifiers-extension.constants.ts'); oppia.factory('PythonProgramTokenizer', [ '$log', 'PythonProgramTokenType', function($log, PythonProgramTokenType) { diff --git a/extensions/classifiers/classifiers-extension.constants.ts b/extensions/classifiers/classifiers-extension.constants.ts new file mode 100644 index 000000000000..7a3b82be7eb1 --- /dev/null +++ b/extensions/classifiers/classifiers-extension.constants.ts @@ -0,0 +1,30 @@ +// Copyright 2018 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 Constants for classfiers extensions. + */ + +oppia.constant('PythonProgramTokenType', { + COMMENT: 'COMMENT', + NL: 'NL', + STRING: 'STRING', + INDENT: 'INDENT', + DEDENT: 'DEDENT', + ENDMARKER: 'ENDMARKER', + NUMBER: 'NUMBER', + NAME: 'NAME', + OP: 'OP', + ERRORTOKEN: 'ERRORTOKEN' +}); diff --git a/extensions/interactions/CodeRepl/CodeReplPredictionService.ts b/extensions/interactions/CodeRepl/CodeReplPredictionService.ts index 3ee2d6dd852d..462d3b66d274 100644 --- a/extensions/interactions/CodeRepl/CodeReplPredictionService.ts +++ b/extensions/interactions/CodeRepl/CodeReplPredictionService.ts @@ -21,10 +21,7 @@ * function on Oppia-ml. */ -// Minimum confidence required for a predicted answer group to be shown to user. -// Generally a threshold of 0.7-0.8 is assumed to be a good one in practice, -// however value need not be in those bounds. -oppia.constant('CODE_REPL_PREDICTION_SERVICE_THRESHOLD', 0.7); +require('interactions/interactions-extension.constants.ts'); oppia.factory('CodeReplPredictionService', [ 'CountVectorizerService', 'PythonProgramTokenType', diff --git a/extensions/interactions/GraphInput/directives/OppiaInteractiveGraphInputDirective.ts b/extensions/interactions/GraphInput/directives/OppiaInteractiveGraphInputDirective.ts index 74233871fd47..43674b4a7473 100644 --- a/extensions/interactions/GraphInput/directives/OppiaInteractiveGraphInputDirective.ts +++ b/extensions/interactions/GraphInput/directives/OppiaInteractiveGraphInputDirective.ts @@ -20,7 +20,7 @@ * followed by the name of the arg. */ -oppia.constant('GRAPH_INPUT_LEFT_MARGIN', 120); +require('interactions/interactions-extension.constants.ts'); oppia.directive('oppiaInteractiveGraphInput', [ 'GraphInputRulesService', 'HtmlEscaperService', 'UrlInterpolationService', diff --git a/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts b/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts index 330b9cf8a898..d64863eb1195 100644 --- a/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts +++ b/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts @@ -20,22 +20,7 @@ * followed by the name of the arg. */ -// Gives the staff-lines human readable values. -oppia.constant('NOTE_NAMES_TO_MIDI_VALUES', { - A5: 81, - G5: 79, - F5: 77, - E5: 76, - D5: 74, - C5: 72, - B4: 71, - A4: 69, - G4: 67, - F4: 65, - E4: 64, - D4: 62, - C4: 60 -}); +require('interactions/interactions-extension.constants.ts'); oppia.directive('oppiaInteractiveMusicNotesInput', [ 'CurrentInteractionService', 'HtmlEscaperService', diff --git a/extensions/interactions/TextInput/TextInputPredictionService.ts b/extensions/interactions/TextInput/TextInputPredictionService.ts index 9f293c0f5505..b193c17c8a66 100644 --- a/extensions/interactions/TextInput/TextInputPredictionService.ts +++ b/extensions/interactions/TextInput/TextInputPredictionService.ts @@ -21,10 +21,7 @@ * function on Oppia-ml. */ -// Minimum confidence required for a predicted answer group to be shown to user. -// Generally a threshold of 0.7-0.8 is assumed to be a good one in practice, -// however value need not be in those bounds. -oppia.constant('TEXT_INPUT_PREDICTION_SERVICE_THRESHOLD', 0.7); +require('interactions/interactions-extension.constants.ts'); oppia.factory('TextInputPredictionService', [ 'CountVectorizerService', 'SVMPredictionService', diff --git a/extensions/interactions/interactions-extension.constants.ts b/extensions/interactions/interactions-extension.constants.ts new file mode 100644 index 000000000000..017c45e6f40a --- /dev/null +++ b/extensions/interactions/interactions-extension.constants.ts @@ -0,0 +1,46 @@ +// Copyright 2018 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 Constants for interactions extensions. + */ + +// Minimum confidence required for a predicted answer group to be shown to user. +// Generally a threshold of 0.7-0.8 is assumed to be a good one in practice, +// however value need not be in those bounds. +oppia.constant('CODE_REPL_PREDICTION_SERVICE_THRESHOLD', 0.7); + +oppia.constant('GRAPH_INPUT_LEFT_MARGIN', 120); + +// Gives the staff-lines human readable values. +oppia.constant('NOTE_NAMES_TO_MIDI_VALUES', { + A5: 81, + G5: 79, + F5: 77, + E5: 76, + D5: 74, + C5: 72, + B4: 71, + A4: 69, + G4: 67, + F4: 65, + E4: 64, + D4: 62, + C4: 60 +}); + +// Minimum confidence required for a predicted answer group to be shown to user. +// Generally a threshold of 0.7-0.8 is assumed to be a good one in practice, +// however value need not be in those bounds. +oppia.constant('TEXT_INPUT_PREDICTION_SERVICE_THRESHOLD', 0.7); From 635cee590f878ec7181ae3b2edb440bad6aba7b1 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Tue, 18 Jun 2019 13:12:04 +0530 Subject: [PATCH 3/9] Removed exceptional directories from linter --- scripts/pre_commit_linter.py | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/scripts/pre_commit_linter.py b/scripts/pre_commit_linter.py index 14a8cebcd210..fe4e3782a289 100644 --- a/scripts/pre_commit_linter.py +++ b/scripts/pre_commit_linter.py @@ -347,20 +347,6 @@ '/scripts/install_third_party.sh', '/.github/'] -# This list contains the directories and files that do not follow the new -# constant declaration rules. -# TODO(YashJipkate) Bring these directories and files under the new constant -# declaration rules and empty the list. -OLD_CONVENTION_PATHS = [ - 'core/templates/dev/head/services', - 'core/templates/dev/head/base_components', - 'core/templates/dev/head/directives', - 'core/templates/dev/head/domain', - 'core/templates/dev/head/expressions', - 'core/templates/dev/head/tests', - 'core/templates/dev/head/App.ts', - 'extensions/'] - if not os.getcwd().endswith('oppia'): print '' print 'ERROR Please run this script from the oppia root directory.' @@ -2449,13 +2435,9 @@ def _check_constants_declaration(self): failed = False with _redirect_stdout(_TARGET_STDOUT): - all_ts_files = [ + ts_files_to_check = [ filepath for filepath in self.all_filepaths if ( filepath.endswith('.ts'))] - ts_files_to_check = [ - filepath for filepath in all_ts_files if not any( - filepath.startswith(pattern) for pattern in ( - OLD_CONVENTION_PATHS))] constants_to_source_filepaths_dict = {} for filepath in ts_files_to_check: # Check that the constants are declared only in a *.constants.ts From 319fafb842689c3b20eb08a92cf02df3e6fc6204 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Tue, 18 Jun 2019 13:18:50 +0530 Subject: [PATCH 4/9] Modified CODEOWNERS --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 15f73b1ef850..40a9a3ae014e 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -422,6 +422,7 @@ /core/templates/dev/head/pages/profile-page/ @kevinlee12 /core/templates/dev/head/services/UserService*.ts @kevinlee12 +/core/templates/dev/head/services/services.constants.ts @kevinlee12 @seanlip # Critical files. # From d628735e877a75d9d452ed0e73a7a66e56614ec6 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Sun, 23 Jun 2019 11:02:13 +0530 Subject: [PATCH 5/9] Add requires --- .../CodeRepl/CodeReplPredictionService.ts | 2 + .../directives/GraphVizDirective.ts | 2 + .../OppiaResponseGraphInputDirective.ts | 2 + .../directives/MusicNotesInputRulesService.ts | 2 + ...ppiaInteractiveMusicNotesInputDirective.ts | 2 + .../TextInput/TextInputPredictionService.ts | 2 + package-lock.json | 603 ------------------ 7 files changed, 12 insertions(+), 603 deletions(-) diff --git a/extensions/interactions/CodeRepl/CodeReplPredictionService.ts b/extensions/interactions/CodeRepl/CodeReplPredictionService.ts index 633e79effc69..3e1b990c6f17 100644 --- a/extensions/interactions/CodeRepl/CodeReplPredictionService.ts +++ b/extensions/interactions/CodeRepl/CodeReplPredictionService.ts @@ -26,6 +26,8 @@ require('classifiers/PythonProgramTokenizer.ts'); require('classifiers/SVMPredictionService.ts'); require('classifiers/WinnowingPreprocessingService.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.factory('CodeReplPredictionService', [ 'CountVectorizerService', 'PythonProgramTokenType', 'PythonProgramTokenizer', 'SVMPredictionService', diff --git a/extensions/interactions/GraphInput/directives/GraphVizDirective.ts b/extensions/interactions/GraphInput/directives/GraphVizDirective.ts index 58bf24351cc3..7fb0914065c9 100644 --- a/extensions/interactions/GraphInput/directives/GraphVizDirective.ts +++ b/extensions/interactions/GraphInput/directives/GraphVizDirective.ts @@ -25,6 +25,8 @@ require('interactions/GraphInput/directives/GraphDetailService.ts'); require('services/contextual/DeviceInfoService.ts'); require('services/stateful/FocusManagerService.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.directive('graphViz', [ 'UrlInterpolationService', function(UrlInterpolationService) { return { diff --git a/extensions/interactions/GraphInput/directives/OppiaResponseGraphInputDirective.ts b/extensions/interactions/GraphInput/directives/OppiaResponseGraphInputDirective.ts index 602f8eeeb188..481e92247ddb 100644 --- a/extensions/interactions/GraphInput/directives/OppiaResponseGraphInputDirective.ts +++ b/extensions/interactions/GraphInput/directives/OppiaResponseGraphInputDirective.ts @@ -24,6 +24,8 @@ require('domain/utilities/UrlInterpolationService.ts'); require('interactions/GraphInput/directives/GraphDetailService.ts'); require('services/HtmlEscaperService.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.directive('oppiaResponseGraphInput', [ 'GraphDetailService', 'HtmlEscaperService', 'UrlInterpolationService', 'GRAPH_INPUT_LEFT_MARGIN', diff --git a/extensions/interactions/MusicNotesInput/directives/MusicNotesInputRulesService.ts b/extensions/interactions/MusicNotesInput/directives/MusicNotesInputRulesService.ts index bff84245045c..c117cb1be0c1 100644 --- a/extensions/interactions/MusicNotesInput/directives/MusicNotesInputRulesService.ts +++ b/extensions/interactions/MusicNotesInput/directives/MusicNotesInputRulesService.ts @@ -21,6 +21,8 @@ require( 'interactions/MusicNotesInput/directives/' + 'OppiaInteractiveMusicNotesInputDirective.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.factory('MusicNotesInputRulesService', [ 'NOTE_NAMES_TO_MIDI_VALUES', function(NOTE_NAMES_TO_MIDI_VALUES) { var _getMidiNoteValue = function(note) { diff --git a/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts b/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts index 47b2dbf225e0..9dbdf452ad3e 100644 --- a/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts +++ b/extensions/interactions/MusicNotesInput/directives/OppiaInteractiveMusicNotesInputDirective.ts @@ -31,6 +31,8 @@ require( require('services/contextual/WindowDimensionsService.ts'); require('services/HtmlEscaperService.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.directive('oppiaInteractiveMusicNotesInput', [ 'CurrentInteractionService', 'HtmlEscaperService', 'MusicNotesInputRulesService', 'MusicPhrasePlayerService', diff --git a/extensions/interactions/TextInput/TextInputPredictionService.ts b/extensions/interactions/TextInput/TextInputPredictionService.ts index d5c0f236b6c6..20d9d94d0f8a 100644 --- a/extensions/interactions/TextInput/TextInputPredictionService.ts +++ b/extensions/interactions/TextInput/TextInputPredictionService.ts @@ -25,6 +25,8 @@ require('classifiers/SVMPredictionService.ts'); require('classifiers/TextInputTokenizer.ts'); require('classifiers/CountVectorizerService.ts'); +require('interactions/interactions-extension.constants.ts'); + oppia.factory('TextInputPredictionService', [ 'CountVectorizerService', 'SVMPredictionService', 'TextInputTokenizer', 'TEXT_INPUT_PREDICTION_SERVICE_THRESHOLD', function( diff --git a/package-lock.json b/package-lock.json index 0d9cb6e5ce1d..207788e48153 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2086,7 +2086,6 @@ "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", - "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -4134,601 +4133,6 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "optional": 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" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "minipass": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", - "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", - "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "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==", - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", - "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", - "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", - "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "optional": true - }, - "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, - "optional": true - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true, - "optional": 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, - "optional": 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" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true, - "optional": true - }, - "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": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "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, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "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" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", - "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "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 - } - } - }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -7069,13 +6473,6 @@ "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true - }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", From b1b99adc2abb76aa7b48207f3eade1abc775db92 Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Sun, 23 Jun 2019 11:58:55 +0530 Subject: [PATCH 6/9] Fix lint --- .../StoryViewerBackendApiService.ts | 3 +-- .../story-viewer-domain.constants.ts | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts diff --git a/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts b/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts index 8253c698a7b9..f76e6309b5ca 100644 --- a/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts +++ b/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts @@ -18,8 +18,7 @@ require('domain/utilities/UrlInterpolationService.ts'); -oppia.constant( - 'STORY_DATA_URL_TEMPLATE', '/story_data_handler/'); +require('domain/story_viewer/story-viewer-domain.constants.ts'); oppia.factory('StoryViewerBackendApiService', [ '$http', '$q', 'UrlInterpolationService', 'STORY_DATA_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts b/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts new file mode 100644 index 000000000000..5654c5ef0476 --- /dev/null +++ b/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts @@ -0,0 +1,20 @@ +// Copyright 2018 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 Constants for story viewer domain. + */ + +oppia.constant( + 'STORY_DATA_URL_TEMPLATE', '/story_data_handler/'); From b0e253646f56c711bfabfe203bd1be01778a32ae Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Sun, 23 Jun 2019 22:26:51 +0530 Subject: [PATCH 7/9] Fix lint --- .../head/domain/story_viewer/StoryViewerBackendApiService.ts | 4 ---- .../head/domain/story_viewer/story-viewer-domain.constants.ts | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts b/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts index 0c5dc325989f..a0929b60016d 100644 --- a/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts +++ b/core/templates/dev/head/domain/story_viewer/StoryViewerBackendApiService.ts @@ -20,10 +20,6 @@ require('domain/utilities/UrlInterpolationService.ts'); require('domain/story_viewer/story-viewer-domain.constants.ts'); -oppia.constant( - 'STORY_NODE_COMPLETION_URL_TEMPLATE', - '/story_node_completion_handler//'); - oppia.factory('StoryViewerBackendApiService', [ '$http', '$q', 'UrlInterpolationService', 'STORY_DATA_URL_TEMPLATE', 'STORY_NODE_COMPLETION_URL_TEMPLATE', diff --git a/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts b/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts index 5654c5ef0476..078ce97ea934 100644 --- a/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts +++ b/core/templates/dev/head/domain/story_viewer/story-viewer-domain.constants.ts @@ -18,3 +18,7 @@ oppia.constant( 'STORY_DATA_URL_TEMPLATE', '/story_data_handler/'); + +oppia.constant( + 'STORY_NODE_COMPLETION_URL_TEMPLATE', + '/story_node_completion_handler//'); From 012e095675a0cd8e2e7eaad50b5a76a3a64a48d3 Mon Sep 17 00:00:00 2001 From: Yash Jipkate <34203227+YashJipkate@users.noreply.github.com> Date: Mon, 24 Jun 2019 01:23:55 +0530 Subject: [PATCH 8/9] Update CODEOWNERS --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 5afdec7adba9..3dc78b72b772 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -427,7 +427,7 @@ /core/templates/dev/head/pages/profile-page/ @kevinlee12 /core/templates/dev/head/services/UserService*.ts @kevinlee12 -/core/templates/dev/head/services/services.constants.ts @kevinlee12 @seanlip +/core/templates/dev/head/services/services.constants.ts @kevinlee12 # Critical files. # From d48e67efe49329b53389e82ed6e9cd47d10a182b Mon Sep 17 00:00:00 2001 From: YashJipkate Date: Tue, 25 Jun 2019 10:08:09 +0530 Subject: [PATCH 9/9] Revert package lock --- package-lock.json | 603 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 603 insertions(+) diff --git a/package-lock.json b/package-lock.json index 207788e48153..0d9cb6e5ce1d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2086,6 +2086,7 @@ "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", + "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -4133,6 +4134,601 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true, + "optional": 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" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "minipass": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "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==", + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "optional": true + }, + "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, + "optional": true + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "optional": 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, + "optional": 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" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true, + "optional": true + }, + "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": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "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, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "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" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "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 + } + } + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -6473,6 +7069,13 @@ "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",