// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Tiny Media plugin helper function to build queryable data selectors.
*
* @module tiny_media/selectors
* @copyright 2022 Huong Nguyen <huongnv13@gmail.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
export default {
IMAGE: {
actions: {
submit: '.tiny_image_urlentrysubmit',
imageBrowser: '.openimagebrowser',
},
elements: {
form: 'form.tiny_image_form',
alignment: '.tiny_image_alignment',
alignSettings: '.tiny_image_button',
alt: '.tiny_image_altentry',
altWarning: '.tiny_image_altwarning',
height: '.tiny_image_heightentry',
width: '.tiny_image_widthentry',
url: '.tiny_image_urlentry',
urlWarning: '.tiny_image_urlwarning',
size: '.tiny_image_size',
presentation: '.tiny_image_presentation',
constrain: '.tiny_image_constrain',
customStyle: '.tiny_image_customstyle',
preview: '.tiny_image_preview',
previewBox: '.tiny_image_preview_box',
},
styles: {
responsive: 'img-fluid',
},
alignments: [
// Vertical alignment.
{
name: 'verticalAlign',
value: 'align-top',
margin: '0 0.5em',
legacyValues: [
'atto_image_button_text-top',
],
},
{
name: 'verticalAlign',
value: 'align-middle',
margin: '0 0.5em',
legacyValues: [
'atto_image_button_middle',
],
},
{
name: 'verticalAlign',
value: 'align-bottom',
margin: '0 0.5em',
isDefault: true,
legacyValues: [
'atto_image_button_text-bottom',
],
},
],
},
EMBED: {
actions: {
submit: '.tiny_media_submit',
mediaBrowser: '.openmediabrowser',
},
elements: {
form: 'form.tiny_media_form',
source: '.tiny_media_source',
track: '.tiny_media_track',
mediaSource: '.tiny_media_media_source',
linkSource: '.tiny_media_link_source',
linkSize: '.tiny_media_link_size',
posterSource: '.tiny_media_poster_source',
posterSize: '.tiny_media_poster_size',
displayOptions: '.tiny_media_display_options',
name: '.tiny_media_name_entry',
title: '.tiny_media_title_entry',
url: '.tiny_media_url_entry',
width: '.tiny_media_width_entry',
height: '.tiny_media_height_entry',
trackSource: '.tiny_media_track_source',
trackKind: '.tiny_media_track_kind_entry',
trackLabel: '.tiny_media_track_label_entry',
trackLang: '.tiny_media_track_lang_entry',
trackDefault: '.tiny_media_track_default',
mediaControl: '.tiny_media_controls',
mediaAutoplay: '.tiny_media_autoplay',
mediaMute: '.tiny_media_mute',
mediaLoop: '.tiny_media_loop',
advancedSettings: '.tiny_media_advancedsettings',
linkTab: 'li[data-medium-type="link"]',
videoTab: 'li[data-medium-type="video"]',
audioTab: 'li[data-medium-type="audio"]',
linkPane: '.tab-pane[data-medium-type="link"]',
videoPane: '.tab-pane[data-medium-type="video"]',
audioPane: '.tab-pane[data-medium-type="audio"]',
trackSubtitlesTab: 'li[data-track-kind="subtitles"]',
trackCaptionsTab: 'li[data-track-kind="captions"]',
trackDescriptionsTab: 'li[data-track-kind="descriptions"]',
trackChaptersTab: 'li[data-track-kind="chapters"]',
trackMetadataTab: 'li[data-track-kind="metadata"]',
trackSubtitlesPane: '.tab-pane[data-track-kind="subtitles"]',
trackCaptionsPane: '.tab-pane[data-track-kind="captions"]',
trackDescriptionsPane: '.tab-pane[data-track-kind="descriptions"]',
trackChaptersPane: '.tab-pane[data-track-kind="chapters"]',
trackMetadataPane: '.tab-pane[data-track-kind="metadata"]',
},
mediaTypes: {
link: 'LINK',
video: 'VIDEO',
audio: 'AUDIO',
},
trackKinds: {
subtitles: 'SUBTITLES',
captions: 'CAPTIONS',
descriptions: 'DESCRIPTIONS',
chapters: 'CHAPTERS',
metadata: 'METADATA',
},
},
};