From e3df916e7b3c729f1c4015c56fab9418d531b071 Mon Sep 17 00:00:00 2001 From: Kyle D McCormick Date: Wed, 29 Apr 2026 12:16:28 -0400 Subject: [PATCH 01/10] temp: fail fast false --- .github/workflows/python-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index b26f2ba2..c0d4b529 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -12,7 +12,7 @@ jobs: name: Run Python Tests and Coverage runs-on: ubuntu-latest strategy: - fail-fast: true + fail-fast: false matrix: python-version: ["3.12"] toxenv: [quality, docs, django42, django52] From 027461d319793815bd3dcdee364aeef46b00c60e Mon Sep 17 00:00:00 2001 From: Kyle D McCormick Date: Tue, 21 Apr 2026 22:16:43 -0400 Subject: [PATCH 02/10] build: Restructure repo & rename to xblocks-core Part of: https://github.com/openedx/xblocks-contrib/issues/237 Part of: https://github.com/openedx/xblocks-contrib/issues/149 --- .coveragerc | 3 +- .gitignore | 3 +- CHANGELOG.rst | 11 +- MANIFEST.in | 25 +- Makefile | 12 +- README.rst | 16 +- catalog-info.yaml | 2 +- docs/Makefile | 8 +- docs/conf.py | 17 +- docs/decisions/0002-pointer-tags-handling.rst | 4 +- docs/index.rst | 6 +- docs/internationalization.rst | 12 +- docs/make.bat | 4 +- docs/testing.rst | 2 +- package-lock.json | 2020 +++++++++++------ package.json | 6 +- setup.py | 40 +- src/xblock_annotatable/.tx/config | 8 + .../xblock_annotatable}/__init__.py | 0 .../xblock_annotatable}/annotatable.py | 2 +- .../conf/locale/__init__.py | 0 .../conf/locale/config.yaml | 0 .../static/css/annotatable.css | 0 .../static/css/annotatable_editor.css | 0 .../static/js/src/annotatable.js | 0 .../static/js/src/annotatable_editor.js | 0 .../templates/annotatable.html | 0 .../templates/annotatable_editor.html | 0 .../tests/test_annotatable.py | 2 +- .../xblock_discussion}/.tx/config | 2 +- .../xblock_discussion}/__init__.py | 0 .../xblock_discussion}/apps.py | 8 +- .../assets/jasmine.common.conf.js | 0 .../xblock_discussion}/assets/karma.conf.js | 0 .../xblock_discussion}/assets/package.json | 0 .../static/css/inline-discussion-rtl.css | 0 .../assets/static/css/inline-discussion.css | 0 .../assets/static/js/common/content.js | 0 .../assets/static/js/common/discussion.js | 0 .../static/js/common/mathjax_include.js | 0 .../models/discussion_course_settings.js | 0 .../js/common/models/discussion_user.js | 0 .../assets/static/js/common/utils.js | 0 .../common/views/discussion_content_view.js | 0 .../js/common/views/discussion_inline_view.js | 0 .../views/discussion_thread_edit_view.js | 0 .../views/discussion_thread_list_view.js | 0 .../views/discussion_thread_profile_view.js | 0 .../views/discussion_thread_show_view.js | 0 .../js/common/views/discussion_thread_view.js | 0 .../views/discussion_topic_menu_view.js | 0 .../static/js/common/views/new_post_view.js | 0 .../views/response_comment_edit_view.js | 0 .../views/response_comment_show_view.js | 0 .../js/common/views/response_comment_view.js | 0 .../common/views/thread_response_edit_view.js | 0 .../common/views/thread_response_show_view.js | 0 .../js/common/views/thread_response_view.js | 0 .../assets/static/js/customwmd.js | 0 .../assets/static/js/discussion_main.js | 0 .../assets/static/js/mathjax_accessible.js | 0 .../static/js/mathjax_delay_renderer.js | 0 .../static/js/vendor/Markdown.Converter.js | 0 .../static/js/vendor/Markdown.Editor.js | 0 .../static/js/vendor/Markdown.Sanitizer.js | 0 .../assets/static/js/vendor/URI.min.js | 0 .../static/js/vendor/jquery.ajaxfileupload.js | 0 .../static/js/vendor/jquery.leanModal.js | 0 .../assets/static/js/vendor/jquery.timeago.js | 0 .../static/js/vendor/jquery.timeago.locale.js | 0 .../static/js/vendor/jquery.truncate.js | 0 .../assets/static/js/vendor/split.js | 0 .../assets/static/spec/content_spec.js | 0 .../static/spec/fixtures/templates.underscore | 0 .../spec_helpers/discussion_spec_helper.js | 0 .../assets/static/spec/spec_helpers/i18n.js | 0 .../assets/static/spec/utils_spec.js | 0 .../spec/view/discussion_content_view_spec.js | 0 .../spec/view/discussion_inline_view_spec.js | 0 .../view/discussion_thread_edit_view_spec.js | 0 .../view/discussion_thread_list_view_spec.js | 0 .../discussion_thread_profile_view_spec.js | 0 .../view/discussion_thread_show_view_spec.js | 0 .../spec/view/discussion_thread_view_spec.js | 0 .../view/discussion_topic_menu_view_spec.js | 0 .../spec/view/discussion_view_spec_helper.js | 0 .../static/spec/view/new_post_view_spec.js | 0 .../view/response_comment_show_view_spec.js | 0 .../spec/view/response_comment_view_spec.js | 0 .../view/thread_response_show_view_spec.js | 0 .../spec/view/thread_response_view_spec.js | 0 .../assets/webpack.common.config.js | 0 .../assets/webpack.dev.config.js | 0 .../assets/webpack.prod.config.js | 0 .../conf/locale/__init__.py | 0 .../conf/locale/config.yaml | 0 .../xblock_discussion}/discussion.py | 2 +- .../templates/_discussion_inline_studio.html | 0 .../_discussion_inline.html | 0 .../_thread_list_template.html | 0 .../_underscore_templates.html | 0 .../discussion_templates/templates.underscore | 0 .../tests/test_discussion.py | 4 +- .../lti => src/xblock_html}/.tx/config | 2 +- .../html => src/xblock_html}/__init__.py | 0 .../xblock_html}/conf/locale/__init__.py | 0 .../xblock_html}/conf/locale/config.yaml | 0 .../html => src/xblock_html}/html.py | 2 +- .../xblock_html}/static/css/html.css | 0 .../templates/html/announcement.yaml | 0 .../templates/html/anon_user_id.yaml | 0 .../xblock_html}/templates/html/iframe.yaml | 0 .../xblock_html}/templates/html/raw.yaml | 0 .../templates/html/zooming_image.yaml | 0 .../xblock_html}/tests/test_html.py | 2 +- .../poll => src/xblock_lti}/.tx/config | 2 +- .../lti => src/xblock_lti}/__init__.py | 0 .../xblock_lti/conf/locale}/__init__.py | 0 .../xblock_lti}/conf/locale/config.yaml | 0 .../lti => src/xblock_lti}/lti.py | 2 +- .../lti => src/xblock_lti}/lti_2_util.py | 0 .../lti => src/xblock_lti}/static/css/lti.css | 0 .../xblock_lti}/static/js/src/lti.js | 0 .../lti => src/xblock_lti}/templates/lti.html | 2 +- .../xblock_lti}/templates/lti_form.html | 0 .../xblock_lti/tests}/__init__.py | 0 .../lti => src/xblock_lti}/tests/helpers.py | 0 .../xblock_lti}/tests/test_lti20_unit.py | 4 +- .../xblock_lti}/tests/test_lti_unit.py | 22 +- {xblock_pdf => src/xblock_pdf}/__init__.py | 0 {xblock_pdf => src/xblock_pdf}/pdf.py | 0 .../xblock_pdf}/static/js/pdf_edit.js | 0 .../xblock_pdf}/static/js/pdf_view.js | 0 .../xblock_pdf}/templates/html/pdf_edit.html | 0 .../xblock_pdf}/templates/html/pdf_view.html | 0 .../xblock_pdf}/tests/test_pdf.py | 0 {xblock_pdf => src/xblock_pdf}/utils.py | 0 .../html => src/xblock_poll}/.tx/config | 2 +- .../poll => src/xblock_poll}/__init__.py | 0 .../xblock_poll/conf/locale}/__init__.py | 0 .../xblock_poll}/conf/locale/config.yaml | 0 .../poll => src/xblock_poll}/poll.py | 2 +- .../xblock_poll}/static/css/poll.css | 0 .../xblock_poll}/static/js/src/poll.js | 0 .../xblock_poll}/templates/poll.html | 0 .../xblock_poll}/tests/test_poll.py | 2 +- .../video => src/xblock_problem}/.tx/config | 2 +- .../xblock_problem}/__init__.py | 0 .../assets/fixtures/checkbox_problem.html | 0 .../assets/fixtures/codeinput_problem.html | 0 .../assets/fixtures/imageinput.html | 0 .../assets/fixtures/imageinput.underscore | 0 .../assets/fixtures/jsinput_problem.html | 0 .../assets/fixtures/matlabinput_problem.html | 0 .../assets/fixtures/problem.html | 0 .../assets/fixtures/problem_content.html | 0 .../assets/fixtures/problem_content_1240.html | 0 .../assets/fixtures/radiobutton_problem.html | 0 .../xblock_problem}/assets/karma.conf.js | 0 .../xblock_problem}/assets/karma_runner.js | 0 .../xblock_problem}/assets/package.json | 0 .../assets/spec/collapsible_spec.js | 0 .../assets/spec/display_spec.js | 0 .../assets/spec/imageinput_spec.js | 0 .../spec_helpers/accessibility_tools.js | 0 .../assets/spec_helpers/add_ajax_prefix.js | 0 .../assets/spec_helpers/ajax_prefix.js | 0 .../assets/spec_helpers/helper.js | 0 .../assets/spec_helpers/i18n.js | 0 .../assets/spec_helpers/jasmine-extensions.js | 0 .../assets/spec_helpers/jasmine-imagediff.js | 0 .../assets/spec_helpers/jasmine-waituntil.js | 0 .../assets/spec_helpers/logger.js | 0 .../assets/static/css/ProblemBlockDisplay.css | 0 .../assets/static/js/.gitignore | 0 .../assets/static/js/collapsible.js | 0 .../assets/static/js/display.js | 0 .../assets/static/js/imageinput.js | 0 .../assets/static/js/javascript_loader.js | 0 .../assets/static/js/schematic.js | 0 .../static/js/vendor/codemirror-compressed.js | 0 .../assets/static/js/xmodule.js | 0 .../xblock_problem}/assets/webpack.config.js | 0 .../assets/webpack.prod.config.js | 0 .../xblock_problem/capa}/__init__.py | 0 .../xblock_problem}/capa/apps.py | 7 +- .../xblock_problem}/capa/capa_problem.py | 18 +- .../xblock_problem}/capa/checker.py | 2 +- .../xblock_problem}/capa/correctmap.py | 0 .../xblock_problem}/capa/customrender.py | 0 .../xblock_problem}/capa/errors.py | 0 .../xblock_problem}/capa/inputtypes.py | 6 +- .../xblock_problem}/capa/registry.py | 0 .../xblock_problem}/capa/responsetypes.py | 6 +- .../xblock_problem}/capa/safe_exec/README.rst | 0 .../capa/safe_exec/__init__.py | 0 .../capa/safe_exec/exceptions.py | 0 .../xblock_problem}/capa/safe_exec/lazymod.py | 0 .../capa/safe_exec/remote_exec.py | 0 .../capa/safe_exec/safe_exec.py | 0 .../capa/safe_exec/tests}/__init__.py | 0 .../tests/test_files/pylib/constant.py | 0 .../capa/safe_exec/tests/test_lazymod.py | 2 +- .../capa/safe_exec/tests/test_remote_exec.py | 2 +- .../capa/safe_exec/tests/test_safe_exec.py | 39 +- .../capa/static/applets/Protex.jar | Bin .../capa/static/applets/genex.jar | Bin .../static/images/vsepr/AX2E0-3D-balls.png | Bin .../static/images/vsepr/AX2E1-3D-balls.png | Bin .../static/images/vsepr/AX2E2-3D-balls.png | Bin .../static/images/vsepr/AX2E3-3D-balls.png | Bin .../static/images/vsepr/AX3E0-3D-balls.png | Bin .../static/images/vsepr/AX3E1-3D-balls.png | Bin .../static/images/vsepr/AX3E2-3D-balls.png | Bin .../static/images/vsepr/AX4E0-3D-balls.png | Bin .../static/images/vsepr/AX4E1-3D-balls.png | Bin .../static/images/vsepr/AX4E2-3D-balls.png | Bin .../static/images/vsepr/AX5E1-3D-balls.png | Bin .../static/images/vsepr/AX5E2-3D-balls.png | Bin .../static/images/vsepr/AX6E0-3D-balls.png | Bin .../static/images/vsepr/AX6E1-3D-balls.png | Bin .../static/images/vsepr/AX7E0-3D-balls.png | Bin .../static/images/vsepr/AX8E0-3D-balls.png | Bin .../static/images/vsepr/AX9E0-3D-balls.png | Bin .../static/images/vsepr/Bent-3D-balls.png | Bin .../static/images/vsepr/Linear-3D-balls.png | Bin .../capa/static/images/vsepr/Linear-stick.png | Bin .../images/vsepr/Octahedral-3D-balls.png | Bin .../static/images/vsepr/Octahedral-stick.png | Bin .../vsepr/Pentagonal-bipyramidal-3D-balls.png | Bin .../vsepr/Pentagonal-planar-3D-balls.png | Bin .../vsepr/Pentagonal-pyramidal-3D-balls.png | Bin .../images/vsepr/Pyramidal-3D-balls.png | Bin .../static/images/vsepr/Seesaw-3D-balls.png | Bin .../vsepr/Square-antiprismatic-3D-balls.png | Bin .../images/vsepr/Square-planar-3D-balls.png | Bin .../static/images/vsepr/T-shaped-3D-balls.png | Bin .../images/vsepr/Tetrahedral-3D-balls.png | Bin .../static/images/vsepr/Tetrahedral-stick.png | Bin .../static/images/vsepr/Trigonal-3D-balls.png | Bin .../vsepr/Trigonal-bipyramidal-3D-balls.png | Bin .../vsepr/Trigonal-bipyramidal-stick.png | Bin .../images/vsepr/Trigonal-planar-stick.png | Bin .../capa/static/js/capa/README | 0 .../capa/static/js/capa/annotationinput.js | 0 .../js/capa/chemical_equation_preview.js | 0 .../capa/static/js/capa/choicetextinput.js | 0 .../capa/static/js/capa/design-protein-2d.js | 0 .../capa/static/js/capa/drag_and_drop.js | 0 .../js/capa/drag_and_drop/base_image.js | 0 .../js/capa/drag_and_drop/config_parser.js | 0 .../static/js/capa/drag_and_drop/container.js | 0 .../js/capa/drag_and_drop/draggable_events.js | 0 .../js/capa/drag_and_drop/draggable_logic.js | 0 .../js/capa/drag_and_drop/draggables.js | 0 .../capa/static/js/capa/drag_and_drop/main.js | 0 .../static/js/capa/drag_and_drop/scroller.js | 0 .../static/js/capa/drag_and_drop/state.js | 0 .../static/js/capa/drag_and_drop/targets.js | 0 .../js/capa/drag_and_drop/update_input.js | 0 .../capa/static/js/capa/edit-a-gene.js | 0 .../capa/static/js/capa/fixtures/jsinput.html | 0 ...1B31BA00E7CE7B6BD63DD13A8586A45.cache.html | 0 ...3308EE54E8033A708B414CAC05B0C32.cache.html | 0 ...AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html | 0 ...B4F4D4EFA24CDE2E4287CC07897F249.cache.html | 0 ...069AC107D79C29D6237614AC340F0C0.cache.html | 0 ...6220FCC8B9234FEAD8D826A73C6D2A4.cache.html | 0 .../capa/static/js/capa/genex/clear.cache.gif | Bin .../capa/static/js/capa/genex/genex.css | 0 .../static/js/capa/genex/genex.nocache.js | 0 .../capa/static/js/capa/genex/hosted.html | 0 .../static/js/capa/genex/images/circles.png | Bin .../js/capa/genex/images/circles_ie6.png | Bin .../static/js/capa/genex/images/corner.png | Bin .../js/capa/genex/images/corner_ie6.png | Bin .../static/js/capa/genex/images/hborder.png | Bin .../js/capa/genex/images/hborder_ie6.png | Bin .../js/capa/genex/images/thumb_horz.png | Bin .../js/capa/genex/images/thumb_vertical.png | Bin .../static/js/capa/genex/images/vborder.png | Bin .../js/capa/genex/images/vborder_ie6.png | Bin .../js/capa/jsinput/jsinput_example.css | 0 .../js/capa/jsinput/jsinput_example.html | 0 .../static/js/capa/jsinput/jsinput_example.js | 0 ...9CC89519B0E1FCB47B935AC9FE13D7B.cache.html | 0 ...E05B1CD5BFCAF7D53C7C64D84318178.cache.html | 0 ...824A958AB642DC2213DFFDAC640BEAA.cache.html | 0 ...9267DE8FB02F8B995B4A58C66C76E29.cache.html | 0 ...275492F7098103BCB05F4F86ABF6218.cache.html | 0 ...3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html | 0 .../static/js/capa/protex/clear.cache.gif | Bin .../capa/static/js/capa/protex/hosted.html | 0 .../capa/static/js/capa/protex/protex.css | 0 .../static/js/capa/protex/protex.nocache.js | 0 .../js/capa/protex/scrollTableLoading.gif | Bin .../capa/static/js/capa/schematicinput.js | 0 .../spec/formula_equation_preview_spec.js | 0 .../capa/static/js/capa/spec/jsinput_spec.js | 0 .../js/capa/src/formula_equation_preview.js | 0 .../capa/static/js/capa/src/jschannel.js | 0 .../capa/static/js/capa/src/jsinput.js | 0 .../js/capa/symbolic_mathjax_preprocessor.js | 0 .../static/js/vendor/CodeMirror/octave.js | 0 .../capa/templates/annotationinput.html | 0 .../capa/templates/chemicalequationinput.html | 0 .../capa/templates/choicegroup.html | 0 .../capa/templates/choicetext.html | 0 .../capa/templates/clarification.html | 0 .../capa/templates/codeinput.html | 0 .../capa/templates/crystallography.html | 0 .../capa/templates/designprotein2dinput.html | 0 .../capa/templates/drag_and_drop_input.html | 0 .../capa/templates/editageneinput.html | 0 .../capa/templates/editamolecule.html | 0 .../capa/templates/filesubmission.html | 0 .../capa/templates/formulaequationinput.html | 0 .../capa/templates/imageinput.html | 0 .../capa/templates/jsinput.html | 0 .../capa/templates/mathstring.html | 0 .../capa/templates/matlabinput.html | 0 .../capa/templates/optioninput.html | 0 .../capa/templates/problem.html | 0 .../capa/templates/problem_ajax.html | 0 .../capa/templates/problem_notifications.html | 0 .../capa/templates/schematicinput.html | 0 .../capa/templates/solutionspan.html | 0 .../capa/templates/status_span.html | 0 .../capa/templates/textline.html | 0 .../capa/templates/vsepr_input.html | 0 .../xblock_problem/capa}/tests/__init__.py | 0 .../xblock_problem}/capa/tests/helpers.py | 4 +- .../capa/tests/response_xml_factory.py | 0 .../capa/tests/test_answer_pool.py | 4 +- .../capa/tests/test_capa_problem.py | 10 +- .../capa/tests/test_correctmap.py | 2 +- .../capa/tests/test_customrender.py | 4 +- .../xblock_problem}/capa/tests/test_errors.py | 2 +- .../capa/tests/test_files/dynamath_input.txt | 0 .../capa/tests/test_files/extended_hints.xml | 0 .../test_files/extended_hints_checkbox.xml | 0 .../test_files/extended_hints_dropdown.xml | 0 .../extended_hints_multiple_choice.xml | 0 ...tended_hints_multiple_choice_with_html.xml | 0 .../extended_hints_numeric_input.xml | 0 .../test_files/extended_hints_text_input.xml | 0 .../test_files/extended_hints_with_errors.xml | 0 .../test_files/filename_convert_test.txt | 0 .../test_files/js/mersenne-twister-min.js | 0 .../test_files/js/test_problem_display.js | 0 .../test_files/js/test_problem_generator.js | 0 .../test_files/js/test_problem_grader.js | 0 .../capa/tests/test_files/js/xproblem.js | 0 .../tests/test_files/snuggletex_2x+3y.xml | 0 .../tests/test_files/snuggletex_correct.html | 0 .../tests/test_files/snuggletex_wrong.html | 0 .../tests/test_files/snuggletex_x+x+3y.xml | 0 .../tests/test_files/targeted_feedback.xml | 0 .../test_files/targeted_feedback_multiple.xml | 0 .../capa/tests/test_hint_functionality.py | 2 +- .../capa/tests/test_html_render.py | 6 +- .../capa/tests/test_input_templates.py | 8 +- .../capa/tests/test_inputtypes.py | 34 +- .../capa/tests/test_responsetypes.py | 22 +- .../capa/tests/test_shuffle.py | 4 +- .../capa/tests/test_targeted_feedback.py | 2 +- .../xblock_problem}/capa/tests/test_util.py | 4 +- .../capa/tests/test_xqueue_interface.py | 6 +- .../capa/tests/test_xqueue_submission.py | 2 +- .../xblock_problem}/capa/util.py | 2 +- .../xblock_problem}/capa/xqueue_interface.py | 4 +- .../xblock_problem}/capa/xqueue_submission.py | 2 +- .../xblock_problem}/capa_block.py | 16 +- .../xblock_problem/conf/locale}/__init__.py | 0 .../xblock_problem}/conf/locale/config.yaml | 0 .../problem => src/xblock_problem}/markup.py | 2 +- .../xblock_problem}/stringify.py | 0 .../xblock_problem}/tests/__init__.py | 7 +- .../xblock_problem}/tests/data/capa/prog1.py | 0 .../xblock_problem}/tests/data/capa/prog2.py | 0 .../xblock_problem}/tests/data/capa/prog3.py | 0 .../xblock_problem}/tests/test_capa_block.py | 132 +- .../xblock_problem}/tests/test_stringify.py | 2 +- .../xblock_problem}/xmlparser.py | 0 src/xblock_video/.tx/config | 8 + .../video => src/xblock_video}/__init__.py | 0 .../xblock_video}/ajax_handler_mixin.py | 0 .../xblock_video}/assets/css/video.css | 0 .../assets/jasmine.common.conf.js | 0 .../assets/jasmine_stack_trace.js | 0 .../assets/js/src/00_async_process.js | 0 .../assets/js/src/00_component.js | 0 .../xblock_video}/assets/js/src/00_i18n.js | 0 .../assets/js/src/00_iterator.js | 0 .../xblock_video}/assets/js/src/00_resizer.js | 0 .../xblock_video}/assets/js/src/00_sjson.js | 0 .../assets/js/src/00_video_storage.js | 0 .../assets/js/src/01_initialize.js | 0 .../assets/js/src/025_focus_grabber.js | 0 .../assets/js/src/02_html5_hls_video.js | 0 .../assets/js/src/02_html5_video.js | 0 .../js/src/035_video_accessible_menu.js | 0 .../assets/js/src/036_video_social_sharing.js | 0 .../js/src/037_video_transcript_feedback.js | 0 .../assets/js/src/03_video_player.js | 0 .../assets/js/src/04_video_control.js | 0 .../assets/js/src/04_video_full_screen.js | 0 .../assets/js/src/05_video_quality_control.js | 0 .../assets/js/src/06_video_progress_slider.js | 0 .../assets/js/src/07_video_volume_control.js | 0 .../js/src/08_video_auto_advance_control.js | 0 .../assets/js/src/08_video_speed_control.js | 0 .../assets/js/src/095_video_context_menu.js | 0 .../xblock_video}/assets/js/src/09_bumper.js | 0 .../assets/js/src/09_completion.js | 0 .../assets/js/src/09_events_bumper_plugin.js | 0 .../assets/js/src/09_events_plugin.js | 0 .../assets/js/src/09_play_pause_control.js | 0 .../assets/js/src/09_play_placeholder.js | 0 .../assets/js/src/09_play_skip_control.js | 0 .../xblock_video}/assets/js/src/09_poster.js | 0 .../assets/js/src/09_save_state_plugin.js | 0 .../assets/js/src/09_skip_control.js | 0 .../assets/js/src/09_video_caption.js | 0 .../assets/js/src/10_commands.js | 0 .../xblock_video}/assets/js/src/10_main.js | 0 .../assets/js/src/utils/add_ajax_prefix.js | 0 .../assets/js/src/utils/ajax_prefix.js | 0 .../assets/js/src/utils/logger.js | 0 .../xblock_video}/assets/js/src/utils/time.js | 0 .../assets/js/src/vendor/jquery-ui.min.js | 0 .../assets/js/src/vendor/jquery.js | 0 .../xblock_video}/assets/karma.conf.js | 0 .../assets/karma.webpack.entry.js | 0 .../xblock_video}/assets/package.json | 0 .../assets/webpack.common.config.js | 0 .../assets/webpack.dev.config.js | 0 .../assets/webpack.prod.config.js | 0 .../xblock_video}/bumper_utils.py | 0 .../video => src/xblock_video}/cache_utils.py | 0 .../xblock_video}/conf/locale/__init__.py | 0 .../xblock_video}/conf/locale/config.yaml | 0 .../video => src/xblock_video}/constants.py | 0 .../video => src/xblock_video}/exceptions.py | 0 .../video => src/xblock_video}/mixin.py | 0 .../xblock_video}/studio_metadata_mixin.py | 6 +- .../xblock_video}/templates/video.html | 2 +- .../xblock_video}/tests/__init__.py | 2 +- .../XXXXXXXXT114-V015600_0_.m3u8 | 0 .../XXXXXXXXT114-V015600_0_0.ts | Bin .../XXXXXXXXT114-V015600_0_1.ts | Bin .../XXXXXXXXT114-V015600_0_2.ts | Bin .../XXXXXXXXT114-V015600_1_.m3u8 | 0 .../XXXXXXXXT114-V015600_1_0.ts | Bin .../XXXXXXXXT114-V015600_1_1.ts | Bin .../XXXXXXXXT114-V015600_1_2.ts | Bin .../XXXXXXXXT114-V015600_2_.m3u8 | 0 .../XXXXXXXXT114-V015600_2_0.ts | Bin .../XXXXXXXXT114-V015600_2_1.ts | Bin .../XXXXXXXXT114-V015600_2_2.ts | Bin .../XXXXXXXXT114-V015600_3_.m3u8 | 0 .../XXXXXXXXT114-V015600_3_0.ts | Bin .../XXXXXXXXT114-V015600_3_1.ts | Bin .../XXXXXXXXT114-V015600_3_2.ts | Bin .../XXXXXXXXT114-V015600_4_.m3u8 | 0 .../XXXXXXXXT114-V015600_4_0.ts | Bin .../XXXXXXXXT114-V015600_4_1.ts | Bin .../XXXXXXXXT114-V015600_4_2.ts | Bin .../xblock_video}/tests/fixtures/hls/hls.m3u8 | 0 .../xblock_video}/tests/fixtures/play.png | Bin .../xblock_video}/tests/fixtures/poster.jpg | Bin .../xblock_video}/tests/fixtures/poster.png | Bin .../tests/fixtures/sequence.html | 0 .../tests/fixtures/tabs-edit.html | 0 .../xblock_video}/tests/fixtures/test.mp4 | Bin .../xblock_video}/tests/fixtures/test.ogv | Bin .../xblock_video}/tests/fixtures/test.webm | Bin .../xblock_video}/tests/fixtures/video.html | 0 .../tests/fixtures/video_all.html | 0 .../tests/fixtures/video_autoadvance.html | 0 .../fixtures/video_autoadvance_disabled.html | 0 .../tests/fixtures/video_hls.html | 0 .../tests/fixtures/video_html5.html | 0 .../tests/fixtures/video_no_captions.html | 0 .../fixtures/video_transcript_feedback.html | 0 .../tests/fixtures/video_with_bumper.html | 0 .../tests/fixtures/video_yt_multiple.html | 0 .../tests/fixtures/youtube_iframe_api.js | 0 .../video => src/xblock_video}/tests/i18n.js | 0 .../tests/js/async_process_spec.js | 0 .../xblock_video}/tests/js/completion_spec.js | 0 .../xblock_video}/tests/js/events_spec.js | 0 .../xblock_video}/tests/js/general_spec.js | 0 .../tests/js/html5_video_spec.js | 0 .../xblock_video}/tests/js/initialize_spec.js | 0 .../xblock_video}/tests/js/iterator_spec.js | 0 .../xblock_video}/tests/js/resizer_spec.js | 0 .../xblock_video}/tests/js/sjson_spec.js | 0 .../tests/js/social_share_spec.js | 0 .../xblock_video}/tests/js/time_spec.js | 0 .../tests/js/video_autoadvance_spec.js | 0 .../tests/js/video_bumper_spec.js | 0 .../tests/js/video_caption_spec.js | 0 .../tests/js/video_context_menu_spec.js | 0 .../tests/js/video_control_spec.js | 0 .../js/video_events_bumper_plugin_spec.js | 0 .../tests/js/video_events_plugin_spec.js | 0 .../tests/js/video_focus_grabber_spec.js | 0 .../tests/js/video_full_screen_spec.js | 0 .../tests/js/video_play_pause_control_spec.js | 0 .../tests/js/video_play_placeholder_spec.js | 0 .../tests/js/video_play_skip_control_spec.js | 0 .../tests/js/video_player_spec.js | 0 .../tests/js/video_poster_spec.js | 0 .../tests/js/video_progress_slider_spec.js | 0 .../tests/js/video_quality_control_spec.js | 0 .../tests/js/video_save_state_plugin_spec.js | 0 .../tests/js/video_skip_control_spec.js | 0 .../tests/js/video_speed_control_spec.js | 0 .../tests/js/video_storage_spec.js | 0 .../js/video_transcript_feedback_spec.js | 0 .../tests/js/video_volume_control_spec.js | 0 .../tests/spec_helpers/helper.js | 0 .../tests/spec_helpers/jasmine-extensions.js | 0 .../tests/spec_helpers/jasmine-stealth.js | 0 .../tests/spec_helpers/jasmine-waituntil.js | 0 .../tests/spec_helpers/page_helpers.js | 0 .../tests/spec_helpers/template_helpers.js | 0 .../spec_helpers/vertical_student_view.js | 0 .../tests/spec_helpers/video_helper.js | 0 .../tests/spec_helpers/view_helpers.js | 0 .../tests/spec_helpers/xmodule_spec.js | 0 .../xblock_video}/tests/test_utils.py | 0 .../xblock_video}/tests/test_video.py | 32 +- .../tests/views/bookmark_button.js | 0 .../tests/views/message_banner.js | 0 .../video => src/xblock_video}/validation.py | 0 .../video => src/xblock_video}/video.py | 33 +- .../xblock_video}/video_handlers.py | 6 +- .../video_static_content_utils.py | 0 .../xblock_video}/video_transcripts_utils.py | 6 +- .../video => src/xblock_video}/video_utils.py | 0 .../xblock_video}/video_xfields.py | 0 src/xblock_word_cloud/.tx/config | 8 + .../xblock_word_cloud}/__init__.py | 0 .../conf/locale/__init__.py | 0 .../conf/locale/config.yaml | 0 .../static/css/word_cloud.css | 0 .../static/js/src/d3.layout.cloud.js | 0 .../static/js/src/d3.min.js | 0 .../static/js/src/html_utils.js | 0 .../static/js/src/word_cloud.js | 0 .../templates/word_cloud.html | 2 +- .../xblock_word_cloud/tests}/__init__.py | 0 .../tests/test_word_cloud.py | 2 +- .../xblock_word_cloud}/word_cloud.py | 2 +- src/xblocks_core/__init__.py | 11 + src/xblocks_core/legacy_utils/__init__.py | 6 + .../xblocks_core}/legacy_utils/xml_utils.py | 2 +- test_settings.py | 6 +- tox.ini | 18 +- xblocks_contrib/__init__.py | 12 - xblocks_contrib/annotatable/.tx/config | 8 - xblocks_contrib/discussion/.tx/config | 8 - xblocks_contrib/word_cloud/.tx/config | 8 - xblocks_contrib/word_cloud/tests/__init__.py | 0 566 files changed, 1714 insertions(+), 1104 deletions(-) create mode 100644 src/xblock_annotatable/.tx/config rename {xblocks_contrib/annotatable => src/xblock_annotatable}/__init__.py (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/annotatable.py (99%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/conf/locale/__init__.py (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/conf/locale/config.yaml (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/static/css/annotatable.css (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/static/css/annotatable_editor.css (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/static/js/src/annotatable.js (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/static/js/src/annotatable_editor.js (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/templates/annotatable.html (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/templates/annotatable_editor.html (100%) rename {xblocks_contrib/annotatable => src/xblock_annotatable}/tests/test_annotatable.py (98%) rename {xblocks_contrib/problem => src/xblock_discussion}/.tx/config (74%) rename {xblocks_contrib/discussion => src/xblock_discussion}/__init__.py (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/apps.py (89%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/jasmine.common.conf.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/karma.conf.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/package.json (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/css/inline-discussion-rtl.css (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/css/inline-discussion.css (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/content.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/discussion.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/mathjax_include.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/models/discussion_course_settings.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/models/discussion_user.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/utils.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_content_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_inline_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_thread_edit_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_thread_list_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_thread_profile_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_thread_show_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_thread_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/discussion_topic_menu_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/new_post_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/response_comment_edit_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/response_comment_show_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/response_comment_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/thread_response_edit_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/thread_response_show_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/common/views/thread_response_view.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/customwmd.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/discussion_main.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/mathjax_accessible.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/mathjax_delay_renderer.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/Markdown.Converter.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/Markdown.Editor.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/Markdown.Sanitizer.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/URI.min.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/jquery.ajaxfileupload.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/jquery.leanModal.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/jquery.timeago.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/jquery.timeago.locale.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/jquery.truncate.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/js/vendor/split.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/content_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/fixtures/templates.underscore (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/spec_helpers/discussion_spec_helper.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/spec_helpers/i18n.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/utils_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_content_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_inline_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_thread_edit_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_thread_list_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_thread_profile_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_thread_show_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_thread_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_topic_menu_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/discussion_view_spec_helper.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/new_post_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/response_comment_show_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/response_comment_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/thread_response_show_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/static/spec/view/thread_response_view_spec.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/webpack.common.config.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/webpack.dev.config.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/assets/webpack.prod.config.js (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/conf/locale/__init__.py (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/conf/locale/config.yaml (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/discussion.py (99%) rename {xblocks_contrib/discussion => src/xblock_discussion}/templates/_discussion_inline_studio.html (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/templates/discussion_templates/_discussion_inline.html (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/templates/discussion_templates/_thread_list_template.html (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/templates/discussion_templates/_underscore_templates.html (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/templates/discussion_templates/templates.underscore (100%) rename {xblocks_contrib/discussion => src/xblock_discussion}/tests/test_discussion.py (98%) rename {xblocks_contrib/lti => src/xblock_html}/.tx/config (75%) rename {xblocks_contrib/html => src/xblock_html}/__init__.py (100%) rename {xblocks_contrib/html => src/xblock_html}/conf/locale/__init__.py (100%) rename {xblocks_contrib/html => src/xblock_html}/conf/locale/config.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/html.py (99%) rename {xblocks_contrib/html => src/xblock_html}/static/css/html.css (100%) rename {xblocks_contrib/html => src/xblock_html}/templates/html/announcement.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/templates/html/anon_user_id.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/templates/html/iframe.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/templates/html/raw.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/templates/html/zooming_image.yaml (100%) rename {xblocks_contrib/html => src/xblock_html}/tests/test_html.py (99%) rename {xblocks_contrib/poll => src/xblock_lti}/.tx/config (75%) rename {xblocks_contrib/lti => src/xblock_lti}/__init__.py (100%) rename {xblocks_contrib/legacy_utils => src/xblock_lti/conf/locale}/__init__.py (100%) rename {xblocks_contrib/lti => src/xblock_lti}/conf/locale/config.yaml (100%) rename {xblocks_contrib/lti => src/xblock_lti}/lti.py (99%) rename {xblocks_contrib/lti => src/xblock_lti}/lti_2_util.py (100%) rename {xblocks_contrib/lti => src/xblock_lti}/static/css/lti.css (100%) rename {xblocks_contrib/lti => src/xblock_lti}/static/js/src/lti.js (100%) rename {xblocks_contrib/lti => src/xblock_lti}/templates/lti.html (98%) rename {xblocks_contrib/lti => src/xblock_lti}/templates/lti_form.html (100%) rename {xblocks_contrib/lti/conf/locale => src/xblock_lti/tests}/__init__.py (100%) rename {xblocks_contrib/lti => src/xblock_lti}/tests/helpers.py (100%) rename {xblocks_contrib/lti => src/xblock_lti}/tests/test_lti20_unit.py (99%) rename {xblocks_contrib/lti => src/xblock_lti}/tests/test_lti_unit.py (96%) rename {xblock_pdf => src/xblock_pdf}/__init__.py (100%) rename {xblock_pdf => src/xblock_pdf}/pdf.py (100%) rename {xblock_pdf => src/xblock_pdf}/static/js/pdf_edit.js (100%) rename {xblock_pdf => src/xblock_pdf}/static/js/pdf_view.js (100%) rename {xblock_pdf => src/xblock_pdf}/templates/html/pdf_edit.html (100%) rename {xblock_pdf => src/xblock_pdf}/templates/html/pdf_view.html (100%) rename {xblock_pdf => src/xblock_pdf}/tests/test_pdf.py (100%) rename {xblock_pdf => src/xblock_pdf}/utils.py (100%) rename {xblocks_contrib/html => src/xblock_poll}/.tx/config (75%) rename {xblocks_contrib/poll => src/xblock_poll}/__init__.py (100%) rename {xblocks_contrib/lti/tests => src/xblock_poll/conf/locale}/__init__.py (100%) rename {xblocks_contrib/poll => src/xblock_poll}/conf/locale/config.yaml (100%) rename {xblocks_contrib/poll => src/xblock_poll}/poll.py (99%) rename {xblocks_contrib/poll => src/xblock_poll}/static/css/poll.css (100%) rename {xblocks_contrib/poll => src/xblock_poll}/static/js/src/poll.js (100%) rename {xblocks_contrib/poll => src/xblock_poll}/templates/poll.html (100%) rename {xblocks_contrib/poll => src/xblock_poll}/tests/test_poll.py (98%) rename {xblocks_contrib/video => src/xblock_problem}/.tx/config (74%) rename {xblocks_contrib/problem => src/xblock_problem}/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/checkbox_problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/codeinput_problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/imageinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/imageinput.underscore (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/jsinput_problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/matlabinput_problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/problem_content.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/problem_content_1240.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/fixtures/radiobutton_problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/karma.conf.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/karma_runner.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/package.json (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec/collapsible_spec.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec/display_spec.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec/imageinput_spec.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/accessibility_tools.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/add_ajax_prefix.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/ajax_prefix.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/helper.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/i18n.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/jasmine-extensions.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/jasmine-imagediff.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/jasmine-waituntil.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/spec_helpers/logger.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/css/ProblemBlockDisplay.css (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/.gitignore (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/collapsible.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/display.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/imageinput.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/javascript_loader.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/schematic.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/vendor/codemirror-compressed.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/static/js/xmodule.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/webpack.config.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/assets/webpack.prod.config.js (100%) rename {xblocks_contrib/poll/conf/locale => src/xblock_problem/capa}/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/apps.py (90%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/capa_problem.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/checker.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/correctmap.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/customrender.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/errors.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/inputtypes.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/registry.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/responsetypes.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/README.rst (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/exceptions.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/lazymod.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/remote_exec.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/safe_exec.py (100%) rename {xblocks_contrib/problem/capa => src/xblock_problem/capa/safe_exec/tests}/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/tests/test_files/pylib/constant.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/tests/test_lazymod.py (97%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/tests/test_remote_exec.py (92%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/safe_exec/tests/test_safe_exec.py (94%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/applets/Protex.jar (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/applets/genex.jar (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX2E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX2E1-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX2E2-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX2E3-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX3E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX3E1-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX3E2-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX4E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX4E1-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX4E2-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX5E1-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX5E2-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX6E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX6E1-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX7E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX8E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/AX9E0-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Bent-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Linear-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Linear-stick.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Octahedral-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Octahedral-stick.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Pentagonal-bipyramidal-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Pentagonal-planar-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Pentagonal-pyramidal-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Pyramidal-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Seesaw-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Square-antiprismatic-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Square-planar-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/T-shaped-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Tetrahedral-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Tetrahedral-stick.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Trigonal-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Trigonal-bipyramidal-3D-balls.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Trigonal-bipyramidal-stick.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/images/vsepr/Trigonal-planar-stick.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/README (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/annotationinput.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/chemical_equation_preview.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/choicetextinput.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/design-protein-2d.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/base_image.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/config_parser.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/container.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/draggable_events.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/draggable_logic.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/draggables.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/main.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/scroller.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/state.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/targets.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/drag_and_drop/update_input.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/edit-a-gene.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/fixtures/jsinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/21B31BA00E7CE7B6BD63DD13A8586A45.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/63308EE54E8033A708B414CAC05B0C32.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/7AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/9B4F4D4EFA24CDE2E4287CC07897F249.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/A069AC107D79C29D6237614AC340F0C0.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/C6220FCC8B9234FEAD8D826A73C6D2A4.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/clear.cache.gif (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/genex.css (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/genex.nocache.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/hosted.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/circles.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/circles_ie6.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/corner.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/corner_ie6.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/hborder.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/hborder_ie6.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/thumb_horz.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/thumb_vertical.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/vborder.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/genex/images/vborder_ie6.png (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/jsinput/jsinput_example.css (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/jsinput/jsinput_example.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/jsinput/jsinput_example.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/39CC89519B0E1FCB47B935AC9FE13D7B.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/6E05B1CD5BFCAF7D53C7C64D84318178.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/C824A958AB642DC2213DFFDAC640BEAA.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/D9267DE8FB02F8B995B4A58C66C76E29.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/F275492F7098103BCB05F4F86ABF6218.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/F3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/clear.cache.gif (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/hosted.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/protex.css (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/protex.nocache.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/protex/scrollTableLoading.gif (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/schematicinput.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/spec/formula_equation_preview_spec.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/spec/jsinput_spec.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/src/formula_equation_preview.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/src/jschannel.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/src/jsinput.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/capa/symbolic_mathjax_preprocessor.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/static/js/vendor/CodeMirror/octave.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/annotationinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/chemicalequationinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/choicegroup.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/choicetext.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/clarification.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/codeinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/crystallography.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/designprotein2dinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/drag_and_drop_input.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/editageneinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/editamolecule.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/filesubmission.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/formulaequationinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/imageinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/jsinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/mathstring.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/matlabinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/optioninput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/problem.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/problem_ajax.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/problem_notifications.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/schematicinput.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/solutionspan.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/status_span.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/textline.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/templates/vsepr_input.html (100%) rename {xblocks_contrib/problem/capa/safe_exec => src/xblock_problem/capa}/tests/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/helpers.py (96%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/response_xml_factory.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_answer_pool.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_capa_problem.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_correctmap.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_customrender.py (95%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_errors.py (97%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/dynamath_input.txt (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_checkbox.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_dropdown.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_multiple_choice.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_multiple_choice_with_html.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_numeric_input.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_text_input.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/extended_hints_with_errors.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/filename_convert_test.txt (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/js/mersenne-twister-min.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/js/test_problem_display.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/js/test_problem_generator.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/js/test_problem_grader.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/js/xproblem.js (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/snuggletex_2x+3y.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/snuggletex_correct.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/snuggletex_wrong.html (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/snuggletex_x+x+3y.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/targeted_feedback.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_files/targeted_feedback_multiple.xml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_hint_functionality.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_html_render.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_input_templates.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_inputtypes.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_responsetypes.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_shuffle.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_targeted_feedback.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_util.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_xqueue_interface.py (90%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/tests/test_xqueue_submission.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/util.py (99%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/xqueue_interface.py (97%) rename {xblocks_contrib/problem => src/xblock_problem}/capa/xqueue_submission.py (98%) rename {xblocks_contrib/problem => src/xblock_problem}/capa_block.py (99%) rename {xblocks_contrib/problem/capa/tests => src/xblock_problem/conf/locale}/__init__.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/conf/locale/config.yaml (100%) rename {xblocks_contrib/problem => src/xblock_problem}/markup.py (93%) rename {xblocks_contrib/problem => src/xblock_problem}/stringify.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/__init__.py (97%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/data/capa/prog1.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/data/capa/prog2.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/data/capa/prog3.py (100%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/test_capa_block.py (96%) rename {xblocks_contrib/problem => src/xblock_problem}/tests/test_stringify.py (95%) rename {xblocks_contrib/problem => src/xblock_problem}/xmlparser.py (100%) create mode 100644 src/xblock_video/.tx/config rename {xblocks_contrib/video => src/xblock_video}/__init__.py (100%) rename {xblocks_contrib/video => src/xblock_video}/ajax_handler_mixin.py (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/css/video.css (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/jasmine.common.conf.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/jasmine_stack_trace.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_async_process.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_component.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_i18n.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_iterator.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_resizer.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_sjson.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/00_video_storage.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/01_initialize.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/025_focus_grabber.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/02_html5_hls_video.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/02_html5_video.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/035_video_accessible_menu.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/036_video_social_sharing.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/037_video_transcript_feedback.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/03_video_player.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/04_video_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/04_video_full_screen.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/05_video_quality_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/06_video_progress_slider.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/07_video_volume_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/08_video_auto_advance_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/08_video_speed_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/095_video_context_menu.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_bumper.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_completion.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_events_bumper_plugin.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_events_plugin.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_play_pause_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_play_placeholder.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_play_skip_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_poster.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_save_state_plugin.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_skip_control.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/09_video_caption.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/10_commands.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/10_main.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/utils/add_ajax_prefix.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/utils/ajax_prefix.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/utils/logger.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/utils/time.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/vendor/jquery-ui.min.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/js/src/vendor/jquery.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/karma.conf.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/karma.webpack.entry.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/package.json (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/webpack.common.config.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/webpack.dev.config.js (100%) rename {xblocks_contrib/video => src/xblock_video}/assets/webpack.prod.config.js (100%) rename {xblocks_contrib/video => src/xblock_video}/bumper_utils.py (100%) rename {xblocks_contrib/video => src/xblock_video}/cache_utils.py (100%) rename {xblocks_contrib/problem => src/xblock_video}/conf/locale/__init__.py (100%) rename {xblocks_contrib/video => src/xblock_video}/conf/locale/config.yaml (100%) rename {xblocks_contrib/video => src/xblock_video}/constants.py (100%) rename {xblocks_contrib/video => src/xblock_video}/exceptions.py (100%) rename {xblocks_contrib/video => src/xblock_video}/mixin.py (100%) rename {xblocks_contrib/video => src/xblock_video}/studio_metadata_mixin.py (96%) rename {xblocks_contrib/video => src/xblock_video}/templates/video.html (99%) rename {xblocks_contrib/video => src/xblock_video}/tests/__init__.py (66%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_0.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_1.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_2.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_0.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_1.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_2.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_0.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_1.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_2.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_0.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_1.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_2.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_0.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_1.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_2.ts (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/hls/hls.m3u8 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/play.png (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/poster.jpg (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/poster.png (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/sequence.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/tabs-edit.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/test.mp4 (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/test.ogv (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/test.webm (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_all.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_autoadvance.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_autoadvance_disabled.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_hls.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_html5.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_no_captions.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_transcript_feedback.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_with_bumper.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/video_yt_multiple.html (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/fixtures/youtube_iframe_api.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/i18n.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/async_process_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/completion_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/events_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/general_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/html5_video_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/initialize_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/iterator_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/resizer_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/sjson_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/social_share_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/time_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_autoadvance_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_bumper_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_caption_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_context_menu_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_events_bumper_plugin_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_events_plugin_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_focus_grabber_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_full_screen_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_play_pause_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_play_placeholder_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_play_skip_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_player_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_poster_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_progress_slider_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_quality_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_save_state_plugin_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_skip_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_speed_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_storage_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_transcript_feedback_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/js/video_volume_control_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/helper.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/jasmine-extensions.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/jasmine-stealth.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/jasmine-waituntil.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/page_helpers.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/template_helpers.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/vertical_student_view.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/video_helper.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/view_helpers.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/spec_helpers/xmodule_spec.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/test_utils.py (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/test_video.py (97%) rename {xblocks_contrib/video => src/xblock_video}/tests/views/bookmark_button.js (100%) rename {xblocks_contrib/video => src/xblock_video}/tests/views/message_banner.js (100%) rename {xblocks_contrib/video => src/xblock_video}/validation.py (100%) rename {xblocks_contrib/video => src/xblock_video}/video.py (98%) rename {xblocks_contrib/video => src/xblock_video}/video_handlers.py (98%) rename {xblocks_contrib/video => src/xblock_video}/video_static_content_utils.py (100%) rename {xblocks_contrib/video => src/xblock_video}/video_transcripts_utils.py (97%) rename {xblocks_contrib/video => src/xblock_video}/video_utils.py (100%) rename {xblocks_contrib/video => src/xblock_video}/video_xfields.py (100%) create mode 100644 src/xblock_word_cloud/.tx/config rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/__init__.py (100%) rename {xblocks_contrib/video => src/xblock_word_cloud}/conf/locale/__init__.py (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/conf/locale/config.yaml (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/static/css/word_cloud.css (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/static/js/src/d3.layout.cloud.js (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/static/js/src/d3.min.js (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/static/js/src/html_utils.js (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/static/js/src/word_cloud.js (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/templates/word_cloud.html (97%) rename {xblocks_contrib/word_cloud/conf/locale => src/xblock_word_cloud/tests}/__init__.py (100%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/tests/test_word_cloud.py (98%) rename {xblocks_contrib/word_cloud => src/xblock_word_cloud}/word_cloud.py (99%) create mode 100644 src/xblocks_core/__init__.py create mode 100644 src/xblocks_core/legacy_utils/__init__.py rename {xblocks_contrib => src/xblocks_core}/legacy_utils/xml_utils.py (99%) delete mode 100644 xblocks_contrib/__init__.py delete mode 100644 xblocks_contrib/annotatable/.tx/config delete mode 100644 xblocks_contrib/discussion/.tx/config delete mode 100644 xblocks_contrib/word_cloud/.tx/config delete mode 100644 xblocks_contrib/word_cloud/tests/__init__.py diff --git a/.coveragerc b/.coveragerc index e65876aa..9df928f1 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,5 +1,4 @@ [run] branch = True source = - xblocks_contrib - xblock_pdf + src diff --git a/.gitignore b/.gitignore index 110b7d05..f8e0d544 100644 --- a/.gitignore +++ b/.gitignore @@ -81,8 +81,7 @@ output/*/index.html # Sphinx docs/_build/ docs/modules.rst -docs/xblocks_contrib.rst -docs/xblocks_contrib.*.rst +docs/xblock_*.rst # Private requirements requirements/private.in diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a1b5bd11..54bb4535 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,7 +2,7 @@ Change Log ########## .. - All enhancements and patches to xblocks-contrib will be documented + All enhancements and patches to xblocks-core will be documented in this file. It adheres to the structure of https://keepachangelog.com/ , but in reStructuredText instead of Markdown (for ease of incorporation into Sphinx documentation and the PyPI description). @@ -14,6 +14,15 @@ Change Log Unreleased ********** +* Renamed pypi package and repo from ``xblocks-contrib`` to ``xblocks-core``. +* Restructured Python source into ``src/xblock_/`` packages (one per XBlock); the shared + XML helpers moved to ``src/xblocks_core.legacy_utils/``. +* Renamed Django app entry points ``xblocks_contrib_problem_capa`` → ``xblock_problem_capa`` and + ``xblocks_contrib_discussion`` → ``xblock_discussion`` (consumers in edx-platform must update + ``INSTALLED_APPS`` and any direct imports). +* Renamed Transifex resource slugs ``xblocks-contrib-`` → ``xblocks-core-``; the + combined source ``django.po`` now lives at ``src/xblocks_core_locale/conf/locale/en/LC_MESSAGES/``. + 0.16.0 - 2026-04-21 ********************************************** diff --git a/MANIFEST.in b/MANIFEST.in index a82d5461..838c7723 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -4,30 +4,29 @@ include requirements/base.in include requirements/constraints.txt # --- PACKAGE DATA --- -recursive-include xblocks_contrib *.html *.js *.css *.jar *.png *.gif *.jpg *.jpeg *.svg *.yaml *.underscore -recursive-include xblock_pdf *.html *.js *.css +recursive-include src *.html *.js *.css *.jar *.png *.gif *.jpg *.jpeg *.svg *.yaml *.underscore # --- EXCLUSIONS --- # Prevent raw frontend source files and node_modules from bloating the Python wheel. -prune xblocks_contrib/*/assets -prune xblocks_contrib/*/node_modules +prune src/*/assets +prune src/*/node_modules global-exclude webpack*.config.js karma*.js package*.json package-lock.json .gitignore # Exclude top-level tests and JS specs by default to keep the distribution size small. -# NOTE: The `*` here only looks one directory deep (e.g., `foo/tests`). -prune */tests -prune */spec +# NOTE: The `*` here only looks one directory deep (e.g., `foo/tests`). +prune src/*/tests +prune src/*/spec # Because MANIFEST.in does not support `**` (globstar) for infinite folder depth, # generic wildcards cannot reach deeply nested folders. We must explicitly prune # these deep directories to prevent them from being swept up by `recursive-include`. -prune xblocks_contrib/problem/capa/static/js/capa/spec -prune xblocks_contrib/problem/capa/static/js/capa/fixtures -prune xblocks_contrib/problem/capa/tests/test_files +prune src/xblock_problem/capa/static/js/capa/spec +prune src/xblock_problem/capa/static/js/capa/fixtures +prune src/xblock_problem/capa/tests/test_files # --- TEST UTILITY INCLUSIONS --- # Re-include specific test files that are excluded above. # We do this because openedx-platform imports these specific test helpers. -include xblocks_contrib/problem/capa/tests/test_util.py -include xblocks_contrib/problem/capa/tests/helpers.py -include xblocks_contrib/problem/capa/tests/response_xml_factory.py +include src/xblock_problem/capa/tests/test_util.py +include src/xblock_problem/capa/tests/helpers.py +include src/xblock_problem/capa/tests/response_xml_factory.py diff --git a/Makefile b/Makefile index 58235f99..9e4bc0fe 100644 --- a/Makefile +++ b/Makefile @@ -5,10 +5,12 @@ .PHONY: detect_changed_source_translations dummy_translations build_dummy_translations .PHONY: validate_translations pull_translations push_translations install_transifex_clients -PACKAGE_NAME := xblocks_contrib +SRC_DIR := src EXTRACT_DIR := conf/locale/en/LC_MESSAGES -COMBINED_LOCALE_DIR := $(PACKAGE_NAME)/conf/locale/en/LC_MESSAGES -JS_TARGET := $(PACKAGE_NAME)/public/js/translations +# Combined-locale output for the openedx-translations pipeline (OEP-58), +# which expects a single `django.po` source file per repository. +COMBINED_LOCALE_DIR := $(SRC_DIR)/xblocks_core_locale/conf/locale/en/LC_MESSAGES +JS_TARGET := $(SRC_DIR)/xblocks_core_locale/public/js/translations help: @perl -nle'print $& if m{^[\.a-zA-Z_-]+:.*?## .*$$}' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m %-25s\033[0m %s\n", $$1, $$2}' @@ -37,8 +39,8 @@ piptools: ## install pinned version of pip-compile and pip-sync requirements: piptools ## install development environment requirements pip-sync -q requirements/dev.txt requirements/private.* -# XBlock directories -XBLOCKS=$(shell find $(shell pwd)/$(PACKAGE_NAME) -mindepth 2 -maxdepth 2 -type d -name 'conf' -exec dirname {} \;) +# XBlock directories: each src/xblock_/ that has its own conf/ subdir +XBLOCKS=$(shell find $(shell pwd)/$(SRC_DIR) -mindepth 2 -maxdepth 2 -type d -name 'conf' -exec dirname {} \;) ## Localization targets diff --git a/README.rst b/README.rst index c4e72f10..fce2901f 100644 --- a/README.rst +++ b/README.rst @@ -1,6 +1,8 @@ -=============== -xblocks-contrib -=============== +============ +xblocks-core +============ + +*Before Verawood, this repository was known as "xblocks-contrib"* This repository is the new home for XBlocks which are part of the base openedx-platform installation. @@ -71,8 +73,8 @@ For information on how to enable translations, visit the `Open edX XBlock tutori The included Makefile contains targets for extracting, compiling and validating translatable strings. Each XBlock in this repository has its own translation configuration under -``xblocks_contrib//conf/locale/`` and its own Transifex resource mapping under -``xblocks_contrib//.tx/config``. All Make targets iterate over every XBlock automatically. +``src/xblock_/conf/locale/`` and its own Transifex resource mapping under +``src/xblock_/.tx/config``. All Make targets iterate over every XBlock automatically. The general steps to provide multilingual messages for a Python program (or an XBlock) are: @@ -132,11 +134,11 @@ This iterates over every XBlock and: The output for each XBlock is a single file at:: - xblocks_contrib//conf/locale/en/LC_MESSAGES/text.po + src/xblock_/conf/locale/en/LC_MESSAGES/text.po Additionally, all per-xblock ``text.po`` files are merged into a single combined file at:: - xblocks_contrib/conf/locale/en/LC_MESSAGES/django.po + src/xblocks_core_locale/conf/locale/en/LC_MESSAGES/django.po This combined file is used by the `openedx-translations `_ pipeline (OEP-58) diff --git a/catalog-info.yaml b/catalog-info.yaml index 2491a39c..cf0cda61 100644 --- a/catalog-info.yaml +++ b/catalog-info.yaml @@ -7,7 +7,7 @@ apiVersion: backstage.io/v1alpha1 kind: Component metadata: - name: xblocks-contrib + name: xblocks-core annotations: openedx.org/component-type: "XBlock" openedx.org/arch-interest-groups: "feanil" diff --git a/docs/Makefile b/docs/Makefile index 1d579f6a..3cff6343 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -96,9 +96,9 @@ qthelp: @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/xblocks-contrib.qhcp" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/xblocks-core.qhcp" @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/xblocks-contrib.qhc" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/xblocks-core.qhc" .PHONY: applehelp applehelp: @@ -115,8 +115,8 @@ devhelp: @echo @echo "Build finished." @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/xblocks-contrib" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/xblocks-contrib" + @echo "# mkdir -p $$HOME/.local/share/devhelp/xblocks-core" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/xblocks-core" @echo "# devhelp" .PHONY: epub diff --git a/docs/conf.py b/docs/conf.py index 1e75f0ea..69c15e27 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,6 +1,6 @@ # pylint: disable=invalid-name """ -xblocks-contrib documentation build configuration file. +xblocks-core documentation build configuration file. This file is execfile()d with the current directory set to its containing dir. @@ -54,7 +54,7 @@ def get_version(*file_paths): REPO_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.append(REPO_ROOT) -VERSION = get_version("../xblocks_contrib", "__init__.py") +VERSION = get_version("../src/xblocks_core", "__init__.py") # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the @@ -103,17 +103,17 @@ def get_version(*file_paths): top_level_doc = "index" # General information about the project. -project = "xblocks-contrib" +project = "xblocks-core" copyright = f"{datetime.now().year}, Axim Collaborative, Inc." # pylint: disable=redefined-builtin author = "Axim Collaborative, Inc." -project_title = "xblocks-contrib" +project_title = "xblocks-core" documentation_title = f"{project_title}" # Set display_github to False if you don't want "edit on Github" button html_context = { "display_github": True, # Integrate GitHub "github_user": "edx", # Username - "github_repo": "xblocks-contrib", # Repo name + "github_repo": "xblocks-core", # Repo name "github_version": "main", # Version "conf_py_path": "/docs/", # Path in the checkout to the docs root } @@ -198,7 +198,7 @@ def get_version(*file_paths): # documentation. # html_theme_options = { - "repository_url": "https://github.com/openedx/xblocks-contrib", + "repository_url": "https://github.com/openedx/xblocks-core", "repository_branch": "main", "path_to_docs": "docs/", "home_page_in_toc": True, @@ -235,7 +235,7 @@ def get_version(*file_paths): # The name for this set of Sphinx documents. # " v documentation" by default. # -# html_title = 'xblocks-contrib v0.1.0' +# html_title = 'xblocks-core v0.1.0' # A shorter title for the navigation bar. Default is the same as html_title. # @@ -551,8 +551,7 @@ def on_init(app): # pylint: disable=unused-argument apidoc_path, "-o", docs_path, - os.path.join(root_path, "xblocks_contrib"), - os.path.join(root_path, "xblocks_contrib/migrations"), + os.path.join(root_path, "src"), ] ) diff --git a/docs/decisions/0002-pointer-tags-handling.rst b/docs/decisions/0002-pointer-tags-handling.rst index c8f6426a..58878c29 100644 --- a/docs/decisions/0002-pointer-tags-handling.rst +++ b/docs/decisions/0002-pointer-tags-handling.rst @@ -54,7 +54,7 @@ Both formats are supported by edx-platform's `XmlMixin`, which handles: - **Parsing:** detecting pointer tags and loading their definitions from the pointed-to file. - **Exporting:** serializing blocks in pointer format. -However, this was disrupted when **built-in XBlocks** (such as `WordCloud`, `Annotatable`, `LTI`, `HTML`, `Poll`, `Video`, `Problem`) were **extracted from edx-platform** into a new repository: **xblocks-contrib**. +However, this was disrupted when **built-in XBlocks** (such as `WordCloud`, `Annotatable`, `LTI`, `HTML`, `Poll`, `Video`, `Problem`) were **extracted from edx-platform** into a new repository: **xblocks-core**. The key architectural change was that **extracted XBlocks no longer depend on `XmlMixin`** and instead inherit directly from the base `XBlock` class — following the *pure XBlock* pattern. This transition removed pointer-tag handling functionality for those blocks. @@ -115,4 +115,4 @@ References - `openedx/XBlock#830` - Initial attempt to add pointer-tag parsing to XBlock core - `openedx/edx-platform#37133` - Runtime-based pointer resolution PR -- `xblocks_contrib` - Repository containing extracted XBlocks and new `PointerTagMixin` +- `xblocks-core` - Repository containing extracted XBlocks and new `PointerTagMixin` diff --git a/docs/index.rst b/docs/index.rst index c1a0c307..e19b230f 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,10 +1,10 @@ -.. xblocks-contrib documentation top level file, created by +.. xblocks-core documentation top level file, created by sphinx-quickstart on Thu Jul 04 13:23:33 2024. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -xblocks-contrib -=============== +xblocks-core +============ core xblocks diff --git a/docs/internationalization.rst b/docs/internationalization.rst index ed16c7e0..ea8fae5e 100644 --- a/docs/internationalization.rst +++ b/docs/internationalization.rst @@ -14,14 +14,14 @@ Project structure ***************** Each XBlock in this repository manages its own translations independently: -- **Config**: ``xblocks_contrib//conf/locale/config.yaml`` -- defines supported languages and +- **Config**: ``src/xblock_/conf/locale/config.yaml`` -- defines supported languages and ignored directories. -- **Source strings**: ``xblocks_contrib//conf/locale/en/LC_MESSAGES/text.po`` -- extracted +- **Source strings**: ``src/xblock_/conf/locale/en/LC_MESSAGES/text.po`` -- extracted English strings (Python, HTML, and JavaScript combined into a single file). -- **Transifex mapping**: ``xblocks_contrib//.tx/config`` -- maps the local ``conf/locale/`` +- **Transifex mapping**: ``src/xblock_/.tx/config`` -- maps the local ``conf/locale/`` paths to the Transifex resource for that XBlock. -- **Combined source file**: ``xblocks_contrib/conf/locale/en/LC_MESSAGES/django.po`` -- all per-xblock - ``text.po`` files merged into one, used by the openedx-translations pipeline (OEP-58). +- **Combined source file**: ``src/xblocks_core_locale/conf/locale/en/LC_MESSAGES/django.po`` -- all + per-xblock ``text.po`` files merged into one, used by the openedx-translations pipeline (OEP-58). All ``make`` targets iterate over every XBlock that has a ``conf/`` directory automatically. @@ -37,7 +37,7 @@ the `openedx-translations`_ repository rather than directly via Transifex. 1. A daily GitHub Actions workflow in openedx-translations clones this repo and runs ``make extract_translations``. -2. The combined ``django.po`` file at ``xblocks_contrib/conf/locale/en/`` is committed to +2. The combined ``django.po`` file at ``src/xblocks_core_locale/conf/locale/en/`` is committed to openedx-translations. 3. The Transifex GitHub App syncs source strings to the ``openedx-translations`` Transifex project under the ``open-edx`` organization. diff --git a/docs/make.bat b/docs/make.bat index efd211c8..ace88b07 100644 --- a/docs/make.bat +++ b/docs/make.bat @@ -129,9 +129,9 @@ if "%1" == "qthelp" ( echo. echo.Build finished; now you can run "qcollectiongenerator" with the ^ .qhcp project file in %BUILDDIR%/qthelp, like this: - echo.^> qcollectiongenerator %BUILDDIR%\qthelp\xblocks-contrib.qhcp + echo.^> qcollectiongenerator %BUILDDIR%\qthelp\xblocks-core.qhcp echo.To view the help file: - echo.^> assistant -collectionFile %BUILDDIR%\qthelp\xblocks-contrib.ghc + echo.^> assistant -collectionFile %BUILDDIR%\qthelp\xblocks-core.ghc goto end ) diff --git a/docs/testing.rst b/docs/testing.rst index a882d178..4b8f2a16 100644 --- a/docs/testing.rst +++ b/docs/testing.rst @@ -3,7 +3,7 @@ Testing ####### -xblocks-contrib has an assortment of test cases and code quality +xblocks-core has an assortment of test cases and code quality checks to catch potential problems during development. To run them all in the version of Python you chose for your virtualenv: diff --git a/package-lock.json b/package-lock.json index a3e5906f..51b9d3aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,19 @@ { - "name": "xblocks-contrib", + "name": "xblocks-core", "lockfileVersion": 3, "requires": true, "packages": { "": { + "name": "xblocks-core", "workspaces": [ - "xblocks_contrib/*/*", - "xblock_pdf/*/*/" + "src/*/*/" ] }, "node_modules/@babel/code-frame": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.28.5", "js-tokens": "^4.0.0", @@ -26,6 +27,7 @@ "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -34,6 +36,7 @@ "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -59,31 +62,11 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@babel/core/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/@babel/generator": { "version": "7.29.1", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "license": "MIT", "dependencies": { "@babel/parser": "^7.29.0", "@babel/types": "^7.29.0", @@ -99,6 +82,7 @@ "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "license": "MIT", "dependencies": { "@babel/compat-data": "^7.28.6", "@babel/helper-validator-option": "^7.27.1", @@ -114,6 +98,7 @@ "version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -122,6 +107,7 @@ "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "license": "MIT", "dependencies": { "@babel/traverse": "^7.28.6", "@babel/types": "^7.28.6" @@ -134,6 +120,7 @@ "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.28.6", "@babel/helper-validator-identifier": "^7.28.5", @@ -150,6 +137,7 @@ "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -158,6 +146,7 @@ "version": "7.28.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -166,26 +155,29 @@ "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "license": "MIT", "dependencies": { "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6" + "@babel/types": "^7.29.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", - "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "license": "MIT", "dependencies": { "@babel/types": "^7.29.0" }, @@ -200,6 +192,7 @@ "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.28.6", "@babel/parser": "^7.28.6", @@ -213,6 +206,7 @@ "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -226,31 +220,11 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/@babel/types": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.27.1", "@babel/helper-validator-identifier": "^7.28.5" @@ -264,6 +238,7 @@ "resolved": "https://registry.npmjs.org/@bazel/runfiles/-/runfiles-6.5.0.tgz", "integrity": "sha512-RzahvqTkfpY2jsDxo8YItPX+/iZ6hbiikw1YhE0bA9EKBR5Og8Pa6FHn9PO9M0zaXRVsr0GFQLKbB/0rzy9SzA==", "dev": true, + "license": "Apache-2.0", "peer": true }, "node_modules/@discoveryjs/json-ext": { @@ -271,15 +246,17 @@ "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.0.0" } }, "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz", + "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -288,6 +265,7 @@ "version": "0.3.13", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" @@ -297,6 +275,7 @@ "version": "2.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" @@ -306,6 +285,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", "engines": { "node": ">=6.0.0" } @@ -314,6 +294,7 @@ "version": "0.3.11", "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", + "license": "MIT", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25" @@ -322,12 +303,14 @@ "node_modules/@jridgewell/sourcemap-codec": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.31", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -338,6 +321,7 @@ "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.6.tgz", "integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==", "hasInstallScript": true, + "license": "MIT", "optional": true, "dependencies": { "detect-libc": "^2.0.3", @@ -375,6 +359,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "android" @@ -394,6 +379,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -413,6 +399,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -432,6 +419,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "freebsd" @@ -451,6 +439,7 @@ "cpu": [ "arm" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -470,6 +459,7 @@ "cpu": [ "arm" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -489,6 +479,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -508,6 +499,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -527,6 +519,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -546,6 +539,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -565,6 +559,7 @@ "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -584,6 +579,7 @@ "cpu": [ "ia32" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -603,6 +599,7 @@ "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -619,6 +616,7 @@ "version": "9.6.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "license": "MIT", "dependencies": { "@types/estree": "*", "@types/json-schema": "*" @@ -628,6 +626,7 @@ "version": "3.7.7", "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "license": "MIT", "dependencies": { "@types/eslint": "*", "@types/estree": "*" @@ -636,13 +635,15 @@ "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==" + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "license": "MIT" }, "node_modules/@types/glob": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, + "license": "MIT", "dependencies": { "@types/minimatch": "*", "@types/node": "*" @@ -651,30 +652,30 @@ "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT" }, "node_modules/@types/minimatch": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-6.0.0.tgz", - "integrity": "sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==", - "deprecated": "This is a stub types definition. minimatch provides its own type definitions, so you do not need this installed.", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", "dev": true, - "dependencies": { - "minimatch": "*" - } + "license": "MIT" }, "node_modules/@types/node": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", - "integrity": "sha512-4K3bqJpXpqfg2XKGK9bpDTc6xO/xoUP/RBWS7AtRMug6zZFaRekiLzjVtAoZMquxoAbzBvy5nxQ7veS5eYzf8A==", + "version": "25.6.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.0.tgz", + "integrity": "sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==", + "license": "MIT", "dependencies": { - "undici-types": "~7.18.0" + "undici-types": "~7.19.0" } }, "node_modules/@webassemblyjs/ast": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "license": "MIT", "dependencies": { "@webassemblyjs/helper-numbers": "1.13.2", "@webassemblyjs/helper-wasm-bytecode": "1.13.2" @@ -683,22 +684,26 @@ "node_modules/@webassemblyjs/floating-point-hex-parser": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", - "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "license": "MIT" }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", - "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "license": "MIT" }, "node_modules/@webassemblyjs/helper-buffer": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", - "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "license": "MIT" }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "license": "MIT", "dependencies": { "@webassemblyjs/floating-point-hex-parser": "1.13.2", "@webassemblyjs/helper-api-error": "1.13.2", @@ -708,12 +713,14 @@ "node_modules/@webassemblyjs/helper-wasm-bytecode": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", - "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "license": "MIT" }, "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -725,6 +732,7 @@ "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "license": "MIT", "dependencies": { "@xtuc/ieee754": "^1.2.0" } @@ -733,6 +741,7 @@ "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "license": "Apache-2.0", "dependencies": { "@xtuc/long": "4.2.2" } @@ -740,12 +749,14 @@ "node_modules/@webassemblyjs/utf8": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", - "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "license": "MIT" }, "node_modules/@webassemblyjs/wasm-edit": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -761,6 +772,7 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-wasm-bytecode": "1.13.2", @@ -773,6 +785,7 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -784,6 +797,7 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-api-error": "1.13.2", @@ -797,6 +811,7 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" @@ -807,6 +822,7 @@ "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.15.0" }, @@ -820,6 +836,7 @@ "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.15.0" }, @@ -833,6 +850,7 @@ "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.15.0" }, @@ -849,18 +867,21 @@ "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "license": "BSD-3-Clause" }, "node_modules/@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==" + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "license": "Apache-2.0" }, "node_modules/accepts": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz", "integrity": "sha512-AOPopplFOUlmUugwiZUCDpOwmqvSgdCyE8iJVLWI4NcB7qfMKQN34dn5xYtlUU03XGG5egRWW4NW5gIxpa5hEA==", "dev": true, + "license": "MIT", "dependencies": { "mime-types": "~2.1.11", "negotiator": "0.6.1" @@ -873,6 +894,7 @@ "version": "8.16.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -884,6 +906,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz", "integrity": "sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==", + "license": "MIT", "engines": { "node": ">=10.13.0" }, @@ -895,12 +918,14 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -916,6 +941,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "license": "MIT", "dependencies": { "ajv": "^8.0.0" }, @@ -932,6 +958,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" }, @@ -943,6 +970,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "license": "MIT", "dependencies": { "ansi-wrap": "^0.1.0" }, @@ -954,6 +982,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", "integrity": "sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==", + "license": "MIT", "dependencies": { "ansi-wrap": "0.1.0" }, @@ -965,6 +994,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -979,6 +1009,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -988,6 +1019,7 @@ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", "dev": true, + "license": "ISC", "dependencies": { "micromatch": "^2.1.5", "normalize-path": "^2.0.0" @@ -998,6 +1030,7 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, + "license": "MIT", "dependencies": { "remove-trailing-separator": "^1.0.1" }, @@ -1010,6 +1043,7 @@ "resolved": "https://registry.npmjs.org/append-prepend-loader/-/append-prepend-loader-1.0.0.tgz", "integrity": "sha512-TpqFKoWUJZgo69yFD+EZ+NBhEVAVT6LK5vgMbBEyHd65a33v/ECNq7H8THzL4eobBZaaJ21bVg5ruJeYxTSsYw==", "dev": true, + "license": "MIT", "peerDependencies": { "webpack": "*" } @@ -1019,6 +1053,7 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", "integrity": "sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA==", "dev": true, + "license": "MIT", "dependencies": { "arr-flatten": "^1.0.1" }, @@ -1031,6 +1066,7 @@ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1039,6 +1075,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1048,6 +1085,7 @@ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", "integrity": "sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1057,6 +1095,7 @@ "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", "dev": true, + "license": "MIT", "dependencies": { "array-uniq": "^1.0.1" }, @@ -1069,6 +1108,7 @@ "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1078,6 +1118,7 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", "integrity": "sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1089,13 +1130,14 @@ "dev": true }, "node_modules/assets": { - "resolved": "xblocks_contrib/discussion/assets", + "resolved": "src/xblock_discussion/assets", "link": true }, "node_modules/assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1110,13 +1152,15 @@ "type": "individual", "url": "https://paulmillr.com/funding/" } - ] + ], + "license": "MIT" }, "node_modules/atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true, + "license": "(MIT OR Apache-2.0)", "bin": { "atob": "bin/atob.js" }, @@ -1128,6 +1172,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -1142,6 +1187,7 @@ "version": "9.2.1", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.2.1.tgz", "integrity": "sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==", + "license": "MIT", "dependencies": { "find-cache-dir": "^4.0.0", "schema-utils": "^4.0.0" @@ -1158,6 +1204,7 @@ "version": "1.6.1", "resolved": "https://registry.npmjs.org/backbone/-/backbone-1.6.1.tgz", "integrity": "sha512-YQzWxOrIgL6BoFnZjThVN99smKYhyEXXFyJJ2lsF1wJLyo4t+QjmkLrH8/fN22FZ4ykF70Xq7PgTugJVR4zS9Q==", + "license": "MIT", "dependencies": { "underscore": ">=1.8.3" } @@ -1176,6 +1223,7 @@ "version": "2.0.8", "resolved": "https://registry.npmjs.org/backbone.paginator/-/backbone.paginator-2.0.8.tgz", "integrity": "sha512-8XS2CTbjnwMbJ/3Traa1te2RPecOGbZ9tc52T89pzo6NXlVEJDFnC++dp7CQLBUZpgk3g0veX8mUbEF4wbD2NQ==", + "license": "MIT", "dependencies": { "backbone": "1.1.2 || 1.2.3 || ^1.3.2", "underscore": "^1.8.0" @@ -1185,19 +1233,22 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, + "license": "MIT", "dependencies": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -1216,6 +1267,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, @@ -1237,14 +1289,16 @@ "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", "integrity": "sha512-rz8L+d/xByiB/vLVftPkyY215fqNrmasrcJsYkVcm4TgJNz+YXKrFaFAWibSaHkiKoSgMDCb+lipOIRQNGYesw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4.0" } }, "node_modules/baseline-browser-mapping": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", - "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==", + "version": "2.10.24", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.24.tgz", + "integrity": "sha512-I2NkZOOrj2XuguvWCK6OVh9GavsNjZjK908Rq3mIBK25+GD8vPX5w2WdxVqnQ7xx3SrZJiCiZFu+/Oz50oSYSA==", + "license": "Apache-2.0", "bin": { "baseline-browser-mapping": "dist/cli.cjs" }, @@ -1274,6 +1328,7 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "license": "MIT", "engines": { "node": "*" } @@ -1283,6 +1338,7 @@ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1292,6 +1348,7 @@ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "file-uri-to-path": "1.0.0" @@ -1307,13 +1364,15 @@ "version": "2.11.0", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", "integrity": "sha512-UfFSr22dmHPQqPP9XWHRhq+gWnHCYguQGkXQlbyPtW5qTnhFWA8/iXg765tH0cAjy7l/zPJ1aBTO0g5XgA7kvQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/body-parser": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz", - "integrity": "sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==", + "version": "1.20.5", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.5.tgz", + "integrity": "sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA==", "dev": true, + "license": "MIT", "dependencies": { "bytes": "~3.1.2", "content-type": "~1.0.5", @@ -1323,7 +1382,7 @@ "http-errors": "~2.0.1", "iconv-lite": "~0.4.24", "on-finished": "~2.4.1", - "qs": "~6.14.0", + "qs": "~6.15.1", "raw-body": "~2.5.3", "type-is": "~1.6.18", "unpipe": "~1.0.0" @@ -1333,6 +1392,23 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, "node_modules/bootstrap": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz", @@ -1349,16 +1425,18 @@ "url": "https://opencollective.com/bootstrap" } ], + "license": "MIT", "peerDependencies": { "jquery": "1.9.1 - 3", "popper.js": "^1.16.1" } }, "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -1377,9 +1455,9 @@ } }, "node_modules/browserslist": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", "funding": [ { "type": "opencollective", @@ -1394,12 +1472,13 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" @@ -1413,6 +1492,7 @@ "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", "dev": true, + "license": "MIT", "dependencies": { "buffer-alloc-unsafe": "^1.1.0", "buffer-fill": "^1.0.0" @@ -1422,24 +1502,28 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "license": "MIT" }, "node_modules/bytes": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -1449,6 +1533,7 @@ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, + "license": "MIT", "dependencies": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -1465,13 +1550,14 @@ } }, "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", + "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", "set-function-length": "^1.2.2" }, "engines": { @@ -1485,6 +1571,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" @@ -1497,6 +1584,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "get-intrinsic": "^1.3.0" @@ -1518,9 +1606,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001770", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", - "integrity": "sha512-x/2CLQ1jHENRbHg5PSId2sXq1CIO1CISvwWAj027ltMVG2UNgW+w9oH2+HzgEIRFembL8bUlXtfbBHR1fCg2xw==", + "version": "1.0.30001791", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001791.tgz", + "integrity": "sha512-yk0l/YSrOnFZk3UROpDLQD9+kC1l4meK/wed583AXrzoarMGJcbRi2Q4RaUYbKxYAsZ8sWmaSa/DsLmdBeI1vQ==", "funding": [ { "type": "opencollective", @@ -1534,12 +1622,14 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -1548,22 +1638,12 @@ "node": ">=8" } }, - "node_modules/chalk/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/chokidar": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", "integrity": "sha512-mk8fAWcRUOxY7btlLtitj3A45jOwSAxH4tOFOoEGbVsl6cL6pPMWUy7dwZ/canfj3QEdP6FHSnf/l1c6/WkzVg==", "dev": true, + "license": "MIT", "dependencies": { "anymatch": "^1.3.0", "async-each": "^1.0.0", @@ -1583,6 +1663,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^2.0.0" } @@ -1592,6 +1673,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1601,6 +1683,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^1.0.0" }, @@ -1612,6 +1695,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "license": "MIT", "engines": { "node": ">=6.0" } @@ -1621,6 +1705,7 @@ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, + "license": "MIT", "dependencies": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -1636,6 +1721,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, @@ -1648,6 +1734,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -1661,6 +1748,7 @@ "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0.tgz", "integrity": "sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==", "dev": true, + "license": "MIT", "dependencies": { "del": "^4.1.1" }, @@ -1675,6 +1763,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", @@ -1684,11 +1773,21 @@ "node": ">=6" } }, + "node_modules/clone-deep/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", "dev": true, + "license": "MIT", "dependencies": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" @@ -1701,6 +1800,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -1711,12 +1811,14 @@ "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" }, "node_modules/color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "license": "ISC", "bin": { "color-support": "bin.js" } @@ -1725,13 +1827,15 @@ "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.1.90" } @@ -1739,12 +1843,14 @@ "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "license": "MIT" }, "node_modules/common-path-prefix": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==" + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "license": "ISC" }, "node_modules/component-bind": { "version": "1.0.0", @@ -1756,7 +1862,8 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/component-inherit": { "version": "0.0.3", @@ -1768,13 +1875,15 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "dev": true, + "license": "MIT", "dependencies": { "debug": "2.6.9", "finalhandler": "1.1.2", @@ -1785,11 +1894,29 @@ "node": ">= 0.10.0" } }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, "node_modules/content-type": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -1797,13 +1924,15 @@ "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" }, "node_modules/cookie": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", "integrity": "sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -1813,6 +1942,7 @@ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1841,35 +1971,28 @@ "webpack": "^5.1.0" } }, - "node_modules/copy-webpack-plugin/node_modules/serialize-javascript": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.4.tgz", - "integrity": "sha512-DuGdB+Po43Q5Jxwpzt1lhyFSYKryqoNjQSA9M92tyw0lyHIOur+XCalOUe0KTJpyqzT8+fQ5A0Jf7vCx/NKmIg==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/core-js": { "version": "2.6.12", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", "dev": true, - "hasInstallScript": true + "hasInstallScript": true, + "license": "MIT" }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1879,19 +2002,44 @@ "node": ">= 8" } }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/custom-event": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", "dependencies": { - "ms": "2.0.0" + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, "node_modules/decode-uri-component": { @@ -1899,6 +2047,7 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10" } @@ -1907,6 +2056,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -1924,6 +2074,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -1937,6 +2088,7 @@ "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/glob": "^7.1.1", "globby": "^6.1.0", @@ -1955,6 +2107,7 @@ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -1964,6 +2117,7 @@ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8", "npm": "1.2.8000 || >= 1.4.16" @@ -1973,6 +2127,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", "optional": true, "engines": { "node": ">=8" @@ -1982,13 +2137,15 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", "dev": true, + "license": "MIT", "dependencies": { "custom-event": "~1.0.0", "ent": "~2.2.0", @@ -2000,6 +2157,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/draggabilly/-/draggabilly-3.0.0.tgz", "integrity": "sha512-aEs+B6prbMZQMxc9lgTpCBfyCUhRur/VFucHhIOvlvvdARTj7TcDmX/cdOUtqbjJJUh7+agyJXR5Z6IFe1MxwQ==", + "license": "MIT", "dependencies": { "get-size": "^3.0.0", "unidragger": "^3.0.0" @@ -2009,6 +2167,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", @@ -2022,6 +2181,7 @@ "version": "1.8.7", "resolved": "https://registry.npmjs.org/edx-ui-toolkit/-/edx-ui-toolkit-1.8.7.tgz", "integrity": "sha512-2GF463dcfKu9u0wFY1u5fX6CUs5V3VQjcTQKt1tLzFzGoK1oGg/lRp0SYsbdcIAzCT8yQAFyrpvAQh1oGuTkiA==", + "license": "Apache-2.0", "dependencies": { "backbone": "1.6.0", "backbone.paginator": "2.0.8", @@ -2042,6 +2202,7 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/backbone/-/backbone-1.6.0.tgz", "integrity": "sha512-13PUjmsgw/49EowNcQvfG4gmczz1ximTMhUktj0Jfrjth0MVaTxehpU+qYYX4MxnuIuhmvBLC6/ayxuAGnOhbA==", + "license": "MIT", "dependencies": { "underscore": ">=1.8.3" } @@ -2049,28 +2210,44 @@ "node_modules/edx-ui-toolkit/node_modules/jquery": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "license": "MIT" + }, + "node_modules/edx-ui-toolkit/node_modules/requirejs": { + "version": "2.1.22", + "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.1.22.tgz", + "integrity": "sha512-AhZqN7UrWV8R2d1LfGfznskMJNF0Vb6yStwrCn52UbktJg6y5V1I7RoGRyJtACe86d50PyQn0Iw0jYDKMvc4iA==", + "bin": { + "r.js": "bin/r.js" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/edx-ui-toolkit/node_modules/underscore": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha512-5WsVTFcH1ut/kkhAaHf4PVgI8c7++GiVcpCGxPouI6ZVjsqPnSDf8h/8HtVqc0t4fzRXwnMK70EcZeAs3PIddg==" + "integrity": "sha512-5WsVTFcH1ut/kkhAaHf4PVgI8c7++GiVcpCGxPouI6ZVjsqPnSDf8h/8HtVqc0t4fzRXwnMK70EcZeAs3PIddg==", + "license": "MIT" }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.302", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz", - "integrity": "sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg==" + "version": "1.5.344", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.344.tgz", + "integrity": "sha512-4MxfbmNDm+KPh066EZy+eUnkcDPcZ35wNmOWzFuh/ijvHsve6kbLTLURy88uCNK5FbpN+yk2nQY6BYh1GEt+wg==", + "license": "ISC" }, "node_modules/emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "license": "MIT", "engines": { "node": ">= 4" } @@ -2080,6 +2257,7 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -2089,6 +2267,7 @@ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.5.tgz", "integrity": "sha512-j1DWIcktw4hRwrv6nWx++5nFH2X64x16MAG2P0Lmi5Dvdfi3I+Jhc7JKJIdAmDJa+5aZ/imHV7dWRPy2Cqjh3A==", "dev": true, + "license": "MIT", "dependencies": { "accepts": "1.3.3", "base64id": "1.0.0", @@ -2103,6 +2282,7 @@ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.6.tgz", "integrity": "sha512-6+rInQu8xU7c0fIF6RC4SRKuHVWPt8Xq0bZYS4lMrTwmhRineOlEMsU3X0zS5mHIvCgJsmpOKEX7DhihGk7j0g==", "dev": true, + "license": "MIT", "dependencies": { "component-emitter": "1.2.1", "component-inherit": "0.0.3", @@ -2123,6 +2303,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz", "integrity": "sha512-dCHp4G+F11zb+RtEu7BE2U8R32AYmM/4bljQfut8LipH3PdwsVBVGh083MXvtKkB7HSQUzSwiXz53c4mzJvYfw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.2" } @@ -2131,13 +2312,26 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", "integrity": "sha512-5NnE67nQSQDJHVahPJna1PQ/zCXMnQop3yUCxjKPNzCxuyPSKWTQ/5Gu5CZmjetwGLWRA+PzeF5thlbOdbQldA==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/engine.io-client/node_modules/ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "options": ">=0.0.5", + "ultron": "1.0.x" + } }, "node_modules/engine.io-parser": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz", "integrity": "sha512-3UyTJo+5Jbmr7rd3MosTAApK7BOIo4sjx8dJYSHa3Em5R3A9Y2s9GWu4JFJe6Px0VieJC0hKUA5NBytC+O7k2A==", "dev": true, + "license": "MIT", "dependencies": { "after": "0.8.2", "arraybuffer.slice": "0.0.6", @@ -2152,6 +2346,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz", "integrity": "sha512-dCHp4G+F11zb+RtEu7BE2U8R32AYmM/4bljQfut8LipH3PdwsVBVGh083MXvtKkB7HSQUzSwiXz53c4mzJvYfw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.2" } @@ -2160,15 +2355,28 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", "integrity": "sha512-5NnE67nQSQDJHVahPJna1PQ/zCXMnQop3yUCxjKPNzCxuyPSKWTQ/5Gu5CZmjetwGLWRA+PzeF5thlbOdbQldA==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/engine.io/node_modules/ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "options": ">=0.0.5", + "ultron": "1.0.x" + } }, "node_modules/enhanced-resolve": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz", - "integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.21.0.tgz", + "integrity": "sha512-otxSQPw4lkOZWkHpB3zaEQs6gWYEsmX4xQF68ElXC/TWvGxGMSGOvoNbaLXm6/cS/fSfHtsEdw90y20PCd+sCA==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.3.0" + "tapable": "^2.3.3" }, "engines": { "node": ">=10.13.0" @@ -2179,6 +2387,7 @@ "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.2.tgz", "integrity": "sha512-kKvD1tO6BM+oK9HzCPpUdRb4vKFQY/FPTFmurMvh6LlN68VMrdj77w8yp51/kDbpkFOS9J8w5W6zIzgM2H8/hw==", "dev": true, + "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -2194,6 +2403,7 @@ "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.21.0.tgz", "integrity": "sha512-Lw7I8Zp5YKHFCXL7+Dz95g4CcbMEpgvqZNNq3AmlT5XAV6CgAAk6gyAMqn2zjw08K9BHfcNuKrMiCPLByGafow==", "dev": true, + "license": "MIT", "bin": { "envinfo": "dist/cli.js" }, @@ -2205,6 +2415,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2213,19 +2424,22 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/es-module-lexer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.0.0.tgz", - "integrity": "sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.1.0.tgz", + "integrity": "sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==", + "license": "MIT" }, "node_modules/es-object-atoms": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -2237,6 +2451,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -2245,12 +2460,14 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -2263,6 +2480,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -2274,6 +2492,7 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -2282,6 +2501,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -2289,18 +2509,21 @@ "node_modules/ev-emitter": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-2.1.2.tgz", - "integrity": "sha512-jQ5Ql18hdCQ4qS+RCrbLfz1n+Pags27q5TwMKvZyhp5hh2UULUYZUy1keqj6k6SYsdqIYjnmz7xyyEY0V67B8Q==" + "integrity": "sha512-jQ5Ql18hdCQ4qS+RCrbLfz1n+Pags27q5TwMKvZyhp5hh2UULUYZUy1keqj6k6SYsdqIYjnmz7xyyEY0V67B8Q==", + "license": "MIT" }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "license": "MIT", "engines": { "node": ">=0.8.x" } @@ -2310,6 +2533,7 @@ "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", "integrity": "sha512-zOOsEnAhvIxxd0esCNbYG2xerGf46niZ1egS43eV7Fu4t7VIScgPXMcMabCLaPrqkzwvwo6zZipDiX3t0ILF2w==", "dev": true, + "license": "MIT", "dependencies": { "array-slice": "^0.2.3", "array-unique": "^0.2.1", @@ -2324,6 +2548,7 @@ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", "integrity": "sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA==", "dev": true, + "license": "MIT", "dependencies": { "is-posix-bracket": "^0.1.0" }, @@ -2353,24 +2578,18 @@ "source-map": "0.5.x" } }, - "node_modules/exports-loader/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -2383,6 +2602,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" }, @@ -2395,6 +2615,7 @@ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "integrity": "sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^1.0.0" }, @@ -2407,6 +2628,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2415,6 +2637,7 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "license": "MIT", "dependencies": { "ansi-gray": "^0.1.1", "color-support": "^1.1.3", @@ -2428,7 +2651,8 @@ "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" }, "node_modules/fast-uri": { "version": "3.1.0", @@ -2443,13 +2667,15 @@ "type": "opencollective", "url": "https://opencollective.com/fastify" } - ] + ], + "license": "BSD-3-Clause" }, "node_modules/fastest-levenshtein": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4.9.1" } @@ -2459,6 +2685,7 @@ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, + "license": "MIT", "engines": { "node": ">=12.0.0" }, @@ -2476,6 +2703,7 @@ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "dev": true, + "license": "MIT", "optional": true }, "node_modules/filename-regex": { @@ -2483,6 +2711,7 @@ "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", "integrity": "sha512-BTCqyBaWBTsauvnHiE8i562+EdJj+oUpkqWp2R1iCoR8f6oo8STRu3of7WJJ0TqWtxN50a5YFpzYK4Jj9esYfQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2492,6 +2721,7 @@ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", "dev": true, + "license": "MIT", "dependencies": { "is-number": "^2.1.0", "isobject": "^2.0.0", @@ -2508,6 +2738,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "integrity": "sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, @@ -2519,13 +2750,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fill-range/node_modules/isobject": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "dev": true, + "license": "MIT", "dependencies": { "isarray": "1.0.0" }, @@ -2533,23 +2766,12 @@ "node": ">=0.10.0" } }, - "node_modules/fill-range/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/fill-range/node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10" } @@ -2559,6 +2781,7 @@ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", @@ -2572,11 +2795,29 @@ "node": ">= 0.8" } }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, "node_modules/finalhandler/node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", "dev": true, + "license": "MIT", "dependencies": { "ee-first": "1.1.1" }, @@ -2588,6 +2829,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "license": "MIT", "dependencies": { "common-path-prefix": "^3.0.0", "pkg-dir": "^7.0.0" @@ -2599,10 +2841,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-cache-dir/node_modules/find-up": { + "node_modules/find-up": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "license": "MIT", "dependencies": { "locate-path": "^7.1.0", "path-exists": "^5.0.0" @@ -2614,95 +2857,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-cache-dir/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/find-cache-dir/node_modules/pkg-dir": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", - "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", - "dependencies": { - "find-up": "^6.3.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/flat": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "license": "BSD-3-Clause", "bin": { "flat": "cli.js" } }, "node_modules/follow-redirects": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", - "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "dev": true, "funding": [ { @@ -2710,6 +2877,7 @@ "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -2723,6 +2891,7 @@ "version": "0.3.5", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "license": "MIT", "dependencies": { "is-callable": "^1.2.7" }, @@ -2738,6 +2907,7 @@ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2747,6 +2917,7 @@ "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", "integrity": "sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==", "dev": true, + "license": "MIT", "dependencies": { "for-in": "^1.0.1" }, @@ -2768,6 +2939,7 @@ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", "dev": true, + "license": "MIT", "dependencies": { "map-cache": "^0.2.2" }, @@ -2779,7 +2951,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/fsevents": { "version": "1.2.13", @@ -2788,6 +2961,7 @@ "deprecated": "Upgrade to fsevents v2 to mitigate potential security issues", "dev": true, "hasInstallScript": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2804,6 +2978,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2812,6 +2987,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2820,6 +2996,7 @@ "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -2828,6 +3005,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", @@ -2851,6 +3029,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" @@ -2862,13 +3041,15 @@ "node_modules/get-size": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-size/-/get-size-3.0.0.tgz", - "integrity": "sha512-Y8aiXLq4leR7807UY0yuKEwif5s3kbVp1nTv+i4jBeoUzByTLKkLWu/HorS6/pB+7gsB0o7OTogC8AoOOeT0Hw==" + "integrity": "sha512-Y8aiXLq4leR7807UY0yuKEwif5s3kbVp1nTv+i4jBeoUzByTLKkLWu/HorS6/pB+7gsB0o7OTogC8AoOOeT0Hw==", + "license": "MIT" }, "node_modules/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2879,6 +3060,7 @@ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -2899,6 +3081,7 @@ "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", "integrity": "sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA==", "dev": true, + "license": "MIT", "dependencies": { "glob-parent": "^2.0.0", "is-glob": "^2.0.0" @@ -2912,6 +3095,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^2.0.0" } @@ -2921,6 +3105,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2930,6 +3115,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^1.0.0" }, @@ -2942,6 +3128,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.3" }, @@ -2952,13 +3139,15 @@ "node_modules/glob-to-regexp": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "license": "BSD-2-Clause" }, "node_modules/globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", "dev": true, + "license": "MIT", "dependencies": { "array-union": "^1.0.1", "glob": "^7.0.3", @@ -2975,6 +3164,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2983,6 +3173,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -2993,12 +3184,14 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" }, "node_modules/gulp-shell": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/gulp-shell/-/gulp-shell-0.8.0.tgz", "integrity": "sha512-wHNCgmqbWkk1c6Gc2dOL5SprcoeujQdeepICwfQRo91DIylTE7a794VEE+leq3cE2YDoiS5ulvRfKVIEMazcTQ==", + "license": "MIT", "dependencies": { "chalk": "^3.0.0", "fancy-log": "^1.3.3", @@ -3016,6 +3209,7 @@ "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz", "integrity": "sha512-k1Umb4/jrBWZbtL+QKSji8qWeoZ7ZTkXdnDXt1wxwBKAFM0//u96wDj43mBIqCIas8rDQMYyrBEvcS8hdGd4Sg==", "dev": true, + "license": "MIT", "dependencies": { "isarray": "0.0.1" } @@ -3024,12 +3218,14 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", "engines": { "node": ">=8" } @@ -3038,6 +3234,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" }, @@ -3049,6 +3246,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3060,6 +3258,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -3075,6 +3274,7 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", "dev": true, + "license": "MIT", "dependencies": { "get-value": "^2.0.6", "has-values": "^1.0.0", @@ -3089,6 +3289,7 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", "dev": true, + "license": "MIT", "dependencies": { "is-number": "^3.0.0", "kind-of": "^4.0.0" @@ -3102,6 +3303,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, @@ -3114,6 +3316,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, + "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, @@ -3126,6 +3329,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", "dev": true, + "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, @@ -3134,9 +3338,10 @@ } }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", + "license": "MIT", "dependencies": { "function-bind": "^1.1.2" }, @@ -3145,21 +3350,24 @@ } }, "node_modules/hls.js": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.15.tgz", - "integrity": "sha512-E3a5VwgXimGHwpRGV+WxRTKeSp2DW5DI5MWv34ulL3t5UNmyJWCQ1KmLEHbYzcfThfXG8amBL+fCYPneGHC4VA==" + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.16.tgz", + "integrity": "sha512-VSIRpLfRwlAAdGL4wiTucx2ScRipo0ed1FBatWkyt832jC4CReKstga6yIhYVwGu9LOBjuX9wzmRMeQdBJtzEA==", + "license": "Apache-2.0" }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/http-errors": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", "dev": true, + "license": "MIT", "dependencies": { "depd": "~2.0.0", "inherits": "~2.0.4", @@ -3180,6 +3388,7 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -3189,6 +3398,7 @@ "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, + "license": "MIT", "dependencies": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", @@ -3203,6 +3413,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -3215,18 +3426,21 @@ "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/immutable": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.4.tgz", - "integrity": "sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==" + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.5.tgz", + "integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==", + "license": "MIT" }, "node_modules/import-local": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", "dev": true, + "license": "MIT", "dependencies": { "pkg-dir": "^4.2.0", "resolve-cwd": "^3.0.0" @@ -3241,10 +3455,90 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-local/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/imports-loader": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.8.0.tgz", "integrity": "sha512-kXWL7Scp8KQ4552ZcdVTeaQCZSLW+e6nJfp3cwUMB673T7Hr98Xjx5JK+ql7ADlJUvj1JS5O01RLbKoutN5QDQ==", + "license": "MIT", "dependencies": { "loader-utils": "^1.0.2", "source-map": "^0.6.1" @@ -3253,6 +3547,15 @@ "node": ">= 4" } }, + "node_modules/imports-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/indexof": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", @@ -3265,6 +3568,7 @@ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -3273,13 +3577,15 @@ "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" }, "node_modules/interpret": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.13.0" } @@ -3289,6 +3595,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", "dev": true, + "license": "MIT", "dependencies": { "hasown": "^2.0.0" }, @@ -3300,6 +3607,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", + "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "has-tostringtag": "^1.0.2" @@ -3316,6 +3624,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "dev": true, + "license": "MIT", "dependencies": { "binary-extensions": "^1.0.0" }, @@ -3327,12 +3636,14 @@ "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3345,6 +3656,7 @@ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, + "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -3360,6 +3672,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", "dev": true, + "license": "MIT", "dependencies": { "hasown": "^2.0.0" }, @@ -3372,6 +3685,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -3385,6 +3699,7 @@ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, + "license": "MIT", "bin": { "is-docker": "cli.js" }, @@ -3400,6 +3715,7 @@ "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", "integrity": "sha512-9YclgOGtN/f8zx0Pr4FQYMdibBiTaH3sn52vjYip4ZSf6C4/6RfTEZ+MR4GvKhCxdPh21Bg42/WL55f6KSnKpg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3409,6 +3725,7 @@ "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", "integrity": "sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA==", "dev": true, + "license": "MIT", "dependencies": { "is-primitive": "^2.0.0" }, @@ -3421,6 +3738,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3430,6 +3748,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "devOptional": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3438,6 +3757,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "license": "MIT", "dependencies": { "call-bound": "^1.0.4", "generator-function": "^2.0.0", @@ -3457,6 +3777,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "devOptional": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -3478,6 +3799,7 @@ "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -3487,6 +3809,7 @@ "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "dev": true, + "license": "MIT", "dependencies": { "is-path-inside": "^2.1.0" }, @@ -3499,6 +3822,7 @@ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "dev": true, + "license": "MIT", "dependencies": { "path-is-inside": "^1.0.2" }, @@ -3510,6 +3834,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, @@ -3522,6 +3847,7 @@ "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", "integrity": "sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3531,6 +3857,7 @@ "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", "integrity": "sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3539,6 +3866,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "gopd": "^1.2.0", @@ -3556,6 +3884,7 @@ "version": "1.1.15", "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "license": "MIT", "dependencies": { "which-typed-array": "^1.1.16" }, @@ -3571,6 +3900,7 @@ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3580,6 +3910,7 @@ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, + "license": "MIT", "dependencies": { "is-docker": "^2.0.0" }, @@ -3591,13 +3922,15 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/isbinaryfile": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", "dev": true, + "license": "MIT", "dependencies": { "buffer-alloc": "^1.2.0" }, @@ -3609,12 +3942,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3624,6 +3959,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=8" } @@ -3633,6 +3969,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", @@ -3649,6 +3986,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^4.0.0", @@ -3658,23 +3996,12 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", @@ -3684,34 +4011,22 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "node_modules/istanbul-lib-source-maps/node_modules/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, - "dependencies": { - "ms": "^2.1.3" - }, + "license": "BSD-3-Clause", "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/istanbul-reports": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -3724,7 +4039,8 @@ "version": "2.6.4", "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.6.4.tgz", "integrity": "sha512-HUYBYi/hlSnCIr8QH9xuDBJUAzSHS0El3HxTomovIQcNxtbNhoOtKwpEZaB/jq3sfW/qyhqwW/VDUtoB2RZ4Tg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/jasmine-jquery": { "version": "2.1.1", @@ -3737,6 +4053,7 @@ "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "license": "MIT", "dependencies": { "@types/node": "*", "merge-stream": "^2.0.0", @@ -3746,17 +4063,34 @@ "node": ">= 10.13.0" } }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/jquery": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz", "integrity": "sha512-lBHj60ezci2u1v2FqnZIraShGgEXq35qCzMv4lITyHGppTnA13rwR0MgwyNJh9TnDs3aXUvd1xjAotfraMHX/Q==", - "deprecated": "This version is deprecated. Please upgrade to the latest version or find support at https://www.herodevs.com/support/jquery-nes." + "deprecated": "This version is deprecated. Please upgrade to the latest version or find support at https://www.herodevs.com/support/jquery-nes.", + "license": "MIT" }, "node_modules/jquery-ui": { "version": "1.14.2", "resolved": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.14.2.tgz", "integrity": "sha512-1gSl7PUjyipa2adSr780Ujk16faicrV7PjPPzPtvWk7tTqBnsqp67NNV9jZK2+BIxUPXWSnIUU/LBCgwgGZE+Q==", "dev": true, + "license": "MIT", "dependencies": { "jquery": ">=1.12.0 <5.0.0" } @@ -3764,12 +4098,14 @@ "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" }, "node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, @@ -3777,15 +4113,11 @@ "node": ">=6" } }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, "node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/json3": { "version": "3.3.2", @@ -3798,6 +4130,7 @@ "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", "bin": { "json5": "lib/cli.js" }, @@ -3810,6 +4143,7 @@ "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, + "license": "(MIT OR GPL-3.0-or-later)", "peer": true, "dependencies": { "lie": "~3.3.0", @@ -3823,6 +4157,7 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/jszip/node_modules/readable-stream": { @@ -3830,6 +4165,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "core-util-is": "~1.0.0", @@ -3841,18 +4177,12 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/jszip/node_modules/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, - "peer": true - }, "node_modules/jszip/node_modules/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, + "license": "MIT", "peer": true, "dependencies": { "safe-buffer": "~5.1.0" @@ -3863,6 +4193,7 @@ "resolved": "https://registry.npmjs.org/karma/-/karma-0.13.22.tgz", "integrity": "sha512-A9/7e/IzHUkTcfjnTy5Wzo2P5wPuf7+QZh1JzNdTpYA0AN/vSrxfFjPKtKC3jRYJFZMJ7S1I9L2LItaJS1XMSg==", "dev": true, + "license": "MIT", "dependencies": { "batch": "^0.5.3", "bluebird": "^2.9.27", @@ -3900,27 +4231,17 @@ "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz", "integrity": "sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==", "dev": true, + "license": "MIT", "dependencies": { "which": "^1.2.1" } }, - "node_modules/karma-chrome-launcher/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, "node_modules/karma-coverage": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", "dev": true, + "license": "MIT", "dependencies": { "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.1.0", @@ -3938,6 +4259,7 @@ "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-2.1.3.tgz", "integrity": "sha512-LMM2bseebLbYjODBOVt7TCPP9OI2vZIXCavIXhkO9m+10Uj5l7u/SKoeRmYx8FYHTVGZSpk6peX+3BMHC1WwNw==", "dev": true, + "license": "MIT", "dependencies": { "is-wsl": "^2.2.0", "which": "^3.0.0" @@ -3948,6 +4270,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -3963,6 +4286,7 @@ "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.3.8.tgz", "integrity": "sha512-EDNIM4f9FV17XXoF+Rzfw+6uPajd7tOAfEFwe7PIyNVQrM3l1V5OJj2167JDY9KmLDIK/MQZX7tKkK1jVYlfmw==", "dev": true, + "license": "MIT", "peerDependencies": { "jasmine-core": "*" } @@ -3972,6 +4296,7 @@ "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz", "integrity": "sha512-AHInTzedmNkyP8ue67p8lTy7DM6YUBfOX5VC3oexaUA0gY0L/2NErkl+aTd4QT9LYqg0VHTj6ie0LbMyulOwAw==", "dev": true, + "license": "MIT", "dependencies": { "karma-jasmine": "^1.0.2" }, @@ -3984,6 +4309,7 @@ "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-1.1.2.tgz", "integrity": "sha512-SENGE9DhlIIFTSZWiNq4eGeXL8G6z9cqHIOdkx9jh1qhhQqwEy3tAoLRyER0vOcHqdOlKmGpOuXk+HOipIy7sg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" }, @@ -3997,6 +4323,7 @@ "resolved": "https://registry.npmjs.org/karma-junit-reporter/-/karma-junit-reporter-2.0.1.tgz", "integrity": "sha512-VtcGfE0JE4OE1wn0LK8xxDKaTP7slN8DO3I+4xg6gAi1IoAHAXOJ1V9G/y45Xg6sxdxPOR3THCFtDlAfBo9Afw==", "dev": true, + "license": "MIT", "dependencies": { "path-is-absolute": "^1.0.0", "xmlbuilder": "12.0.0" @@ -4012,13 +4339,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/karma-regex-preprocessor/-/karma-regex-preprocessor-1.0.1.tgz", "integrity": "sha512-A+CTjK8VQZ1qZFnDMsuB7//2qWorOVuE2fnnZ2iDhv0H5Ug5Lv0I2FmolPV9KaTgJK1ipXHnSxVrG282fnoe7g==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/karma-requirejs": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/karma-requirejs/-/karma-requirejs-1.1.0.tgz", "integrity": "sha512-MHTOYKdwwJBkvYid0TaYvBzOnFH3TDtzo6ie5E4o9SaUSXXsfMRLa/whUz6efVIgTxj1xnKYasNn/XwEgJeB/Q==", "dev": true, + "license": "MIT", "peerDependencies": { "karma": ">=0.9", "requirejs": "^2.1.0" @@ -4042,6 +4371,7 @@ "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.4.0.tgz", "integrity": "sha512-xCRL3/pmhAYF3I6qOrcn0uhbQevitc2DERMPH82FMnG+4WReoGcGFZb1pURf2a5apyrOHRdvD+O6K7NljqKHyA==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.10" } @@ -4051,6 +4381,7 @@ "resolved": "https://registry.npmjs.org/karma-spec-reporter/-/karma-spec-reporter-0.0.20.tgz", "integrity": "sha512-pl+KmLNwnu802F/q9cZx5n20FuxA0ebwM3uMuy4Qh+GGfviy4EFK8I5Bl2cWogSRBUC2Fhg5oOsUFVlv/j5tuA==", "dev": true, + "license": "MIT", "dependencies": { "colors": "~0.6.0" }, @@ -4072,6 +4403,7 @@ "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-5.0.1.tgz", "integrity": "sha512-oo38O+P3W2mSPCSUrQdySSPv1LvPpXP+f+bBimNomS5sW+1V4SuhCuW8TfJzV+rDv921w2fDSDw0xJbPe6U+kQ==", "dev": true, + "license": "MIT", "dependencies": { "glob": "^7.1.3", "minimatch": "^9.0.3", @@ -4085,25 +4417,21 @@ } }, "node_modules/karma-webpack/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/karma-webpack/node_modules/lodash": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", - "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", - "dev": true - }, "node_modules/karma-webpack/node_modules/minimatch": { "version": "9.0.9", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.2" }, @@ -4114,28 +4442,15 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/karma-webpack/node_modules/webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, + "license": "MIT", "dependencies": { - "lodash": "^4.17.15" - } - }, - "node_modules/karma/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "is-buffer": "^1.1.5" + }, "engines": { "node": ">=0.10.0" } @@ -4145,15 +4460,17 @@ "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "immediate": "~3.0.5" } }, "node_modules/loader-runner": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz", - "integrity": "sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.2.tgz", + "integrity": "sha512-DFEqQ3ihfS9blba08cLfYf1NRAIEm+dDjic073DRDc3/JspI/8wYmtDsHwd3+4hwvdxSK7PGaElfTmm0awWJ4w==", + "license": "MIT", "engines": { "node": ">=6.11.5" }, @@ -4166,6 +4483,7 @@ "version": "1.4.2", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "license": "MIT", "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -4179,6 +4497,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -4190,38 +4509,45 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "license": "MIT", "dependencies": { - "p-locate": "^4.1.0" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lodash": { "version": "3.10.1", "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", "integrity": "sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash._reinterpolate": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==" + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", + "license": "MIT" }, "node_modules/lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.18.1.tgz", + "integrity": "sha512-5urZrLnV/VD6zHK5KsVtZgt7H19v51mIzoS0aBNH8yp3I8tbswrEjOABOPY8m8uB7NuibubLrMX+Y0PXsU9X+w==", "deprecated": "This package is deprecated. Use https://socket.dev/npm/package/eta instead.", + "license": "MIT", "dependencies": { "lodash._reinterpolate": "^3.0.0", "lodash.templatesettings": "^4.0.0" @@ -4231,6 +4557,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "license": "MIT", "dependencies": { "lodash._reinterpolate": "^3.0.0" } @@ -4241,6 +4568,7 @@ "integrity": "sha512-Cd+klbx7lkiaamEId9/0odHxv/PFHDz2E12kEfd6/CzIOZD084DzysASR/Dot4i1dYPBQKC3r2XIER+dfbLOmw==", "deprecated": "0.x is no longer supported. Please upgrade to 6.x or higher.", "dev": true, + "license": "Apache-2.0", "dependencies": { "readable-stream": "~1.0.2", "semver": "~4.3.3" @@ -4254,6 +4582,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", "integrity": "sha512-IrpJ+yoG4EOH8DFWuVg+8H1kW1Oaof0Wxe7cPcXW3x9BjkN/eVo54F15LyqemnDIUYskQWr9qvl/RihmSy6+xQ==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -4261,12 +4590,14 @@ "node_modules/lolex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/lolex/-/lolex-1.3.2.tgz", - "integrity": "sha512-YYp8cqz7/8eruZ15L1mzcPkvLYxipfdsWIDESvNdNmQP9o7TsDitRhNuV2xb7aFu2ofZngao1jiVrVZ842x4BQ==" + "integrity": "sha512-YYp8cqz7/8eruZ15L1mzcPkvLYxipfdsWIDESvNdNmQP9o7TsDitRhNuV2xb7aFu2ofZngao1jiVrVZ842x4BQ==", + "license": "BSD-3-Clause" }, "node_modules/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==", + "license": "ISC", "dependencies": { "yallist": "^3.0.2" } @@ -4276,6 +4607,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.5.3" }, @@ -4291,6 +4623,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -4303,6 +4636,7 @@ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4312,6 +4646,7 @@ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", "dev": true, + "license": "MIT", "dependencies": { "object-visit": "^1.0.0" }, @@ -4323,6 +4658,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -4331,13 +4667,15 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -4345,13 +4683,15 @@ "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "license": "MIT" }, "node_modules/micromatch": { "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", "integrity": "sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA==", "dev": true, + "license": "MIT", "dependencies": { "arr-diff": "^2.0.0", "array-unique": "^0.2.1", @@ -4376,6 +4716,7 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", "integrity": "sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw==", "dev": true, + "license": "MIT", "dependencies": { "expand-range": "^1.8.1", "preserve": "^0.2.0", @@ -4390,6 +4731,7 @@ "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==", "dev": true, + "license": "MIT", "dependencies": { "fill-range": "^2.1.0" }, @@ -4402,6 +4744,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4411,6 +4754,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^1.0.0" }, @@ -4418,23 +4762,12 @@ "node": ">=0.10.0" } }, - "node_modules/micromatch/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/micromatch/node_modules/normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, + "license": "MIT", "dependencies": { "remove-trailing-separator": "^1.0.1" }, @@ -4447,6 +4780,7 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true, + "license": "MIT", "bin": { "mime": "cli.js" }, @@ -4458,6 +4792,8 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -4466,6 +4802,8 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", "dependencies": { "mime-db": "1.52.0" }, @@ -4474,9 +4812,10 @@ } }, "node_modules/mini-css-extract-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.10.0.tgz", - "integrity": "sha512-540P2c5dYnJlyJxTaSloliZexv8rji6rY8FhQN+WF/82iHQfA23j/xtJx97L+mXOML27EqksSek/g4eK7jaL3g==", + "version": "2.10.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.10.2.tgz", + "integrity": "sha512-AOSS0IdEB95ayVkxn5oGzNQwqAi2J0Jb/kKm43t7H73s8+f5873g0yuj0PNvK4dO75mu5DHg4nlgp4k6Kga8eg==", + "license": "MIT", "dependencies": { "schema-utils": "^4.0.0", "tapable": "^2.2.1" @@ -4493,10 +4832,11 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -4508,13 +4848,15 @@ "version": "0.0.10", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "dev": true, + "license": "MIT", "dependencies": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -4528,6 +4870,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" }, @@ -4539,6 +4882,7 @@ "version": "2.30.1", "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", "engines": { "node": "*" } @@ -4547,6 +4891,7 @@ "version": "0.5.46", "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.46.tgz", "integrity": "sha512-ZXm9b36esbe7OmdABqIWJuBBiLLwAjrN7CE+7sYdCCx82Nabt1wHDj8TVseS59QIlfFPbOoiBPm6ca9BioG4hw==", + "license": "MIT", "dependencies": { "moment": "^2.29.4" }, @@ -4555,16 +4900,17 @@ } }, "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" }, "node_modules/nan": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", - "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", + "version": "2.26.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.26.2.tgz", + "integrity": "sha512-0tTvBTYkt3tdGw22nrAy50x7gpbGCCFH3AFcyS5WiUu7Eu4vWlri1woE6qHBSfy11vksDqkiwjOnlR7WV8G1Hw==", "dev": true, + "license": "MIT", "optional": true }, "node_modules/nanomatch": { @@ -4572,6 +4918,7 @@ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, + "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -4594,6 +4941,7 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4603,6 +4951,17 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4612,6 +4971,7 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "integrity": "sha512-qTxkr1RoLw5Pz+1+PTJ/66hWuyi2LEOeOuIDJDlx6JF8x75bmD5C7qXTg2UlX5W9rLfkqKP+r8q6Vy6NWdWrbw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -4619,33 +4979,38 @@ "node_modules/neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "license": "MIT" }, "node_modules/node-addon-api": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT", "optional": true }, "node_modules/node-releases": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==" + "version": "2.0.38", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz", + "integrity": "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==", + "license": "MIT" }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "integrity": "sha512-Lbc7GfN7XFaK30bzUN3cDYLOkT0dH05S0ax1QikylHUD9+Z9PRF3G1iYwX3kcz+6AlzTFGkUgMxz6l3aUwbwTA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4661,6 +5026,7 @@ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", "dev": true, + "license": "MIT", "dependencies": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -4675,6 +5041,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, @@ -4687,6 +5054,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -4695,23 +5063,12 @@ "node": ">= 0.4" } }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/object-inspect": { "version": "1.13.4", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4724,6 +5081,7 @@ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", "dev": true, + "license": "MIT", "dependencies": { "isobject": "^3.0.0" }, @@ -4736,6 +5094,7 @@ "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha512-UiAM5mhmIuKLsOvrL+B0U2d1hXHF3bFYWIuH1LMpuV2EJEHG1Ntz06PgLEHjm6VFd87NpH8rastvPoyv6UW2fA==", "dev": true, + "license": "MIT", "dependencies": { "for-own": "^0.1.4", "is-extendable": "^0.1.1" @@ -4749,6 +5108,7 @@ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dev": true, + "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, @@ -4761,6 +5121,7 @@ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, + "license": "MIT", "dependencies": { "ee-first": "1.1.1" }, @@ -4773,6 +5134,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, + "license": "ISC", "dependencies": { "wrappy": "1" } @@ -4782,6 +5144,7 @@ "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "integrity": "sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g==", "dev": true, + "license": "MIT/X11", "dependencies": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" @@ -4801,35 +5164,39 @@ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "license": "MIT", "dependencies": { - "p-try": "^2.0.0" + "yocto-queue": "^1.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "license": "MIT", "dependencies": { - "p-limit": "^2.2.0" + "p-limit": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-map": { @@ -4837,6 +5204,7 @@ "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -4846,6 +5214,7 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -4855,6 +5224,7 @@ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true, + "license": "(MIT AND Zlib)", "peer": true }, "node_modules/parse-glob": { @@ -4862,6 +5232,7 @@ "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", "integrity": "sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA==", "dev": true, + "license": "MIT", "dependencies": { "glob-base": "^0.3.0", "is-dotfile": "^1.0.0", @@ -4877,6 +5248,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4886,6 +5258,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^1.0.0" }, @@ -4897,6 +5270,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "license": "MIT", "engines": { "node": ">= 0.10" } @@ -4906,6 +5280,7 @@ "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.3.tgz", "integrity": "sha512-v38ZjVbinlZ2r1Rz06WUZEnGoSRcEGX+roMsiWjHeAe23s2qlQUyfmsPQZvh7d8l0E8AZzTIO/RkUr00LfkSiA==", "dev": true, + "license": "MIT", "dependencies": { "better-assert": "~1.0.0" } @@ -4915,6 +5290,7 @@ "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", "integrity": "sha512-B3Nrjw2aL7aI4TDujOzfA4NsEc4u1lVcIRE0xesutH8kjeWF70uk+W5cBlIQx04zUH9NTBvuN36Y9xLRPK6Jjw==", "dev": true, + "license": "MIT", "dependencies": { "better-assert": "~1.0.0" } @@ -4924,6 +5300,7 @@ "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", "integrity": "sha512-ijhdxJu6l5Ru12jF0JvzXVPvsC+VibqeaExlNoMhWN6VQ79PGjkmc7oA4W1lp00sFkNyj0fx6ivPLdV51/UMog==", "dev": true, + "license": "MIT", "dependencies": { "better-assert": "~1.0.0" } @@ -4933,6 +5310,7 @@ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -4942,17 +5320,18 @@ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "license": "MIT", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/path-is-absolute": { @@ -4960,6 +5339,7 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4968,13 +5348,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", - "dev": true + "dev": true, + "license": "(WTFPL OR MIT)" }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -4983,18 +5365,21 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" }, "node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "devOptional": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -5007,6 +5392,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -5016,6 +5402,7 @@ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5025,6 +5412,7 @@ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, + "license": "MIT", "dependencies": { "pinkie": "^2.0.0" }, @@ -5033,21 +5421,25 @@ } }, "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "license": "MIT", "dependencies": { - "find-up": "^4.0.0" + "find-up": "^6.3.0" }, "engines": { - "node": ">=8" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/plugin-error": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "license": "MIT", "dependencies": { "ansi-colors": "^1.0.1", "arr-diff": "^4.0.0", @@ -5062,6 +5454,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5072,6 +5465,7 @@ "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", "dev": true, + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" @@ -5082,6 +5476,7 @@ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5090,6 +5485,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -5099,31 +5495,35 @@ "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", "integrity": "sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/problem-xblock": { - "resolved": "xblocks_contrib/problem/assets", + "resolved": "src/xblock_problem/assets", "link": true }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/q": { "version": "0.9.7", @@ -5131,16 +5531,18 @@ "integrity": "sha512-ijt0LhxWClXBtc1RCt8H0WhlZLAdVX26nWbpsJy+Hblmp81d2F/pFsvlrJhJDDruFHM+ECtxP0H0HzGSrARkwg==", "deprecated": "You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.\n\n(For a CapTP with native promises, see @endo/eventual-send and @endo/captp)", "dev": true, + "license": "MIT", "engines": { "node": ">=0.6.0", "teleport": ">=0.2.0" } }, "node_modules/qs": { - "version": "6.14.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.2.tgz", - "integrity": "sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==", + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz", + "integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.1.0" }, @@ -5156,6 +5558,7 @@ "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", "dev": true, + "license": "MIT", "dependencies": { "is-number": "^4.0.0", "kind-of": "^6.0.0", @@ -5170,16 +5573,19 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dependencies": { - "safe-buffer": "^5.1.0" + "node_modules/randomatic/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, "node_modules/raw-body": { @@ -5187,6 +5593,7 @@ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz", "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==", "dev": true, + "license": "MIT", "dependencies": { "bytes": "~3.1.2", "http-errors": "~2.0.1", @@ -5202,6 +5609,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", "dev": true, + "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -5214,6 +5622,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", @@ -5228,6 +5637,7 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5237,6 +5647,7 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5246,6 +5657,7 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, + "license": "MIT", "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -5267,6 +5679,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -5274,11 +5687,22 @@ "node": ">=0.10.0" } }, + "node_modules/readdirp/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/readdirp/node_modules/expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -5297,6 +5721,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, @@ -5309,6 +5734,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -5321,6 +5747,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -5334,6 +5761,7 @@ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, + "license": "MIT", "dependencies": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -5353,6 +5781,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, @@ -5365,6 +5794,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -5377,6 +5807,7 @@ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, + "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -5392,6 +5823,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -5404,6 +5836,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, @@ -5416,6 +5849,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, + "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, @@ -5427,13 +5861,25 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/readdirp/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/readdirp/node_modules/micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -5453,11 +5899,19 @@ "node": ">=0.10.0" } }, + "node_modules/readdirp/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, "node_modules/readdirp/node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5473,21 +5927,17 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10" } }, - "node_modules/readdirp/node_modules/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 - }, "node_modules/readdirp/node_modules/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, + "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" } @@ -5497,6 +5947,7 @@ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", "dev": true, + "license": "MIT", "dependencies": { "resolve": "^1.20.0" }, @@ -5509,6 +5960,7 @@ "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", "dev": true, + "license": "MIT", "dependencies": { "is-equal-shallow": "^0.1.3" }, @@ -5521,6 +5973,7 @@ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, + "license": "MIT", "dependencies": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" @@ -5533,13 +5986,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/repeat-element": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5557,15 +6012,18 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/requirejs": { - "version": "2.1.22", - "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.1.22.tgz", - "integrity": "sha512-AhZqN7UrWV8R2d1LfGfznskMJNF0Vb6yStwrCn52UbktJg6y5V1I7RoGRyJtACe86d50PyQn0Iw0jYDKMvc4iA==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.8.tgz", + "integrity": "sha512-7/cTSLOdYkNBNJcDMWf+luFvMriVm7eYxp4BcFCsAX0wF421Vyce5SXP17c+Jd5otXKGNehIonFlyQXSowL6Mw==", + "license": "MIT", "bin": { + "r_js": "bin/r.js", "r.js": "bin/r.js" }, "engines": { @@ -5575,20 +6033,24 @@ "node_modules/requirejs-text": { "version": "2.0.16", "resolved": "https://registry.npmjs.org/requirejs-text/-/requirejs-text-2.0.16.tgz", - "integrity": "sha512-XrzjeTb1pwzIWmkz8qnUiM20gENgiwB+66IciNuziwlaPAJsYQsQPSYyQ1kD4tGKGZxTisIfDbOHk02DpI/76Q==" + "integrity": "sha512-XrzjeTb1pwzIWmkz8qnUiM20gENgiwB+66IciNuziwlaPAJsYQsQPSYyQ1kD4tGKGZxTisIfDbOHk02DpI/76Q==", + "license": "MIT" }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", "dev": true, + "license": "MIT", "dependencies": { + "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" @@ -5608,6 +6070,7 @@ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, + "license": "MIT", "dependencies": { "resolve-from": "^5.0.0" }, @@ -5620,6 +6083,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -5629,13 +6093,15 @@ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", "deprecated": "https://github.com/lydell/resolve-url#deprecated", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.12" } @@ -5646,6 +6112,7 @@ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -5654,29 +6121,18 @@ } }, "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "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, + "license": "MIT" }, "node_modules/safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", "dev": true, + "license": "MIT", "dependencies": { "ret": "~0.1.10" } @@ -5685,6 +6141,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -5701,7 +6158,8 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/samsam": { "version": "1.1.2", @@ -5710,12 +6168,13 @@ "deprecated": "This package has been deprecated in favour of @sinonjs/samsam" }, "node_modules/sass": { - "version": "1.97.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.3.tgz", - "integrity": "sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==", + "version": "1.99.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz", + "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", + "license": "MIT", "dependencies": { "chokidar": "^4.0.0", - "immutable": "^5.0.2", + "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -5732,6 +6191,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "license": "MIT", "dependencies": { "readdirp": "^4.0.1" }, @@ -5746,6 +6206,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "license": "MIT", "engines": { "node": ">= 14.18.0" }, @@ -5758,6 +6219,7 @@ "version": "4.3.3", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", + "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", "ajv": "^8.9.0", @@ -5773,9 +6235,9 @@ } }, "node_modules/selenium-webdriver": { - "version": "4.41.0", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.41.0.tgz", - "integrity": "sha512-1XxuKVhr9az24xwixPBEDGSZP+P0z3ZOnCmr9Oiep0MlJN2Mk+flIjD3iBS9BgyjS4g14dikMqnrYUPIjhQBhA==", + "version": "4.43.0", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.43.0.tgz", + "integrity": "sha512-dV4zBTT37or3Z3/8uD6rS8zvd4ZxPuG4EJVlqYIbZCGZCYttZm7xb9rlFLSk4rrsQHAeDYvudl7cquo0vWpHjg==", "dev": true, "funding": [ { @@ -5787,69 +6249,42 @@ "url": "https://opencollective.com/selenium" } ], + "license": "Apache-2.0", "peer": true, "dependencies": { "@bazel/runfiles": "^6.5.0", "jszip": "^3.10.1", "tmp": "^0.2.5", - "ws": "^8.19.0" + "ws": "^8.20.0" }, "engines": { "node": ">= 20.0.0" } }, - "node_modules/selenium-webdriver/node_modules/tmp": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", - "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", - "dev": true, - "peer": true, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/selenium-webdriver/node_modules/ws": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dependencies": { - "randombytes": "^2.1.0" + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.5.tgz", + "integrity": "sha512-F4LcB0UqUl1zErq+1nYEEzSHJnIwb3AF2XWB94b+afhrekOUijwooAYqFyRbjYkm2PAKBabx6oYv/xDxNi8IBw==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=20.0.0" } }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -5867,6 +6302,7 @@ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "dev": true, + "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -5882,6 +6318,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -5894,18 +6331,21 @@ "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/shallow-clone": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "license": "MIT", "dependencies": { "kind-of": "^6.0.2" }, @@ -5913,11 +6353,21 @@ "node": ">=8" } }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -5930,6 +6380,7 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -5939,6 +6390,7 @@ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3", @@ -5954,13 +6406,14 @@ } }, "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" + "object-inspect": "^1.13.4" }, "engines": { "node": ">= 0.4" @@ -5974,6 +6427,7 @@ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "dev": true, + "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -5992,6 +6446,7 @@ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "dev": true, + "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -6011,6 +6466,7 @@ "resolved": "https://registry.npmjs.org/sinon/-/sinon-1.17.7.tgz", "integrity": "sha512-M9rtyQxKfcTTdB64rpPSRaTzOvunb+HHPv/3PxvNPrEDnFSny95Pi6/3VoD471ody0ay0IHyzT3BErfcLXj6NA==", "deprecated": "16.1.1", + "license": "BSD-3-Clause", "dependencies": { "formatio": "1.1.1", "lolex": "1.3.2", @@ -6026,6 +6482,7 @@ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, + "license": "MIT", "dependencies": { "base": "^0.11.1", "debug": "^2.2.0", @@ -6045,6 +6502,7 @@ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, + "license": "MIT", "dependencies": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -6059,6 +6517,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, @@ -6071,6 +6530,7 @@ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.2.0" }, @@ -6078,16 +6538,14 @@ "node": ">=0.10.0" } }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" + "ms": "2.0.0" } }, "node_modules/snapdragon/node_modules/define-property": { @@ -6095,6 +6553,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, @@ -6107,6 +6566,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, @@ -6119,6 +6579,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -6127,20 +6588,19 @@ "node": ">= 0.4" } }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, "node_modules/socket.io": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.7.4.tgz", "integrity": "sha512-rKMY/U7gBmbHjwrljcPHy+uEXZ5973WvO2DrooL643w1R24SZVzsmhvNmJFjYVhAL4y7wrZJJS/znUfp0VWfKw==", "dev": true, + "license": "MIT", "dependencies": { "debug": "2.3.3", "engine.io": "~1.8.4", @@ -6156,6 +6616,7 @@ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz", "integrity": "sha512-zmYvlFJay9skt4yk1MffE9p93HKvQtyy0BLZ5dRM73bOXFJXNZWq8qZVdY456sLaxdK6fHGiZ7glxzqvzwGzkw==", "dev": true, + "license": "MIT", "dependencies": { "debug": "2.3.3", "socket.io-parser": "2.3.1" @@ -6166,6 +6627,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz", "integrity": "sha512-dCHp4G+F11zb+RtEu7BE2U8R32AYmM/4bljQfut8LipH3PdwsVBVGh083MXvtKkB7HSQUzSwiXz53c4mzJvYfw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.2" } @@ -6174,13 +6636,15 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", "integrity": "sha512-5NnE67nQSQDJHVahPJna1PQ/zCXMnQop3yUCxjKPNzCxuyPSKWTQ/5Gu5CZmjetwGLWRA+PzeF5thlbOdbQldA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/socket.io-client": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.4.tgz", "integrity": "sha512-vW9xr9XyTJejFS//7GNZmLTLkUSAcvOSxRXXhrojV+7wboTFB8CuvK1UBCW3NiB2kqyi0h9cTeyD7dXjdUd9jQ==", "dev": true, + "license": "MIT", "dependencies": { "backo2": "1.0.2", "component-bind": "1.0.0", @@ -6200,6 +6664,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz", "integrity": "sha512-dCHp4G+F11zb+RtEu7BE2U8R32AYmM/4bljQfut8LipH3PdwsVBVGh083MXvtKkB7HSQUzSwiXz53c4mzJvYfw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.2" } @@ -6208,13 +6673,15 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", "integrity": "sha512-5NnE67nQSQDJHVahPJna1PQ/zCXMnQop3yUCxjKPNzCxuyPSKWTQ/5Gu5CZmjetwGLWRA+PzeF5thlbOdbQldA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/socket.io-parser": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.3.1.tgz", "integrity": "sha512-j6l4g/+yWQjmy1yByzg1DPFL4vxQw+NwCJatIxni/AE1wfm17FBtIKSWU4Ay+onrJwDxmC4eK4QS/04ZsqYwZQ==", "dev": true, + "license": "MIT", "dependencies": { "component-emitter": "1.1.2", "debug": "2.2.0", @@ -6233,6 +6700,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", "integrity": "sha512-X0rGvJcskG1c3TgSCPqHJ0XJgwlcvOC7elJ5Y0hYuKBZoVqWpAMfLOeIh2UI/DCQ5ruodIjvsugZtjUYUw2pUw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.1" } @@ -6248,6 +6716,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz", "integrity": "sha512-dCHp4G+F11zb+RtEu7BE2U8R32AYmM/4bljQfut8LipH3PdwsVBVGh083MXvtKkB7HSQUzSwiXz53c4mzJvYfw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "0.7.2" } @@ -6256,18 +6725,31 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", "integrity": "sha512-5NnE67nQSQDJHVahPJna1PQ/zCXMnQop3yUCxjKPNzCxuyPSKWTQ/5Gu5CZmjetwGLWRA+PzeF5thlbOdbQldA==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io/node_modules/object-assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", + "integrity": "sha512-Lbc7GfN7XFaK30bzUN3cDYLOkT0dH05S0ax1QikylHUD9+Z9PRF3G1iYwX3kcz+6AlzTFGkUgMxz6l3aUwbwTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/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 + "dev": true, + "license": "MIT" }, "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -6276,6 +6758,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -6286,6 +6769,7 @@ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", "dev": true, + "license": "MIT", "dependencies": { "atob": "^2.1.2", "decode-uri-component": "^0.2.0", @@ -6298,23 +6782,35 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/source-map-url": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "deprecated": "See https://github.com/lydell/source-map-url#deprecated", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, + "license": "MIT", "dependencies": { "extend-shallow": "^3.0.0" }, @@ -6327,6 +6823,7 @@ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", "dev": true, + "license": "MIT", "dependencies": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -6340,6 +6837,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, + "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, @@ -6352,6 +6850,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, + "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" @@ -6365,6 +6864,7 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -6373,13 +6873,15 @@ "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/string-replace-loader": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/string-replace-loader/-/string-replace-loader-3.3.0.tgz", "integrity": "sha512-AZ3y7ktSHhd/Ebipczkp6vdfp01d2kQVwFujCGAgmogTB8t4dRhbsRGDKnyZAYqBbIA9QW7+D/IsACVJOOpcBg==", "dev": true, + "license": "MIT", "dependencies": { "schema-utils": "^4" }, @@ -6391,17 +6893,15 @@ } }, "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -6409,6 +6909,7 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -6417,9 +6918,10 @@ } }, "node_modules/tapable": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", - "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "license": "MIT", "engines": { "node": ">=6" }, @@ -6429,9 +6931,10 @@ } }, "node_modules/terser": { - "version": "5.46.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz", - "integrity": "sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==", + "version": "5.46.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.2.tgz", + "integrity": "sha512-uxfo9fPcSgLDYob/w1FuL0c99MWiJDnv+5qXSQc5+Ki5NjVNsYi66INnMFBjf6uFz6OnX12piJQPF4IpjJTNTw==", + "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.15.0", @@ -6446,14 +6949,14 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.16", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz", - "integrity": "sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-UYhptBwhWvfIjKd/UuFo6D8uq9xpGLDK+z8EDsj/zWhrTaH34cKEbrkMKfV5YWqGBvAYA3tlzZbs2R+qYrbQJA==", + "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", "jest-worker": "^27.4.5", "schema-utils": "^4.3.0", - "serialize-javascript": "^6.0.2", "terser": "^5.31.1" }, "engines": { @@ -6482,6 +6985,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "license": "MIT", "dependencies": { "inherits": "^2.0.4", "readable-stream": "2 || 3" @@ -6491,6 +6995,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -6500,10 +7005,31 @@ "node": ">= 6" } }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/through2/node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" } @@ -6512,18 +7038,20 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", "integrity": "sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", "dev": true, + "license": "MIT", "dependencies": { "fdir": "^6.5.0", - "picomatch": "^4.0.3" + "picomatch": "^4.0.4" }, "engines": { "node": ">=12.0.0" @@ -6533,15 +7061,14 @@ } }, "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, + "license": "MIT", + "peer": true, "engines": { - "node": ">=0.6.0" + "node": ">=14.14" } }, "node_modules/to-array": { @@ -6555,6 +7082,7 @@ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, @@ -6562,23 +7090,12 @@ "node": ">=0.10.0" } }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, + "license": "MIT", "dependencies": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", @@ -6594,6 +7111,7 @@ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", "dev": true, + "license": "MIT", "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -6607,6 +7125,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, @@ -6614,23 +7133,12 @@ "node": ">=0.10.0" } }, - "node_modules/to-regex-range/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/to-regex-range/node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10" } @@ -6640,6 +7148,7 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.6" } @@ -6647,13 +7156,15 @@ "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "license": "0BSD" }, "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, + "license": "MIT", "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" @@ -6666,22 +7177,26 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", "integrity": "sha512-QMpnpVtYaWEeY+MwKDN/UdKlE/LsFZXM5lO1u7GaZzNgmIbGixHEmVMIKT+vqYOALu3m5GYQy9kz4Xu4IVn7Ow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/underscore": { "version": "1.13.8", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.8.tgz", - "integrity": "sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==" + "integrity": "sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==", + "license": "MIT" }, "node_modules/undici-types": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", - "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==" + "version": "7.19.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", + "integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==", + "license": "MIT" }, "node_modules/unidragger": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/unidragger/-/unidragger-3.0.1.tgz", "integrity": "sha512-RngbGSwBFmqGBWjkaH+yB677uzR95blSQyxq6hYbrQCejH3Mx1nm8DVOuh3M9k2fQyTstWUG5qlgCnNqV/9jVw==", + "license": "MIT", "dependencies": { "ev-emitter": "^2.0.0" } @@ -6691,6 +7206,7 @@ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "dev": true, + "license": "MIT", "dependencies": { "arr-union": "^3.1.0", "get-value": "^2.0.6", @@ -6706,6 +7222,7 @@ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -6715,6 +7232,7 @@ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", "dev": true, + "license": "MIT", "dependencies": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -6728,6 +7246,7 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", "dev": true, + "license": "MIT", "dependencies": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -6742,6 +7261,7 @@ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "dev": true, + "license": "MIT", "dependencies": { "isarray": "1.0.0" }, @@ -6754,6 +7274,7 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -6762,7 +7283,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/update-browserslist-db": { "version": "1.2.3", @@ -6782,6 +7304,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { "escalade": "^3.2.0", "picocolors": "^1.1.1" @@ -6796,20 +7319,23 @@ "node_modules/urijs": { "version": "1.19.11", "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==", + "license": "MIT" }, "node_modules/urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", "deprecated": "Please see https://github.com/lydell/urix#deprecated", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -6819,6 +7345,7 @@ "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", "dev": true, + "license": "MIT", "dependencies": { "lru-cache": "4.1.x", "tmp": "0.0.x" @@ -6829,21 +7356,37 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, + "license": "ISC", "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, + "node_modules/useragent/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/useragent/node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/util": { "version": "0.12.5", "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "license": "MIT", "dependencies": { "inherits": "^2.0.3", "is-arguments": "^1.0.4", @@ -6855,19 +7398,21 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4.0" } }, "node_modules/video-xblock": { - "resolved": "xblocks_contrib/video/assets", + "resolved": "src/xblock_video/assets", "link": true }, "node_modules/void-elements": { @@ -6875,6 +7420,7 @@ "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -6883,6 +7429,7 @@ "version": "2.5.1", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", + "license": "MIT", "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -6892,9 +7439,10 @@ } }, "node_modules/webpack": { - "version": "5.105.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.2.tgz", - "integrity": "sha512-dRXm0a2qcHPUBEzVk8uph0xWSjV/xZxenQQbLwnwP7caQCYpqG1qddwlyEkIDkYn0K8tvmcrZ+bOrzoQ3HxCDw==", + "version": "5.106.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.106.2.tgz", + "integrity": "sha512-wGN3qcrBQIFmQ/c0AiOAQBvrZ5lmY8vbbMv4Mxfgzqd/B6+9pXtLo73WuS1dSGXM5QYY3hZnIbvx+K1xxe6FyA==", + "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", @@ -6902,25 +7450,24 @@ "@webassemblyjs/ast": "^1.14.1", "@webassemblyjs/wasm-edit": "^1.14.1", "@webassemblyjs/wasm-parser": "^1.14.1", - "acorn": "^8.15.0", + "acorn": "^8.16.0", "acorn-import-phases": "^1.0.3", "browserslist": "^4.28.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.19.0", + "enhanced-resolve": "^5.20.0", "es-module-lexer": "^2.0.0", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.3.1", - "mime-types": "^2.1.27", + "mime-db": "^1.54.0", "neo-async": "^2.6.2", "schema-utils": "^4.3.3", "tapable": "^2.3.0", - "terser-webpack-plugin": "^5.3.16", + "terser-webpack-plugin": "^5.3.17", "watchpack": "^2.5.1", - "webpack-sources": "^3.3.3" + "webpack-sources": "^3.3.4" }, "bin": { "webpack": "bin/webpack.js" @@ -6943,6 +7490,7 @@ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, + "license": "MIT", "dependencies": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^2.1.1", @@ -6988,15 +7536,32 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "dev": true, + "license": "MIT", "engines": { "node": ">=14" } }, + "node_modules/webpack-cli/node_modules/webpack-merge": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/webpack-manifest-plugin": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/webpack-manifest-plugin/-/webpack-manifest-plugin-5.0.1.tgz", "integrity": "sha512-xTlX7dC3hrASixA2inuWFMz6qHsNi6MT3Uiqw621sJjRTShtpMjbDYhPPZBwWUKdIYKIjSq9em6+uzWayf38aQ==", "dev": true, + "license": "MIT", "dependencies": { "tapable": "^2.0.0", "webpack-sources": "^2.2.0" @@ -7008,11 +7573,22 @@ "webpack": "^5.75.0" } }, + "node_modules/webpack-manifest-plugin/node_modules/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, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/webpack-manifest-plugin/node_modules/webpack-sources": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz", "integrity": "sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==", "dev": true, + "license": "MIT", "dependencies": { "source-list-map": "^2.0.1", "source-map": "^0.6.1" @@ -7022,46 +7598,58 @@ } }, "node_modules/webpack-merge": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", - "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", + "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", "dev": true, + "license": "MIT", "dependencies": { - "clone-deep": "^4.0.1", - "flat": "^5.0.2", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" + "lodash": "^4.17.15" } }, + "node_modules/webpack-merge/node_modules/lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", + "dev": true, + "license": "MIT" + }, "node_modules/webpack-sources": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.4.tgz", - "integrity": "sha512-7tP1PdV4vF+lYPnkMR0jMY5/la2ub5Fc/8VQrrU+lXkiM6C4TjVfGw7iKfyhnTQOsD+6Q/iKw0eFciziRgD58Q==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.4.0.tgz", + "integrity": "sha512-gHwIe1cgBvvfLeu1Yz/dcFpmHfKDVxxyqI+kzqmuxZED81z2ChxpyqPaWcNqigPywhaEke7AjSGga+kxY55gjQ==", + "license": "MIT", "engines": { "node": ">=10.13.0" } }, + "node_modules/webpack/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" + "which": "bin/which" } }, "node_modules/which-typed-array": { "version": "1.1.20", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz", "integrity": "sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==", + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", @@ -7081,13 +7669,15 @@ "node_modules/wildcard": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "license": "MIT" }, "node_modules/wordwrap": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.4.0" } @@ -7096,29 +7686,45 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/ws": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", - "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz", + "integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==", "dev": true, - "dependencies": { - "options": ">=0.0.5", - "ultron": "1.0.x" + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, "node_modules/wtf-8": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wtf-8/-/wtf-8-1.0.0.tgz", "integrity": "sha512-qfR6ovmRRMxNHgUNYI9LRdVofApe/eYrv4ggNOvvCP+pPdEo9Ym93QN4jUceGD6PignBbp2zAzgoE7GibAdq2A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/xmlbuilder": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-12.0.0.tgz", "integrity": "sha512-lMo8DJ8u6JRWp0/Y4XLa/atVDr75H9litKlb2E5j3V3MesoL50EBgZDWoLT3F/LztVnG67GjPXLZpqcky/UMnQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.0" } @@ -7135,18 +7741,21 @@ "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" }, "node_modules/yeast": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/yocto-queue": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.2.tgz", "integrity": "sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==", + "license": "MIT", "engines": { "node": ">=12.20" }, @@ -7154,7 +7763,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "xblocks_contrib/discussion/assets": { + "src/xblock_discussion/assets": { "devDependencies": { "append-prepend-loader": "^1.0.0", "backbone": "^1", @@ -7180,7 +7789,7 @@ "webpack-cli": "^5" } }, - "xblocks_contrib/problem/assets": { + "src/xblock_problem/assets": { "name": "problem-xblock", "dependencies": { "babel-loader": "^9", @@ -7206,7 +7815,7 @@ "webpack-cli": "^5" } }, - "xblocks_contrib/video/assets": { + "src/xblock_video/assets": { "name": "video-xblock", "version": "1.0.0", "dependencies": { @@ -7241,10 +7850,9 @@ "webpack-manifest-plugin": "^5" } }, - "xblocks_contrib/video/assets/node_modules/webpack-merge": { + "src/xblock_video/assets/node_modules/webpack-merge": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-6.0.1.tgz", - "integrity": "sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==", + "license": "MIT", "dependencies": { "clone-deep": "^4.0.1", "flat": "^5.0.2", diff --git a/package.json b/package.json index d67957ff..5edb1fd3 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,13 @@ { + "name": "xblocks-core", "private": true, "workspaces": [ - "xblocks_contrib/*/*", - "xblock_pdf/*/*/" + "src/*/*/" ], "scripts": { "build": "npm run build --workspaces --if-present", "build-dev": "npm run build-dev --workspaces --if-present", - "watch-build-dev": "for w in xblocks_contrib/*/assets; do npm run watch-build-dev --if-present -w \"$w\" & done; wait", + "watch-build-dev": "for w in src/*/assets; do npm run watch-build-dev --if-present -w \"$w\" & done; wait", "test": "npm run test --workspaces --if-present", "test-ci": "npm run test-ci --workspaces --if-present" } diff --git a/setup.py b/setup.py index fb297404..e8d1dabd 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ #!/usr/bin/env python """ -Package metadata for xblocks-contrib. +Package metadata for xblocks-core. """ import os import re @@ -117,7 +117,7 @@ def is_requirement(line): return line and line.strip() and not line.startswith(("-r", "#", "-e", "git+", "-c")) -VERSION = get_version("xblocks_contrib", "__init__.py") +VERSION = get_version("src", "xblocks_core", "__init__.py") if sys.argv[-1] == "tag": print("Tagging the version on github:") @@ -129,17 +129,15 @@ def is_requirement(line): CHANGELOG = open(os.path.join(os.path.dirname(__file__), "CHANGELOG.rst"), encoding="utf8").read() setup( - name="xblocks-contrib", + name="xblocks-core", version=VERSION, description="""core xblocks""", long_description=README + "\n\n" + CHANGELOG, author="Open edX Project", author_email="oscm@openedx.org", - url="https://github.com/openedx/xblocks-contrib", - packages=find_packages( - include=["xblocks_contrib", "xblocks_contrib.*", "xblock_pdf"], - exclude=["*tests"], - ), + url="https://github.com/openedx/xblocks-core", + packages=find_packages("src"), + package_dir={"": "src"}, include_package_data=True, install_requires=load_requirements("requirements/base.in"), python_requires=">=3.12", @@ -147,7 +145,7 @@ def is_requirement(line): zip_safe=False, keywords="Python edx", classifiers=[ - "Development Status :: 3 - Alpha", + "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", "Natural Language :: English", @@ -157,14 +155,14 @@ def is_requirement(line): entry_points={ "xblock.v1": [ # _extracted suffix is added for testing only. - "_annotatable_extracted = xblocks_contrib:AnnotatableBlock", - "_discussion_extracted = xblocks_contrib:DiscussionXBlock", - "_html_extracted = xblocks_contrib:HtmlBlock", - "_lti_extracted = xblocks_contrib:LTIBlock", - "_poll_question_extracted = xblocks_contrib:PollBlock", - "_problem_extracted = xblocks_contrib:ProblemBlock", - "_video_extracted = xblocks_contrib:VideoBlock", - "_word_cloud_extracted = xblocks_contrib:WordCloudBlock", + "_annotatable_extracted = xblock_annotatable:AnnotatableBlock", + "_discussion_extracted = xblock_discussion:DiscussionXBlock", + "_html_extracted = xblock_html:HtmlBlock", + "_lti_extracted = xblock_lti:LTIBlock", + "_poll_question_extracted = xblock_poll:PollBlock", + "_problem_extracted = xblock_problem:ProblemBlock", + "_video_extracted = xblock_video:VideoBlock", + "_word_cloud_extracted = xblock_word_cloud:WordCloudBlock", # 'Done' XBlocks-- ones that are ready for general use today, # and have been migrated fully from edx-platform or their original # repository. @@ -173,12 +171,12 @@ def is_requirement(line): # Dynamically inject the CAPA problem module as a Django app # so edx-platform natively discovers the templates/ directory. "lms.djangoapp": [ - "xblocks_contrib_problem_capa = xblocks_contrib.problem.capa.apps:CapaAppConfig", - "xblocks_contrib_discussion = xblocks_contrib.discussion.apps:DiscussionAppConfig", + "xblock_problem_capa = xblock_problem.capa.apps:CapaAppConfig", + "xblock_discussion = xblock_discussion.apps:DiscussionAppConfig", ], "cms.djangoapp": [ - "xblocks_contrib_problem_capa = xblocks_contrib.problem.capa.apps:CapaAppConfig", - "xblocks_contrib_discussion = xblocks_contrib.discussion.apps:DiscussionAppConfig", + "xblock_problem_capa = xblock_problem.capa.apps:CapaAppConfig", + "xblock_discussion = xblock_discussion.apps:DiscussionAppConfig", ], }, ) diff --git a/src/xblock_annotatable/.tx/config b/src/xblock_annotatable/.tx/config new file mode 100644 index 00000000..cc15150a --- /dev/null +++ b/src/xblock_annotatable/.tx/config @@ -0,0 +1,8 @@ +[main] +host = https://www.transifex.com + +[o:open-edx:p:openedx-translations:r:xblocks-core-annotatable] +file_filter = conf/locale//LC_MESSAGES/text.po +source_file = conf/locale/en/LC_MESSAGES/text.po +source_lang = en +type = PO diff --git a/xblocks_contrib/annotatable/__init__.py b/src/xblock_annotatable/__init__.py similarity index 100% rename from xblocks_contrib/annotatable/__init__.py rename to src/xblock_annotatable/__init__.py diff --git a/xblocks_contrib/annotatable/annotatable.py b/src/xblock_annotatable/annotatable.py similarity index 99% rename from xblocks_contrib/annotatable/annotatable.py rename to src/xblock_annotatable/annotatable.py index 3e698d1a..c519cfff 100644 --- a/xblocks_contrib/annotatable/annotatable.py +++ b/src/xblock_annotatable/annotatable.py @@ -17,7 +17,7 @@ from xblock.fields import Scope, String, XMLString from xblock.utils.resources import ResourceLoader -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin log = logging.getLogger(__name__) diff --git a/xblocks_contrib/annotatable/conf/locale/__init__.py b/src/xblock_annotatable/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/annotatable/conf/locale/__init__.py rename to src/xblock_annotatable/conf/locale/__init__.py diff --git a/xblocks_contrib/annotatable/conf/locale/config.yaml b/src/xblock_annotatable/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/annotatable/conf/locale/config.yaml rename to src/xblock_annotatable/conf/locale/config.yaml diff --git a/xblocks_contrib/annotatable/static/css/annotatable.css b/src/xblock_annotatable/static/css/annotatable.css similarity index 100% rename from xblocks_contrib/annotatable/static/css/annotatable.css rename to src/xblock_annotatable/static/css/annotatable.css diff --git a/xblocks_contrib/annotatable/static/css/annotatable_editor.css b/src/xblock_annotatable/static/css/annotatable_editor.css similarity index 100% rename from xblocks_contrib/annotatable/static/css/annotatable_editor.css rename to src/xblock_annotatable/static/css/annotatable_editor.css diff --git a/xblocks_contrib/annotatable/static/js/src/annotatable.js b/src/xblock_annotatable/static/js/src/annotatable.js similarity index 100% rename from xblocks_contrib/annotatable/static/js/src/annotatable.js rename to src/xblock_annotatable/static/js/src/annotatable.js diff --git a/xblocks_contrib/annotatable/static/js/src/annotatable_editor.js b/src/xblock_annotatable/static/js/src/annotatable_editor.js similarity index 100% rename from xblocks_contrib/annotatable/static/js/src/annotatable_editor.js rename to src/xblock_annotatable/static/js/src/annotatable_editor.js diff --git a/xblocks_contrib/annotatable/templates/annotatable.html b/src/xblock_annotatable/templates/annotatable.html similarity index 100% rename from xblocks_contrib/annotatable/templates/annotatable.html rename to src/xblock_annotatable/templates/annotatable.html diff --git a/xblocks_contrib/annotatable/templates/annotatable_editor.html b/src/xblock_annotatable/templates/annotatable_editor.html similarity index 100% rename from xblocks_contrib/annotatable/templates/annotatable_editor.html rename to src/xblock_annotatable/templates/annotatable_editor.html diff --git a/xblocks_contrib/annotatable/tests/test_annotatable.py b/src/xblock_annotatable/tests/test_annotatable.py similarity index 98% rename from xblocks_contrib/annotatable/tests/test_annotatable.py rename to src/xblock_annotatable/tests/test_annotatable.py index d494ba4e..0bec3178 100644 --- a/xblocks_contrib/annotatable/tests/test_annotatable.py +++ b/src/xblock_annotatable/tests/test_annotatable.py @@ -7,7 +7,7 @@ from xblock.fields import ScopeIds from xblock.test.tools import TestRuntime -from xblocks_contrib.annotatable.annotatable import AnnotatableBlock +from xblock_annotatable.annotatable import AnnotatableBlock class AnnotatableBlockTestCase(unittest.TestCase): diff --git a/xblocks_contrib/problem/.tx/config b/src/xblock_discussion/.tx/config similarity index 74% rename from xblocks_contrib/problem/.tx/config rename to src/xblock_discussion/.tx/config index 60910adb..c378d5eb 100644 --- a/xblocks_contrib/problem/.tx/config +++ b/src/xblock_discussion/.tx/config @@ -1,7 +1,7 @@ [main] host = https://www.transifex.com -[o:open-edx:p:openedx-translations:r:xblocks-contrib-problem] +[o:open-edx:p:openedx-translations:r:xblocks-core-discussion] file_filter = conf/locale//LC_MESSAGES/text.po source_file = conf/locale/en/LC_MESSAGES/text.po source_lang = en diff --git a/xblocks_contrib/discussion/__init__.py b/src/xblock_discussion/__init__.py similarity index 100% rename from xblocks_contrib/discussion/__init__.py rename to src/xblock_discussion/__init__.py diff --git a/xblocks_contrib/discussion/apps.py b/src/xblock_discussion/apps.py similarity index 89% rename from xblocks_contrib/discussion/apps.py rename to src/xblock_discussion/apps.py index 3a317cb2..508dee16 100644 --- a/xblocks_contrib/discussion/apps.py +++ b/src/xblock_discussion/apps.py @@ -1,5 +1,5 @@ """ -Django App configuration for the xblocks-contrib Discussion XBlock. +Django App configuration for the xblocks-core Discussion XBlock. """ from django.apps import AppConfig @@ -37,9 +37,9 @@ class DiscussionAppConfig(AppConfig): """ - name = "xblocks_contrib.discussion" - label = "xblocks_contrib_discussion" - verbose_name = "XBlocks Contrib - Discussion Templates" + name = "xblock_discussion" + label = "xblock_discussion" + verbose_name = "XBlocks Core - Discussion Templates" plugin_app = { "settings_config": { diff --git a/xblocks_contrib/discussion/assets/jasmine.common.conf.js b/src/xblock_discussion/assets/jasmine.common.conf.js similarity index 100% rename from xblocks_contrib/discussion/assets/jasmine.common.conf.js rename to src/xblock_discussion/assets/jasmine.common.conf.js diff --git a/xblocks_contrib/discussion/assets/karma.conf.js b/src/xblock_discussion/assets/karma.conf.js similarity index 100% rename from xblocks_contrib/discussion/assets/karma.conf.js rename to src/xblock_discussion/assets/karma.conf.js diff --git a/xblocks_contrib/discussion/assets/package.json b/src/xblock_discussion/assets/package.json similarity index 100% rename from xblocks_contrib/discussion/assets/package.json rename to src/xblock_discussion/assets/package.json diff --git a/xblocks_contrib/discussion/assets/static/css/inline-discussion-rtl.css b/src/xblock_discussion/assets/static/css/inline-discussion-rtl.css similarity index 100% rename from xblocks_contrib/discussion/assets/static/css/inline-discussion-rtl.css rename to src/xblock_discussion/assets/static/css/inline-discussion-rtl.css diff --git a/xblocks_contrib/discussion/assets/static/css/inline-discussion.css b/src/xblock_discussion/assets/static/css/inline-discussion.css similarity index 100% rename from xblocks_contrib/discussion/assets/static/css/inline-discussion.css rename to src/xblock_discussion/assets/static/css/inline-discussion.css diff --git a/xblocks_contrib/discussion/assets/static/js/common/content.js b/src/xblock_discussion/assets/static/js/common/content.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/content.js rename to src/xblock_discussion/assets/static/js/common/content.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/discussion.js b/src/xblock_discussion/assets/static/js/common/discussion.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/discussion.js rename to src/xblock_discussion/assets/static/js/common/discussion.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/mathjax_include.js b/src/xblock_discussion/assets/static/js/common/mathjax_include.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/mathjax_include.js rename to src/xblock_discussion/assets/static/js/common/mathjax_include.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/models/discussion_course_settings.js b/src/xblock_discussion/assets/static/js/common/models/discussion_course_settings.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/models/discussion_course_settings.js rename to src/xblock_discussion/assets/static/js/common/models/discussion_course_settings.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/models/discussion_user.js b/src/xblock_discussion/assets/static/js/common/models/discussion_user.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/models/discussion_user.js rename to src/xblock_discussion/assets/static/js/common/models/discussion_user.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/utils.js b/src/xblock_discussion/assets/static/js/common/utils.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/utils.js rename to src/xblock_discussion/assets/static/js/common/utils.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_content_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_content_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_content_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_content_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_inline_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_inline_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_inline_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_inline_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_edit_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_thread_edit_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_edit_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_thread_edit_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_list_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_thread_list_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_list_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_thread_list_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_profile_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_thread_profile_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_profile_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_thread_profile_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_show_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_thread_show_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_show_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_thread_show_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_thread_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_thread_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_thread_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/discussion_topic_menu_view.js b/src/xblock_discussion/assets/static/js/common/views/discussion_topic_menu_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/discussion_topic_menu_view.js rename to src/xblock_discussion/assets/static/js/common/views/discussion_topic_menu_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/new_post_view.js b/src/xblock_discussion/assets/static/js/common/views/new_post_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/new_post_view.js rename to src/xblock_discussion/assets/static/js/common/views/new_post_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/response_comment_edit_view.js b/src/xblock_discussion/assets/static/js/common/views/response_comment_edit_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/response_comment_edit_view.js rename to src/xblock_discussion/assets/static/js/common/views/response_comment_edit_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/response_comment_show_view.js b/src/xblock_discussion/assets/static/js/common/views/response_comment_show_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/response_comment_show_view.js rename to src/xblock_discussion/assets/static/js/common/views/response_comment_show_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/response_comment_view.js b/src/xblock_discussion/assets/static/js/common/views/response_comment_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/response_comment_view.js rename to src/xblock_discussion/assets/static/js/common/views/response_comment_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/thread_response_edit_view.js b/src/xblock_discussion/assets/static/js/common/views/thread_response_edit_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/thread_response_edit_view.js rename to src/xblock_discussion/assets/static/js/common/views/thread_response_edit_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/thread_response_show_view.js b/src/xblock_discussion/assets/static/js/common/views/thread_response_show_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/thread_response_show_view.js rename to src/xblock_discussion/assets/static/js/common/views/thread_response_show_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/common/views/thread_response_view.js b/src/xblock_discussion/assets/static/js/common/views/thread_response_view.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/common/views/thread_response_view.js rename to src/xblock_discussion/assets/static/js/common/views/thread_response_view.js diff --git a/xblocks_contrib/discussion/assets/static/js/customwmd.js b/src/xblock_discussion/assets/static/js/customwmd.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/customwmd.js rename to src/xblock_discussion/assets/static/js/customwmd.js diff --git a/xblocks_contrib/discussion/assets/static/js/discussion_main.js b/src/xblock_discussion/assets/static/js/discussion_main.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/discussion_main.js rename to src/xblock_discussion/assets/static/js/discussion_main.js diff --git a/xblocks_contrib/discussion/assets/static/js/mathjax_accessible.js b/src/xblock_discussion/assets/static/js/mathjax_accessible.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/mathjax_accessible.js rename to src/xblock_discussion/assets/static/js/mathjax_accessible.js diff --git a/xblocks_contrib/discussion/assets/static/js/mathjax_delay_renderer.js b/src/xblock_discussion/assets/static/js/mathjax_delay_renderer.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/mathjax_delay_renderer.js rename to src/xblock_discussion/assets/static/js/mathjax_delay_renderer.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Converter.js b/src/xblock_discussion/assets/static/js/vendor/Markdown.Converter.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Converter.js rename to src/xblock_discussion/assets/static/js/vendor/Markdown.Converter.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Editor.js b/src/xblock_discussion/assets/static/js/vendor/Markdown.Editor.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Editor.js rename to src/xblock_discussion/assets/static/js/vendor/Markdown.Editor.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Sanitizer.js b/src/xblock_discussion/assets/static/js/vendor/Markdown.Sanitizer.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/Markdown.Sanitizer.js rename to src/xblock_discussion/assets/static/js/vendor/Markdown.Sanitizer.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/URI.min.js b/src/xblock_discussion/assets/static/js/vendor/URI.min.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/URI.min.js rename to src/xblock_discussion/assets/static/js/vendor/URI.min.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/jquery.ajaxfileupload.js b/src/xblock_discussion/assets/static/js/vendor/jquery.ajaxfileupload.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/jquery.ajaxfileupload.js rename to src/xblock_discussion/assets/static/js/vendor/jquery.ajaxfileupload.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/jquery.leanModal.js b/src/xblock_discussion/assets/static/js/vendor/jquery.leanModal.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/jquery.leanModal.js rename to src/xblock_discussion/assets/static/js/vendor/jquery.leanModal.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/jquery.timeago.js b/src/xblock_discussion/assets/static/js/vendor/jquery.timeago.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/jquery.timeago.js rename to src/xblock_discussion/assets/static/js/vendor/jquery.timeago.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/jquery.timeago.locale.js b/src/xblock_discussion/assets/static/js/vendor/jquery.timeago.locale.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/jquery.timeago.locale.js rename to src/xblock_discussion/assets/static/js/vendor/jquery.timeago.locale.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/jquery.truncate.js b/src/xblock_discussion/assets/static/js/vendor/jquery.truncate.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/jquery.truncate.js rename to src/xblock_discussion/assets/static/js/vendor/jquery.truncate.js diff --git a/xblocks_contrib/discussion/assets/static/js/vendor/split.js b/src/xblock_discussion/assets/static/js/vendor/split.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/js/vendor/split.js rename to src/xblock_discussion/assets/static/js/vendor/split.js diff --git a/xblocks_contrib/discussion/assets/static/spec/content_spec.js b/src/xblock_discussion/assets/static/spec/content_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/content_spec.js rename to src/xblock_discussion/assets/static/spec/content_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/fixtures/templates.underscore b/src/xblock_discussion/assets/static/spec/fixtures/templates.underscore similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/fixtures/templates.underscore rename to src/xblock_discussion/assets/static/spec/fixtures/templates.underscore diff --git a/xblocks_contrib/discussion/assets/static/spec/spec_helpers/discussion_spec_helper.js b/src/xblock_discussion/assets/static/spec/spec_helpers/discussion_spec_helper.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/spec_helpers/discussion_spec_helper.js rename to src/xblock_discussion/assets/static/spec/spec_helpers/discussion_spec_helper.js diff --git a/xblocks_contrib/discussion/assets/static/spec/spec_helpers/i18n.js b/src/xblock_discussion/assets/static/spec/spec_helpers/i18n.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/spec_helpers/i18n.js rename to src/xblock_discussion/assets/static/spec/spec_helpers/i18n.js diff --git a/xblocks_contrib/discussion/assets/static/spec/utils_spec.js b/src/xblock_discussion/assets/static/spec/utils_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/utils_spec.js rename to src/xblock_discussion/assets/static/spec/utils_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_content_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_content_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_content_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_content_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_inline_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_inline_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_inline_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_inline_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_edit_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_thread_edit_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_edit_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_thread_edit_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_list_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_thread_list_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_list_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_thread_list_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_profile_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_thread_profile_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_profile_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_thread_profile_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_show_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_thread_show_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_show_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_thread_show_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_thread_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_thread_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_thread_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_topic_menu_view_spec.js b/src/xblock_discussion/assets/static/spec/view/discussion_topic_menu_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_topic_menu_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/discussion_topic_menu_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/discussion_view_spec_helper.js b/src/xblock_discussion/assets/static/spec/view/discussion_view_spec_helper.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/discussion_view_spec_helper.js rename to src/xblock_discussion/assets/static/spec/view/discussion_view_spec_helper.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/new_post_view_spec.js b/src/xblock_discussion/assets/static/spec/view/new_post_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/new_post_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/new_post_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/response_comment_show_view_spec.js b/src/xblock_discussion/assets/static/spec/view/response_comment_show_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/response_comment_show_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/response_comment_show_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/response_comment_view_spec.js b/src/xblock_discussion/assets/static/spec/view/response_comment_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/response_comment_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/response_comment_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/thread_response_show_view_spec.js b/src/xblock_discussion/assets/static/spec/view/thread_response_show_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/thread_response_show_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/thread_response_show_view_spec.js diff --git a/xblocks_contrib/discussion/assets/static/spec/view/thread_response_view_spec.js b/src/xblock_discussion/assets/static/spec/view/thread_response_view_spec.js similarity index 100% rename from xblocks_contrib/discussion/assets/static/spec/view/thread_response_view_spec.js rename to src/xblock_discussion/assets/static/spec/view/thread_response_view_spec.js diff --git a/xblocks_contrib/discussion/assets/webpack.common.config.js b/src/xblock_discussion/assets/webpack.common.config.js similarity index 100% rename from xblocks_contrib/discussion/assets/webpack.common.config.js rename to src/xblock_discussion/assets/webpack.common.config.js diff --git a/xblocks_contrib/discussion/assets/webpack.dev.config.js b/src/xblock_discussion/assets/webpack.dev.config.js similarity index 100% rename from xblocks_contrib/discussion/assets/webpack.dev.config.js rename to src/xblock_discussion/assets/webpack.dev.config.js diff --git a/xblocks_contrib/discussion/assets/webpack.prod.config.js b/src/xblock_discussion/assets/webpack.prod.config.js similarity index 100% rename from xblocks_contrib/discussion/assets/webpack.prod.config.js rename to src/xblock_discussion/assets/webpack.prod.config.js diff --git a/xblocks_contrib/discussion/conf/locale/__init__.py b/src/xblock_discussion/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/discussion/conf/locale/__init__.py rename to src/xblock_discussion/conf/locale/__init__.py diff --git a/xblocks_contrib/discussion/conf/locale/config.yaml b/src/xblock_discussion/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/discussion/conf/locale/config.yaml rename to src/xblock_discussion/conf/locale/config.yaml diff --git a/xblocks_contrib/discussion/discussion.py b/src/xblock_discussion/discussion.py similarity index 99% rename from xblocks_contrib/discussion/discussion.py rename to src/xblock_discussion/discussion.py index 5b7d5212..217de415 100644 --- a/xblocks_contrib/discussion/discussion.py +++ b/src/xblock_discussion/discussion.py @@ -17,7 +17,7 @@ from xblock.utils.resources import ResourceLoader from xblock.utils.studio_editable import StudioEditableXBlockMixin -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin log = logging.getLogger(__name__) loader = ResourceLoader(__name__) diff --git a/xblocks_contrib/discussion/templates/_discussion_inline_studio.html b/src/xblock_discussion/templates/_discussion_inline_studio.html similarity index 100% rename from xblocks_contrib/discussion/templates/_discussion_inline_studio.html rename to src/xblock_discussion/templates/_discussion_inline_studio.html diff --git a/xblocks_contrib/discussion/templates/discussion_templates/_discussion_inline.html b/src/xblock_discussion/templates/discussion_templates/_discussion_inline.html similarity index 100% rename from xblocks_contrib/discussion/templates/discussion_templates/_discussion_inline.html rename to src/xblock_discussion/templates/discussion_templates/_discussion_inline.html diff --git a/xblocks_contrib/discussion/templates/discussion_templates/_thread_list_template.html b/src/xblock_discussion/templates/discussion_templates/_thread_list_template.html similarity index 100% rename from xblocks_contrib/discussion/templates/discussion_templates/_thread_list_template.html rename to src/xblock_discussion/templates/discussion_templates/_thread_list_template.html diff --git a/xblocks_contrib/discussion/templates/discussion_templates/_underscore_templates.html b/src/xblock_discussion/templates/discussion_templates/_underscore_templates.html similarity index 100% rename from xblocks_contrib/discussion/templates/discussion_templates/_underscore_templates.html rename to src/xblock_discussion/templates/discussion_templates/_underscore_templates.html diff --git a/xblocks_contrib/discussion/templates/discussion_templates/templates.underscore b/src/xblock_discussion/templates/discussion_templates/templates.underscore similarity index 100% rename from xblocks_contrib/discussion/templates/discussion_templates/templates.underscore rename to src/xblock_discussion/templates/discussion_templates/templates.underscore diff --git a/xblocks_contrib/discussion/tests/test_discussion.py b/src/xblock_discussion/tests/test_discussion.py similarity index 98% rename from xblocks_contrib/discussion/tests/test_discussion.py rename to src/xblock_discussion/tests/test_discussion.py index 67073684..dd431e71 100644 --- a/xblocks_contrib/discussion/tests/test_discussion.py +++ b/src/xblock_discussion/tests/test_discussion.py @@ -13,7 +13,7 @@ from xblock.fields import NO_CACHE_VALUE, UNIQUE_ID, ScopeIds from xblock.runtime import Runtime -from xblocks_contrib.discussion import DiscussionXBlock +from xblock_discussion import DiscussionXBlock def attribute_pair_repr(self): @@ -58,7 +58,7 @@ class DiscussionXBlockImportExportTests(TestCase): """ Import and export tests """ - DISCUSSION_XBLOCK_LOCATION = "xblocks_contrib.discussion.DiscussionXBlock" + DISCUSSION_XBLOCK_LOCATION = "xblock_discussion.DiscussionXBlock" def setUp(self): """ diff --git a/xblocks_contrib/lti/.tx/config b/src/xblock_html/.tx/config similarity index 75% rename from xblocks_contrib/lti/.tx/config rename to src/xblock_html/.tx/config index bd0e4061..3b11ca1d 100644 --- a/xblocks_contrib/lti/.tx/config +++ b/src/xblock_html/.tx/config @@ -1,7 +1,7 @@ [main] host = https://www.transifex.com -[o:open-edx:p:openedx-translations:r:xblocks-contrib-lti] +[o:open-edx:p:openedx-translations:r:xblocks-core-html] file_filter = conf/locale//LC_MESSAGES/text.po source_file = conf/locale/en/LC_MESSAGES/text.po source_lang = en diff --git a/xblocks_contrib/html/__init__.py b/src/xblock_html/__init__.py similarity index 100% rename from xblocks_contrib/html/__init__.py rename to src/xblock_html/__init__.py diff --git a/xblocks_contrib/html/conf/locale/__init__.py b/src/xblock_html/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/html/conf/locale/__init__.py rename to src/xblock_html/conf/locale/__init__.py diff --git a/xblocks_contrib/html/conf/locale/config.yaml b/src/xblock_html/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/html/conf/locale/config.yaml rename to src/xblock_html/conf/locale/config.yaml diff --git a/xblocks_contrib/html/html.py b/src/xblock_html/html.py similarity index 99% rename from xblocks_contrib/html/html.py rename to src/xblock_html/html.py index 2d3b85a0..e07f7f68 100644 --- a/xblocks_contrib/html/html.py +++ b/src/xblock_html/html.py @@ -23,7 +23,7 @@ from xblock.fields import Boolean, Scope, String from xblock.utils.resources import ResourceLoader -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin, name_to_pathname +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin, name_to_pathname log = logging.getLogger(__name__) resource_loader = ResourceLoader(__name__) diff --git a/xblocks_contrib/html/static/css/html.css b/src/xblock_html/static/css/html.css similarity index 100% rename from xblocks_contrib/html/static/css/html.css rename to src/xblock_html/static/css/html.css diff --git a/xblocks_contrib/html/templates/html/announcement.yaml b/src/xblock_html/templates/html/announcement.yaml similarity index 100% rename from xblocks_contrib/html/templates/html/announcement.yaml rename to src/xblock_html/templates/html/announcement.yaml diff --git a/xblocks_contrib/html/templates/html/anon_user_id.yaml b/src/xblock_html/templates/html/anon_user_id.yaml similarity index 100% rename from xblocks_contrib/html/templates/html/anon_user_id.yaml rename to src/xblock_html/templates/html/anon_user_id.yaml diff --git a/xblocks_contrib/html/templates/html/iframe.yaml b/src/xblock_html/templates/html/iframe.yaml similarity index 100% rename from xblocks_contrib/html/templates/html/iframe.yaml rename to src/xblock_html/templates/html/iframe.yaml diff --git a/xblocks_contrib/html/templates/html/raw.yaml b/src/xblock_html/templates/html/raw.yaml similarity index 100% rename from xblocks_contrib/html/templates/html/raw.yaml rename to src/xblock_html/templates/html/raw.yaml diff --git a/xblocks_contrib/html/templates/html/zooming_image.yaml b/src/xblock_html/templates/html/zooming_image.yaml similarity index 100% rename from xblocks_contrib/html/templates/html/zooming_image.yaml rename to src/xblock_html/templates/html/zooming_image.yaml diff --git a/xblocks_contrib/html/tests/test_html.py b/src/xblock_html/tests/test_html.py similarity index 99% rename from xblocks_contrib/html/tests/test_html.py rename to src/xblock_html/tests/test_html.py index 67ffd259..b7d49781 100644 --- a/xblocks_contrib/html/tests/test_html.py +++ b/src/xblock_html/tests/test_html.py @@ -10,7 +10,7 @@ from xblock.reference.user_service import UserService, XBlockUser from xblock.test.tools import TestRuntime -from xblocks_contrib.html.html import HtmlBlock +from xblock_html.html import HtmlBlock def get_test_descriptor_system(): diff --git a/xblocks_contrib/poll/.tx/config b/src/xblock_lti/.tx/config similarity index 75% rename from xblocks_contrib/poll/.tx/config rename to src/xblock_lti/.tx/config index d36d8212..85ff769c 100644 --- a/xblocks_contrib/poll/.tx/config +++ b/src/xblock_lti/.tx/config @@ -1,7 +1,7 @@ [main] host = https://www.transifex.com -[o:open-edx:p:openedx-translations:r:xblocks-contrib-poll] +[o:open-edx:p:openedx-translations:r:xblocks-core-lti] file_filter = conf/locale//LC_MESSAGES/text.po source_file = conf/locale/en/LC_MESSAGES/text.po source_lang = en diff --git a/xblocks_contrib/lti/__init__.py b/src/xblock_lti/__init__.py similarity index 100% rename from xblocks_contrib/lti/__init__.py rename to src/xblock_lti/__init__.py diff --git a/xblocks_contrib/legacy_utils/__init__.py b/src/xblock_lti/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/legacy_utils/__init__.py rename to src/xblock_lti/conf/locale/__init__.py diff --git a/xblocks_contrib/lti/conf/locale/config.yaml b/src/xblock_lti/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/lti/conf/locale/config.yaml rename to src/xblock_lti/conf/locale/config.yaml diff --git a/xblocks_contrib/lti/lti.py b/src/xblock_lti/lti.py similarity index 99% rename from xblocks_contrib/lti/lti.py rename to src/xblock_lti/lti.py index 90f1a746..c049de7b 100644 --- a/xblocks_contrib/lti/lti.py +++ b/src/xblock_lti/lti.py @@ -79,7 +79,7 @@ from xblock.utils.resources import ResourceLoader from xblock.utils.studio_editable import StudioEditableXBlockMixin -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin from .lti_2_util import LTI20BlockMixin, LTIError diff --git a/xblocks_contrib/lti/lti_2_util.py b/src/xblock_lti/lti_2_util.py similarity index 100% rename from xblocks_contrib/lti/lti_2_util.py rename to src/xblock_lti/lti_2_util.py diff --git a/xblocks_contrib/lti/static/css/lti.css b/src/xblock_lti/static/css/lti.css similarity index 100% rename from xblocks_contrib/lti/static/css/lti.css rename to src/xblock_lti/static/css/lti.css diff --git a/xblocks_contrib/lti/static/js/src/lti.js b/src/xblock_lti/static/js/src/lti.js similarity index 100% rename from xblocks_contrib/lti/static/js/src/lti.js rename to src/xblock_lti/static/js/src/lti.js diff --git a/xblocks_contrib/lti/templates/lti.html b/src/xblock_lti/templates/lti.html similarity index 98% rename from xblocks_contrib/lti/templates/lti.html rename to src/xblock_lti/templates/lti.html index f761db3f..da153fef 100644 --- a/xblocks_contrib/lti/templates/lti.html +++ b/src/xblock_lti/templates/lti.html @@ -26,7 +26,7 @@

class="{{ element_class }}" data-ask-to-send-username="{{ ask_to_send_username }}" data-ask-to-send-email="{{ ask_to_send_email }}" - data-package-name="xblocks-contrib" + data-package-name="xblocks-core" > {% if launch_url and launch_url != 'http://www.example.com' and not hide_launch %} diff --git a/xblocks_contrib/lti/templates/lti_form.html b/src/xblock_lti/templates/lti_form.html similarity index 100% rename from xblocks_contrib/lti/templates/lti_form.html rename to src/xblock_lti/templates/lti_form.html diff --git a/xblocks_contrib/lti/conf/locale/__init__.py b/src/xblock_lti/tests/__init__.py similarity index 100% rename from xblocks_contrib/lti/conf/locale/__init__.py rename to src/xblock_lti/tests/__init__.py diff --git a/xblocks_contrib/lti/tests/helpers.py b/src/xblock_lti/tests/helpers.py similarity index 100% rename from xblocks_contrib/lti/tests/helpers.py rename to src/xblock_lti/tests/helpers.py diff --git a/xblocks_contrib/lti/tests/test_lti20_unit.py b/src/xblock_lti/tests/test_lti20_unit.py similarity index 99% rename from xblocks_contrib/lti/tests/test_lti20_unit.py rename to src/xblock_lti/tests/test_lti20_unit.py index efad5cc9..5a133d7d 100644 --- a/xblocks_contrib/lti/tests/test_lti20_unit.py +++ b/src/xblock_lti/tests/test_lti20_unit.py @@ -9,8 +9,8 @@ from pytz import UTC from xblock.field_data import DictFieldData -from xblocks_contrib.lti.lti import LTIBlock -from xblocks_contrib.lti.lti_2_util import LTIError +from xblock_lti.lti import LTIBlock +from xblock_lti.lti_2_util import LTIError from .helpers import StubUserService, get_test_system diff --git a/xblocks_contrib/lti/tests/test_lti_unit.py b/src/xblock_lti/tests/test_lti_unit.py similarity index 96% rename from xblocks_contrib/lti/tests/test_lti_unit.py rename to src/xblock_lti/tests/test_lti_unit.py index 5bf59db5..3d56f1e7 100644 --- a/xblocks_contrib/lti/tests/test_lti_unit.py +++ b/src/xblock_lti/tests/test_lti_unit.py @@ -17,8 +17,8 @@ from xblock.field_data import DictFieldData from xblock.fields import ScopeIds -from xblocks_contrib.lti.lti import LTIBlock -from xblocks_contrib.lti.lti_2_util import LTIError +from xblock_lti.lti import LTIBlock +from xblock_lti.lti_2_util import LTIError from .helpers import StubUserService, Timedelta, get_test_system @@ -135,7 +135,7 @@ def get_response_values(self, response): } @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_client_key_secret", + "xblock_lti.lti.LTIBlock.get_client_key_secret", return_value=("test_client_key", "test_client_secret"), ) def test_authorization_header_not_present(self, _get_key_secret): @@ -159,7 +159,7 @@ def test_authorization_header_not_present(self, _get_key_secret): self.assertDictEqual(expected_response, real_response) @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_client_key_secret", + "xblock_lti.lti.LTIBlock.get_client_key_secret", return_value=("test_client_key", "test_client_secret"), ) def test_authorization_header_empty(self, _get_key_secret): @@ -326,7 +326,7 @@ def mock_handler_url( def test_resource_link_id(self): with patch( - "xblocks_contrib.lti.lti.LTIBlock.usage_key", new_callable=PropertyMock + "xblock_lti.lti.LTIBlock.usage_key", new_callable=PropertyMock ): self.xblock.usage_key.html_id = ( lambda: "i4x-2-3-lti-31de800015cf4afb973356dbe81496df" @@ -398,10 +398,10 @@ def test_bad_client_key_secret(self): self.xblock.get_client_key_secret() @patch( - "xblocks_contrib.lti.lti.signature.verify_hmac_sha1", Mock(return_value=True) + "xblock_lti.lti.signature.verify_hmac_sha1", Mock(return_value=True) ) @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_client_key_secret", + "xblock_lti.lti.LTIBlock.get_client_key_secret", Mock(return_value=("test_client_key", "test_client_secret")), ) def test_successful_verify_oauth_body_sign(self): @@ -411,11 +411,11 @@ def test_successful_verify_oauth_body_sign(self): self.xblock.verify_oauth_body_sign(self.get_signed_grade_mock_request()) @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_outcome_service_url", + "xblock_lti.lti.LTIBlock.get_outcome_service_url", Mock(return_value="https://testurl/"), ) @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_client_key_secret", + "xblock_lti.lti.LTIBlock.get_client_key_secret", Mock(return_value=("__consumer_key__", "__lti_secret__")), ) def test_failed_verify_oauth_body_sign_proxy_mangle_url(self): @@ -491,10 +491,10 @@ def test_parse_grade_xml_body(self): assert self.defaults["action"] == action @patch( - "xblocks_contrib.lti.lti.signature.verify_hmac_sha1", Mock(return_value=False) + "xblock_lti.lti.signature.verify_hmac_sha1", Mock(return_value=False) ) @patch( - "xblocks_contrib.lti.lti.LTIBlock.get_client_key_secret", + "xblock_lti.lti.LTIBlock.get_client_key_secret", Mock(return_value=("test_client_key", "test_client_secret")), ) def test_failed_verify_oauth_body_sign(self): diff --git a/xblock_pdf/__init__.py b/src/xblock_pdf/__init__.py similarity index 100% rename from xblock_pdf/__init__.py rename to src/xblock_pdf/__init__.py diff --git a/xblock_pdf/pdf.py b/src/xblock_pdf/pdf.py similarity index 100% rename from xblock_pdf/pdf.py rename to src/xblock_pdf/pdf.py diff --git a/xblock_pdf/static/js/pdf_edit.js b/src/xblock_pdf/static/js/pdf_edit.js similarity index 100% rename from xblock_pdf/static/js/pdf_edit.js rename to src/xblock_pdf/static/js/pdf_edit.js diff --git a/xblock_pdf/static/js/pdf_view.js b/src/xblock_pdf/static/js/pdf_view.js similarity index 100% rename from xblock_pdf/static/js/pdf_view.js rename to src/xblock_pdf/static/js/pdf_view.js diff --git a/xblock_pdf/templates/html/pdf_edit.html b/src/xblock_pdf/templates/html/pdf_edit.html similarity index 100% rename from xblock_pdf/templates/html/pdf_edit.html rename to src/xblock_pdf/templates/html/pdf_edit.html diff --git a/xblock_pdf/templates/html/pdf_view.html b/src/xblock_pdf/templates/html/pdf_view.html similarity index 100% rename from xblock_pdf/templates/html/pdf_view.html rename to src/xblock_pdf/templates/html/pdf_view.html diff --git a/xblock_pdf/tests/test_pdf.py b/src/xblock_pdf/tests/test_pdf.py similarity index 100% rename from xblock_pdf/tests/test_pdf.py rename to src/xblock_pdf/tests/test_pdf.py diff --git a/xblock_pdf/utils.py b/src/xblock_pdf/utils.py similarity index 100% rename from xblock_pdf/utils.py rename to src/xblock_pdf/utils.py diff --git a/xblocks_contrib/html/.tx/config b/src/xblock_poll/.tx/config similarity index 75% rename from xblocks_contrib/html/.tx/config rename to src/xblock_poll/.tx/config index a4dd8e84..cff0ed23 100644 --- a/xblocks_contrib/html/.tx/config +++ b/src/xblock_poll/.tx/config @@ -1,7 +1,7 @@ [main] host = https://www.transifex.com -[o:open-edx:p:openedx-translations:r:xblocks-contrib-html] +[o:open-edx:p:openedx-translations:r:xblocks-core-poll] file_filter = conf/locale//LC_MESSAGES/text.po source_file = conf/locale/en/LC_MESSAGES/text.po source_lang = en diff --git a/xblocks_contrib/poll/__init__.py b/src/xblock_poll/__init__.py similarity index 100% rename from xblocks_contrib/poll/__init__.py rename to src/xblock_poll/__init__.py diff --git a/xblocks_contrib/lti/tests/__init__.py b/src/xblock_poll/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/lti/tests/__init__.py rename to src/xblock_poll/conf/locale/__init__.py diff --git a/xblocks_contrib/poll/conf/locale/config.yaml b/src/xblock_poll/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/poll/conf/locale/config.yaml rename to src/xblock_poll/conf/locale/config.yaml diff --git a/xblocks_contrib/poll/poll.py b/src/xblock_poll/poll.py similarity index 99% rename from xblocks_contrib/poll/poll.py rename to src/xblock_poll/poll.py index 7af0ef48..747ea926 100644 --- a/xblocks_contrib/poll/poll.py +++ b/src/xblock_poll/poll.py @@ -19,7 +19,7 @@ from xblock.fields import Boolean, Dict, List, Scope, String from xblock.utils.resources import ResourceLoader -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin Text = markupsafe.escape resource_loader = ResourceLoader(__name__) diff --git a/xblocks_contrib/poll/static/css/poll.css b/src/xblock_poll/static/css/poll.css similarity index 100% rename from xblocks_contrib/poll/static/css/poll.css rename to src/xblock_poll/static/css/poll.css diff --git a/xblocks_contrib/poll/static/js/src/poll.js b/src/xblock_poll/static/js/src/poll.js similarity index 100% rename from xblocks_contrib/poll/static/js/src/poll.js rename to src/xblock_poll/static/js/src/poll.js diff --git a/xblocks_contrib/poll/templates/poll.html b/src/xblock_poll/templates/poll.html similarity index 100% rename from xblocks_contrib/poll/templates/poll.html rename to src/xblock_poll/templates/poll.html diff --git a/xblocks_contrib/poll/tests/test_poll.py b/src/xblock_poll/tests/test_poll.py similarity index 98% rename from xblocks_contrib/poll/tests/test_poll.py rename to src/xblock_poll/tests/test_poll.py index 1ee0ed13..14917cdb 100644 --- a/xblocks_contrib/poll/tests/test_poll.py +++ b/src/xblock_poll/tests/test_poll.py @@ -11,7 +11,7 @@ from xblock.fields import ScopeIds from xblock.test.tools import TestRuntime -from xblocks_contrib import PollBlock +from xblock_poll import PollBlock class PollBlockTest(TestCase): diff --git a/xblocks_contrib/video/.tx/config b/src/xblock_problem/.tx/config similarity index 74% rename from xblocks_contrib/video/.tx/config rename to src/xblock_problem/.tx/config index d42f5547..72395806 100644 --- a/xblocks_contrib/video/.tx/config +++ b/src/xblock_problem/.tx/config @@ -1,7 +1,7 @@ [main] host = https://www.transifex.com -[o:open-edx:p:openedx-translations:r:xblocks-contrib-video] +[o:open-edx:p:openedx-translations:r:xblocks-core-problem] file_filter = conf/locale//LC_MESSAGES/text.po source_file = conf/locale/en/LC_MESSAGES/text.po source_lang = en diff --git a/xblocks_contrib/problem/__init__.py b/src/xblock_problem/__init__.py similarity index 100% rename from xblocks_contrib/problem/__init__.py rename to src/xblock_problem/__init__.py diff --git a/xblocks_contrib/problem/assets/fixtures/checkbox_problem.html b/src/xblock_problem/assets/fixtures/checkbox_problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/checkbox_problem.html rename to src/xblock_problem/assets/fixtures/checkbox_problem.html diff --git a/xblocks_contrib/problem/assets/fixtures/codeinput_problem.html b/src/xblock_problem/assets/fixtures/codeinput_problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/codeinput_problem.html rename to src/xblock_problem/assets/fixtures/codeinput_problem.html diff --git a/xblocks_contrib/problem/assets/fixtures/imageinput.html b/src/xblock_problem/assets/fixtures/imageinput.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/imageinput.html rename to src/xblock_problem/assets/fixtures/imageinput.html diff --git a/xblocks_contrib/problem/assets/fixtures/imageinput.underscore b/src/xblock_problem/assets/fixtures/imageinput.underscore similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/imageinput.underscore rename to src/xblock_problem/assets/fixtures/imageinput.underscore diff --git a/xblocks_contrib/problem/assets/fixtures/jsinput_problem.html b/src/xblock_problem/assets/fixtures/jsinput_problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/jsinput_problem.html rename to src/xblock_problem/assets/fixtures/jsinput_problem.html diff --git a/xblocks_contrib/problem/assets/fixtures/matlabinput_problem.html b/src/xblock_problem/assets/fixtures/matlabinput_problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/matlabinput_problem.html rename to src/xblock_problem/assets/fixtures/matlabinput_problem.html diff --git a/xblocks_contrib/problem/assets/fixtures/problem.html b/src/xblock_problem/assets/fixtures/problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/problem.html rename to src/xblock_problem/assets/fixtures/problem.html diff --git a/xblocks_contrib/problem/assets/fixtures/problem_content.html b/src/xblock_problem/assets/fixtures/problem_content.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/problem_content.html rename to src/xblock_problem/assets/fixtures/problem_content.html diff --git a/xblocks_contrib/problem/assets/fixtures/problem_content_1240.html b/src/xblock_problem/assets/fixtures/problem_content_1240.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/problem_content_1240.html rename to src/xblock_problem/assets/fixtures/problem_content_1240.html diff --git a/xblocks_contrib/problem/assets/fixtures/radiobutton_problem.html b/src/xblock_problem/assets/fixtures/radiobutton_problem.html similarity index 100% rename from xblocks_contrib/problem/assets/fixtures/radiobutton_problem.html rename to src/xblock_problem/assets/fixtures/radiobutton_problem.html diff --git a/xblocks_contrib/problem/assets/karma.conf.js b/src/xblock_problem/assets/karma.conf.js similarity index 100% rename from xblocks_contrib/problem/assets/karma.conf.js rename to src/xblock_problem/assets/karma.conf.js diff --git a/xblocks_contrib/problem/assets/karma_runner.js b/src/xblock_problem/assets/karma_runner.js similarity index 100% rename from xblocks_contrib/problem/assets/karma_runner.js rename to src/xblock_problem/assets/karma_runner.js diff --git a/xblocks_contrib/problem/assets/package.json b/src/xblock_problem/assets/package.json similarity index 100% rename from xblocks_contrib/problem/assets/package.json rename to src/xblock_problem/assets/package.json diff --git a/xblocks_contrib/problem/assets/spec/collapsible_spec.js b/src/xblock_problem/assets/spec/collapsible_spec.js similarity index 100% rename from xblocks_contrib/problem/assets/spec/collapsible_spec.js rename to src/xblock_problem/assets/spec/collapsible_spec.js diff --git a/xblocks_contrib/problem/assets/spec/display_spec.js b/src/xblock_problem/assets/spec/display_spec.js similarity index 100% rename from xblocks_contrib/problem/assets/spec/display_spec.js rename to src/xblock_problem/assets/spec/display_spec.js diff --git a/xblocks_contrib/problem/assets/spec/imageinput_spec.js b/src/xblock_problem/assets/spec/imageinput_spec.js similarity index 100% rename from xblocks_contrib/problem/assets/spec/imageinput_spec.js rename to src/xblock_problem/assets/spec/imageinput_spec.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/accessibility_tools.js b/src/xblock_problem/assets/spec_helpers/accessibility_tools.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/accessibility_tools.js rename to src/xblock_problem/assets/spec_helpers/accessibility_tools.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/add_ajax_prefix.js b/src/xblock_problem/assets/spec_helpers/add_ajax_prefix.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/add_ajax_prefix.js rename to src/xblock_problem/assets/spec_helpers/add_ajax_prefix.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/ajax_prefix.js b/src/xblock_problem/assets/spec_helpers/ajax_prefix.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/ajax_prefix.js rename to src/xblock_problem/assets/spec_helpers/ajax_prefix.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/helper.js b/src/xblock_problem/assets/spec_helpers/helper.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/helper.js rename to src/xblock_problem/assets/spec_helpers/helper.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/i18n.js b/src/xblock_problem/assets/spec_helpers/i18n.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/i18n.js rename to src/xblock_problem/assets/spec_helpers/i18n.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/jasmine-extensions.js b/src/xblock_problem/assets/spec_helpers/jasmine-extensions.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/jasmine-extensions.js rename to src/xblock_problem/assets/spec_helpers/jasmine-extensions.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/jasmine-imagediff.js b/src/xblock_problem/assets/spec_helpers/jasmine-imagediff.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/jasmine-imagediff.js rename to src/xblock_problem/assets/spec_helpers/jasmine-imagediff.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/jasmine-waituntil.js b/src/xblock_problem/assets/spec_helpers/jasmine-waituntil.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/jasmine-waituntil.js rename to src/xblock_problem/assets/spec_helpers/jasmine-waituntil.js diff --git a/xblocks_contrib/problem/assets/spec_helpers/logger.js b/src/xblock_problem/assets/spec_helpers/logger.js similarity index 100% rename from xblocks_contrib/problem/assets/spec_helpers/logger.js rename to src/xblock_problem/assets/spec_helpers/logger.js diff --git a/xblocks_contrib/problem/assets/static/css/ProblemBlockDisplay.css b/src/xblock_problem/assets/static/css/ProblemBlockDisplay.css similarity index 100% rename from xblocks_contrib/problem/assets/static/css/ProblemBlockDisplay.css rename to src/xblock_problem/assets/static/css/ProblemBlockDisplay.css diff --git a/xblocks_contrib/problem/assets/static/js/.gitignore b/src/xblock_problem/assets/static/js/.gitignore similarity index 100% rename from xblocks_contrib/problem/assets/static/js/.gitignore rename to src/xblock_problem/assets/static/js/.gitignore diff --git a/xblocks_contrib/problem/assets/static/js/collapsible.js b/src/xblock_problem/assets/static/js/collapsible.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/collapsible.js rename to src/xblock_problem/assets/static/js/collapsible.js diff --git a/xblocks_contrib/problem/assets/static/js/display.js b/src/xblock_problem/assets/static/js/display.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/display.js rename to src/xblock_problem/assets/static/js/display.js diff --git a/xblocks_contrib/problem/assets/static/js/imageinput.js b/src/xblock_problem/assets/static/js/imageinput.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/imageinput.js rename to src/xblock_problem/assets/static/js/imageinput.js diff --git a/xblocks_contrib/problem/assets/static/js/javascript_loader.js b/src/xblock_problem/assets/static/js/javascript_loader.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/javascript_loader.js rename to src/xblock_problem/assets/static/js/javascript_loader.js diff --git a/xblocks_contrib/problem/assets/static/js/schematic.js b/src/xblock_problem/assets/static/js/schematic.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/schematic.js rename to src/xblock_problem/assets/static/js/schematic.js diff --git a/xblocks_contrib/problem/assets/static/js/vendor/codemirror-compressed.js b/src/xblock_problem/assets/static/js/vendor/codemirror-compressed.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/vendor/codemirror-compressed.js rename to src/xblock_problem/assets/static/js/vendor/codemirror-compressed.js diff --git a/xblocks_contrib/problem/assets/static/js/xmodule.js b/src/xblock_problem/assets/static/js/xmodule.js similarity index 100% rename from xblocks_contrib/problem/assets/static/js/xmodule.js rename to src/xblock_problem/assets/static/js/xmodule.js diff --git a/xblocks_contrib/problem/assets/webpack.config.js b/src/xblock_problem/assets/webpack.config.js similarity index 100% rename from xblocks_contrib/problem/assets/webpack.config.js rename to src/xblock_problem/assets/webpack.config.js diff --git a/xblocks_contrib/problem/assets/webpack.prod.config.js b/src/xblock_problem/assets/webpack.prod.config.js similarity index 100% rename from xblocks_contrib/problem/assets/webpack.prod.config.js rename to src/xblock_problem/assets/webpack.prod.config.js diff --git a/xblocks_contrib/poll/conf/locale/__init__.py b/src/xblock_problem/capa/__init__.py similarity index 100% rename from xblocks_contrib/poll/conf/locale/__init__.py rename to src/xblock_problem/capa/__init__.py diff --git a/xblocks_contrib/problem/capa/apps.py b/src/xblock_problem/capa/apps.py similarity index 90% rename from xblocks_contrib/problem/capa/apps.py rename to src/xblock_problem/capa/apps.py index e3373de2..d075e8bd 100644 --- a/xblocks_contrib/problem/capa/apps.py +++ b/src/xblock_problem/capa/apps.py @@ -1,5 +1,5 @@ """ -Django App configuration for the xblocks-contrib CAPA module. +Django App configuration for the xblocks-core CAPA module. """ from django.apps import AppConfig @@ -37,8 +37,9 @@ class CapaAppConfig(AppConfig): """ - name = "xblocks_contrib.problem.capa" - verbose_name = "XBlocks Contrib - CAPA Problem Templates" + name = "xblock_problem.capa" + label = "xblock_problem_capa" + verbose_name = "XBlocks Core - CAPA Problem Templates" # The Open edX plugin dictionary that triggers dynamic injection plugin_app = { diff --git a/xblocks_contrib/problem/capa/capa_problem.py b/src/xblock_problem/capa/capa_problem.py similarity index 99% rename from xblocks_contrib/problem/capa/capa_problem.py rename to src/xblock_problem/capa/capa_problem.py index 1329a747..8b151228 100644 --- a/xblocks_contrib/problem/capa/capa_problem.py +++ b/src/xblock_problem/capa/capa_problem.py @@ -27,17 +27,13 @@ from django.conf import settings from lxml import etree -from xblocks_contrib.problem.capa import customrender, inputtypes, responsetypes, xqueue_interface -from xblocks_contrib.problem.capa.correctmap import CorrectMap -from xblocks_contrib.problem.capa.safe_exec import safe_exec -from xblocks_contrib.problem.capa.util import ( - contextualize_text, - convert_files_to_filenames, - get_course_id_from_capa_block, -) -from xblocks_contrib.problem.markup import HTML, Text -from xblocks_contrib.problem.stringify import stringify_children -from xblocks_contrib.problem.xmlparser import XML +from xblock_problem.capa import customrender, inputtypes, responsetypes, xqueue_interface +from xblock_problem.capa.correctmap import CorrectMap +from xblock_problem.capa.safe_exec import safe_exec +from xblock_problem.capa.util import contextualize_text, convert_files_to_filenames, get_course_id_from_capa_block +from xblock_problem.markup import HTML, Text +from xblock_problem.stringify import stringify_children +from xblock_problem.xmlparser import XML # extra things displayed after "show answers" is pressed solution_tags = ["solution"] diff --git a/xblocks_contrib/problem/capa/checker.py b/src/xblock_problem/capa/checker.py similarity index 98% rename from xblocks_contrib/problem/capa/checker.py rename to src/xblock_problem/capa/checker.py index 3ea093ce..c80dae88 100755 --- a/xblocks_contrib/problem/capa/checker.py +++ b/src/xblock_problem/capa/checker.py @@ -11,7 +11,7 @@ from calc import UndefinedVariable from django.template.loader import get_template -from xblocks_contrib.problem.capa.capa_problem import LoncapaProblem +from xblock_problem.capa.capa_problem import LoncapaProblem logging.basicConfig(format="%(levelname)s %(message)s") log = logging.getLogger("capa.checker") diff --git a/xblocks_contrib/problem/capa/correctmap.py b/src/xblock_problem/capa/correctmap.py similarity index 100% rename from xblocks_contrib/problem/capa/correctmap.py rename to src/xblock_problem/capa/correctmap.py diff --git a/xblocks_contrib/problem/capa/customrender.py b/src/xblock_problem/capa/customrender.py similarity index 100% rename from xblocks_contrib/problem/capa/customrender.py rename to src/xblock_problem/capa/customrender.py diff --git a/xblocks_contrib/problem/capa/errors.py b/src/xblock_problem/capa/errors.py similarity index 100% rename from xblocks_contrib/problem/capa/errors.py rename to src/xblock_problem/capa/errors.py diff --git a/xblocks_contrib/problem/capa/inputtypes.py b/src/xblock_problem/capa/inputtypes.py similarity index 99% rename from xblocks_contrib/problem/capa/inputtypes.py rename to src/xblock_problem/capa/inputtypes.py index bc8b146c..6e21cfd6 100644 --- a/xblocks_contrib/problem/capa/inputtypes.py +++ b/src/xblock_problem/capa/inputtypes.py @@ -56,9 +56,9 @@ from chem import chemcalc from lxml import etree -from xblocks_contrib.problem.capa.xqueue_interface import XQUEUE_TIMEOUT -from xblocks_contrib.problem.markup import HTML, Text -from xblocks_contrib.problem.stringify import stringify_children +from xblock_problem.capa.xqueue_interface import XQUEUE_TIMEOUT +from xblock_problem.markup import HTML, Text +from xblock_problem.stringify import stringify_children from . import xqueue_interface from .registry import TagRegistry diff --git a/xblocks_contrib/problem/capa/registry.py b/src/xblock_problem/capa/registry.py similarity index 100% rename from xblocks_contrib/problem/capa/registry.py rename to src/xblock_problem/capa/registry.py diff --git a/xblocks_contrib/problem/capa/responsetypes.py b/src/xblock_problem/capa/responsetypes.py similarity index 99% rename from xblocks_contrib/problem/capa/responsetypes.py rename to src/xblock_problem/capa/responsetypes.py index feacffa5..b285558e 100644 --- a/xblocks_contrib/problem/capa/responsetypes.py +++ b/src/xblock_problem/capa/responsetypes.py @@ -38,9 +38,9 @@ from six.moves import map, range, zip from symmath import symmath_check -from xblocks_contrib.problem.capa.safe_exec import safe_exec -from xblocks_contrib.problem.capa.xqueue_interface import DATEFORMAT, make_hashkey, make_xheader -from xblocks_contrib.problem.markup import HTML, Text +from xblock_problem.capa.safe_exec import safe_exec +from xblock_problem.capa.xqueue_interface import DATEFORMAT, make_hashkey, make_xheader +from xblock_problem.markup import HTML, Text from . import correctmap from .registry import TagRegistry diff --git a/xblocks_contrib/problem/capa/safe_exec/README.rst b/src/xblock_problem/capa/safe_exec/README.rst similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/README.rst rename to src/xblock_problem/capa/safe_exec/README.rst diff --git a/xblocks_contrib/problem/capa/safe_exec/__init__.py b/src/xblock_problem/capa/safe_exec/__init__.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/__init__.py rename to src/xblock_problem/capa/safe_exec/__init__.py diff --git a/xblocks_contrib/problem/capa/safe_exec/exceptions.py b/src/xblock_problem/capa/safe_exec/exceptions.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/exceptions.py rename to src/xblock_problem/capa/safe_exec/exceptions.py diff --git a/xblocks_contrib/problem/capa/safe_exec/lazymod.py b/src/xblock_problem/capa/safe_exec/lazymod.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/lazymod.py rename to src/xblock_problem/capa/safe_exec/lazymod.py diff --git a/xblocks_contrib/problem/capa/safe_exec/remote_exec.py b/src/xblock_problem/capa/safe_exec/remote_exec.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/remote_exec.py rename to src/xblock_problem/capa/safe_exec/remote_exec.py diff --git a/xblocks_contrib/problem/capa/safe_exec/safe_exec.py b/src/xblock_problem/capa/safe_exec/safe_exec.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/safe_exec.py rename to src/xblock_problem/capa/safe_exec/safe_exec.py diff --git a/xblocks_contrib/problem/capa/__init__.py b/src/xblock_problem/capa/safe_exec/tests/__init__.py similarity index 100% rename from xblocks_contrib/problem/capa/__init__.py rename to src/xblock_problem/capa/safe_exec/tests/__init__.py diff --git a/xblocks_contrib/problem/capa/safe_exec/tests/test_files/pylib/constant.py b/src/xblock_problem/capa/safe_exec/tests/test_files/pylib/constant.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/tests/test_files/pylib/constant.py rename to src/xblock_problem/capa/safe_exec/tests/test_files/pylib/constant.py diff --git a/xblocks_contrib/problem/capa/safe_exec/tests/test_lazymod.py b/src/xblock_problem/capa/safe_exec/tests/test_lazymod.py similarity index 97% rename from xblocks_contrib/problem/capa/safe_exec/tests/test_lazymod.py rename to src/xblock_problem/capa/safe_exec/tests/test_lazymod.py index fcc30973..8c683bcd 100644 --- a/xblocks_contrib/problem/capa/safe_exec/tests/test_lazymod.py +++ b/src/xblock_problem/capa/safe_exec/tests/test_lazymod.py @@ -3,7 +3,7 @@ import sys import unittest -from xblocks_contrib.problem.capa.safe_exec.lazymod import LazyModule +from xblock_problem.capa.safe_exec.lazymod import LazyModule class ModuleIsolation: diff --git a/xblocks_contrib/problem/capa/safe_exec/tests/test_remote_exec.py b/src/xblock_problem/capa/safe_exec/tests/test_remote_exec.py similarity index 92% rename from xblocks_contrib/problem/capa/safe_exec/tests/test_remote_exec.py rename to src/xblock_problem/capa/safe_exec/tests/test_remote_exec.py index cda96274..2a6c3227 100644 --- a/xblocks_contrib/problem/capa/safe_exec/tests/test_remote_exec.py +++ b/src/xblock_problem/capa/safe_exec/tests/test_remote_exec.py @@ -8,7 +8,7 @@ from django.test import override_settings -from xblocks_contrib.problem.capa.safe_exec.remote_exec import get_remote_exec +from xblock_problem.capa.safe_exec.remote_exec import get_remote_exec class TestRemoteExec(TestCase): diff --git a/xblocks_contrib/problem/capa/safe_exec/tests/test_safe_exec.py b/src/xblock_problem/capa/safe_exec/tests/test_safe_exec.py similarity index 94% rename from xblocks_contrib/problem/capa/safe_exec/tests/test_safe_exec.py rename to src/xblock_problem/capa/safe_exec/tests/test_safe_exec.py index 560c6abc..c741536c 100644 --- a/xblocks_contrib/problem/capa/safe_exec/tests/test_safe_exec.py +++ b/src/xblock_problem/capa/safe_exec/tests/test_safe_exec.py @@ -19,13 +19,10 @@ from six import unichr from six.moves import range -from xblocks_contrib.problem.capa.safe_exec import safe_exec, update_hash -from xblocks_contrib.problem.capa.safe_exec.remote_exec import ( - is_codejail_in_darklaunch, - is_codejail_rest_service_enabled, -) -from xblocks_contrib.problem.capa.safe_exec.safe_exec import emsg_normalizers, normalize_error_message -from xblocks_contrib.problem.capa.tests.test_util import UseUnsafeCodejail +from xblock_problem.capa.safe_exec import safe_exec, update_hash +from xblock_problem.capa.safe_exec.remote_exec import is_codejail_in_darklaunch, is_codejail_rest_service_enabled +from xblock_problem.capa.safe_exec.safe_exec import emsg_normalizers, normalize_error_message +from xblock_problem.capa.tests.test_util import UseUnsafeCodejail @UseUnsafeCodejail() @@ -99,7 +96,7 @@ def test_cant_do_something_forbidden(self): throws SafeExecException, protecting the calling process. This test is skipped unless a local or remote CodeJail service is - properly configured. In xblocks-contrib, the test **will pass** + properly configured. In xblocks-core, the test **will pass** when the CodeJail REST service is running and the following setting is enabled: @@ -110,7 +107,7 @@ def test_cant_do_something_forbidden(self): See setup instructions: * in-platform setup: - https://github.com/openedx/xblocks-contrib/blob/main/xblocks_contrib/problem/capa/safe_exec/README.rst + https://github.com/openedx/xblocks-core/blob/main/src/xblock_problem/capa/safe_exec/README.rst * remote setup (using Tutor): https://github.com/eduNEXT/tutor-contrib-codejail """ @@ -145,8 +142,8 @@ class TestCodeJailDarkLaunch(unittest.TestCase): Test that the behavior of the dark launched code behaves as expected. """ - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.get_remote_exec") - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.codejail_safe_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.get_remote_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.codejail_safe_exec") def test_default_code_execution(self, mock_local_exec, mock_remote_exec): """Check that default code execution uses local exec only.""" # Test default only runs local exec. @@ -156,8 +153,8 @@ def test_default_code_execution(self, mock_local_exec, mock_remote_exec): assert not mock_remote_exec.called @override_settings(ENABLE_CODEJAIL_REST_SERVICE=True) - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.get_remote_exec") - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.codejail_safe_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.get_remote_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.codejail_safe_exec") def test_code_execution_only_codejail_service(self, mock_local_exec, mock_remote_exec): """Check execution via codejail service only.""" # Set return values to empty values to indicate no error. @@ -169,8 +166,8 @@ def test_code_execution_only_codejail_service(self, mock_local_exec, mock_remote assert mock_remote_exec.called @override_settings(ENABLE_CODEJAIL_DARKLAUNCH=True) - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.get_remote_exec") - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.codejail_safe_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.get_remote_exec") + @patch("xblock_problem.capa.safe_exec.safe_exec.codejail_safe_exec") def test_code_execution_darklaunch_misconfig(self, mock_local_exec, mock_remote_exec): """Test that darklaunch doesn't run when remote service is generally enabled.""" mock_remote_exec.return_value = (None, None) @@ -205,10 +202,10 @@ def run_dark_launch( # pylint: disable=too-many-positional-arguments,too-many-a assert is_codejail_in_darklaunch() with ( - patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.codejail_safe_exec") as mock_local_exec, - patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.get_remote_exec") as mock_remote_exec, - patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.set_custom_attribute") as mock_set_custom_attribute, - patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.log.info") as mock_log_info, + patch("xblock_problem.capa.safe_exec.safe_exec.codejail_safe_exec") as mock_local_exec, + patch("xblock_problem.capa.safe_exec.safe_exec.get_remote_exec") as mock_remote_exec, + patch("xblock_problem.capa.safe_exec.safe_exec.set_custom_attribute") as mock_set_custom_attribute, + patch("xblock_problem.capa.safe_exec.safe_exec.log.info") as mock_log_info, ): mock_local_exec.side_effect = local mock_remote_exec.side_effect = remote @@ -480,8 +477,8 @@ def test_can_replace_normalizers(self): }, ] ) - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.record_exception") - @patch("xblocks_contrib.problem.capa.safe_exec.safe_exec.log.error") + @patch("xblock_problem.capa.safe_exec.safe_exec.record_exception") + @patch("xblock_problem.capa.safe_exec.safe_exec.log.error") def test_normalizers_validate(self, mock_log_error, mock_record_exception): """Normalizers are validated, and fall back to default list on error.""" assert len(emsg_normalizers()) > 0 diff --git a/xblocks_contrib/problem/capa/static/applets/Protex.jar b/src/xblock_problem/capa/static/applets/Protex.jar similarity index 100% rename from xblocks_contrib/problem/capa/static/applets/Protex.jar rename to src/xblock_problem/capa/static/applets/Protex.jar diff --git a/xblocks_contrib/problem/capa/static/applets/genex.jar b/src/xblock_problem/capa/static/applets/genex.jar similarity index 100% rename from xblocks_contrib/problem/capa/static/applets/genex.jar rename to src/xblock_problem/capa/static/applets/genex.jar diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX2E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX2E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX2E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX2E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX2E1-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX2E1-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX2E1-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX2E1-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX2E2-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX2E2-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX2E2-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX2E2-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX2E3-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX2E3-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX2E3-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX2E3-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX3E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX3E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX3E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX3E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX3E1-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX3E1-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX3E1-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX3E1-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX3E2-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX3E2-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX3E2-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX3E2-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX4E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX4E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX4E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX4E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX4E1-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX4E1-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX4E1-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX4E1-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX4E2-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX4E2-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX4E2-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX4E2-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX5E1-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX5E1-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX5E1-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX5E1-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX5E2-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX5E2-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX5E2-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX5E2-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX6E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX6E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX6E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX6E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX6E1-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX6E1-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX6E1-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX6E1-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX7E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX7E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX7E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX7E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX8E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX8E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX8E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX8E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/AX9E0-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/AX9E0-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/AX9E0-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/AX9E0-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Bent-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Bent-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Bent-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Bent-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Linear-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Linear-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Linear-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Linear-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Linear-stick.png b/src/xblock_problem/capa/static/images/vsepr/Linear-stick.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Linear-stick.png rename to src/xblock_problem/capa/static/images/vsepr/Linear-stick.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Octahedral-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Octahedral-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Octahedral-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Octahedral-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Octahedral-stick.png b/src/xblock_problem/capa/static/images/vsepr/Octahedral-stick.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Octahedral-stick.png rename to src/xblock_problem/capa/static/images/vsepr/Octahedral-stick.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-bipyramidal-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Pentagonal-bipyramidal-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-bipyramidal-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Pentagonal-bipyramidal-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-planar-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Pentagonal-planar-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-planar-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Pentagonal-planar-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-pyramidal-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Pentagonal-pyramidal-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Pentagonal-pyramidal-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Pentagonal-pyramidal-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Pyramidal-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Pyramidal-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Pyramidal-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Pyramidal-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Seesaw-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Seesaw-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Seesaw-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Seesaw-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Square-antiprismatic-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Square-antiprismatic-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Square-antiprismatic-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Square-antiprismatic-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Square-planar-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Square-planar-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Square-planar-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Square-planar-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/T-shaped-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/T-shaped-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/T-shaped-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/T-shaped-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Tetrahedral-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Tetrahedral-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Tetrahedral-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Tetrahedral-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Tetrahedral-stick.png b/src/xblock_problem/capa/static/images/vsepr/Tetrahedral-stick.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Tetrahedral-stick.png rename to src/xblock_problem/capa/static/images/vsepr/Tetrahedral-stick.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Trigonal-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Trigonal-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-bipyramidal-3D-balls.png b/src/xblock_problem/capa/static/images/vsepr/Trigonal-bipyramidal-3D-balls.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-bipyramidal-3D-balls.png rename to src/xblock_problem/capa/static/images/vsepr/Trigonal-bipyramidal-3D-balls.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-bipyramidal-stick.png b/src/xblock_problem/capa/static/images/vsepr/Trigonal-bipyramidal-stick.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-bipyramidal-stick.png rename to src/xblock_problem/capa/static/images/vsepr/Trigonal-bipyramidal-stick.png diff --git a/xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-planar-stick.png b/src/xblock_problem/capa/static/images/vsepr/Trigonal-planar-stick.png similarity index 100% rename from xblocks_contrib/problem/capa/static/images/vsepr/Trigonal-planar-stick.png rename to src/xblock_problem/capa/static/images/vsepr/Trigonal-planar-stick.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/README b/src/xblock_problem/capa/static/js/capa/README similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/README rename to src/xblock_problem/capa/static/js/capa/README diff --git a/xblocks_contrib/problem/capa/static/js/capa/annotationinput.js b/src/xblock_problem/capa/static/js/capa/annotationinput.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/annotationinput.js rename to src/xblock_problem/capa/static/js/capa/annotationinput.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/chemical_equation_preview.js b/src/xblock_problem/capa/static/js/capa/chemical_equation_preview.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/chemical_equation_preview.js rename to src/xblock_problem/capa/static/js/capa/chemical_equation_preview.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/choicetextinput.js b/src/xblock_problem/capa/static/js/capa/choicetextinput.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/choicetextinput.js rename to src/xblock_problem/capa/static/js/capa/choicetextinput.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/design-protein-2d.js b/src/xblock_problem/capa/static/js/capa/design-protein-2d.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/design-protein-2d.js rename to src/xblock_problem/capa/static/js/capa/design-protein-2d.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/base_image.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/base_image.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/base_image.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/base_image.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/config_parser.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/config_parser.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/config_parser.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/config_parser.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/container.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/container.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/container.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/container.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggable_events.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/draggable_events.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggable_events.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/draggable_events.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggable_logic.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/draggable_logic.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggable_logic.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/draggable_logic.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggables.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/draggables.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/draggables.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/draggables.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/main.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/main.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/main.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/main.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/scroller.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/scroller.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/scroller.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/scroller.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/state.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/state.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/state.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/state.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/targets.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/targets.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/targets.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/targets.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/update_input.js b/src/xblock_problem/capa/static/js/capa/drag_and_drop/update_input.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/drag_and_drop/update_input.js rename to src/xblock_problem/capa/static/js/capa/drag_and_drop/update_input.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/edit-a-gene.js b/src/xblock_problem/capa/static/js/capa/edit-a-gene.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/edit-a-gene.js rename to src/xblock_problem/capa/static/js/capa/edit-a-gene.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/fixtures/jsinput.html b/src/xblock_problem/capa/static/js/capa/fixtures/jsinput.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/fixtures/jsinput.html rename to src/xblock_problem/capa/static/js/capa/fixtures/jsinput.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/21B31BA00E7CE7B6BD63DD13A8586A45.cache.html b/src/xblock_problem/capa/static/js/capa/genex/21B31BA00E7CE7B6BD63DD13A8586A45.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/21B31BA00E7CE7B6BD63DD13A8586A45.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/21B31BA00E7CE7B6BD63DD13A8586A45.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/63308EE54E8033A708B414CAC05B0C32.cache.html b/src/xblock_problem/capa/static/js/capa/genex/63308EE54E8033A708B414CAC05B0C32.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/63308EE54E8033A708B414CAC05B0C32.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/63308EE54E8033A708B414CAC05B0C32.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/7AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html b/src/xblock_problem/capa/static/js/capa/genex/7AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/7AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/7AC57DC6EC8C1D8672DDF6E6D4EF57CC.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/9B4F4D4EFA24CDE2E4287CC07897F249.cache.html b/src/xblock_problem/capa/static/js/capa/genex/9B4F4D4EFA24CDE2E4287CC07897F249.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/9B4F4D4EFA24CDE2E4287CC07897F249.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/9B4F4D4EFA24CDE2E4287CC07897F249.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/A069AC107D79C29D6237614AC340F0C0.cache.html b/src/xblock_problem/capa/static/js/capa/genex/A069AC107D79C29D6237614AC340F0C0.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/A069AC107D79C29D6237614AC340F0C0.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/A069AC107D79C29D6237614AC340F0C0.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/C6220FCC8B9234FEAD8D826A73C6D2A4.cache.html b/src/xblock_problem/capa/static/js/capa/genex/C6220FCC8B9234FEAD8D826A73C6D2A4.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/C6220FCC8B9234FEAD8D826A73C6D2A4.cache.html rename to src/xblock_problem/capa/static/js/capa/genex/C6220FCC8B9234FEAD8D826A73C6D2A4.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/clear.cache.gif b/src/xblock_problem/capa/static/js/capa/genex/clear.cache.gif similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/clear.cache.gif rename to src/xblock_problem/capa/static/js/capa/genex/clear.cache.gif diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/genex.css b/src/xblock_problem/capa/static/js/capa/genex/genex.css similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/genex.css rename to src/xblock_problem/capa/static/js/capa/genex/genex.css diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/genex.nocache.js b/src/xblock_problem/capa/static/js/capa/genex/genex.nocache.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/genex.nocache.js rename to src/xblock_problem/capa/static/js/capa/genex/genex.nocache.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/hosted.html b/src/xblock_problem/capa/static/js/capa/genex/hosted.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/hosted.html rename to src/xblock_problem/capa/static/js/capa/genex/hosted.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/circles.png b/src/xblock_problem/capa/static/js/capa/genex/images/circles.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/circles.png rename to src/xblock_problem/capa/static/js/capa/genex/images/circles.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/circles_ie6.png b/src/xblock_problem/capa/static/js/capa/genex/images/circles_ie6.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/circles_ie6.png rename to src/xblock_problem/capa/static/js/capa/genex/images/circles_ie6.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/corner.png b/src/xblock_problem/capa/static/js/capa/genex/images/corner.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/corner.png rename to src/xblock_problem/capa/static/js/capa/genex/images/corner.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/corner_ie6.png b/src/xblock_problem/capa/static/js/capa/genex/images/corner_ie6.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/corner_ie6.png rename to src/xblock_problem/capa/static/js/capa/genex/images/corner_ie6.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/hborder.png b/src/xblock_problem/capa/static/js/capa/genex/images/hborder.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/hborder.png rename to src/xblock_problem/capa/static/js/capa/genex/images/hborder.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/hborder_ie6.png b/src/xblock_problem/capa/static/js/capa/genex/images/hborder_ie6.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/hborder_ie6.png rename to src/xblock_problem/capa/static/js/capa/genex/images/hborder_ie6.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/thumb_horz.png b/src/xblock_problem/capa/static/js/capa/genex/images/thumb_horz.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/thumb_horz.png rename to src/xblock_problem/capa/static/js/capa/genex/images/thumb_horz.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/thumb_vertical.png b/src/xblock_problem/capa/static/js/capa/genex/images/thumb_vertical.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/thumb_vertical.png rename to src/xblock_problem/capa/static/js/capa/genex/images/thumb_vertical.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/vborder.png b/src/xblock_problem/capa/static/js/capa/genex/images/vborder.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/vborder.png rename to src/xblock_problem/capa/static/js/capa/genex/images/vborder.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/genex/images/vborder_ie6.png b/src/xblock_problem/capa/static/js/capa/genex/images/vborder_ie6.png similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/genex/images/vborder_ie6.png rename to src/xblock_problem/capa/static/js/capa/genex/images/vborder_ie6.png diff --git a/xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.css b/src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.css similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.css rename to src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.css diff --git a/xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.html b/src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.html rename to src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.js b/src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/jsinput/jsinput_example.js rename to src/xblock_problem/capa/static/js/capa/jsinput/jsinput_example.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/39CC89519B0E1FCB47B935AC9FE13D7B.cache.html b/src/xblock_problem/capa/static/js/capa/protex/39CC89519B0E1FCB47B935AC9FE13D7B.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/39CC89519B0E1FCB47B935AC9FE13D7B.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/39CC89519B0E1FCB47B935AC9FE13D7B.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/6E05B1CD5BFCAF7D53C7C64D84318178.cache.html b/src/xblock_problem/capa/static/js/capa/protex/6E05B1CD5BFCAF7D53C7C64D84318178.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/6E05B1CD5BFCAF7D53C7C64D84318178.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/6E05B1CD5BFCAF7D53C7C64D84318178.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/C824A958AB642DC2213DFFDAC640BEAA.cache.html b/src/xblock_problem/capa/static/js/capa/protex/C824A958AB642DC2213DFFDAC640BEAA.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/C824A958AB642DC2213DFFDAC640BEAA.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/C824A958AB642DC2213DFFDAC640BEAA.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/D9267DE8FB02F8B995B4A58C66C76E29.cache.html b/src/xblock_problem/capa/static/js/capa/protex/D9267DE8FB02F8B995B4A58C66C76E29.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/D9267DE8FB02F8B995B4A58C66C76E29.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/D9267DE8FB02F8B995B4A58C66C76E29.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/F275492F7098103BCB05F4F86ABF6218.cache.html b/src/xblock_problem/capa/static/js/capa/protex/F275492F7098103BCB05F4F86ABF6218.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/F275492F7098103BCB05F4F86ABF6218.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/F275492F7098103BCB05F4F86ABF6218.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/F3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html b/src/xblock_problem/capa/static/js/capa/protex/F3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/F3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html rename to src/xblock_problem/capa/static/js/capa/protex/F3301B0E65F38C7FCF2EF3764B3BB0B6.cache.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/clear.cache.gif b/src/xblock_problem/capa/static/js/capa/protex/clear.cache.gif similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/clear.cache.gif rename to src/xblock_problem/capa/static/js/capa/protex/clear.cache.gif diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/hosted.html b/src/xblock_problem/capa/static/js/capa/protex/hosted.html similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/hosted.html rename to src/xblock_problem/capa/static/js/capa/protex/hosted.html diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/protex.css b/src/xblock_problem/capa/static/js/capa/protex/protex.css similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/protex.css rename to src/xblock_problem/capa/static/js/capa/protex/protex.css diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/protex.nocache.js b/src/xblock_problem/capa/static/js/capa/protex/protex.nocache.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/protex.nocache.js rename to src/xblock_problem/capa/static/js/capa/protex/protex.nocache.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/protex/scrollTableLoading.gif b/src/xblock_problem/capa/static/js/capa/protex/scrollTableLoading.gif similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/protex/scrollTableLoading.gif rename to src/xblock_problem/capa/static/js/capa/protex/scrollTableLoading.gif diff --git a/xblocks_contrib/problem/capa/static/js/capa/schematicinput.js b/src/xblock_problem/capa/static/js/capa/schematicinput.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/schematicinput.js rename to src/xblock_problem/capa/static/js/capa/schematicinput.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/spec/formula_equation_preview_spec.js b/src/xblock_problem/capa/static/js/capa/spec/formula_equation_preview_spec.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/spec/formula_equation_preview_spec.js rename to src/xblock_problem/capa/static/js/capa/spec/formula_equation_preview_spec.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/spec/jsinput_spec.js b/src/xblock_problem/capa/static/js/capa/spec/jsinput_spec.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/spec/jsinput_spec.js rename to src/xblock_problem/capa/static/js/capa/spec/jsinput_spec.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/src/formula_equation_preview.js b/src/xblock_problem/capa/static/js/capa/src/formula_equation_preview.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/src/formula_equation_preview.js rename to src/xblock_problem/capa/static/js/capa/src/formula_equation_preview.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/src/jschannel.js b/src/xblock_problem/capa/static/js/capa/src/jschannel.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/src/jschannel.js rename to src/xblock_problem/capa/static/js/capa/src/jschannel.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/src/jsinput.js b/src/xblock_problem/capa/static/js/capa/src/jsinput.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/src/jsinput.js rename to src/xblock_problem/capa/static/js/capa/src/jsinput.js diff --git a/xblocks_contrib/problem/capa/static/js/capa/symbolic_mathjax_preprocessor.js b/src/xblock_problem/capa/static/js/capa/symbolic_mathjax_preprocessor.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/capa/symbolic_mathjax_preprocessor.js rename to src/xblock_problem/capa/static/js/capa/symbolic_mathjax_preprocessor.js diff --git a/xblocks_contrib/problem/capa/static/js/vendor/CodeMirror/octave.js b/src/xblock_problem/capa/static/js/vendor/CodeMirror/octave.js similarity index 100% rename from xblocks_contrib/problem/capa/static/js/vendor/CodeMirror/octave.js rename to src/xblock_problem/capa/static/js/vendor/CodeMirror/octave.js diff --git a/xblocks_contrib/problem/capa/templates/annotationinput.html b/src/xblock_problem/capa/templates/annotationinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/annotationinput.html rename to src/xblock_problem/capa/templates/annotationinput.html diff --git a/xblocks_contrib/problem/capa/templates/chemicalequationinput.html b/src/xblock_problem/capa/templates/chemicalequationinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/chemicalequationinput.html rename to src/xblock_problem/capa/templates/chemicalequationinput.html diff --git a/xblocks_contrib/problem/capa/templates/choicegroup.html b/src/xblock_problem/capa/templates/choicegroup.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/choicegroup.html rename to src/xblock_problem/capa/templates/choicegroup.html diff --git a/xblocks_contrib/problem/capa/templates/choicetext.html b/src/xblock_problem/capa/templates/choicetext.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/choicetext.html rename to src/xblock_problem/capa/templates/choicetext.html diff --git a/xblocks_contrib/problem/capa/templates/clarification.html b/src/xblock_problem/capa/templates/clarification.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/clarification.html rename to src/xblock_problem/capa/templates/clarification.html diff --git a/xblocks_contrib/problem/capa/templates/codeinput.html b/src/xblock_problem/capa/templates/codeinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/codeinput.html rename to src/xblock_problem/capa/templates/codeinput.html diff --git a/xblocks_contrib/problem/capa/templates/crystallography.html b/src/xblock_problem/capa/templates/crystallography.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/crystallography.html rename to src/xblock_problem/capa/templates/crystallography.html diff --git a/xblocks_contrib/problem/capa/templates/designprotein2dinput.html b/src/xblock_problem/capa/templates/designprotein2dinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/designprotein2dinput.html rename to src/xblock_problem/capa/templates/designprotein2dinput.html diff --git a/xblocks_contrib/problem/capa/templates/drag_and_drop_input.html b/src/xblock_problem/capa/templates/drag_and_drop_input.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/drag_and_drop_input.html rename to src/xblock_problem/capa/templates/drag_and_drop_input.html diff --git a/xblocks_contrib/problem/capa/templates/editageneinput.html b/src/xblock_problem/capa/templates/editageneinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/editageneinput.html rename to src/xblock_problem/capa/templates/editageneinput.html diff --git a/xblocks_contrib/problem/capa/templates/editamolecule.html b/src/xblock_problem/capa/templates/editamolecule.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/editamolecule.html rename to src/xblock_problem/capa/templates/editamolecule.html diff --git a/xblocks_contrib/problem/capa/templates/filesubmission.html b/src/xblock_problem/capa/templates/filesubmission.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/filesubmission.html rename to src/xblock_problem/capa/templates/filesubmission.html diff --git a/xblocks_contrib/problem/capa/templates/formulaequationinput.html b/src/xblock_problem/capa/templates/formulaequationinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/formulaequationinput.html rename to src/xblock_problem/capa/templates/formulaequationinput.html diff --git a/xblocks_contrib/problem/capa/templates/imageinput.html b/src/xblock_problem/capa/templates/imageinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/imageinput.html rename to src/xblock_problem/capa/templates/imageinput.html diff --git a/xblocks_contrib/problem/capa/templates/jsinput.html b/src/xblock_problem/capa/templates/jsinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/jsinput.html rename to src/xblock_problem/capa/templates/jsinput.html diff --git a/xblocks_contrib/problem/capa/templates/mathstring.html b/src/xblock_problem/capa/templates/mathstring.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/mathstring.html rename to src/xblock_problem/capa/templates/mathstring.html diff --git a/xblocks_contrib/problem/capa/templates/matlabinput.html b/src/xblock_problem/capa/templates/matlabinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/matlabinput.html rename to src/xblock_problem/capa/templates/matlabinput.html diff --git a/xblocks_contrib/problem/capa/templates/optioninput.html b/src/xblock_problem/capa/templates/optioninput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/optioninput.html rename to src/xblock_problem/capa/templates/optioninput.html diff --git a/xblocks_contrib/problem/capa/templates/problem.html b/src/xblock_problem/capa/templates/problem.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/problem.html rename to src/xblock_problem/capa/templates/problem.html diff --git a/xblocks_contrib/problem/capa/templates/problem_ajax.html b/src/xblock_problem/capa/templates/problem_ajax.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/problem_ajax.html rename to src/xblock_problem/capa/templates/problem_ajax.html diff --git a/xblocks_contrib/problem/capa/templates/problem_notifications.html b/src/xblock_problem/capa/templates/problem_notifications.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/problem_notifications.html rename to src/xblock_problem/capa/templates/problem_notifications.html diff --git a/xblocks_contrib/problem/capa/templates/schematicinput.html b/src/xblock_problem/capa/templates/schematicinput.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/schematicinput.html rename to src/xblock_problem/capa/templates/schematicinput.html diff --git a/xblocks_contrib/problem/capa/templates/solutionspan.html b/src/xblock_problem/capa/templates/solutionspan.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/solutionspan.html rename to src/xblock_problem/capa/templates/solutionspan.html diff --git a/xblocks_contrib/problem/capa/templates/status_span.html b/src/xblock_problem/capa/templates/status_span.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/status_span.html rename to src/xblock_problem/capa/templates/status_span.html diff --git a/xblocks_contrib/problem/capa/templates/textline.html b/src/xblock_problem/capa/templates/textline.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/textline.html rename to src/xblock_problem/capa/templates/textline.html diff --git a/xblocks_contrib/problem/capa/templates/vsepr_input.html b/src/xblock_problem/capa/templates/vsepr_input.html similarity index 100% rename from xblocks_contrib/problem/capa/templates/vsepr_input.html rename to src/xblock_problem/capa/templates/vsepr_input.html diff --git a/xblocks_contrib/problem/capa/safe_exec/tests/__init__.py b/src/xblock_problem/capa/tests/__init__.py similarity index 100% rename from xblocks_contrib/problem/capa/safe_exec/tests/__init__.py rename to src/xblock_problem/capa/tests/__init__.py diff --git a/xblocks_contrib/problem/capa/tests/helpers.py b/src/xblock_problem/capa/tests/helpers.py similarity index 96% rename from xblocks_contrib/problem/capa/tests/helpers.py rename to src/xblock_problem/capa/tests/helpers.py index 2ce9d144..d2090e4c 100644 --- a/xblocks_contrib/problem/capa/tests/helpers.py +++ b/src/xblock_problem/capa/tests/helpers.py @@ -10,8 +10,8 @@ import fs.osfs from django.template.loader import get_template as django_get_template -from xblocks_contrib.problem.capa.capa_problem import LoncapaProblem, LoncapaSystem -from xblocks_contrib.problem.capa.inputtypes import Status +from xblock_problem.capa.capa_problem import LoncapaProblem, LoncapaSystem +from xblock_problem.capa.inputtypes import Status TEST_DIR = os.path.dirname(os.path.realpath(__file__)) diff --git a/xblocks_contrib/problem/capa/tests/response_xml_factory.py b/src/xblock_problem/capa/tests/response_xml_factory.py similarity index 100% rename from xblocks_contrib/problem/capa/tests/response_xml_factory.py rename to src/xblock_problem/capa/tests/response_xml_factory.py diff --git a/xblocks_contrib/problem/capa/tests/test_answer_pool.py b/src/xblock_problem/capa/tests/test_answer_pool.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_answer_pool.py rename to src/xblock_problem/capa/tests/test_answer_pool.py index b13c5c90..77b4ae6e 100644 --- a/xblocks_contrib/problem/capa/tests/test_answer_pool.py +++ b/src/xblock_problem/capa/tests/test_answer_pool.py @@ -6,8 +6,8 @@ import textwrap import unittest -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem +from xblock_problem.capa.responsetypes import LoncapaProblemError +from xblock_problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem class CapaAnswerPoolTest(unittest.TestCase): diff --git a/xblocks_contrib/problem/capa/tests/test_capa_problem.py b/src/xblock_problem/capa/tests/test_capa_problem.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_capa_problem.py rename to src/xblock_problem/capa/tests/test_capa_problem.py index b6d3d135..10a3fa40 100644 --- a/xblocks_contrib/problem/capa/tests/test_capa_problem.py +++ b/src/xblock_problem/capa/tests/test_capa_problem.py @@ -11,11 +11,11 @@ from lxml import etree from markupsafe import Markup -from xblocks_contrib.problem.capa.correctmap import CorrectMap -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError -from xblocks_contrib.problem.capa.tests.helpers import new_loncapa_problem -from xblocks_contrib.problem.capa.tests.test_util import UseUnsafeCodejail -from xblocks_contrib.problem.markup import HTML +from xblock_problem.capa.correctmap import CorrectMap +from xblock_problem.capa.responsetypes import LoncapaProblemError +from xblock_problem.capa.tests.helpers import new_loncapa_problem +from xblock_problem.capa.tests.test_util import UseUnsafeCodejail +from xblock_problem.markup import HTML @ddt.ddt diff --git a/xblocks_contrib/problem/capa/tests/test_correctmap.py b/src/xblock_problem/capa/tests/test_correctmap.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_correctmap.py rename to src/xblock_problem/capa/tests/test_correctmap.py index 2dd878cc..5b5111c8 100644 --- a/xblocks_contrib/problem/capa/tests/test_correctmap.py +++ b/src/xblock_problem/capa/tests/test_correctmap.py @@ -7,7 +7,7 @@ import pytest -from xblocks_contrib.problem.capa.correctmap import CorrectMap +from xblock_problem.capa.correctmap import CorrectMap class CorrectMapTest(unittest.TestCase): diff --git a/xblocks_contrib/problem/capa/tests/test_customrender.py b/src/xblock_problem/capa/tests/test_customrender.py similarity index 95% rename from xblocks_contrib/problem/capa/tests/test_customrender.py rename to src/xblock_problem/capa/tests/test_customrender.py index 0ed38c67..cf278676 100644 --- a/xblocks_contrib/problem/capa/tests/test_customrender.py +++ b/src/xblock_problem/capa/tests/test_customrender.py @@ -5,8 +5,8 @@ from lxml import etree -from xblocks_contrib.problem.capa import customrender -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system +from xblock_problem.capa import customrender +from xblock_problem.capa.tests.helpers import mock_capa_system # just a handy shortcut lookup_tag = customrender.registry.get_class_for_tag diff --git a/xblocks_contrib/problem/capa/tests/test_errors.py b/src/xblock_problem/capa/tests/test_errors.py similarity index 97% rename from xblocks_contrib/problem/capa/tests/test_errors.py rename to src/xblock_problem/capa/tests/test_errors.py index 7bc49db3..75ce5820 100644 --- a/xblocks_contrib/problem/capa/tests/test_errors.py +++ b/src/xblock_problem/capa/tests/test_errors.py @@ -4,7 +4,7 @@ import pytest -from xblocks_contrib.problem.capa.errors import ( +from xblock_problem.capa.errors import ( GetSubmissionParamsError, JSONParsingError, MissingKeyError, diff --git a/xblocks_contrib/problem/capa/tests/test_files/dynamath_input.txt b/src/xblock_problem/capa/tests/test_files/dynamath_input.txt similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/dynamath_input.txt rename to src/xblock_problem/capa/tests/test_files/dynamath_input.txt diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints.xml b/src/xblock_problem/capa/tests/test_files/extended_hints.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_checkbox.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_checkbox.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_checkbox.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_checkbox.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_dropdown.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_dropdown.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_dropdown.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_dropdown.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_multiple_choice.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_multiple_choice.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_multiple_choice.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_multiple_choice.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_multiple_choice_with_html.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_multiple_choice_with_html.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_multiple_choice_with_html.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_multiple_choice_with_html.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_numeric_input.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_numeric_input.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_numeric_input.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_numeric_input.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_text_input.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_text_input.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_text_input.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_text_input.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/extended_hints_with_errors.xml b/src/xblock_problem/capa/tests/test_files/extended_hints_with_errors.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/extended_hints_with_errors.xml rename to src/xblock_problem/capa/tests/test_files/extended_hints_with_errors.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/filename_convert_test.txt b/src/xblock_problem/capa/tests/test_files/filename_convert_test.txt similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/filename_convert_test.txt rename to src/xblock_problem/capa/tests/test_files/filename_convert_test.txt diff --git a/xblocks_contrib/problem/capa/tests/test_files/js/mersenne-twister-min.js b/src/xblock_problem/capa/tests/test_files/js/mersenne-twister-min.js similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/js/mersenne-twister-min.js rename to src/xblock_problem/capa/tests/test_files/js/mersenne-twister-min.js diff --git a/xblocks_contrib/problem/capa/tests/test_files/js/test_problem_display.js b/src/xblock_problem/capa/tests/test_files/js/test_problem_display.js similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/js/test_problem_display.js rename to src/xblock_problem/capa/tests/test_files/js/test_problem_display.js diff --git a/xblocks_contrib/problem/capa/tests/test_files/js/test_problem_generator.js b/src/xblock_problem/capa/tests/test_files/js/test_problem_generator.js similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/js/test_problem_generator.js rename to src/xblock_problem/capa/tests/test_files/js/test_problem_generator.js diff --git a/xblocks_contrib/problem/capa/tests/test_files/js/test_problem_grader.js b/src/xblock_problem/capa/tests/test_files/js/test_problem_grader.js similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/js/test_problem_grader.js rename to src/xblock_problem/capa/tests/test_files/js/test_problem_grader.js diff --git a/xblocks_contrib/problem/capa/tests/test_files/js/xproblem.js b/src/xblock_problem/capa/tests/test_files/js/xproblem.js similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/js/xproblem.js rename to src/xblock_problem/capa/tests/test_files/js/xproblem.js diff --git a/xblocks_contrib/problem/capa/tests/test_files/snuggletex_2x+3y.xml b/src/xblock_problem/capa/tests/test_files/snuggletex_2x+3y.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/snuggletex_2x+3y.xml rename to src/xblock_problem/capa/tests/test_files/snuggletex_2x+3y.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/snuggletex_correct.html b/src/xblock_problem/capa/tests/test_files/snuggletex_correct.html similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/snuggletex_correct.html rename to src/xblock_problem/capa/tests/test_files/snuggletex_correct.html diff --git a/xblocks_contrib/problem/capa/tests/test_files/snuggletex_wrong.html b/src/xblock_problem/capa/tests/test_files/snuggletex_wrong.html similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/snuggletex_wrong.html rename to src/xblock_problem/capa/tests/test_files/snuggletex_wrong.html diff --git a/xblocks_contrib/problem/capa/tests/test_files/snuggletex_x+x+3y.xml b/src/xblock_problem/capa/tests/test_files/snuggletex_x+x+3y.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/snuggletex_x+x+3y.xml rename to src/xblock_problem/capa/tests/test_files/snuggletex_x+x+3y.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/targeted_feedback.xml b/src/xblock_problem/capa/tests/test_files/targeted_feedback.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/targeted_feedback.xml rename to src/xblock_problem/capa/tests/test_files/targeted_feedback.xml diff --git a/xblocks_contrib/problem/capa/tests/test_files/targeted_feedback_multiple.xml b/src/xblock_problem/capa/tests/test_files/targeted_feedback_multiple.xml similarity index 100% rename from xblocks_contrib/problem/capa/tests/test_files/targeted_feedback_multiple.xml rename to src/xblock_problem/capa/tests/test_files/targeted_feedback_multiple.xml diff --git a/xblocks_contrib/problem/capa/tests/test_hint_functionality.py b/src/xblock_problem/capa/tests/test_hint_functionality.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_hint_functionality.py rename to src/xblock_problem/capa/tests/test_hint_functionality.py index 8ea6e41f..d7aee582 100644 --- a/xblocks_contrib/problem/capa/tests/test_hint_functionality.py +++ b/src/xblock_problem/capa/tests/test_hint_functionality.py @@ -9,7 +9,7 @@ import pytest from ddt import data, ddt, unpack -from xblocks_contrib.problem.capa.tests.helpers import load_fixture, new_loncapa_problem +from xblock_problem.capa.tests.helpers import load_fixture, new_loncapa_problem # With the use of ddt, some of the data expected_string cases below are naturally long stretches # of text text without whitespace. I think it's best to leave such lines intact diff --git a/xblocks_contrib/problem/capa/tests/test_html_render.py b/src/xblock_problem/capa/tests/test_html_render.py similarity index 98% rename from xblocks_contrib/problem/capa/tests/test_html_render.py rename to src/xblock_problem/capa/tests/test_html_render.py index a94a1c45..98de1b51 100644 --- a/xblocks_contrib/problem/capa/tests/test_html_render.py +++ b/src/xblock_problem/capa/tests/test_html_render.py @@ -10,9 +10,9 @@ import ddt from lxml import etree -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem -from xblocks_contrib.problem.capa.tests.test_util import UseUnsafeCodejail -from xblocks_contrib.problem.markup import HTML +from xblock_problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem +from xblock_problem.capa.tests.test_util import UseUnsafeCodejail +from xblock_problem.markup import HTML from .response_xml_factory import CustomResponseXMLFactory, StringResponseXMLFactory diff --git a/xblocks_contrib/problem/capa/tests/test_input_templates.py b/src/xblock_problem/capa/tests/test_input_templates.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_input_templates.py rename to src/xblock_problem/capa/tests/test_input_templates.py index c0566fe8..8de48186 100644 --- a/xblocks_contrib/problem/capa/tests/test_input_templates.py +++ b/src/xblock_problem/capa/tests/test_input_templates.py @@ -11,10 +11,10 @@ from lxml import etree from six.moves import range -from xblocks_contrib.problem.capa.inputtypes import Status -from xblocks_contrib.problem.capa.tests.helpers import capa_render_template -from xblocks_contrib.problem.markup import HTML -from xblocks_contrib.problem.stringify import stringify_children +from xblock_problem.capa.inputtypes import Status +from xblock_problem.capa.tests.helpers import capa_render_template +from xblock_problem.markup import HTML +from xblock_problem.stringify import stringify_children class TemplateError(Exception): diff --git a/xblocks_contrib/problem/capa/tests/test_inputtypes.py b/src/xblock_problem/capa/tests/test_inputtypes.py similarity index 98% rename from xblocks_contrib/problem/capa/tests/test_inputtypes.py rename to src/xblock_problem/capa/tests/test_inputtypes.py index 6306e382..bfe09015 100644 --- a/xblocks_contrib/problem/capa/tests/test_inputtypes.py +++ b/src/xblock_problem/capa/tests/test_inputtypes.py @@ -32,11 +32,11 @@ from pyparsing import ParseException from six.moves import zip -from xblocks_contrib.problem.capa import inputtypes -from xblocks_contrib.problem.capa.checker import DemoSystem -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system -from xblocks_contrib.problem.capa.xqueue_interface import XQUEUE_TIMEOUT -from xblocks_contrib.problem.markup import HTML +from xblock_problem.capa import inputtypes +from xblock_problem.capa.checker import DemoSystem +from xblock_problem.capa.tests.helpers import mock_capa_system +from xblock_problem.capa.xqueue_interface import XQUEUE_TIMEOUT +from xblock_problem.markup import HTML # just a handy shortcut lookup_tag = inputtypes.registry.get_class_for_tag @@ -598,7 +598,7 @@ def test_rendering_when_completed(self): assert context == expected - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=10) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=10) def test_rendering_while_queued(self, time): # pylint: disable=unused-argument """Test rendering of Matlab input while a queue is in progress.""" state = { @@ -653,7 +653,7 @@ def test_plot_data_failure(self): assert "queuekey" not in self.the_input.input_state assert "queuestate" not in self.the_input.input_state - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=10) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=10) def test_ungraded_response_success(self, time): # pylint: disable=unused-argument """Test successful handling of ungraded responses from Xqueue.""" queuekey = "abcd" @@ -675,7 +675,7 @@ def test_ungraded_response_success(self, time): # pylint: disable=unused-argume assert input_state["queuestate"] is None assert input_state["queue_msg"] == inner_msg - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=10) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=10) def test_ungraded_response_key_mismatch(self, time): # pylint: disable=unused-argument """Ensure ungraded responses with mismatched keys are ignored.""" queuekey = "abcd" @@ -697,7 +697,7 @@ def test_ungraded_response_key_mismatch(self, time): # pylint: disable=unused-a assert input_state["queuestate"] == "queued" assert "queue_msg" not in input_state - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=20) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=20) def test_matlab_response_timeout_not_exceeded(self, time): # pylint: disable=unused-argument """Check status when Matlab response timeout has not been exceeded.""" @@ -707,7 +707,7 @@ def test_matlab_response_timeout_not_exceeded(self, time): # pylint: disable=un the_input = self.input_class(mock_capa_system(), elt, state) assert the_input.status == "queued" - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=45) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=45) def test_matlab_response_timeout_exceeded(self, time): # pylint: disable=unused-argument """Verify behavior when Matlab response timeout is exceeded.""" @@ -718,7 +718,7 @@ def test_matlab_response_timeout_exceeded(self, time): # pylint: disable=unused assert the_input.status == "unsubmitted" assert the_input.msg == f"No response from Xqueue within {XQUEUE_TIMEOUT} seconds. Aborted." - @patch("xblocks_contrib.problem.capa.inputtypes.time.time", return_value=20) + @patch("xblock_problem.capa.inputtypes.time.time", return_value=20) def test_matlab_response_migration_of_queuetime(self, time): # pylint: disable=unused-argument """ Test if problem was saved before queuetime was introduced. @@ -1246,19 +1246,19 @@ def test_ajax_parse_err(self): With parse errors, ChemicalEquationInput should give an error message """ # Simulate answering a problem that raises the exception - with patch("xblocks_contrib.problem.capa.inputtypes.chemcalc.render_to_html") as mock_render: + with patch("xblock_problem.capa.inputtypes.chemcalc.render_to_html") as mock_render: mock_render.side_effect = ParseException("ȧƈƈḗƞŧḗḓ ŧḗẋŧ ƒǿř ŧḗşŧīƞɠ") response = self.the_input.handle_ajax("preview_chemcalc", {"formula": "H2O + invalid chemistry"}) assert "error" in response assert "Couldn't parse formula" in response["error"] - @patch("xblocks_contrib.problem.capa.inputtypes.log") + @patch("xblock_problem.capa.inputtypes.log") def test_ajax_other_err(self, mock_log): """ With other errors, test that ChemicalEquationInput also logs it """ - with patch("xblocks_contrib.problem.capa.inputtypes.chemcalc.render_to_html") as mock_render: + with patch("xblock_problem.capa.inputtypes.chemcalc.render_to_html") as mock_render: mock_render.side_effect = Exception() response = self.the_input.handle_ajax("preview_chemcalc", {"formula": "H2O + superterrible chemistry"}) mock_log.warning.assert_called_once_with("Error while previewing chemical formula", exc_info=True) @@ -1383,7 +1383,7 @@ def test_ajax_parse_err(self): With parse errors, FormulaEquationInput should give an error message """ # Simulate answering a problem that raises the exception - with patch("xblocks_contrib.problem.capa.inputtypes.preview_numeric_input") as mock_preview: + with patch("xblock_problem.capa.inputtypes.preview_numeric_input") as mock_preview: mock_preview.side_effect = ParseException("Oopsie") response = self.the_input.handle_ajax( "preview_formcalc", @@ -1396,12 +1396,12 @@ def test_ajax_parse_err(self): assert "error" in response assert response["error"] == "Sorry, couldn't parse formula" - @patch("xblocks_contrib.problem.capa.inputtypes.log") + @patch("xblock_problem.capa.inputtypes.log") def test_ajax_other_err(self, mock_log): """ With other errors, test that FormulaEquationInput also logs it """ - with patch("xblocks_contrib.problem.capa.inputtypes.preview_numeric_input") as mock_preview: + with patch("xblock_problem.capa.inputtypes.preview_numeric_input") as mock_preview: mock_preview.side_effect = Exception() response = self.the_input.handle_ajax( "preview_formcalc", diff --git a/xblocks_contrib/problem/capa/tests/test_responsetypes.py b/src/xblock_problem/capa/tests/test_responsetypes.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_responsetypes.py rename to src/xblock_problem/capa/tests/test_responsetypes.py index e93d4340..a41fb1bc 100644 --- a/xblocks_contrib/problem/capa/tests/test_responsetypes.py +++ b/src/xblock_problem/capa/tests/test_responsetypes.py @@ -20,10 +20,10 @@ import random2 as random import requests -from xblocks_contrib.problem.capa.correctmap import CorrectMap -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError -from xblocks_contrib.problem.capa.tests.helpers import load_fixture, mock_capa_system, new_loncapa_problem -from xblocks_contrib.problem.capa.tests.response_xml_factory import ( +from xblock_problem.capa.correctmap import CorrectMap +from xblock_problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError +from xblock_problem.capa.tests.helpers import load_fixture, mock_capa_system, new_loncapa_problem +from xblock_problem.capa.tests.response_xml_factory import ( AnnotationResponseXMLFactory, ChoiceResponseXMLFactory, ChoiceTextResponseXMLFactory, @@ -39,9 +39,9 @@ SymbolicResponseXMLFactory, TrueFalseResponseXMLFactory, ) -from xblocks_contrib.problem.capa.tests.test_util import UseUnsafeCodejail -from xblocks_contrib.problem.capa.util import convert_files_to_filenames -from xblocks_contrib.problem.capa.xqueue_interface import DATEFORMAT +from xblock_problem.capa.tests.test_util import UseUnsafeCodejail +from xblock_problem.capa.util import convert_files_to_filenames +from xblock_problem.capa.xqueue_interface import DATEFORMAT class ResponseTest(unittest.TestCase): @@ -1568,7 +1568,7 @@ def test_staff_inputs_expressions_legacy(self): problem = self.build_problem(answer="1+1j", tolerance=1e-3) self.assert_grade(problem, "1+j", "correct") - @mock.patch("xblocks_contrib.problem.capa.responsetypes.log") + @mock.patch("xblock_problem.capa.responsetypes.log") def test_staff_inputs_bad_syntax(self, mock_log): """Test that staff may enter in a complex number as the answer.""" staff_ans = "clearly bad syntax )[+1e" @@ -1580,7 +1580,7 @@ def test_staff_inputs_bad_syntax(self, mock_log): mock_log.debug.assert_called_once_with("Content error--answer '%s' is not a valid number", staff_ans) - @mock.patch("xblocks_contrib.problem.capa.responsetypes.log") + @mock.patch("xblock_problem.capa.responsetypes.log") def test_responsetype_i18n(self, mock_log): # pylint: disable=unused-argument """Test that LoncapaSystem has an i18n that works.""" staff_ans = "clearly bad syntax )[+1e" @@ -1622,7 +1622,7 @@ def evaluator_side_effect(_, __, math_string): problem = self.build_problem(answer=4, tolerance="10%") - with mock.patch("xblocks_contrib.problem.capa.responsetypes.evaluator") as mock_eval: + with mock.patch("xblock_problem.capa.responsetypes.evaluator") as mock_eval: mock_eval.side_effect = evaluator_side_effect self.assert_grade(problem, "some big input", "incorrect") self.assert_grade(problem, "some neg input", "incorrect") @@ -1645,7 +1645,7 @@ def test_err_handling(self): (ZeroDivisionError(), "Could not interpret '.*' as a number"), ] - with mock.patch("xblocks_contrib.problem.capa.responsetypes.evaluator") as mock_eval: + with mock.patch("xblock_problem.capa.responsetypes.evaluator") as mock_eval: for err, msg_regex in errors: def evaluator_side_effect(_, __, math_string, err=err): diff --git a/xblocks_contrib/problem/capa/tests/test_shuffle.py b/src/xblock_problem/capa/tests/test_shuffle.py similarity index 98% rename from xblocks_contrib/problem/capa/tests/test_shuffle.py rename to src/xblock_problem/capa/tests/test_shuffle.py index d7682318..219575da 100644 --- a/xblocks_contrib/problem/capa/tests/test_shuffle.py +++ b/src/xblock_problem/capa/tests/test_shuffle.py @@ -3,8 +3,8 @@ import textwrap import unittest -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem +from xblock_problem.capa.responsetypes import LoncapaProblemError +from xblock_problem.capa.tests.helpers import mock_capa_system, new_loncapa_problem class CapaShuffleTest(unittest.TestCase): diff --git a/xblocks_contrib/problem/capa/tests/test_targeted_feedback.py b/src/xblock_problem/capa/tests/test_targeted_feedback.py similarity index 99% rename from xblocks_contrib/problem/capa/tests/test_targeted_feedback.py rename to src/xblock_problem/capa/tests/test_targeted_feedback.py index 245f83f3..412d24a3 100644 --- a/xblocks_contrib/problem/capa/tests/test_targeted_feedback.py +++ b/src/xblock_problem/capa/tests/test_targeted_feedback.py @@ -6,7 +6,7 @@ import textwrap import unittest -from xblocks_contrib.problem.capa.tests.helpers import load_fixture, mock_capa_system, new_loncapa_problem +from xblock_problem.capa.tests.helpers import load_fixture, mock_capa_system, new_loncapa_problem class CapaTargetedFeedbackTest(unittest.TestCase): diff --git a/xblocks_contrib/problem/capa/tests/test_util.py b/src/xblock_problem/capa/tests/test_util.py similarity index 98% rename from xblocks_contrib/problem/capa/tests/test_util.py rename to src/xblock_problem/capa/tests/test_util.py index 57dd3e82..d62a57d8 100644 --- a/xblocks_contrib/problem/capa/tests/test_util.py +++ b/src/xblock_problem/capa/tests/test_util.py @@ -10,8 +10,8 @@ from django.test.utils import TestContextDecorator from lxml import etree -from xblocks_contrib.problem.capa.tests.helpers import mock_capa_system -from xblocks_contrib.problem.capa.util import ( +from xblock_problem.capa.tests.helpers import mock_capa_system +from xblock_problem.capa.util import ( compare_with_tolerance, contextualize_text, get_inner_html_from_xpath, diff --git a/xblocks_contrib/problem/capa/tests/test_xqueue_interface.py b/src/xblock_problem/capa/tests/test_xqueue_interface.py similarity index 90% rename from xblocks_contrib/problem/capa/tests/test_xqueue_interface.py rename to src/xblock_problem/capa/tests/test_xqueue_interface.py index 5efa81ac..b4176a70 100644 --- a/xblocks_contrib/problem/capa/tests/test_xqueue_interface.py +++ b/src/xblock_problem/capa/tests/test_xqueue_interface.py @@ -5,11 +5,11 @@ import pytest -from xblocks_contrib.problem.capa.xqueue_interface import XQueueInterface +from xblock_problem.capa.xqueue_interface import XQueueInterface @pytest.mark.django_db -@patch("xblocks_contrib.problem.capa.xqueue_submission.XQueueInterfaceSubmission.send_to_submission") +@patch("xblock_problem.capa.xqueue_submission.XQueueInterfaceSubmission.send_to_submission") def test_send_to_queue_with_flag_enabled(mock_send_to_submission): """Test send_to_queue when the waffle flag is enabled.""" url = "http://example.com/xqueue" @@ -41,7 +41,7 @@ def test_send_to_queue_with_flag_enabled(mock_send_to_submission): @pytest.mark.django_db -@patch("xblocks_contrib.problem.capa.xqueue_interface.XQueueInterface._http_post") +@patch("xblock_problem.capa.xqueue_interface.XQueueInterface._http_post") def test_send_to_queue_with_flag_disabled(mock_http_post): """Test send_to_queue when the waffle flag is disabled.""" url = "http://example.com/xqueue" diff --git a/xblocks_contrib/problem/capa/tests/test_xqueue_submission.py b/src/xblock_problem/capa/tests/test_xqueue_submission.py similarity index 98% rename from xblocks_contrib/problem/capa/tests/test_xqueue_submission.py rename to src/xblock_problem/capa/tests/test_xqueue_submission.py index e021b745..fb4ff540 100644 --- a/xblocks_contrib/problem/capa/tests/test_xqueue_submission.py +++ b/src/xblock_problem/capa/tests/test_xqueue_submission.py @@ -9,7 +9,7 @@ from opaque_keys.edx.locator import BlockUsageLocator, CourseLocator from xblock.fields import ScopeIds -from xblocks_contrib.problem.capa.xqueue_submission import XQueueInterfaceSubmission +from xblock_problem.capa.xqueue_submission import XQueueInterfaceSubmission @pytest.fixture diff --git a/xblocks_contrib/problem/capa/util.py b/src/xblock_problem/capa/util.py similarity index 99% rename from xblocks_contrib/problem/capa/util.py rename to src/xblock_problem/capa/util.py index c41c52c2..ae705f6c 100644 --- a/xblocks_contrib/problem/capa/util.py +++ b/src/xblock_problem/capa/util.py @@ -11,7 +11,7 @@ from calc import evaluator from lxml import etree -from xblocks_contrib.problem.markup import HTML +from xblock_problem.markup import HTML # ----------------------------------------------------------------------------- # diff --git a/xblocks_contrib/problem/capa/xqueue_interface.py b/src/xblock_problem/capa/xqueue_interface.py similarity index 97% rename from xblocks_contrib/problem/capa/xqueue_interface.py rename to src/xblock_problem/capa/xqueue_interface.py index 11dcd0dc..0ee0eefb 100644 --- a/xblocks_contrib/problem/capa/xqueue_interface.py +++ b/src/xblock_problem/capa/xqueue_interface.py @@ -10,10 +10,10 @@ import requests from requests.auth import HTTPBasicAuth -from xblocks_contrib.problem.capa.xqueue_submission import XQueueInterfaceSubmission +from xblock_problem.capa.xqueue_submission import XQueueInterfaceSubmission if TYPE_CHECKING: - from xblocks_contrib.problem.capa_block import ProblemBlock + from xblock_problem.capa_block import ProblemBlock log = logging.getLogger(__name__) DATEFORMAT = "%Y%m%d%H%M%S" diff --git a/xblocks_contrib/problem/capa/xqueue_submission.py b/src/xblock_problem/capa/xqueue_submission.py similarity index 98% rename from xblocks_contrib/problem/capa/xqueue_submission.py rename to src/xblock_problem/capa/xqueue_submission.py index 98ef8bdf..3bb873f4 100644 --- a/xblocks_contrib/problem/capa/xqueue_submission.py +++ b/src/xblock_problem/capa/xqueue_submission.py @@ -6,7 +6,7 @@ import json import logging -from xblocks_contrib.problem.capa.errors import ( +from xblock_problem.capa.errors import ( GetSubmissionParamsError, JSONParsingError, MissingKeyError, diff --git a/xblocks_contrib/problem/capa_block.py b/src/xblock_problem/capa_block.py similarity index 99% rename from xblocks_contrib/problem/capa_block.py rename to src/xblock_problem/capa_block.py index 8186da02..51eff55c 100644 --- a/xblocks_contrib/problem/capa_block.py +++ b/src/xblock_problem/capa_block.py @@ -47,13 +47,13 @@ from xblock.runtime import KeyValueStore, KvsFieldData from xblock.scorable import ScorableXBlockMixin, Score, ShowCorrectness -from xblocks_contrib.legacy_utils.xml_utils import LegacyXmlMixin, is_pointer_tag -from xblocks_contrib.problem.capa import responsetypes -from xblocks_contrib.problem.capa.capa_problem import LoncapaProblem, LoncapaSystem -from xblocks_contrib.problem.capa.inputtypes import Status -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError -from xblocks_contrib.problem.capa.util import convert_files_to_filenames, get_inner_html_from_xpath -from xblocks_contrib.problem.markup import HTML, Text +from xblock_problem.capa import responsetypes +from xblock_problem.capa.capa_problem import LoncapaProblem, LoncapaSystem +from xblock_problem.capa.inputtypes import Status +from xblock_problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError +from xblock_problem.capa.util import convert_files_to_filenames, get_inner_html_from_xpath +from xblock_problem.markup import HTML, Text +from xblocks_core.legacy_utils.xml_utils import LegacyXmlMixin, is_pointer_tag log = logging.getLogger("edx.courseware") @@ -207,7 +207,7 @@ class ProblemBlock(ScorableXBlockMixin, LegacyXmlMixin, XBlock): An XBlock representing a "problem". A problem contains zero or more respondable items, such as multiple choice, - numeric response, true/false, etc. See xblocks_contrib/problem/capa/responsetypes.py + numeric response, true/false, etc. See src/xblock_problem/capa/responsetypes.py for the full ensemble. The rendering logic of a problem is largely encapsulated within diff --git a/xblocks_contrib/problem/capa/tests/__init__.py b/src/xblock_problem/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/problem/capa/tests/__init__.py rename to src/xblock_problem/conf/locale/__init__.py diff --git a/xblocks_contrib/problem/conf/locale/config.yaml b/src/xblock_problem/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/problem/conf/locale/config.yaml rename to src/xblock_problem/conf/locale/config.yaml diff --git a/xblocks_contrib/problem/markup.py b/src/xblock_problem/markup.py similarity index 93% rename from xblocks_contrib/problem/markup.py rename to src/xblock_problem/markup.py index 1f023317..1f2eb472 100644 --- a/xblocks_contrib/problem/markup.py +++ b/src/xblock_problem/markup.py @@ -22,7 +22,7 @@ def HTML(html): # pylint: disable=invalid-name <%! from django.utils.translation import gettext as _ - from xblocks_contrib.problem.markup import HTML, Text + from xblock_problem.markup import HTML, Text %> ${Text(_("Write & send {start}email{end}")).format( start=HTML("").format(user.email), diff --git a/xblocks_contrib/problem/stringify.py b/src/xblock_problem/stringify.py similarity index 100% rename from xblocks_contrib/problem/stringify.py rename to src/xblock_problem/stringify.py diff --git a/xblocks_contrib/problem/tests/__init__.py b/src/xblock_problem/tests/__init__.py similarity index 97% rename from xblocks_contrib/problem/tests/__init__.py rename to src/xblock_problem/tests/__init__.py index 241b0171..6e481d25 100644 --- a/xblocks_contrib/problem/tests/__init__.py +++ b/src/xblock_problem/tests/__init__.py @@ -1,5 +1,5 @@ """ -Unit test harness for Problem Block in xblocks-contrib. +Unit test harness for Problem Block in xblocks-core. """ import pprint @@ -12,11 +12,10 @@ from xblock.reference.user_service import UserService, XBlockUser from xblock.test.tools import TestRuntime -from xblocks_contrib.problem.capa.xqueue_interface import XQueueInterface +from xblock_problem.capa.xqueue_interface import XQueueInterface -MODULE_DIR = path(__file__).dirname() # Location of common test DATA directory -DATA_DIR = MODULE_DIR.parent.parent / "problem" / "tests" / "data" +DATA_DIR = path(__file__).dirname() / "data" def mock_render_template(*args, **kwargs): diff --git a/xblocks_contrib/problem/tests/data/capa/prog1.py b/src/xblock_problem/tests/data/capa/prog1.py similarity index 100% rename from xblocks_contrib/problem/tests/data/capa/prog1.py rename to src/xblock_problem/tests/data/capa/prog1.py diff --git a/xblocks_contrib/problem/tests/data/capa/prog2.py b/src/xblock_problem/tests/data/capa/prog2.py similarity index 100% rename from xblocks_contrib/problem/tests/data/capa/prog2.py rename to src/xblock_problem/tests/data/capa/prog2.py diff --git a/xblocks_contrib/problem/tests/data/capa/prog3.py b/src/xblock_problem/tests/data/capa/prog3.py similarity index 100% rename from xblocks_contrib/problem/tests/data/capa/prog3.py rename to src/xblock_problem/tests/data/capa/prog3.py diff --git a/xblocks_contrib/problem/tests/test_capa_block.py b/src/xblock_problem/tests/test_capa_block.py similarity index 96% rename from xblocks_contrib/problem/tests/test_capa_block.py rename to src/xblock_problem/tests/test_capa_block.py index da9a30c2..25e9b2e5 100644 --- a/xblocks_contrib/problem/tests/test_capa_block.py +++ b/src/xblock_problem/tests/test_capa_block.py @@ -28,13 +28,13 @@ from xblock.fields import ScopeIds from xblock.scorable import Score -from xblocks_contrib.problem.capa import responsetypes -from xblocks_contrib.problem.capa.correctmap import CorrectMap -from xblocks_contrib.problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError -from xblocks_contrib.problem.capa.tests.test_util import UseUnsafeCodejail -from xblocks_contrib.problem.capa.xqueue_interface import XQueueInterface -from xblocks_contrib.problem.capa_block import ComplexEncoder, ProblemBlock -from xblocks_contrib.problem.tests import DATA_DIR +from xblock_problem.capa import responsetypes +from xblock_problem.capa.correctmap import CorrectMap +from xblock_problem.capa.responsetypes import LoncapaProblemError, ResponseError, StudentInputError +from xblock_problem.capa.tests.test_util import UseUnsafeCodejail +from xblock_problem.capa.xqueue_interface import XQueueInterface +from xblock_problem.capa_block import ComplexEncoder, ProblemBlock +from xblock_problem.tests import DATA_DIR from ..capa_block import RANDOMIZATION, SHOWANSWER from . import get_test_system @@ -838,8 +838,8 @@ def test_submit_problem_correct(self): # Simulate that all answers are marked correct, no matter # what the input is, by patching CorrectMap.is_correct() # Also simulate rendering the HTML - with patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: - with patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") as mock_html: + with patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: + with patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") as mock_html: mock_is_correct.return_value = True mock_html.return_value = "Test HTML" @@ -858,8 +858,8 @@ def test_submit_problem_correct(self): # and that this was considered attempt number 2 for grading purposes assert block.lcp.context["attempt"] == 2 - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_with_grading_method_disable(self, mock_html: Mock, mock_is_correct: Mock): """ Test that without a specific grading method, the score behaves as @@ -898,8 +898,8 @@ def test_submit_problem_with_grading_method_disable(self, mock_html: Mock, mock_ assert block.lcp.context["attempt"] == 3 assert block.score == Score(raw_earned=1, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_with_grading_method_enable(self, mock_html: Mock, mock_is_correct: Mock): """ Test that the grading method is enabled when submit a problem. @@ -920,8 +920,8 @@ def test_submit_problem_with_grading_method_enable(self, mock_html: Mock, mock_i assert block.score == Score(raw_earned=1, raw_possible=1) mock_get_score.assert_called() - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_grading_method_always_enabled(self, mock_html: Mock, mock_is_correct: Mock): """ Test problem submission when grading method is always enabled by default. @@ -973,8 +973,8 @@ def test_submit_problem_grading_method_always_enabled(self, mock_html: Mock, moc assert block.lcp.context["attempt"] == 4 assert block.score == Score(raw_earned=1, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_grading_method_always_enabled_highest_score(self, mock_html: Mock, mock_is_correct: Mock): """ Test problem submission when grading method is always enabled by default @@ -1026,8 +1026,8 @@ def test_submit_problem_grading_method_always_enabled_highest_score(self, mock_h assert block.lcp.context["attempt"] == 4 assert block.score == Score(raw_earned=1, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_correct_last_score(self, mock_html: Mock, mock_is_correct: Mock): """ Test the `last_score` grading method. @@ -1059,8 +1059,8 @@ def test_submit_problem_correct_last_score(self, mock_html: Mock, mock_is_correc assert block.lcp.context["attempt"] == 2 assert block.score == Score(raw_earned=0, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_correct_highest_score(self, mock_html: Mock, mock_is_correct: Mock): """ Test the `highest_score` grading method. @@ -1091,8 +1091,8 @@ def test_submit_problem_correct_highest_score(self, mock_html: Mock, mock_is_cor assert block.lcp.context["attempt"] == 2 assert block.score == Score(raw_earned=1, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_correct_first_score(self, mock_html: Mock, mock_is_correct: Mock): """ Test the `first_score` grading method. @@ -1123,8 +1123,8 @@ def test_submit_problem_correct_first_score(self, mock_html: Mock, mock_is_corre assert block.lcp.context["attempt"] == 2 assert block.score == Score(raw_earned=0, raw_possible=1) - @patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") + @patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") + @patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") def test_submit_problem_correct_average_score(self, mock_html: Mock, mock_is_correct: Mock): """ Test the `average_score` grading method. @@ -1181,7 +1181,7 @@ def test_submit_problem_incorrect(self): block = CapaFactory.create(attempts=0) # Simulate marking the input incorrect - with patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: + with patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: mock_is_correct.return_value = False # Check the problem @@ -1202,7 +1202,7 @@ def test_submit_problem_closed(self): # Problem closed -- cannot submit # Simulate that ProblemBlock.closed() always returns True - with patch("xblocks_contrib.problem.capa_block.ProblemBlock.closed") as mock_closed: + with patch("xblock_problem.capa_block.ProblemBlock.closed") as mock_closed: mock_closed.return_value = True with pytest.raises(NotFoundError): get_request_dict = {CapaFactory.input_key(): "3.14"} @@ -1250,7 +1250,7 @@ def test_submit_problem_queued(self): # Simulate that the problem is queued multipatch = patch.multiple( - "xblocks_contrib.problem.capa.capa_problem.LoncapaProblem", + "xblock_problem.capa.capa_problem.LoncapaProblem", is_queued=DEFAULT, get_recentmost_queuetime=DEFAULT, ) @@ -1380,7 +1380,7 @@ def test_submit_problem_error(self): block = CapaFactory.create(attempts=1, user_is_staff=False) # Simulate answering a problem that raises the exception - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: mock_grade.side_effect = exception_class("test error") get_request_dict = {CapaFactory.input_key(): "3.14"} @@ -1407,7 +1407,7 @@ def test_submit_problem_error_with_codejail_exception(self): block = CapaFactory.create(attempts=1, user_is_staff=False) # Simulate a codejail exception "Exception: Couldn't execute jailed code" - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: try: raise ResponseError( "Couldn't execute jailed code: stdout: '', " @@ -1443,7 +1443,7 @@ def test_submit_problem_other_errors(self): block.runtime.is_author_mode = True # Simulate answering a problem that raises the exception - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: error_msg = "Superterrible error happened: ☠" mock_grade.side_effect = Exception(error_msg) @@ -1477,7 +1477,7 @@ def test_submit_problem_error_nonascii(self): block = CapaFactory.create(attempts=1, user_is_staff=False) # Simulate answering a problem that raises the exception - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: mock_grade.side_effect = exception_class("ȧƈƈḗƞŧḗḓ ŧḗẋŧ ƒǿř ŧḗşŧīƞɠ") get_request_dict = {CapaFactory.input_key(): "3.14"} @@ -1502,7 +1502,7 @@ def test_submit_problem_error_with_staff_user(self): block = CapaFactory.create(attempts=1, user_is_staff=True) # Simulate answering a problem that raises an exception - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.grade_answers") as mock_grade: mock_grade.side_effect = exception_class("test error") get_request_dict = {CapaFactory.input_key(): "3.14"} @@ -1533,7 +1533,7 @@ def test_handle_ajax_show_correctness(self, show_correctness, is_correct, expect block = CapaFactory.create(show_correctness=show_correctness, due=self.tomorrow_str, correct=is_correct) # Simulate marking the input correct/incorrect - with patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: + with patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: mock_is_correct.return_value = is_correct # Check the problem @@ -1556,7 +1556,7 @@ def test_reset_problem(self): block.choose_new_seed = Mock(wraps=block.choose_new_seed) # Stub out HTML rendering - with patch("xblocks_contrib.problem.capa_block.ProblemBlock.get_problem_html") as mock_html: + with patch("xblock_problem.capa_block.ProblemBlock.get_problem_html") as mock_html: mock_html.return_value = "
Test HTML
" # Reset the problem @@ -1579,7 +1579,7 @@ def test_reset_problem_closed(self): block = CapaFactory.create(rerandomize=RANDOMIZATION.ALWAYS) # Simulate that the problem is closed - with patch("xblocks_contrib.problem.capa_block.ProblemBlock.closed") as mock_closed: + with patch("xblock_problem.capa_block.ProblemBlock.closed") as mock_closed: mock_closed.return_value = True # Try to reset the problem @@ -1609,14 +1609,14 @@ def test_rescore_problem_correct(self): # Simulate that all answers are marked correct, no matter # what the input is, by patching LoncapaResponse.evaluate_answers() with patch( - "xblocks_contrib.problem.capa.responsetypes.LoncapaResponse.evaluate_answers" + "xblock_problem.capa.responsetypes.LoncapaResponse.evaluate_answers" ) as mock_evaluate_answers: mock_evaluate_answers.return_value = CorrectMap( answer_id=CapaFactory.answer_key(), correctness="correct", npoints=1, ) - with patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: + with patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: mock_is_correct.return_value = True # Check the problem @@ -1657,10 +1657,10 @@ def test_rescore_problem_additional_correct(self): # In case of rescore with only_if_higher=True it should update score of block # if previous score was lower - with patch("xblocks_contrib.problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: + with patch("xblock_problem.capa.correctmap.CorrectMap.is_correct") as mock_is_correct: mock_is_correct.return_value = True block.set_score(block.score_from_lcp(block.lcp)) - with patch("xblocks_contrib.problem.capa.responsetypes.NumericalResponse.get_staff_ans") as get_staff_ans: + with patch("xblock_problem.capa.responsetypes.NumericalResponse.get_staff_ans") as get_staff_ans: get_staff_ans.return_value = 1 + 0j block.rescore(only_if_higher=True) @@ -1681,7 +1681,7 @@ def test_rescore_problem_incorrect(self): # Simulate that all answers are marked incorrect, no matter # what the input is, by patching LoncapaResponse.evaluate_answers() with patch( - "xblocks_contrib.problem.capa.responsetypes.LoncapaResponse.evaluate_answers" + "xblock_problem.capa.responsetypes.LoncapaResponse.evaluate_answers" ) as mock_evaluate_answers: mock_evaluate_answers.return_value = CorrectMap(CapaFactory.answer_key(), "incorrect") block.rescore(only_if_higher=False) @@ -1722,7 +1722,7 @@ def test_rescore_problem_with_grading_method_enable(self): assert block.lcp.context["attempt"] == 1 mock_get_rescore.assert_called() - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.publish_grade") + @patch("xblock_problem.capa_block.ProblemBlock.publish_grade") def test_rescore_problem_grading_method_always_enabled(self, mock_publish_grade: Mock): """ Test the rescore method when grading method is always enabled by default. @@ -1764,7 +1764,7 @@ def test_rescore_problem_grading_method_always_enabled(self, mock_publish_grade: mock_publish_grade.assert_called_with(score=Score(raw_earned=0.33, raw_possible=1), only_if_higher=False) - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.publish_grade") + @patch("xblock_problem.capa_block.ProblemBlock.publish_grade") def test_rescore_problem_grading_method_always_enabled_with_various_methods(self, mock_publish_grade: Mock): """ Test the rescore method when grading method is always enabled by default @@ -1806,7 +1806,7 @@ def test_rescore_problem_grading_method_always_enabled_with_various_methods(self block.rescore(only_if_higher=False) assert block.score == Score(raw_earned=1, raw_possible=1) - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.publish_grade") + @patch("xblock_problem.capa_block.ProblemBlock.publish_grade") def test_rescore_problem_update_grading_method(self, mock_publish_grade: Mock): """ Test the rescore method when the grading method is updated. @@ -1862,7 +1862,7 @@ def test_rescore_problem_not_supported(self): # Try to rescore the problem, and get exception with patch( - "xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.supports_rescoring" + "xblock_problem.capa.capa_problem.LoncapaProblem.supports_rescoring" ) as mock_supports_rescoring: mock_supports_rescoring.return_value = False with pytest.raises(NotImplementedError): @@ -1970,7 +1970,7 @@ def test_get_score_with_grading_method(self): self.assertEqual(score, expected_score) self.assertEqual(block.score, expected_score) - @patch("xblocks_contrib.problem.capa_block.ProblemBlock.score_from_lcp") + @patch("xblock_problem.capa_block.ProblemBlock.score_from_lcp") def test_get_score_with_grading_method_updates_score(self, mock_score_from_lcp: Mock): """ Test that the `get_score_with_grading_method` method returns the correct score. @@ -1995,7 +1995,7 @@ def test_get_score_with_grading_method_calls_grading_method_handler(self): block = CapaFactory.create(attempts=1) current_score = Score(raw_earned=0, raw_possible=1) - with patch("xblocks_contrib.problem.capa_block.GradingMethodHandler") as mock_handler: + with patch("xblock_problem.capa_block.GradingMethodHandler") as mock_handler: mock_handler.return_value.get_score.return_value = current_score block.get_score_with_grading_method(current_score) mock_handler.assert_called_once_with( @@ -2030,7 +2030,7 @@ def test_codejail_error_upon_problem_creation(self): # When codejail safe_exec fails upon problem creation, a LoncapaProblemError should be raised. with pytest.raises(LoncapaProblemError): - with patch("xblocks_contrib.problem.capa.capa_problem.safe_exec") as mock_safe_exec: + with patch("xblock_problem.capa.capa_problem.safe_exec") as mock_safe_exec: mock_safe_exec.side_effect = SafeExecException() factory.create() @@ -2046,7 +2046,7 @@ def _rescore_problem_error_helper(self, exception_class): # Simulate answering a problem that raises the exception with patch( - "xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.get_grade_from_current_answers" + "xblock_problem.capa.capa_problem.LoncapaProblem.get_grade_from_current_answers" ) as mock_rescore: mock_rescore.side_effect = exception_class("test error \u03a9") with pytest.raises(exception_class): @@ -2089,7 +2089,7 @@ def test_save_problem_closed(self): block = CapaFactory.create(done=False) # Simulate that the problem is closed - with patch("xblocks_contrib.problem.capa_block.ProblemBlock.closed") as mock_closed: + with patch("xblock_problem.capa_block.ProblemBlock.closed") as mock_closed: mock_closed.return_value = True # Try to save the problem @@ -2302,7 +2302,7 @@ def test_no_max_attempts(self): assert html is not None # assert that we got here without exploding - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_get_problem_html(self, render_template): """Verify problem HTML rendering uses correct template context and encapsulation.""" render_template.return_value = "
Test Template HTML
" @@ -2319,7 +2319,7 @@ def test_get_problem_html(self, render_template): block.should_show_save_button = Mock(return_value=show_save_button) # Patch the capa problem's HTML rendering - with patch("xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.get_html") as mock_html: + with patch("xblock_problem.capa.capa_problem.LoncapaProblem.get_html") as mock_html: mock_html.return_value = "
Test Problem HTML
" # Render the problem HTML @@ -2364,7 +2364,7 @@ def test_get_problem_html(self, render_template): """ - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_demand_hint(self, render_template): """Verify image-based demand hints render correctly without static URL issues.""" # HTML generation is mocked out to be meaningless here, so instead we check @@ -2389,7 +2389,7 @@ def test_demand_hint(self, render_template): assert result["hint_index"] == 0 assert result["should_enable_next_hint"] - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_single_demand_hint(self, render_template): """ Test the hint button enabled state when there is just a single hint. @@ -2420,7 +2420,7 @@ def test_single_demand_hint(self, render_template): assert result["hint_index"] == 0 assert not result["should_enable_next_hint"] - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_image_hint(self, render_template): """ Test the hint button shows an image without the static url. @@ -2483,7 +2483,7 @@ def test_input_state_consistency(self): intersection = set(block2.input_state.keys()).intersection(set(block1.input_state.keys())) assert len(intersection) == 0 - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_get_problem_html_error(self, render_template): """ In production, when an error occurs with the problem HTML @@ -2513,7 +2513,7 @@ def test_get_problem_html_error(self, render_template): # Expect that the block has created a new dummy problem with the error assert original_problem != block.lcp - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_get_problem_html_error_preview(self, render_template): """ Test the html response when an error occurs with DEBUG off in Studio. @@ -2539,7 +2539,7 @@ def test_get_problem_html_error_preview(self, render_template): assert error_msg in context["problem"]["html"] @override_settings(DEBUG=True) - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_get_problem_html_error_w_debug(self, render_template): """ Test the html response when an error occurs with DEBUG on @@ -2704,8 +2704,8 @@ def test_random_seed_bins(self, rerandomize): assert 0 <= block.seed < 1000 i -= 1 - @patch("xblocks_contrib.problem.capa_block.log") - @patch("xblocks_contrib.problem.capa_block.Progress") + @patch("xblock_problem.capa_block.log") + @patch("xblock_problem.capa_block.Progress") def test_get_progress_error(self, mock_progress, mock_log): """ Check that an exception given in `Progress` produces a `log.exception` call. @@ -2718,7 +2718,7 @@ def test_get_progress_error(self, mock_progress, mock_log): mock_log.exception.assert_called_once_with("Got bad progress") mock_log.reset_mock() - @patch("xblocks_contrib.problem.capa_block.Progress") + @patch("xblock_problem.capa_block.Progress") def test_get_progress_no_error_if_weight_zero(self, mock_progress): """ Check that if the weight is 0 get_progress does not try to create a Progress object. @@ -2730,7 +2730,7 @@ def test_get_progress_no_error_if_weight_zero(self, mock_progress): assert progress is None assert not mock_progress.called - @patch("xblocks_contrib.problem.capa_block.Progress") + @patch("xblock_problem.capa_block.Progress") def test_get_progress_calculate_progress_fraction(self, mock_progress): """ Check that score and total are calculated correctly for the progress fraction. @@ -2859,7 +2859,7 @@ def test_problem_display_name_with_default(self, display_name, expected_display_ "", " ", ) - @patch("xblocks_contrib.problem.capa_block.render_to_string") + @patch("xblock_problem.capa_block.render_to_string") def test_problem_no_display_name(self, display_name, render_template): """ Verify that if problem display name is not provided then a default name is used. @@ -4022,11 +4022,11 @@ class ProblemBlockReportGenerationTest(unittest.TestCase): def setUp(self): self.find_question_label_patcher = patch( - "xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.find_question_label", + "xblock_problem.capa.capa_problem.LoncapaProblem.find_question_label", lambda self, answer_id: answer_id, ) self.find_answer_text_patcher = patch( - "xblocks_contrib.problem.capa.capa_problem.LoncapaProblem.find_answer_text", + "xblock_problem.capa.capa_problem.LoncapaProblem.find_answer_text", lambda self, answer_id, current_answer: current_answer, ) self.find_question_label_patcher.start() @@ -4100,7 +4100,7 @@ def test_generate_report_data_report_loncapa_error(self): """Verify LonCapa errors are captured and reported instead of aborting.""" # Test to make sure reports continue despite loncappa errors, and write them into the report. block = self._get_block() - with patch("xblocks_contrib.problem.capa_block.LoncapaProblem") as mock_loncapa_problem: + with patch("xblock_problem.capa_block.LoncapaProblem") as mock_loncapa_problem: mock_loncapa_problem.side_effect = LoncapaProblemError report_data = list( block.generate_report_data( diff --git a/xblocks_contrib/problem/tests/test_stringify.py b/src/xblock_problem/tests/test_stringify.py similarity index 95% rename from xblocks_contrib/problem/tests/test_stringify.py rename to src/xblock_problem/tests/test_stringify.py index 56bfd81a..8133a316 100644 --- a/xblocks_contrib/problem/tests/test_stringify.py +++ b/src/xblock_problem/tests/test_stringify.py @@ -4,7 +4,7 @@ from lxml import etree -from xblocks_contrib.problem.stringify import stringify_children +from xblock_problem.stringify import stringify_children def test_stringify(): diff --git a/xblocks_contrib/problem/xmlparser.py b/src/xblock_problem/xmlparser.py similarity index 100% rename from xblocks_contrib/problem/xmlparser.py rename to src/xblock_problem/xmlparser.py diff --git a/src/xblock_video/.tx/config b/src/xblock_video/.tx/config new file mode 100644 index 00000000..8ff2c941 --- /dev/null +++ b/src/xblock_video/.tx/config @@ -0,0 +1,8 @@ +[main] +host = https://www.transifex.com + +[o:open-edx:p:openedx-translations:r:xblocks-core-video] +file_filter = conf/locale//LC_MESSAGES/text.po +source_file = conf/locale/en/LC_MESSAGES/text.po +source_lang = en +type = PO diff --git a/xblocks_contrib/video/__init__.py b/src/xblock_video/__init__.py similarity index 100% rename from xblocks_contrib/video/__init__.py rename to src/xblock_video/__init__.py diff --git a/xblocks_contrib/video/ajax_handler_mixin.py b/src/xblock_video/ajax_handler_mixin.py similarity index 100% rename from xblocks_contrib/video/ajax_handler_mixin.py rename to src/xblock_video/ajax_handler_mixin.py diff --git a/xblocks_contrib/video/assets/css/video.css b/src/xblock_video/assets/css/video.css similarity index 100% rename from xblocks_contrib/video/assets/css/video.css rename to src/xblock_video/assets/css/video.css diff --git a/xblocks_contrib/video/assets/jasmine.common.conf.js b/src/xblock_video/assets/jasmine.common.conf.js similarity index 100% rename from xblocks_contrib/video/assets/jasmine.common.conf.js rename to src/xblock_video/assets/jasmine.common.conf.js diff --git a/xblocks_contrib/video/assets/jasmine_stack_trace.js b/src/xblock_video/assets/jasmine_stack_trace.js similarity index 100% rename from xblocks_contrib/video/assets/jasmine_stack_trace.js rename to src/xblock_video/assets/jasmine_stack_trace.js diff --git a/xblocks_contrib/video/assets/js/src/00_async_process.js b/src/xblock_video/assets/js/src/00_async_process.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_async_process.js rename to src/xblock_video/assets/js/src/00_async_process.js diff --git a/xblocks_contrib/video/assets/js/src/00_component.js b/src/xblock_video/assets/js/src/00_component.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_component.js rename to src/xblock_video/assets/js/src/00_component.js diff --git a/xblocks_contrib/video/assets/js/src/00_i18n.js b/src/xblock_video/assets/js/src/00_i18n.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_i18n.js rename to src/xblock_video/assets/js/src/00_i18n.js diff --git a/xblocks_contrib/video/assets/js/src/00_iterator.js b/src/xblock_video/assets/js/src/00_iterator.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_iterator.js rename to src/xblock_video/assets/js/src/00_iterator.js diff --git a/xblocks_contrib/video/assets/js/src/00_resizer.js b/src/xblock_video/assets/js/src/00_resizer.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_resizer.js rename to src/xblock_video/assets/js/src/00_resizer.js diff --git a/xblocks_contrib/video/assets/js/src/00_sjson.js b/src/xblock_video/assets/js/src/00_sjson.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_sjson.js rename to src/xblock_video/assets/js/src/00_sjson.js diff --git a/xblocks_contrib/video/assets/js/src/00_video_storage.js b/src/xblock_video/assets/js/src/00_video_storage.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/00_video_storage.js rename to src/xblock_video/assets/js/src/00_video_storage.js diff --git a/xblocks_contrib/video/assets/js/src/01_initialize.js b/src/xblock_video/assets/js/src/01_initialize.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/01_initialize.js rename to src/xblock_video/assets/js/src/01_initialize.js diff --git a/xblocks_contrib/video/assets/js/src/025_focus_grabber.js b/src/xblock_video/assets/js/src/025_focus_grabber.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/025_focus_grabber.js rename to src/xblock_video/assets/js/src/025_focus_grabber.js diff --git a/xblocks_contrib/video/assets/js/src/02_html5_hls_video.js b/src/xblock_video/assets/js/src/02_html5_hls_video.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/02_html5_hls_video.js rename to src/xblock_video/assets/js/src/02_html5_hls_video.js diff --git a/xblocks_contrib/video/assets/js/src/02_html5_video.js b/src/xblock_video/assets/js/src/02_html5_video.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/02_html5_video.js rename to src/xblock_video/assets/js/src/02_html5_video.js diff --git a/xblocks_contrib/video/assets/js/src/035_video_accessible_menu.js b/src/xblock_video/assets/js/src/035_video_accessible_menu.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/035_video_accessible_menu.js rename to src/xblock_video/assets/js/src/035_video_accessible_menu.js diff --git a/xblocks_contrib/video/assets/js/src/036_video_social_sharing.js b/src/xblock_video/assets/js/src/036_video_social_sharing.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/036_video_social_sharing.js rename to src/xblock_video/assets/js/src/036_video_social_sharing.js diff --git a/xblocks_contrib/video/assets/js/src/037_video_transcript_feedback.js b/src/xblock_video/assets/js/src/037_video_transcript_feedback.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/037_video_transcript_feedback.js rename to src/xblock_video/assets/js/src/037_video_transcript_feedback.js diff --git a/xblocks_contrib/video/assets/js/src/03_video_player.js b/src/xblock_video/assets/js/src/03_video_player.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/03_video_player.js rename to src/xblock_video/assets/js/src/03_video_player.js diff --git a/xblocks_contrib/video/assets/js/src/04_video_control.js b/src/xblock_video/assets/js/src/04_video_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/04_video_control.js rename to src/xblock_video/assets/js/src/04_video_control.js diff --git a/xblocks_contrib/video/assets/js/src/04_video_full_screen.js b/src/xblock_video/assets/js/src/04_video_full_screen.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/04_video_full_screen.js rename to src/xblock_video/assets/js/src/04_video_full_screen.js diff --git a/xblocks_contrib/video/assets/js/src/05_video_quality_control.js b/src/xblock_video/assets/js/src/05_video_quality_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/05_video_quality_control.js rename to src/xblock_video/assets/js/src/05_video_quality_control.js diff --git a/xblocks_contrib/video/assets/js/src/06_video_progress_slider.js b/src/xblock_video/assets/js/src/06_video_progress_slider.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/06_video_progress_slider.js rename to src/xblock_video/assets/js/src/06_video_progress_slider.js diff --git a/xblocks_contrib/video/assets/js/src/07_video_volume_control.js b/src/xblock_video/assets/js/src/07_video_volume_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/07_video_volume_control.js rename to src/xblock_video/assets/js/src/07_video_volume_control.js diff --git a/xblocks_contrib/video/assets/js/src/08_video_auto_advance_control.js b/src/xblock_video/assets/js/src/08_video_auto_advance_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/08_video_auto_advance_control.js rename to src/xblock_video/assets/js/src/08_video_auto_advance_control.js diff --git a/xblocks_contrib/video/assets/js/src/08_video_speed_control.js b/src/xblock_video/assets/js/src/08_video_speed_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/08_video_speed_control.js rename to src/xblock_video/assets/js/src/08_video_speed_control.js diff --git a/xblocks_contrib/video/assets/js/src/095_video_context_menu.js b/src/xblock_video/assets/js/src/095_video_context_menu.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/095_video_context_menu.js rename to src/xblock_video/assets/js/src/095_video_context_menu.js diff --git a/xblocks_contrib/video/assets/js/src/09_bumper.js b/src/xblock_video/assets/js/src/09_bumper.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_bumper.js rename to src/xblock_video/assets/js/src/09_bumper.js diff --git a/xblocks_contrib/video/assets/js/src/09_completion.js b/src/xblock_video/assets/js/src/09_completion.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_completion.js rename to src/xblock_video/assets/js/src/09_completion.js diff --git a/xblocks_contrib/video/assets/js/src/09_events_bumper_plugin.js b/src/xblock_video/assets/js/src/09_events_bumper_plugin.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_events_bumper_plugin.js rename to src/xblock_video/assets/js/src/09_events_bumper_plugin.js diff --git a/xblocks_contrib/video/assets/js/src/09_events_plugin.js b/src/xblock_video/assets/js/src/09_events_plugin.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_events_plugin.js rename to src/xblock_video/assets/js/src/09_events_plugin.js diff --git a/xblocks_contrib/video/assets/js/src/09_play_pause_control.js b/src/xblock_video/assets/js/src/09_play_pause_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_play_pause_control.js rename to src/xblock_video/assets/js/src/09_play_pause_control.js diff --git a/xblocks_contrib/video/assets/js/src/09_play_placeholder.js b/src/xblock_video/assets/js/src/09_play_placeholder.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_play_placeholder.js rename to src/xblock_video/assets/js/src/09_play_placeholder.js diff --git a/xblocks_contrib/video/assets/js/src/09_play_skip_control.js b/src/xblock_video/assets/js/src/09_play_skip_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_play_skip_control.js rename to src/xblock_video/assets/js/src/09_play_skip_control.js diff --git a/xblocks_contrib/video/assets/js/src/09_poster.js b/src/xblock_video/assets/js/src/09_poster.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_poster.js rename to src/xblock_video/assets/js/src/09_poster.js diff --git a/xblocks_contrib/video/assets/js/src/09_save_state_plugin.js b/src/xblock_video/assets/js/src/09_save_state_plugin.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_save_state_plugin.js rename to src/xblock_video/assets/js/src/09_save_state_plugin.js diff --git a/xblocks_contrib/video/assets/js/src/09_skip_control.js b/src/xblock_video/assets/js/src/09_skip_control.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_skip_control.js rename to src/xblock_video/assets/js/src/09_skip_control.js diff --git a/xblocks_contrib/video/assets/js/src/09_video_caption.js b/src/xblock_video/assets/js/src/09_video_caption.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/09_video_caption.js rename to src/xblock_video/assets/js/src/09_video_caption.js diff --git a/xblocks_contrib/video/assets/js/src/10_commands.js b/src/xblock_video/assets/js/src/10_commands.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/10_commands.js rename to src/xblock_video/assets/js/src/10_commands.js diff --git a/xblocks_contrib/video/assets/js/src/10_main.js b/src/xblock_video/assets/js/src/10_main.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/10_main.js rename to src/xblock_video/assets/js/src/10_main.js diff --git a/xblocks_contrib/video/assets/js/src/utils/add_ajax_prefix.js b/src/xblock_video/assets/js/src/utils/add_ajax_prefix.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/utils/add_ajax_prefix.js rename to src/xblock_video/assets/js/src/utils/add_ajax_prefix.js diff --git a/xblocks_contrib/video/assets/js/src/utils/ajax_prefix.js b/src/xblock_video/assets/js/src/utils/ajax_prefix.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/utils/ajax_prefix.js rename to src/xblock_video/assets/js/src/utils/ajax_prefix.js diff --git a/xblocks_contrib/video/assets/js/src/utils/logger.js b/src/xblock_video/assets/js/src/utils/logger.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/utils/logger.js rename to src/xblock_video/assets/js/src/utils/logger.js diff --git a/xblocks_contrib/video/assets/js/src/utils/time.js b/src/xblock_video/assets/js/src/utils/time.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/utils/time.js rename to src/xblock_video/assets/js/src/utils/time.js diff --git a/xblocks_contrib/video/assets/js/src/vendor/jquery-ui.min.js b/src/xblock_video/assets/js/src/vendor/jquery-ui.min.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/vendor/jquery-ui.min.js rename to src/xblock_video/assets/js/src/vendor/jquery-ui.min.js diff --git a/xblocks_contrib/video/assets/js/src/vendor/jquery.js b/src/xblock_video/assets/js/src/vendor/jquery.js similarity index 100% rename from xblocks_contrib/video/assets/js/src/vendor/jquery.js rename to src/xblock_video/assets/js/src/vendor/jquery.js diff --git a/xblocks_contrib/video/assets/karma.conf.js b/src/xblock_video/assets/karma.conf.js similarity index 100% rename from xblocks_contrib/video/assets/karma.conf.js rename to src/xblock_video/assets/karma.conf.js diff --git a/xblocks_contrib/video/assets/karma.webpack.entry.js b/src/xblock_video/assets/karma.webpack.entry.js similarity index 100% rename from xblocks_contrib/video/assets/karma.webpack.entry.js rename to src/xblock_video/assets/karma.webpack.entry.js diff --git a/xblocks_contrib/video/assets/package.json b/src/xblock_video/assets/package.json similarity index 100% rename from xblocks_contrib/video/assets/package.json rename to src/xblock_video/assets/package.json diff --git a/xblocks_contrib/video/assets/webpack.common.config.js b/src/xblock_video/assets/webpack.common.config.js similarity index 100% rename from xblocks_contrib/video/assets/webpack.common.config.js rename to src/xblock_video/assets/webpack.common.config.js diff --git a/xblocks_contrib/video/assets/webpack.dev.config.js b/src/xblock_video/assets/webpack.dev.config.js similarity index 100% rename from xblocks_contrib/video/assets/webpack.dev.config.js rename to src/xblock_video/assets/webpack.dev.config.js diff --git a/xblocks_contrib/video/assets/webpack.prod.config.js b/src/xblock_video/assets/webpack.prod.config.js similarity index 100% rename from xblocks_contrib/video/assets/webpack.prod.config.js rename to src/xblock_video/assets/webpack.prod.config.js diff --git a/xblocks_contrib/video/bumper_utils.py b/src/xblock_video/bumper_utils.py similarity index 100% rename from xblocks_contrib/video/bumper_utils.py rename to src/xblock_video/bumper_utils.py diff --git a/xblocks_contrib/video/cache_utils.py b/src/xblock_video/cache_utils.py similarity index 100% rename from xblocks_contrib/video/cache_utils.py rename to src/xblock_video/cache_utils.py diff --git a/xblocks_contrib/problem/conf/locale/__init__.py b/src/xblock_video/conf/locale/__init__.py similarity index 100% rename from xblocks_contrib/problem/conf/locale/__init__.py rename to src/xblock_video/conf/locale/__init__.py diff --git a/xblocks_contrib/video/conf/locale/config.yaml b/src/xblock_video/conf/locale/config.yaml similarity index 100% rename from xblocks_contrib/video/conf/locale/config.yaml rename to src/xblock_video/conf/locale/config.yaml diff --git a/xblocks_contrib/video/constants.py b/src/xblock_video/constants.py similarity index 100% rename from xblocks_contrib/video/constants.py rename to src/xblock_video/constants.py diff --git a/xblocks_contrib/video/exceptions.py b/src/xblock_video/exceptions.py similarity index 100% rename from xblocks_contrib/video/exceptions.py rename to src/xblock_video/exceptions.py diff --git a/xblocks_contrib/video/mixin.py b/src/xblock_video/mixin.py similarity index 100% rename from xblocks_contrib/video/mixin.py rename to src/xblock_video/mixin.py diff --git a/xblocks_contrib/video/studio_metadata_mixin.py b/src/xblock_video/studio_metadata_mixin.py similarity index 96% rename from xblocks_contrib/video/studio_metadata_mixin.py rename to src/xblock_video/studio_metadata_mixin.py index 38fd9345..89f18b26 100644 --- a/xblocks_contrib/video/studio_metadata_mixin.py +++ b/src/xblock_video/studio_metadata_mixin.py @@ -3,9 +3,9 @@ from xblock.core import XBlock from xblock.fields import Dict, Float, Integer, List, Scope, String -from xblocks_contrib.video.exceptions import TranscriptNotFoundError -from xblocks_contrib.video.video_transcripts_utils import TranscriptExtensions, get_html5_ids -from xblocks_contrib.video.video_xfields import RelativeTime +from .exceptions import TranscriptNotFoundError +from .video_transcripts_utils import TranscriptExtensions, get_html5_ids +from .video_xfields import RelativeTime class StudioMetadataMixin: diff --git a/xblocks_contrib/video/templates/video.html b/src/xblock_video/templates/video.html similarity index 99% rename from xblocks_contrib/video/templates/video.html rename to src/xblock_video/templates/video.html index 362ae3df..32974cc0 100644 --- a/xblocks_contrib/video/templates/video.html +++ b/src/xblock_video/templates/video.html @@ -14,7 +14,7 @@

{{ display_name|escape }}

data-block-id='{{ block_id|escape }}' data-course-id='{{ course_id|escape }}' tabindex="-1" - data-package-name="xblocks-contrib"> + data-package-name="xblocks-core">
diff --git a/xblocks_contrib/video/tests/__init__.py b/src/xblock_video/tests/__init__.py similarity index 66% rename from xblocks_contrib/video/tests/__init__.py rename to src/xblock_video/tests/__init__.py index 7806f16a..12cc6ef8 100644 --- a/xblocks_contrib/video/tests/__init__.py +++ b/src/xblock_video/tests/__init__.py @@ -4,6 +4,6 @@ from unittest.mock import Mock -from xblocks_contrib.video.video import VideoBlock +from ..video import VideoBlock VideoBlock.add_aside = Mock() diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_.m3u8 b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_.m3u8 rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_0.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_0.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_0.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_0.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_1.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_1.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_1.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_1.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_2.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_2.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_2.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_0_/XXXXXXXXT114-V015600_0_2.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_.m3u8 b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_.m3u8 rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_0.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_0.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_0.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_0.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_1.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_1.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_1.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_1.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_2.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_2.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_2.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_1_/XXXXXXXXT114-V015600_1_2.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_.m3u8 b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_.m3u8 rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_0.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_0.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_0.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_0.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_1.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_1.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_1.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_1.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_2.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_2.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_2.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_2_/XXXXXXXXT114-V015600_2_2.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_.m3u8 b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_.m3u8 rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_0.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_0.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_0.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_0.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_1.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_1.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_1.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_1.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_2.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_2.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_2.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_3_/XXXXXXXXT114-V015600_3_2.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_.m3u8 b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_.m3u8 rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_0.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_0.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_0.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_0.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_1.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_1.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_1.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_1.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_2.ts b/src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_2.ts similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_2.ts rename to src/xblock_video/tests/fixtures/hls/XXXXXXXXT114-V015600_4_/XXXXXXXXT114-V015600_4_2.ts diff --git a/xblocks_contrib/video/tests/fixtures/hls/hls.m3u8 b/src/xblock_video/tests/fixtures/hls/hls.m3u8 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/hls/hls.m3u8 rename to src/xblock_video/tests/fixtures/hls/hls.m3u8 diff --git a/xblocks_contrib/video/tests/fixtures/play.png b/src/xblock_video/tests/fixtures/play.png similarity index 100% rename from xblocks_contrib/video/tests/fixtures/play.png rename to src/xblock_video/tests/fixtures/play.png diff --git a/xblocks_contrib/video/tests/fixtures/poster.jpg b/src/xblock_video/tests/fixtures/poster.jpg similarity index 100% rename from xblocks_contrib/video/tests/fixtures/poster.jpg rename to src/xblock_video/tests/fixtures/poster.jpg diff --git a/xblocks_contrib/video/tests/fixtures/poster.png b/src/xblock_video/tests/fixtures/poster.png similarity index 100% rename from xblocks_contrib/video/tests/fixtures/poster.png rename to src/xblock_video/tests/fixtures/poster.png diff --git a/xblocks_contrib/video/tests/fixtures/sequence.html b/src/xblock_video/tests/fixtures/sequence.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/sequence.html rename to src/xblock_video/tests/fixtures/sequence.html diff --git a/xblocks_contrib/video/tests/fixtures/tabs-edit.html b/src/xblock_video/tests/fixtures/tabs-edit.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/tabs-edit.html rename to src/xblock_video/tests/fixtures/tabs-edit.html diff --git a/xblocks_contrib/video/tests/fixtures/test.mp4 b/src/xblock_video/tests/fixtures/test.mp4 similarity index 100% rename from xblocks_contrib/video/tests/fixtures/test.mp4 rename to src/xblock_video/tests/fixtures/test.mp4 diff --git a/xblocks_contrib/video/tests/fixtures/test.ogv b/src/xblock_video/tests/fixtures/test.ogv similarity index 100% rename from xblocks_contrib/video/tests/fixtures/test.ogv rename to src/xblock_video/tests/fixtures/test.ogv diff --git a/xblocks_contrib/video/tests/fixtures/test.webm b/src/xblock_video/tests/fixtures/test.webm similarity index 100% rename from xblocks_contrib/video/tests/fixtures/test.webm rename to src/xblock_video/tests/fixtures/test.webm diff --git a/xblocks_contrib/video/tests/fixtures/video.html b/src/xblock_video/tests/fixtures/video.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video.html rename to src/xblock_video/tests/fixtures/video.html diff --git a/xblocks_contrib/video/tests/fixtures/video_all.html b/src/xblock_video/tests/fixtures/video_all.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_all.html rename to src/xblock_video/tests/fixtures/video_all.html diff --git a/xblocks_contrib/video/tests/fixtures/video_autoadvance.html b/src/xblock_video/tests/fixtures/video_autoadvance.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_autoadvance.html rename to src/xblock_video/tests/fixtures/video_autoadvance.html diff --git a/xblocks_contrib/video/tests/fixtures/video_autoadvance_disabled.html b/src/xblock_video/tests/fixtures/video_autoadvance_disabled.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_autoadvance_disabled.html rename to src/xblock_video/tests/fixtures/video_autoadvance_disabled.html diff --git a/xblocks_contrib/video/tests/fixtures/video_hls.html b/src/xblock_video/tests/fixtures/video_hls.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_hls.html rename to src/xblock_video/tests/fixtures/video_hls.html diff --git a/xblocks_contrib/video/tests/fixtures/video_html5.html b/src/xblock_video/tests/fixtures/video_html5.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_html5.html rename to src/xblock_video/tests/fixtures/video_html5.html diff --git a/xblocks_contrib/video/tests/fixtures/video_no_captions.html b/src/xblock_video/tests/fixtures/video_no_captions.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_no_captions.html rename to src/xblock_video/tests/fixtures/video_no_captions.html diff --git a/xblocks_contrib/video/tests/fixtures/video_transcript_feedback.html b/src/xblock_video/tests/fixtures/video_transcript_feedback.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_transcript_feedback.html rename to src/xblock_video/tests/fixtures/video_transcript_feedback.html diff --git a/xblocks_contrib/video/tests/fixtures/video_with_bumper.html b/src/xblock_video/tests/fixtures/video_with_bumper.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_with_bumper.html rename to src/xblock_video/tests/fixtures/video_with_bumper.html diff --git a/xblocks_contrib/video/tests/fixtures/video_yt_multiple.html b/src/xblock_video/tests/fixtures/video_yt_multiple.html similarity index 100% rename from xblocks_contrib/video/tests/fixtures/video_yt_multiple.html rename to src/xblock_video/tests/fixtures/video_yt_multiple.html diff --git a/xblocks_contrib/video/tests/fixtures/youtube_iframe_api.js b/src/xblock_video/tests/fixtures/youtube_iframe_api.js similarity index 100% rename from xblocks_contrib/video/tests/fixtures/youtube_iframe_api.js rename to src/xblock_video/tests/fixtures/youtube_iframe_api.js diff --git a/xblocks_contrib/video/tests/i18n.js b/src/xblock_video/tests/i18n.js similarity index 100% rename from xblocks_contrib/video/tests/i18n.js rename to src/xblock_video/tests/i18n.js diff --git a/xblocks_contrib/video/tests/js/async_process_spec.js b/src/xblock_video/tests/js/async_process_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/async_process_spec.js rename to src/xblock_video/tests/js/async_process_spec.js diff --git a/xblocks_contrib/video/tests/js/completion_spec.js b/src/xblock_video/tests/js/completion_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/completion_spec.js rename to src/xblock_video/tests/js/completion_spec.js diff --git a/xblocks_contrib/video/tests/js/events_spec.js b/src/xblock_video/tests/js/events_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/events_spec.js rename to src/xblock_video/tests/js/events_spec.js diff --git a/xblocks_contrib/video/tests/js/general_spec.js b/src/xblock_video/tests/js/general_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/general_spec.js rename to src/xblock_video/tests/js/general_spec.js diff --git a/xblocks_contrib/video/tests/js/html5_video_spec.js b/src/xblock_video/tests/js/html5_video_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/html5_video_spec.js rename to src/xblock_video/tests/js/html5_video_spec.js diff --git a/xblocks_contrib/video/tests/js/initialize_spec.js b/src/xblock_video/tests/js/initialize_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/initialize_spec.js rename to src/xblock_video/tests/js/initialize_spec.js diff --git a/xblocks_contrib/video/tests/js/iterator_spec.js b/src/xblock_video/tests/js/iterator_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/iterator_spec.js rename to src/xblock_video/tests/js/iterator_spec.js diff --git a/xblocks_contrib/video/tests/js/resizer_spec.js b/src/xblock_video/tests/js/resizer_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/resizer_spec.js rename to src/xblock_video/tests/js/resizer_spec.js diff --git a/xblocks_contrib/video/tests/js/sjson_spec.js b/src/xblock_video/tests/js/sjson_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/sjson_spec.js rename to src/xblock_video/tests/js/sjson_spec.js diff --git a/xblocks_contrib/video/tests/js/social_share_spec.js b/src/xblock_video/tests/js/social_share_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/social_share_spec.js rename to src/xblock_video/tests/js/social_share_spec.js diff --git a/xblocks_contrib/video/tests/js/time_spec.js b/src/xblock_video/tests/js/time_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/time_spec.js rename to src/xblock_video/tests/js/time_spec.js diff --git a/xblocks_contrib/video/tests/js/video_autoadvance_spec.js b/src/xblock_video/tests/js/video_autoadvance_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_autoadvance_spec.js rename to src/xblock_video/tests/js/video_autoadvance_spec.js diff --git a/xblocks_contrib/video/tests/js/video_bumper_spec.js b/src/xblock_video/tests/js/video_bumper_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_bumper_spec.js rename to src/xblock_video/tests/js/video_bumper_spec.js diff --git a/xblocks_contrib/video/tests/js/video_caption_spec.js b/src/xblock_video/tests/js/video_caption_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_caption_spec.js rename to src/xblock_video/tests/js/video_caption_spec.js diff --git a/xblocks_contrib/video/tests/js/video_context_menu_spec.js b/src/xblock_video/tests/js/video_context_menu_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_context_menu_spec.js rename to src/xblock_video/tests/js/video_context_menu_spec.js diff --git a/xblocks_contrib/video/tests/js/video_control_spec.js b/src/xblock_video/tests/js/video_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_control_spec.js rename to src/xblock_video/tests/js/video_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_events_bumper_plugin_spec.js b/src/xblock_video/tests/js/video_events_bumper_plugin_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_events_bumper_plugin_spec.js rename to src/xblock_video/tests/js/video_events_bumper_plugin_spec.js diff --git a/xblocks_contrib/video/tests/js/video_events_plugin_spec.js b/src/xblock_video/tests/js/video_events_plugin_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_events_plugin_spec.js rename to src/xblock_video/tests/js/video_events_plugin_spec.js diff --git a/xblocks_contrib/video/tests/js/video_focus_grabber_spec.js b/src/xblock_video/tests/js/video_focus_grabber_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_focus_grabber_spec.js rename to src/xblock_video/tests/js/video_focus_grabber_spec.js diff --git a/xblocks_contrib/video/tests/js/video_full_screen_spec.js b/src/xblock_video/tests/js/video_full_screen_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_full_screen_spec.js rename to src/xblock_video/tests/js/video_full_screen_spec.js diff --git a/xblocks_contrib/video/tests/js/video_play_pause_control_spec.js b/src/xblock_video/tests/js/video_play_pause_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_play_pause_control_spec.js rename to src/xblock_video/tests/js/video_play_pause_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_play_placeholder_spec.js b/src/xblock_video/tests/js/video_play_placeholder_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_play_placeholder_spec.js rename to src/xblock_video/tests/js/video_play_placeholder_spec.js diff --git a/xblocks_contrib/video/tests/js/video_play_skip_control_spec.js b/src/xblock_video/tests/js/video_play_skip_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_play_skip_control_spec.js rename to src/xblock_video/tests/js/video_play_skip_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_player_spec.js b/src/xblock_video/tests/js/video_player_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_player_spec.js rename to src/xblock_video/tests/js/video_player_spec.js diff --git a/xblocks_contrib/video/tests/js/video_poster_spec.js b/src/xblock_video/tests/js/video_poster_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_poster_spec.js rename to src/xblock_video/tests/js/video_poster_spec.js diff --git a/xblocks_contrib/video/tests/js/video_progress_slider_spec.js b/src/xblock_video/tests/js/video_progress_slider_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_progress_slider_spec.js rename to src/xblock_video/tests/js/video_progress_slider_spec.js diff --git a/xblocks_contrib/video/tests/js/video_quality_control_spec.js b/src/xblock_video/tests/js/video_quality_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_quality_control_spec.js rename to src/xblock_video/tests/js/video_quality_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_save_state_plugin_spec.js b/src/xblock_video/tests/js/video_save_state_plugin_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_save_state_plugin_spec.js rename to src/xblock_video/tests/js/video_save_state_plugin_spec.js diff --git a/xblocks_contrib/video/tests/js/video_skip_control_spec.js b/src/xblock_video/tests/js/video_skip_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_skip_control_spec.js rename to src/xblock_video/tests/js/video_skip_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_speed_control_spec.js b/src/xblock_video/tests/js/video_speed_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_speed_control_spec.js rename to src/xblock_video/tests/js/video_speed_control_spec.js diff --git a/xblocks_contrib/video/tests/js/video_storage_spec.js b/src/xblock_video/tests/js/video_storage_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_storage_spec.js rename to src/xblock_video/tests/js/video_storage_spec.js diff --git a/xblocks_contrib/video/tests/js/video_transcript_feedback_spec.js b/src/xblock_video/tests/js/video_transcript_feedback_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_transcript_feedback_spec.js rename to src/xblock_video/tests/js/video_transcript_feedback_spec.js diff --git a/xblocks_contrib/video/tests/js/video_volume_control_spec.js b/src/xblock_video/tests/js/video_volume_control_spec.js similarity index 100% rename from xblocks_contrib/video/tests/js/video_volume_control_spec.js rename to src/xblock_video/tests/js/video_volume_control_spec.js diff --git a/xblocks_contrib/video/tests/spec_helpers/helper.js b/src/xblock_video/tests/spec_helpers/helper.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/helper.js rename to src/xblock_video/tests/spec_helpers/helper.js diff --git a/xblocks_contrib/video/tests/spec_helpers/jasmine-extensions.js b/src/xblock_video/tests/spec_helpers/jasmine-extensions.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/jasmine-extensions.js rename to src/xblock_video/tests/spec_helpers/jasmine-extensions.js diff --git a/xblocks_contrib/video/tests/spec_helpers/jasmine-stealth.js b/src/xblock_video/tests/spec_helpers/jasmine-stealth.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/jasmine-stealth.js rename to src/xblock_video/tests/spec_helpers/jasmine-stealth.js diff --git a/xblocks_contrib/video/tests/spec_helpers/jasmine-waituntil.js b/src/xblock_video/tests/spec_helpers/jasmine-waituntil.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/jasmine-waituntil.js rename to src/xblock_video/tests/spec_helpers/jasmine-waituntil.js diff --git a/xblocks_contrib/video/tests/spec_helpers/page_helpers.js b/src/xblock_video/tests/spec_helpers/page_helpers.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/page_helpers.js rename to src/xblock_video/tests/spec_helpers/page_helpers.js diff --git a/xblocks_contrib/video/tests/spec_helpers/template_helpers.js b/src/xblock_video/tests/spec_helpers/template_helpers.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/template_helpers.js rename to src/xblock_video/tests/spec_helpers/template_helpers.js diff --git a/xblocks_contrib/video/tests/spec_helpers/vertical_student_view.js b/src/xblock_video/tests/spec_helpers/vertical_student_view.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/vertical_student_view.js rename to src/xblock_video/tests/spec_helpers/vertical_student_view.js diff --git a/xblocks_contrib/video/tests/spec_helpers/video_helper.js b/src/xblock_video/tests/spec_helpers/video_helper.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/video_helper.js rename to src/xblock_video/tests/spec_helpers/video_helper.js diff --git a/xblocks_contrib/video/tests/spec_helpers/view_helpers.js b/src/xblock_video/tests/spec_helpers/view_helpers.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/view_helpers.js rename to src/xblock_video/tests/spec_helpers/view_helpers.js diff --git a/xblocks_contrib/video/tests/spec_helpers/xmodule_spec.js b/src/xblock_video/tests/spec_helpers/xmodule_spec.js similarity index 100% rename from xblocks_contrib/video/tests/spec_helpers/xmodule_spec.js rename to src/xblock_video/tests/spec_helpers/xmodule_spec.js diff --git a/xblocks_contrib/video/tests/test_utils.py b/src/xblock_video/tests/test_utils.py similarity index 100% rename from xblocks_contrib/video/tests/test_utils.py rename to src/xblock_video/tests/test_utils.py diff --git a/xblocks_contrib/video/tests/test_video.py b/src/xblock_video/tests/test_video.py similarity index 97% rename from xblocks_contrib/video/tests/test_video.py rename to src/xblock_video/tests/test_video.py index aec9f0e9..36c4df8b 100644 --- a/xblocks_contrib/video/tests/test_video.py +++ b/src/xblock_video/tests/test_video.py @@ -33,8 +33,8 @@ from xblock.field_data import DictFieldData from xblock.fields import ScopeIds -from xblocks_contrib.video.tests.test_utils import VALIDATION_MESSAGE_WARNING, AsideTestType, DummyRuntime -from xblocks_contrib.video.video import EXPORT_IMPORT_STATIC_DIR, VideoBlock, create_youtube_string +from ..video import EXPORT_IMPORT_STATIC_DIR, VideoBlock, create_youtube_string +from .test_utils import VALIDATION_MESSAGE_WARNING, AsideTestType, DummyRuntime SRT_FILEDATA = ''' 0 @@ -93,7 +93,7 @@ def instantiate_block(**field_data): ) -# Because of the way xblocks_contrib.video.video imports edxval.api, we +# Because of the way xblock_video.video imports edxval.api, we # must mock the entire module, which requires making mock exception classes. class _MockValVideoNotFoundError(Exception): @@ -313,8 +313,8 @@ def test_parse_xml(self): }) @XBlockAside.register_temp_plugin(AsideTestType, "test_aside") - @patch('xblocks_contrib.video.video.VideoBlock.load_file') - @patch('xblocks_contrib.video.video.is_pointer_tag') + @patch('xblock_video.video.VideoBlock.load_file') + @patch('xblock_video.video.is_pointer_tag') @ddt.data(True, False) def test_parse_xml_with_asides(self, video_xml_has_aside, mock_is_pointer_tag, mock_load_file): """Test that `parse_xml` parses asides from the video xml""" @@ -636,7 +636,7 @@ def test_import_with_float_times(self): 'data': '' }) - @patch('xblocks_contrib.video.video.get_edxval_api') + @patch('xblock_video.video.get_edxval_api') def test_import_val_data(self, mock_get_edxval_api): """ Test that `parse_xml` works method works as expected. @@ -683,7 +683,7 @@ def mock_val_import(xml, edx_video_id, resource_fs, static_dir, external_transcr course_id='test_course_id' ) - @patch('xblocks_contrib.video.video.get_edxval_api') + @patch('xblock_video.video.get_edxval_api') def test_import_val_data_invalid(self, mock_get_edxval_api): mock_val_api = mock_get_edxval_api.return_value mock_val_api.ValCannotCreateError = _MockValCannotCreateError @@ -712,7 +712,7 @@ def setUp(self): self.file_system = OSFS(self.temp_dir) self.addCleanup(shutil.rmtree, self.temp_dir) - @patch('xblocks_contrib.video.video.get_edxval_api') + @patch('xblock_video.video.get_edxval_api') def test_export_to_xml(self, mock_get_edxval_api): """ Test that we write the correct XML on export. @@ -810,7 +810,7 @@ def test_export_to_xml_without_video_id(self): expected = etree.XML(xml_string, parser=parser) self.assertXmlEqual(expected, xml) - @patch('xblocks_contrib.video.video.get_edxval_api') + @patch('xblock_video.video.get_edxval_api') def test_export_to_xml_val_error(self, mock_get_edxval_api): mock_val_api = mock_get_edxval_api.return_value # Export should succeed without VAL data if video does not exist @@ -824,7 +824,7 @@ def test_export_to_xml_val_error(self, mock_get_edxval_api): expected = etree.XML(xml_string, parser=parser) self.assertXmlEqual(expected, xml) - @patch('xblocks_contrib.video.video.get_edxval_api', return_value=None) + @patch('xblock_video.video.get_edxval_api', return_value=None) def test_export_to_xml_empty_end_time(self, _mock_get_edxval_api): """ Test that we write the correct XML on export. @@ -855,7 +855,7 @@ def test_export_to_xml_empty_end_time(self, _mock_get_edxval_api): expected = etree.XML(xml_string, parser=parser) self.assertXmlEqual(expected, xml) - @patch('xblocks_contrib.video.video.get_edxval_api', return_value=None) + @patch('xblock_video.video.get_edxval_api', return_value=None) def test_export_to_xml_empty_parameters(self, _mock_get_edxval_api): """ Test XML export with defaults. @@ -865,7 +865,7 @@ def test_export_to_xml_empty_parameters(self, _mock_get_edxval_api): expected = '