![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-ui/view/base/web/js/lib/knockout/bindings/ |
/** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ define([ 'ko', 'jquery', 'underscore', '../template/renderer' ], function (ko, $, _, renderer) { 'use strict'; var isTouchDevice = !_.isUndefined(document.ontouchstart), sliderFn = 'slider', sliderModule = 'jquery-ui-modules/slider'; if (isTouchDevice) { sliderFn = 'touchSlider'; sliderModule = 'mage/touch-slider'; } ko.bindingHandlers.range = { /** * Initializes binding and a slider update. * * @param {HTMLElement} element * @param {Function} valueAccessor */ init: function (element, valueAccessor) { var config = valueAccessor(), value = config.value; _.extend(config, { value: value(), /** * Callback which is being called when sliders' value changes. * * @param {Event} event * @param {Object} ui */ slide: function (event, ui) { value(ui.value); } }); require([sliderModule], function () { $(element)[sliderFn](config); }); }, /** * Updates sliders' plugin configuration. * * @param {HTMLElement} element * @param {Function} valueAccessor */ update: function (element, valueAccessor) { var config = valueAccessor(); config.value = ko.unwrap(config.value); require([sliderModule], function () { $(element)[sliderFn]('option', config); }); } }; renderer.addAttribute('range'); });