Sha256: 6e0c274a0eccdd5a7a03becb17486399e57de0b3abf50ba2259675dbb19c1c1b
Contents?: true
Size: 1.52 KB
Versions: 3
Compression:
Stored size: 1.52 KB
Contents
/** * @namespace WORKAREA.mediaModes */ WORKAREA.registerModule('mediaModes', (function () { 'use strict'; var activateOptionGroup = function($group) { $group.removeClass('hidden'); }, deactivateOptionGroup = function ($group) { $group.addClass('hidden'); }, triggerMediaModeChange = function ($optionGroups, mode) { $optionGroups.each(function(index, option) { var $option = $(option); if ($option.data('mediaMode').includes(mode)) { activateOptionGroup($option); } else { deactivateOptionGroup($option); } }); }, setInitialState = function($optionGroups, $control) { var selectedOption = $control.val(); triggerMediaModeChange($optionGroups, selectedOption); }, /** * @method * @name init * @memberof WORKAREA.mediaModes */ init = function ($scope) { var $control = $('[data-media-mode="control"]', $scope), $optionGroups = $('[data-media-mode]', $scope).not($control); if (_.isEmpty($control) || _.isEmpty($optionGroups)) { return; } setInitialState($optionGroups, $control); $control.on('change', function(event) { triggerMediaModeChange($optionGroups, $(event.currentTarget).val()); }); }; return { init: init }; }()));
Version data entries
3 entries across 3 versions & 1 rubygems