├── .circleci ├── check-every-commit.sh └── config.yml ├── .dockerignore ├── .github ├── ISSUE_TEMPLATE.md ├── ISSUE_TEMPLATE │ ├── Bug_report.md │ ├── Feature_request.md │ └── Support_question.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .gitlint ├── CHANGELOG.md ├── CONTRIBUTORS.md ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── UPGRADE.md ├── arnold.yml ├── bin ├── docker-compose ├── e2e ├── generate_backend_lti_app ├── generate_frontend_lti_app ├── get_passports ├── get_tunnel_url ├── playwright └── pytest ├── crowdin └── config.yml ├── docker-compose.yml ├── docker ├── files │ ├── docker-entrypoint-initdb.d │ │ └── init_user_db.sh │ ├── etc │ │ ├── nginx │ │ │ └── conf.d │ │ │ │ └── default.conf │ │ └── prosody │ │ │ ├── certs │ │ │ └── .gitkeep │ │ │ └── prosody.cfg.lua │ └── usr │ │ └── local │ │ ├── bin │ │ └── entrypoint │ │ └── etc │ │ └── gunicorn │ │ └── marsha.py ├── images │ ├── dev │ │ └── Dockerfile │ ├── e2e │ │ └── Dockerfile │ └── webtorrent │ │ └── Dockerfile └── tests │ ├── run.sh │ └── statics.sh ├── docs ├── adr │ ├── 0001-actors.md │ ├── 0002-videos-languages.md │ ├── 0003-content-organization-and-accesses.md │ ├── 0004-soft-deletion.md │ └── README.md ├── cache.md ├── dev.md ├── env.md ├── i18n.md ├── images │ ├── image_snapshot_1.png │ ├── image_snapshot_diff_1.png │ ├── marsha_32x32_black.png │ ├── marsha_32x32_blue.png │ ├── marsha_32x32_white.png │ ├── marsha_32x32_yellow.png │ ├── moodle_iframe_resizer_admin_1.png │ ├── moodle_iframe_resizer_admin_2.png │ ├── moodle_lti_config_1.png │ ├── moodle_lti_config_2.png │ ├── moodle_lti_config_3.png │ ├── moodle_lti_config_4.png │ ├── moodle_lti_select_admin_1.png │ ├── moodle_lti_select_admin_2.png │ ├── moodle_lti_select_admin_3.png │ ├── moodle_lti_select_admin_4.png │ ├── moodle_lti_select_admin_5.png │ ├── moodle_lti_select_admin_6.png │ ├── moodle_lti_select_teacher_1.png │ ├── moodle_lti_select_teacher_10.png │ ├── moodle_lti_select_teacher_11.png │ ├── moodle_lti_select_teacher_12.png │ ├── moodle_lti_select_teacher_13.png │ ├── moodle_lti_select_teacher_2.png │ ├── moodle_lti_select_teacher_3.png │ ├── moodle_lti_select_teacher_4.png │ ├── moodle_lti_select_teacher_5.png │ ├── moodle_lti_select_teacher_6.png │ ├── moodle_lti_select_teacher_7.png │ ├── moodle_lti_select_teacher_8.png │ ├── moodle_lti_select_teacher_9.png │ ├── p2p-assisted-media-delivery.png │ └── p2p-media-loader-network.png ├── live_sessions.md ├── lti.md ├── moodle.md ├── p2p-video-player.md ├── peertube-runner.md ├── permissions.md ├── renater_federation_saml.md └── sprint-reviews │ ├── 2022-09-16-sprint-review.md │ ├── 2022-09-30-sprint-review.md │ ├── 2022-11-07-sprint-review.md │ ├── 2022-12-01-sprint-review.md │ └── 2023-01-27-sprint-review#6.md ├── env.d ├── db ├── development.dist ├── lambda.dist ├── localtunnel.dist ├── peertube_runner └── test ├── lib └── gitlint │ └── gitlint_emoji.py ├── readthedocs.yml ├── renovate.json └── src ├── .prettierignore ├── .prettierrc.js ├── aws ├── .terraform.lock.hcl ├── Makefile ├── bin │ └── terraform ├── env.d │ └── development.dist ├── output.tf ├── provider.tf ├── s3_scaleway.tf ├── state.tf.dist └── variables.tf ├── backend ├── .bandit ├── locale │ ├── .gitkeep │ ├── es_ES │ │ └── LC_MESSAGES │ │ │ └── django.po │ ├── fr_CA │ │ └── LC_MESSAGES │ │ │ └── django.po │ └── fr_FR │ │ └── LC_MESSAGES │ │ └── django.po ├── manage.py ├── marsha │ ├── .cookiecutter │ │ ├── cookiecutter.json │ │ ├── hooks │ │ │ └── post_gen_project.sh │ │ └── {{cookiecutter.app_name}} │ │ │ ├── __init__.py │ │ │ ├── admin.py │ │ │ ├── api.py │ │ │ ├── apps.py │ │ │ ├── defaults.py │ │ │ ├── factories.py │ │ │ ├── forms.py │ │ │ ├── lti_select.py │ │ │ ├── models.py │ │ │ ├── serializers.py │ │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── test_api.py │ │ │ ├── test_views_lti.py │ │ │ └── test_views_lti_select.py │ │ │ ├── urls.py │ │ │ └── views.py │ ├── __init__.py │ ├── account │ │ ├── __init__.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── backends │ │ │ └── saml_fer.py │ │ ├── checks.py │ │ ├── factories.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ └── dedupe_accounts.py │ │ ├── middleware.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_idporganizationassociation_unique_together_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── serializers.py │ │ ├── social_pipeline │ │ │ ├── __init__.py │ │ │ ├── organization.py │ │ │ ├── playlist.py │ │ │ └── social_auth.py │ │ ├── static │ │ │ └── css │ │ │ │ └── account │ │ │ │ └── account.css │ │ ├── templates │ │ │ └── account │ │ │ │ ├── base.html │ │ │ │ ├── login.html │ │ │ │ ├── password_reset_complete.html │ │ │ │ ├── password_reset_confirm.html │ │ │ │ └── password_reset_email.html │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ │ ├── __init__.py │ │ │ │ ├── test_logout.py │ │ │ │ ├── test_password_change.py │ │ │ │ ├── test_password_reset.py │ │ │ │ ├── test_password_reset_confirm.py │ │ │ │ ├── test_saml_fer_idp_list.py │ │ │ │ ├── test_token_obtain_pair.py │ │ │ │ └── test_token_refresh.py │ │ │ ├── backends │ │ │ │ └── test_saml_fer.py │ │ │ ├── dedupe_accounts │ │ │ │ ├── __init__.py │ │ │ │ ├── test_dedupe_accounts_command.py │ │ │ │ ├── test_dedupe_tracker.py │ │ │ │ └── test_user_deduplicator.py │ │ │ ├── test_checks.py │ │ │ ├── test_middleware.py │ │ │ ├── test_models.py │ │ │ ├── test_social_pipeline_organization.py │ │ │ ├── test_social_pipeline_playlist.py │ │ │ ├── test_social_pipeline_social_auth.py │ │ │ ├── test_views.py │ │ │ └── utils.py │ │ ├── urls.py │ │ ├── utils │ │ │ ├── __init__.py │ │ │ └── dedupe_accounts │ │ │ │ ├── __init__.py │ │ │ │ ├── dedupe_tracker.py │ │ │ │ └── user_deduplicator.py │ │ └── views.py │ ├── asgi.py │ ├── bbb │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── defaults.py │ │ ├── factories.py │ │ ├── forms.py │ │ ├── lti_select.py │ │ ├── management │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── delete_outdated_classrooms.py │ │ │ │ ├── refresh_bbb_recordings.py │ │ │ │ ├── rename_classroom_documents.py │ │ │ │ └── update_pending_classroom_sessions.py │ │ ├── metadata.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_remove_meeting_started_on_meeting_ended_and_more.py │ │ │ ├── 0003_alter_meeting_moderator_password_and_more.py │ │ │ ├── 0004_meeting_estimated_duration_meeting_starting_at_and_more.py │ │ │ ├── 0005_meeting_deleted_by_cascade.py │ │ │ ├── 0006_alter_meeting_moderator_password_and_more.py │ │ │ ├── 0007_classroom_rename_meeting_to_classroom.py │ │ │ ├── 0008_alter_classroom_deleted.py │ │ │ ├── 0009_classroomdocument.py │ │ │ ├── 0010_alter_classroom_options_and_more.py │ │ │ ├── 0011_classroomrecording.py │ │ │ ├── 0012_alter_classroomdocument_options.py │ │ │ ├── 0013_classroom_tools_parameters.py │ │ │ ├── 0014_alter_classroomrecording_classroom.py │ │ │ ├── 0015_classroomrecording_vod.py │ │ │ ├── 0016_classroom_recording_purpose.py │ │ │ ├── 0017_classroom_recording_vod_delete_cascade.py │ │ │ ├── 0018_classroom_instructor_token_classroom_public_token.py │ │ │ ├── 0019_add_retention_date_to_classroom.py │ │ │ ├── 0020_alter_classroomrecording_video_file_url_and_more.py │ │ │ ├── 0021_noop_alter_classroom_retention_date_and_more.py │ │ │ ├── 0022_classroomsession_and_more.py │ │ │ ├── 0023_classroom_infos.py │ │ │ ├── 0024_classroomdocument_storage_location.py │ │ │ ├── 0025_classroomdocument_fill_storage_location.py │ │ │ ├── 0026_classroomdocument_fix_storage_location.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── permissions.py │ │ ├── serializers.py │ │ ├── signals.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ │ ├── __init__.py │ │ │ │ ├── classroom │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── recordings │ │ │ │ │ │ ├── test_create_vod.py │ │ │ │ │ │ └── test_delete.py │ │ │ │ │ ├── test_bulk_destroy.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_invite_token.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_lti_select.py │ │ │ │ │ ├── test_recording_ready.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_service_create.py │ │ │ │ │ ├── test_service_end.py │ │ │ │ │ ├── test_service_join.py │ │ │ │ │ └── test_update.py │ │ │ │ └── classroomdocument │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_options.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_upload_ended.py │ │ │ ├── bbb_utils │ │ │ │ ├── test_create.py │ │ │ │ ├── test_delete_recordings.py │ │ │ │ ├── test_end.py │ │ │ │ ├── test_end_session.py │ │ │ │ ├── test_get_learning_analytics.py │ │ │ │ ├── test_get_meeting_infos.py │ │ │ │ ├── test_get_recordings.py │ │ │ │ ├── test_join.py │ │ │ │ ├── test_sign_parameters.py │ │ │ │ ├── test_start_session.py │ │ │ │ └── test_update_session_learning_analytics.py │ │ │ ├── signals │ │ │ │ └── test_object_uploaded_callback.py │ │ │ ├── test_command_refresh_bbb_recordings.py │ │ │ ├── test_command_rename_classroom_documents.py │ │ │ ├── test_command_update_pending_classroom_sessions.py │ │ │ ├── test_delete_outdated_classrooms.py │ │ │ ├── test_models.py │ │ │ ├── test_utils_tokens.py │ │ │ ├── test_views_lti.py │ │ │ ├── test_views_lti_config.py │ │ │ └── test_views_lti_select.py │ │ ├── urls.py │ │ ├── utils │ │ │ ├── __init__.py │ │ │ ├── bbb_utils.py │ │ │ └── tokens.py │ │ └── views.py │ ├── celery_app.py │ ├── core │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── admin_site.py │ │ ├── api │ │ │ ├── __init__.py │ │ │ ├── account.py │ │ │ ├── base.py │ │ │ ├── file.py │ │ │ ├── live_session.py │ │ │ ├── lti_user_association.py │ │ │ ├── pairing_challenge.py │ │ │ ├── playlist.py │ │ │ ├── playlist_access.py │ │ │ ├── portability_request.py │ │ │ ├── schema.py │ │ │ ├── shared_live_media.py │ │ │ ├── thumbnail.py │ │ │ ├── timed_text_track.py │ │ │ ├── video.py │ │ │ └── xapi.py │ │ ├── apps.py │ │ ├── cache.py │ │ ├── defaults.py │ │ ├── factories.py │ │ ├── fields.py │ │ ├── forms.py │ │ ├── lti │ │ │ ├── __init__.py │ │ │ ├── common.py │ │ │ ├── user_association.py │ │ │ ├── utils.py │ │ │ └── validator.py │ │ ├── lti_select.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── check_harvested.py │ │ │ │ ├── check_live_state.py │ │ │ │ ├── clean_aws_elemental_stack.py │ │ │ │ ├── clean_medialive_dev_stack.py │ │ │ │ ├── clean_mediapackages.py │ │ │ │ ├── delete_outdated_videos.py │ │ │ │ ├── delete_transcoding_temp_files.py │ │ │ │ ├── dev_simulate_reminders.py │ │ │ │ ├── rename_documents.py │ │ │ │ ├── send_reminders.py │ │ │ │ ├── send_vod_convert_reminders.py │ │ │ │ ├── sync_medialive_video.py │ │ │ │ ├── test_mediapackage_harvest.py │ │ │ │ ├── transcript_videos.py │ │ │ │ └── update_video_information.py │ │ ├── metadata.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_auto_20181221_0847.py │ │ │ ├── 0003_auto_20190108_1712.py │ │ │ ├── 0004_auto_20190112_1043.py │ │ │ ├── 0005_auto_20190112_1046.py │ │ │ ├── 0006_auto_20190114_1650.py │ │ │ ├── 0007_auto_20190122_1135.py │ │ │ ├── 0008_auto_20190119_1237.py │ │ │ ├── 0009_auto_20190305_0819.py │ │ │ ├── 0010_auto_20190329_0825.py │ │ │ ├── 0011_auto_20190417_0925.py │ │ │ ├── 0012_auto_20190418_0755.py │ │ │ ├── 0013_auto_20190513_0441.py │ │ │ ├── 0014_auto_20190523_1004.py │ │ │ ├── 0015_auto_20190904_1234.py │ │ │ ├── 0016_auto_20200402_2047.py │ │ │ ├── 0017_auto_20200221_1433.py │ │ │ ├── 0018_auto_20200603_0620.py │ │ │ ├── 0019_auto_20200609_0820.py │ │ │ ├── 0020_auto_20201116_1619.py │ │ │ ├── 0021_auto_20201210_1353.py │ │ │ ├── 0022_make_lti_id_optional.py │ │ │ ├── 0023_auto_20210601_0923.py │ │ │ ├── 0024_auto_20210907_1219.py │ │ │ ├── 0025_auto_20210924_0707.py │ │ │ ├── 0026_auto_20211125_1107.py │ │ │ ├── 0027_auto_20211125_1447.py │ │ │ ├── 0028_auto_20211129_1843.py │ │ │ ├── 0029_auto_20211213_1457.py │ │ │ ├── 0030_auto_20211215_1224.py │ │ │ ├── 0031_auto_20211220_1203.py │ │ │ ├── 0032_auto_20211220_1625.py │ │ │ ├── 0033_auto_20220105_1600.py │ │ │ ├── 0034_auto_20220119_0955.py │ │ │ ├── 0035_auto_20220216_1713.py │ │ │ ├── 0036_auto_20220303_1536.py │ │ │ ├── 0037_video_participantsaskingtojoin_and_more.py │ │ │ ├── 0038_livesession_channel_name.py │ │ │ ├── 0039_add_video_recording_slices.py │ │ │ ├── 0040_nullable_base_file_title.py │ │ │ ├── 0041_livesession_registered_at.py │ │ │ ├── 0042_remove_video_resource_id_livesession_must_notify_and_more.py │ │ │ ├── 0043_remove_video_video_unique_idx.py │ │ │ ├── 0044_remove_video_estimated_duration_and_more.py │ │ │ ├── 0045_add_livesession_language.py │ │ │ ├── 0046_add_deleted_by_cascade.py │ │ │ ├── 0047_add_video_join_mode.py │ │ │ ├── 0048_modify_thumbnail_video_relation.py │ │ │ ├── 0049_noop_run_missing_migrations.py │ │ │ ├── 0050_alter_video_join_mode.py │ │ │ ├── 0051_migrate_live_state.py │ │ │ ├── 0052_migrate_livesession_liveattendance.py │ │ │ ├── 0053_video_tags.py │ │ │ ├── 0054_alter_audiotrack_deleted_and_more.py │ │ │ ├── 0055_noop_alter_audiotrack_upload_state_and_more.py │ │ │ ├── 0056_add_ltiuserassociation.py │ │ │ ├── 0057_add_portabilityrequest.py │ │ │ ├── 0058_alter_playlist_consumer_site_alter_playlist_lti_id_and_more.py │ │ │ ├── 0059_remove_livesession_livesession_lti_or_public_and_more.py │ │ │ ├── 0060_consumersite_inactive_resources.py │ │ │ ├── 0061_remove_video_live_type_check_video_live_type_check.py │ │ │ ├── 0062_alter_video_active_shared_live_media.py │ │ │ ├── 0063_siteconfig.py │ │ │ ├── 0064_consumersite_inactive_features.py │ │ │ ├── 0065_organization_inactive_features_and_more.py │ │ │ ├── 0066_add_retention_duration_and_date_to_playlist_and_video.py │ │ │ ├── 0067_siteconfig_footer_copyright_siteconfig_login_html_and_more.py │ │ │ ├── 0068_siteconfig_inactive_features.py │ │ │ ├── 0069_siteconfig_saml_entity_id_and_more.py │ │ │ ├── 0070_playlist_is_claimable_alter_video_license.py │ │ │ ├── 0071_video_last_lti_url.py │ │ │ ├── 0072_siteconfig_homepage_banner_text_and_more.py │ │ │ ├── 0073_siteconfig_is_logo_enabled.py │ │ │ ├── 0074_video_transcode_pipeline.py │ │ │ ├── 0075_siteconfig_meta_description_siteconfig_meta_title.py │ │ │ ├── 0076_alter_video_transcode_pipeline.py │ │ │ ├── 0077_thumbnail_process_pipeline.py │ │ │ ├── 0078_sharedlivemedia_process_pipeline.py │ │ │ ├── 0079_timedtexttrack_process_pipeline.py │ │ │ ├── 0080_alter_playlist_lti_id.py │ │ │ ├── 0081_video_upload_error_reason.py │ │ │ ├── 0082_video_duration_video_size.py │ │ │ ├── 0083_alter_audiotrack_language_alter_signtrack_language_and_more.py │ │ │ ├── 0084_alter_video_upload_error_reason.py │ │ │ ├── 0085_document_filename_document_storage_location_and_more.py │ │ │ ├── 0086_document_fix_storage_location.py │ │ │ ├── 0087_alter_audiotrack_language_alter_signtrack_language_and_more.py │ │ │ ├── 0088_alter_audiotrack_language_alter_signtrack_language_and_more.py │ │ │ └── __init__.py │ │ ├── models │ │ │ ├── __init__.py │ │ │ ├── account.py │ │ │ ├── base.py │ │ │ ├── file.py │ │ │ ├── playlist.py │ │ │ ├── portability_request.py │ │ │ ├── site.py │ │ │ └── video.py │ │ ├── permissions │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── organization.py │ │ │ ├── playlist.py │ │ │ └── token.py │ │ ├── routers.py │ │ ├── sentry.py │ │ ├── serializers │ │ │ ├── __init__.py │ │ │ ├── account.py │ │ │ ├── base.py │ │ │ ├── file.py │ │ │ ├── live_session.py │ │ │ ├── pairing_challenge.py │ │ │ ├── playlist.py │ │ │ ├── playlist_access.py │ │ │ ├── portability_request.py │ │ │ ├── shared_live_media.py │ │ │ ├── thumbnail.py │ │ │ ├── timed_text_track.py │ │ │ ├── video.py │ │ │ └── xapi.py │ │ ├── services │ │ │ ├── __init__.py │ │ │ ├── live_session.py │ │ │ ├── video_participants.py │ │ │ └── video_recording.py │ │ ├── signals.py │ │ ├── simple_jwt │ │ │ ├── __init__.py │ │ │ ├── authentication.py │ │ │ ├── factories.py │ │ │ ├── permissions.py │ │ │ ├── tokens.py │ │ │ └── utils.py │ │ ├── static.py │ │ ├── stats.py │ │ ├── storage │ │ │ ├── __init__.py │ │ │ ├── dummy.py │ │ │ ├── filesystem.py │ │ │ ├── s3.py │ │ │ └── storage_class.py │ │ ├── tasks │ │ │ ├── __init__.py │ │ │ ├── recording.py │ │ │ ├── s3.py │ │ │ ├── shared_live_media.py │ │ │ ├── thumbnail.py │ │ │ ├── timed_text_track.py │ │ │ └── video.py │ │ ├── templates │ │ │ └── core │ │ │ │ ├── form_autosubmit.html │ │ │ │ ├── lti_config.xml │ │ │ │ ├── reminder_unregister.html │ │ │ │ ├── resource.html │ │ │ │ └── site.html │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ │ ├── __init__.py │ │ │ │ ├── live_sessions │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── base.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_display_name.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_list_attendances.py │ │ │ │ │ ├── test_push_attendance.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ ├── lti_user_associations │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── test_create.py │ │ │ │ ├── organizations │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ ├── playlist_accesses │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ ├── playlists │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_claim.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_is_claimed.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ ├── portability_requests │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_accept.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_reject.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ ├── shared_live_media │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_upload_ended.py │ │ │ │ ├── thumbnails │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_options.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_upload_ended.py │ │ │ │ ├── timed_text_tracks │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_options.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_upload_ended.py │ │ │ │ ├── users │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_whoami.py │ │ │ │ ├── video │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_bulk_destroy.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_destroy.py │ │ │ │ │ ├── test_harvest_live.py │ │ │ │ │ ├── test_initiate_live.py │ │ │ │ │ ├── test_initiate_transcript.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_jitsi_info.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_live_pairing.py │ │ │ │ │ ├── test_live_participants_asking_to_join.py │ │ │ │ │ ├── test_live_participants_joined.py │ │ │ │ │ ├── test_live_to_vod.py │ │ │ │ │ ├── test_metadata.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_shared_live_media.py │ │ │ │ │ ├── test_start_live.py │ │ │ │ │ ├── test_start_stop_recording.py │ │ │ │ │ ├── test_stats.py │ │ │ │ │ ├── test_stop_live.py │ │ │ │ │ ├── test_transcript_source.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ ├── test_update_live_state.py │ │ │ │ │ └── test_upload_ended.py │ │ │ │ └── xapi │ │ │ │ │ ├── document │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── test_from_website.py │ │ │ │ │ └── video │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_from_lti.py │ │ │ │ │ └── test_from_website.py │ │ │ ├── lti │ │ │ │ ├── __init__.py │ │ │ │ ├── test_common.py │ │ │ │ ├── test_user_association.py │ │ │ │ ├── test_utils.py │ │ │ │ └── tests.py │ │ │ ├── management_commands │ │ │ │ ├── __init__.py │ │ │ │ ├── test_check_harvested.py │ │ │ │ ├── test_check_live_state.py │ │ │ │ ├── test_clean_aws_elemental_stack.py │ │ │ │ ├── test_clean_medialive_dev_stack.py │ │ │ │ ├── test_clean_mediapackages.py │ │ │ │ ├── test_delete_outdated_videos.py │ │ │ │ ├── test_delete_transcoding_temp_files.py │ │ │ │ ├── test_dev_simulate_reminders.py │ │ │ │ ├── test_rename_documents.py │ │ │ │ ├── test_send_reminders.py │ │ │ │ ├── test_send_vod_convert_reminders.py │ │ │ │ ├── test_sync_medialive_video.py │ │ │ │ ├── test_transcript_videos.py │ │ │ │ └── test_update_video_information.py │ │ │ ├── models │ │ │ │ ├── __init__.py │ │ │ │ ├── test_consumer_site.py │ │ │ │ ├── test_deletion.py │ │ │ │ ├── test_live_pairing.py │ │ │ │ ├── test_livesession.py │ │ │ │ ├── test_migration_livesession.py │ │ │ │ ├── test_passport.py │ │ │ │ ├── test_playlist.py │ │ │ │ ├── test_portability_request.py │ │ │ │ ├── test_retention_date_object_mixin.py │ │ │ │ ├── test_site.py │ │ │ │ ├── test_timed_text_track.py │ │ │ │ └── test_video.py │ │ │ ├── serializers │ │ │ │ ├── __init__.py │ │ │ │ ├── test_live_session.py │ │ │ │ ├── test_shared_live_media.py │ │ │ │ ├── test_thumbnail.py │ │ │ │ ├── test_timed_text_track.py │ │ │ │ ├── test_update_state.py │ │ │ │ ├── test_video.py │ │ │ │ └── test_xapi_statement.py │ │ │ ├── services │ │ │ │ ├── __init__.py │ │ │ │ ├── test_video_participants.py │ │ │ │ └── test_video_recording.py │ │ │ ├── simple_jwt │ │ │ │ ├── __init__.py │ │ │ │ ├── test_factories.py │ │ │ │ └── test_tokens.py │ │ │ ├── tasks │ │ │ │ ├── __init__.py │ │ │ │ ├── test_recording.py │ │ │ │ ├── test_s3.py │ │ │ │ ├── test_shared_live_media.py │ │ │ │ ├── test_thumbnail.py │ │ │ │ ├── test_timed_text_track.py │ │ │ │ └── test_video.py │ │ │ ├── test_admin.py │ │ │ ├── test_admin_passport.py │ │ │ ├── test_api_challenge_token.py │ │ │ ├── test_api_document.py │ │ │ ├── test_api_get_frontend_configuration.py │ │ │ ├── test_api_playlist_portability.py │ │ │ ├── test_api_record_slices_state.py │ │ │ ├── test_api_update_state.py │ │ │ ├── test_api_xapi_statement.py │ │ │ ├── test_cache.py │ │ │ ├── test_files │ │ │ │ ├── bbb-video-template.html │ │ │ │ ├── big_buck_bunny_1080p.mp4 │ │ │ │ └── js │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── build │ │ │ │ │ ├── index.js │ │ │ │ │ ├── index.js.map │ │ │ │ │ ├── lti_site │ │ │ │ │ │ └── vendors-node_modules_grommet-icons_index_js.cbf443f52b931567ba45.index.js │ │ │ │ │ └── site │ │ │ │ │ │ └── static │ │ │ │ │ │ └── js │ │ │ │ │ │ ├── main.a235b98c.js │ │ │ │ │ │ └── main.a235b98c.js.map │ │ │ │ │ └── index.js │ │ │ ├── test_router.py │ │ │ ├── test_sentry.py │ │ │ ├── test_settings.py │ │ │ ├── test_statics.py │ │ │ ├── test_stats.py │ │ │ ├── test_urls.py │ │ │ ├── test_xapi.py │ │ │ ├── testing_utils.py │ │ │ ├── utils │ │ │ │ ├── __init__.py │ │ │ │ ├── medialive_utils │ │ │ │ │ ├── test_medialive_action_utils.py │ │ │ │ │ ├── test_medialive_create_utils.py │ │ │ │ │ ├── test_medialive_delete_utils.py │ │ │ │ │ └── test_medialive_list_utils.py │ │ │ │ ├── test_api_utils.py │ │ │ │ ├── test_convert_lambda_utils.py │ │ │ │ ├── test_lti_select_utils.py │ │ │ │ ├── test_portability_request_utils.py │ │ │ │ ├── test_react_locales.py │ │ │ │ ├── test_s3_utils.py │ │ │ │ ├── test_send_emails.py │ │ │ │ ├── test_time_utils.py │ │ │ │ ├── test_transcode.py │ │ │ │ ├── test_transcript.py │ │ │ │ └── test_xmpp_utils.py │ │ │ ├── views │ │ │ │ ├── __init__.py │ │ │ │ ├── stubs │ │ │ │ │ └── js │ │ │ │ │ │ └── build │ │ │ │ │ │ └── site │ │ │ │ │ │ └── index.html │ │ │ │ ├── test_lti_base.py │ │ │ │ ├── test_lti_cache.py │ │ │ │ ├── test_lti_config.py │ │ │ │ ├── test_lti_document.py │ │ │ │ ├── test_lti_respond.py │ │ │ │ ├── test_lti_select.py │ │ │ │ ├── test_lti_video.py │ │ │ │ ├── test_public_document.py │ │ │ │ ├── test_public_video.py │ │ │ │ ├── test_reminders_cancel.py │ │ │ │ └── test_site.py │ │ │ └── xapi │ │ │ │ ├── __init__.py │ │ │ │ ├── document │ │ │ │ ├── __init__.py │ │ │ │ └── test_statement_from_website.py │ │ │ │ └── video │ │ │ │ ├── __init__.py │ │ │ │ └── test_statement_from_website.py │ │ ├── urls │ │ │ ├── __init__.py │ │ │ └── converters.py │ │ ├── utils │ │ │ ├── __init__.py │ │ │ ├── api_utils.py │ │ │ ├── convert_lambda_utils.py │ │ │ ├── jitsi_utils.py │ │ │ ├── lti_select_utils.py │ │ │ ├── medialive_utils │ │ │ │ ├── __init__.py │ │ │ │ ├── medialive_action_utils.py │ │ │ │ ├── medialive_client_utils.py │ │ │ │ ├── medialive_create_utils.py │ │ │ │ ├── medialive_delete_utils.py │ │ │ │ ├── medialive_list_utils.py │ │ │ │ └── medialive_profiles │ │ │ │ │ └── medialive-720p.json │ │ │ ├── portability_request_utils.py │ │ │ ├── react_locales_utils.py │ │ │ ├── s3_utils.py │ │ │ ├── send_emails.py │ │ │ ├── throttle.py │ │ │ ├── time_utils.py │ │ │ ├── transcode.py │ │ │ ├── transcript_utils.py │ │ │ └── xmpp_utils.py │ │ ├── views.py │ │ └── xapi.py │ ├── deposit │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── defaults.py │ │ ├── factories.py │ │ ├── forms.py │ │ ├── lti_select.py │ │ ├── management │ │ │ └── commands │ │ │ │ └── rename_deposited_files.py │ │ ├── metadata.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_noop_alter_filedepository_description_and_more.py │ │ │ ├── 0003_noop_alter_depositedfile_upload_state.py │ │ │ ├── 0004_alter_filedepository_playlist.py │ │ │ ├── 0005_alter_depositedfile_options.py │ │ │ ├── 0006_depositedfile_storage_location.py │ │ │ ├── 0007_depositedfile_fill_storage_location.py │ │ │ ├── 0008_depositedfile_fix_storage_location.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── permissions.py │ │ ├── serializers.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ │ ├── depositedfiles │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_upload_ended.py │ │ │ │ ├── filedepositories │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_lti_select.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_update.py │ │ │ │ └── test_options.py │ │ │ ├── test_command_rename_deposited_files.py │ │ │ ├── test_views_lti.py │ │ │ └── test_views_lti_select.py │ │ ├── urls.py │ │ └── views.py │ ├── development │ │ ├── __init__.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── load_development_datasets.py │ │ │ │ └── test_send_emails.py │ │ ├── templates │ │ │ └── development │ │ │ │ └── lti_development.html │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── test_api_schema.py │ │ │ ├── test_management_commands_load_development_datasets.py │ │ │ └── test_views_lti_development.py │ │ ├── urls.py │ │ └── views.py │ ├── e2e │ │ ├── conftest.py │ │ ├── media │ │ │ ├── big_buck_bunny_1080p.jpg │ │ │ ├── big_buck_bunny_1080p.mp4 │ │ │ ├── big_buck_bunny_480p.jpg │ │ │ ├── big_buck_bunny_480p.mp4 │ │ │ ├── big_buck_bunny_720p.jpg │ │ │ ├── big_buck_bunny_720p.mp4 │ │ │ ├── cmaf │ │ │ │ ├── 1622122634.m3u8 │ │ │ │ ├── 1622122634.mpd │ │ │ │ ├── 1622122634_1080.m3u8 │ │ │ │ ├── 1622122634_1080_000000001.cmfv │ │ │ │ ├── 1622122634_1080init.cmfv │ │ │ │ ├── 1622122634_128k.m3u8 │ │ │ │ ├── 1622122634_128k_000000001.cmfa │ │ │ │ ├── 1622122634_128kinit.cmfa │ │ │ │ ├── 1622122634_144.m3u8 │ │ │ │ ├── 1622122634_144_000000001.cmfv │ │ │ │ ├── 1622122634_144init.cmfv │ │ │ │ ├── 1622122634_240.m3u8 │ │ │ │ ├── 1622122634_240_000000001.cmfv │ │ │ │ ├── 1622122634_240init.cmfv │ │ │ │ ├── 1622122634_480.m3u8 │ │ │ │ ├── 1622122634_480_000000001.cmfv │ │ │ │ ├── 1622122634_480init.cmfv │ │ │ │ ├── 1622122634_64k.m3u8 │ │ │ │ ├── 1622122634_64k_000000001.cmfa │ │ │ │ ├── 1622122634_64kinit.cmfa │ │ │ │ ├── 1622122634_720.m3u8 │ │ │ │ ├── 1622122634_720_000000001.cmfv │ │ │ │ ├── 1622122634_720init.cmfv │ │ │ │ ├── 1622122634_96k.m3u8 │ │ │ │ ├── 1622122634_96k_000000001.cmfa │ │ │ │ └── 1622122634_96kinit.cmfa │ │ │ ├── mp4 │ │ │ │ ├── 1622122634_1080.mp4 │ │ │ │ ├── 1622122634_144.mp4 │ │ │ │ ├── 1622122634_240.mp4 │ │ │ │ ├── 1622122634_480.mp4 │ │ │ │ └── 1622122634_720.mp4 │ │ │ ├── previews │ │ │ │ ├── 1622122634_100.0000000.jpg │ │ │ │ └── 1622122634_100.0000001.jpg │ │ │ └── thumbnails │ │ │ │ ├── 1622122634_1080.0000000.jpg │ │ │ │ ├── 1622122634_144.0000000.jpg │ │ │ │ ├── 1622122634_240.0000000.jpg │ │ │ │ ├── 1622122634_480.0000000.jpg │ │ │ │ └── 1622122634_720.0000000.jpg │ │ ├── test_lti.py │ │ ├── test_lti_bbb.py │ │ ├── test_lti_markdown.py │ │ └── test_site.py │ ├── markdown │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── defaults.py │ │ ├── factories.py │ │ ├── forms.py │ │ ├── lti_select.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_markdowndocument_deleted_by_cascade.py │ │ │ ├── 0003_markdownimage.py │ │ │ ├── 0004_alter_markdowndocument_deleted_and_more.py │ │ │ ├── 0005_noop_alter_markdownimage_upload_state.py │ │ │ ├── 0006_alter_markdowndocumenttranslation_title.py │ │ │ ├── 0007_markdownimage_storage_location.py │ │ │ ├── 0008_markdownimage_fill_storage_location.py │ │ │ ├── 0009_markdownimage_fix_storage_location.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── permissions.py │ │ ├── serializers.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ │ ├── __init__.py │ │ │ │ ├── markdown_documents │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_list.py │ │ │ │ │ ├── test_lti_select.py │ │ │ │ │ ├── test_render_latex.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ ├── test_update.py │ │ │ │ │ └── test_update_translations.py │ │ │ │ └── markdown_images │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── test_create.py │ │ │ │ │ ├── test_delete.py │ │ │ │ │ ├── test_initiate_upload.py │ │ │ │ │ ├── test_retrieve.py │ │ │ │ │ └── test_upload_ended.py │ │ │ ├── resources │ │ │ │ ├── latex_complex_scheme.tex │ │ │ │ ├── rendered_latex_complex_scheme.svg │ │ │ │ └── rendered_simple_latex.svg │ │ │ ├── test_utils.py │ │ │ ├── test_views_lti.py │ │ │ └── test_views_lti_select.py │ │ ├── urls.py │ │ ├── utils │ │ │ ├── __init__.py │ │ │ └── converter.py │ │ └── views.py │ ├── page │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── factories.py │ │ ├── migrations │ │ │ ├── 0001_initial_page_model.py │ │ │ ├── 0002_page_site.py │ │ │ ├── 0003_alter_page_slug_page_unique_site_slug_page.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── serializers.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ └── api │ │ │ │ ├── __init__.py │ │ │ │ └── page │ │ │ │ ├── __init__.py │ │ │ │ ├── test_list.py │ │ │ │ └── test_retrieve.py │ │ └── urls.py │ ├── settings.py │ ├── static │ │ ├── .gitkeep │ │ ├── fonts │ │ │ ├── icomoon │ │ │ │ ├── icomoon.svg │ │ │ │ └── icomoon.woff │ │ │ └── roboto │ │ │ │ ├── roboto-bold.ttf │ │ │ │ ├── roboto-light.ttf │ │ │ │ ├── roboto-medium.ttf │ │ │ │ └── roboto-regular.ttf │ │ ├── img │ │ │ ├── bbbBackground.png │ │ │ ├── bbbLogo.png │ │ │ ├── errorTelescope.png │ │ │ ├── liveBackground.jpg │ │ │ ├── liveErrorBackground.jpg │ │ │ ├── marshaWhiteLogo.png │ │ │ └── videoWizardBackground.png │ │ ├── marsha_32x32_black.png │ │ ├── marsha_32x32_blue.png │ │ ├── marsha_32x32_white.png │ │ ├── marsha_32x32_yellow.png │ │ ├── marsha_classroom_32x32_blue.png │ │ └── marsha_video_32x32_blue.png │ ├── urls.py │ ├── websocket │ │ ├── __init__.py │ │ ├── application.py │ │ ├── apps.py │ │ ├── consumers │ │ │ ├── __init__.py │ │ │ └── video.py │ │ ├── defaults.py │ │ ├── middlewares │ │ │ ├── __init__.py │ │ │ └── jwt.py │ │ ├── routing.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── test_consumers_video.py │ │ │ ├── test_middleware_jwt.py │ │ │ └── test_utils_channel_layers.py │ │ └── utils │ │ │ ├── __init__.py │ │ │ └── channel_layers_utils.py │ └── workers.py ├── pylintrc ├── setup.cfg └── setup.py ├── frontend ├── apps │ ├── lti_site │ │ ├── .eslintrc.js │ │ ├── __mocks__ │ │ │ ├── styleMock.js │ │ │ └── zustand.js │ │ ├── apps │ │ │ ├── .cookiecutter │ │ │ │ ├── cookiecutter.json │ │ │ │ ├── hooks │ │ │ │ │ └── post_gen_project.sh │ │ │ │ └── {{cookiecutter.app_name}} │ │ │ │ │ ├── components │ │ │ │ │ ├── Dashboard{{cookiecutter.model}} │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── route.ts │ │ │ │ │ ├── RedirectOnLoad │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── route.ts │ │ │ │ │ ├── Routes.tsx │ │ │ │ │ └── SelectContent │ │ │ │ │ │ ├── SelectContentResource │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentSection │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentTab │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── commonMessages.ts │ │ │ │ │ ├── data │ │ │ │ │ ├── queries │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── {{cookiecutter.app_name}}AppData.ts │ │ │ │ │ ├── types │ │ │ │ │ ├── models.ts │ │ │ │ │ └── {{cookiecutter.app_name_capitalized}}AppData.ts │ │ │ │ │ └── utils │ │ │ │ │ ├── parseDataElements │ │ │ │ │ └── parseDataElements.ts │ │ │ │ │ └── tests │ │ │ │ │ └── factories.ts │ │ │ ├── classroom │ │ │ │ ├── components │ │ │ │ │ ├── RedirectOnLoad │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── route.ts │ │ │ │ │ ├── Routes.tsx │ │ │ │ │ └── SelectContent │ │ │ │ │ │ ├── SelectContentResource │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentSection │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentTab │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── commonMessages.ts │ │ │ │ ├── data │ │ │ │ │ └── classroomAppData.ts │ │ │ │ ├── settings.ts │ │ │ │ └── utils │ │ │ │ │ └── parseDataElements │ │ │ │ │ └── parseDataElements.ts │ │ │ ├── deposit │ │ │ │ ├── api │ │ │ │ │ └── useDepositedFileMetadata │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── components │ │ │ │ │ ├── Dashboard │ │ │ │ │ │ ├── DashboardInstructor │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── DashboardStudent │ │ │ │ │ │ │ ├── UploadFiles │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── common │ │ │ │ │ │ │ └── DepositedFileRow │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── route.ts │ │ │ │ │ ├── RedirectOnLoad │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── route.ts │ │ │ │ │ ├── Routes.tsx │ │ │ │ │ └── SelectContent │ │ │ │ │ │ ├── SelectContentResource │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentSection │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SelectContentTab │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── commonMessages.ts │ │ │ │ ├── data │ │ │ │ │ ├── depositAppData.ts │ │ │ │ │ ├── queries │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── sideEffects │ │ │ │ │ │ └── createDepositedFile │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ ├── types │ │ │ │ │ ├── DepositAppData.ts │ │ │ │ │ └── metadata.ts │ │ │ │ └── utils │ │ │ │ │ ├── bytesToSize.spec.ts │ │ │ │ │ ├── bytesToSize.ts │ │ │ │ │ ├── parseDataElements │ │ │ │ │ └── parseDataElements.ts │ │ │ │ │ └── tests │ │ │ │ │ └── factories.ts │ │ │ └── markdown │ │ │ │ ├── components │ │ │ │ ├── MarkdownWizard │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── RedirectOnLoad │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── Routes.tsx │ │ │ │ └── SelectContent │ │ │ │ │ ├── SelectContentResource │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── SelectContentSection │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── SelectContentTab │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── commonMessages.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── data │ │ │ │ └── MarkdownAppData.ts │ │ │ │ ├── styles │ │ │ │ ├── common.scss │ │ │ │ ├── darkmode.scss │ │ │ │ ├── lightmode.scss │ │ │ │ └── main.scss │ │ │ │ └── utils │ │ │ │ └── parseDataElements │ │ │ │ └── parseDataElements.ts │ │ ├── babel.config.js │ │ ├── components │ │ │ ├── App │ │ │ │ ├── AppContentLoader │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── AppInitializer │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── index.tsx │ │ │ ├── ClaimLink │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── Dashboard │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── DashboardDocument │ │ │ │ ├── DashboardDocumentPaneButtons │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardDocumentTitleForm │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DocumentPlayer │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── InstructorWrapper │ │ │ │ ├── InstructorView │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── LTINav │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── LTIRoutes │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── MutationFieldError │ │ │ │ └── index.tsx │ │ │ ├── PlaylistPage │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── PlaylistPortability │ │ │ │ ├── index.spec.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── route.ts │ │ │ ├── PortabilityRequest │ │ │ │ ├── index.spec.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── route.ts │ │ │ ├── PublicVideoDashboard │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── RedirectOnLoad │ │ │ │ ├── RedirectDocument.spec.tsx │ │ │ │ ├── RedirectDocument.tsx │ │ │ │ ├── RedirectVideo.spec.tsx │ │ │ │ ├── RedirectVideo.tsx │ │ │ │ ├── index.spec.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── route.ts │ │ │ ├── SelectContent │ │ │ │ ├── SelectContentSection │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── SelectContentTabs │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── SelectContentTargetedResource │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── commonMessages.tsx │ │ │ │ ├── index.spec.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── route.ts │ │ │ │ ├── utils.spec.tsx │ │ │ │ └── utils.ts │ │ │ ├── Styled │ │ │ │ └── DashboardContainer.ts │ │ │ ├── UploadableObjectStatusBadge │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── VideoWizard │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── Warnings │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ └── routes.ts │ │ ├── data │ │ │ ├── appConfigs.ts │ │ │ ├── queries │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ │ ├── sideEffects │ │ │ │ ├── deleteTimedTextTrack │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── getResourceList │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── pollForTrack │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ └── stores │ │ │ │ └── useObjectProgress │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.tsx │ │ ├── i18n │ │ │ ├── es_ES.json │ │ │ ├── fr_CA.json │ │ │ └── fr_FR.json │ │ ├── index.tsx │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── public-path.js │ │ ├── react-intl-transformer.js │ │ ├── scss │ │ │ ├── _main.scss │ │ │ ├── generic │ │ │ │ └── accessibility.scss │ │ │ ├── objects │ │ │ │ └── _dateInputScheduledWebinar.scss │ │ │ └── vendor │ │ │ │ ├── _icomoon.scss │ │ │ │ └── _roboto.scss │ │ ├── translations │ │ │ └── .gitkeep │ │ ├── tsconfig.json │ │ ├── types │ │ │ ├── ReactExtensions.ts │ │ │ └── Schema.ts │ │ ├── utils │ │ │ ├── lang.ts │ │ │ ├── parseDataElements │ │ │ │ ├── parseDataElements.spec.ts │ │ │ │ └── parseDataElements.ts │ │ │ ├── tests │ │ │ │ ├── intl.tsx │ │ │ │ └── resolver.js │ │ │ └── theme │ │ │ │ └── baseStyles.ts │ │ └── webpack.config.js │ └── standalone_site │ │ ├── .env.development │ │ ├── .env.production │ │ ├── .eslintrc.cjs │ │ ├── README.md │ │ ├── babel.config.js │ │ ├── i18n │ │ ├── es_ES.json │ │ ├── fr_CA.json │ │ └── fr_FR.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── public │ │ ├── favicon.ico │ │ ├── logo192.png │ │ ├── logo512.png │ │ ├── logos │ │ │ ├── bbb.png │ │ │ ├── europe.png │ │ │ ├── france-relance.png │ │ │ ├── fun.png │ │ │ ├── fun_blue.png │ │ │ └── ministere.png │ │ ├── manifest.json │ │ └── robots.txt │ │ ├── src │ │ ├── __mock__ │ │ │ ├── @tanstack │ │ │ │ └── react-query-devtools.tsx │ │ │ ├── fetchMockAuth.mock.ts │ │ │ └── react-markdown.tsx │ │ ├── api │ │ │ ├── useConfig │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.ts │ │ │ ├── useLtiUserAssociations │ │ │ │ ├── index.spec.tsx │ │ │ │ └── index.ts │ │ │ └── useOrganizations │ │ │ │ └── index.ts │ │ ├── assets │ │ │ ├── fonts │ │ │ │ └── roboto │ │ │ │ │ ├── roboto-black.ttf │ │ │ │ │ ├── roboto-bold.ttf │ │ │ │ │ ├── roboto-medium.ttf │ │ │ │ │ └── roboto-regular.ttf │ │ │ ├── img │ │ │ │ ├── bbbBackground.png │ │ │ │ ├── bbbLogo.png │ │ │ │ ├── europe.png │ │ │ │ ├── france-relance.png │ │ │ │ ├── homepage-banner.png │ │ │ │ ├── liveBackground.jpg │ │ │ │ ├── ministere.svg │ │ │ │ └── telescope.png │ │ │ └── svg │ │ │ │ ├── burger.svg │ │ │ │ ├── hide-content.svg │ │ │ │ ├── iko_avatarsvg.svg │ │ │ │ ├── iko_boot_code_barresvg.svg │ │ │ │ ├── iko_boot_universitesvg.svg │ │ │ │ ├── iko_burgersvg.svg │ │ │ │ ├── iko_checklistsvg.svg │ │ │ │ ├── iko_close.svg │ │ │ │ ├── iko_eye.svg │ │ │ │ ├── iko_homesvg.svg │ │ │ │ ├── iko_live.svg │ │ │ │ ├── iko_next.svg │ │ │ │ ├── iko_previoussvg.svg │ │ │ │ ├── iko_search-people.svg │ │ │ │ ├── iko_starsvg.svg │ │ │ │ ├── iko_vuelistesvg.svg │ │ │ │ ├── iko_webinairesvg.svg │ │ │ │ ├── logo_marsha.svg │ │ │ │ ├── logout.svg │ │ │ │ ├── settings.svg │ │ │ │ └── show-content.svg │ │ ├── components │ │ │ ├── Assets │ │ │ │ ├── LoadSVG.spec.tsx │ │ │ │ ├── LoadSVG.tsx │ │ │ │ └── index.ts │ │ │ ├── Cards │ │ │ │ ├── WhiteCard │ │ │ │ │ └── WhiteCard.tsx │ │ │ │ └── index.ts │ │ │ ├── Layout │ │ │ │ ├── MainLayout.spec.tsx │ │ │ │ ├── MainLayout.tsx │ │ │ │ └── index.tsx │ │ │ └── Text │ │ │ │ ├── PrivateTextInputField.spec.tsx │ │ │ │ ├── PrivateTextInputField.tsx │ │ │ │ ├── Text404.spec.tsx │ │ │ │ ├── Text404.tsx │ │ │ │ └── index.ts │ │ ├── conf │ │ │ └── global.ts │ │ ├── features │ │ │ ├── App │ │ │ │ ├── App.spec.tsx │ │ │ │ ├── App.tsx │ │ │ │ ├── AppConfig.spec.tsx │ │ │ │ ├── AppConfig.tsx │ │ │ │ ├── AppRoutes.spec.tsx │ │ │ │ ├── AppRoutes.tsx │ │ │ │ └── index.ts │ │ │ ├── Authentication │ │ │ │ ├── api │ │ │ │ │ ├── basicLogin │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── getRenaterFerIdpList │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── getUserData │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── logout │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── usePasswordReset │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── usePasswordResetConfirm │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── validateChallenge │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── validateClassroomInviteToken │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ ├── components │ │ │ │ │ ├── AuthRouter.spec.tsx │ │ │ │ │ ├── AuthRouter.tsx │ │ │ │ │ ├── BaseAuthenticationPage.spec.tsx │ │ │ │ │ ├── BaseAuthenticationPage.tsx │ │ │ │ │ ├── Login.spec.tsx │ │ │ │ │ ├── Login.tsx │ │ │ │ │ ├── LoginForm.spec.tsx │ │ │ │ │ ├── LoginForm.tsx │ │ │ │ │ ├── PasswordReset.spec.tsx │ │ │ │ │ ├── PasswordReset.tsx │ │ │ │ │ ├── PasswordResetConfirmForm.spec.tsx │ │ │ │ │ ├── PasswordResetConfirmForm.tsx │ │ │ │ │ ├── PasswordResetForm.spec.tsx │ │ │ │ │ ├── PasswordResetForm.tsx │ │ │ │ │ ├── RenaterAuthenticator.spec.tsx │ │ │ │ │ └── RenaterAuthenticator.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── useAuthenticator.spec.tsx │ │ │ │ │ └── useAuthenticator.tsx │ │ │ │ └── index.ts │ │ │ ├── ClaimResource │ │ │ │ ├── api │ │ │ │ │ ├── useClaimResource.spec.tsx │ │ │ │ │ └── useClaimResource.ts │ │ │ │ ├── components │ │ │ │ │ ├── ClaimResource.spec.tsx │ │ │ │ │ └── ClaimResource.tsx │ │ │ │ └── index.tsx │ │ │ ├── Contents │ │ │ │ ├── components │ │ │ │ │ ├── Contents │ │ │ │ │ │ ├── Contents.spec.tsx │ │ │ │ │ │ └── Contents.tsx │ │ │ │ │ ├── ContentsFilter │ │ │ │ │ │ ├── ContentsFilter.spec.tsx │ │ │ │ │ │ └── ContentsFilter.tsx │ │ │ │ │ ├── ContentsHeader │ │ │ │ │ │ ├── ContentsHeader.spec.tsx │ │ │ │ │ │ └── ContentsHeader.tsx │ │ │ │ │ ├── ContentsRouter │ │ │ │ │ │ ├── ContentsRouter.spec.tsx │ │ │ │ │ │ └── ContentsRouter.tsx │ │ │ │ │ ├── ContentsShuffle │ │ │ │ │ │ ├── ContentsShuffle.spec.tsx │ │ │ │ │ │ └── ContentsShuffle.tsx │ │ │ │ │ ├── ContentsWrapper │ │ │ │ │ │ ├── ContentsWrapper.spec.tsx │ │ │ │ │ │ └── ContentsWrapper.tsx │ │ │ │ │ └── ManageAPIState │ │ │ │ │ │ ├── ManageAPIState.spec.tsx │ │ │ │ │ │ └── ManageAPIState.tsx │ │ │ │ ├── features │ │ │ │ │ ├── ClassRoom │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ ├── ClassRoomRouter.spec.tsx │ │ │ │ │ │ │ ├── ClassRoomRouter.tsx │ │ │ │ │ │ │ ├── Manage │ │ │ │ │ │ │ │ ├── ClassRoomCreateForm.spec.tsx │ │ │ │ │ │ │ │ ├── ClassRoomCreateForm.tsx │ │ │ │ │ │ │ │ ├── ClassroomManage.spec.tsx │ │ │ │ │ │ │ │ └── ClassroomManage.tsx │ │ │ │ │ │ │ ├── Read │ │ │ │ │ │ │ │ ├── ClassRoomItem.spec.tsx │ │ │ │ │ │ │ │ ├── ClassRoomItem.tsx │ │ │ │ │ │ │ │ ├── ClassRoomShuffle.spec.tsx │ │ │ │ │ │ │ │ ├── ClassRoomShuffle.tsx │ │ │ │ │ │ │ │ ├── ClassRooms.spec.tsx │ │ │ │ │ │ │ │ └── ClassRooms.tsx │ │ │ │ │ │ │ └── Update │ │ │ │ │ │ │ │ ├── ClassRoomUpdate.spec.tsx │ │ │ │ │ │ │ │ └── ClassRoomUpdate.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── routes.tsx │ │ │ │ │ ├── Live │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ ├── LiveRouter.spec.tsx │ │ │ │ │ │ │ ├── LiveRouter.tsx │ │ │ │ │ │ │ ├── Manage │ │ │ │ │ │ │ │ ├── LiveCreateForm.spec.tsx │ │ │ │ │ │ │ │ ├── LiveCreateForm.tsx │ │ │ │ │ │ │ │ ├── LiveManage.spec.tsx │ │ │ │ │ │ │ │ └── LiveManage.tsx │ │ │ │ │ │ │ ├── Read │ │ │ │ │ │ │ │ ├── Live.spec.tsx │ │ │ │ │ │ │ │ ├── Live.tsx │ │ │ │ │ │ │ │ ├── Lives.spec.tsx │ │ │ │ │ │ │ │ └── Lives.tsx │ │ │ │ │ │ │ └── Update │ │ │ │ │ │ │ │ ├── LiveUpdate.spec.tsx │ │ │ │ │ │ │ │ └── LiveUpdate.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── routes.tsx │ │ │ │ │ ├── Video │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ ├── Manage │ │ │ │ │ │ │ │ ├── VideoCreateForm.spec.tsx │ │ │ │ │ │ │ │ ├── VideoCreateForm.tsx │ │ │ │ │ │ │ │ ├── VideoManage.spec.tsx │ │ │ │ │ │ │ │ └── VideoManage.tsx │ │ │ │ │ │ │ ├── Read │ │ │ │ │ │ │ │ ├── Video.spec.tsx │ │ │ │ │ │ │ │ ├── Video.tsx │ │ │ │ │ │ │ │ ├── Videos.spec.tsx │ │ │ │ │ │ │ │ └── Videos.tsx │ │ │ │ │ │ │ ├── Update │ │ │ │ │ │ │ │ ├── VideoUpdate.spec.tsx │ │ │ │ │ │ │ │ └── VideoUpdate.tsx │ │ │ │ │ │ │ ├── VideoRouter.spec.tsx │ │ │ │ │ │ │ └── VideoRouter.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── routes.tsx │ │ │ │ │ ├── featureLoader.spec.tsx │ │ │ │ │ └── featureLoader.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── useContentPerPage.spec.tsx │ │ │ │ │ ├── useContentPerPage.tsx │ │ │ │ │ ├── useContentRoutes.spec.tsx │ │ │ │ │ └── useContentRoutes.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── store │ │ │ │ │ ├── contentsStore.ts │ │ │ │ │ └── selectionStore.ts │ │ │ ├── Footer │ │ │ │ ├── assets │ │ │ │ │ └── svg │ │ │ │ │ │ └── footer-wave.svg │ │ │ │ ├── components │ │ │ │ │ ├── Footer.spec.tsx │ │ │ │ │ └── Footer.tsx │ │ │ │ └── index.tsx │ │ │ ├── Header │ │ │ │ ├── Header.spec.tsx │ │ │ │ ├── Header.tsx │ │ │ │ ├── HeaderLight.spec.tsx │ │ │ │ ├── HeaderLight.tsx │ │ │ │ └── index.tsx │ │ │ ├── HomePage │ │ │ │ ├── components │ │ │ │ │ ├── HomePage.spec.tsx │ │ │ │ │ └── HomePage.tsx │ │ │ │ └── index.tsx │ │ │ ├── Language │ │ │ │ ├── components │ │ │ │ │ ├── LanguagePicker.spec.tsx │ │ │ │ │ └── LanguagePicker.tsx │ │ │ │ ├── conf.ts │ │ │ │ ├── getTranslations.ts │ │ │ │ ├── hook │ │ │ │ │ ├── useLanguage.spec.tsx │ │ │ │ │ └── useLanguage.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── store │ │ │ │ │ ├── languageStore.spec.ts │ │ │ │ │ └── languageStore.ts │ │ │ │ ├── utils.spec.ts │ │ │ │ └── utils.ts │ │ │ ├── Menu │ │ │ │ ├── components │ │ │ │ │ ├── Burger │ │ │ │ │ │ ├── Burger.module.css │ │ │ │ │ │ ├── Burger.spec.tsx │ │ │ │ │ │ └── Burger.tsx │ │ │ │ │ ├── Menu.spec.tsx │ │ │ │ │ ├── Menu.tsx │ │ │ │ │ ├── MenuItem.spec.tsx │ │ │ │ │ └── MenuItem.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── store │ │ │ │ │ └── menuStore.ts │ │ │ ├── PagesApi │ │ │ │ ├── api │ │ │ │ │ ├── usePageApi.spec.tsx │ │ │ │ │ ├── usePageApi.ts │ │ │ │ │ ├── usePagesApi.spec.tsx │ │ │ │ │ └── usePagesApi.ts │ │ │ │ ├── components │ │ │ │ │ ├── PagesApi.spec.tsx │ │ │ │ │ └── PagesApi.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── usePagesApi.spec.tsx │ │ │ │ │ └── usePagesApi.tsx │ │ │ │ └── index.ts │ │ │ ├── Playlist │ │ │ │ ├── api │ │ │ │ │ ├── useCreatePlaylist │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useDeletePlaylist │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── usePlaylists │ │ │ │ │ │ └── index.ts │ │ │ │ ├── components │ │ │ │ │ ├── CreatePlaylistForm.spec.tsx │ │ │ │ │ ├── CreatePlaylistForm.tsx │ │ │ │ │ ├── PlaylistForm.spec.tsx │ │ │ │ │ ├── PlaylistForm.tsx │ │ │ │ │ ├── PlaylistPage.spec.tsx │ │ │ │ │ ├── PlaylistPage.tsx │ │ │ │ │ ├── PlaylistRouter.spec.tsx │ │ │ │ │ └── PlaylistRouter.tsx │ │ │ │ ├── features │ │ │ │ │ └── UpdatePlaylist │ │ │ │ │ │ ├── api │ │ │ │ │ │ ├── useCreatePlaylistAccess │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── useDeletePlaylistAccess │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── usePlaylist │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── usePlaylistAccess │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── useSearchUsers │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── useUpdatePlaylist │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── useUpdatePlaylistAccess │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── components │ │ │ │ │ │ ├── AddUserAccessButton.spec.tsx │ │ │ │ │ │ ├── AddUserAccessButton.tsx │ │ │ │ │ │ ├── AddUserAccessForm.spec.tsx │ │ │ │ │ │ ├── AddUserAccessForm.tsx │ │ │ │ │ │ ├── PlaylistUserList.spec.tsx │ │ │ │ │ │ ├── PlaylistUserList.tsx │ │ │ │ │ │ ├── SearchUserList.spec.tsx │ │ │ │ │ │ ├── SearchUserList.tsx │ │ │ │ │ │ ├── SearchUserListRow.spec.tsx │ │ │ │ │ │ ├── SearchUserListRow.tsx │ │ │ │ │ │ ├── UpdatePlaylistPage.spec.tsx │ │ │ │ │ │ ├── UpdatePlaylistPage.tsx │ │ │ │ │ │ ├── UserListRow.spec.tsx │ │ │ │ │ │ ├── UserListRow.tsx │ │ │ │ │ │ ├── UserRoleOptions.spec.tsx │ │ │ │ │ │ └── UserRoleOptions.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── types │ │ │ │ │ │ └── playlistAccess.ts │ │ │ │ ├── hooks │ │ │ │ │ ├── useSelectPlaylist.spec.tsx │ │ │ │ │ └── useSelectPlaylist.tsx │ │ │ │ └── index.ts │ │ │ ├── PortabilityRequests │ │ │ │ ├── api │ │ │ │ │ ├── usePortabilityRequests.spec.tsx │ │ │ │ │ └── usePortabilityRequests.ts │ │ │ │ ├── components │ │ │ │ │ ├── AcceptRejectButtons.spec.tsx │ │ │ │ │ ├── AcceptRejectButtons.tsx │ │ │ │ │ ├── PortabilityRequestStateTag.spec.tsx │ │ │ │ │ ├── PortabilityRequestStateTag.tsx │ │ │ │ │ ├── PortabilityRequests.spec.tsx │ │ │ │ │ ├── PortabilityRequests.tsx │ │ │ │ │ ├── PortabilityRequestsRouteComponent.spec.tsx │ │ │ │ │ └── PortabilityRequestsRouteComponent.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── useLtiUserAssociationJwtQueryParam.spec.tsx │ │ │ │ │ └── useLtiUserAssociationJwtQueryParam.tsx │ │ │ │ └── index.tsx │ │ │ └── Profile │ │ │ │ ├── components │ │ │ │ ├── ProfilePage.spec.tsx │ │ │ │ ├── ProfilePage.tsx │ │ │ │ ├── ProfileRouter.spec.tsx │ │ │ │ ├── ProfileRouter.tsx │ │ │ │ ├── SettingsProfilePage.spec.tsx │ │ │ │ └── SettingsProfilePage.tsx │ │ │ │ ├── features │ │ │ │ └── AccountSettings │ │ │ │ │ ├── api │ │ │ │ │ ├── resetPassword.spec.ts │ │ │ │ │ └── resetPassword.ts │ │ │ │ │ ├── components │ │ │ │ │ ├── AccountSettings.spec.tsx │ │ │ │ │ └── AccountSettings.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── index.ts │ │ ├── index.css │ │ ├── init.ts │ │ ├── main.tsx │ │ ├── public-path.ts │ │ ├── routes │ │ │ ├── index.ts │ │ │ ├── routes.tsx │ │ │ ├── useRoutes.spec.tsx │ │ │ └── useRoutes.tsx │ │ ├── styles │ │ │ └── theme.extend.ts │ │ ├── translations │ │ │ └── .gitkeep │ │ ├── utils │ │ │ ├── browser.ts │ │ │ ├── date.ts │ │ │ ├── dom.spec.tsx │ │ │ └── dom.ts │ │ └── vite-env.d.ts │ │ ├── testSetup.js │ │ ├── tsconfig.json │ │ └── vite.config.mts ├── compile-translations.js ├── package.json ├── packages │ ├── eslint-config-marsha │ │ ├── index.js │ │ └── package.json │ ├── i18n │ │ ├── .gitkeep │ │ ├── es_ES.json │ │ ├── fr_CA.json │ │ └── fr_FR.json │ ├── lib_classroom │ │ ├── .eslintrc.js │ │ ├── babel.config.js │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── src │ │ │ ├── components │ │ │ │ ├── ClassroomAttendance │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ClassroomInfoBar │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ClassroomWidgetProvider │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── widgets │ │ │ │ │ │ ├── DeleteClassroom │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── Description │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── Invite │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── Recordings │ │ │ │ │ │ ├── Recording │ │ │ │ │ │ │ ├── DeleteClassroomRecordingButton │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── RetentionDate │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── Scheduling │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SupportSharing │ │ │ │ │ │ ├── UploadDocuments │ │ │ │ │ │ │ ├── DocumentRow │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── ToolsAndApplications │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroom │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── DashboardClassroomAskUsername │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomError │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomForm │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomInfos │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomInstructor │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomJoin │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomLayout │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomStudent │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardClassroomStudentCounter │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashboardCopyClipboard │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── index.ts │ │ │ ├── data │ │ │ │ ├── index.ts │ │ │ │ ├── queries │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── sideEffects │ │ │ │ │ ├── createClassroomDocument │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ └── createVOD │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ └── useCurrentClassroom │ │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── tests │ │ │ │ ├── factories.ts │ │ │ │ └── index.ts │ │ │ ├── types │ │ │ │ └── ClassroomAppData.ts │ │ │ └── utils │ │ │ │ ├── index.ts │ │ │ │ └── wrapInClassroom.tsx │ │ └── tsconfig.json │ ├── lib_common │ │ ├── .eslintrc.js │ │ ├── babel.config.js │ │ ├── cunningham.ts │ │ ├── package.json │ │ ├── src │ │ │ ├── BreadCrumbsProvider.tsx │ │ │ ├── baseStyles.ts │ │ │ ├── cunningham │ │ │ │ ├── cunningham-custom-tokens.css │ │ │ │ ├── cunningham-style.css │ │ │ │ ├── cunningham-tokens.css │ │ │ │ ├── cunningham-tokens.ts │ │ │ │ └── index.ts │ │ │ ├── exception.ts │ │ │ ├── index.ts │ │ │ ├── lang.spec.ts │ │ │ ├── lang.ts │ │ │ ├── lazyImport.ts │ │ │ ├── theme.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ └── tsconfig.json │ ├── lib_components │ │ ├── .eslintrc.js │ │ ├── __mocks__ │ │ │ ├── styleMock.js │ │ │ └── zustand.js │ │ ├── babel.config.js │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── src │ │ │ ├── common │ │ │ │ ├── Attendance │ │ │ │ │ ├── TabAttendanceWaiting │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Badge │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Box │ │ │ │ │ ├── Grid │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── BreadCrumbs │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Button │ │ │ │ │ ├── ButtonBox │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── ButtonLoader │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── DropButton │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Card │ │ │ │ │ ├── ClosingCard │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── ContentCard │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── WhiteCard │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ConfirmationModal │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── CopyClipboard │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashedBoxCustom │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ErrorComponents │ │ │ │ │ ├── BoundaryScreenError │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── BoxError │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── FullscreenError │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── route.ts │ │ │ │ ├── FoldableItem │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Form │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Headings │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Image │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ItemList │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── LayoutMainArea │ │ │ │ │ └── index.tsx │ │ │ │ ├── List │ │ │ │ │ └── index.tsx │ │ │ │ ├── Loader │ │ │ │ │ ├── BoxLoader.spec.tsx │ │ │ │ │ ├── BoxLoader.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Modal │ │ │ │ │ ├── Modal.spec.tsx │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── ModalButton.spec.tsx │ │ │ │ │ ├── ModalButton.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── NoSelectBox │ │ │ │ │ └── index.ts │ │ │ │ ├── ObjectStatusPicker │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ProgressionBar │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── RetryUploadButton │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── SVGIcons │ │ │ │ │ ├── AppsSVG.tsx │ │ │ │ │ ├── BinSVG.tsx │ │ │ │ │ ├── CameraOffSVG.tsx │ │ │ │ │ ├── CameraOnSVG.tsx │ │ │ │ │ ├── ChannelSVG.tsx │ │ │ │ │ ├── ChatSVG.tsx │ │ │ │ │ ├── ChronometerSVG.tsx │ │ │ │ │ ├── ClassroomSVG.tsx │ │ │ │ │ ├── CopySVG.tsx │ │ │ │ │ ├── DoubleArrowResizerSVG.tsx │ │ │ │ │ ├── DownArrowSVG.tsx │ │ │ │ │ ├── DownloadSVG.tsx │ │ │ │ │ ├── EditionSVG.tsx │ │ │ │ │ ├── ExitCrossSVG.tsx │ │ │ │ │ ├── InfoCircleSVG.tsx │ │ │ │ │ ├── JoinDiscussionSVG.tsx │ │ │ │ │ ├── MicrophoneOffSVG.tsx │ │ │ │ │ ├── MicrophoneOnSVG.tsx │ │ │ │ │ ├── MoreOptionSVG.tsx │ │ │ │ │ ├── NoDownloadSVG.tsx │ │ │ │ │ ├── OpenClosePanelSVG.tsx │ │ │ │ │ ├── PauseSVG.tsx │ │ │ │ │ ├── PictureSVG.tsx │ │ │ │ │ ├── PlaySVG.tsx │ │ │ │ │ ├── PlusSVG.tsx │ │ │ │ │ ├── QuestionMarkSVG.tsx │ │ │ │ │ ├── RecordSVG.tsx │ │ │ │ │ ├── RingingBellSVG.tsx │ │ │ │ │ ├── RoundCrossSVG.tsx │ │ │ │ │ ├── RoundPlusSVG.tsx │ │ │ │ │ ├── SendButtonSVG.tsx │ │ │ │ │ ├── SpeakerSVG.tsx │ │ │ │ │ ├── StopSVG.tsx │ │ │ │ │ ├── SwitchToDocumentSVG.tsx │ │ │ │ │ ├── SwitchToPlayerSVG.tsx │ │ │ │ │ ├── UploadSVG.tsx │ │ │ │ │ ├── ValidSVG.tsx │ │ │ │ │ ├── ViewDocumentSVG.tsx │ │ │ │ │ ├── ViewersSVG.tsx │ │ │ │ │ ├── WaitingJoinDiscussionSVG.tsx │ │ │ │ │ ├── WebinarSVG.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── SchedulingFields │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── Select │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Styled │ │ │ │ │ ├── Link.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Text │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ThumbnailDisplayer │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── videoSizeMapping.ts │ │ │ │ ├── ToggleInput │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Typo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── styleBuilder.ts │ │ │ │ ├── UploadField │ │ │ │ │ ├── DropzoneIcon.tsx │ │ │ │ │ ├── DropzonePlaceholder.tsx │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── UploadForm │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── UploadManager │ │ │ │ │ ├── UploadHandlers.spec.tsx │ │ │ │ │ ├── UploadHandlers.tsx │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── UploadableObjectProgress │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Widgets │ │ │ │ │ ├── RetentionDate │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── WidgetsContainer │ │ │ │ │ ├── InfoModal │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── WizardLayout │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── queries │ │ │ │ │ ├── actionOne.spec.tsx │ │ │ │ │ ├── actionOne.tsx │ │ │ │ │ ├── bulkDelete.spec.tsx │ │ │ │ │ ├── bulkDelete.tsx │ │ │ │ │ ├── createOne.spec.tsx │ │ │ │ │ ├── createOne.tsx │ │ │ │ │ ├── deleteOne.spec.tsx │ │ │ │ │ ├── deleteOne.ts │ │ │ │ │ ├── fetchList.spec.tsx │ │ │ │ │ ├── fetchList.tsx │ │ │ │ │ ├── fetchOne.spec.tsx │ │ │ │ │ ├── fetchOne.tsx │ │ │ │ │ ├── fetchReconnectWrapper.spec.tsx │ │ │ │ │ ├── fetchReconnectWrapper.tsx │ │ │ │ │ ├── fetchResponseHandler.spec.ts │ │ │ │ │ ├── fetchResponseHandler.ts │ │ │ │ │ ├── fetchWrapper.spec.tsx │ │ │ │ │ ├── fetchWrapper.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── metadata.spec.tsx │ │ │ │ │ ├── metadata.tsx │ │ │ │ │ ├── updateOne.spec.tsx │ │ │ │ │ └── updateOne.tsx │ │ │ │ └── withLink │ │ │ │ │ └── index.tsx │ │ │ ├── data │ │ │ │ ├── index.tsx │ │ │ │ ├── routes.ts │ │ │ │ ├── sideEffects │ │ │ │ │ ├── fetchJitsiInfo │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── getResource │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── initiateUpload │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── refreshToken │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── updateResource │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── uploadEnded │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── uploadFile │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ └── index.ts │ │ │ │ └── stores │ │ │ │ │ ├── actions.spec.ts │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── generics.spec.ts │ │ │ │ │ ├── generics.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── useAppConfig │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── useClassroomDocument │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useDepositedFile │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useDocument │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useFlags │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useMarkdownImage │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useP2PVideoConfig │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useSentry │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useSharedLiveMedia │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useSiteConfig │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useThumbnail │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useTimedTextTrack │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ │ └── useVideo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ ├── stores │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── useCurrentResourceContext │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── useCurrentSession │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useCurrentUser │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useInfoWidgetModal │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── useJwt │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── useMaintenance │ │ │ │ │ │ └── index.ts │ │ │ │ └── useResponsive │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ ├── settings.ts │ │ │ ├── tests │ │ │ │ ├── factories.ts │ │ │ │ └── index.ts │ │ │ ├── types │ │ │ │ ├── AWSPresignedPost.ts │ │ │ │ ├── AppData.ts │ │ │ │ ├── ConsumerSite.ts │ │ │ │ ├── Organization.ts │ │ │ │ ├── Participant.ts │ │ │ │ ├── PortabilityRequest.ts │ │ │ │ ├── ResourceContext.ts │ │ │ │ ├── RouteOptions.ts │ │ │ │ ├── User.ts │ │ │ │ ├── XAPI.ts │ │ │ │ ├── XMPP.ts │ │ │ │ ├── api.ts │ │ │ │ ├── apps │ │ │ │ │ ├── classroom │ │ │ │ │ │ └── models.ts │ │ │ │ │ ├── deposit │ │ │ │ │ │ └── models.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── markdown │ │ │ │ │ │ └── models.ts │ │ │ │ ├── file.ts │ │ │ │ ├── index.ts │ │ │ │ ├── jwt.ts │ │ │ │ ├── libs │ │ │ │ │ ├── JitsiMeetExternalAPI │ │ │ │ │ │ └── index.d.ts │ │ │ │ │ ├── converse │ │ │ │ │ │ └── index.d.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── react-icalendar-link │ │ │ │ │ │ └── index.d.ts │ │ │ │ ├── metadata.ts │ │ │ │ ├── models.ts │ │ │ │ ├── serviceWorker.ts │ │ │ │ ├── stores.ts │ │ │ │ ├── tracks.ts │ │ │ │ └── window.ts │ │ │ └── utils │ │ │ │ ├── XAPI │ │ │ │ ├── DocumentXapiStatement.spec.ts │ │ │ │ ├── DocumentXapiStatement.ts │ │ │ │ ├── LiveXapiStatement.spec.ts │ │ │ │ ├── LiveXapiStatement.ts │ │ │ │ ├── VideoXAPIStatement.spec.ts │ │ │ │ ├── VideoXAPIStatement.ts │ │ │ │ ├── index.spec.ts │ │ │ │ ├── index.tsx │ │ │ │ └── sendXAPIStatement.ts │ │ │ │ ├── beforeSendSentry.spec.ts │ │ │ │ ├── beforeSendSentry.ts │ │ │ │ ├── checkToken.spec.ts │ │ │ │ ├── checkToken.ts │ │ │ │ ├── createContext.tsx │ │ │ │ ├── debounce.spec.ts │ │ │ │ ├── debounce.ts │ │ │ │ ├── decodeJwt.spec.ts │ │ │ │ ├── decodeJwt.ts │ │ │ │ ├── errors │ │ │ │ ├── exception.ts │ │ │ │ └── report.tsx │ │ │ │ ├── formatSizeErrorScale.spec.ts │ │ │ │ ├── formatSizeErrorScale.ts │ │ │ │ ├── index.ts │ │ │ │ ├── localstorage.spec.ts │ │ │ │ ├── localstorage.ts │ │ │ │ ├── makeFormData │ │ │ │ └── makeFormData.ts │ │ │ │ ├── retryQuery.spec.ts │ │ │ │ ├── retryQuery.ts │ │ │ │ ├── router.tsx │ │ │ │ ├── serviceWorker │ │ │ │ ├── index.ts │ │ │ │ ├── serviceWorkerForceInstall.ts │ │ │ │ ├── serviceWorkerRefreshToken │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── serviceWorkerRefreshToken.ts │ │ │ │ │ └── useServiceWorkerRefreshToken │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ └── serviceWorkerRegistration.ts │ │ │ │ ├── system.ts │ │ │ │ ├── truncateDecimalDigits.spec.ts │ │ │ │ ├── truncateDecimalDigits.ts │ │ │ │ ├── truncateFilename.spec.ts │ │ │ │ ├── truncateFilename.ts │ │ │ │ ├── useFetchButton.spec.tsx │ │ │ │ ├── useFetchButton.tsx │ │ │ │ ├── useResizeBox.ts │ │ │ │ └── useResizer.tsx │ │ ├── testSetup.js │ │ └── tsconfig.json │ ├── lib_markdown │ │ ├── .eslintrc.js │ │ ├── babel.config.js │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── src │ │ │ ├── components │ │ │ │ ├── CodeMirrorEditor │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── LanguageSelector │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── MarkdownEditor │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── MarkdownImageDropzone │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── MarkdownImageProgressToast │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── MarkdownNotFoundView │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── MarkdownViewer │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── route.ts │ │ │ │ ├── MdxRenderer │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── index.spec.tsx.snap │ │ │ │ │ ├── __tests__ │ │ │ │ │ │ ├── markdownLatex.md │ │ │ │ │ │ ├── markdownLocallyHostedImage.md │ │ │ │ │ │ ├── markdownMermaid.md │ │ │ │ │ │ ├── simpleMarkdown.md │ │ │ │ │ │ └── simpleXss.md │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── remarkLatexPlugin.tsx │ │ │ │ │ ├── remarkLocallyHostedImagePlugin.tsx │ │ │ │ │ ├── remarkMermaidPlugin.tsx │ │ │ │ │ └── types.ts │ │ │ │ ├── MdxRenderingOptionsSelector │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ScreenDispositionSelector │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.ts │ │ │ │ └── useImageUploadManager │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── data │ │ │ │ ├── index.ts │ │ │ │ ├── queries │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── sideEffects │ │ │ │ │ ├── createMarkdownImage │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── pollForMarkdownImage │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ ├── tests │ │ │ │ ├── factories.ts │ │ │ │ └── index.ts │ │ │ ├── types │ │ │ │ ├── MarkdownAppData.ts │ │ │ │ └── index.ts │ │ │ └── utils │ │ │ │ ├── escapeMarkdown.spec.ts │ │ │ │ ├── escapeMarkdown.ts │ │ │ │ ├── index.ts │ │ │ │ ├── translations.spec.tsx │ │ │ │ └── translations.ts │ │ └── tsconfig.json │ ├── lib_tests │ │ ├── .eslintrc.js │ │ ├── babel.config.js │ │ ├── package.json │ │ ├── src │ │ │ ├── Deferred.ts │ │ │ ├── cunningham.tsx │ │ │ ├── index.ts │ │ │ ├── intl.tsx │ │ │ ├── reactDropzone.ts │ │ │ ├── render.tsx │ │ │ ├── router.tsx │ │ │ ├── utils.ts │ │ │ └── wrapper.tsx │ │ └── tsconfig.json │ ├── lib_video │ │ ├── .eslintrc.js │ │ ├── __mocks__ │ │ │ ├── styleMock.js │ │ │ └── zustand.js │ │ ├── babel.config.js │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── src │ │ │ ├── api │ │ │ │ ├── createLiveSession │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── createSharedLiveMedia │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── createThumbnail │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── createTimedTextTrack │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── harvestLive │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── initiateLive │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── navigateSharingDoc │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── pollForLive │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── publishLiveToVod │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── pushAttendance │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── setLiveSessionDisplayName │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── startLive │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── stopLive │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── updateLiveParticipants │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── updateLiveSession │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useCreateVideo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── useDeleteSharedLiveMedia │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteThumbnail │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteTimedTextTrack │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteVideo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteVideos │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── useLiveAttendances │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useLiveSessions │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── usePairingVideo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useStartLiveRecording │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useStartSharingMedia │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useStopLiveRecording │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useStopSharingMedia │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useThumbnailMetadata │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useTimedTextMetadata │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useTranscriptReaderRequest │ │ │ │ │ └── index.ts │ │ │ │ ├── useUpdateSharedLiveMedia │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useUpdateVideo │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── useVideoMetadata │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── useVideos │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── components │ │ │ │ ├── common │ │ │ │ │ ├── DashboardControlPane │ │ │ │ │ │ ├── DashboardLiveTabAttendance │ │ │ │ │ │ │ ├── DashboardLiveTabAttendanceSession │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── DashboardTabStatistics │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── DashboardVideoWrapper │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── PictureInPictureLayer │ │ │ │ │ │ ├── PictureActionLayer │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── PictureInPictureElement │ │ │ │ │ │ │ ├── ResizerCorner │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── PictureInPictureSwitchAction │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── usePIPDragger │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── utils.spec.tsx │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── Player │ │ │ │ │ │ ├── createPlayer.spec.ts │ │ │ │ │ │ ├── createPlayer.ts │ │ │ │ │ │ ├── createVideojsPlayer.spec.tsx │ │ │ │ │ │ ├── createVideojsPlayer.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── videojs │ │ │ │ │ │ │ ├── downloadVideoPlugin │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ │ ├── DownloadVideoButton.ts │ │ │ │ │ │ │ │ └── DownloadVideoQualityItem.ts │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ ├── id3Plugin │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ ├── p2pHlsPlugin │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ ├── qualitySelectorPlugin │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ │ ├── QualitySelectorMenuButton.ts │ │ │ │ │ │ │ │ └── QualitySelectorMenuItem.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── middleware.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ ├── sharedMediaPlugin │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ │ ├── SharedMediaButton.ts │ │ │ │ │ │ │ │ └── SharedMediaItem.ts │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ ├── transcriptPlugin │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ │ ├── TranscriptButton.ts │ │ │ │ │ │ │ │ └── TranscriptItem.ts │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ └── xapiPlugin │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── TeacherVideoInfoBar │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoInfoBar │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoLayout │ │ │ │ │ │ ├── DisplayNameForm │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoPlayer │ │ │ │ │ │ ├── assets │ │ │ │ │ │ │ ├── DownloadIcon.svg │ │ │ │ │ │ │ ├── SharedMediaIcon.svg │ │ │ │ │ │ │ └── TranscriptIcon.svg │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoWebSocketInitializer │ │ │ │ │ │ ├── WebSocketInitializer │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoWidgetProvider │ │ │ │ │ │ ├── LocalizedTimedTextTrackUpload │ │ │ │ │ │ │ ├── LanguageSelect │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── TimedTextTrackItem │ │ │ │ │ │ │ │ ├── DeleteTimedTextTrackItemUploadButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── widgets │ │ │ │ │ │ │ ├── DeleteVideo │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── DescriptionWidget │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── DownloadVideo │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── LicenseManager │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── LiveJoinMode │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── LivePairing │ │ │ │ │ │ │ │ ├── LivePairingButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── RetentionDate │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── SchedulingAndDescription │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── SharedLiveMedia │ │ │ │ │ │ │ │ ├── SharedLiveMediaItem │ │ │ │ │ │ │ │ │ ├── DeleteSharedLiveMediaButton │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── TitleDisplayer │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── ToggleDownload │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── ToggleSharing │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ToolsAndApplications │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── Transcripts │ │ │ │ │ │ │ │ ├── TranscriptReader │ │ │ │ │ │ │ │ │ ├── TranscriptSentence │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UploadClosedCaptions │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UploadSubtitles │ │ │ │ │ │ │ │ ├── ToggleSubtitlesAsTranscript │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UploadTranscripts │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UploadVideo │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── VODCreation │ │ │ │ │ │ │ │ ├── HarvestVOD │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── PublishVOD │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── VisibilityAndInteraction │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── WidgetThumbnail │ │ │ │ │ │ │ │ ├── ThumbnailManager │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ │ ├── utils.spec.tsx │ │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ │ ├── ThumbnailRemoveButton │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── wrappers │ │ │ │ │ │ │ ├── SharedLiveMediaModalWrapper │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── TimedTrackModalWrapper │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── VideoWizard │ │ │ │ │ │ ├── ConfigureLiveButton │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── CreateVOD │ │ │ │ │ │ │ ├── LicenseSelect │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UploadVideoForm │ │ │ │ │ │ │ │ ├── BigDashedBox │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── UploadVideoDropzone │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── UploadVideoPreview │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── UploadVideoProgress │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── UploadVideoRetry │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ ├── live │ │ │ │ │ ├── Student │ │ │ │ │ │ ├── Dashboard.tsx │ │ │ │ │ │ ├── StudentLiveError │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── StudentLiveStarter │ │ │ │ │ │ │ ├── StudentLiveAdvertising │ │ │ │ │ │ │ ├── AdvertisingBox │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveDescription │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveRegistration │ │ │ │ │ │ │ │ ├── RegistrationForm │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveScheduleInfo │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveWaitingRoom │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveWrapper │ │ │ │ │ │ │ ├── StudentLiveControlBar │ │ │ │ │ │ │ │ ├── LeaveJoinDiscussionWrapper │ │ │ │ │ │ │ │ │ ├── StudentJoinDiscussionButton │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── StudentLeaveDiscussionButton │ │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveInfoBar │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── StudentLiveRecordingInfo │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── UpdateCurrentSharedLiveMediaPage │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── Teacher │ │ │ │ │ │ ├── Dashboard.tsx │ │ │ │ │ │ └── Wrapper │ │ │ │ │ │ │ ├── Controls │ │ │ │ │ │ │ ├── TeacherLiveControlBar │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── TeacherLiveLifecycleControls │ │ │ │ │ │ │ │ ├── StartLiveButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── StopLiveButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── TeacherLiveRecordingActions │ │ │ │ │ │ │ │ ├── StartRecording │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── StopRecording │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── MainContent │ │ │ │ │ │ │ ├── TeacherLiveContent │ │ │ │ │ │ │ │ ├── TeacherLiveRawWrapper │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── TeacherPIPControls │ │ │ │ │ │ │ │ ├── NextPageButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── PreviousPageButton │ │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── OnStageRequestToast │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── TeacherLiveTypeSwitch │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── common │ │ │ │ │ │ ├── Chat │ │ │ │ │ │ │ ├── ChatAvatar │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ChatConversationDisplayer │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ChatLayout │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ChatMessage │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ChatMessageGroupItem │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ChatMessageMetadatas │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── ConverseInitializer │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── DashboardLiveJitsi │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── DashboardLiveRaw │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── InputDisplayName │ │ │ │ │ │ │ ├── InputDisplayNameIncorrectAlert │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── InputDisplayNameOverlay │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── JitsiControls │ │ │ │ │ │ │ ├── AudioControl │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── CameraControl │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── LiveControls │ │ │ │ │ │ │ └── AppsWrapper │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── LiveModale │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── LiveVideoPanel │ │ │ │ │ │ │ ├── LiveVideoTabPanel │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SharedMediaExplorer │ │ │ │ │ │ │ ├── ImageViewer │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── TabPanelWebinar │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── ViewersList │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ ├── ViewersListHeader │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── ViewersListItem │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── ViewersListItemContainer │ │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── utils.spec.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ └── index.ts │ │ │ │ └── vod │ │ │ │ │ ├── Student │ │ │ │ │ ├── Dashboard.spec.tsx │ │ │ │ │ ├── Dashboard.tsx │ │ │ │ │ └── VideoFromLiveDashboard │ │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── Teacher │ │ │ │ │ ├── Dashboard.spec.tsx │ │ │ │ │ └── Dashboard.tsx │ │ │ │ │ └── index.ts │ │ │ ├── conf │ │ │ │ ├── chat.ts │ │ │ │ ├── index.ts │ │ │ │ ├── livePanel.ts │ │ │ │ ├── pictureInPicture.ts │ │ │ │ ├── sideEffects.ts │ │ │ │ └── window.d.ts │ │ │ ├── errors │ │ │ │ └── index.ts │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ ├── useAttendance │ │ │ │ │ └── index.ts │ │ │ │ ├── useChatItemsStore │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useCurrentVideo │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteSharedLiveMediaModal │ │ │ │ │ └── index.ts │ │ │ │ ├── useDeleteTimedTextTrackUploadModal │ │ │ │ │ └── index.ts │ │ │ │ ├── useJitsiApi │ │ │ │ │ └── index.ts │ │ │ │ ├── useLiveFeedback │ │ │ │ │ └── index.ts │ │ │ │ ├── useLiveModale │ │ │ │ │ └── index.ts │ │ │ │ ├── useLivePanelState │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useLiveSession │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useLiveStateStarted │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useParticipantWorkflow │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── useParticipantsStore │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── usePictureInPicture │ │ │ │ │ └── index.ts │ │ │ │ ├── useSetDisplayName │ │ │ │ │ └── index.tsx │ │ │ │ ├── useSetVideoState │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── useSharedMediaCurrentPage │ │ │ │ │ └── index.tsx │ │ │ │ ├── useTranscriptTimeSelector │ │ │ │ │ └── index.tsx │ │ │ │ ├── useVideoProgress │ │ │ │ │ └── index.tsx │ │ │ │ └── useVideoStats │ │ │ │ │ ├── index.spec.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ ├── types │ │ │ │ ├── SelectOptions.ts │ │ │ │ ├── VideoPlayer.ts │ │ │ │ ├── index.ts │ │ │ │ ├── libs │ │ │ │ │ ├── altamoon-robust-websocket │ │ │ │ │ │ └── index.d.ts │ │ │ │ │ ├── m3u8-parser │ │ │ │ │ │ └── index.d.ts │ │ │ │ │ ├── video.js │ │ │ │ │ │ └── extend.d.ts │ │ │ │ │ └── vtt.js │ │ │ │ │ │ └── index.d.ts │ │ │ │ ├── metadata.ts │ │ │ │ └── svg.d.ts │ │ │ └── utils │ │ │ │ ├── chat │ │ │ │ ├── chat.spec.ts │ │ │ │ └── chat.ts │ │ │ │ ├── conversejs │ │ │ │ ├── converse-plugins │ │ │ │ │ ├── chatPlugin.ts │ │ │ │ │ ├── logoutPlugin.ts │ │ │ │ │ ├── marshaJoinDiscussionPlugin │ │ │ │ │ │ ├── handler.spec.ts │ │ │ │ │ │ ├── handler.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── nicknameManagementPlugin.ts │ │ │ │ │ └── participantsTrackingPlugin.ts │ │ │ │ ├── converse.spec.ts │ │ │ │ ├── converse.ts │ │ │ │ └── entry.js │ │ │ │ ├── convertVideo.ts │ │ │ │ ├── getOrInitAnonymousId.spec.ts │ │ │ │ ├── getOrInitAnonymousId.ts │ │ │ │ ├── index.ts │ │ │ │ ├── isMSESupported.ts │ │ │ │ ├── liveModale.tsx │ │ │ │ ├── localstorage.spec.ts │ │ │ │ ├── localstorage.ts │ │ │ │ ├── onStageRequestMessage.ts │ │ │ │ ├── onStageRequestMessages.spec.ts │ │ │ │ ├── resumeLive.spec.ts │ │ │ │ ├── resumeLive.ts │ │ │ │ ├── websocket.spec.ts │ │ │ │ ├── websocket.ts │ │ │ │ ├── window.ts │ │ │ │ └── wrapInVideo.tsx │ │ └── tsconfig.json │ └── marsha-config │ │ ├── .eslintrc.js │ │ ├── config.json │ │ ├── helper.js │ │ ├── index.js │ │ ├── jest │ │ ├── mocks │ │ │ └── assetMock.js │ │ ├── resolver.js │ │ ├── testSetup.js │ │ └── transform │ │ │ └── svgTransform.js │ │ ├── package.json │ │ └── tsconfig │ │ ├── tsc-apps.json │ │ ├── tsc-base.json │ │ └── tsc-packages.json └── yarn.lock ├── mail ├── bin │ ├── html-to-plain-text │ └── mjml-to-html ├── mjml │ ├── partial │ │ ├── footer.mjml │ │ ├── header.mjml │ │ ├── hello.mjml │ │ ├── video_access_url.mjml │ │ ├── video_description.mjml │ │ ├── video_starting_at.mjml │ │ └── video_title.mjml │ ├── register.mjml │ ├── reminder.mjml │ ├── reminder_date_updated.mjml │ └── vod_conversion.mjml ├── package.json └── yarn.lock ├── tray ├── templates │ ├── services │ │ ├── app │ │ │ ├── _deploy_base.yml.j2 │ │ │ ├── _env.yml.j2 │ │ │ ├── configs │ │ │ │ ├── __init__.py.j2 │ │ │ │ └── settings.py.j2 │ │ │ ├── cronjob_pipeline.yml.j2 │ │ │ ├── deploy_app.yml.j2 │ │ │ ├── deploy_celery.yml.j2 │ │ │ ├── deploy_ws.yml.j2 │ │ │ ├── deploy_xapi.yml.j2 │ │ │ ├── job_db_migrate.yml.j2 │ │ │ ├── secret.yml.j2 │ │ │ ├── svc_app.yml.j2 │ │ │ ├── svc_ws.yml.j2 │ │ │ └── svc_xapi.yml.j2 │ │ ├── nginx │ │ │ ├── configs │ │ │ │ ├── healthcheck.conf.j2 │ │ │ │ └── marsha.conf.j2 │ │ │ ├── deploy.yml.j2 │ │ │ ├── ingress.yml.j2 │ │ │ ├── secret.yml.j2 │ │ │ ├── static-svc.yml.j2 │ │ │ └── svc.yml.j2 │ │ ├── postgresql │ │ │ ├── deploy.yml.j2 │ │ │ ├── ep.yml.j2 │ │ │ ├── secret.yml.j2 │ │ │ └── svc.yml.j2 │ │ ├── webtorrent-nginx │ │ │ ├── configs │ │ │ │ ├── healthcheck.conf.j2 │ │ │ │ └── webtorrent.conf.j2 │ │ │ ├── deploy.yml.j2 │ │ │ ├── ingress.yml.j2 │ │ │ ├── static-svc.yml.j2 │ │ │ └── svc.yml.j2 │ │ └── webtorrent │ │ │ ├── deploy.yml.j2 │ │ │ ├── secret.yml.j2 │ │ │ └── svc.yml.j2 │ └── volumes │ │ ├── media.yml.j2 │ │ └── static.yml.j2 ├── tray.yml └── vars │ ├── all │ └── main.yml │ ├── settings.yml │ └── vault │ └── main.yml.j2 └── webtorrent ├── .eslintrc.cjs ├── jest.config.cjs ├── nodemon.json ├── package.json ├── src ├── app.ts └── verifyClient.ts ├── test └── verifyClient.test.ts ├── tsconfig-lint.json ├── tsconfig.json └── yarn.lock /.circleci/check-every-commit.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.circleci/check-every-commit.sh -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.dockerignore -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.github/ISSUE_TEMPLATE.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/Bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.github/ISSUE_TEMPLATE/Bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/Feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.github/ISSUE_TEMPLATE/Feature_request.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/Support_question.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.github/ISSUE_TEMPLATE/Support_question.md -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitlint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/.gitlint -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTORS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/CONTRIBUTORS.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/README.md -------------------------------------------------------------------------------- /UPGRADE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/UPGRADE.md -------------------------------------------------------------------------------- /arnold.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/arnold.yml -------------------------------------------------------------------------------- /bin/docker-compose: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/docker-compose -------------------------------------------------------------------------------- /bin/e2e: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/e2e -------------------------------------------------------------------------------- /bin/generate_backend_lti_app: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/generate_backend_lti_app -------------------------------------------------------------------------------- /bin/generate_frontend_lti_app: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/generate_frontend_lti_app -------------------------------------------------------------------------------- /bin/get_passports: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/get_passports -------------------------------------------------------------------------------- /bin/get_tunnel_url: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/get_tunnel_url -------------------------------------------------------------------------------- /bin/playwright: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/playwright -------------------------------------------------------------------------------- /bin/pytest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/bin/pytest -------------------------------------------------------------------------------- /crowdin/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/crowdin/config.yml -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docker/files/docker-entrypoint-initdb.d/init_user_db.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/files/docker-entrypoint-initdb.d/init_user_db.sh -------------------------------------------------------------------------------- /docker/files/etc/nginx/conf.d/default.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/files/etc/nginx/conf.d/default.conf -------------------------------------------------------------------------------- /docker/files/etc/prosody/certs/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docker/files/etc/prosody/prosody.cfg.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/files/etc/prosody/prosody.cfg.lua -------------------------------------------------------------------------------- /docker/files/usr/local/bin/entrypoint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/files/usr/local/bin/entrypoint -------------------------------------------------------------------------------- /docker/files/usr/local/etc/gunicorn/marsha.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/files/usr/local/etc/gunicorn/marsha.py -------------------------------------------------------------------------------- /docker/images/dev/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/images/dev/Dockerfile -------------------------------------------------------------------------------- /docker/images/e2e/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/images/e2e/Dockerfile -------------------------------------------------------------------------------- /docker/images/webtorrent/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/images/webtorrent/Dockerfile -------------------------------------------------------------------------------- /docker/tests/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/tests/run.sh -------------------------------------------------------------------------------- /docker/tests/statics.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docker/tests/statics.sh -------------------------------------------------------------------------------- /docs/adr/0001-actors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/adr/0001-actors.md -------------------------------------------------------------------------------- /docs/adr/0002-videos-languages.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/adr/0002-videos-languages.md -------------------------------------------------------------------------------- /docs/adr/0003-content-organization-and-accesses.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/adr/0003-content-organization-and-accesses.md -------------------------------------------------------------------------------- /docs/adr/0004-soft-deletion.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/adr/0004-soft-deletion.md -------------------------------------------------------------------------------- /docs/adr/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/adr/README.md -------------------------------------------------------------------------------- /docs/cache.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/cache.md -------------------------------------------------------------------------------- /docs/dev.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/dev.md -------------------------------------------------------------------------------- /docs/env.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/env.md -------------------------------------------------------------------------------- /docs/i18n.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/i18n.md -------------------------------------------------------------------------------- /docs/images/image_snapshot_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/image_snapshot_1.png -------------------------------------------------------------------------------- /docs/images/image_snapshot_diff_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/image_snapshot_diff_1.png -------------------------------------------------------------------------------- /docs/images/marsha_32x32_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/marsha_32x32_black.png -------------------------------------------------------------------------------- /docs/images/marsha_32x32_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/marsha_32x32_blue.png -------------------------------------------------------------------------------- /docs/images/marsha_32x32_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/marsha_32x32_white.png -------------------------------------------------------------------------------- /docs/images/marsha_32x32_yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/marsha_32x32_yellow.png -------------------------------------------------------------------------------- /docs/images/moodle_iframe_resizer_admin_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_iframe_resizer_admin_1.png -------------------------------------------------------------------------------- /docs/images/moodle_iframe_resizer_admin_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_iframe_resizer_admin_2.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_config_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_config_1.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_config_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_config_2.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_config_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_config_3.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_config_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_config_4.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_1.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_2.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_3.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_4.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_5.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_admin_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_admin_6.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_1.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_10.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_11.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_12.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_13.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_2.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_3.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_4.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_5.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_6.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_7.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_8.png -------------------------------------------------------------------------------- /docs/images/moodle_lti_select_teacher_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/moodle_lti_select_teacher_9.png -------------------------------------------------------------------------------- /docs/images/p2p-assisted-media-delivery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/p2p-assisted-media-delivery.png -------------------------------------------------------------------------------- /docs/images/p2p-media-loader-network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/images/p2p-media-loader-network.png -------------------------------------------------------------------------------- /docs/live_sessions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/live_sessions.md -------------------------------------------------------------------------------- /docs/lti.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/lti.md -------------------------------------------------------------------------------- /docs/moodle.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/moodle.md -------------------------------------------------------------------------------- /docs/p2p-video-player.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/p2p-video-player.md -------------------------------------------------------------------------------- /docs/peertube-runner.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/peertube-runner.md -------------------------------------------------------------------------------- /docs/permissions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/permissions.md -------------------------------------------------------------------------------- /docs/renater_federation_saml.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/renater_federation_saml.md -------------------------------------------------------------------------------- /docs/sprint-reviews/2022-09-16-sprint-review.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/sprint-reviews/2022-09-16-sprint-review.md -------------------------------------------------------------------------------- /docs/sprint-reviews/2022-09-30-sprint-review.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/sprint-reviews/2022-09-30-sprint-review.md -------------------------------------------------------------------------------- /docs/sprint-reviews/2022-11-07-sprint-review.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/sprint-reviews/2022-11-07-sprint-review.md -------------------------------------------------------------------------------- /docs/sprint-reviews/2022-12-01-sprint-review.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/sprint-reviews/2022-12-01-sprint-review.md -------------------------------------------------------------------------------- /docs/sprint-reviews/2023-01-27-sprint-review#6.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/docs/sprint-reviews/2023-01-27-sprint-review#6.md -------------------------------------------------------------------------------- /env.d/db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/db -------------------------------------------------------------------------------- /env.d/development.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/development.dist -------------------------------------------------------------------------------- /env.d/lambda.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/lambda.dist -------------------------------------------------------------------------------- /env.d/localtunnel.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/localtunnel.dist -------------------------------------------------------------------------------- /env.d/peertube_runner: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/peertube_runner -------------------------------------------------------------------------------- /env.d/test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/env.d/test -------------------------------------------------------------------------------- /lib/gitlint/gitlint_emoji.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/lib/gitlint/gitlint_emoji.py -------------------------------------------------------------------------------- /readthedocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/readthedocs.yml -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/renovate.json -------------------------------------------------------------------------------- /src/.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/.prettierignore -------------------------------------------------------------------------------- /src/.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/.prettierrc.js -------------------------------------------------------------------------------- /src/aws/.terraform.lock.hcl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/.terraform.lock.hcl -------------------------------------------------------------------------------- /src/aws/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/Makefile -------------------------------------------------------------------------------- /src/aws/bin/terraform: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/bin/terraform -------------------------------------------------------------------------------- /src/aws/env.d/development.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/env.d/development.dist -------------------------------------------------------------------------------- /src/aws/output.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/output.tf -------------------------------------------------------------------------------- /src/aws/provider.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/provider.tf -------------------------------------------------------------------------------- /src/aws/s3_scaleway.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/s3_scaleway.tf -------------------------------------------------------------------------------- /src/aws/state.tf.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/state.tf.dist -------------------------------------------------------------------------------- /src/aws/variables.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/aws/variables.tf -------------------------------------------------------------------------------- /src/backend/.bandit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/.bandit -------------------------------------------------------------------------------- /src/backend/locale/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/locale/es_ES/LC_MESSAGES/django.po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/locale/es_ES/LC_MESSAGES/django.po -------------------------------------------------------------------------------- /src/backend/locale/fr_CA/LC_MESSAGES/django.po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/locale/fr_CA/LC_MESSAGES/django.po -------------------------------------------------------------------------------- /src/backend/locale/fr_FR/LC_MESSAGES/django.po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/locale/fr_FR/LC_MESSAGES/django.po -------------------------------------------------------------------------------- /src/backend/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/manage.py -------------------------------------------------------------------------------- /src/backend/marsha/.cookiecutter/cookiecutter.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/.cookiecutter/cookiecutter.json -------------------------------------------------------------------------------- /src/backend/marsha/.cookiecutter/hooks/post_gen_project.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/.cookiecutter/hooks/post_gen_project.sh -------------------------------------------------------------------------------- /src/backend/marsha/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/account/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/api.py -------------------------------------------------------------------------------- /src/backend/marsha/account/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/account/backends/saml_fer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/backends/saml_fer.py -------------------------------------------------------------------------------- /src/backend/marsha/account/checks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/checks.py -------------------------------------------------------------------------------- /src/backend/marsha/account/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/account/management/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/middleware.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/middleware.py -------------------------------------------------------------------------------- /src/backend/marsha/account/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/migrations/0001_initial.py -------------------------------------------------------------------------------- /src/backend/marsha/account/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/models.py -------------------------------------------------------------------------------- /src/backend/marsha/account/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/serializers.py -------------------------------------------------------------------------------- /src/backend/marsha/account/social_pipeline/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/social_pipeline/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/account/social_pipeline/organization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/social_pipeline/organization.py -------------------------------------------------------------------------------- /src/backend/marsha/account/social_pipeline/playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/social_pipeline/playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/account/social_pipeline/social_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/social_pipeline/social_auth.py -------------------------------------------------------------------------------- /src/backend/marsha/account/static/css/account/account.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/static/css/account/account.css -------------------------------------------------------------------------------- /src/backend/marsha/account/templates/account/base.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/templates/account/base.html -------------------------------------------------------------------------------- /src/backend/marsha/account/templates/account/login.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/templates/account/login.html -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/api/test_logout.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/api/test_logout.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/api/test_password_reset.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/api/test_password_reset.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/api/test_token_refresh.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/api/test_token_refresh.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/backends/test_saml_fer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/backends/test_saml_fer.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/dedupe_accounts/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/test_checks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/test_checks.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/test_middleware.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/test_middleware.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/test_models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/test_models.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/test_views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/test_views.py -------------------------------------------------------------------------------- /src/backend/marsha/account/tests/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/tests/utils.py -------------------------------------------------------------------------------- /src/backend/marsha/account/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/account/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/account/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/account/views.py -------------------------------------------------------------------------------- /src/backend/marsha/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/asgi.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``bbb`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/admin.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/api.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/defaults.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/defaults.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/forms.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha BBB management commands module.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/metadata.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/migrations/0001_initial.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/migrations/0009_classroomdocument.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/migrations/0009_classroomdocument.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/migrations/0023_classroom_infos.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/migrations/0023_classroom_infos.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/models.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/permissions.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/serializers.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/signals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/signals.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/test_create.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/api/classroom/test_create.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/test_delete.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/api/classroom/test_delete.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/api/classroom/test_list.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/test_retrieve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/api/classroom/test_retrieve.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroom/test_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/api/classroom/test_update.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/api/classroomdocument/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/bbb_utils/test_create.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/bbb_utils/test_create.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/bbb_utils/test_end.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/bbb_utils/test_end.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/bbb_utils/test_end_session.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/bbb_utils/test_end_session.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/bbb_utils/test_join.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/bbb_utils/test_join.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/test_models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/test_models.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/test_utils_tokens.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/test_utils_tokens.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/test_views_lti.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/test_views_lti.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/test_views_lti_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/test_views_lti_config.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/tests/test_views_lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/tests/test_views_lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha bbb app utils modules.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/bbb/utils/bbb_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/utils/bbb_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/utils/tokens.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/utils/tokens.py -------------------------------------------------------------------------------- /src/backend/marsha/bbb/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/bbb/views.py -------------------------------------------------------------------------------- /src/backend/marsha/celery_app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/celery_app.py -------------------------------------------------------------------------------- /src/backend/marsha/core/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``core`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/admin.py -------------------------------------------------------------------------------- /src/backend/marsha/core/admin_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/admin_site.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/account.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/account.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/file.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/live_session.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/live_session.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/lti_user_association.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/lti_user_association.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/pairing_challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/pairing_challenge.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/playlist_access.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/playlist_access.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/portability_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/portability_request.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/schema.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/shared_live_media.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/shared_live_media.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/thumbnail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/thumbnail.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/timed_text_track.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/timed_text_track.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/api/xapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/api/xapi.py -------------------------------------------------------------------------------- /src/backend/marsha/core/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/core/cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/cache.py -------------------------------------------------------------------------------- /src/backend/marsha/core/defaults.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/defaults.py -------------------------------------------------------------------------------- /src/backend/marsha/core/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/core/fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/fields.py -------------------------------------------------------------------------------- /src/backend/marsha/core/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/forms.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti/common.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti/user_association.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti/user_association.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti/utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti/validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti/validator.py -------------------------------------------------------------------------------- /src/backend/marsha/core/lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/core/management/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha management commands module.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/metadata.py -------------------------------------------------------------------------------- /src/backend/marsha/core/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/migrations/0001_initial.py -------------------------------------------------------------------------------- /src/backend/marsha/core/migrations/0053_video_tags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/migrations/0053_video_tags.py -------------------------------------------------------------------------------- /src/backend/marsha/core/migrations/0063_siteconfig.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/migrations/0063_siteconfig.py -------------------------------------------------------------------------------- /src/backend/marsha/core/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/models/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/account.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/account.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/file.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/portability_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/portability_request.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/site.py -------------------------------------------------------------------------------- /src/backend/marsha/core/models/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/models/video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/permissions/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/permissions/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/permissions/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/permissions/base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/permissions/organization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/permissions/organization.py -------------------------------------------------------------------------------- /src/backend/marsha/core/permissions/playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/permissions/playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/core/permissions/token.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/permissions/token.py -------------------------------------------------------------------------------- /src/backend/marsha/core/routers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/routers.py -------------------------------------------------------------------------------- /src/backend/marsha/core/sentry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/sentry.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/account.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/account.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/file.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/live_session.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/live_session.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/pairing_challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/pairing_challenge.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/playlist_access.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/playlist_access.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/portability_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/portability_request.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/shared_live_media.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/shared_live_media.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/thumbnail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/thumbnail.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/timed_text_track.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/timed_text_track.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/serializers/xapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/serializers/xapi.py -------------------------------------------------------------------------------- /src/backend/marsha/core/services/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/services/live_session.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/services/live_session.py -------------------------------------------------------------------------------- /src/backend/marsha/core/services/video_participants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/services/video_participants.py -------------------------------------------------------------------------------- /src/backend/marsha/core/services/video_recording.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/services/video_recording.py -------------------------------------------------------------------------------- /src/backend/marsha/core/signals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/signals.py -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha module to manage the JWTs""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/authentication.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/simple_jwt/authentication.py -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/simple_jwt/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/simple_jwt/permissions.py -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/tokens.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/simple_jwt/tokens.py -------------------------------------------------------------------------------- /src/backend/marsha/core/simple_jwt/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/simple_jwt/utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/static.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/static.py -------------------------------------------------------------------------------- /src/backend/marsha/core/stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/stats.py -------------------------------------------------------------------------------- /src/backend/marsha/core/storage/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/storage/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/storage/dummy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/storage/dummy.py -------------------------------------------------------------------------------- /src/backend/marsha/core/storage/filesystem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/storage/filesystem.py -------------------------------------------------------------------------------- /src/backend/marsha/core/storage/s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/storage/s3.py -------------------------------------------------------------------------------- /src/backend/marsha/core/storage/storage_class.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/storage/storage_class.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha tasks module.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/recording.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/recording.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/s3.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/shared_live_media.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/shared_live_media.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/thumbnail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/thumbnail.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/timed_text_track.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/timed_text_track.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tasks/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tasks/video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/templates/core/form_autosubmit.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/templates/core/form_autosubmit.html -------------------------------------------------------------------------------- /src/backend/marsha/core/templates/core/lti_config.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/templates/core/lti_config.xml -------------------------------------------------------------------------------- /src/backend/marsha/core/templates/core/resource.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/templates/core/resource.html -------------------------------------------------------------------------------- /src/backend/marsha/core/templates/core/site.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/templates/core/site.html -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/live_sessions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/live_sessions/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/live_sessions/base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/lti_user_associations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/organizations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlist_accesses/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/test_claim.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/playlists/test_claim.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/test_create.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/playlists/test_create.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/test_delete.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/playlists/test_delete.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/playlists/test_list.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/playlists/test_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/playlists/test_update.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/portability_requests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/shared_live_media/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/thumbnails/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/thumbnails/test_create.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/thumbnails/test_create.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/thumbnails/test_delete.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/thumbnails/test_delete.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/timed_text_tracks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/users/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/users/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/users/test_list.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/users/test_retrieve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/users/test_retrieve.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/users/test_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/users/test_update.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/users/test_whoami.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/users/test_whoami.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_create.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_create.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_destroy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_destroy.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_jitsi_info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_jitsi_info.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_list.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_live_to_vod.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_live_to_vod.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_metadata.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_retrieve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_retrieve.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_start_live.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_start_live.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_stats.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_stop_live.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_stop_live.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/video/test_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/api/video/test_update.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/xapi/document/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/api/xapi/video/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/lti/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/lti/test_common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/lti/test_common.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/lti/test_user_association.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/lti/test_user_association.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/lti/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/lti/test_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/lti/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/lti/tests.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/management_commands/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_consumer_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_consumer_site.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_deletion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_deletion.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_live_pairing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_live_pairing.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_livesession.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_livesession.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_passport.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_passport.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_playlist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_playlist.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_site.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/models/test_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/models/test_video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/serializers/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/serializers/test_thumbnail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/serializers/test_thumbnail.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/serializers/test_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/serializers/test_video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/services/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/simple_jwt/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/simple_jwt/test_factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/simple_jwt/test_factories.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/simple_jwt/test_tokens.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/simple_jwt/test_tokens.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/tasks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/tasks/test_recording.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/tasks/test_recording.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/tasks/test_s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/tasks/test_s3.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/tasks/test_thumbnail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/tasks/test_thumbnail.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/tasks/test_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/tasks/test_video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_admin.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_admin_passport.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_admin_passport.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_api_challenge_token.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_api_challenge_token.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_api_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_api_document.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_api_update_state.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_api_update_state.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_api_xapi_statement.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_api_xapi_statement.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_cache.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_files/js/.gitignore: -------------------------------------------------------------------------------- 1 | !build 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_files/js/build/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_files/js/build/index.js.map: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_files/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_files/js/index.js -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_router.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_router.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_sentry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_sentry.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_settings.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_statics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_statics.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_stats.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_urls.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/test_xapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/test_xapi.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/testing_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/testing_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_api_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_api_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_react_locales.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_react_locales.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_s3_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_s3_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_send_emails.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_send_emails.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_time_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_time_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_transcode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_transcode.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_transcript.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_transcript.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/utils/test_xmpp_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/utils/test_xmpp_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_base.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_cache.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_config.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_document.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_respond.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_respond.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_lti_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_lti_video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_public_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_public_document.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_public_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_public_video.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/views/test_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/tests/views/test_site.py -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/xapi/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/xapi/document/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/tests/xapi/video/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/urls/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha module managing urls.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/core/urls/converters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/urls/converters.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/api_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/api_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/convert_lambda_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/convert_lambda_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/jitsi_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/jitsi_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/lti_select_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/lti_select_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/medialive_utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/medialive_utils/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/portability_request_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/portability_request_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/react_locales_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/react_locales_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/s3_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/s3_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/send_emails.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/send_emails.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/throttle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/throttle.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/time_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/time_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/transcode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/transcode.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/transcript_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/transcript_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/utils/xmpp_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/utils/xmpp_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/core/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/views.py -------------------------------------------------------------------------------- /src/backend/marsha/core/xapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/core/xapi.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``deposit`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/deposit/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/admin.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/api.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/defaults.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/defaults.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/forms.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/metadata.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/migrations/0001_initial.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/deposit/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/models.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/permissions.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/serializers.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/api/depositedfiles/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/api/filedepositories/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/api/test_options.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/tests/api/test_options.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/test_views_lti.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/tests/test_views_lti.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/tests/test_views_lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/tests/test_views_lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/deposit/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/deposit/views.py -------------------------------------------------------------------------------- /src/backend/marsha/development/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/development/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/development/api.py -------------------------------------------------------------------------------- /src/backend/marsha/development/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/development/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/development/management/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/development/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/development/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/development/tests/test_api_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/development/tests/test_api_schema.py -------------------------------------------------------------------------------- /src/backend/marsha/development/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/development/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/development/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/development/views.py -------------------------------------------------------------------------------- /src/backend/marsha/e2e/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/conftest.py -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_1080p.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_1080p.jpg -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_1080p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_1080p.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_480p.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_480p.jpg -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_480p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_480p.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_720p.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_720p.jpg -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/big_buck_bunny_720p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/big_buck_bunny_720p.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634.mpd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634.mpd -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_1080.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_1080.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_1080init.cmfv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_1080init.cmfv -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_128k.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_128k.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_128kinit.cmfa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_128kinit.cmfa -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_144.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_144.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_144init.cmfv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_144init.cmfv -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_240.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_240.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_240init.cmfv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_240init.cmfv -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_480.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_480.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_480init.cmfv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_480init.cmfv -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_64k.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_64k.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_64kinit.cmfa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_64kinit.cmfa -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_720.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_720.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_720init.cmfv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_720init.cmfv -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_96k.m3u8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_96k.m3u8 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/cmaf/1622122634_96kinit.cmfa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/cmaf/1622122634_96kinit.cmfa -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/mp4/1622122634_1080.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/mp4/1622122634_1080.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/mp4/1622122634_144.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/mp4/1622122634_144.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/mp4/1622122634_240.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/mp4/1622122634_240.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/mp4/1622122634_480.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/mp4/1622122634_480.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/media/mp4/1622122634_720.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/media/mp4/1622122634_720.mp4 -------------------------------------------------------------------------------- /src/backend/marsha/e2e/test_lti.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/test_lti.py -------------------------------------------------------------------------------- /src/backend/marsha/e2e/test_lti_bbb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/test_lti_bbb.py -------------------------------------------------------------------------------- /src/backend/marsha/e2e/test_lti_markdown.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/test_lti_markdown.py -------------------------------------------------------------------------------- /src/backend/marsha/e2e/test_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/e2e/test_site.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``markdown`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/admin.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/api.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/defaults.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/defaults.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/forms.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/migrations/0001_initial.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/models.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/permissions.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/serializers.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/api/markdown_documents/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/api/markdown_images/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/tests/test_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/test_views_lti.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/tests/test_views_lti.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/tests/test_views_lti_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/tests/test_views_lti_select.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Marsha mardown app utils modules.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/markdown/utils/converter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/utils/converter.py -------------------------------------------------------------------------------- /src/backend/marsha/markdown/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/markdown/views.py -------------------------------------------------------------------------------- /src/backend/marsha/page/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``page`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/page/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/admin.py -------------------------------------------------------------------------------- /src/backend/marsha/page/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/api.py -------------------------------------------------------------------------------- /src/backend/marsha/page/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/page/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/factories.py -------------------------------------------------------------------------------- /src/backend/marsha/page/migrations/0002_page_site.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/migrations/0002_page_site.py -------------------------------------------------------------------------------- /src/backend/marsha/page/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/page/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/models.py -------------------------------------------------------------------------------- /src/backend/marsha/page/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/serializers.py -------------------------------------------------------------------------------- /src/backend/marsha/page/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/tests/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/page/tests/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/page/tests/api/page/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/page/tests/api/page/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/tests/api/page/test_list.py -------------------------------------------------------------------------------- /src/backend/marsha/page/tests/api/page/test_retrieve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/tests/api/page/test_retrieve.py -------------------------------------------------------------------------------- /src/backend/marsha/page/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/page/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/settings.py -------------------------------------------------------------------------------- /src/backend/marsha/static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/icomoon/icomoon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/icomoon/icomoon.svg -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/icomoon/icomoon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/icomoon/icomoon.woff -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/roboto/roboto-bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/roboto/roboto-bold.ttf -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/roboto/roboto-light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/roboto/roboto-light.ttf -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/roboto/roboto-medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/roboto/roboto-medium.ttf -------------------------------------------------------------------------------- /src/backend/marsha/static/fonts/roboto/roboto-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/fonts/roboto/roboto-regular.ttf -------------------------------------------------------------------------------- /src/backend/marsha/static/img/bbbBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/bbbBackground.png -------------------------------------------------------------------------------- /src/backend/marsha/static/img/bbbLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/bbbLogo.png -------------------------------------------------------------------------------- /src/backend/marsha/static/img/errorTelescope.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/errorTelescope.png -------------------------------------------------------------------------------- /src/backend/marsha/static/img/liveBackground.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/liveBackground.jpg -------------------------------------------------------------------------------- /src/backend/marsha/static/img/liveErrorBackground.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/liveErrorBackground.jpg -------------------------------------------------------------------------------- /src/backend/marsha/static/img/marshaWhiteLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/marshaWhiteLogo.png -------------------------------------------------------------------------------- /src/backend/marsha/static/img/videoWizardBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/img/videoWizardBackground.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_32x32_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_32x32_black.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_32x32_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_32x32_blue.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_32x32_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_32x32_white.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_32x32_yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_32x32_yellow.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_classroom_32x32_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_classroom_32x32_blue.png -------------------------------------------------------------------------------- /src/backend/marsha/static/marsha_video_32x32_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/static/marsha_video_32x32_blue.png -------------------------------------------------------------------------------- /src/backend/marsha/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/urls.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/__init__.py: -------------------------------------------------------------------------------- 1 | """The ``websocket`` app of the Marsha project.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/websocket/application.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/application.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/apps.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/consumers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/consumers/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/consumers/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/consumers/video.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/defaults.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/defaults.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/middlewares/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/middlewares/__init__.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/middlewares/jwt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/middlewares/jwt.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/routing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/routing.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/backend/marsha/websocket/tests/test_consumers_video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/tests/test_consumers_video.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/tests/test_middleware_jwt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/tests/test_middleware_jwt.py -------------------------------------------------------------------------------- /src/backend/marsha/websocket/utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Module for marsha.websocket.utils.""" 2 | -------------------------------------------------------------------------------- /src/backend/marsha/websocket/utils/channel_layers_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/websocket/utils/channel_layers_utils.py -------------------------------------------------------------------------------- /src/backend/marsha/workers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/marsha/workers.py -------------------------------------------------------------------------------- /src/backend/pylintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/pylintrc -------------------------------------------------------------------------------- /src/backend/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/setup.cfg -------------------------------------------------------------------------------- /src/backend/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/backend/setup.py -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/__mocks__/styleMock.js: -------------------------------------------------------------------------------- 1 | module.exports = {}; 2 | -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/__mocks__/zustand.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/__mocks__/zustand.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/apps/classroom/settings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/apps/classroom/settings.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/apps/deposit/types/metadata.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/apps/deposit/types/metadata.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/apps/markdown/styles/common.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/apps/markdown/styles/common.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/apps/markdown/styles/main.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/apps/markdown/styles/main.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/babel.config.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/App/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/App/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/ClaimLink/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/ClaimLink/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/Dashboard/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/Dashboard/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/LTINav/index.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/LTINav/index.spec.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/LTINav/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/LTINav/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/LTIRoutes/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/LTIRoutes/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/VideoWizard/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/VideoWizard/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/Warnings/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/Warnings/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/components/routes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/components/routes.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/data/appConfigs.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/data/appConfigs.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/data/queries/index.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/data/queries/index.spec.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/data/queries/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/data/queries/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/i18n/es_ES.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/i18n/es_ES.json -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/i18n/fr_CA.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/i18n/fr_CA.json -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/i18n/fr_FR.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/i18n/fr_FR.json -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/index.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/jest.config.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/package.json -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/public-path.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/public-path.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/react-intl-transformer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/react-intl-transformer.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/scss/_main.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/scss/_main.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/scss/generic/accessibility.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/scss/generic/accessibility.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/scss/vendor/_icomoon.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/scss/vendor/_icomoon.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/scss/vendor/_roboto.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/scss/vendor/_roboto.scss -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/translations/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/types/ReactExtensions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/types/ReactExtensions.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/types/Schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/types/Schema.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/utils/lang.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/utils/lang.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/utils/tests/intl.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/utils/tests/intl.tsx -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/utils/tests/resolver.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/utils/tests/resolver.js -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/utils/theme/baseStyles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/utils/theme/baseStyles.ts -------------------------------------------------------------------------------- /src/frontend/apps/lti_site/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/lti_site/webpack.config.js -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/.env.development: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/.env.development -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/.env.production: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/.env.production -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/.eslintrc.cjs -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/README.md -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/babel.config.js -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/i18n/es_ES.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/i18n/es_ES.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/i18n/fr_CA.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/i18n/fr_CA.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/i18n/fr_FR.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/i18n/fr_FR.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/index.html -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/jest.config.js -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/package.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/favicon.ico -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/logo192.png -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/logo512.png -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/logos/bbb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/logos/bbb.png -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/logos/europe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/logos/europe.png -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/logos/fun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/logos/fun.png -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/manifest.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/public/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/public/robots.txt -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/conf/global.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/conf/global.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/features/App/index.ts: -------------------------------------------------------------------------------- 1 | export { default as App } from './App'; 2 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/features/ClaimResource/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './components/ClaimResource'; 2 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/features/Playlist/features/UpdatePlaylist/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components/UpdatePlaylistPage'; 2 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/features/Profile/features/AccountSettings/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components/AccountSettings'; 2 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/index.css -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/init.ts: -------------------------------------------------------------------------------- 1 | window.use_jwt_persistence = true; 2 | 3 | export {}; 4 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/main.tsx -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/public-path.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/public-path.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/routes/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/routes/index.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/routes/routes.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/routes/routes.tsx -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/translations/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/utils/browser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/utils/browser.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/utils/date.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/utils/date.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/utils/dom.spec.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/utils/dom.spec.tsx -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/utils/dom.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/utils/dom.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/src/vite-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/src/vite-env.d.ts -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/testSetup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/testSetup.js -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/apps/standalone_site/vite.config.mts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/apps/standalone_site/vite.config.mts -------------------------------------------------------------------------------- /src/frontend/compile-translations.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/compile-translations.js -------------------------------------------------------------------------------- /src/frontend/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/package.json -------------------------------------------------------------------------------- /src/frontend/packages/eslint-config-marsha/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/eslint-config-marsha/index.js -------------------------------------------------------------------------------- /src/frontend/packages/eslint-config-marsha/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/eslint-config-marsha/package.json -------------------------------------------------------------------------------- /src/frontend/packages/i18n/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/frontend/packages/i18n/es_ES.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/i18n/es_ES.json -------------------------------------------------------------------------------- /src/frontend/packages/i18n/fr_CA.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/i18n/fr_CA.json -------------------------------------------------------------------------------- /src/frontend/packages/i18n/fr_FR.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/i18n/fr_FR.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/jest.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/src/data/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/src/data/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/src/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useCurrentClassroom'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/src/tests/index.ts: -------------------------------------------------------------------------------- 1 | export * from './factories'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/src/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './wrapInClassroom'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_classroom/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_classroom/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/cunningham.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/cunningham.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/baseStyles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/baseStyles.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/cunningham/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/cunningham/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/exception.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/lang.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/lang.spec.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/lang.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/lang.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/lazyImport.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/lazyImport.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/theme.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/theme.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/types.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/src/utils.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_common/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_common/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/__mocks__/styleMock.js: -------------------------------------------------------------------------------- 1 | module.exports = {}; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/jest.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/common/Attendance/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TabAttendanceWaiting'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/common/Styled/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Link'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/common/Widgets/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './RetentionDate'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/data/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/data/index.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/data/routes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/data/routes.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/hooks/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/hooks/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/settings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/settings.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/tests/index.ts: -------------------------------------------------------------------------------- 1 | export * from './factories'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/User.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/User.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/XAPI.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/XAPI.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/XMPP.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/XMPP.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/api.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/file.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/file.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/jwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/jwt.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/models.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/models.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/stores.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/stores.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/tracks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/tracks.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/types/window.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/types/window.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/utils/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/src/utils/system.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/src/utils/system.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/testSetup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/testSetup.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_components/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_components/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/jest.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/src/data/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/src/data/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/src/tests/index.ts: -------------------------------------------------------------------------------- 1 | export * from './factories'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MarkdownAppData'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/src/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/src/utils/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_markdown/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_markdown/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/Deferred.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/Deferred.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/cunningham.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/cunningham.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/intl.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/intl.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/reactDropzone.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/reactDropzone.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/render.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/render.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/router.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/router.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/utils.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/src/wrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/src/wrapper.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_tests/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_tests/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/__mocks__/styleMock.js: -------------------------------------------------------------------------------- 1 | module.exports = {}; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/__mocks__/zustand.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/__mocks__/zustand.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/babel.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/jest.config.js -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/package.json -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/api/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/api/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/components/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/components/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/conf/chat.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/conf/chat.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/conf/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/conf/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/conf/livePanel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/conf/livePanel.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/conf/sideEffects.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/conf/sideEffects.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/conf/window.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/conf/window.d.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/errors/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/errors/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/hooks/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/hooks/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/types/VideoPlayer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/types/VideoPlayer.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/types/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/types/metadata.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/types/metadata.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/types/svg.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.svg' { 2 | export default content; 3 | } 4 | -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/chat/chat.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/chat/chat.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/index.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/liveModale.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/liveModale.tsx -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/resumeLive.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/resumeLive.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/websocket.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/websocket.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/src/utils/window.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/src/utils/window.ts -------------------------------------------------------------------------------- /src/frontend/packages/lib_video/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/lib_video/tsconfig.json -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/.eslintrc.js -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/config.json -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/helper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/helper.js -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/index.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | ...require('./helper.js'), 3 | }; 4 | -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/jest/mocks/assetMock.js: -------------------------------------------------------------------------------- 1 | module.exports = 'style'; 2 | -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/jest/resolver.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/jest/resolver.js -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/jest/testSetup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/jest/testSetup.js -------------------------------------------------------------------------------- /src/frontend/packages/marsha-config/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/packages/marsha-config/package.json -------------------------------------------------------------------------------- /src/frontend/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/frontend/yarn.lock -------------------------------------------------------------------------------- /src/mail/bin/html-to-plain-text: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/bin/html-to-plain-text -------------------------------------------------------------------------------- /src/mail/bin/mjml-to-html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/bin/mjml-to-html -------------------------------------------------------------------------------- /src/mail/mjml/partial/footer.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/footer.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/header.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/header.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/hello.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/hello.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/video_access_url.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/video_access_url.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/video_description.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/video_description.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/video_starting_at.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/video_starting_at.mjml -------------------------------------------------------------------------------- /src/mail/mjml/partial/video_title.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/partial/video_title.mjml -------------------------------------------------------------------------------- /src/mail/mjml/register.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/register.mjml -------------------------------------------------------------------------------- /src/mail/mjml/reminder.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/reminder.mjml -------------------------------------------------------------------------------- /src/mail/mjml/reminder_date_updated.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/reminder_date_updated.mjml -------------------------------------------------------------------------------- /src/mail/mjml/vod_conversion.mjml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/mjml/vod_conversion.mjml -------------------------------------------------------------------------------- /src/mail/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/package.json -------------------------------------------------------------------------------- /src/mail/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/mail/yarn.lock -------------------------------------------------------------------------------- /src/tray/templates/services/app/_deploy_base.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/_deploy_base.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/_env.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/_env.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/configs/__init__.py.j2: -------------------------------------------------------------------------------- 1 | """custom settings.""" 2 | -------------------------------------------------------------------------------- /src/tray/templates/services/app/configs/settings.py.j2: -------------------------------------------------------------------------------- 1 | from ..settings import * 2 | -------------------------------------------------------------------------------- /src/tray/templates/services/app/cronjob_pipeline.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/cronjob_pipeline.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/deploy_app.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/deploy_app.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/deploy_celery.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/deploy_celery.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/deploy_ws.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/deploy_ws.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/deploy_xapi.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/deploy_xapi.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/job_db_migrate.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/job_db_migrate.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/secret.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/secret.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/svc_app.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/svc_app.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/svc_ws.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/svc_ws.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/app/svc_xapi.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/app/svc_xapi.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/configs/marsha.conf.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/configs/marsha.conf.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/deploy.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/deploy.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/ingress.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/ingress.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/secret.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/secret.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/static-svc.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/static-svc.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/nginx/svc.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/nginx/svc.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/postgresql/deploy.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/postgresql/deploy.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/postgresql/ep.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/postgresql/ep.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/postgresql/secret.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/postgresql/secret.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/postgresql/svc.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/postgresql/svc.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/webtorrent-nginx/svc.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/webtorrent-nginx/svc.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/webtorrent/deploy.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/webtorrent/deploy.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/webtorrent/secret.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/webtorrent/secret.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/services/webtorrent/svc.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/services/webtorrent/svc.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/volumes/media.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/volumes/media.yml.j2 -------------------------------------------------------------------------------- /src/tray/templates/volumes/static.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/templates/volumes/static.yml.j2 -------------------------------------------------------------------------------- /src/tray/tray.yml: -------------------------------------------------------------------------------- 1 | metadata: 2 | name: marsha 3 | version: 5.12.0 4 | -------------------------------------------------------------------------------- /src/tray/vars/all/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/vars/all/main.yml -------------------------------------------------------------------------------- /src/tray/vars/settings.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/vars/settings.yml -------------------------------------------------------------------------------- /src/tray/vars/vault/main.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/tray/vars/vault/main.yml.j2 -------------------------------------------------------------------------------- /src/webtorrent/.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/.eslintrc.cjs -------------------------------------------------------------------------------- /src/webtorrent/jest.config.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/jest.config.cjs -------------------------------------------------------------------------------- /src/webtorrent/nodemon.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/nodemon.json -------------------------------------------------------------------------------- /src/webtorrent/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/package.json -------------------------------------------------------------------------------- /src/webtorrent/src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/src/app.ts -------------------------------------------------------------------------------- /src/webtorrent/src/verifyClient.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/src/verifyClient.ts -------------------------------------------------------------------------------- /src/webtorrent/test/verifyClient.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/test/verifyClient.test.ts -------------------------------------------------------------------------------- /src/webtorrent/tsconfig-lint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/tsconfig-lint.json -------------------------------------------------------------------------------- /src/webtorrent/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/tsconfig.json -------------------------------------------------------------------------------- /src/webtorrent/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/openfun/marsha/HEAD/src/webtorrent/yarn.lock --------------------------------------------------------------------------------