1 2; /* Start:"a:4:{s:4:"full";s:61:"/bitrix/templates/aspro-premier/js/observer.js?17745963267026";s:6:"source";s:46:"/bitrix/templates/aspro-premier/js/observer.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 3if( 4 typeof AMutationObserver === 'undefined' && 5 typeof MutationObserver === 'function' 6){ 7 (function(w, d){ 8 "use strict"; 9 10 /* ES6 class definition */ 11 /* 12 class AMutationObserver extends MutationObserver{ 13 constructor(callback){ 14 super(function(mutationsList, observer){ 15 if( 16 AMutationObserver.ignore || 17 observer.paused 18 ){ 19 // ignore mutations without disconnect() 20 //console.log('ignore observer callback', observer.id); 21 } 22 else{ 23 callback(mutationsList, observer); 24 } 25 }); 26 27 this.paused = true; 28 this.id = Math.floor(Math.random() * Math.floor(1000)); 29 30 // define parent script 31 try{ 32 eval('@'); 33 } 34 catch(e){ 35 // define parent script 36 if(typeof e.stack === 'string'){ 37 this.stack = e.stack.match(/[^\s]*:[\d]+:[\d]+[^\s]/g); 38 this.stack.splice(0, 1); 39 var script = this.stack[0]; 40 41 if(script.indexOf('yandex.ru/metrika') !== -1){ 42 this.id = 'ym'; 43 } 44 else{ 45 script = script.replace(/^(.*[/])?(.*\.js)(.*)$/ig, '$2'); 46 this.id = script.replace(/(\.min)?\.js$/i, ''); 47 } 48 } 49 } 50 finally{ 51 //console.log('new observer', this.id); 52 } 53 } 54 55 observe(target, options){ 56 this.target = target; 57 this.options = options; 58 this.paused = false; 59 if(typeof AMutationObserver.observers[this.id] === 'undefined'){ 60 AMutationObserver.observers[this.id] = this; 61 } 62 super.observe(target, options); 63 } 64 65 disconnect(){ 66 this.paused = true; 67 super.disconnect(); 68 } 69 70 takeRecords(){ 71 if( 72 AMutationObserver.ignore || 73 this.paused 74 ){ 75 // ignore mutations without disconnect() 76 //console.log('ignore observer takeRecords', this.id); 77 return []; 78 } 79 else{ 80 return super.takeRecords(); 81 } 82 } 83 84 pause(){ 85 this.paused = true; 86 } 87 88 resume(){ 89 if(typeof this.options !== 'false'){ 90 this.paused = false; 91 } 92 } 93 } 94 */ 95 96 /* ES5 class definition */ 97 var _AMutationObserver = /*#__PURE__*/function (_MutationObserver) { 98 "use strict"; 99 100 _inheritsLoose(_AMutationObserver, _MutationObserver); 101 102 function _AMutationObserver(callback) { 103 var _this; 104 105 _this = _MutationObserver.call(this, function (mutationsList, observer) { 106 if (_AMutationObserver.ignore || observer.paused) {// ignore mutations without disconnect() 107 //console.log('ignore observer callback', observer.id); 108 } 109 else { 110 callback(mutationsList, observer); 111 } 112 }) || this; 113 114 _this.paused = true; 115 _this.id = Math.floor(Math.random() * Math.floor(1000)); 116 117 try { 118 eval('@'); 119 } 120 catch (e) { 121 // define parent script 122 if(typeof e.stack === 'string'){ 123 _this.stack = e.stack.match(/[^\s]*:[\d]+:[\d]+[^\s]/g); 124 _this.stack.splice(0, 1); 125 var script = _this.stack[0]; 126 127 if (script.indexOf('yandex.ru/metrika') !== -1) { 128 _this.id = 'ym'; 129 } 130 else { 131 script = script.replace(/^(.*[/])?(.*\.js)(.*)$/ig, '$2'); 132 _this.id = script.replace(/(\.min)?\.js$/i, ''); 133 } 134 } 135 } 136 finally { 137 //console.log('new observer', _this.id); 138 } 139 140 return _this; 141 } 142 143 var _proto = _AMutationObserver.prototype; 144 145 _proto.observe = function observe(target, options) { 146 this.target = target; 147 this.options = options; 148 this.paused = false; 149 150 if (typeof _AMutationObserver.observers[this.id] === 'undefined') { 151 _AMutationObserver.observers[this.id] = this; 152 } 153 154 _MutationObserver.prototype.observe.call(this, target, options); 155 }; 156 157 _proto.disconnect = function disconnect() { 158 this.paused = true; 159 160 _MutationObserver.prototype.disconnect.call(this); 161 }; 162 163 _proto.takeRecords = function takeRecords() { 164 if (_AMutationObserver.ignore || this.paused) { 165 // ignore mutations without disconnect() 166 //console.log('ignore observer takeRecords', this.id); 167 return []; 168 } 169 else { 170 return _MutationObserver.prototype.takeRecords.call(this); 171 } 172 }; 173 174 _proto.pause = function pause() { 175 this.paused = true; 176 }; 177 178 _proto.resume = function resume() { 179 if (typeof this.options !== 'false') { 180 this.paused = false; 181 } 182 }; 183 184 return _AMutationObserver; 185 }( /*#__PURE__*/_wrapNativeSuper(MutationObserver)); 186 187 _AMutationObserver.ignore = false; 188 _AMutationObserver.observers = []; 189 _AMutationObserver.parent = MutationObserver; 190 _AMutationObserver.toString = function(){ 191 return 'function MutationObserver() { [native code] }'; 192 } 193 MutationObserver = _AMutationObserver; 194 195 /* ES2015 Babel functions (loose) */ 196 function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } 197 198 function _wrapNativeSuper(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); }
vendor: 21,552 bytes, lines 198-894
198 if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); } 199 200 function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } 201 202 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } 203 204 function _isNativeFunction(fn) { return Function.toString.call(fn).indexOf("[native code]") !== -1; } 205 206 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } 207 208 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } 209 })(window, document); 210} 211/* End */ 212; 213; /* Start:"a:4:{s:4:"full";s:68:"/bitrix/templates/aspro-premier/js/lite.bootstrap.js?177459632619575";s:6:"source";s:52:"/bitrix/templates/aspro-premier/js/lite.bootstrap.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 214+function ($) { "use strict"; 215 216 // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) 217 // ============================================================ 218 219 function transitionEnd() { 220 var el = document.createElement('bootstrap') 221 222 var transEndEventNames = { 223 'WebkitTransition' : 'webkitTransitionEnd' 224 , 'MozTransition' : 'transitionend' 225 , 'OTransition' : 'oTransitionEnd otransitionend' 226 , 'transition' : 'transitionend' 227 } 228 229 for (var name in transEndEventNames) { 230 if (el.style[name] !== undefined) { 231 return { end: transEndEventNames[name] } 232 } 233 } 234 } 235 236 // http://blog.alexmaccaw.com/css-transitions 237 $.fn.emulateTransitionEnd = function (duration) { 238 var called = false, $el = this 239 $(this).one($.support.transition.end, function () { called = true }) 240 var callback = function () { if (!called) $($el).trigger($.support.transition.end) } 241 setTimeout(callback, duration) 242 return this 243 } 244 245 $(function () { 246 $.support.transition = transitionEnd() 247 }) 248 249}(window.jQuery); 250 251+function ($) { "use strict"; 252 253 // TOOLTIP PUBLIC CLASS DEFINITION 254 // =============================== 255 256 var Tooltip = function (element, options) { 257 this.type = 258 this.options = 259 this.enabled = 260 this.timeout = 261 this.hoverState = 262 this.$element = null 263 264 this.init('tooltip', element, options) 265 } 266 267 Tooltip.DEFAULTS = { 268 animation: true 269 , placement: 'top' 270 , selector: false 271 , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' 272 , trigger: 'hover focus' 273 , title: '' 274 , delay: 0 275 , html: false 276 , container: false 277 } 278 279 Tooltip.prototype.init = function (type, element, options) { 280 this.enabled = true 281 this.type = type 282 this.$element = $(element) 283 this.options = this.getOptions(options) 284 285 var triggers = this.options.trigger.split(' ') 286 287 for (var i = triggers.length; i--;) { 288 var trigger = triggers[i] 289 290 if (trigger == 'click') { 291 this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) 292 } else if (trigger != 'manual') { 293 var eventIn = trigger == 'hover' ? 'mouseenter' : 'focus' 294 var eventOut = trigger == 'hover' ? 'mouseleave' : 'blur' 295 296 this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) 297 this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) 298 } 299 } 300 301 this.options.selector ? 302 (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : 303 this.fixTitle() 304 } 305 306 Tooltip.prototype.getDefaults = function () { 307 return Tooltip.DEFAULTS 308 } 309 310 Tooltip.prototype.getOptions = function (options) { 311 options = $.extend({}, this.getDefaults(), this.$element.data(), options) 312 313 if (options.delay && typeof options.delay == 'number') { 314 options.delay = { 315 show: options.delay 316 , hide: options.delay 317 } 318 } 319 320 return options 321 } 322 323 Tooltip.prototype.getDelegateOptions = function () { 324 var options = {} 325 var defaults = this.getDefaults() 326 327 this._options && $.each(this._options, function (key, value) { 328 if (defaults[key] != value) options[key] = value 329 }) 330 331 return options 332 } 333 334 Tooltip.prototype.enter = function (obj) { 335 var self = obj instanceof this.constructor ? 336 obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) 337 338 clearTimeout(self.timeout) 339 340 self.hoverState = 'in' 341 342 if (!self.options.delay || !self.options.delay.show) return self.show() 343 344 self.timeout = setTimeout(function () { 345 if (self.hoverState == 'in') self.show() 346 }, self.options.delay.show) 347 } 348 349 Tooltip.prototype.leave = function (obj) { 350 var self = obj instanceof this.constructor ? 351 obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) 352 353 clearTimeout(self.timeout) 354 355 self.hoverState = 'out' 356 357 if (!self.options.delay || !self.options.delay.hide) return self.hide() 358 359 self.timeout = setTimeout(function () { 360 if (self.hoverState == 'out') self.hide() 361 }, self.options.delay.hide) 362 } 363 364 Tooltip.prototype.show = function () { 365 var e = $.Event('show.bs.'+ this.type) 366 367 if (this.hasContent() && this.enabled) { 368 this.$element.trigger(e) 369 370 if (e.isDefaultPrevented()) return 371 372 var $tip = this.tip() 373 374 this.setContent() 375 376 if (this.options.animation) $tip.addClass('fade') 377 378 var placement = typeof this.options.placement == 'function' ? 379 this.options.placement.call(this, $tip[0], this.$element[0]) : 380 this.options.placement 381 382 var autoToken = /\s?auto?\s?/i 383 var autoPlace = autoToken.test(placement) 384 if (autoPlace) placement = placement.replace(autoToken, '') || 'top' 385 386 $tip 387 .detach() 388 .css({ top: 0, left: 0, display: 'block' }) 389 .addClass(placement) 390 391 this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) 392 393 var pos = this.getPosition() 394 var actualWidth = $tip[0].offsetWidth 395 var actualHeight = $tip[0].offsetHeight 396 397 if (autoPlace) { 398 var $parent = this.$element.parent() 399 400 var orgPlacement = placement 401 var docScroll = document.documentElement.scrollTop || document.body.scrollTop 402 var parentWidth = this.options.container == 'body' ? window.innerWidth : $parent.outerWidth() 403 var parentHeight = this.options.container == 'body' ? window.innerHeight : $parent.outerHeight() 404 var parentLeft = this.options.container == 'body' ? 0 : $parent.offset().left 405 406 placement = placement == 'bottom' && pos.top + pos.height + actualHeight - docScroll > parentHeight ? 'top' : 407 placement == 'top' && pos.top - docScroll - actualHeight < 0 ? 'bottom' : 408 placement == 'right' && pos.right + actualWidth > parentWidth ? 'left' : 409 placement == 'left' && pos.left - actualWidth < parentLeft ? 'right' : 410 placement 411 412 $tip 413 .removeClass(orgPlacement) 414 .addClass(placement) 415 } 416 417 var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) 418 419 this.applyPlacement(calculatedOffset, placement) 420 this.$element.trigger('shown.bs.' + this.type) 421 } 422 } 423 424 Tooltip.prototype.applyPlacement = function(offset, placement) { 425 var replace 426 var $tip = this.tip() 427 var width = $tip[0].offsetWidth 428 var height = $tip[0].offsetHeight 429 430 // manually read margins because getBoundingClientRect includes difference 431 var marginTop = parseInt($tip.css('margin-top'), 10) 432 var marginLeft = parseInt($tip.css('margin-left'), 10) 433 434 // we must check for NaN for ie 8/9 435 if (isNaN(marginTop)) marginTop = 0 436 if (isNaN(marginLeft)) marginLeft = 0 437 438 offset.top = offset.top + marginTop 439 offset.left = offset.left + marginLeft 440 441 $tip 442 .offset(offset) 443 .addClass('in') 444 445 // check to see if placing tip in new offset caused the tip to resize itself 446 var actualWidth = $tip[0].offsetWidth 447 var actualHeight = $tip[0].offsetHeight 448 449 if (placement == 'top' && actualHeight != height) { 450 replace = true 451 offset.top = offset.top + height - actualHeight 452 } 453 454 if (/bottom|top/.test(placement)) { 455 var delta = 0 456 457 if (offset.left < 0) { 458 delta = offset.left * -2 459 offset.left = 0 460 461 $tip.offset(offset) 462 463 actualWidth = $tip[0].offsetWidth 464 actualHeight = $tip[0].offsetHeight 465 } 466 467 this.replaceArrow(delta - width + actualWidth, actualWidth, 'left') 468 } else { 469 this.replaceArrow(actualHeight - height, actualHeight, 'top') 470 } 471 472 if (replace) $tip.offset(offset) 473 } 474 475 Tooltip.prototype.replaceArrow = function(delta, dimension, position) { 476 this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + "%") : '') 477 } 478 479 Tooltip.prototype.setContent = function () { 480 var $tip = this.tip() 481 var title = this.getTitle() 482 483 $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) 484 $tip.removeClass('fade in top bottom left right') 485 } 486 487 Tooltip.prototype.hide = function () { 488 var that = this 489 var $tip = this.tip() 490 var e = $.Event('hide.bs.' + this.type) 491 492 function complete() { 493 if (that.hoverState != 'in') $tip.detach() 494 } 495 496 this.$element.trigger(e) 497 498 if (e.isDefaultPrevented()) return 499 500 $tip.removeClass('in') 501 502 $.support.transition && this.$tip.hasClass('fade') ? 503 $tip 504 .one($.support.transition.end, complete) 505 .emulateTransitionEnd(150) : 506 complete() 507 508 this.$element.trigger('hidden.bs.' + this.type) 509 510 return this 511 } 512 513 Tooltip.prototype.fixTitle = function () { 514 var $e = this.$element 515 if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') { 516 $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') 517 } 518 } 519 520 Tooltip.prototype.hasContent = function () { 521 return this.getTitle() 522 } 523 524 Tooltip.prototype.getPosition = function () { 525 var el = this.$element[0] 526 return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : { 527 width: el.offsetWidth 528 , height: el.offsetHeight 529 }, this.$element.offset()) 530 } 531 532 Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { 533 return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : 534 placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : 535 placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : 536 /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } 537 } 538 539 Tooltip.prototype.getTitle = function () { 540 var title 541 var $e = this.$element 542 var o = this.options 543 544 title = $e.attr('data-original-title') 545 || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) 546 547 return title 548 } 549 550 Tooltip.prototype.tip = function () { 551 return this.$tip = this.$tip || $(this.options.template) 552 } 553 554 Tooltip.prototype.arrow = function () { 555 return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow') 556 } 557 558 Tooltip.prototype.validate = function () { 559 if (!this.$element[0].parentNode) { 560 this.hide() 561 this.$element = null 562 this.options = null 563 } 564 } 565 566 Tooltip.prototype.enable = function () { 567 this.enabled = true 568 } 569 570 Tooltip.prototype.disable = function () { 571 this.enabled = false 572 } 573 574 Tooltip.prototype.toggleEnabled = function () { 575 this.enabled = !this.enabled 576 } 577 578 Tooltip.prototype.toggle = function (e) { 579 var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this 580 self.tip().hasClass('in') ? self.leave(self) : self.enter(self) 581 } 582 583 Tooltip.prototype.destroy = function () { 584 this.hide().$element.off('.' + this.type).removeData('bs.' + this.type) 585 } 586 587 588 // TOOLTIP PLUGIN DEFINITION 589 // ========================= 590 591 var old = $.fn.tooltip 592 593 $.fn.tooltip = function (option) { 594 return this.each(function () { 595 var $this = $(this) 596 var data = $this.data('bs.tooltip') 597 var options = typeof option == 'object' && option 598 599 if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) 600 if (typeof option == 'string') data[option]() 601 }) 602 } 603 604 $.fn.tooltip.Constructor = Tooltip 605 606 607 // TOOLTIP NO CONFLICT 608 // =================== 609 610 $.fn.tooltip.noConflict = function () { 611 $.fn.tooltip = old 612 return this 613 } 614 615}(window.jQuery); 616 617+function ($) { "use strict"; 618 619 // COLLAPSE PUBLIC CLASS DEFINITION 620 // ================================ 621 622 var Collapse = function (element, options) { 623 this.$element = $(element) 624 this.options = $.extend({}, Collapse.DEFAULTS, options) 625 this.transitioning = null 626 627 if (this.options.parent) this.$parent = $(this.options.parent) 628 if (this.options.toggle) this.toggle() 629 } 630 631 Collapse.DEFAULTS = { 632 toggle: true 633 } 634 635 Collapse.prototype.dimension = function () { 636 var hasWidth = this.$element.hasClass('width') 637 return hasWidth ? 'width' : 'height' 638 } 639 640 Collapse.prototype.show = function () { 641 if (this.transitioning || this.$element.hasClass('in')) return 642 643 var startEvent = $.Event('show.bs.collapse') 644 this.$element.trigger(startEvent) 645 if (startEvent.isDefaultPrevented()) return 646 647 var actives = this.$parent && this.$parent.find('> .panel > .in') 648 649 if (actives && actives.length) { 650 var hasData = actives.data('bs.collapse') 651 if (hasData && hasData.transitioning) return 652 actives.collapse('hide') 653 hasData || actives.data('bs.collapse', null) 654 } 655 656 var dimension = this.dimension() 657 658 this.$element 659 .removeClass('collapse') 660 .addClass('collapsing') 661 [dimension](0) 662 663 this.transitioning = 1 664 665 var complete = function () { 666 this.$element 667 .removeClass('collapsing') 668 .addClass('in') 669 [dimension]('auto') 670 this.transitioning = 0 671 this.$element.trigger('shown.bs.collapse') 672 } 673 674 if (!$.support.transition) return complete.call(this) 675 676 var scrollSize = $.camelCase(['scroll', dimension].join('-')) 677 678 this.$element 679 .one($.support.transition.end, $.proxy(complete, this)) 680 .emulateTransitionEnd(350) 681 [dimension](this.$element[0][scrollSize]) 682 } 683 684 Collapse.prototype.hide = function () { 685 if (this.transitioning || !this.$element.hasClass('in')) return 686 687 var startEvent = $.Event('hide.bs.collapse') 688 this.$element.trigger(startEvent) 689 if (startEvent.isDefaultPrevented()) return 690 691 var dimension = this.dimension() 692 693 this.$element 694 [dimension](this.$element[dimension]()) 695 [0].offsetHeight 696 697 this.$element 698 .addClass('collapsing') 699 .removeClass('collapse') 700 .removeClass('in') 701 702 this.transitioning = 1 703 704 var complete = function () { 705 this.transitioning = 0 706 this.$element 707 .trigger('hidden.bs.collapse') 708 .removeClass('collapsing') 709 .addClass('collapse') 710 } 711 712 if (!$.support.transition) return complete.call(this) 713 714 this.$element 715 [dimension](0) 716 .one($.support.transition.end, $.proxy(complete, this)) 717 .emulateTransitionEnd(350) 718 } 719 720 Collapse.prototype.toggle = function () { 721 this[this.$element.hasClass('in') ? 'hide' : 'show']() 722 } 723 724 725 // COLLAPSE PLUGIN DEFINITION 726 // ========================== 727 728 var old = $.fn.collapse 729 730 $.fn.collapse = function (option) { 731 return this.each(function () { 732 var $this = $(this) 733 var data = $this.data('bs.collapse') 734 var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) 735 736 if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) 737 if (typeof option == 'string') data[option]() 738 }) 739 } 740 741 $.fn.collapse.Constructor = Collapse 742 743 744 // COLLAPSE NO CONFLICT 745 // ==================== 746 747 $.fn.collapse.noConflict = function () { 748 $.fn.collapse = old 749 return this 750 } 751 752 753 // COLLAPSE DATA-API 754 // ================= 755 756 $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { 757 var $this = $(this), href 758 var target = $this.attr('data-target') 759 || e.preventDefault() 760 || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 761 var $target = $(target) 762 var data = $target.data('bs.collapse') 763 var option = data ? 'toggle' : $this.data() 764 var parent = $this.attr('data-parent') 765 var $parent = parent && $(parent) 766 767 if (!data || !data.transitioning) { 768 if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') 769 $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') 770 } 771 772 $target.collapse(option) 773 }) 774 775}(window.jQuery); 776 777+function ($) { "use strict"; 778 779 // TAB CLASS DEFINITION 780 // ==================== 781 782 var Tab = function (element) { 783 this.element = $(element) 784 } 785 786 Tab.prototype.show = function () { 787 var $this = this.element 788 var $ul = $this.closest('ul:not(.dropdown-menu)') 789 var selector = $this.attr('data-target') 790 791 if (!selector) { 792 selector = $this.attr('href') 793 selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 794 } 795 796 if ($this.parent('li').hasClass('active')) return 797 798 var previous = $ul.find('.active:last a')[0] 799 var e = $.Event('show.bs.tab', { 800 relatedTarget: previous 801 }) 802 803 $this.trigger(e) 804 805 if (e.isDefaultPrevented()) return 806 807 var $target = $(selector) 808 809 this.activate($this.parent('li'), $ul) 810 this.activate($target, $target.parent(), function () { 811 $this.trigger({ 812 type: 'shown.bs.tab' 813 , relatedTarget: previous 814 }) 815 }) 816 } 817 818 Tab.prototype.activate = function (element, container, callback) { 819 var $active = container.find('> .active') 820 var transition = callback 821 && $.support.transition 822 && $active.hasClass('fade') 823 824 function next() { 825 $active 826 .removeClass('active') 827 .find('> .dropdown-menu > .active') 828 .removeClass('active') 829 830 element.addClass('active') 831 832 if (transition) { 833 element[0].offsetWidth // reflow for transition 834 element.addClass('in') 835 } else { 836 element.removeClass('fade') 837 } 838 839 if (element.parent('.dropdown-menu')) { 840 element.closest('li.dropdown').addClass('active') 841 } 842 843 callback && callback() 844 } 845 846 transition ? 847 $active 848 .one($.support.transition.end, next) 849 .emulateTransitionEnd(150) : 850 next() 851 852 $active.removeClass('in') 853 } 854 855 856 // TAB PLUGIN DEFINITION 857 // ===================== 858 859 var old = $.fn.tab 860 861 $.fn.tab = function ( option ) { 862 return this.each(function () { 863 var $this = $(this) 864 var data = $this.data('bs.tab') 865 866 if (!data) $this.data('bs.tab', (data = new Tab(this))) 867 if (typeof option == 'string') data[option]() 868 }) 869 } 870 871 $.fn.tab.Constructor = Tab 872 873 874 // TAB NO CONFLICT 875 // =============== 876 877 $.fn.tab.noConflict = function () { 878 $.fn.tab = old 879 return this 880 } 881 882 883 // TAB DATA-API 884 // ============ 885 886 $(document).on('click.bs.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) { 887 e.preventDefault() 888 $(this).tab('show') 889 }) 890 891}(window.jQuery); 892/* End */ 893; 894; /* Start:"a:4:{s:4:"full";
894s:70:"/bitrix/templates/aspro-premier/vendor/jquery.cookie.js?17745963252426";s:6:"source";s:55:"/bitrix/templates/aspro-premier/vendor/jquery.cookie.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 895/*! 896 * jQuery Cookie Plugin v1.3.1 897 * https://github.com/carhartl/jquery-cookie 898 * 899 * Copyright 2013 Klaus Hartl 900 * Released under the MIT license 901 */ 902(function (factory) { 903 if (typeof define === "function" && define.amd && define.amd.jQuery) { 904 // AMD. Register as anonymous module. 905 define(["jquery"], factory); 906 } else { 907 // Browser globals. 908 factory(jQuery); 909 } 910})(function ($) { 911 var pluses = /\+/g; 912 913 function raw(s) { 914 return s; 915 } 916 917 function decoded(s) { 918 return decodeURIComponent(s.replace(pluses, " ")); 919 } 920 921 function converted(s) { 922 if (s.indexOf('"') === 0) { 923 // This is a quoted cookie as according to RFC2068, unescape 924 s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\"); 925 } 926 try { 927 return config.json ? JSON.parse(s) : s; 928 } catch (er) {} 929 } 930 931 var config = ($.cookie = function (key, value, options) { 932 // write 933 if (value !== undefined) { 934 options = $.extend({}, config.defaults, options); 935 936 if (typeof options.expires === "number") { 937 var days = options.expires, 938 t = (options.expires = new Date()); 939 t.setDate(t.getDate() + days); 940 } 941 942 value = config.json ? JSON.stringify(value) : String(value); 943 944 return (document.cookie = [ 945 encodeURIComponent(key), 946 "=", 947 config.raw ? value : encodeURIComponent(value), 948 options.expires ? "; expires=" + options.expires.toUTCString() : "", // use expires attribute, max-age is not supported by IE 949 options.path ? "; path=" + options.path : "", 950 options.domain ? "; domain=" + options.domain : "", 951 options.secure ? "; secure" : "", 952 ].join("")); 953 } 954 955 // read 956 var decode = config.raw ? raw : decoded; 957 var cookies = document.cookie.split("; "); 958 var result = key ? undefined : {}; 959 for (var i = 0, l = cookies.length; i < l; i++) { 960 var parts = cookies[i].split("="); 961 var name = decode(parts.shift()); 962 var cookie = decode(parts.join("=")); 963 964 if (key && key === name) { 965 result = converted(cookie); 966 break; 967 } 968 969 if (!key) { 970 result[name] = converted(cookie); 971 } 972 } 973 974 return result; 975 }); 976 977 config.defaults = {}; 978 979 $.removeCookie = function (key, options) { 980 if ($.cookie(key) !== undefined) { 981 $.cookie(key, "", $.extend(options, { expires: -1 })); 982 return true; 983 } 984 return false; 985 }; 986}); 987 988/* End */ 989; 990; /* Start:"a:4:{s:4:"full";s:77:"/bitrix/templates/aspro-premier/vendor/jquery.validate.min.js?177459632522254";s:6:"source";
990s:61:"/bitrix/templates/aspro-premier/vendor/jquery.validate.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 991/*! jQuery Validation Plugin - v1.13.1 - 10/14/2014 992 * http://jqueryvalidation.org/ 993 * Copyright (c) 2014 Jörn Zaefferer; Licensed MIT */ 994!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a(jQuery)}(function(a){a.extend(a.fn,{validate:function(b){if(!this.length)return void(b&&b.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing."));var c=a.data(this[0],"validator");return c?c:(this.attr("novalidate","novalidate"),c=new a.validator(b,this[0]),a.data(this[0],"validator",c),c.settings.onsubmit&&(this.validateDelegate(":submit","click",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(b.target).hasClass("cancel")&&(c.cancelSubmit=!0),void 0!==a(b.target).attr("formnovalidate")&&(c.cancelSubmit=!0)}),this.submit(function(b){function d(){var d,e;return c.settings.submitHandler?(c.submitButton&&(d=a("<input type='hidden'/>").attr("name",c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),e=c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),void 0!==e?e:!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){var b,c;return a(this[0]).is("form")?b=this.validate().form():(b=!0,c=a(this[0].form).validate(),this.each(function(){b=c.element(this)&&b})),b},removeAttrs:function(b){var c={},d=this;return a.each(b.split(/\s/),function(a,b){c[b]=d.attr(b),d.removeAttr(b)}),c},rules:function(b,c){var d,e,f,g,h,i,j=this[0];if(b)switch(d=a.data(j.form,"validator").settings,e=d.rules,f=a.validator.staticRules(j),b){case"add":a.extend(f,a.validator.normalizeRule(c)),delete f.messages,e[j.name]=f,c.messages&&(d.messages[j.name]=a.extend(d.messages[j.name],c.messages));break;case"remove":return c?(i={},a.each(c.split(/\s/),function(b,c){i[c]=f[c],delete f[c],"required"===c&&a(j).removeAttr("aria-required")}),i):(delete e[j.name],f)}return g=a.validator.normalizeRules(a.extend({},a.validator.classRules(j),a.validator.attributeRules(j),a.validator.dataRules(j),a.validator.staticRules(j)),j),g.required&&(h=g.required,delete g.required,g=a.extend({required:h},g),a(j).attr("aria-required","true")),g.remote&&(h=g.remote,delete g.remote,g=a.extend(g,{remote:h})),g}}),a.extend(a.expr[":"],{blank:function(b){return!a.trim(""+a(b).val())},filled:function(b){return!!a.trim(""+a(b).val())},unchecked:function(b){return!a(b).prop("checked")}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return 1===arguments.length?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp("\\{"+a+"\\}","g"),function(){return c})}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusCleanup:!1,focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(a){this.lastActive=a,this.settings.focusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(a)))},onfocusout:function(a){this.checkable(a)||!(a.name in this.submitted)&&this.optional(a)||this.element(a)},onkeyup:function(a,b){(9!==b.which||""!==this.elementValue(a))&&(a.name in this.submitted||a===this.lastElement)&&this.element(a)},onclick:function(a){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}}
994,setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date ( ISO ).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:a.validator.format("Please enter no more than {0} characters."),minlength:a.validator.format("Please enter at least {0} characters."),rangelength:a.validator.format("Please enter a value between {0} and {1} characters long."),range:a.validator.format("Please enter a value between {0} and {1}."),max:a.validator.format("Please enter a value less than or equal to {0}."),min:a.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function b(b){var c=a.data(this[0].form,"validator"),d="on"+b.type.replace(/^validate/,""),e=c.settings;e[d]&&!this.is(e.ignore)&&e[d].call(c,this[0],b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var c,d=this.groups={};a.each(this.settings.groups,function(b,c){"string"==typeof c&&(c=c.split(/\s/)),a.each(c,function(a,c){d[c]=b})}),c=this.settings.rules,a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox']","focusin focusout keyup",b).validateDelegate("select, option, [type='radio'], [type='checkbox']","click",b),this.settings.invalidHandler&&a(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler),a(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required","true")},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){var c=this.clean(b),d=this.validationTargetFor(c),e=!0;return this.lastElement=d,void 0===d?delete this.invalid[c.name]:(this.prepareElement(d),this.currentElements=a(d),e=this.check(d)!==!1,e?delete this.invalid[d.name]:this.invalid[d.name]=!0),a(b).attr("aria-invalid",!e),this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),e},showErrors:function(b){if(b){a.extend(this.errorMap,b),this.errorList=[];for(var c in b)this.errorList.push({message:b[c],element:this.findByName(c)[0]});this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue").removeAttr("aria-invalid")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b,c=0;for(b in a)c++;return c},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(a){a.not(this.containers).text(""),this.addWrapper(a).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&1===a.grep(this.errorList,function(a){return a.element.name===b.name}).length&&b},elements:function(){var b=this,c={};return a(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled], [readonly]").not(this.settings.ignore).filter(function(){return!this.name&&b.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in c||
994!b.objectLength(a(this).rules())?!1:(c[this.name]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.split(" ").join(".");return a(this.settings.errorElement+"."+b,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([]),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c,d=a(b),e=b.type;return"radio"===e||"checkbox"===e?a("input[name='"+b.name+"']:checked").val():"number"===e&&"undefined"!=typeof b.validity?b.validity.badInput?!1:d.val():(c=d.val(),"string"==typeof c?c.replace(/\r/g,""):c)},check:function(b){b=this.validationTargetFor(this.clean(b));var c,d,e,f=a(b).rules(),g=a.map(f,function(a,b){return b}).length,h=!1,i=this.elementValue(b);for(d in f){e={method:d,parameters:f[d]};try{if(c=a.validator.methods[d].call(this,i,b,e.parameters),"dependency-mismatch"===c&&1===g){h=!0;continue}if(h=!1,"pending"===c)return void(this.toHide=this.toHide.not(this.errorsFor(b)));if(!c)return this.formatAndAdd(b,e),!1}catch(j){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+b.id+", check the '"+e.method+"' method.",j),j}}if(!h)return this.objectLength(f)&&this.successList.push(b),!0},customDataMessage:function(b,c){return a(b).data("msg"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase())||a(b).data("msg")},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(void 0!==arguments[a])return arguments[a];return void 0},defaultMessage:function(b,c){return this.findDefined(this.customMessage(b.name,c),this.customDataMessage(b,c),!this.settings.ignoreTitle&&b.title||void 0,a.validator.messages[c],"<strong>Warning: No message defined for "+b.name+"</strong>")},formatAndAdd:function(b,c){var d=this.defaultMessage(b,c.method),e=/\$?\{(\d+)\}/g;"function"==typeof d?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,"{$1}"),c.parameters)),this.errorList.push({message:d,element:b,method:c.method}),this.errorMap[b.name]=d,this.submitted[b.name]=d},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b,c;for(a=0;this.errorList[a];a++)c=this.errorList[a],this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d,e,f,g=this.errorsFor(b),h=this.idOrName(b),i=a(b).attr("aria-describedby");g.length?(g.removeClass(this.settings.validClass).addClass(this.settings.errorClass),g.html(c)):(g=a("<"+this.settings.errorElement+">").attr("id",h+"-error").addClass(this.settings.errorClass).html(c||""),d=g,this.settings.wrapper&&(d=g.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(d):this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b),g.is("label")?g.attr("for",h):0===g.parents("label[for='"+h+"']").length&&(f=g.attr("id").replace(/(:|\.|\[|\])/g,"\\$1"),i?i.match(new RegExp("\\b"+f+"\\b"))||(i+=" "+f):i=f,a(b).attr("aria-describedby",i),e=this.groups[b.n
994ame],e&&a.each(this.groups,function(b,c){c===e&&a("[name='"+b+"']",this.currentForm).attr("aria-describedby",g.attr("id"))}))),!c&&this.settings.success&&(g.text(""),"string"==typeof this.settings.success?g.addClass(this.settings.success):this.settings.success(g,b)),this.toShow=this.toShow.add(g)},errorsFor:function(b){var c=this.idOrName(b),d=a(b).attr("aria-describedby"),e="label[for='"+c+"'], label[for='"+c+"'] *";return d&&(e=e+", #"+d.replace(/\s+/g,", #")),this.errors().filter(e)},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(b){return this.checkable(b)&&(b=this.findByName(b.name)),a(b).not(this.settings.ignore)[0]},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find("[name='"+b+"']")},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c))return this.findByName(c.name).filter(":checked").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{"boolean":function(a){return a},string:function(b,c){return!!a(b,c.form).length},"function":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);
994return!a.validator.methods.required.call(this,c,b)&&"dependency-mismatch"},startRequest:function(a){this.pending[a.name]||(this.pendingRequest++,this.pending[a.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],c&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&0===this.pendingRequest&&this.formSubmitted&&(a(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(b){return a.data(b,"previousValue")||a.data(b,"previousValue",{old:null,valid:!0,message:this.defaultMessage(b,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr("class");return d&&a.each(d.split(" "),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},attributeRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute("type");for(c in a.validator.methods)"required"===c?(d=b.getAttribute(c),""===d&&(d=!0),d=!!d):d=f.attr(c),/min|max/.test(c)&&(null===g||/number|range|text/.test(g))&&(d=Number(d)),d||0===d?e[c]=d:g===c&&"range"!==g&&(e[c]=!0);return e.maxlength&&/-1|2147483647|524288/.test(e.maxlength)&&delete e.maxlength,e},dataRules:function(b){var c,d,e={},f=a(b);for(c in a.validator.methods)d=f.data("rule"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase()),void 0!==d&&(e[c]=d);return e},staticRules:function(b){var c={},d=a.data(b.form,"validator");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1)return void delete b[d];if(e.param||e.depends){var f=!0;switch(typeof e.depends){case"string":f=!!a(e.depends,c.form).length;break;case"function":f=e.depends.call(c,c)}f?b[d]=void 0!==e.param?e.param:!0:delete b[d]}}),a.each(b,function(d,e){b[d]=a.isFunction(e)?e(c):e}),a.each(["minlength","maxlength"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each(["rangelength","range"],function(){var c;b[this]&&(a.isArray(b[this])?b[this]=[Number(b[this][0]),Number(b[this][1])]:"string"==typeof b[this]&&(c=b[this].replace(/[\[\]]/g,"").split(/[\s,]+/),b[this]=[Number(c[0]),Number(c[1])]))}),a.validator.autoCreateRanges&&(null!=b.min&&null!=b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),null!=b.minlength&&null!=b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b},normalizeRule:function(b){if("string"==typeof b){var c={};a.each(b.split(/\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=void 0!==d?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return"dependency-mismatch";if("select"===c.nodeName.toLowerCase()){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:a.trim(b).length>0},email:function(a,b){return this.optional(b)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)},url:function(a,b){return this.optional(b)||/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},date:function(a,b){/*return this.optional(b)||!/Invalid|NaN/.test(new Date(a).toString())*/ /*customized!!!*/ var check = false,re=new RegExp((typeof(VALIDATE_DATE_MASK)!=='undefined'?VALIDATE_DATE_MASK:'^[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{4}$')),adata,gg,mm,aaaa,xdata;if(re.test(a)){adata=a.split('.');if(adata.length===1){adata=a.split('-');if(adata.length===1){adata=a.split(' ');
994if(adata.length===1){adata=a.split('/');if(adata.length===1){adata=a.split(':');}}}}gg=parseInt(adata[0],10);mm=parseInt(adata[1],10);aaaa=parseInt(adata[2],10);xdata=new Date(aaaa,mm-1,gg,12,0,0,0);if((xdata.getUTCFullYear()===aaaa)&&(xdata.getUTCMonth()===mm-1)&&(xdata.getUTCDate()===gg)){check = true;}else{check = false;}}else{check = false;}return this.optional(b)||check;},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return"dependency-mismatch";if(/[^0-9 \-]+/.test(a))return!1;var c,d,e=0,f=0,g=!1;if(a=a.replace(/\D/g,""),a.length<13||a.length>19)return!1;for(c=a.length-1;c>=0;c--)d=a.charAt(c),f=parseInt(d,10),g&&(f*=2)>9&&(f-=9),e+=f,g=!g;return e%10===0},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||d>=e},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||c>=a},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){a(c).valid()}),b===e.val()},remote:function(b,c,d){if(this.optional(c))return"dependency-mismatch";var e,f,g=this.previousValue(c);return this.settings.messages[c.name]||(this.settings.messages[c.name]={}),g.originalMessage=this.settings.messages[c.name].remote,this.settings.messages[c.name].remote=g.message,d="string"==typeof d&&{url:d}||d,g.old===b?g.valid:(g.old=b,e=this,this.startRequest(c),f={},f[c.name]=b,a.ajax(a.extend(!0,{url:d,mode:"abort",port:"validate"+c.name,dataType:"json",data:f,context:e.currentForm,success:function(d){var f,h,i,j=d===!0||"true"===d;e.settings.messages[c.name].remote=g.originalMessage,j?(i=e.formSubmitted,e.prepareElement(c),e.formSubmitted=i,e.successList.push(c),delete e.invalid[c.name],e.showErrors()):(f={},h=d||e.defaultMessage(c,"remote"),f[c.name]=g.message=a.isFunction(h)?h(b):h,e.invalid[c.name]=!0,e.showErrors(f)),g.valid=j,e.stopRequest(c,j)}},d)),"pending")}}}),a.format=function(){throw"$.format has been deprecated. Please use $.validator.format instead."};var b,c={};a.ajaxPrefilter?a.ajaxPrefilter(function(a,b,d){var e=a.port;"abort"===a.mode&&(c[e]&&c[e].abort(),c[e]=d)}):(b=a.ajax,a.ajax=function(d){var e=("mode"in d?d:a.ajaxSettings).mode,f=("port"in d?d:a.ajaxSettings).port;return"abort"===e?(c[f]&&c[f].abort(),c[f]=b.apply(this,arguments),c[f]):b.apply(this,arguments)}),a.extend(a.fn,{validateDelegate:function(b,c,d){return this.bind(c,function(c){var e=a(c.target);return e.is(b)?d.apply(e,arguments):void 0})}})}); 995/* End */ 996; 997; /* Start:"a:4:{s:4:"full";s:66:"/bitrix/templates/aspro-premier/vendor/js/ripple.js?17745963254702";s:6:"source";s:51:"/bitrix/templates/aspro-premier/vendor/js/ripple.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 998;(function($, document, Math){ 999 $.ripple = function(selector, options) { 1000 1001 var self = this; 1002 1003 var _log = self.log = function() { 1004 if(self.defaults.debug && console && console.log) { 1005 console.log.apply(console, arguments); 1006 } 1007 }; 1008 1009 self.selector = selector; 1010 self.defaults = { 1011 debug: false, 1012 on: 'mousedown', 1013 1014 opacity: 0.4, 1015 color: "auto", 1016 multi: false, 1017 1018 duration: 0.7, 1019 rate: function(pxPerSecond) { 1020 return pxPerSecond; 1021 }, 1022 1023 easing: 'linear' 1024 }; 1025 1026 self.defaults = $.extend({}, self.defaults, options); 1027 1028 var Trigger = function(e) { 1029 1030 var $this = $(this); 1031 var $ripple; 1032 var settings; 1033 1034 $this.addClass('has-ripple'); 1035 1036 // This instances settings 1037 settings = $.extend({}, self.defaults, $this.data()); 1038 1039 // Create the ripple element 1040 if ( settings.multi || (!settings.multi && $this.find(".ripple").length === 0) ) { 1041 $ripple = $("<span></span>").addClass("ripple"); 1042 $ripple.appendTo($this); 1043
1044 _log('Create: Ripple'); 1045 1046 // Set ripple size 1047 if (!$ripple.height() && !$ripple.width()) { 1048 var size = Math.max($this.outerWidth(), $this.outerHeight()); 1049 $ripple.css({ 1050 height: size, 1051 width: size 1052 }); 1053 _log('Set: Ripple size'); 1054 } 1055 1056 // Give the user the ability to change the rate of the animation 1057 // based on element width 1058 if(settings.rate && typeof settings.rate == "function") { 1059 1060 // rate = pixels per second 1061 var rate = Math.round( $ripple.width() / settings.duration ); 1062 1063 // new amount of pixels per second 1064 var filteredRate = settings.rate(rate); 1065 1066 // Determine the new duration for the animation 1067 var newDuration = ( $ripple.width() / filteredRate); 1068 1069 // Set the new duration if it has not changed 1070 if(settings.duration.toFixed(2) !== newDuration.toFixed(2)) { 1071 _log('Update: Ripple Duration', { 1072 from: settings.duration, 1073 to: newDuration 1074 }); 1075 settings.duration = newDuration; 1076 } 1077 } 1078 1079 // Set the color and opacity 1080 var color = (settings.color == "auto") ? $this.css('color') : settings.color; 1081 var css = { 1082 animationDuration: (settings.duration).toString() + 's', 1083 animationTimingFunction: settings.easing, 1084 background: color, 1085 opacity: settings.opacity 1086 }; 1087 1088 _log('Set: Ripple CSS', css); 1089 $ripple.css(css); 1090 } 1091 1092 // Ensure we always have the ripple element 1093 if(!settings.multi) { 1094 _log('Set: Ripple Element'); 1095 $ripple = $this.find(".ripple"); 1096 } 1097 1098 // Kill animation 1099 _log('Destroy: Ripple Animation'); 1100 $ripple.removeClass("ripple-animate"); 1101 1102 1103 // Retrieve coordinates 1104 var x = e.pageX - $this.offset().left - $ripple.width() / 2; 1105 var y = e.pageY - $this.offset().top - $ripple.height() / 2; 1106 1107 /** 1108 * We want to delete the ripple elements if we allow multiple so we dont sacrifice any page 1109 * performance. We don't do this on single ripples because once it has rendered, we only 1110 * need to trigger paints thereafter. 1111 */ 1112 if(settings.multi) { 1113 _log('Set: Ripple animationend event'); 1114 $ripple.one('animationend webkitAnimationEnd oanimationend MSAnimationEnd', function() { 1115 _log('Note: Ripple animation ended'); 1116 _log('Destroy: Ripple'); 1117 $(this).remove(); 1118 }); 1119 } 1120 1121 // Set position and animate 1122 _log('Set: Ripple location'); 1123 _log('Set: Ripple animation'); 1124 $ripple.css({ 1125 top: y + 'px', 1126 left: x + 'px' 1127 }).addClass("ripple-animate"); 1128 }; 1129 1130 $(document).on(self.defaults.on, self.selector, Trigger); 1131 }; 1132})(jQuery, document, Math); 1133 1134/* End */ 1135; 1136; /* Start:"a:4:{s:4:"full";s:72:"/bitrix/templates/aspro-premier/js/detectmobilebrowser.js?17745963262203";s:6:"source";s:57:"/bitrix/templates/aspro-premier/js/detectmobilebrowser.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1137/** 1138 * jQuery.browser.mobile (http://detectmobilebrowser.com/) 1139 * 1140 * jQuery.browser.mobile will be true if the browser is a mobile device 1141 * 1142 **/ 1143(function(a){(jQuery.browser=jQuery.browser||{}).mobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
1143sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))})(navigator.userAgent||navigator.vendor||window.opera); 1144/* End */ 1145; 1146; /* Start:"a:4:{s:4:"full";s:63:"/bitrix/templates/aspro-premier/js/matchMedia.js?17745963261585";s:6:"source";s:48:"/bitrix/templates/aspro-premier/js/matchMedia.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1147/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license */ 1148 1149window.matchMedia || 1150 (window.matchMedia = (function () { 1151 "use strict"; 1152 1153 // For browsers that support matchMedium api such as IE 9 and webkit 1154 var styleMedia = window.styleMedia || window.media; 1155 1156 // For those that don't support matchMedium 1157 if (!styleMedia) { 1158 var style = document.createElement("style"), 1159 script = document.getElementsByTagName("script")[0], 1160 info = null; 1161 1162 style.type = "text/css"; 1163 style.id = "matchmediajs-test"; 1164 1165 script.parentNode.insertBefore(style, script); 1166 1167 // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers 1168 info = ("getComputedStyle" in window && window.getComputedStyle(style, null)) || style.currentStyle; 1169 1170 styleMedia = { 1171 matchMedium: function (media) { 1172 var text = "@media " + media + "{ #matchmediajs-test { width: 1px; } }"; 1173 1174 // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers 1175 if (style.styleSheet) { 1176 style.styleSheet.cssText = text; 1177 } else { 1178 style.textContent = text; 1179 } 1180 1181 // Test if media query is true or false 1182 return info.width === "1px"; 1183 }, 1184 }; 1185 } 1186 1187 return function (media) { 1188 return { 1189 matches: styleMedia.matchMedium(media || "all"), 1190 media: media || "all", 1191 }; 1192 }; 1193 })()); 1194 1195/* End */ 1196; 1197; /* Start:"a:4:{s:4:"full";s:70:"/bitrix/templates/aspro-premier/js/jquery.actual.min.js?17745963261239";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/jquery.actual.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1198/*! Copyright 2012, Ben Lin (http://dreamerslab.com/) 1199 * Licensed under the MIT License (LICENSE.txt). 1200 * 1201 * Version: 1.0.19 1202 * 1203 * Requires: jQuery >= 1.2.3 1204 */ 1205(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a); 1206}else{a(jQuery);}}(function(a){a.fn.addBack=a.fn.addBack||a.fn.andSelf;a.fn.extend({actual:function(b,l){if(!this[b]){throw'$.actual => The jQuery method "'+b+'" you called does not exist'; 1207}var f={absolute:false,clone:false,includeMargin:false,display:"block"};var i=a.extend(f,l);var e=this.eq(0);var h,j;if(i.clone===true){h=function(){var m="position: absolute !important; top: -1000 !important; "; 1208e=e.clone().attr("style",m).appendTo("body");};j=function(){e.remove();};}else{var g=[];var d="";var c;h=function(){c=e.parents().addBack().filter(":hidden"); 1209d+="visibility: hidden !important; display: "+i.display+" !important; ";if(i.absolute===true){d+="position: absolute !important; ";}c.each(function(){var m=a(this); 1210var n=m.attr("style");g.push(n);m.attr("style",n?n+";"+d:d);});};j=function(){c.each(function(m){var o=a(this);var n=g[m];if(n===undefined){o.removeAttr("style"); 1211}else{o.attr("style",n);}});};}h();var k=/(outer)/.test(b)?e[b](i.includeMargin):e[b]();j();return k;}});})); 1212 1213/* End */ 1214; 1215; /* Start:"a:4:{s:4:"full";s:70:"/bitrix/templates/aspro-premier/js/jquery.plugin.min.js?17745963263356";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/jquery.plugin.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1216/*! Simple JavaScript Inheritance 1217 * By John Resig http://ejohn.org/ 1218 * MIT Licensed. 1219 */ 1220!function(){"use strict";var a=!1;window.JQClass=function(){},JQClass.classes={},JQClass.extend=function b(c){function d(){!a&&this._init&&this._init.apply(this,arguments)}var e=this.prototype;a=!0;var f=new this;a=!1;for(var g in c)if("function"==typeof c[g]&&"function"==typeof e[g])f[g]=function(a,b){return function(){var c=this._super;this._super=function(b){return e[a].apply(this,b||[])};var d=b.apply(this,arguments);return this._super=c,d}}(g,c[g]);else if("object"==typeof c[g]&&"object"==typeof e[g]&&"defaultOptions"===g){var h,i=e[g],j=c[g],k={};for(h in i)k[h]=i[h];for(h in j)k[h]=j[h];f[g]=k}else f[g]=c[g];return d.prototype=f,d.prototype.constructor=d,d.extend=b,d}}
1220(),/*! Abstract base class for collection plugins v1.0.2. 1221 Written by Keith Wood (wood.keith{at}optusnet.com.au) December 2013. 1222 Licensed under the MIT license (http://keith-wood.name/licence.html). */ 1223function($){"use strict";function camelCase(a){return a.replace(/-([a-z])/g,function(a,b){return b.toUpperCase()})}JQClass.classes.JQPlugin=JQClass.extend({name:"plugin",defaultOptions:{},regionalOptions:{},deepMerge:!0,_getMarker:function(){return"is-"+this.name},_init:function(){$.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions[""]||{});var a=camelCase(this.name);$[a]=this,$.fn[a]=function(b){var c=Array.prototype.slice.call(arguments,1),d=this,e=this;return this.each(function(){if("string"==typeof b){if("_"===b[0]||!$[a][b])throw"Unknown method: "+b;var f=$[a][b].apply($[a],[this].concat(c));if(f!==d&&void 0!==f)return e=f,!1}else $[a]._attach(this,b)}),e}},setDefaults:function(a){$.extend(this.defaultOptions,a||{})},_attach:function(a,b){if(a=$(a),!a.hasClass(this._getMarker())){a.addClass(this._getMarker()),b=$.extend(this.deepMerge,{},this.defaultOptions,this._getMetadata(a),b||{});var c=$.extend({name:this.name,elem:a,options:b},this._instSettings(a,b));a.data(this.name,c),this._postAttach(a,c),this.option(a,b)}},_instSettings:function(a,b){return{}},_postAttach:function(a,b){},_getMetadata:function(elem){try{var data=elem.data(this.name.toLowerCase())||"";data=data.replace(/(\\?)'/g,function(a,b){return b?"'":'"'}).replace(/([a-zA-Z0-9]+):/g,function(a,b,c){var d=data.substring(0,c).match(/"/g);return d&&d.length%2!==0?b+":":'"'+b+'":'}).replace(/\\:/g,":"),data=$.parseJSON("{"+data+"}");for(var key in data)if(data.hasOwnProperty(key)){var value=data[key];"string"==typeof value&&value.match(/^new Date\(([-0-9,\s]*)\)$/)&&(data[key]=eval(value))}return data}catch(a){return{}}},_getInst:function(a){return $(a).data(this.name)||{}},option:function(a,b,c){a=$(a);var d=a.data(this.name),e=b||{};return!b||"string"==typeof b&&"undefined"==typeof c?(e=(d||{}).options,e&&b?e[b]:e):void(a.hasClass(this._getMarker())&&("string"==typeof b&&(e={},e[b]=c),this._optionsChanged(a,d,e),$.extend(d.options,e)))},_optionsChanged:function(a,b,c){},destroy:function(a){a=$(a),a.hasClass(this._getMarker())&&(this._preDestroy(a,this._getInst(a)),a.removeData(this.name).removeClass(this._getMarker()))},_preDestroy:function(a,b){}}),$.JQPlugin={createPlugin:function(a,b){"object"==typeof a&&(b=a,a="JQPlugin"),a=camelCase(a);var c=camelCase(b.name);JQClass.classes[c]=JQClass.classes[a].extend(b),new JQClass.classes[c]}}}(jQuery); 1224/* End */ 1225; 1226; /* Start:"a:4:{s:4:"full";
1226s:61:"/bitrix/templates/aspro-premier/js/jqModal.js?177459632611182";s:6:"source";s:45:"/bitrix/templates/aspro-premier/js/jqModal.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1227/* 1228 * jqModal - Minimalist Modaling with jQuery 1229 * 1230 * Copyright (c) 2007-2014 Brice Burgess @iceburg_net 1231 * Dual licensed under the MIT and GPL licenses: 1232 * http://www.opensource.org/licenses/mit-license.php 1233 * http://www.gnu.org/licenses/gpl.html 1234 * 1235 * $Version: 1.0.2 (2014.04.10 +r19) 1236 * Requires: jQuery 1.2.3+ 1237 */ 1238 1239(function($) { 1240 1241 /** 1242 * Initialize a set of elements as "modals". Modals typically are popup dialogs, 1243 * notices, modal windows, &c. 1244 * 1245 * @name jqm 1246 * @param options user defined options, augments defaults. 1247 * @type jQuery 1248 * @cat Plugins/jqModal 1249 */ 1250 1251 $.fn.jqm=function(options){ 1252 1253 var o = $.extend({}, $.jqm.params, options); 1254 1255 return this.each(function(){ 1256 var e = $(this), 1257 jqm = $(this).data('jqm'); 1258 1259 if(!jqm) jqm = {ID: I++}; 1260 1261 // add/extend options to modal and mark as initialized 1262 e.data('jqm',$.extend(o,jqm)).addClass('jqm-init'); 1263 1264 // ... Attach events to trigger showing of this modal 1265 o.trigger&&$(this).jqmAddTrigger(o.trigger); 1266 }); 1267 }; 1268 1269 1270 /** 1271 * Matching modals will have their jqmShow() method fired by attaching a 1272 * onClick event to elements matching `trigger`. 1273 * 1274 * @name jqmAddTrigger 1275 * @param trigger a selector String, jQuery collection of elements, or a DOM element. 1276 */ 1277 $.fn.jqmAddTrigger=function(trigger){ 1278 return this.each(function(){ 1279 if(!addTrigger($(this), 'jqmShow', trigger)) 1280 err("jqmAddTrigger must be called on initialized modals") 1281 }); 1282 }; 1283 1284 1285 /** 1286 * Matching modals will have their jqmHide() method fired by attaching an 1287 * onClick event to elements matching `trigger`. 1288 * 1289 * @name jqmAddClose 1290 * @param trigger a selector String, jQuery collection of elements, or a DOM element. 1291 */ 1292 $.fn.jqmAddClose=function(trigger){ 1293 return this.each(function(){ 1294 if(!addTrigger($(this), 'jqmHide', trigger)) 1295 err("jqmAddClose must be called on initialized modals") 1296 }); 1297 }; 1298 1299 1300 /** 1301 * Open matching modals (if not shown) 1302 */ 1303 $.fn.jqmShow=function(trigger){ 1304 return this.each(function(){ !this._jqmShown&&show($(this), trigger); }); 1305 }; 1306 1307 /** 1308 * Close matching modals 1309 */ 1310 $.fn.jqmHide=function(trigger){ 1311 return this.each(function(){ this._jqmShown&&hide($(this), trigger); }); 1312 }; 1313 1314 1315 // utility functions 1316 1317 var 1318 err = function(msg){ 1319 if(window.console && window.console.error) window.console.error(msg); 1320 1321 1322 }, show = function(e, t){ 1323 /** 1324 * e = modal element (as jQuery object) 1325 * t = triggering element 1326 * 1327 * o = options 1328 * z = z-index of modal 1329 * v = overlay element (as jQuery object) 1330 * h = hash (for jqModal <= r15 compatibility) 1331 */ 1332 1333 var o = e.data('jqm'), 1334 t = t || window.event, 1335 z = (parseInt(e.css('z-index'))); 1336 1337 if(o.noOverlay === undefined || (o.noOverlay !== undefined && !o.noOverlay) ) { 1338 if( isNaN(z) ) { 1339 if( window['lastJqmZindex'] ) { 1340 window['lastJqmZindex'] = z = window['lastJqmZindex'] + 2; 1341 } else { 1342 z = 3000; 1343 } 1344 } 1345 window['lastJqmZindex'] = z; 1346 var v = $('<div></div>').addClass(o.overlayClass).css({height:'100%',width:'100%',position:'fixed',left:0,top:0,'z-index':z-1,opacity:o.overlay/100}); 1347 e.css('z-index',z); 1348 } else { 1349 var v = $(''); 1350 e.css('z-index',2999); 1351 } 1352 1353 // maintain legacy "hash" construct 1354 var h = {w: e, c: o, o: v, t: t}; 1355 1356 1357 if(o.ajax){ 1358 var target = o.target || e, 1359 url = o.ajax; 1360 1361 target = (typeof target == 'string') ? $(target,e) : $(target); 1362 if(url.substr(0,1) == '@') url = $(t).attr(url.substring(1)); 1363 1364 // Load the Ajax Content (and once loaded); 1365 // Fire the onLoad callback (if exists), 1366 // Attach closing events to elements inside the modal that match the closingClass, 1367 // and Execute the jqModal default Open Callback 1368 target.html(o.ajaxText).load(url,function(){ 1369 o.onLoad && o.onLoad.call(this,h); 1370 open(h); 1371 }); 1372 } 1373 else { open(h); } 1374 1375 }, hide = function(e, t){ 1376 /** 1377 * e = modal element (as jQuery object) 1378 * t = triggering element 1379 * 1380 * o = options
1381 * h = hash (for jqModal <= r15 compatibility) 1382 */ 1383 1384 var o = e.data('jqm'), 1385 t = t || window.event, 1386 1387 // maintain legacy "hash" construct 1388 h = {w: e, c: o, o: e.data('jqmv'), t: t}; 1389 1390 close(h); 1391 1392 }, onShow = function(hash){ 1393 // onShow callback. Responsible for showing a modal and overlay. 1394 // return false to stop opening modal. 1395 1396 // hash object; 1397 // w: (jQuery object) The modal element 1398 // c: (object) The modal's options object 1399 // o: (jQuery object) The overlay element 1400 // t: (DOM object) The triggering element 1401 1402 // display the overlay (prepend to body) if not disabled 1403 1404 // prevent double click 1405 if( hash.w[0]._jqmShown ) 1406 return false; 1407 1408 if(hash.c.overlay > 0) 1409 hash.o.prependTo('#popup_iframe_wrapper'); 1410 1411 // make modal visible 1412 hash.w.show(); 1413 1414 // call focusFunc (attempts to focus on first input in modal) 1415 $.jqm.focusFunc(hash.w); 1416 1417 return true; 1418 1419 1420 }, onHide = function(hash){ 1421 // onHide callback. Responsible for hiding a modal and overlay. 1422 // return false to stop closing modal. 1423 1424 // hash object; 1425 // w: (jQuery object) The modal element 1426 // c: (object) The modal's options object 1427 // o: (jQuery object) The overlay element 1428 // t: (DOM object) The triggering element 1429 1430 // hide modal and if overlay, remove overlay. 1431 hash.w.hide() && hash.o && hash.o.remove(); 1432 1433 return true; 1434 1435 1436 }, addTrigger = function(e, key, trigger){ 1437 // addTrigger: Adds a jqmShow or jqmHide (key) for a modal (e) 1438 // all elements that match trigger string (trigger)\ 1439 1440 // return false if e is not an initialized modal element 1441 if(!e.data('jqm')) return false; 1442 1443 return $(trigger).each(function(){ 1444 // register modal to trigger elements 1445 this[key] = this[key] || []; 1446 this[key].push(e); 1447 1448 }).click(function(){ 1449 1450 var trigger = this; 1451 1452 // foreadh modal registered to this trigger, call jqmShow || 1453 // jqmHide (key) on modal passing trigger element (e) 1454 $.each(this[key], function(i, e){ e[key](trigger); }); 1455 1456 // stop trigger click event from bubbling 1457 return false; 1458 }); 1459 1460 1461 }, open = function(h){ 1462 // open: executes the onOpen callback + performs common tasks if successful 1463 1464 // transform legacy hash into new var shortcuts 1465 var e = h.w, 1466 v = h.o, 1467 o = h.c; 1468 1469 // execute onShow callback 1470 if(o.onShow(h) !== false){ 1471 // mark modal as shown 1472 e[0]._jqmShown = true; 1473 1474 // if modal dialog 1475 // 1476 // Bind the Keep Focus Function [F] if no other Modals are open (!A[0]) + 1477 // Add this modal to the opened modals stack (A) for nested modal support 1478 // 1479 // else, close dialog when overlay is clicked 1480 if(o.modal){ !A[0]&&F('bind'); A.push(e); } 1481 else e.jqmAddClose(v); 1482 1483 // Attach closing events to elements inside the modal that match the closingClass 1484 o.closeClass&&e.jqmAddClose($('.' + o.closeClass,e)); 1485 1486 // IF toTop is true and overlay exists; 1487 // Add placeholder element <span id="jqmP#ID_of_modal"/> before modal to 1488 // remember it's position in the DOM and move it to a child of the body tag (after overlay) 1489 o.toTop&&v&&e.before('<span id="jqmP'+o.ID+'"></span>').insertAfter(v); 1490 1491 // remember overlay (for closing function) 1492 e.data('jqmv',v); 1493 } 1494 1495 1496 }, close = function(h){ 1497 // close: executes the onHide callback + performs common tasks if successful 1498 1499 // transform legacy hash into new var shortcuts 1500 var e = h.w, 1501 v = h.o, 1502 o = h.c; 1503 1504 // execute onShow callback 1505 if(o.onHide(h) !== false){ 1506 // mark modal as !shown 1507 e[0]._jqmShown = false; 1508 1509 // If modal, remove from modal stack. 1510 // If no modals in modal stack, unbind the Keep Focus Function 1511 if(o.modal){A.pop();!A[0]&&F('unbind');} 1512 1513 // IF toTop was passed and an overlay exists; 1514 // Move modal back to its "remembered" position. 1515 o.toTop&&v&&$('#jqmP'+o.ID).after(e).remove(); 1516 } 1517 1518 1519 }, F = function(t){ 1520 // F: The Keep Focus Function (for modal: true dialos) 1521 // Binds or Unbinds (t) the Focus Examination Function (X) to keypresses and clicks 1522 1523 $(document)[t]("keypress keydown mousedown",X); 1524 1525 1526 }, X = function(e){ 1527 // X: The Focus Examination Function (for modal: true dialogs) 1528 1529 var modal = $(e.target).data('jqm') || $(e.target).parents('.jqm-init:first').data('jqm'), 1530 activeModal = A[A.length-1].data('jqm'); 1531 1532 // allow bubbling if event target is within active modal dialog 1533 if(modal && modal.ID == activeModal.ID) return true; 1534 1535 // else, trigger focusFunc (focus on first input element and halt bubbling) 1536 return $.jqm.focusFunc(activeModal); 1537 }, 1538 1539 I = 0, // modal ID increment (for nested modals) 1540 A = []; // array of active modals (used to lock interactivity to appropriate modal) 1541 1542 1543 // $.jqm, overridable defaults 1544 $.jqm = { 1545 /** 1546 * default options 1547 * 1548 * (Integer) overlay - [0-100] Translucency percentage (opacity) of the body covering overlay. Set to 0 for NO overlay, and up to 100 for a 100% opaque overlay. 1549 * (String) overlayClass - Applied to the body covering overlay. Useful for controlling overlay look (tint, background-image, &c) with CSS. 1550 * (String) closeClass - Children of the modal element matching `closeClass` will fire the onHide event (to close the modal). 1551 * (Mixed) trigger - Matching elements will fire the onShow event (to display the modal). Trigger can be a selector String, a jQuery collection of elements, a DOM element, or a False boolean. 1552 * (String) ajax - URL to load content from via an AJAX request. False to disable ajax. If ajax begins with a "@", the URL is extracted from the attribute of the triggering element (e.g. use '@data-url' for; <a href="#" class="jqModal" data-url="modal.html">...) 1553 * (Mixed) target - Children of the modal element to load the aja
1553x response into. If false, modal content will be overwritten by ajax response. Useful for retaining modal design. 1554 * Target may be a selector string, jQuery collection of elements, or a DOM element -- and MUST exist as a child of the modal element. 1555 * (String) ajaxText - Text shown while waiting for ajax return. Replaces HTML content of `target` element. 1556 * (Boolean) modal - If true, user interactivity will be locked to the modal window until closed. 1557 * (Boolean) toTop - If true, modal will be posistioned as a first child of the BODY element when opened, and its DOM posistion restored when closed. Useful for overcoming z-Index container issues. 1558 * (Function) onShow - User defined callback function fired when modal opened. 1559 * (Function) onHide - User defined callback function fired when modal closed. 1560 * (Function) onLoad - User defined callback function fired when ajax content loads. 1561 */ 1562 params: { 1563 overlay: 50, 1564 overlayClass: 'jqmOverlay', 1565 closeClass: 'jqmClose', 1566 trigger: '.jqModal', 1567 ajax: false, 1568 target: false, 1569 ajaxText: '', 1570 modal: false, 1571 toTop: false, 1572 onShow: onShow, 1573 onHide: onHide, 1574 onLoad: false 1575 }, 1576 1577 // focusFunc is fired when a modal is shown, or when interaction occurs outside 1578 // a modal enabled dialog. Passed the modal element. 1579 focusFunc: function(e) { $(':input:visible:first',e).focus(); return false; } 1580 }; 1581 1582})( jQuery ); 1583/* End */ 1584; 1585; /* Start:"a:4:{s:4:"full";s:64:"/bitrix/templates/aspro-premier/js/scrollTabs.js?177459632614271";s:6:"source";s:48:"/bitrix/templates/aspro-premier/js/scrollTabs.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1586InitTabsScroll = function () { 1587 $(".arrow_scroll:not(.arrow_scroll_init)").scrollTab(); 1588}; 1589 1590ResizeScrollTabs = function () { 1591 var scrollTabs = $(".arrow_scroll_init"); 1592 1593 if (scrollTabs.length) { 1594 scrollTabs.each(function (i, scrollTab) { 1595 var _scrollTab = $(scrollTab); 1596 _scrollTab.data("scrollTabOptions").resize(); 1597 }); 1598 } 1599}; 1600 1601$(document).ready(function () { 1602 InitTabsScroll(); 1603}); 1604 1605$(window).on("resize", function () { 1606 if (window.scrollTabsTimeout !== undefined) { 1607 clearTimeout(window.scrollTabsTimeout); 1608 } 1609 1610 window.scrollTabsTimeout = setTimeout(ResizeScrollTabs, 20); 1611}); 1612 1613$.fn.scrollTab = function (options) { 1614 function _scrollTab(element, options) { 1615 var _scrollTab = $(element); 1616 var tabs_wrapper = _scrollTab.find(options.tabs_wrapper); 1617 if (tabs_wrapper === undefined || !tabs_wrapper.length) return false; 1618 1619 var tabs = tabs_wrapper.find(options.tab_item); 1620 if (!tabs.length) return false; 1621 1622 var arrow_svg = 1623 '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8">' + 1624 '<rect width="12" height="8" fill="#333" fill-opacity="0" />' + 1625 '<path d="M1015.69,507.693a0.986,0.986,0,0,1-1.4,0l-4.31-4.316-4.3,4.316a0.993,0.993,0,0,1-1.4-1.408l4.99-5.009a1.026,1.026,0,0,1,1.43,0l4.99,5.009A0.993,0.993,0,0,1,1015.69,507.693Z" fill="#333" transform="translate(-1004 -501)"/>' + 1626 "</svg>"; 1627 var arrows_wrapper = 1628 '<div class="arrows_wrapper">' + 1629 '<div class="arrow arrow_left colored_theme_hover_text fill-dark-light-block">' + 1630 arrow_svg + 1631 "</div>" + 1632 '<div class="arrow arrow_right colored_theme_hover_text fill-dark-light-block">' + 1633 arrow_svg + 1634 "</div>" + 1635 "</div>"; 1636 1637 var arrows = $(arrows_wrapper).insertAfter(tabs_wrapper); 1638 var arrow_left = arrows.find(".arrow_left"); 1639 var arrow_right = arrows.find(".arrow_right"); 1640 1641 var thisOoptions = $.extend({}, options); 1642 1643 if (thisOoptions.outer_wrapper) { 1644 thisOoptions.outer_wrapper_node = $(thisOoptions.outer_wrapper); 1645 } 1646 1647 thisOoptions.scrollTab = _scrollTab; 1648 thisOoptions.wrapper = tabs_wrapper; 1649 thisOoptions.tabs = tabs; 1650 thisOoptions.arrows = {}; 1651 thisOoptions.arrows.wrapper = arrows; 1652 thisOoptions.arrows.arrow_left = arrow_left; 1653 thisOoptions.arrows.arrow_right = arrow_right; 1654 1655 if ( 1656 thisOoptions.linked_tabs !== undefined && 1657 thisOoptions.linked_tabs.length && 1658 thisOoptions.linked_tabs.data("scrollTabOptions") !== undefined 1659 ) { 1660 thisOoptions.linked_options = thisOoptions.linked_tabs.data("scrollTabOptions"); 1661 thisOoptions.linked_options.linked_options = thisOoptions; 1662 } 1663 1664 if (options.arrows_css) { 1665 thisOoptions.arrows.arrow_left.css(options.arrows_css); 1666 thisOoptions.arrows.arrow_right.css(options.arrows_css); 1667 } 1668 1669 thisOoptions.initTabs = function () { 1670 thisOoptions.wrapperBounds = thisOoptions.wrapper[0].getBoundingClientRect(); 1671 thisOoptions.scrollBounds = thisOoptions.scrollTab[0].getBoundingClientRect(); 1672 if (thisOoptions.offset) { 1673 thisOoptions.scrollBounds.width += thisOoptions.offset; 1674 } 1675 elements = $(thisOoptions.tabs); 1676 if (elements.length) { 1677 thisOoptions.firstTabBound = elements[0].getBoundingClientRect().left; 1678 thisOoptions.lastTabBound = elements[elements.length - 1].getBoundingClientRect().right; 1679 } 1680 thisOoptions.minTranslate = 1681 thisOoptions.wrapperBounds.right < thisOoptions.lastTabBound 1682 ? thisOoptions.wrapperBounds.right - thisOoptions.lastTabBound - 3 1683 : 0; 1684 thisOoptions.disabled = 1685 thisOoptions.lastTabBound - thisOoptions.wrapperBounds.left <= thisOoptions.scrollBounds.width; 1686 }; 1687 1688 thisOoptions.wrapper.css({ 1689 "white-space": "nowrap", 1690 "min-width": "auto", 1691 overflow: "visible", 1692 "z-index": "1", 1693 });
1694 thisOoptions.scrollTab.css({ 1695 overflow: "hidden", 1696 position: "relative", 1697 }); 1698 1699 thisOoptions.checkArrows = function (translate) { 1700 if (translate === undefined) { 1701 translate = thisOoptions.translate; 1702 } 1703 // if (!translate && thisOoptions.maxTranslate === thisOoptions.minTranslate) { 1704 // return; 1705 // } 1706 if (thisOoptions.disabled) { 1707 thisOoptions.arrows.arrow_left.addClass("disabled"); 1708 thisOoptions.arrows.arrow_right.addClass("disabled"); 1709 } else { 1710 if (translate >= thisOoptions.maxTranslate) { 1711 thisOoptions.arrows.arrow_left.addClass("disabled"); 1712 thisOoptions.arrows.arrow_right.removeClass("disabled"); 1713 } else if (translate <= thisOoptions.minTranslate) { 1714 thisOoptions.arrows.arrow_right.addClass("disabled"); 1715 thisOoptions.arrows.arrow_left.removeClass("disabled"); 1716 } else { 1717 thisOoptions.arrows.arrow_left.removeClass("disabled"); 1718 thisOoptions.arrows.arrow_right.removeClass("disabled"); 1719 } 1720 } 1721 }; 1722 1723 thisOoptions.directScroll = function (distance, delay, step) { 1724 if (delay === undefined) { 1725 delay = 5; 1726 } 1727 clearInterval(thisOoptions.timerMoveDirect); 1728 var newTranslate = thisOoptions.translate + distance; 1729 1730 if (newTranslate > thisOoptions.maxTranslate) { 1731 newTranslate = thisOoptions.maxTranslate; 1732 } else if (newTranslate < thisOoptions.minTranslate) { 1733 newTranslate = thisOoptions.minTranslate; 1734 } 1735 var tmpTranslate = thisOoptions.translate; 1736 thisOoptions.translate = newTranslate; 1737 1738 if (delay == 0) { 1739 thisOoptions.translate = newTranslate; 1740 thisOoptions.wrapper.css({ 1741 transform: "translateX(" + thisOoptions.translate + "px)", 1742 }); 1743 } else { 1744 if (step === undefined) { 1745 step = 1; 1746 } 1747 thisOoptions.timerMoveDirect = setInterval(function () { 1748 thisOoptions.wrapper.css({ 1749 transform: "translateX(" + tmpTranslate + "px)", 1750 }); 1751 1752 if ((distance < 0 && tmpTranslate <= newTranslate) || (distance > 0 && tmpTranslate >= newTranslate)) { 1753 thisOoptions.initTabs(); 1754 clearInterval(thisOoptions.timerMoveDirect); 1755 } 1756 1757 if (tmpTranslate < newTranslate) { 1758 tmpTranslate += step; 1759 } else { 1760 tmpTranslate -= step; 1761 } 1762 }, delay); 1763 } 1764 1765 thisOoptions.checkArrows(newTranslate); 1766 }; 1767 1768 thisOoptions.addArrowsEvents = function () { 1769 thisOoptions.arrows.arrow_right.on("mouseenter", function () { 1770 thisOoptions.arrows.arrow_left.removeClass("disabled"); 1771 thisOoptions.timerMoveLeft = setInterval(function () { 1772 if (thisOoptions.translate < thisOoptions.minTranslate) { 1773 clearInterval(thisOoptions.timerMoveLeft); 1774 thisOoptions.arrows.arrow_right.addClass("disabled"); 1775 } else { 1776 thisOoptions.translate -= thisOoptions.translateSpeed; 1777 thisOoptions.wrapper.css({ 1778 transform: "translateX(" + thisOoptions.translate + "px)", 1779 }); 1780 } 1781 }, 10); 1782 }); 1783 1784 thisOoptions.arrows.arrow_right.on("mouseleave", function () { 1785 clearInterval(thisOoptions.timerMoveLeft); 1786 }); 1787 1788 thisOoptions.arrows.arrow_right.on("click", function () { 1789 thisOoptions.directScroll(-thisOoptions.directTranslate); 1790 thisOoptions.arrows.arrow_left.removeClass("disabled"); 1791 }); 1792 1793 thisOoptions.arrows.arrow_right.on("touchend", function () { 1794 setTimeout(function () { 1795 clearInterval(thisOoptions.timerMoveLeft); 1796 }, 1); 1797 }); 1798 1799 thisOoptions.arrows.arrow_left.on("mouseenter", function () { 1800 thisOoptions.arrows.arrow_right.removeClass("disabled"); 1801 thisOoptions.timerMoveRight = setInterval(function () { 1802 if (thisOoptions.translate >= thisOoptions.maxTranslate) { 1803 clearInterval(thisOoptions.timerMoveRight); 1804 thisOoptions.arrows.arrow_left.addClass("disabled"); 1805 } else { 1806 thisOoptions.translate += thisOoptions.translateSpeed; 1807 thisOoptions.wrapper.css({
1808 transform: "translateX(" + thisOoptions.translate + "px)", 1809 }); 1810 } 1811 }, 10); 1812 }); 1813 1814 thisOoptions.arrows.arrow_left.on("mouseleave", function () { 1815 clearInterval(thisOoptions.timerMoveRight); 1816 }); 1817 1818 thisOoptions.arrows.arrow_left.on("click", function () { 1819 thisOoptions.directScroll(thisOoptions.directTranslate); 1820 thisOoptions.arrows.arrow_right.removeClass("disabled"); 1821 }); 1822 1823 thisOoptions.arrows.arrow_left.on("touchend", function () { 1824 setTimeout(function () { 1825 clearInterval(thisOoptions.timerMoveRight); 1826 }, 1); 1827 }); 1828 }; 1829 1830 thisOoptions.addTabsEvents = function () { 1831 thisOoptions.tabs.on("click", function () { 1832 var leftScrollBound = thisOoptions.scrollBounds.left; 1833 var rightScrollBound = thisOoptions.scrollBounds.right; 1834 1835 var tabBounds = this.getBoundingClientRect(); 1836 var leftTabScrollBound = tabBounds.left - thisOoptions.arrows.arrow_width; 1837 var rightTabScrollBound = tabBounds.right + thisOoptions.arrows.arrow_width; 1838 1839 if (leftTabScrollBound < leftScrollBound) { 1840 thisOoptions.directScroll(leftScrollBound - leftTabScrollBound, 1, 2); 1841 } else if (rightTabScrollBound > rightScrollBound) { 1842 thisOoptions.directScroll(rightScrollBound - rightTabScrollBound, 1, 2); 1843 } 1844 1845 thisOoptions.activeTab = $(this); 1846 1847 if (thisOoptions.linked_options !== undefined) { 1848 var this_index = $(this).index(); 1849 var linked_tab = $(thisOoptions.linked_options.tabs[this_index]); 1850 var linked_tabs = { 1851 leftScrollBound: thisOoptions.linked_options.scrollBounds.left, 1852 rightScrollBound: thisOoptions.linked_options.scrollBounds.right, 1853 tabBounds: linked_tab[0].getBoundingClientRect(), 1854 }; 1855 if (linked_tabs.tabBounds.left < linked_tabs.leftScrollBound) { 1856 thisOoptions.linked_options.directScroll( 1857 linked_tabs.leftScrollBound - 1858 linked_tabs.tabBounds.left + 1859 thisOoptions.linked_options.arrows.arrow_width + 1860 1, 1861 0 1862 ); 1863 } else if (linked_tabs.tabBounds.right > linked_tabs.rightScrollBound) { 1864 thisOoptions.linked_options.directScroll( 1865 linked_tabs.rightScrollBound - 1866 linked_tabs.tabBounds.right - 1867 thisOoptions.linked_options.arrows.arrow_width - 1868 1, 1869 0 1870 ); 1871 } 1872 1873 thisOoptions.linked_options.activeTab = linked_tab; 1874 } 1875 }); 1876 }; 1877 1878 thisOoptions.addWrapperEvents = function () { 1879 thisOoptions.wrapper.on("touchstart", function (event) { 1880 thisOoptions.touch.posPrev = event.originalEvent.changedTouches[0].pageX; 1881 clearInterval(thisOoptions.timerMoveRight); 1882 clearInterval(thisOoptions.timerMoveLeft); 1883 clearInterval(thisOoptions.timerMoveDirect); 1884 }); 1885 1886 thisOoptions.wrapper.on("touchmove", function (event) { 1887 thisOoptions.touch.posCurrent = event.originalEvent.changedTouches[0].pageX - thisOoptions.touch.posPrev; 1888 thisOoptions.directScroll(thisOoptions.touch.posCurrent, 0); 1889 thisOoptions.touch.posPrev = event.originalEvent.changedTouches[0].pageX; 1890 }); 1891 }; 1892 1893 thisOoptions.resize = function () { 1894 if (thisOoptions.onBeforeResize && typeof thisOoptions.onBeforeResize == "function") { 1895 thisOoptions.onBeforeResize(thisOoptions); 1896 } 1897 1898 if (thisOoptions.onResize && typeof thisOoptions.onResize == "function") { 1899 thisOoptions.onResize(thisOoptions); 1900 } 1901 1902 if (thisOoptions.translate < thisOoptions.minTranslate) { 1903 thisOoptions.directScroll(thisOoptions.minTranslate - thisOoptions.translate); 1904 } else if (thisOoptions.translate > thisOoptions.maxTranslate) { 1905 thisOoptions.directScroll(thisOoptions.maxTranslate - thisOoptions.translate); 1906 } 1907 1908 if (thisOoptions.activeTab !== undefined && thisOoptions.activeTab.length) { 1909 var activeTabBounds = thisOoptions.activeTab[0].getBoundingClientRect(); 1910 if (activeTabBounds.left < thisOoptions.scrollBounds.left) { 1911 thisOoptions.directScroll(thisOoptions.scrollBounds.left - activeTabBounds.left); 1912 } else if (activeTabBounds.right > thisOoptions.scrollBounds.right) { 1913 thisOoptions.directScroll(thisOoptions.scrollBounds.right - activeTabBounds.right); 1914 } 1915 } 1916 1917 thisOoptions.initTabs();
1918 thisOoptions.checkArrows(); 1919 1920 if (thisOoptions.onAfterResize && typeof thisOoptions.onAfterResize == "function") { 1921 thisOoptions.onAfterResize(thisOoptions); 1922 } 1923 }; 1924 1925 _scrollTab.data("scrollTabOptions", thisOoptions); 1926 _scrollTab.data("scrollTabOptions").addArrowsEvents(); 1927 _scrollTab.data("scrollTabOptions").addTabsEvents(); 1928 _scrollTab.data("scrollTabOptions").addWrapperEvents(); 1929 _scrollTab.addClass("arrow_scroll_init").addClass("swipeignore"); 1930 if (arrow_right !== undefined && arrow_right.length) { 1931 thisOoptions.arrows.arrow_width = thisOoptions.arrows.arrow_right[0].getBoundingClientRect().width; 1932 } 1933 _scrollTab.data("scrollTabOptions").resize(); 1934 delete thisOoptions; 1935 } 1936 1937 var options = $.extend( 1938 { 1939 translate: 1, 1940 translateSpeed: 2, 1941 directTranslate: 150, 1942 maxTranslate: 0, 1943 touch: {}, 1944 arrows_css: false, 1945 tabs_wrapper: ".nav-tabs", 1946 tab_item: "> li", 1947 onResize: false, 1948 outer_wrapper: "", 1949 width_grow: 9, 1950 offset: 0, 1951 }, 1952 options 1953 ); 1954 1955 var el = $(this); 1956 1957 if (el.hasClass("arrow_scroll_init")) return false; 1958 1959 el.each(function (i, scrollTab) { 1960 _scrollTab(scrollTab, options); 1961 }); 1962}; 1963 1964/* End */ 1965; 1966; /* Start:"a:4:{s:4:"full";s:75:"/bitrix/templates/aspro-premier/js/conditional/file-input.js?17745963261272";s:6:"source";s:60:"/bitrix/templates/aspro-premier/js/conditional/file-input.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 1967const fileInputInit = function (message, reviews = 'N') { 1968 BX.Aspro.Loader.addExt('uniform').then(() => { 1969 $("input[type=file]:not('.uniform-ignore')").uniform({ 1970 fileButtonHtml: BX.message("JS_FILE_BUTTON_NAME"), 1971 fileDefaultHtml: message 1972 }); 1973 1974 $(document).on("change", "input[type=file]", function () { 1975 if ($(this).val()) { 1976 $(this).closest(".uploader").addClass("files_add"); 1977 $(this).valid(); 1978 } else { 1979 $(this).closest(".uploader").removeClass("files_add"); 1980 } 1981 }); 1982 1983 BX.bindDelegate(document, 'click', {class: 'add_file'}, function() { 1984 if (!this.closest('.form')) return; 1985 1986 const index = $(this).closest(".input").find("input[type=file]").length + 1; 1987 1988 if (reviews === 'Y') { 1989 $('<input type="file" class="form-control inputfile" tabindex="3" id="comment_images_n' + index + '" name="comment_images[]" value="" />').insertBefore(this); 1990 } else { 1991 $('<input type="file" id="POPUP_FILE' + index + '" name="FILE_n' + index + '" class="inputfile" value="" />').inserBefore(this); 1992 } 1993 1994 $("input[type=file]:not('.uniform-ignore')").uniform({ 1995 fileButtonHtml: BX.message("JS_FILE_BUTTON_NAME"), 1996 fileDefaultHtml: message, 1997 }); 1998 }); 1999 }) 2000} 2001 2002/* End */ 2003; 2004; /* Start:"a:4:{s:4:"full";s:70:"/bitrix/templates/aspro-premier/js/autoload/accordion.js?1774596326853";s:6:"source";s:56:"/bitrix/templates/aspro-premier/js/autoload/accordion.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2005BX.Aspro.Utils.readyDOM(() => { 2006 $(".panel-collapse").on("show.bs.collapse", function () { 2007 $(this).parent().toggleClass("opened"); 2008 2009 const $accordionHead = $(this).prev(); 2010 if ($accordionHead.hasClass("accordion-head") && !$accordionHead.hasClass("accordion-head--visual-only")) { 2011 $accordionHead.removeClass("accordion-close"); 2012 $accordionHead.addClass("accordion-open"); 2013 } 2014 }); 2015 2016 $(".panel-collapse").on("hide.bs.collapse", function () { 2017 const $accordionHead = $(this).prev(); 2018 if ($accordionHead.hasClass("accordion-head") && !$accordionHead.hasClass("accordion-head--visual-only")) { 2019 $accordionHead.removeClass("accordion-open"); 2020 $accordionHead.addClass("accordion-close"); 2021 } 2022 }); 2023 2024 $(".panel-collapse").on("hidden.bs.collapse", function () { 2025 $(this).parent().toggleClass("opened"); 2026 }); 2027}); 2028 2029/* End */ 2030; 2031; /* Start:"a:4:{s:4:"full";s:70:"/bitrix/templates/aspro-premier/js/autoload/controls.js?17745963263659";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/autoload/controls.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2032$(document).ready(function () { 2033 // dropdown-select 2034 $(document).on("click", ".dropdown-select--with-dropdown .dropdown-select__title", function () { 2035 if (event.target.closest(".delete_filter")) return; 2036 2037 var _this = $(this), 2038 menu = _this.parent().find("> .dropdown-select__list"); 2039 if (!_this.hasClass("clicked") && menu.length) { 2040 _this.addClass("clicked"); 2041 2042 _this.toggleClass("opened", menu.is(":hidden")); 2043 2044 menu.stop().slideToggle(100, function () { 2045 _this.removeClass("clicked"); 2046 }); 2047 } 2048 }); 2049 2050 // close select 2051 $("html, body").on("mousedown", function (e) { 2052 if (typeof e.target.className == "string" && e.target.className.indexOf("adm") < 0) { 2053 e.stopPropagation(); 2054 $(".dropdown-select .dropdown-select__title.opened").each(function () { 2055 if ($(this).closest("#mobilefilter").length || $(this).hasClass("no-html-close")) return; 2056 var $select = $(this).closest(".dropdown-select"); 2057 if ($select.data("visible_by_class") && $($select.data("visible_by_class")).is(":visible")) return; 2058 2059 if($(e.target).hasClass('no-html-close')) return; 2060 2061 if ($select.closest(".bx_filter").length) { 2062 if (!$select.closest(".bx_filter").is(":visible")) return; 2063 } 2064 2065 if (!$(e.target).closest($select).length) { 2066 $(this).click(); 2067 } 2068 }); 2069 } 2070 }); 2071 2072 // hint 2073 $(document).on("click", ".hint", function (e) { 2074 let _this = $(this); 2075 let target = e.target; 2076 2077 e.stopImmediatePropagation(); 2078 if (!(target.tagName === "A")) { 2079 e.preventDefault(); 2080 } 2081 2082 if (!target.closest(".tooltip")) { 2083 _this.toggleClass("active").find(".tooltip").stop().slideToggle(200); 2084 } 2085 }); 2086}); 2087 2088// gallery switch 2089$(document).on("click", ".gallery-view_switch__icons:not(.active)", function () { 2090 var $this = $(this); 2091 var animationTime = 200; 2092 var bSmall = $this.hasClass("gallery-view_switch__icons--small"); 2093 var $switchGallery = $this.closest(".gallery-view_switch"); 2094 var $bigGallery = ( 2095 $this.closest(".big_gallery").length ? $this.closest(".big_gallery") : $this.closest(".gallery") 2096 ).find(".gallery-big"); 2097 var $bigGalleryCounter = $switchGallery.find(".gallery-view_switch__count-wrapper--big"); 2098 var $smallGallery = ( 2099 $this.closest(".big_gallery").length ? $this.closest(".big_gallery") : $this.closest(".gallery") 2100 ).find(".gallery-small"); 2101 var $smallGalleryCounter = $switchGallery.find(".gallery-view_switch__count-wrapper--small"); 2102 var $toHideGallery = bSmall ? $bigGallery : $smallGallery; 2103 var $toHideGalleryCounter = bSmall ? $bigGalleryCounter : $smallGalleryCounter; 2104 var $toShowGallery = bSmall ? $smallGallery : $bigGallery; 2105 var $toShowGalleryCounter = bSmall ? $smallGalleryCounter : $bigGalleryCounter; 2106 2107 $this.addClass("active"); 2108 $this.siblings(".active").removeClass("active"); 2109 2110 $toHideGalleryCounter.fadeOut(animationTime, function () { 2111 $toShowGalleryCounter.fadeIn(animationTime); 2112 }); 2113 2114 $toHideGallery.fadeOut(animationTime, function () { 2115 $toShowGallery.fadeIn(animationTime); 2116 }); 2117}); 2118 2119// reload captcha 2120$(document).on("click", ".refresh", function (e) { 2121 var captcha = $(this).parents(".captcha-row"); 2122 e.preventDefault(); 2123 $.ajax({ 2124 url: arAsproOptions["SITE_DIR"] + "ajax/captcha.php", 2125 }).done(function (text) { 2126 captcha.find("input[name=captcha_sid],input[name=captcha_code]").val(text); 2127 captcha.find("img").attr("src", "/bitrix/tools/captcha.php?captcha_sid=" + text);
2128 captcha.find("input[name=captcha_word]").val("").removeClass("error"); 2129 captcha.find(".captcha_input").removeClass("error").find(".error").remove(); 2130 }); 2131}); 2132 2133/* End */ 2134; 2135; /* Start:"a:4:{s:4:"full";s:69:"/bitrix/templates/aspro-premier/js/autoload/counter.js?17787654376516";s:6:"source";s:54:"/bitrix/templates/aspro-premier/js/autoload/counter.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2136$(document).on("click", ".counter__action--plus", function () { 2137 //for corporate basket 2138 if ($(this).closest(".counter--basket").length) return; 2139 2140 let $input = $(this).closest(".counter").find(".counter__count"); 2141 let currentValue = $input.val(); 2142 2143 let $buyBlock = $(this).closest(".buy_block"); 2144 let $toCart = $buyBlock.find(".item-action .to_cart"); 2145 2146 let isFloatRatio = $toCart.data("float_ratio"); 2147 let ratio = $toCart.data("ratio"); 2148 ratio = isFloatRatio ? parseFloat(ratio) : parseInt(ratio, 10); 2149 if (isFloatRatio) { 2150 ratio = 2151 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2152 } 2153 2154 let maxValue = parseFloat($toCart.data("max") ? $toCart.data("max") : $(this).data("max") ? $(this).data("max") : 0); 2155 2156 let newValue = isFloatRatio ? parseFloat(currentValue) : parseInt(currentValue, 10); 2157 newValue += ratio; 2158 if (isFloatRatio) { 2159 newValue = 2160 Math.round(newValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 2161 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2162 } 2163 2164 if (parseFloat(maxValue) > 0 && newValue > maxValue) { 2165 newValue = maxValue; 2166 } 2167 2168 $input.val(newValue); 2169 $input.change(); 2170}); 2171 2172$(document).on("click", ".counter__action--minus", function () { 2173 //for corporate basket 2174 if ($(this).closest(".counter--basket").length) return; 2175 2176 let $input = $(this).closest(".counter").find(".counter__count"); 2177 let currentValue = $input.val(); 2178 2179 let $buyBlock = $(this).closest(".buy_block"); 2180 let $toCart = $buyBlock.find(".item-action .to_cart"); 2181 2182 let isFloatRatio = $toCart.data("float_ratio"); 2183 let ratio = $toCart.data("ratio"); 2184 ratio = isFloatRatio ? parseFloat(ratio) : parseInt(ratio, 10); 2185 if (isFloatRatio) { 2186 ratio = 2187 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2188 } 2189 if (ratio <= 0) { 2190 ratio = 1; 2191 } 2192 2193 let minValue = parseFloat($toCart.data("min") ? $toCart.data("min") : $(this).data("min") ? $(this).data("min") : 0); 2194 if (minValue < ratio) { 2195 minValue = ratio; 2196 } 2197 2198 let newValue = isFloatRatio ? parseFloat(currentValue) : parseInt(currentValue, 10); 2199 newValue -= ratio; 2200 if (isFloatRatio) { 2201 newValue = 2202 Math.round(newValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 2203 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2204 } 2205 2206 if (parseFloat(minValue) > 0 && newValue < minValue) { 2207 // remove from basket 2208 newValue = 0; 2209 } 2210 2211 $input.val(newValue); 2212 $input.change(); 2213}); 2214 2215$(document).on("focus", ".counter__count", function (e) { 2216 $(this).addClass("focus"); 2217}); 2218 2219$(document).on("blur", ".counter__count", function (e) { 2220 $(this).removeClass("focus"); 2221}); 2222 2223let timerChangeCounterValue = false; 2224$(document).on("change", ".counter__count", function (e) { 2225 //for corporate basket 2226 if ($(this).closest(".counter--basket").length) return; 2227 2228 let $buyBlock = $(this).closest(".buy_block"); 2229 let $toCart = $buyBlock.find(".item-action .to_cart"); 2230 let itemAction = JItemAction.factory($toCart[0]); 2231 2232 let currentValue = $(this).val(); 2233 // remove from cart 2234 if (parseFloat(currentValue) === 0) { 2235 itemAction.state = false; 2236 itemAction.resetQuantity(); 2237 2238 BX.onCustomEvent("onCounterGoals", [ 2239 { 2240 goal: itemAction.getStateGoalCode(false), 2241 params: { 2242 id: itemAction.node.getAttribute("data-id"), 2243 }, 2244 }, 2245 ]); 2246 2247 // remove notice 2248 if (typeof JNoticeSurface === "function") { 2249 JNoticeSurface.get().node.remove(); 2250 } 2251 2252 return itemAction.updateState(true); 2253 } 2254 2255 let isFloatRatio = $toCart.data("float_ratio"); 2256 let ratio = $toCart.data("ratio"); 2257 ratio = isFloatRatio ? parseFloat(ratio) : parseInt(ratio, 10); 2258 2259 let diff = currentValue % ratio; 2260 2261 if (isFloatRatio) { 2262 ratio = 2263 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2264 2265 if ( 2266 Math.round(diff * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / arAsproOptions.JS_ITEM_CLICK.precisionFactor == 2267 ratio 2268 ) { 2269 diff = 0; 2270 } 2271 } 2272 2273 if ($(this).hasClass("focus")) { 2274 intCount = 2275 Math.round( 2276 Math.round((currentValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / ratio) / 2277 arAsproOptions.JS_ITEM_CLICK.precisionFactor 2278 ) || 1; 2279 if (parseFloat(currentValue) !== 0) { 2280 currentValue = intCount <= 1 ? ratio : intCount * ratio; 2281 } 2282 currentValue = 2283 Math.round(currentValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 2284 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 2285 } 2286 2287 let maxValue = $toCart.data("max") 2288 ? $toCart.data("max") 2289 : $(this).closest(".counter").find(".counter__action--plus").data("max"); 2290 if (maxValue && parseFloat(maxValue) > 0) { 2291 if (currentValue > parseFloat(maxValue)) { 2292 currentValue = parseFloat(maxValue); 2293 } 2294 } 2295 2296 let minValue = 2297 typeof $toCart.data("min") !== "undefined" 2298 ? $toCart.data("min") 2299 : $(this).closest(".counter").find(".counter__action--minus").data("min"); 2300 if (minValue && parseFloat(minValue) > 0) { 2301 if (currentValue < parseFloat(minValue)) { 2302 currentValue = parseFloat(minValue); 2303 } 2304 } 2305 2306 if (timerChangeCounterValue) { 2307 clearTimeout(timerChangeCounterValue); 2308 } 2309 2310 if (currentValue < ratio) { 2311 currentValue = ratio; 2312 } else if (!parseFloat(currentValue)) { 2313 currentValue = 1; 2314 } 2315 2316 $toCart.attr("data-quantity", currentValue); 2317
2318 const nodeActionButtonConfig = this.closest(".js-config-btns[data-btn-config]"); 2319 if (nodeActionButtonConfig) { 2320 const nodeListActionButtonConfig = document.querySelectorAll( 2321 `[data-btn-config='${nodeActionButtonConfig.dataset.btnConfig}']` 2322 ); 2323 if (nodeListActionButtonConfig.length) { 2324 nodeListActionButtonConfig.forEach((nodeActionButtonConfig) => { 2325 const nodeActionButtonCounter = nodeActionButtonConfig.querySelector(".counter__count"); 2326 if (nodeActionButtonCounter !== this) { 2327 nodeActionButtonCounter.value = currentValue; 2328 } 2329 }); 2330 } 2331 } 2332 2333 itemAction.abortPrevRequest(); 2334 timerChangeCounterValue = setTimeout(function () { 2335 itemAction.updateState(); 2336 timerChangeCounterValue = false; 2337 }, 700); 2338 2339 BX.onCustomEvent("onCounterProductAction", [ 2340 { 2341 type: "change", 2342 params: { 2343 id: $(this), 2344 value: currentValue, 2345 }, 2346 }, 2347 ]); 2348 2349 if ($(this).closest(".complect-block").length && typeof setNewPriceComplect === "function") { 2350 setNewPriceComplect(); 2351 } 2352}); 2353 2354/* End */ 2355; 2356; /* Start:"a:4:{s:4:"full";s:78:"/bitrix/templates/aspro-premier/js/autoload/dropdown-product.js?17745963261447";s:6:"source";s:63:"/bitrix/templates/aspro-premier/js/autoload/dropdown-product.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2357/*hover top products*/ 2358$(document).on("mouseenter", ".header-favorite, .header-compare", function () { 2359 if (window.matchMedia("(min-width: 992px)").matches) { 2360 let _this = $(this); 2361 let hover_block = _this.find(".product-dropdown-hover-block"); 2362 let type = _this.hasClass('header-compare') ? 'compare' : 'favorite'; 2363 let obParams = { 2364 'type': type 2365 } 2366 if (!hover_block.hasClass("loaded")) { 2367 BX.Aspro.Utils.readyDOM(() => { 2368 BX.Aspro.Loader.add({ 2369 ext: 'dropdown-products', 2370 }) 2371 }); 2372 BX.ajax.runAction('aspro:premier.DropdownProducts.show', { 2373 data: { 2374 params: obParams 2375 }, 2376 }).then( 2377 response => { 2378 let dropdown = $(`.${type}-dropdown`); 2379 dropdown.addClass('loaded'); 2380 dropdown.html(response.data.html); 2381 }, 2382 response => { 2383 console.log('error'); 2384 } 2385 ); 2386 } 2387 } 2388}); 2389 2390$(document).on("click", ".product-dropdown-hover-block .dropdown-product-action.remove", function () { 2391 let _this = $(this); 2392 let itemAction = JItemAction.factory(this); 2393 itemAction.state = false; 2394 2395 _this.closest(".dropdown-product__item").fadeOut(400, () => { 2396 let parentWrap = _this.closest(".product-dropdown-hover-block"); 2397 let visibleItems = parentWrap.find(".dropdown-product__item:visible"); 2398 if (!visibleItems.length) { 2399 parentWrap.html(''); 2400 } 2401 }); 2402 2403 itemAction.updateState(); 2404}); 2405/**/ 2406/* End */ 2407; 2408; /* Start:"a:4:{s:4:"full";s:76:"/bitrix/templates/aspro-premier/js/autoload/section-toggle.js?17745963261832";s:6:"source";
2408s:61:"/bitrix/templates/aspro-premier/js/autoload/section-toggle.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2409BX.Aspro.Utils.readyDOM(() => { 2410 const $sectionToggleLabel = $("section.toggle > label"); 2411 2412 const previewParentClosedHeight = 25; 2413 let previewParentAnimateHeight = 0; 2414 2415 $sectionToggleLabel.prepend($("<i />").addClass("fa fa-plus")); 2416 $sectionToggleLabel.prepend($("<i />").addClass("fa fa-minus")); 2417 $("section.toggle.active > p").addClass("preview-active"); 2418 $("section.toggle.active > div.toggle-content").slideDown(350, function () {}); 2419 2420 $sectionToggleLabel.click(function (e) { 2421 const $parentSection = $(this).parent(); 2422 const $parentWrapper = $(this).parents("div.toogle"); 2423 2424 if ( 2425 $parentWrapper.hasClass("toogle-accordion") 2426 && typeof e.originalEvent !== "undefined" 2427 ) { 2428 $parentWrapper.find("section.toggle.active > label").trigger("click"); 2429 } 2430 2431 $parentSection.toggleClass("active"); 2432 2433 // preview paragraph 2434 let $previewParent; 2435 if ($parentSection.find("> p").get(0)) { 2436 $previewParent = $parentSection.find("> p"); 2437 $previewParent.css("height", "auto"); 2438 $previewParent.css("height", $previewParent.css("height")); 2439 2440 previewParentAnimateHeight = $previewParent.css("height"); 2441 } 2442 2443 // content 2444 const $toggleContent = $parentSection.find("> div.toggle-content"); 2445 if ($parentSection.hasClass("active")) { 2446 $($previewParent).animate( 2447 { 2448 height: previewParentAnimateHeight, 2449 }, 2450 350, 2451 function () { 2452 $(this).addClass("preview-active"); 2453 } 2454 ); 2455 $toggleContent.slideDown(350, function () {}); 2456 } else { 2457 $($previewParent).animate( 2458 { 2459 height: previewParentClosedHeight, 2460 }, 2461 350, 2462 function () { 2463 $(this).removeClass("preview-active"); 2464 } 2465 ); 2466 $toggleContent.slideUp(350, function () {}); 2467 } 2468 }); 2469}); 2470 2471/* End */ 2472; 2473; /* Start:"a:4:{s:4:"full";s:74:"/bitrix/templates/aspro-premier/js/autoload/tabs-history.js?17745963261664";s:6:"source";s:59:"/bitrix/templates/aspro-premier/js/autoload/tabs-history.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2474var newHash = location.hash; 2475if ("onhashchange" in window) { 2476 $(window).bind("hashchange", function () { 2477 var newHash = location.hash; 2478 2479 if (newHash) { 2480 if ("scrollRestoration" in history) { 2481 history.scrollRestoration = "manual"; 2482 } 2483 2484 if ($('.tabs.tabs-history .nav li:not(.hidden) a[href="' + newHash + '"]').length) { 2485 $('.tabs.tabs-history .nav a[href="' + newHash + '"]').trigger("click"); 2486 2487 var $block = $(newHash); 2488 if ($block.length) { 2489 if ($block.closest(".tab-pane").length) { 2490 var offset = -206; 2491 if (typeof arAsproOptions !== "undefined") { 2492 offset = window.matchMedia("(max-width:991px)").matches 2493 ? arAsproOptions.THEME.HEADER_MOBILE_FIXED !== "Y" || 2494 arAsproOptions.THEME.HEADER_MOBILE_SHOW !== "ALWAYS" 2495 ? -187 + 62 2496 : -187 2497 : arAsproOptions.THEME.TOP_MENU_FIXED !== "Y" 2498 ? -206 + 81 2499 : -206; 2500 } 2501 2502 $block.data("offset", offset); 2503 } 2504 2505 scrollToBlock(newHash); 2506 } else { 2507 if ($(".ordered-block .tabs").length) { 2508 var content_offset = $(".ordered-block .tabs").offset(); 2509 $("html, body").animate({ scrollTop: content_offset.top - 90 }, 400); 2510 } 2511 } 2512 } else { 2513 scrollToBlock(newHash); 2514 } 2515 } 2516 }); 2517} 2518 2519$(document).on("click", ".tabs.tabs-history a[data-toggle=tab]", function (e) { 2520 var $this = $(e.target); 2521 2522 if (typeof history !== "undefined" && $this.attr("href")) { 2523 history.replaceState(null, null, $this.attr("href")); 2524 } 2525}); 2526 2527/* End */ 2528; 2529; /* Start:"a:4:{s:4:"full";s:62:"/bitrix/templates/aspro-premier/js/general.js?1778765438133855";s:6:"source";s:45:"/bitrix/templates/aspro-premier/js/general.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 2530getRandomInt = function (min, max) { 2531 return Math.floor(Math.random() * (max - min)) + min; 2532}; 2533 2534ShowOverlay = function () { 2535 $('<div class="jqmOverlay waiting"></div>').appendTo("body"); 2536}; 2537 2538function throttle(f, t) { 2539 let throttled, saveThis, saveArgs; 2540 const wrapper = function () { 2541 if (throttled) { 2542 saveThis = this; 2543 saveArgs = arguments; 2544 return; 2545 } 2546 throttled = true; 2547 f.apply(this, arguments); 2548 setTimeout(function () { 2549 throttled = false;
2550 if (saveArgs) { 2551 wrapper.apply(saveThis, saveArgs); 2552 saveThis = saveArgs = null; 2553 } 2554 }, t); 2555 }; 2556 return wrapper; 2557} 2558 2559function debounce(f, t) { 2560 return function (args) { 2561 var previousCall = this.lastCall; 2562 this.lastCall = Date.now(); 2563 if (previousCall && this.lastCall - previousCall <= t) { 2564 clearTimeout(this.lastCallTimer); 2565 } 2566 this.lastCallTimer = setTimeout(function () { 2567 f(args); 2568 }, t); 2569 }; 2570} 2571 2572window.addEventListener("popstate", function (event) { 2573 if (typeof startActions == "function") { 2574 setTimeout(startActions, 500); 2575 } 2576}); 2577 2578$(document).on("change", ".uploader input[type=file]", function () { 2579 if (!$(this).next().length || !$(this).next().hasClass("resetfile")) { 2580 $( 2581 '<span class="resetfile" title="' + 2582 BX.message("CLEAR_FILE") + 2583 '"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9 1.00161L1 9M9 9L1 1" stroke="#999999" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg></span>' 2584 ).insertAfter($(this)); 2585 } 2586}); 2587 2588$(document).on("click", ".uploader .resetfile", function () { 2589 var $uploader = $(this).closest(".uploader"); 2590 $uploader.removeClass("error files_add"); 2591 $uploader.find(".error").hide(); 2592 2593 if ($uploader.next().hasClass("error")) { 2594 $uploader.next().hide(); 2595 } 2596 2597 var $input = $uploader.find("input[type=file]"); 2598 $input.val(""); 2599 $.uniform.update($input); 2600 2601 $(this).remove(); 2602}); 2603 2604$(document).on("click", ".region-close", function () { 2605 $(".confirm_region").fadeOut(); 2606}); 2607 2608headerInit = function (targetBlock) { 2609 var header = $("header"); 2610 if (header.length) { 2611 setTimeout(function () { 2612 CheckTopMenuDotted(); 2613 CheckTopMenuDotted(); 2614 }, 1); 2615 } 2616}; 2617 2618typeofExt = function (item) { 2619 const _toString = Object.prototype.toString; 2620 return _toString.call(item).slice(8, -1).toLowerCase(); 2621}; 2622 2623HideOverlay = function () { 2624 $(".jqmOverlay").detach(); 2625 CloseMobileSearch(); 2626 CloseMobilePhone(); 2627}; 2628 2629if (!BX.Aspro.Utils.isFunction("pauseYmObserver")) { 2630 // pause ya metrika webvisor MutationObserver callback (DOM indexer) 2631 // use before insert html with some animation 2632 pauseYmObserver = function () { 2633 if ( 2634 typeof MutationObserver === "function" && 2635 typeof MutationObserver.observers === "object" && 2636 typeof MutationObserver.observers.ym === "object" 2637 ) { 2638 if (typeof pauseYmObserver.cnt === "undefined") { 2639 pauseYmObserver.cnt = 0; 2640 } 2641 2642 ++pauseYmObserver.cnt; 2643 2644 if (!MutationObserver.observers.ym.paused) { 2645 MutationObserver.observers.ym.pause(); 2646 } 2647 } 2648 }; 2649} 2650 2651if (!BX.Aspro.Utils.isFunction("resumeYmObserver")) { 2652 // resume ya metrika webvisor MutationObserver callback 2653 // use when animation finished 2654 resumeYmObserver = function () { 2655 if ( 2656 typeof MutationObserver === "function" && 2657 typeof MutationObserver.observers === "object" && 2658 typeof MutationObserver.observers.ym === "object" 2659 ) { 2660 if (typeof pauseYmObserver.cnt === "undefined") { 2661 pauseYmObserver.cnt = 1; 2662 } 2663 2664 pauseYmObserver.cnt -= pauseYmObserver.cnt > 0 ? 1 : 0; 2665 2666 if (!pauseYmObserver.cnt && MutationObserver.observers.ym.paused) { 2667 MutationObserver.observers.ym.resume(); 2668 } 2669 } 2670 }; 2671} 2672 2673if (!BX.Aspro.Utils.isFunction("declOfNum")) { 2674 declOfNum = function (number, titles) { 2675 var cases = [2, 0, 1, 1, 1, 2]; 2676 return number + " " + titles[number % 100 > 4 && number % 100 < 20 ? 2 : cases[Math.min(number % 10, 5)]]; 2677 }; 2678} 2679 2680if (!BX.Aspro.Utils.isFunction("togglePropBlock")) { 2681 togglePropBlock = function (className) { 2682 var all_props_block = className.closest(".bx_filter_parameters_box_container").find(".hidden_values"); 2683 if (all_props_block.length && (className.hasClass("inner_text") || className.hasClass("expand_block"))) { 2684 if (all_props_block.is(":visible")) { 2685 className.text(BX.message("FILTER_EXPAND_VALUES")); 2686 all_props_block.hide(); 2687 } else { 2688 className.text(BX.message("FILTER_HIDE_VALUES")); 2689 all_props_block.show(); 2690 } 2691 } 2692 }; 2693} 2694 2695$.fn.iAppear = function (callback, options) { 2696 if (typeof $.fn.iAppear.useObserver === "undefined") { 2697 $.fn.iAppear.useObserver = typeof window["IntersectionObserver"] === "function"; 2698 2699 if (!$.fn.iAppear.useObserver && typeof $.fn.appear !== "function") { 2700 $.fn.iAppear.queue = []; 2701 BX.loadScript(arAsproOptions.SITE_TEMPLATE_PATH + "/vendor/js/jquery.appear.js", function () { 2702 if (typeof $.fn.iAppear.queue === "object") { 2703 $.fn.iAppear.queue.forEach(function (queueItem) { 2704 $(queueItem.items).iAppear(queueItem.callback, queueItem.options); 2705 }); 2706 } 2707 }); 2708 2709 return; 2710 } 2711 } 2712 2713 if ($.fn.iAppear.useObserver) { 2714 var options = $.extend( 2715 { 2716 root: null, 2717 rootMargin: "150px 0px 150px 0px", 2718 threshold: 0.0, 2719 }, 2720 options 2721 ); 2722 2723 $(this).each(function (i, appearBlock) { 2724 var observer = new IntersectionObserver(function (entries, observer) {
2725 entries.forEach(function (element) { 2726 if (element.intersectionRatio > 0 && !element.target.dataset.iAppeared) { 2727 element.target.dataset.iAppeared = true; 2728 2729 if (typeof callback === "function") { 2730 callback.call(element.target); 2731 } 2732 } 2733 }); 2734 }, options); 2735 2736 observer.observe(appearBlock); 2737 }); 2738 } else { 2739 if (typeof $.fn.appear !== "function") { 2740 if ($(this).length) { 2741 $.fn.iAppear.queue.push({ 2742 items: this, 2743 callback: callback, 2744 options: options, 2745 }); 2746 } 2747 2748 return; 2749 } else { 2750 if ($(this).length) { 2751 $(this).each(function (i, appearBlock) { 2752 $(appearBlock).appear(function () { 2753 if (typeof callback === "function") { 2754 callback.call(appearBlock); 2755 } 2756 }, options); 2757 }); 2758 } 2759 } 2760 } 2761}; 2762 2763$.fn.mCustomScrollbarDeferred = function (config) { 2764 $(this).addClass("scroll-init"); 2765 $(this).data("plugin-options", config); 2766 2767 if ($(this).hasClass("destroyed")) { 2768 return; 2769 } 2770 2771 $(this).hover( 2772 function (e) { 2773 var $this = $(this); 2774 if (!$this.hasClass("mCustomScrollbar") && !$(this).hasClass("destroyed")) { 2775 $this.data( 2776 "scrollTimer", 2777 setTimeout(function () { 2778 $this.mCustomScrollbar(config); 2779 $this.off("touchstart touchmove touchend mousewheel mouseenter mouseleave"); 2780 }, 200) 2781 ); 2782 } 2783 }, 2784 function (e) { 2785 clearTimeout($(this).data("scrollTimer")); 2786 } 2787 ); 2788 2789 $(this).on("touchstart touchmove", function (e) { 2790 var $this = $(this); 2791 if (!$this.hasClass("mCustomScrollbar") && !$(this).hasClass("destroyed")) { 2792 $this.mCustomScrollbar(config); 2793 } 2794 2795 var $scrollContainer = $this.find(">.mCustomScrollBox>.mCSB_container"); 2796 if ($scrollContainer.length) { 2797 var touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0]; 2798 2799 var newTouch = new Touch({ 2800 identifier: 42, 2801 target: $scrollContainer[0], 2802 clientX: touch.clientX, 2803 clientY: touch.clientY, 2804 screenX: touch.screenX, 2805 screenY: touch.screenY, 2806 pageX: touch.pageX, 2807 pageY: touch.pageY, 2808 radiusX: 1, 2809 radiusY: 1, 2810 }); 2811 2812 var newEvent = new TouchEvent(e.type, { 2813 cancelable: true, 2814 bubbles: false, 2815 composed: true, 2816 touches: [newTouch], 2817 targetTouches: [newTouch], 2818 changedTouches: [newTouch], 2819 }); 2820 2821 $scrollContainer[0].dispatchEvent(newEvent); 2822 } 2823 }); 2824 2825 $(this).on("touchend", function (e) { 2826 $(this).off("touchstart touchmove touchend mousewheel mouseenter mouseleave"); 2827 }); 2828 2829 if ($.event.special.mousewheel) { 2830 $(this).on("mousewheel", function (e) { 2831 var $this = $(this); 2832 if (!$this.hasClass("mCustomScrollbar") && !$(this).hasClass("destroyed")) { 2833 $this.mCustomScrollbar(config); 2834 $this.off("touchstart touchmove touchend mousewheel mouseenter mouseleave"); 2835 } 2836 }); 2837 } 2838}; 2839 2840InitScrollBar = function (el, initOptions) { 2841 var block; 2842 if (typeof el === "undefined") { 2843 block = $(".srollbar-custom:not(.mobile-scroll):not(.scroll-init)"); 2844 } else { 2845 block = el.filter(":not(.scroll-init)"); 2846 } 2847 var blockParent = $(".scrollbar-parent"); 2848 2849 if ( 2850 (block.length || blockParent.length) && 2851 !isMobile 2852 // (!isMobile || window.matchMedia('(min-width:992px)').matches) 2853 ) { 2854 block.addClass("scroll-init"); 2855 2856 var options, 2857 defaults = { 2858 mouseWheel: { 2859 scrollAmount: 150, 2860 preventDefault: true, 2861 }, 2862 }; 2863 if (block.length) { 2864 var config = $.extend({}, defaults, options, block.data("plugin-options"), initOptions); 2865 } else if (blockParent.length) { 2866 var config = $.extend({}, defaults, options, blockParent.data("plugin-options"), initOptions); 2867 } 2868 2869 config.callbacks = { 2870 onScroll: function () { 2871 if ($(this).find(".mCSB_buttonLeft").hasClass("disabled")) 2872 $(this).find(".mCSB_buttonLeft").removeClass("disabled"); 2873 if ($(this).find(".mCSB_buttonRight").hasClass("disabled")) 2874 $(this).find(".mCSB_buttonRight").removeClass("disabled"); 2875 }, 2876 onTotalScrollBack: function () { 2877 $(this).find(".mCSB_buttonLeft").addClass("disabled"); 2878 }, 2879 onTotalScroll: function () { 2880 $(this).find(".mCSB_buttonRight").addClass("disabled"); 2881 }, 2882 onInit: function () { 2883 $(this).find(".mCSB_buttonLeft").addClass("disabled"); 2884 }, 2885 }; 2886 2887 // if (block.length) { 2888 // block.filter(":not(.scroll-deferred)").mCustomScrollbar(config); 2889 // block.filter(".scroll-deferred").mCustomScrollbarDeferred(config); 2890 // } 2891 2892 // if (blockParent.length) { 2893 // blockParent.find(".scroll-deferred").mCustomScrollbarDeferred(config); 2894 // } 2895 } 2896}; 2897 2898/*InitCustomScrollBar = function (el) { 2899 var block; 2900 if (typeof el === "undefined") { 2901 block = $(".scrollbar:not(.mobile-scroll):not(.scroll-init)"); 2902 } else { 2903 block = el.filter(":not(.scroll-init)"); 2904 } 2905 2906 if (block.length) { 2907 block.addClass("scroll-init"); 2908 2909 var options, 2910 defaults = { 2911 effect: "fadeIn", 2912 effectTime: 300, 2913 threshold: 0, 2914 // threshold: 30 2915 }; 2916 2917 var config = $.extend({}, defaults, options, block.data("plugin-options")); 2918 2919 block.filter(":not(.scroll-deferred)").mCustomScrollbar(config); 2920 block.filter(".scroll-deferred").mCustomScrollbarDeferred(config); 2921 } 2922}; 2923*/ 2924/* slider gallery for fancybox */ 2925const InitFancyboxThumbnailsGallery = function (instance) { 2926 const bUseThumbs = instance.group[0].opts.$orig[0].classList.contains("fancy-thumbs") && instance.group.length > 1; 2927 2928 if (bUseThumbs) instance.Thumbs.show(); 2929 else return; 2930 2931 if ( 2932 bUseThumbs && 2933 $(".fancybox-thumbs") && 2934 $(".fancybox-thumbs__list a").length > 1 && 2935 !$(".fancybox-thumbs .swiper").length && 2936 typeof initSwiperSlider === "function" 2937 ) { 2938 instance.Thumbs.$grid.find(".fancybox-thumbs__list a").each(function (i, el) { 2939 $(el).css("background-image", 'url("' + location.origin + encodeURI(instance.group[i].src) + '")'); 2940 }); 2941 const SLIDER_RESIZE_BREAKPOINT = 600; 2942 const $thumbsContainer = $(".fancybox-thumbs"); 2943 const $swiperSlides = $(".fancybox-thumbs__list a"); 2944 const $swiperWrapper = $(".fancybox-thumbs__list"); 2945 const sliderDirection = window.innerWidth >= SLIDER_RESIZE_BREAKPOINT ? "vertical" : "horizontal"; 2946 2947 const options = { 2948 centerInsufficientSlides: true, 2949 direction: sliderDirection, 2950 mousewheelControl: true, 2951 slidesPerView: "auto", 2952 spaceBetween: 16, 2953 watchSlidesProgress: true, 2954 }; 2955 2956 options.navigation = { 2957 nextEl: ".fancybox-thumbs__wrapper .swiper-button-next", 2958 prevEl: ".fancybox-thumbs__wrapper .swiper-button-prev", 2959 }; 2960
2961 $(".fancybox-container").addClass("detail-gallery-big--vertical with-slider"); 2962 $(".fancybox-inner").addClass("with-slider"); 2963 $thumbsContainer.addClass("detail-gallery-big-slider-thumbs with-slider"); 2964 $thumbsContainer.wrapInner( 2965 `<div class='fancybox-thumbs__wrapper gallery-slider-thumb__container'> 2966 <div class='swiper slider-solution' data-plugin-options='` + 2967 JSON.stringify(options) + 2968 `'/> 2969 </div>` 2970 ); 2971 const $swiperContainerWrapper = $(".fancybox-thumbs__wrapper"); 2972 2973 $swiperContainerWrapper.append( 2974 `<div class='gallery-slider-thumb-button gallery-slider-thumb-button--next slider-nav slider-nav--no-auto-hide swiper-button-next'> 2975 <i class='svg inline stroke-dark-light'><svg width='16' height='16'><use xlink:href='` + 2976 arAsproOptions.SITE_TEMPLATE_PATH + 2977 `/images/svg/arrows.svg#down-lg'></use></svg></i> 2978 </div>` 2979 ); 2980 $swiperContainerWrapper.prepend( 2981 `<div class='gallery-slider-thumb-button gallery-slider-thumb-button--prev slider-nav slider-nav--no-auto-hide swiper-button-prev'> 2982 <i class='svg inline stroke-dark-light'><svg width='16' height='16'><use xlink:href='` + 2983 arAsproOptions.SITE_TEMPLATE_PATH + 2984 `/images/svg/arrows.svg#up-lg'></use></svg></i> 2985 </div>` 2986 ); 2987 2988 $swiperWrapper.addClass("fancybox-thumb__list--slider-wrapper swiper-wrapper gallery__thumb-wrapper"); 2989 $swiperSlides.addClass("swiper-slide gallery__item gallery__item--thumb rounded-x pointer"); 2990 $swiperSlides.each(function () { 2991 const background = $(this) 2992 .css("background-image") 2993 .replace(/url\(|\"|\'|\)/g, ""); 2994 $(this).css("background-image", ""); 2995 $(this).wrapInner("<img src='" + background + "' class='rounded-x' alt='' title='' />"); 2996 }); 2997 2998 initSwiperSlider(); 2999 3000 const swiper = $thumbsContainer.find(".swiper").data("swiper"); 3001 swiper.slideTo(instance.curPos, 10); 3002 swiper.on("resize", function () { 3003 if (window.innerWidth >= SLIDER_RESIZE_BREAKPOINT && options.direction === "horizontal") { 3004 options.direction = "vertical"; 3005 swiper.changeDirection(options.direction, false); 3006 swiper.update(); 3007 } else if (window.innerWidth < SLIDER_RESIZE_BREAKPOINT && options.direction === "vertical") { 3008 options.direction = "horizontal"; 3009 swiper.changeDirection(options.direction, false); 3010 swiper.update(); 3011 } 3012 }); 3013 } 3014}; 3015/** */ 3016InitFancyBox = function () { 3017 if (typeof $.fn.fancybox !== "function") { 3018 return; 3019 } 3020 3021 if (!$(".fancy").length) { 3022 return; 3023 } 3024 3025 $(".fancy").fancybox({ 3026 padding: [40, 40, 64, 40], 3027 openEffect: "fade", 3028 closeEffect: "fade", 3029 nextEffect: "fade", 3030 prevEffect: "fade", 3031 opacity: true, 3032 tpl: { 3033 closeBtn: 3034 '<span title="' + 3035 BX.message("FANCY_CLOSE") + 3036 '" class="fancybox-item fancybox-close inline svg"><svg class="svg svg-close" width="14" height="14" viewBox="0 0 14 14"><path data-name="Rounded Rectangle 568 copy 16" d="M1009.4,953l5.32,5.315a0.987,0.987,0,0,1,0,1.4,1,1,0,0,1-1.41,0L1008,954.4l-5.32,5.315a0.991,0.991,0,0,1-1.4-1.4L1006.6,953l-5.32-5.315a0.991,0.991,0,0,1,1.4-1.4l5.32,5.315,5.31-5.315a1,1,0,0,1,1.41,0,0.987,0.987,0,0,1,0,1.4Z" transform="translate(-1001 -946)"></path></svg></span>', 3037 next: 3038 '<a title="' + 3039 BX.message("FANCY_NEXT") + 3040 '" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 3041 prev: 3042 '<a title="' + 3043 BX.message("FANCY_PREV") + 3044 '" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 3045 }, 3046 touch: "enabled", 3047 buttons: [ 3048 //"zoom", 3049 //"share", 3050 // "slideShow", 3051 //"fullScreen", 3052 //"download", 3053 //"thumbs", 3054 "close", 3055 ], 3056 backFocus: false, 3057 onActivate: function (instance) { 3058 InitFancyboxThumbnailsGallery(instance); 3059 }, 3060 beforeShow: function (event) { 3061 if ($(".fancybox-thumbs .swiper").length) { 3062 const swiper = $(".fancybox-thumbs .swiper").data("swiper"); 3063 3064 if (typeof event.current !== "undefined") { 3065 swiper.slideTo(event.current.index); 3066 } 3067 } 3068 var bCurrentSrc = 3069 typeof event.current !== "undefined" && event.current.contentType == "html" && $(event.current.src).length; 3070 3071 var video_block = []; 3072 3073 if (bCurrentSrc) { 3074 video_block = $(event.current.src).find("source.video-content"); 3075 } 3076 3077 if (video_block.length) { 3078 if (video_block.attr("src") == "#") { 3079 var video_block_wrapper = video_block.closest("video"); 3080 var video_block_clone = video_block_wrapper.clone(); 3081 3082 video_block_clone.find("source").attr("src", video_block_clone.find("source").data("src")); 3083 video_block.attr("src", video_block.data("src")); 3084 video_block_clone.insertAfter(video_block_wrapper); 3085 video_block_clone.siblings("video").remove(); 3086 } 3087 } 3088 var video_block_frame = []; 3089 if (bCurrentSrc) { 3090 video_block_frame = $(event.current.src).find(".company-item__video-iframe"); 3091 } 3092 3093 if (video_block_frame.length) { 3094 var data_src_iframe = video_block_frame.attr("data-src"); 3095 video_block_frame.attr("src", data_src_iframe); 3096 video_block_frame.attr("allow", "autoplay"); 3097 } 3098 }, 3099 afterShow: function (event) { 3100 if ($(".fancybox-overlay").css("opacity") == 0) { 3101 setTimeout(function () { 3102 $(".fancybox-overlay").css("opacity", 1); 3103 $("html").addClass("overflow_html"); 3104 }, 200); 3105 } 3106 3107 $(".fancybox-nav").css("opacity", 0); 3108 setTimeout(function () { 3109 $(".fancybox-nav").css("opacity", 1); 3110 }, 150); 3111 3112 var bCurrentSrc = 3113 typeof event.current !== "undefined" && event.current.contentType == "html" && $(event.current.src).length; 3114 var companyVideo = []; 3115 if (bCurrentSrc) { 3116 companyVideo = event.current.src[0].getElementsByClassName("company-item__video"); 3117 } 3118 3119 if (companyVideo.length) { 3120 setTimeout(function () { 3121 $(".fancybox-wrap video").resize(); 3122 setTimeout(function () { 3123 $(".fancybox-wrap").addClass("show_video"); 3124 if (companyVideo[0].currentTime === 0 || companyVideo[0].paused) { 3125 companyVideo[0].currentTime = 0; 3126 companyVideo[0].play(); 3127 } 3128 }, 300); 3129 }, 150); 3130 } else if ($(".fancybox-wrap iframe").length) { 3131 $(".fancybox-inner").height("100%"); 3132 } 3133 }, 3134 beforeClose: function (event) { 3135 $(".fancybox-overlay").fadeOut(); 3136 var bCurrentSrc = 3137 typeof event.current !== "undefined" && event.current.contentType == "html" && $(event.current.src).length; 3138 var companyVideo = []; 3139 if (bCurrentSrc) { 3140 companyVideo = event.current.src[0].getElementsByClassName("company-item__video"); 3141 } 3142 3143 if (companyVideo.length) { 3144 companyVideo[0].currentTime = 0; 3145 } 3146 3147 $("html").removeClass("overflow_html"); 3148 var video_block_frame = []; 3149 if (bCurrentSrc) { 3150 video_block_frame = $(event.current.src).find(".company-item__video-iframe"); 3151 } 3152 if (video_block_frame.length) { 3153 video_block_frame.attr("src", ""); 3154 } 3155 }, 3156 onClosed: function (event) { 3157 var companyVideo = []; 3158 if (bCurrentSrc) { 3159 companyVideo = event.current.src[0].getElementsByClassName("company-item__video"); 3160 } 3161 3162 if (companyVideo.length) { 3163 companyVideo[0].pause(); 3164 } 3165 }, 3166 }); 3167}; 3168 3169InitFancyBoxVideo = function () { 3170 if (typeof $.fn.fancybox !== "function") { 3171 return; 3172 } 3173 3174 if (!$(".video_link").length) { 3175 return; 3176 } 3177 3178 $(".video_link").fancybox({ 3179 type: "iframe", 3180 iframe: { 3181 preload: false, 3182 }, 3183 maxWidth: 800, 3184 maxHeight: 600, 3185 fitToView: false, 3186 width: "70%", 3187 height: "70%", 3188 autoSize: false, 3189 closeClick: false, 3190 opacity: true, 3191 tpl: { 3192 closeBtn: 3193 '<span title="' + 3194 BX.message("FANCY_CLOSE") + 3195 '" class="fancybox-item fancybox-close inline svg"><svg class="svg svg-close" width="14" height="14" viewBox="0 0 14 14"><path data-name="Rounded Rectangle 568 copy 16" d="M1009.4,953l5.32,5.315a0.987,0.987,0,0,1,0,1.4,1,1,0,0,1-1.41,0L1008,954.4l-5.32,5.315a0.991,0.991,0,0,1-1.4-1.4L1006.6,953l-5.32-5.315a0.991,0.991,0,0,1,1.4-1.4l5.32,5.315,5.31-5.315a1,1,0,0,1,1.41,0,0.987,0.987,0,0,1,0,1.4Z" transform="translate(-1001 -946)"></path></svg></span>', 3196 next: 3197 '<a title="' + 3198 BX.message("FANCY_NEXT") + 3199 '" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 3200 prev: 3201 '<a title="' + 3202 BX.message("FANCY_PREV") + 3203 '" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 3204 }, 3205 beforeShow: function (event) { 3206 /*if(!$('.cd-modal-bg').hasClass('is-visible')){ 3207 var scaleValue = retrieveScale($('.cd-modal-bg')); 3208 3209 $('.cd-modal-bg').show().addClass('is-visible').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(){ 3210 animateLayer($('.cd-modal-bg'), scaleValue, true); 3211 }); 3212 }*/ 3213 }, 3214 afterShow: function () { 3215 if ($(".fancybox-overlay").css("opacity") == 0) { 3216 setTimeout(function () { 3217 $(".fancybox-overlay").css("opacity", 1); 3218 $("html").addClass("overflow_html"); 3219 }, 200); 3220 } 3221 3222 $(".fancybox-nav").css("opacity", 0); 3223 setTimeout(function () { 3224 $(".fancybox-nav").css("opacity", 1); 3225 }, 150); 3226 if ($(".fancybox-wrap iframe").length) { 3227 $(".fancybox-inner").height("100%"); 3228 } 3229 }, 3230 beforeClose: function () { 3231 // closeModal(); 3232 $(".fancybox-overlay").fadeOut(); 3233 $("html").removeClass("overflow_html"); 3234 }, 3235 }); 3236}; 3237 3238CheckTopVisibleMenu = function (that) { 3239 var dropdownMenu = $(that).find(">.header-menu__dropdown-menu"); 3240 3241 if (!dropdownMenu.length) { 3242 dropdownMenu = $(that).find(">.header-menu__wide-item-wrapper>.header-menu__wide-submenu"); 3243 } 3244 if (!dropdownMenu.length) { 3245 dropdownMenu = $(that).find(">.header-menu__wide-submenu-item-inner>.submenu-wrapper>.header-menu__wide-submenu"); 3246 } 3247 3248 if (!dropdownMenu.length) { 3249 return; 3250 } 3251 3252 // if( that !== undefined ) { 3253 // dropdownMenu.push($(that)); 3254 // } 3255 3256 if (dropdownMenu.length) { 3257 dropdownMenu.each(function (i, el) { 3258 var dropdownMenuCurrent = $(el); 3259 dropdownMenuCurrent.find("a").css("white-space", ""); 3260 dropdownMenuCurrent.css("left", ""); 3261 dropdownMenuCurrent.css("right", ""); 3262 dropdownMenuCurrent.removeClass("toright"); 3263 3264 var dropdownMenuCurrent_left = dropdownMenuCurrent.offset().left; 3265 3266 if (typeof dropdownMenuCurrent_left != "undefined") { 3267 var menu = dropdownMenuCurrent.parents("header"); 3268 if (!menu.length) menu = dropdownMenuCurrent.closest(".header__top-inner"); 3269 var menu_width = menu.outerWidth(); 3270 var menu_left = menu.offset().left; 3271 var menu_right = menu_left + menu_width; 3272 var isToRight = dropdownMenuCurrent.parents(".toright").length > 0; 3273 var parentsdropdownMenuCurrents = dropdownMenuCurrent.parents(".header-menu__dropdown-menu"); 3274 var isHasParentdropdownMenuCurrent = parentsdropdownMenuCurrents.length > 0; 3275 if (isHasParentdropdownMenuCurrent) { 3276 var parentdropdownMenuCurrent_width = parentsdropdownMenuCurrents.first().outerWidth() 3277 ? parentdropdownMenuCurrent_width 3278 : 240; 3279 var parentdropdownMenuCurrent_left = parentsdropdownMenuCurrents.first().offset().left; 3280 var parentdropdownMenuCurrent_right = parentdropdownMenuCurrent_width + parentdropdownMenuCurrent_left; 3281 } 3282 3283 var emptyCurrentWidth = dropdownMenuCurrent.outerWidth() == 0; 3284 3285 var dropdownMenuCurrent_width = !emptyCurrentWidth ? dropdownMenuCurrent.outerWidth() : 240; 3286 3287 if (parentdropdownMenuCurrent_right + dropdownMenuCurrent_width > menu_right) { 3288 dropdownMenuCurrent.find("a").css("white-space", "normal"); 3289 } 3290 3291 var dropdownMenuCurrent_right = dropdownMenuCurrent_left + dropdownMenuCurrent_width; 3292 3293 if (dropdownMenuCurrent_right > menu_right || isToRight) { 3294 var addleft = 0; 3295 addleft = menu_right - dropdownMenuCurrent_right; 3296 if (isHasParentdropdownMenuCurrent || isToRight) { 3297 dropdownMenuCurrent.css("left", "auto"); 3298 dropdownMenuCurrent.css("right", "calc(100% + 8px)"); 3299 dropdownMenuCurrent.addClass("toright"); 3300 } else { 3301 var dropdownMenuCurrent_curLeft = parseInt(dropdownMenuCurrent.css("left")); 3302 dropdownMenuCurrent.css("left", dropdownMenuCurrent_curLeft + addleft + "px"); 3303 } 3304 } 3305 var firstMenuItem = dropdownMenuCurrent.parent().hasClass("header-menu__item--first"); 3306 if (!firstMenuItem) { 3307 if (dropdownMenuCurrent_right < 240 + menu_left) { 3308 dropdownMenuCurrent.css("left", "calc(100% + 8px)"); 3309 dropdownMenuCurrent.css("right", "0"); 3310 dropdownMenuCurrent.removeClass("toright"); 3311 } 3312 /* 3313 var childDropDown = dropdownMenuCurrent.find(">.dropdown"); 3314 if (childDropDown.length) { 3315 childDropDown.css("left", ""); 3316 childDropDown.css("right", ""); 3317 } 3318 if (emptyCurrentWidth && childDropDown.length && dropdownMenuCurrent_right < 480 + menu_left) { 3319 dropdownMenuCurrent.css("left", "calc(100% + 8px)"); 3320 dropdownMenuCurrent.css("right", "0"); 3321 dropdownMenuCurrent.removeClass("toright"); 3322 childDropDown.css("left", "calc(100% + 8px)"); 3323 childDropDown.css("right", "0"); 3324 } 3325 */ 3326 } 3327 } 3328 }); 3329 } 3330}; 3331 3332MegaMenuFixed = function () { 3333 var animationTime = 150; 3334 $megaFixedNlo = $(".mega-fixed-menu").find("[data-nlo]"); 3335 3336 $(document).on("click", ".header .burger", function () { 3337 if ($megaFixedNlo.length) { 3338 if (!$megaFixedNlo.hasClass("nlo-loadings")) { 3339 $megaFixedNlo.addClass("nlo-loadings"); 3340 setTimeout(function () { 3341 $.ajax({ 3342 data: { nlo: $megaFixedNlo.attr("data-nlo") }, 3343 error: function () { 3344 $megaFixedNlo.removeClass("nlo-loadings"); 3345 }, 3346 complete: function (jqXHR, textStatus) { 3347 if (textStatus === "success" || jqXHR.status == 404) { 3348 var ob = BX.processHTML($.trim(jqXHR.responseText)); 3349 BX.ajax.processScripts(ob.SCRIPT); 3350 $megaFixedNlo.replaceWith(ob.HTML); 3351 } 3352 }, 3353 }); 3354 }, 300); 3355 } 3356 } 3357 3358 $(".mega-fixed-menu").fadeIn(animationTime); 3359 $(".mega-fixed-menu").css("display", "flex"); 3360 }); 3361 3362 $(".mega-fixed-menu__close").on("click", function () { 3363 $(this).closest(".mega-fixed-menu").fadeOut(animationTime); 3364 }); 3365 3366 $(".mega-fixed-menu .dropdown-menu .arrow").on("click", function (e) { 3367 e.preventDefault(); 3368 e.stopPropagation(); 3369 $(this).closest(".dropdown-submenu").find(".dropdown-menu").slideToggle(animationTime); 3370 $(this).closest(".dropdown-submenu").addClass("opened"); 3371 }); 3372}; 3373 3374CheckMainBannerSliderVText = function (slider) { 3375 /*if(slider.parents('.banners-big').length){ 3376 var sh = slider.height(); 3377 slider.find('.item').each(function() { 3378 var curSlideTextInner = $(this).find('.text .inner'); 3379 if(curSlideTextInner.length){
3380 var ith = curSlideTextInner.actual('height'); 3381 var p = (ith >= sh ? 0 : Math.floor((sh - ith) / 2)); 3382 curSlideTextInner.css('padding-top', p + 'px'); 3383 } 3384 }); 3385 }*/ 3386}; 3387 3388footerInit = function (block) { 3389 if (block.hasClass("check-visible")) { 3390 const blockJsPadding = $(".js-check-padding"); 3391 const blockJsHide = $(".js-check-hide"); 3392 3393 if (blockJsPadding.length && blockJsHide.length && block.data("ajax-check-visible")) { 3394 const arCheckBlock = block.data("ajax-check-visible").split(","); 3395 let bHiddenBlocks = arCheckBlock.every(function (i) { 3396 return $('[data-ajax-load-block="' + i + '"]').hasClass("hidden") === true; 3397 }); 3398 3399 if (bHiddenBlocks) { 3400 blockJsHide.addClass("hidden"); 3401 blockJsPadding.addClass("js-padding"); 3402 } else { 3403 blockJsHide.removeClass("hidden"); 3404 blockJsPadding.removeClass("js-padding"); 3405 } 3406 } 3407 } 3408}; 3409 3410verticalAlign = function (class_name) { 3411 if (typeof class_name == "undefined") class_name = "auto_align"; 3412 if ($("." + class_name).length) { 3413 maxHeight = 0; 3414 $("." + class_name).each(function () { 3415 if ($(this).height() > maxHeight) { 3416 maxHeight = $(this).height(); 3417 } 3418 }); 3419 $("." + class_name).each(function () { 3420 delta = Math.round((maxHeight - $(this).height()) / 2); 3421 $(this).css({ "padding-top": delta + "px", "padding-bottom": delta + "px" }); 3422 }); 3423 } 3424}; 3425 3426getGridSize = function (counts, custom_counts) { 3427 var z = parseInt($(".body_media").css("top")); 3428 if (typeof custom_counts != "undefined") { 3429 if (window.matchMedia("(max-width: 700px)").matches) return counts[3] ? counts[3] : counts[2]; 3430 else if (window.matchMedia("(max-width: 850px)").matches) return counts[2]; 3431 else if (window.matchMedia("(max-width: 1100px)").matches) return counts[1]; 3432 else return counts[0]; 3433 } else { 3434 if (window.matchMedia("(max-width: 600px)").matches) { 3435 return counts[3] ? counts[3] : counts[2]; 3436 } else return z == 2 ? counts[0] : z == 1 ? counts[1] : counts[2]; 3437 } 3438}; 3439
3440CheckFlexSlider = function () { 3441 $(".flexslider:not(.thmb):visible").each(function () { 3442 var slider = $(this); 3443 slider.resize(); 3444 var counts = slider.data("flexslider").vars.counts, 3445 slide_counts = slider.data("flexslider").vars.slide_counts; 3446 if (typeof counts != "undefined") { 3447 var cnt = getGridSize(counts, slider.data("flexslider").vars.customGrid); 3448 var to0 = 3449 cnt != slider.data("flexslider").vars.minItems || 3450 cnt != slider.data("flexslider").vars.maxItems || 3451 cnt != slider.data("flexslider").vars.move; 3452 if (to0) { 3453 slider.data("flexslider").vars.minItems = cnt; 3454 slider.data("flexslider").vars.maxItems = cnt; 3455 if (typeof slide_counts != "undefined") slider.data("flexslider").vars.move = slide_counts; 3456 else slider.data("flexslider").vars.move = cnt; 3457 3458 slider.flexslider(0); 3459 slider.resize(); 3460 slider.resize(); // twise! 3461 } 3462 } 3463 }); 3464}; 3465 3466CheckHeaderFixed = function () { 3467 var header = $("header .header__inner").first(), 3468 header_fixed = $("#headerfixed, body.simple_basket_mode .header_simple"), 3469 header_simple = $("body.simple_basket_mode .header_simple"); 3470 3471 if (header_fixed.length) { 3472 if (header.length) { 3473 var isHeaderFixed = false, 3474 headerCanFix = true, 3475 headerFixedHeight = header_fixed.actual("outerHeight"), 3476 headerNormalHeight = header.actual("outerHeight"), 3477 headerDiffHeight = headerNormalHeight - headerFixedHeight, 3478 mobileBtnMenu = $(".btn.btn-responsive-nav"), 3479 headerTop = $("#panel:visible").actual("outerHeight"), 3480 topBlock = $(".TOP_HEADER").first(), 3481 $headerFixedNlo = header_fixed.find("[data-nlo]"), 3482 isNloLoaded = !$headerFixedNlo.length, 3483 OnHeaderFixedScrollHandler; 3484 3485 if (headerDiffHeight <= 0) headerDiffHeight = 0; 3486 3487 if (topBlock.length) headerTop += topBlock.actual("outerHeight"); 3488 3489 $(window).scroll( 3490 (OnHeaderFixedScrollHandler = function () { 3491 var scrollTop = $(window).scrollTop(); 3492 headerCanFix = !mobileBtnMenu.is(":visible"); 3493 3494 if (!isHeaderFixed) { 3495 if (headerCanFix && scrollTop > headerNormalHeight + headerTop) { 3496 isHeaderFixed = true; 3497 3498 header_fixed.css("top", "-" + headerNormalHeight + "px"); 3499 header_fixed.addClass("fixed"); 3500 3501 BX.onCustomEvent('onAsproHeaderFixedAppear'); 3502 3503 header_fixed.animate({ top: "0" }, { duration: 300, complete: function () {} }); 3504 3505 if (header_simple.length) { 3506 headerSimpleHeight = header_simple.actual("outerHeight"); 3507 header_simple.parent().css({ "margin-top": headerSimpleHeight }); 3508 } 3509 3510 //CheckTopMenuDotted(); 3511 } 3512 } 3513 3514 if (isHeaderFixed || !headerCanFix) { 3515 if (!headerCanFix || scrollTop <= headerDiffHeight + headerTop) { 3516 isHeaderFixed = false; 3517 header_fixed.removeClass("fixed"); 3518 3519 if (header_simple.length) { 3520 header_simple.parent().css({ "margin-top": "" }); 3521 } 3522 } 3523 } 3524 3525 BX.onCustomEvent('onAsproHeaderFixedScroll'); 3526 }) 3527 ); 3528 } 3529 } 3530 3531 // mobile fixed 3532 var mfixed = $("body.mfixed_y.mfixed_view_scroll_top #mobileheader"); 3533 if (mfixed.length) { 3534 var mheaderFixed = false, 3535 mheaderFixedHeight = mfixed.actual("outerHeight"), 3536 mheaderTop = $("#panel:visible").actual("outerHeight"), 3537 mheaderStartScroll = 0; 3538 3539 mfixed.css("--mobile-header-height", `${mheaderFixedHeight}px`); 3540 3541 $(window).scroll(function () { 3542 if (window.matchMedia("(max-width:991px)").matches) { 3543 var scrollTop = $(window).scrollTop(); 3544 if (!mheaderFixed) { 3545 if (scrollTop > mheaderTop + mheaderFixedHeight && scrollTop < mheaderStartScroll) { 3546 mfixed.addClass("fixed"); 3547 mheaderFixed = true; 3548 } 3549 } else { 3550 if (scrollTop <= mheaderTop || scrollTop > mheaderStartScroll) { 3551 mfixed.removeClass("fixed"); 3552 mheaderFixed = false;
3553 } 3554 } 3555 3556 mheaderStartScroll = scrollTop; 3557 } else { 3558 mfixed.removeClass("fixed"); 3559 } 3560 }); 3561 } 3562}; 3563 3564CheckObjectsSizes = function () { 3565 $(".container iframe,.container object,.container video").each(function () { 3566 var height_attr = $(this).attr("height"); 3567 var width_attr = $(this).attr("width"); 3568 3569 if (height_attr && width_attr) { 3570 $(this).css("height", ($(this).outerWidth() * height_attr) / width_attr); 3571 } 3572 }); 3573}; 3574 3575var isMobile = jQuery.browser.mobile; 3576var players = {}; 3577 3578if (isMobile) { 3579 document.documentElement.className += " mobile"; 3580} 3581 3582var timerScroll = false, 3583 ignoreScroll = [], 3584 documentScrollTopLast = $(document).scrollTop(), 3585 startScroll = 0; 3586 3587$.fn.equalizeHeights = function (outer, classNull, minHeight, autoHeightBlock) { 3588 var maxHeight = this.map(function (i, e) { 3589 var minus_height = 0, 3590 calc_height = 0; 3591 if (classNull !== false && $(e).find(classNull).is(":visible")) 3592 minus_height = parseInt($(e).find(classNull).actual("outerHeight")); 3593 if (minus_height) minus_height += 15; 3594 $(e).css("height", ""); 3595 if (autoHeightBlock !== false) { 3596 var height_tmp = $(e).find(autoHeightBlock).css("height"); 3597 $(e).find(autoHeightBlock).css("height", ""); 3598 } 3599 if (outer === true) { 3600 calc_height = $(e).actual("outerHeight") - minus_height; 3601 } else { 3602 calc_height = $(e).actual("height") - minus_height; 3603 } 3604 3605 if (autoHeightBlock !== false) { 3606 $(e).find(autoHeightBlock).css("height", height_tmp); 3607 } 3608 if (minHeight !== false) { 3609 if (calc_height < minHeight) { 3610 calc_height += minHeight - calc_height; 3611 } 3612 if (window.matchMedia("(max-width: 520px)").matches) { 3613 calc_height = 300; 3614 } 3615 if (window.matchMedia("(max-width: 400px)").matches) { 3616 calc_height = 200; 3617 } 3618 } 3619 return calc_height; 3620 }).get(); 3621 3622 for (var i = 0, c = maxHeight.length; i < c; ++i) { 3623 if (maxHeight[i] % 2) { 3624 --maxHeight[i]; 3625 } 3626 } 3627 3628 return this.height(Math.max.apply(this, maxHeight)); 3629}; 3630 3631$.fn.getFloatWidth = function () { 3632 var width = 0; 3633 3634 if ($(this).length) { 3635 var rect = $(this)[0].getBoundingClientRect(); 3636 if (!(width = rect.width)) { 3637 width = rect.right - rect.left; 3638 } 3639 } 3640 3641 return width; 3642}; 3643 3644$.fn.sliceHeight2 = function (options) { 3645 function _slice(el) { 3646 el.each(function () { 3647 $(this).css("line-height", ""); 3648 $(this).css("height", ""); 3649 }); 3650 if (typeof options.autoslicecount == "undefined" || options.autoslicecount !== false) { 3651 var elsw = 3652 typeof options.row !== "undefined" && options.row.length 3653 ? el.first().parents(options.row).getFloatWidth() 3654 : el.first().parents(".grid-list").getFloatWidth(), 3655 elw = 3656 typeof options.item !== "undefined" && options.item.length 3657 ? $(options.item).first().getFloatWidth() 3658 : el.first().hasClass("grid-list__item") 3659 ? el.first().getFloatWidth() 3660 : el.first().parents(".grid-list__item").getFloatWidth(); 3661 3662 if (!elsw) { 3663 elsw = el.first().parents(".grid-list").getFloatWidth(); 3664 } 3665 if (elw && options.fixWidth) elw -= options.fixWidth; 3666 3667 if (elsw && elw) { 3668 options.slice = Math.floor(elsw / elw); 3669 } 3670 } 3671 if (typeof options.typeResize == "undefined" || options.typeResize === false) { 3672 if (options.sliceEqualLength && el.closest(".flexslider").length) options.slice = el.length; 3673 if (options.slice >= 1) { 3674 for (var i = 0; i < el.length; i += options.slice) { 3675 $(el.slice(i, i + options.slice)).equalizeHeights( 3676 options.outer, 3677 options.classNull, 3678 options.minHeight, 3679 options.autoHeightBlock 3680 ); 3681 } 3682 } 3683 if (options.lineheight) { 3684 var lineheightAdd = parseInt(options.lineheight); 3685 if (isNaN(lineheightAdd)) { 3686 lineheightAdd = 0; 3687 } 3688 el.each(function () { 3689 $(this).css("line-height", $(this).actual("height") + lineheightAdd + "px"); 3690 }); 3691 } 3692 } 3693
3694 if (typeof options.callback == "function") options.callback(el); 3695 } 3696 var options = $.extend( 3697 { 3698 slice: null, 3699 outer: false, 3700 lineheight: false, 3701 autoslicecount: true, 3702 classNull: false, 3703 minHeight: false, 3704 row: false, 3705 item: false, 3706 typeResize: false, 3707 resize: true, 3708 typeValue: false, 3709 sliceEqualLength: false, 3710 fixWidth: 0, 3711 callback: false, 3712 autoHeightBlock: false, 3713 }, 3714 options 3715 ); 3716 3717 var el = $(this); 3718 ignoreResize.push(true); 3719 _slice(el); 3720 ignoreResize.pop(); 3721 3722 if (options.resize !== false) { 3723 BX.addCustomEvent("onWindowResize", function (eventdata) { 3724 ignoreResize.push(true); 3725 _slice(el); 3726 ignoreResize.pop(); 3727 }); 3728 } 3729}; 3730 3731function extendDepthObject(target, FromObj) { 3732 var to = Object.assign({}, target); 3733 for (var key in FromObj) { 3734 if (typeof FromObj[key] == "object") { 3735 to[key] = extendDepthObject(to[key], FromObj[key]); 3736 } else { 3737 to[key] = FromObj[key]; 3738 } 3739 } 3740 3741 return to; 3742} 3743 3744$.fn.sliceHeight = function (options) { 3745 function _slice(el) { 3746 var arBreakpoints = Object.keys(options.breakpoint); 3747 var resizeOptionsTmp = {}; 3748 if (arBreakpoints.length) { 3749 for (var key in arBreakpoints) { 3750 if (window.matchMedia(arBreakpoints[key].toString()).matches) { 3751 resizeOptionsTmp = options.breakpoint[arBreakpoints[key]]; 3752 } 3753 } 3754 } 3755 3756 var resizeOptions = extendDepthObject(options, resizeOptionsTmp); 3757 3758 var blockNullClass = 3759 resizeOptions.blockNull !== undefined && resizeOptions.blockNull.class !== undefined 3760 ? resizeOptions.blockNull.class 3761 : false; 3762 var parent = 3763 typeof resizeOptions.row !== "undefined" && resizeOptions.row.length 3764 ? el.first().parents(resizeOptions.row) 3765 : el.first().parents(".items"); 3766 var item = ""; 3767 3768 if (typeof resizeOptions.item !== "undefined" && resizeOptions.item.length) { 3769 if (blockNullClass) { 3770 $(resizeOptions.item).each(function (i, element) { 3771 _element = $(element); 3772 if (!_element.hasClass(blockNullClass)) { 3773 item = _element; 3774 } 3775 }); 3776 if (!item) 3777 // if only ignored blocks 3778 return false; 3779 } else { 3780 item = $(resizeOptions.item).first(); 3781 } 3782 } else { 3783 if (el.first().hasClass("item")) { 3784 item = el.first(); 3785 } else { 3786 item = el.first().parents(".item"); 3787 } 3788 } 3789 3790 if (typeof resizeOptions.autoslicecount == "undefined" || resizeOptions.autoslicecount !== false) { 3791 var elsw = parent.getFloatWidth(), 3792 elw = item.getFloatWidth(); 3793 if (!elsw) { 3794 elsw = el.first().parents(".row").getFloatWidth(); 3795 } 3796 if (!elw) { 3797 if (typeof resizeOptions.item !== "undefined" && resizeOptions.item.length) 3798 elw = $(resizeOptions.item + ":eq(1)").getFloatWidth() 3799 ? $(resizeOptions.item + ":eq(1)").getFloatWidth() 3800 : $(resizeOptions.item + ":eq(2)").getFloatWidth(); 3801 else elw = $(el[1]).getFloatWidth() ? $(el[1]).getFloatWidth() : $(el[2]).getFloatWidth(); 3802 } 3803 if (elw && resizeOptions.fixWidth) elw -= resizeOptions.fixWidth; 3804 3805 elw = parseInt(elw * 100) / 100; 3806 3807 if (elsw && elw) { 3808 resizeOptions.slice = Math.floor(elsw / elw); 3809 } 3810 } 3811 3812 if (resizeOptions.customSlice) { 3813 //manual slice count 3814 var bSliceNext = false; 3815 if (resizeOptions.length) { 3816 elw = 3817 typeof resizeOptions.item !== "undefined" && resizeOptions.item.length 3818 ? $(resizeOptions.item).last().getFloatWidth() 3819 : el.last().hasClass("item") 3820 ? el.last().getFloatWidth() 3821 : el.last().parents(".item").getFloatWidth(); 3822 if (elw) resizeOptions.sliceNext = Math.floor(elsw / elw); 3823 3824 bSliceNext = true; 3825 } 3826 } 3827 3828 elements = []; 3829 if (resizeOptions.classes !== undefined && resizeOptions.classes.length) { 3830 for (var i = 0; i < resizeOptions.classes.length; i++) { 3831 var items = $(resizeOptions.item).find(resizeOptions.classes[i]); 3832 elements.push(items); 3833 } 3834 } 3835 var elIndex = elements.push(el) - 1; 3836 3837 if (resizeOptions.mobile === true) { 3838 if (window.matchMedia("(max-width: 550px)").matches) { 3839 for (var block = 0; block < elements.length; block++) { 3840 var items = $(elements[block]); 3841 items.css({ 3842 "line-height": "", 3843 height: "", 3844 }); 3845 } 3846 return; 3847 } 3848 } 3849 3850 if (typeof resizeOptions.typeResize == "undefined" || resizeOptions.typeResize === false) { 3851 if (resizeOptions.slice) { 3852 for (var block = 0; block < elements.length; block++) { 3853 if (resizeOptions.currentRow) { 3854 var itemNumber = el.index(resizeOptions.currentItem); 3855 var rowCount = resizeOptions.slice; 3856 var rowNumber = Math.floor(itemNumber / rowCount); 3857 3858 var items = $(elements[block].slice(rowNumber * rowCount, rowNumber * rowCount + rowCount)); 3859 var classNull = block == elIndex ? resizeOptions.classNull : false;
3860 items.css({ 3861 "line-height": "", 3862 height: "", 3863 }); 3864 items.equalizeHeights(resizeOptions.outer, classNull, resizeOptions); 3865 } else { 3866 for (var i = 0; i < elements[block].length; ) { 3867 if (resizeOptions.customSlice && resizeOptions.sliceNext && bSliceNext && i) 3868 //manual slice count 3869 resizeOptions.slice = resizeOptions.sliceNext; 3870 3871 var slice = resizeOptions.slice; 3872 var items = $(elements[block].slice(i, i + slice)); 3873 if (resizeOptions.blockNull !== undefined) { 3874 if (resizeOptions.blockNull.class !== undefined) { 3875 var counts = 0; 3876 items.each(function (i, item) { 3877 var _item = $(item); 3878 if ( 3879 _item.hasClass(resizeOptions.blockNull.class) || 3880 _item.closest("." + resizeOptions.blockNull.class).length 3881 ) { 3882 counts++; 3883 } 3884 }); 3885 } 3886 } 3887 if (counts) { 3888 slice -= (resizeOptions.blockNull.width - 1) * counts; 3889 } 3890 3891 items = $(elements[block].slice(i, i + slice)); 3892 if (items) { 3893 var classNull = block == elIndex ? resizeOptions.classNull : false; 3894 3895 items.css({ 3896 "line-height": "", 3897 height: "", 3898 }); 3899 items.equalizeHeights(resizeOptions.outer, classNull, resizeOptions); 3900 } 3901 i += slice || 1; 3902 } 3903 } 3904 } 3905 } 3906 if (resizeOptions.lineheight) { 3907 var lineheightAdd = parseInt(resizeOptions.lineheight); 3908 if (isNaN(lineheightAdd)) { 3909 lineheightAdd = 0; 3910 } 3911 el.each(function () { 3912 $(this).css("line-height", $(this).actual("height") + lineheightAdd + "px"); 3913 }); 3914 } 3915 } 3916 } 3917 var options = $.extend( 3918 { 3919 slice: null, 3920 sliceNext: null, 3921 outer: false, 3922 lineheight: false, 3923 autoslicecount: true, 3924 classNull: false, 3925 minHeight: false, 3926 row: false, 3927 item: false, 3928 typeResize: false, 3929 typeValue: false, 3930 fixWidth: 0, 3931 resize: true, 3932 mobile: false, 3933 customSlice: false, 3934 breakpoint: {}, 3935 classes: [], 3936 }, 3937 options 3938 ); 3939 3940 var el = $(this); 3941 3942 ignoreResize.push(true); 3943 _slice(el); 3944 ignoreResize.pop(); 3945 3946 if (options.resize) { 3947 BX.addCustomEvent("onWindowResize", function (eventdata) { 3948 try { 3949 ignoreResize.push(true); 3950 _slice(el); 3951 } catch (e) { 3952 } finally { 3953 ignoreResize.pop(); 3954 } 3955 }); 3956 } else { 3957 if (!ignoreResize.length) { 3958 // ignoreResize.push(true); 3959 _slice(el); 3960 // ignoreResize.pop(); 3961 } 3962 } 3963}; 3964 3965waitingExists = function (selector, delay, callback) { 3966 if (typeof callback !== "undefined" && selector.length && delay > 0) {
3967 delay = parseInt(delay); 3968 delay = delay < 0 ? 0 : delay; 3969 3970 if (!$(selector).length) { 3971 setTimeout(function () { 3972 waitingExists(selector, delay, callback); 3973 }, delay); 3974 } else { 3975 callback(); 3976 } 3977 } 3978}; 3979 3980waitingNotExists = function (selectorExists, selectorNotExists, delay, callback) { 3981 if ( 3982 typeof callback !== "undefined" && 3983 selectorExists.length && 3984 $(selectorExists).length && 3985 selectorNotExists.length && 3986 !$(selectorNotExists).length && 3987 delay > 0 3988 ) { 3989 delay = parseInt(delay); 3990 delay = delay < 0 ? 0 : delay; 3991 3992 setTimeout(function () { 3993 if (selectorExists.length && !$(selectorNotExists).length) { 3994 callback(); 3995 } 3996 }, delay); 3997 } 3998}; 3999 4000function onLoadjqm(name, hash, _this) { 4001 if (BX.Aspro.Utils.isFunction("onlyCatalogMenuClose")) { 4002 onlyCatalogMenuClose(); 4003 } 4004 4005 BX.Aspro?.xPopover?.hide(); 4006 BX.Aspro?.Map?.closeFullscreenMap(); 4007 4008 if (hash.c.noOverlay === undefined || (hash.c.noOverlay !== undefined && !hash.c.noOverlay)) { 4009 $("body").addClass("jqm-initied"); 4010 } 4011 4012 $("body").addClass("swipeignore"); 4013 4014 if (typeof $(hash.t).data("ls") !== " undefined" && $(hash.t).data("ls")) { 4015 var ls = $(hash.t).data("ls"), 4016 ls_timeout = 0, 4017 v = ""; 4018 4019 if ($(hash.t).data("ls_timeout")) ls_timeout = $(hash.t).data("ls_timeout"); 4020 4021 ls_timeout = ls_timeout ? Date.now() + ls_timeout * 1000 : ""; 4022 4023 if (typeof localStorage !== "undefined") { 4024 var val = localStorage.getItem(ls); 4025 try { 4026 v = JSON.parse(val); 4027 } catch (e) { 4028 v = val; 4029 } 4030 if (v != null) { 4031 localStorage.removeItem(ls); 4032 } 4033 v = {}; 4034 v["VALUE"] = "Y"; 4035 v["TIMESTAMP"] = ls_timeout; // default: seconds for 1 day 4036 4037 localStorage.setItem(ls, JSON.stringify(v)); 4038 } else { 4039 var val = $.cookie(ls); 4040 if (!val) $.cookie(ls, "Y", { expires: ls_timeout }); // default: seconds for 1 day 4041 } 4042 4043 var dopClasses = hash.w.find(".marketing-popup").data("classes"); 4044 if (dopClasses) { 4045 hash.w.addClass(dopClasses); 4046 } 4047 } 4048 4049 //update show password 4050 //show password eye 4051 if (hash.w.hasClass("auth_frame")) { 4052 hash.w.find(".form-group:not(.eye-password-ignore) [type=password]").each(function (item) { 4053 let inputBlock = $(this).closest(".input"); 4054 if (inputBlock.length) { 4055 inputBlock.addClass("eye-password"); 4056 } else { 4057 let labelBlock = passBlock.find(".label_block"); 4058 let passBlock = $(this).closest(".form-group"); 4059 if (labelBlock.length) { 4060 labelBlock.addClass("eye-password"); 4061 } else { 4062 passBlock.addClass("eye-password"); 4063 } 4064 } 4065 }); 4066 } 4067 4068 $.each($(hash.t).get(0).attributes, function (index, attr) { 4069 if (/^data\-autoload\-(.+)$/.test(attr.nodeName)) { 4070 var key = attr.nodeName.match(/^data\-autoload\-(.+)$/)[1]; 4071 var el = $('input[name="' + key.toUpperCase() + '"]'); 4072 if (!el.length) { 4073 //is form block 4074 el = $('input[data-sid="' + key.toUpperCase() + '"]'); 4075 } 4076 4077 var value = $(hash.t).data("autoload-" + key); 4078 value = value.toString().replace(/%99/g, "\\"); // replace symbol \ 4079 4080 el.val(BX.util.htmlspecialcharsback(value)).attr("readonly", "readonly"); 4081 el.closest(".form-group").addClass("input-filed"); 4082 el.attr("title", el.val()); 4083 } 4084 }); 4085 4086 //show gift block 4087 if (hash.w.hasClass("send_gift_frame")) { 4088 let imgHtml, priceHtml, propsHtml; 4089 imgHtml = priceHtml = propsHtml = ""; 4090 4091 if ($('.detail-gallery-big link[itemprop="image"]').length) { 4092 imgHtml = 4093 '<img class="image-rounded-x" src="' + 4094 $('.detail-gallery-big link[itemprop="image"]').attr("href") + 4095 '" alt="" title="" />'; 4096 } 4097 4098 if ($(".catalog-detail__buy-block .price__new").length) { 4099 priceHtml = 4100 '<div class="item-block-info__price color_222 fw-500">' + 4101 $(".catalog-detail__buy-block .price__new-val").text() + 4102 "</div>"; 4103 } 4104 4105 if ($(".catalog-block__offers .sku-props__item").length) { 4106 propsHtml = '<div class="item-block-info__props font_13">'; 4107 $(".catalog-block__offers .sku-props__item").each(function () { 4108 propsHtml += '<div class="item-block-info__props-item">' + $(this).find(".sku-props__title").text() + "</div>"; 4109 }); 4110 propsHtml += "</div>"; 4111 } 4112 4113 $( 4114 '<div class="popup__item-block">' + 4115 '<div class="popup__item-block-info bordered outer-rounded-x grid-list gap gap--16">' + 4116 '<div class="item-block-info__image grid-list__item">' + 4117 imgHtml + 4118 "</div>" + 4119 '<div class="item-block-info__text grid-list__item">' + 4120 '<div class="name color_222 font_14">' + 4121 $("h1").text() + 4122 "</div>" + 4123 priceHtml + 4124 propsHtml + 4125 "</div>" + 4126 "</div>" + 4127 "</div>" 4128 ).prependTo(hash.w.find(".form-body")); 4129 } 4130 4131 if (hash.c.noOverlay === undefined || (hash.c.noOverlay !== undefined && !hash.c.noOverlay)) { 4132 $("body").css({ overflow: "hidden", height: "100vh" }); 4133 hash.w.closest("#popup_iframe_wrapper").css({ "z-index": 3000, display: "flex" }); 4134 } 4135 4136 var eventdata = { action: "loadForm" }; 4137 BX.onCustomEvent("onCompleteAction", [eventdata, $(hash.t)[0]]); 4138 4139 if ($(hash.t).data("autohide")) { 4140 $(hash.w).data("autohide", $(hash.t).data("autohide")); 4141 } 4142 4143 if ($(hash.t).data("autoshow")) { 4144 eval($(hash.t).data("autoshow")); 4145 } 4146 4147 if (name == "order_product") { 4148 if ($(hash.t).data("product")) { 4149 $('input[name="PRODUCT"]').closest(".form-group").addClass("input-filed"); 4150 $('input[name="PRODUCT"]') 4151 .val($(hash.t).data("product")) 4152 .attr("readonly", "readonly") 4153 .attr("title", $('input[name="PRODUCT"]').val()); 4154 } 4155 } 4156 if (name == "question") { 4157 if ($(hash.t).data("product")) { 4158 $('input[name="NEED_PRODUCT"]').closest(".form-group").addClass("input-filed"); 4159 $('input[name="NEED_PRODUCT"]') 4160 .val($(hash.t).data("product")) 4161 .attr("readonly", "readonly") 4162 .attr("title", $('input[name="NEED_PRODUCT"]').val()); 4163 } 4164 } 4165 4166 //show one_click_buy block 4167 if (name === "ocb") { 4168 const parent = hash.w.find(".flexbox").first();
4169 const item = _this.closest(".js-popup-block"); 4170 if (item.length) { 4171 var data = item.find("[data-item]").data("item"); 4172 if (typeof data === "undefined" || !data) { 4173 data = {}; 4174 } 4175 4176 parent.addClass("flexbox--direction-row-reverse"); 4177 parent.find(".form.popup").addClass("flex-grow-1"); 4178 4179 let goodsNode = '<div class="goods-popup"><div class="goods-popup__sticky">'; 4180 4181 //image block 4182 let imageNode = '<div class="goods-popup__image image-list-wrapper">'; 4183 4184 //stiker 4185 const $sticker = item.find(".catalog-detail__main .sticker"); 4186 if ($sticker.length) { 4187 imageNode += `<div class="sticker">${$sticker.html()}</div>`; 4188 } 4189 4190 //image 4191 imageNode += '<div class="image">'; 4192 imageNode += 4193 '<img class="img-responsive" src="' + 4194 (item.find(".image-list__link link[itemprop=image]").length 4195 ? item.find(".image-list__link link[itemprop=image]:first").attr("href") 4196 : item.find(".image-list-wrapper img:first").length 4197 ? item.find(".image-list-wrapper img:first").attr("src") 4198 : arAsproOptions.SITE_TEMPLATE_PATH + "/images/svg/noimage_product.svg") + 4199 '" />'; 4200 imageNode += "</div>"; 4201 imageNode += "</div>"; 4202 goodsNode += imageNode; 4203 4204 //info block 4205 let infoNode = '<div class="goods-popup__info">'; 4206 //link 4207 if (item.find(".js-popup-title").attr("href")) { 4208 infoNode += 4209 '<a class="dark_link switcher-title goods-popup__info-link font_15" href="' + 4210 item.find(".js-popup-title").attr("href") + 4211 '">'; 4212 infoNode += data ? data.NAME : item.find(".js-popup-title").html(); 4213 infoNode += "</a>"; 4214 } else { 4215 infoNode += '<div class="color_222 switcher-title goods-popup__info-link font_15">'; 4216 infoNode += data ? data.NAME : item.find(".js-popup-title").html(); 4217 infoNode += "</div>"; 4218 } 4219 4220 // status 4221 let status = ""; 4222 if (item.find(".status-container").length) { 4223 status += '<div class="line-block__item font_13">'; 4224 status += item.find(".status-container").wrap("<div></div>").parent().html(); 4225 status += "</div>"; 4226 } 4227 4228 //article 4229 let article = ""; 4230 if (item.find(".js-popup-info .article").length) { 4231 article += '<div class="line-block__item font_13 secondary-color">'; 4232 article += item.find(".js-popup-info .article").closest(".line-block__item").html(); 4233 article += "</div>"; 4234 } 4235 4236 if (article || status) { 4237 infoNode += 4238 '<div class="line-block line-block--gap line-block--16 flexbox--wrap goods-popup__info-more">' + 4239 status + 4240 article + 4241 "</div>"; 4242 } 4243 4244 infoNode += "</div>"; 4245 goodsNode += infoNode; 4246 4247 //price block 4248 if (item.find(".js-popup-price .price").length) { 4249 let priceNode = '<div class="goods-popup__price">'; 4250 priceNode += item.find(".js-popup-price").html(); 4251 priceNode += "</div>"; 4252 goodsNode += priceNode; 4253 4254 let $price = item.find(".js-popup-price .price__new-val"); 4255 if ($price.length) { 4256 parent.find("input[name=PRODUCT_PRICE],input[data-sid=PRODUCT_PRICE]").val($price.text().trim()); 4257 } 4258 } 4259 4260 goodsNode += "</div></div>"; 4261 4262 $(goodsNode).appendTo(parent); 4263 } else { 4264 parent.closest(".jqmWindow").addClass("compact"); 4265 } 4266 } 4267 4268 if (name == "fast_view" && $(".smart-filter-filter").length) { 4269 var navButtons = 4270 '<div class="navigation-wrapper-fast-view">' + 4271 '<div class="fast-view-nav prev bg-theme-hover" data-fast-nav="prev">' + 4272 '<i class="svg left">' + 4273 '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 12" width="6px" height="12px" fill="none" id="left-hollow"><path d="M5 1L1 6L5 11" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg>' + 4274 "</i>" + 4275 "</div>" + 4276 '<div class="fast-view-nav next bg-theme-hover" data-fast-nav="next">' + 4277 '<i class="svg right">' + 4278 '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 12" width="6px" height="12px" fill="none" id="right-hollow"><path d="M1 1L5 6L1 11" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg>
4278' + 4279 "</i>" + 4280 "</div>" + 4281 "</div>"; 4282 4283 // hash.w.addClass("no_custom_scroll"); 4284 hash.w.closest("#popup_iframe_wrapper").append(navButtons); 4285 } 4286 4287 var needScrollbar = true; 4288 4289 if ( 4290 arAsproOptions["THEME"]["REGIONALITY_SEARCH_ROW"] == "Y" && 4291 (hash.w.hasClass("city_chooser_frame") || hash.w.hasClass("city_chooser_small_frame")) 4292 ) { 4293 hash.w.addClass("small_popup_regions"); 4294 hash.w.addClass("jqmWindow--overflow-visible"); 4295 needScrollbar = false; 4296 } 4297 4298 /*if (!hash.w.hasClass("no_custom_scroll")) { 4299 hash.w.addClass("show srollbar-custom").css({ opacity: 1 }); 4300 InitScrollBar(); 4301 }*/ 4302 hash.w.addClass("show").css({ opacity: 1 }); 4303 if (needScrollbar) hash.w.find(">div").addClass("scrollbar"); 4304} 4305 4306function onHidejqm(name, hash) { 4307 if ($(hash.w).data("autohide")) { 4308 eval($(hash.w).data("autohide")); 4309 } 4310 4311 // hash.w.css('opacity', 0).hide(); 4312 hash.w.animate({ opacity: 0 }, 200, function () { 4313 // hash.w.removeClass("scroll-init srollbar-custom").mCustomScrollbar("destroy"); 4314 hash.w.hide(); 4315 hash.w.empty(); 4316 hash.o.remove(); 4317 hash.w.removeClass("show"); 4318 hash.w.removeClass("success"); 4319 4320 if (!hash.w.closest("#popup_iframe_wrapper").find(".jqmOverlay").length) { 4321 $("body").css({ overflow: "", height: "" }); 4322 hash.w.closest("#popup_iframe_wrapper").css({ "z-index": "", display: "" }); 4323 } 4324 4325 if (window.matchMedia("(max-width: 991px)").matches) { 4326 $("body").removeClass("all_viewed"); 4327 } 4328 if (!$(".overlay").length && (!$(".jqmOverlay").length || $(".jqmOverlay.waiting").length)) { 4329 $("body").removeClass("jqm-initied"); 4330 } 4331 4332 $("body").removeClass("swipeignore"); 4333 $("body").removeClass("overflow-block"); 4334 4335 if (name == "fast_view") { 4336 $(".fast_view_popup").remove(); 4337 4338 var navButtons = hash.w.closest("#popup_iframe_wrapper").find(".navigation-wrapper-fast-view"); 4339 navButtons.remove(); 4340 } 4341 4342 if (name == "ocb") { 4343 hash.w.removeClass("compact"); 4344 } 4345 4346 if (name == "stores") { 4347 window.GLOBAL_arMapObjects = {}; 4348 } 4349 }); 4350 4351 window.b24form = false; 4352} 4353 4354function parseUrlQuery() { 4355 var data = {}; 4356 if (location.search) { 4357 var pair = location.search.substr(1).split("&"); 4358 for (var i = 0; i < pair.length; i++) { 4359 var param = pair[i].split("="); 4360 data[param[0]] = param[1]; 4361 } 4362 } 4363 return data; 4364} 4365 4366function scroll_block(block) { 4367 if (block.length) { 4368 var topPos = block.offset().top, 4369 headerH = $("header").outerHeight(true, true); 4370 if ($(".stores_tab").length) { 4371 $(".stores_tab").addClass("active").siblings().removeClass("active"); 4372 } else { 4373 $(".prices_tab").addClass("active").siblings().removeClass("active"); 4374 if ($(".prices_tab .opener").length && !$(".prices_tab .opener .opened").length) { 4375 var item = $(".prices_tab .opener").first(); 4376 item.find(".opener_icon").addClass("opened"); 4377 item.parents("tr").addClass("nb"); 4378 item.parents("tr").next(".offer_stores").find(".stores_block_wrap").slideDown(200); 4379 } 4380 } 4381 $("html,body").animate({ scrollTop: topPos - 80 }, 150); 4382 } 4383} 4384 4385$.fn.jqmEx = function (onLoad, onHide) { 4386 $(this).each(function () { 4387 let $this = $(this); 4388 let name = $this.data("name"); 4389 name = typeof name === "undefined" || !name.length ? "noname" : name; 4390 4391 let paramsStr = ""; 4392 let trigger = $this; 4393 4394 // trigger attrs and params 4395 $.each($this.get(0).attributes, function (index, attr) { 4396 var attrName = attr.nodeName; 4397 var attrValue = $this.attr(attrName);
4398 if (/^data\-param\-(.+)$/.test(attrName)) { 4399 var key = attrName.match(/^data\-param\-(.+)$/)[1]; 4400 if (key === "href") { 4401 paramsStr += key + "=" + encodeURIComponent(location.href.replace(location.origin, "")) + "&"; 4402 } else { 4403 paramsStr += key + "=" + attrValue.replace(/ /g, "+") + "&"; 4404 } 4405 } 4406 }); 4407 4408 // one click buy with sale 4409 if (name == "ocb" && arAsproOptions.MODULES.sale) { 4410 const $buyAction = $this.closest(".js-popup-block").find('.buy_block .js-item-action[data-action="basket"]'); 4411 if ($buyAction.length) { 4412 let action = JItemAction.factory($buyAction[0]); 4413 if (action.valid) { 4414 let dataItem = action.data; 4415 if (dataItem) { 4416 paramsStr += "ELEMENT_ID=" + dataItem.ID + "&"; 4417 paramsStr += "IBLOCK_ID=" + dataItem.IBLOCK_ID + "&"; 4418 paramsStr += "ELEMENT_QUANTITY=" + action.quantity + "&"; 4419 } 4420 4421 let props = action.node.getAttribute("data-props") || ""; 4422 try { 4423 props = props.length ? props.split(";") : []; 4424 } catch (e) { 4425 props = []; 4426 } 4427 4428 paramsStr += "OFFER_PROPS=" + JSON.stringify(props) + "&"; 4429 } 4430 } 4431 } 4432 4433 // popup url 4434 let script = arAsproOptions["SITE_DIR"] + "ajax/form.php"; 4435 if (name == "auth") { 4436 script += "?" + paramsStr + "auth=Y"; 4437 } else { 4438 script += "?" + paramsStr; 4439 } 4440 4441 // ext frame class 4442 let extClass = ""; 4443 if ($this.closest("#fast_view_item").length) { 4444 extClass = "fast_view_popup"; 4445 } 4446 4447 // use overlay? 4448 var noOverlay = $this.data("noOverlay") == "Y"; 4449 4450 // call counter 4451 if (typeof $.fn.jqmEx.counter === "undefined") { 4452 $.fn.jqmEx.counter = 0; 4453 } else { 4454 ++$.fn.jqmEx.counter; 4455 } 4456 4457 // unique frame to each trigger 4458 if (noOverlay) { 4459 var frame = $( 4460 '<div class="' + 4461 name + 4462 "_frame " + 4463 extClass + 4464 ' jqmWindow jqmWindow--mobile-fill popup" data-popup="' + 4465 $.fn.jqmEx.counter + 4466 '"></div>' 4467 ).appendTo("body"); 4468 } else { 4469 var frame = $( 4470 '<div class="' + 4471 name + 4472 "_frame " + 4473 extClass + 4474 ' jqmWindow jqmWindow--mobile-fill popup" data-popup="' + 4475 $.fn.jqmEx.counter + 4476 '"></div>' 4477 ).appendTo("#popup_iframe_wrapper"); 4478 } 4479 4480 frame.jqm({ 4481 ajax: script, 4482 trigger: trigger, 4483 noOverlay: noOverlay, 4484 onLoad: function (hash) { 4485 onLoadjqm(name, hash, $this); 4486 4487 if (typeof onLoad === "function") { 4488 onLoad(name, hash, $this); 4489 } 4490 }, 4491 onHide: function (hash) { 4492 onHidejqm(name, hash, $this); 4493 4494 if (typeof onHide === "function") { 4495 onHide(name, hash, $this); 4496 } 4497 }, 4498 }); 4499 }); 4500}; 4501 4502InitOwlSlider = function () { 4503 $(".owl-carousel:not(.owl-loaded):not(.appear-block)").each(function () { 4504 var slider = $(this); 4505 var options; 4506 var svg = 4507 '<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 1L1 6L6 11" stroke="#333333" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>'; 4508 var defaults = { 4509 navText: [ 4510 '<i class="owl-carousel__button owl-carousel__button--left colored_theme_bg_hover">' + svg + "</i>", 4511 '<i class="owl-carousel__button owl-carousel__button--right colored_theme_bg_hover">' + svg + "</i>", 4512 ], 4513 dotsContainer: slider.siblings(".owl-carousel__dots"), 4514 }; 4515 var config = $.extend({}, defaults, options, slider.data("plugin-options")); 4516 4517 slider.siblings(".owl-carousel__dots").on("click", ".owl-carousel__dot", function () { 4518 var _this = $(this); 4519 var sliderData = slider.data("owl.carousel"); 4520 4521 slider.trigger("to.owl.carousel", [_this.index(), 300]); 4522 if (sliderData.settings.autoplayHoverPause) { 4523 slider.trigger("mouseover.owl.autoplay"); 4524 } 4525 }); 4526 4527 if (slider.hasClass("destroyed")) { 4528 slider.owlCarousel(config); 4529 slider.removeClass("destroyed"); 4530 return; 4531 } 4532 4533 slider.on("initialized.owl.carousel", function (event) { 4534 var eventdata = { slider: $(event.target), data: event }; 4535 4536 BX.onCustomEvent("onSliderInitialized", [eventdata]); 4537 BX.onCustomEvent("onSlide", [eventdata]); 4538 4539 $(event.target).removeClass("loading-state"); 4540 $(event.target).find(".owl-item:first").addClass("current"); 4541 4542 if (typeof sliceItemBlockSlide === "function") { 4543 sliceItemBlockSlide(); 4544 } 4545 }); 4546 4547 // if slider was inited on animated scrolling to block, than need rescroll 4548 if ($("body.scrolling-state").length) { 4549 slider.on("initialized.owl.carousel", function (event) { 4550 setTimeout(function () { 4551 scrollToBlock.rescroll(); 4552 }, 100); 4553 }); 4554 } 4555 4556 slider.on("change.owl.carousel", function (event) { 4557 // var eventdata = {slider: $(event.target)}; 4558 // BX.onCustomEvent('onSlide', [eventdata]); 4559 }); 4560 4561 slider.owlCarousel(config); 4562 4563 slider.on("resized.owl.carousel", function (event) { 4564 if (typeof sliceItemBlockSlide === "function") { 4565 sliceItemBlockSlide({ resize: false }); 4566 } 4567 }); 4568 4569 slider.on("mouseover.owl.autoplay", function (event) { 4570 var slider = $(event.target).closest(".owl-carousel"); 4571 var sliderData = slider.data("owl.carousel"); 4572 var dots = slider.siblings(".owl-carousel__dots--autoplay"); 4573 if (typeof sliderData !== "undefined") { 4574 var bNeedStopDotsAnimation = 4575 sliderData.settings.autoplay && sliderData.settings.autoplayHoverPause && dots.length; 4576 if (bNeedStopDotsAnimation) { 4577 var animationBlock = dots.find(".owl-carousel__dot .owl-carousel__dot-pie"); 4578 if (animationBlock.length) { 4579 animationBlock.css("animation-play-state", "paused"); 4580 } 4581 } 4582 } 4583 }); 4584 4585 slider.on("mouseleave.owl.autoplay", function (event) { 4586 var slider = $(event.target).closest(".owl-carousel"); 4587 var sliderData = slider.data("owl.carousel"); 4588 var dots = slider.siblings(".owl-carousel__dots--autoplay"); 4589 if (typeof sliderData !== "undefined") { 4590 var bNeedStopDotsAnimation = 4591 sliderData.settings.autoplay && sliderData.settings.autoplayHoverPause && dots.length; 4592 var rotating = sliderData._states.current.rotating; 4593 if (bNeedStopDotsAnimation && rotating) { 4594 var animationBlock = dots.find(".owl-carousel__dot .owl-carousel__dot-pie"); 4595 if (animationBlock.length) { 4596 animationBlock.css("animation-play-state", ""); 4597 } 4598 } 4599 } 4600 }); 4601 4602 slider.on("stop.owl.autoplay", function (event) { 4603 var slider = $(event.target); 4604 var sliderData = slider.data("owl.carousel"); 4605 var dots = slider.siblings(".owl-carousel__dots--autoplay"); 4606 if (typeof sliderData !== "undefined") { 4607 var bNeedStopDotsAnimation = 4608 sliderData.settings.autoplay && sliderData.settings.autoplayHoverPause && dots.length; 4609 if (bNeedStopDotsAnimation) { 4610 var animationBlock = dots.find(".owl-carousel__dot .owl-carousel__dot-pie"); 4611 if (animationBlock.length) { 4612 dots.find(".owl-carousel__dot.active").addClass("reset-animation"); 4613 animationBlock.css("animation-play-state", "paused"); 4614 } 4615 } 4616 } 4617 }); 4618 4619 slider.on("play.owl.autoplay", function (event) { 4620 var slider = $(event.target); 4621 var sliderData = slider.data("owl.carousel"); 4622 var dots = slider.siblings(".owl-carousel__dots--autoplay"); 4623 if (typeof sliderData !== "undefined") { 4624 var bNeedStopDotsAnimation = 4625 sliderData.settings.autoplay && sliderData.settings.autoplayHoverPause && dots.length; 4626 dots.find(".owl-carousel__dot.reset-animation").removeClass("reset-animation"); 4627 if (bNeedStopDotsAnimation && !slider.is(":hover") && !dots.is(":hover")) { 4628 var animationBlock = dots.find(".owl-carousel__dot .owl-carousel__dot-pie"); 4629 if (animationBlock.length) { 4630 animationBlock.css("animation-play-state", ""); 4631 } 4632 } 4633 } 4634 }); 4635 4636 slider.on("touchstart.owl.core", function (event) { 4637 slider.trigger("stop.owl.autoplay"); 4638 }); 4639 4640 slider.siblings(".owl-carousel__dots--autoplay").on("mouseover", function (event) { 4641 var sliderData = slider.data("owl.carousel"); 4642 if (sliderData.settings.autoplayHoverPause) { 4643 slider.trigger("mouseover.owl.autoplay"); 4644 } 4645 }); 4646 4647 slider.on("changed.owl.carousel", function (event) { 4648 var $slider = $(event.target); 4649 var sliderData = $slider.data("owl.carousel"); 4650 var pluginOptions = $slider.data("pluginOptions"); 4651 4652 var eventdata = { slider: $slider, data: event }; 4653 BX.onCustomEvent("onSlide", [eventdata]); 4654 4655 if (pluginOptions) { 4656 // click .ajax_load_btn 4657 if ($slider.parent().find(".ajax_load_btn").length) { 4658 if (sliderData._current + 1 + sliderData.settings.items >= sliderData._items.length) { 4659 $slider.parent().find(".ajax_load_btn").trigger("click"); 4660 } 4661 } 4662 if (typeofExt(pluginOptions) === "object") { 4663 if ("index" in pluginOptions) { 4664 if ($(".gallery-view_switch").length) { 4665 $(".gallery-view_switch__count-wrapper--big .gallery-view_switch__count-value").text( 4666 event.item.index + 1 + "/" + event.item.count 4667 ); 4668 } 4669 } 4670 4671 if ("relatedTo" in pluginOptions) { 4672 var relatedClass = pluginOptions.relatedTo, 4673 relatedBlock = $(relatedClass); 4674 4675 if (relatedBlock.length && sliderData) { 4676 if (!sliderData.loop) { 4677 var current = event.item.index; 4678 } else { 4679 var count = event.item.count - 1; 4680 var current = Math.round(event.item.index - event.item.count / 2 - 0.5); 4681 4682 if (current < 0) current = count; 4683 4684 if (current > count) current = 0; 4685 } 4686 4687 relatedBlock.find(".owl-item").removeClass("current").eq(current).addClass("current"); 4688 4689 var onscreen = relatedBlock.find(".owl-item.active").length - 1; 4690 var start = relatedBlock.find(".owl-item.active").first().index(); 4691 var end = relatedBlock.find(".owl-item.active").last().index(); 4692 4693 if (current > end) relatedBlock.data("owl.carousel").to(current, 100, true); 4694 4695 if (current < start) relatedBlock.data("owl.carousel").to(current - onscreen, 100, true); 4696 // $(".owl-slider-"+id).trigger('to.owl.carousel', [itemCarousel]) 4697 } 4698 } 4699 } 4700 } 4701 }); 4702 4703 slider.on("translated.owl.carousel", function (event) {}); 4704 4705 if ("clickTo" in config) { 4706 var relatedClass = config.clickTo, 4707 magnifier = "magnifier" in config; 4708 4709 slider.on("click", ".owl-item", function (e) { 4710 e.preventDefault(); 4711 var _this = $(this), 4712 number = _this.index(); 4713 4714 if (magnifier) { 4715 if ($(relatedClass).closest(".product-container").find(".zoom_picture").length) { 4716 $(relatedClass) 4717 .closest(".product-container") 4718 .find(".zoom_picture") 4719 .attr("data-large", _this.find(".product-detail-gallery__item").data("big")); 4720 $(relatedClass) 4721 .closest(".product-container") 4722 .find(".zoom_picture") 4723 .attr("xoriginal", _this.find(".product-detail-gallery__item").data("big")); 4724 $(relatedClass) 4725 .closest(".product-container") 4726 .find(".zoom_picture") 4727 .attr("src", _this.find(".product-detail-gallery__item img").attr("src")); 4728 } 4729 _this.siblings("").removeClass("current"); 4730 _this.addClass("current"); 4731 } else { 4732 $(relatedClass).data("owl.carousel").to(number, 300, true); 4733 } 4734 }); 4735 } 4736 }); 4737}; 4738 4739InitFlexSlider = function () {}; 4740 4741InitFlexSliderClass = function (class_name) {}; 4742 4743InitFlexSliderMin = function () {}; 4744 4745InitAppear = function () { 4746 // progress bar 4747 $("[data-appear-progress-animation]").iAppear( 4748 function () { 4749 var $this = $(this); 4750
4751 var delay = $this.attr("data-appear-animation-delay") ? $this.attr("data-appear-animation-delay") : 1; 4752 if (delay > 1) $this.css("animation-delay", delay + "ms"); 4753 $this.addClass($this.attr("data-appear-animation")); 4754 4755 setTimeout(function () { 4756 $this.animate( 4757 { 4758 width: $this.attr("data-appear-progress-animation"), 4759 }, 4760 1500, 4761 "easeOutQuad", 4762 function () { 4763 $this.find(".progress-bar-tooltip").animate( 4764 { 4765 opacity: 1, 4766 }, 4767 500, 4768 "easeOutQuad" 4769 ); 4770 } 4771 ); 4772 }, delay); 4773 }, 4774 { 4775 rootMargin: "-50px 0px -50px 0px", 4776 accX: 0, 4777 accY: -50, 4778 } 4779 ); 4780 4781 // portfolio item 4782 $(".item.animated-block").iAppear(function () { 4783 $(this).addClass($(this).data("animation")).addClass("visible"); 4784 }); 4785 4786 // flexslider appear 4787 $(".appear-block").iAppear(function () { 4788 const eventdata = { target: this }; 4789 BX.onCustomEvent("onAppearBlockShow", [eventdata]); 4790 4791 $(this).removeClass("appear-block"); 4792 CheckFlexSlider(); 4793 InitFlexSlider(); 4794 InitOwlSlider(); 4795 initSwiperSlider(); 4796 }); 4797}; 4798 4799SliceHeightBlocks = function () { 4800 $('*[data-slice="Y"]').each(function () { 4801 var slice_els = $(this).find('*[data-slice-block="Y"]'); 4802 if (slice_els.length) { 4803 var slice_params = {}; 4804 if (slice_els.data("slice-params")) slice_params = slice_els.data("slice-params"); 4805 slice_els.sliceHeight(slice_params); 4806 } 4807 }); 4808}; 4809 4810createTableCompare = function (originalTable, appendDiv, cloneTable) { 4811 try { 4812 if ($(".tarifs .head-block:visible").length) { 4813 var clone = originalTable.clone().addClass("clone"); 4814 if (cloneTable.length) { 4815 cloneTable.remove(); 4816 appendDiv.html(""); 4817 appendDiv.html(clone); 4818 } else { 4819 appendDiv.append(clone); 4820 } 4821 } 4822 } catch (e) { 4823 } finally { 4824 } 4825}; 4826 4827InitTopestMenuGummi = function () { 4828 if (!isOnceInited) { 4829 function _init() { 4830 var arItems = $menuTopest.find(".menu-topest__item"); 4831 var cntItems = arItems.length; 4832 if (cntItems) { 4833 var itemsWidth = 0; 4834 for (var i = 0; i < cntItems; ++i) { 4835 var item = arItems.eq(i); 4836 var itemWidth = item.actual("outerWidth", { includeMargin: true }); 4837 4838 arItemsHideWidth[i] = (itemsWidth += itemWidth) + (i == cntItems - 1 ? 0 : moreWidth); 4839 } 4840 } 4841 } 4842 4843 function _gummi() { 4844 var rowWidth = $menuTopest.actual("innerWidth"); 4845 var arItems = $menuTopest.find(".menu-topest__item"); 4846 var cntItems = arItems.length; 4847 var arItemsToRemove = []; 4848 4849 if (cntItems) { 4850 var bMore = false; 4851 var moreItems = []; 4852 for (var i = cntItems - 1; i >= 0; --i) { 4853 var item = arItems.eq(i); 4854 var bInMore = item.parents(".menu-topest__more").length > 0; 4855 if (!bInMore) { 4856 if (arItemsHideWidth[i] > rowWidth + 1) { 4857 if (!bMore) { 4858 bMore = true; 4859 more.removeClass("hidden"); 4860 } 4861 var clone = item.clone(); 4862 clone.find(">a").addClass("dark_font"); 4863 moreItems.push(clone[0]); 4864 arItemsToRemove.push(i); 4865 } else { 4866 break; 4867 } 4868 } 4869 } 4870 $(moreItems).prependTo(moreDropdown); 4871 4872 if (!bMore) { 4873 for (var i = 0; i < cntItems; ++i) { 4874 var item = arItems.eq(i); 4875 var bInMore = item.parents(".menu-topest__more li").length > 0; 4876 if (bInMore) { 4877 if (arItemsHideWidth[i] <= rowWidth) { 4878 if (i === cntItems - 1) { 4879 bMore = false; 4880 more.addClass("hidden"); 4881 } 4882 var clone = item.clone(); 4883 clone.find(">a").removeClass("dark_font"); 4884 clone.insertBefore(more); 4885 item.addClass("cloned"); 4886 } 4887 } 4888 } 4889 } 4890 4891 if (arItemsToRemove.length) { 4892 arItemsToRemove.map(function (elIndex) { 4893 $(arItems[elIndex]).remove(); 4894 }); 4895 } 4896 4897 $menuTopest.find(".menu-topest__item.cloned").remove(); 4898 $menuTopest.closest(".menu-topest__wrapper").addClass("dotted-complete"); 4899 var wrapper = $menuTopest.closest(".hide-dotted"); 4900 if (wrapper.length) { 4901 wrapper.addClass("dotted-complete"); 4902 } 4903 } 4904 } 4905 4906 var $menuTopest = $(".menu-topest"); 4907 if ($menuTopest.length) { 4908 var more = $menuTopest.find(".menu-topest__more"); 4909 var moreDropdown = more.find(">.dropdown"); 4910 var moreWidth = more.actual("outerWidth", { includeMargin: true }); 4911 var arItemsHideWidth = []; 4912 4913 ignoreResize.push(true); 4914 _init(); 4915 _gummi(); 4916 ignoreResize.pop(); 4917 4918 BX.addCustomEvent("onWindowResize", function (eventdata) { 4919 try { 4920 ignoreResize.push(true); 4921 _gummi(); 4922 } catch (e) { 4923 } finally { 4924 ignoreResize.pop(); 4925 } 4926 }); 4927 } 4928 } 4929}; 4930 4931CheckHeaderFixedMenu = function () { 4932 if ( 4933 arAsproOptions["THEME"]["HEADER_FIXED"] == 2 && 4934 $("#headerfixed .js-nav").length && 4935 window.matchMedia("(min-width: 992px)").matches 4936 ) { 4937 $("#headerfixed .js-nav").css("width", "0"); 4938 var all_width = 0, 4939 cont_width = $("#headerfixed .maxwidth-theme").actual("width"), 4940 padding_menu = 4941 $("#headerfixed .logo-row.v2 .menu-block").actual("outerWidth") - 4942 $("#headerfixed .logo-row.v2 .menu-block").actual("width"); 4943 $("#headerfixed .logo-row.v2 > .inner-table-block").each(function () { 4944 if (!$(this).hasClass("menu-block")) all_width += $(this).actual("outerWidth"); 4945 }); 4946 $("#headerfixed .js-nav").width(cont_width - all_width - padding_menu); 4947 } 4948}; 4949 4950/*function CheckTopMenuPadding() { 4951 if ($(".logo_and_menu-row .right-icons .wrap_icon").length && $(".logo_and_menu-row .menu-row").length) { 4952 var menuPosition = $(".menu-row .menu-only").position().left, 4953 maxWidth = $(".logo_and_menu-row .maxwidth-theme").width() - 32, 4954 leftPadding = 0, 4955 rightPadding = 0; 4956 4957 $(".logo_and_menu-row .menu-row>div") 4958 .each(function (indx) { 4959 if (!$(this).hasClass("menu-only")) { 4960 var elementPosition = $(this).position().left, 4961 elementWidth = $(this).outerWidth(); 4962 4963 if (elementPosition > menuPosition) { 4964 rightPadding += elementWidth; 4965 } else { 4966 leftPadding += elementWidth; 4967 } 4968 } 4969 }) 4970 .promise() 4971 .done(function () { 4972 $(".logo_and_menu-row .menu-only").css({ "padding-left": leftPadding, "padding-right": rightPadding + 1 }); 4973 }); 4974 } 4975};*/ 4976 4977/*function CheckTopMenuOncePadding() { 4978 if ($(".menu-row.sliced .right-icons .wrap_icon").length) { 4979 var menuPosition = $(".menu-row .menu-only").position().left, 4980 maxWidth = $(".logo_and_menu-row .maxwidth-theme").width() - 32, 4981 leftPadding = 0, 4982 rightPadding = 0; 4983 4984 $(".menu-row.sliced .maxwidth-theme>div>div") 4985 .each(function (indx) { 4986 if (!$(this).hasClass("menu-only")) { 4987 var elementPosition = $(this).position().left, 4988 elementWidth = $(this).outerWidth(); 4989 4990 if (elementPosition > menuPosition) { 4991 rightPadding += elementWidth; 4992 } else { 4993 leftPadding += elementWidth; 4994 } 4995 } 4996 }) 4997 .promise() 4998 .done(function () { 4999 $(".menu-row.sliced .menu-only").css({ "padding-left": leftPadding, "padding-right": rightPadding + 1 }); 5000 }); 5001 } 5002}; 5003*/ 5004 5005CheckSearchWidth = function () { 5006 if ($(".logo_and_menu-row .search_wrap").length) { 5007 var searchPosition = $(".logo_and_menu-row .search_wrap").position().left, 5008 maxWidth = $(".logo_and_menu-row .maxwidth-theme").width() - 32; 5009 width = 0; 5010 5011 $(".logo_and_menu-row .maxwidth-theme>div") 5012 .each(function () { 5013 if (!$(this).hasClass("search_wrap")) { 5014 var elementWidth = $(this).outerWidth(); 5015 5016 width = width ? width - elementWidth : maxWidth - elementWidth; 5017 } 5018 }) 5019 .promise() 5020 .done(function () { 5021 $(".logo_and_menu-row .search_wrap").outerWidth(width).css({ opacity: 1, visibility: "visible" }); 5022 }); 5023 } 5024}; 5025 5026var scrollToTopAnimateClassIn = false;
5027var scrollToTopAnimateClassOut = false; 5028 5029var $body = {}; 5030var isOnceInited = false; 5031 5032if (navigator.userAgent.indexOf("Edge") != -1) document.documentElement.className += " edge"; 5033 5034initFull = function () { 5035 checkMobileRegion(); 5036}; 5037 5038var isFrameDataReceived = false; 5039if (typeof window.frameCacheVars !== "undefined") { 5040 BX.addCustomEvent(window, "onFrameDataRequestFail", function (response) { 5041 // console.log(response); 5042 }); 5043 5044 BX.addCustomEvent("onFrameDataReceivedBefore", function () { 5045 // stop ya metrika webvisor DOM indexer 5046 pauseYmObserver(); 5047 }); 5048 5049 BX.addCustomEvent("onFrameDataReceived", function (json) { 5050 initFull(); 5051 5052 // resume ya metrika webvisor 5053 // (100ms sliceHeight) + (200ms mCustomScroll) + (100ms lazyload) 5054 setTimeout(resumeYmObserver, 400); 5055 5056 isFrameDataReceived = true; 5057 }); 5058} else { 5059 $(document).ready(initFull); 5060} 5061 5062scrollPreviewBlock = function () { 5063 scrollToBlock($.cookie("scroll_block")); 5064 $.cookie("scroll_block", null); 5065}; 5066 5067checkMobileRegion = function () { 5068 if ($(".confirm_region").length) { 5069 if (!$(".top_mobile_region").length) 5070 $('<div class="top_mobile_region"><div class="confirm_region"></div></div>').insertBefore($(".body")); 5071 $(".top_mobile_region .confirm_region").html($(".regions .confirm_region").html()); 5072 } 5073}; 5074 5075const CloseMobileSearch = function () { 5076 const $body = document.querySelector("body"); 5077 const $header = document.querySelector('[data-ajax-block="HEADER"]'); 5078 const $mobileHeader = document.querySelector("#mobileheader"); 5079 5080 $body.classList.remove("header--mobile-search-active", "jqm-initied", "overflow-block"); 5081 $header.classList.remove("filter-none"); 5082}; 5083
5084// on submit form 5085BX.addCustomEvent("onSubmitForm", function (eventdata) { 5086 try { 5087 if (typeof eventdata === "object" && eventdata && eventdata.form) { 5088 if (!(eventdata.form instanceof Node)) { 5089 eventdata.form = eventdata.form[0]; 5090 } 5091 5092 if (!eventdata.novalidate) { 5093 BX.Aspro?.Validation?.appendFields?.(eventdata.form); 5094 } 5095 5096 new Promise((resolve, reject) => { 5097 if (BX.Aspro?.Captcha) { 5098 BX.Aspro.Captcha.onSubmit(eventdata) 5099 .then((result) => { 5100 resolve(result); 5101 }) 5102 .catch((e) => { 5103 reject(e); 5104 }); 5105 5106 return; 5107 } 5108 5109 resolve(true); 5110 }).then((result) => { 5111 if (result) { 5112 eventdata.form.submit(); 5113 if (eventdata.form.closest(".form")) { 5114 eventdata.form.closest(".form").classList.add("sending"); 5115 } 5116 } 5117 }); 5118 } 5119 } catch (e) { 5120 console.error(e); 5121 } 5122}); 5123 5124$(document).ready(function () { 5125 typeof scrollToTop === "function" && scrollToTop(); 5126 5127 InitScrollBar(); 5128 5129 // ripple effect for buttons
5130 $.ripple(".btn:not(.btn--no-ripple)", { 5131 debug: false, // Turn Ripple.js logging on/off 5132 on: "mousedown", // The event to trigger a ripple effect 5133 opacity: 0.4, // The opacity of the ripple 5134 color: "auto", // Set the background color. If set to "auto", it will use the text color 5135 multi: true, // Allow multiple ripples per element 5136 duration: 0.6, // The duration of the ripple 5137 easing: "linear", // The CSS3 easing function of the ripple 5138 }); 5139 5140 if (!jQuery.browser.safari) { 5141 CheckTopMenuPadding(); 5142 CheckTopMenuOncePadding(); 5143 CheckHeaderFixed(); 5144 CheckTopMenuDotted(); 5145 MegaMenuFixed(); 5146 CheckSearchWidth(); 5147 InitTopestMenuGummi(); 5148 isOnceInited = true; 5149 /* 5150 setTimeout(function () { 5151 $(window).resize(); // need to check resize flexslider & menu 5152 }, 350); 5153 */ 5154 5155 setTimeout(function () { 5156 $(window).scroll(); 5157 }, 250); // need to check position fixed ask block 5158 } else { 5159 setTimeout(function () { 5160 $(window).resize(); // need to check resize flexslider & menu 5161 5162 setTimeout(function () { 5163 CheckTopMenuPadding(); 5164 CheckTopMenuOncePadding(); 5165 CheckHeaderFixed(); 5166 CheckTopMenuDotted(); 5167 MegaMenuFixed(); 5168 CheckSearchWidth(); 5169 InitTopestMenuGummi(); 5170 isOnceInited = true; 5171 5172 setTimeout(function () { 5173 $(window).scroll(); 5174 }, 50); 5175 }, 50); 5176 }, 350); 5177 } 5178 5179 // change type2 menu for fixed 5180 if ($("#headerfixed .js-nav").length) { 5181 if (arAsproOptions["THEME"]["HEADER_FIXED"] == 2) CheckHeaderFixedMenu(); 5182 5183 setTimeout(function () { 5184 $("#headerfixed .js-nav").addClass("opacity1"); 5185 }, 350); 5186 } 5187 5188 // close search block 5189 $("html, body").on("mousedown", function (e) { 5190 if (typeof e.target.className == "string" && e.target.className.indexOf("adm") < 0) { 5191 e.stopPropagation(); 5192 var search_target = $(e.target).closest(".search-result"); 5193 5194 if (isMobile) { 5195 if (search_target.length) location.href = search_target.attr("href"); 5196 } 5197 5198 if (!$(e.target).closest(".hint.active").length) { 5199 $(".hint.active .hint__icon").trigger("click"); 5200 } 5201 5202 var class_name = $(e.target).attr("class"); 5203 if (typeof class_name == "undefined" || class_name.indexOf("tooltip") < 0) 5204 //tooltip link 5205 $(".tooltip-link").tooltip("hide"); 5206 } 5207 }); 5208 $(".inline-search-block") 5209 .find("*") 5210 .on("mousedown", function (e) { 5211 e.stopPropagation(); 5212 }); 5213 5214 $(".filter-action").on("click", function () { 5215 $(this).toggleClass("active"); 5216 $(this).find(".svg").toggleClass("white"); 5217 if ($(".introtext").length) { 5218 var top_pos = $(".filters-wrap").position(); 5219 $(".bx_filter").css({ top: top_pos.top + 40 }); 5220 } 5221 $(".bx_filter").slideToggle(); 5222 }); 5223 5224 // -- scroll after apply option 5225 scrollPreviewBlock(); 5226 5227 // expand/hide filter values 5228 $(document).on("click", ".expand_block", function () { 5229 togglePropBlock($(this)); 5230 }); 5231 5232 // popup img list 5233 $(document).on("click", ".fancy-js", function () { 5234 const parent = $(this).closest(".image-list"); 5235 let arItems = []; 5236 let index = 0; 5237 parent.find("[data-big]").each(function () { 5238 let _this = $(this); 5239 let obItem = { 5240 src: _this.data("big"), 5241 opts: { 5242 caption: _this.attr("alt"), 5243 }, 5244 }; 5245 arItems.push(obItem); 5246 }); 5247 index = parent.find(".active").index(); 5248 if (arItems.length) { 5249 if (typeof $.fn.fancybox === "function") { 5250 $.fancybox.open(arItems, { loop: false }, index); 5251 } 5252 } 5253 }); 5254 5255 InitOwlSlider(); 5256 InitFlexSlider(); 5257 InitFlexSliderMin(); 5258 5259 InitFancyBox(); 5260 InitFancyBoxVideo(); 5261 5262 // for check flexslider bug in composite mode 5263 waitingNotExists(".detail .galery #slider", ".detail .galery #slider .flex-viewport", 1000, function () { 5264 InitOwlSlider(); 5265 InitFlexSlider(); 5266 setTimeout(function () { 5267 $(window).resize(); 5268 }, 350); 5269 }); 5270 5271 // change view type catalog 5272 $(".view-button").on("click", function () { 5273 $(this).siblings().removeClass("cur"); 5274 $(this).addClass("cur"); 5275 }); 5276 5277 // -- escape close popup form 5278 $(document).on("keydown", function (e) { 5279 if (e.keyCode == 27) { 5280 if ($(".main-user-consent-request-popup:visible").length) { 5281 BX.onCustomEvent("onUserConsentHide", []); 5282 return; 5283 } 5284 5285 BX.onCustomEvent("onAsproEscapeButton"); 5286 5287 if ($(".jqmWindow.show").length) { 5288 $(".jqmWindow.show:last").jqmHide(); 5289 } 5290 5291 if ($(".mega-fixed-menu").is(":visible")) { 5292 $(".mega-fixed-menu .mega-fixed-menu__close").click(); 5293 } 5294 } 5295 }); 5296 5297 $(document).on("click", '*[data-event="jqm"]', function (e) { 5298 e.preventDefault(); 5299 e.stopPropagation(); 5300 if (!$(this).hasClass("clicked")) { 5301 $(this).addClass("clicked"); 5302 $(this).jqmEx(); 5303 $(this).trigger("click"); 5304 } 5305 }); 5306 5307 $(document).on("click", ".animate-load", function (e) { 5308 $(this).parent().addClass("loadings"); 5309 }); 5310 5311 BX.addCustomEvent("onCompleteAction", function (eventdata, _this) { 5312 try { 5313 if (eventdata.action === "loadForm") { 5314 $(_this).parent().removeClass("loadings"); 5315 $(_this).removeClass("clicked"); 5316 } else if (eventdata.action === "loadBasket") { 5317 } else if (eventdata.action === "loadRSS") { 5318 } else if (eventdata.action === "jsLoadBlock") { 5319 InitScrollBar(); 5320 } else if (eventdata.action === "ajaxContentLoaded") { 5321 } 5322 } catch (e) { 5323 console.error(e); 5324 } 5325 }); 5326 5327 BX.addCustomEvent(window, "onAjaxSuccess", function (e) { 5328 if (e != "OK") { 5329 InitOwlSlider(); 5330 InitFlexSlider(); 5331 InitFlexSliderMin(); 5332 } 5333 }); 5334 5335 // show print 5336 if (arAsproOptions["THEME"]["PRINT_BUTTON"] == "Y") { 5337 setTimeout(function () { 5338 if ($(".page-top .rss-block.top").length) { 5339 $('<div class="print-link"><i class="svg svg-print"></i></div>').insertBefore( 5340 $(".page-top .rss-block.top .shares-block") 5341 ); 5342 } else if ($(".page-top .rss").length) { 5343 $('<div class="print-link"><i class="svg svg-print"></i></div>').insertAfter($(".page-top .rss")); 5344 } else if ($(".page-top h1").length) 5345 $('<div class="print-link"><i class="svg svg-print"></i></div>').insertBefore($(".page-top h1")); 5346 // else 5347 // $('footer .print-block').html('<div class="print-link"><i class="svg svg-print"><svg id="Print.svg" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
5347ox="0 0 16 16"><path class="cls-1" d="M1553,287h-2v3h-8v-3h-2a2,2,0,0,1-2-2v-5a2,2,0,0,1,2-2h2v-4h8v4h2a2,2,0,0,1,2,2v5A2,2,0,0,1,1553,287Zm-8,1h4v-4h-4v4Zm4-12h-4v2h4v-2Zm4,4h-12v5h2v-3h8v3h2v-5Z" transform="translate(-1539 -274)"/></svg></i></div>'); 5348 }, 150); 5349 } 5350 5351 $(document).on("click", ".print-link", function () { 5352 window.print(); 5353 }); 5354 5355 $(".head-block .item-link").on("click", function () { 5356 var _this = $(this); 5357 _this.siblings().removeClass("active"); 5358 _this.addClass("active"); 5359 }); 5360 5361 //alert(navigator.userAgent); 5362 $("table.table").each(function () { 5363 var _this = $(this), 5364 first_td = _this.find("thead tr th"); 5365 if (!first_td.length) first_td = _this.find("thead tr td"); 5366 if (first_td.length) { 5367 _this.find("tbody tr:not(.nomobile)").each(function (i) { 5368 $(this) 5369 .find("td") 5370 .each(function (i) { 5371 if (typeof first_td[i] !== "undefined") 5372 $('<div class="th-mobile">' + first_td[i].textContent + "</div>").appendTo($(this)); 5373 }); 5374 }); 5375 } 5376 }); 5377 5378 if ($("a.fancybox").length) { 5379 if (typeof $.fn.fancybox == "function") { 5380 $("a.fancybox").fancybox(); 5381 } 5382 } 5383 5384 // flex pagination 5385 $(document).on("mouseenter", ".flex-viewport .item", function () { 5386 $(this).closest(".flexslider").find(".flex-control-nav").toggleClass("noz"); 5387 $(this).closest(".flexslider").find(".flex-control-nav").css("z-index", "0"); 5388 }); 5389 $(document).on("mouseleave", ".flex-viewport .item", function () { 5390 $(this).closest(".flexslider").find(".flex-control-nav").toggleClass("noz"); 5391 $(this).closest(".flexslider").find(".flex-control-nav").css("z-index", "2"); 5392 }); 5393 5394 // ajax more items 5395 $(document).on("click", ".ajax_load_btn", function () { 5396 var url = $(this).closest(".bottom_nav").find(".module-pagination-next").attr("href"), 5397 th = $(this).find(".more_text_ajax"), 5398 _this = $(this), 5399 bottom_nav = $(this).closest(".bottom_nav"); 5400 5401 if (!th.hasClass("loadings")) { 5402 th.addClass("loadings"); 5403 5404 var objUrl = parseUrlQuery(), 5405 obData = { AJAX_REQUEST: "Y", ajax_get: "Y", bitrix_include_areas: "N" }; 5406 5407 if ("clear_cache" in objUrl && objUrl.clear_cache == "Y") { 5408 obData.clear_cache = "Y"; 5409 } 5410 5411 //index page 5412 if ($(".body.index").length) { 5413 var class_block = th.closest(".drag-block").data("class").replace("_drag", ""); 5414 class_block = class_block.replace(/\s/g, ""); 5415 obData.BLOCK = class_block; 5416 5417 // get mainblock action file 5418 let $dragBlock = th.closest(".drag-block"); 5419 if ($dragBlock.length) { 5420 $jsParamsBlock = $dragBlock[0].querySelector(".js-request-data"); 5421 if ($jsParamsBlock) { 5422 if ($jsParamsBlock.dataset.action) { 5423 let action = new URL(window.location.origin + url); 5424 url = window.location.origin + $jsParamsBlock.dataset.action + action.search; 5425 } 5426 } 5427 } 5428 } 5429 5430 if (_this.closest(".ajax-pagination-wrapper").length) { 5431 obData.BLOCK = _this.closest(".ajax-pagination-wrapper").data("class"); 5432 } 5433 5434 if ($(".banners-small.front").length) { 5435 obData.MD = $(".banners-small.front").find(".items").data("colmd"); 5436 obData.SM = $(".banners-small.front").find(".items").data("colsm"); 5437 } 5438 5439 // tabs block 5440 if (_this.closest(".tab-content-block").length) { 5441 var filter = th.closest(".tab-content-block").data("filter"); 5442 obData.GLOBAL_FILTER = filter; 5443 } 5444 5445 $.ajax({ 5446 url: url, 5447 data: BX.ajax.prepareData(obData), 5448 success: function (html) { 5449 var html = html.trim(); 5450 var mobileBottomClicked = bottom_nav.hasClass("mobile_slider"); 5451 var hasMobileBottomNav = $(html).find(".bottom_nav.mobile_slider"); 5452 var bottomNav = hasMobileBottomNav.length ? hasMobileBottomNav : $(html).find(".bottom_nav"); 5453 var bottomNavHtml = bottomNav.html(); 5454 var bottomNavScrollClass = bottomNav.data("scroll-class"); 5455 var hasBottomNav = $(html).find(".ajax_load_btn").length; 5456 5457 var eventdata = { action: "ajaxContentLoaded", content: html }; 5458 5459 if ($(".banners-small.front").length) { 5460 $(".banners-small .items.row").append(html); 5461 $(".bottom_nav").html($(".banners-small .items.row .bottom_nav").html()); 5462 $(".banners-small .items.row .bottom_nav").remove(); 5463 } else if (bottom_nav.data("append") !== undefined && bottom_nav.data("parent") !== undefined) { 5464 var $slider = th.closest(bottom_nav.data("parent")).find(".owl-carousel"); 5465 if ($slider.length) { 5466 var obData = BX.processHTML(html); 5467 html = obData.HTML; 5468 5469 var $slides = $("<div>" + html + "</div>").find(">*"); 5470 $slides.each(function () {
5471 if (!$(this).hasClass("wrap_nav")) { 5472 $slider.trigger("add.owl.carousel", [$(this).wrap("<div></div>").parent().html()]); 5473 } 5474 }); 5475 $slider.trigger("refresh.owl.carousel"); 5476 5477 setTimeout(function () { 5478 BX.ajax.processScripts(obData.SCRIPT); 5479 }, 100); 5480 } else { 5481 var target = html; 5482 if (bottom_nav.data("target") !== undefined) { 5483 target = $(html).find(bottom_nav.data("target")); 5484 } 5485 if (mobileBottomClicked || hasMobileBottomNav.length) { 5486 var mobileSliderNav = th.closest(bottom_nav.data("parent")).find(".bottom_nav.mobile_slider"); 5487 if (mobileSliderNav.length) { 5488 mobileSliderNav.before(target); 5489 } else { 5490 bottom_nav.before(target); 5491 } 5492 } else { 5493 th.closest(bottom_nav.data("parent")).find(bottom_nav.data("append")).append(target); 5494 } 5495 th.closest(bottom_nav.data("parent")) 5496 .find(bottom_nav.data("append")) 5497 .find(".bottom_nav_wrapper") 5498 .remove(); 5499 5500 if (hasBottomNav) { 5501 if (bottomNavScrollClass !== undefined) { 5502 th.closest(bottom_nav.data("parent")).find(bottomNavScrollClass).addClass("has-bottom-nav"); 5503 } 5504 th.closest(bottom_nav.data("parent")).find(bottom_nav.data("append")).addClass("has-bottom-nav"); 5505 } else { 5506 if (bottomNavScrollClass !== undefined) { 5507 th.closest(bottom_nav.data("parent")).find(bottomNavScrollClass).removeClass("has-bottom-nav"); 5508 } 5509 th.closest(bottom_nav.data("parent")).find(bottom_nav.data("append")).removeClass("has-bottom-nav"); 5510 } 5511 } 5512 5513 bottom_nav = th.closest(bottom_nav.data("parent")).find(".bottom_nav"); 5514 bottom_nav.html(bottomNavHtml); 5515 var icon = bottom_nav.find(".svg-inline-bottom_nav-icon"); 5516 icon.css("display", ""); 5517 5518 eventdata.container = th.closest(bottom_nav.data("parent")); 5519 } else { 5520 $(html).insertBefore($(".blog .bottom_nav")); 5521 $(".bottom_nav").html($(".blog .bottom_nav:hidden").html()); 5522 $(".blog .bottom_nav:hidden").remove(); 5523 } 5524 5525 setTimeout(function () { 5526 BX.onCustomEvent("onCompleteAction", [eventdata, th[0]]); 5527 $(".banners-small .item.normal-block").sliceHeight(); 5528 th.removeClass("loading"); 5529 }, 100); 5530 }, 5531 }); 5532 } 5533 }); 5534 5535 // bug fix in ff 5536 $("img").removeAttr("draggable"); 5537 5538 // Responsive Menu Events 5539 var addActiveClass = false; 5540 $("#mainMenu li.dropdown > a > i, #mainMenu li.dropdown-submenu > a > i").on("click", function (e) { 5541 e.preventDefault(); 5542 if ($(window).width() > 979) return; 5543 addActiveClass = $(this).closest("li").hasClass("resp-active"); 5544 // $('#mainMenu').find('.resp-active').removeClass('resp-active'); 5545 if (!addActiveClass) { 5546 $(this).closest("li").addClass("resp-active"); 5547 } else { 5548 $(this).closest("li").removeClass("resp-active"); 5549 } 5550 }); 5551 5552 // animate increment 5553 if ($(".spincrement").length) { 5554 $(".spincrement").counterUp({ 5555 delay: 80, 5556 time: 1000, 5557 }); 5558 } 5559 5560 $(document).on("paste, change, keyup", ".form.blog-comment-fields input[required]", function () { 5561 let value = $(this).val(); 5562 5563 if (value.length) { 5564 $(this).closest(".form-group").find("label.error").remove(); 5565 } 5566 }); 5567 5568 $(".toggle .more_items").on("click", function () { 5569 $(this).closest(".toggle").find(".collapsed").fadeToggle(); 5570 $(this).remove(); 5571 if (typeof $(this).data("resize") !== "undefined" && $(this).data("resize")) $(window).resize(); 5572 }); 5573 $(".toggle_menu .more_items").on("click", function () { 5574 $(this).closest(".toggle_menu").find(".collapsed").addClass("clicked_exp"); 5575 $(this).remove(); 5576 }); 5577 5578 $(document).on("click", ".jqmOverlay.mobp", function (e) { 5579 HideOverlay(); 5580 }); 5581 5582 if ($(".styled-block .row > div.col-md-3").length) { 5583 BX.addCustomEvent("onWindowResize", function (eventdata) {
5584 try { 5585 ignoreResize.push(true); 5586 $(".styled-block .row > div.col-md-3").each(function () { 5587 $(this).css({ height: "", "line-height": "" }); 5588 var z = parseInt($(".body_media").css("top")); 5589 if (z > 0) { 5590 var rowHeight = $(this).parents(".row").first().actual("outerHeight"); 5591 $(this).css({ height: rowHeight + "px", "line-height": rowHeight + "px" }); 5592 } 5593 }); 5594 } catch (e) { 5595 } finally { 5596 ignoreResize.pop(); 5597 } 5598 }); 5599 } 5600 5601 if ($(".order-block").length) { 5602 BX.addCustomEvent("onWindowResize", function (eventdata) { 5603 try { 5604 ignoreResize.push(true); 5605 $(".order-block").each(function () { 5606 var cols = $(this).find(".row > div"); 5607 if (cols.length) { 5608 var colFirst = cols.first(); 5609 var colLast = cols.last(); 5610 var colText = colFirst.find(".text"); 5611 var bText = colText.length; 5612 var bOnlyText = cols.length === 1 && bText; 5613 var bPrice = colFirst.find(".price").length; 5614 var z = parseInt($(".body_media").css("top")); 5615 5616 cols.css({ height: "", "padding-top": "", "padding-bottom": "" }); 5617 colText.css({ height: "", "padding-top": "", "padding-bottom": "" }); 5618 if ((!bPrice && z > 0) || (bPrice && z > 1)) { 5619 var minHeight = 83; 5620 5621 if (!bOnlyText) { 5622 var colLast_height = colLast.outerHeight(); 5623 colLast_height = colLast_height >= minHeight ? colLast_height : minHeight; 5624 } 5625 5626 if (bText) { 5627 var colFirst_height = colFirst.outerHeight(); 5628 colFirst_height = colFirst_height >= minHeight ? colFirst_height : minHeight; 5629 } 5630 5631 var colMax_height = bText 5632 ? !bOnlyText 5633 ? colLast_height >= colFirst_height 5634 ? colLast_height 5635 : colFirst_height 5636 : colLast_height 5637 : colFirst_height; 5638 5639 if (!bOnlyText) { 5640 var textPadding = 41 + (colMax_height - colFirst.outerHeight()) / 2; 5641 colLast.find(".btns").css({ 5642 "padding-top": textPadding + "px", 5643 "padding-bottom": textPadding + "px", 5644 height: colMax_height + "px", 5645 }); 5646 } 5647 if (bText) { 5648 colLast.css({ height: colMax_height + "px" }); 5649 var textPadding = 41 + (colMax_height - colText.outerHeight()) / 2; 5650 colText.css({ 5651 "padding-top": textPadding + "px", 5652 "padding-bottom": textPadding + "px", 5653 height: colMax_height + "px", 5654 }); 5655 } 5656 } 5657 } 5658 }); 5659 } catch (e) { 5660 } finally { 5661 ignoreResize.pop(); 5662 } 5663 }); 5664 } 5665 5666 if ($(".equal-padding").length) { 5667 BX.addCustomEvent("onWindowResize", function (eventdata) { 5668 try { 5669 ignoreResize.push(true); 5670 $(".equal-padding").each(function () { 5671 $(this).find(".text").css({ "padding-top": "0px", "padding-bottom": "0px" }); 5672 var equal_block = $(this).siblings(".equals"), 5673 height = $(this).actual("outerHeight"); 5674 5675 delta = Math.round((equal_block.actual("outerHeight") - height) / 2); 5676 if (delta) 5677 $(this) 5678 .find(".text") 5679 .css({ "padding-top": delta + "px", "padding-bottom": delta + "px" }); 5680 }); 5681 } catch (e) { 5682 } finally { 5683 ignoreResize.pop(); 5684 } 5685 }); 5686 } 5687 5688 $(document).on("click", ".mega-menu .dropdown-menu", function (e) { 5689 e.stopPropagation(); 5690 }); 5691 5692 $(document).on("click", ".mega-menu .dropdown-toggle.more-items", function (e) { 5693 e.preventDefault(); 5694 }); 5695 5696 // $(".table-menu .dropdown,.table-menu .dropdown-submenu,.table-menu .dropdown-toggle").on("mouseenter", function () {
5697 // CheckTopVisibleMenu(); 5698 // }); 5699 5700 $(document).on( 5701 "mouseenter", 5702 ".header-menu__wrapper .header-menu__item--dropdown:not(.header-menu__item--wide), .header-menu__wrapper .header-menu__item--dropdown:not(.header-menu__item--wide) .header-menu__dropdown-item.header-menu__dropdown-item--with-dropdown, .header-menu__wrapper .header-menu__item--more-items, .header-menu__wrapper .header-menu__item--more-items .header-menu__dropdown-item--with-dropdown, .header-menu__wrapper .header-menu__item--more-items .header-menu__item--dropdown.header-menu__item--wide, .header-menu__wrapper .header-menu__item--more-items .header-menu__item--dropdown.header-menu__item--wide .header-menu__dropdown-item--with-dropdown, .header-menu__wrapper .header-menu__item--more-items .header-menu__item--dropdown.header-menu__item--wide .header-menu__dropdown-item--with-dropdown .header-menu__wide-submenu-item--with-dropdown", 5703 function (e) { 5704 CheckTopVisibleMenu($(e.currentTarget)); 5705 } 5706 ); 5707 5708 $(document).on( 5709 "mouseenter", 5710 ".header-menu__item--wide, .header-menu__item--wide .header-menu__dropdown-menu", 5711 function () { 5712 var bannerMenu = $(this).find(".side_banners .owl-carousel-hover"); 5713 if (bannerMenu.length) { 5714 bannerMenu.removeClass("owl-carousel-hover").addClass("owl-carousel"); 5715 setTimeout(function () { 5716 InitOwlSlider(); 5717 bannerMenu.removeClass("loading-state"); 5718 }, 1); 5719 } 5720 } 5721 ); 5722 5723 $(document).on("mouseenter", ".menu-side-column__item--wide", function () { 5724 var bannerMenu = $(".bottom-banners .owl-carousel-hover"); 5725 if (bannerMenu.length) { 5726 bannerMenu.removeClass("owl-carousel-hover").addClass("owl-carousel"); 5727 setTimeout(function () { 5728 InitOwlSlider(); 5729 bannerMenu.removeClass("loading-state"); 5730 }, 1); 5731 } 5732 }); 5733 $(".mega-menu .search-item .search-icon, .menu-row #title-search .fa-close").on("click", function (e) { 5734 e.preventDefault(); 5735 $(".menu-row #title-search").toggleClass("hide"); 5736 }); 5737 5738 $(".mega-menu ul.nav .search input").on("keyup", function (e) { 5739 var inputValue = $(this).val(); 5740 $(".menu-row > .search input").val(inputValue); 5741 if (e.keyCode == 13) { 5742 $(".menu-row > .search form").submit(); 5743 } 5744 }); 5745 5746 $(".menu-row > .search input").on("keyup", function (e) { 5747 var inputValue = $(this).val(); 5748 $(".mega-menu ul.nav .search input").val(inputValue); 5749 if (e.keyCode == 13) { 5750 $(".menu-row > .search form").submit(); 5751 } 5752 }); 5753 5754 $(".mega-menu ul.nav .search button").on("click", function (e) { 5755 e.preventDefault(); 5756 var inputValue = $(this).parents(".search").find("input").val(); 5757 $(".menu-and-search .search input").val(inputValue); 5758 $(".menu-row > .search form").submit(); 5759 }); 5760 5761 $(".filter .calendar").on("click", function () { 5762 var button = $(this).next(); 5763 if (button.hasClass("calendar-icon")) { 5764 button.trigger("click"); 5765 } 5766 }); 5767 5768 // sliceheights 5769 if ($(".banners-small .item.normal-block").length) $(".banners-small .item.normal-block").sliceHeight(); 5770 if ($(".teasers .item").length) $(".teasers .item").sliceHeight(); 5771 if ($(".wrap-portfolio-front .row.items > div").length) 5772 $(".wrap-portfolio-front .row.items > div").sliceHeight({ row: ".row.items", item: ".item1" }); 5773 5774 SliceHeightBlocks(); 5775 5776 InitAppear(); 5777 5778 // js-load-block appear 5779 if ($(".js-load-block").length) { 5780 var objUrl = parseUrlQuery(); 5781 var bClearCache = false; 5782 if ("clear_cache" in objUrl) { 5783 if (objUrl.clear_cache == "Y") { 5784 bClearCache = true; 5785 } 5786 } 5787 5788 var items = []; 5789 var bIdle = true; 5790 var insertNextBlockContent = function () { 5791 if (bIdle) { 5792 if (items.length) { 5793 bIdle = false; 5794 var item = items.pop(); 5795 5796 item.content = $.trim(item.content); 5797 5798 // remove /bitrix/js/main/core/core_window.js if it was loaded already 5799 if (item.content.indexOf("/bitrix/js/main/core/core_window.") !== -1 && BX.WindowManager) { 5800 item.content = item.content.replace( 5801 /<script src="\/bitrix\/js\/main\/core\/core_window\.[^>]*><\/script>/gm, 5802 "" 5803 ); 5804 } 5805 5806 // remove /bitrix/js/currency/core_currency.js if it was loaded already 5807 if ( 5808 item.content.indexOf("/bitrix/js/currency/core_currency.") !== -1 && 5809 typeof BX.Currency === "object" && 5810 BX.Currency.defaultFormat 5811 ) { 5812 item.content = item.content.replace( 5813 /<script src="\/bitrix\/js\/currency\/core_currency\.[^>]*><\/script>/gm, 5814 "" 5815 ); 5816 } 5817 5818 // remove /bitrix/js/main/pageobject/pageobject.js if it was loaded already 5819 if (item.content.indexOf("/bitrix/js/main/pageobject/pageobject.") !== -1 && BX.PageObject) { 5820 item.content = item.content.replace( 5821 /<script src="\/bitrix\/js\/main\/pageobject\/pageobject\.[^>]*><\/script>/gm, 5822 "" 5823 ); 5824 } 5825 5826 // remove /bitrix/js/main/polyfill/promise/js/promise.js if it not need 5827 if ( 5828 item.content.indexOf("/bitrix/js/main/polyfill/promise/js/promise.") !== -1 && 5829 typeof window.Promise !== "undefined" && 5830 window.Promise.toString().indexOf("[native code]") !== -1 5831 ) { 5832 item.content = item.content.replace( 5833 /<script src="\/bitrix\/js\/main\/polyfill\/promise\/js\/promise\.[^>]*><\/script>/gm, 5834 "" 5835 ); 5836 } 5837 5838 var ob = BX.processHTML(item.content); 5839 5840 // stop ya metrika webvisor DOM indexer 5841 pauseYmObserver(); 5842 5843 item.block.removeAttr("data-file").removeClass("loader_circle"); 5844 5845 if (item.block.data("appendTo")) { 5846 item.block.find(item.block.data("appendTo"))[0].innerHTML = ob.HTML; 5847 } else { 5848 const nodeAjaxContainer = item.block.find(".ajax-container")[0]; 5849 if (nodeAjaxContainer) { 5850 nodeAjaxContainer.innerHTML = ob.HTML; 5851 5852 let loadedState = parseInt(getComputedStyle(nodeAjaxContainer).getPropertyValue("--loaded")); 5853 let interval = setInterval(() => { 5854 loadedState = parseInt(getComputedStyle(nodeAjaxContainer).getPropertyValue("--loaded")); 5855 if (loadedState) { 5856 nodeAjaxContainer.nextElementSibling?.remove(); 5857 nodeAjaxContainer.removeAttribute("hidden"); 5858 clearInterval(interval); 5859 } 5860 }, 100); 5861 } else { 5862 if (item.block.find('> div[id*="bx_incl_"]').length) { 5863 item.block.find('> div[id*="bx_incl_"]')[0].innerHTML = ob.HTML; 5864 } else { 5865 item.block[0].innerHTML = ob.HTML; 5866 } 5867 } 5868 } 5869 5870 BX.ajax.processScripts(ob.SCRIPT); 5871 5872 var eventdata = { action: "jsLoadBlock" }; 5873 BX.onCustomEvent("onCompleteAction", [eventdata, item.block]); 5874 5875 // resume ya metrika webvisor 5876 // 500ms 5877 setTimeout(resumeYmObserver, 500); 5878 5879 bIdle = true; 5880 insertNextBlockContent(); 5881 } 5882 } 5883 }; 5884 5885 $(".js-load-block").iAppear( 5886 function () { 5887 var $this = $(this); 5888 5889 if ($this.data("file")) { 5890 var add_url = bClearCache ? "?clear_cache=Y" : ""; 5891 if ($this.data("block")) { 5892 add_url += (bClearCache ? "&" : "?") + "BLOCK=" + $this.data("block"); 5893 } 5894 5895 // get content 5896 $.get($this.data("file") + add_url).done(function (html) { 5897 items.push({ 5898 block: $this, 5899 content: html, 5900 }); 5901 5902 if (items.length == 1) { 5903 setTimeout(insertNextBlockContent, 100); 5904 } 5905 }); 5906 } 5907 }, 5908 { 5909 rootMargin: isMobile ? "300px 0px 300px 0px" : "150px 0px 150px 0px", 5910 accX: 0, 5911 accY: isMobile ? 300 : 150, 5912 } 5913 ); 5914 } 5915 5916 $("a[rel=tooltip]").tooltip(); 5917 $("span[data-toggle=tooltip]").tooltip(); 5918 5919 $("select.sort").on("change", function () { 5920 location.href = $(this).val(); 5921 }); 5922 5923 setTimeout(function (th) { 5924 $(".catalog.group.list .item").each(function () { 5925 var th = $(this); 5926 if ((tmp = th.find(".image").outerHeight() - th.find(".text_info").outerHeight()) > 0) { 5927 th.find(".text_info .titles").height(th.find(".text_info .titles").outerHeight() + tmp); 5928 } 5929 }); 5930 }, 50); 5931 5932 // ajax tabs 5933 5934 // tabs on front in mobile 5935 $(".items-link-mobile").each(function () { 5936 var _this = $(this), 5937 selectOption = _this.find("option"), 5938 selectOptionLength = selectOption.length, 5939 selectedOption = selectOption.filter(":selected"), 5940 duration = 200; // 5941 5942 _this.hide(); 5943 _this.wrap('<div class="select"></div>'); 5944 $("<div>", { 5945 class: "new-select", 5946 text: _this.children("option:disabled").text(), 5947 }).insertAfter(_this); 5948 5949 var selectHead = _this.next(".new-select"); 5950 $("<div>", { 5951 class: "new-select__list", 5952 }).insertAfter(selectHead); 5953 5954 var selectList = selectHead.next(".new-select__list"); 5955 for (var i = 1; i < selectOptionLength; i++) { 5956 $("<div>", { 5957 class: "new-select__item", 5958 html: $("<span>", { 5959 text: selectOption.eq(i).text(), 5960 }), 5961 }) 5962 .attr("data-value", selectOption.eq(i).val()) 5963 .appendTo(selectList); 5964 } 5965 5966 var selectItem = selectList.find(".new-select__item"); 5967 var selectItemFirst = selectList.find(".new-select__item:first-child"); 5968 selectList.slideUp(); 5969 selectHead.on("click", function () { 5970 if (!$(this).hasClass("on")) { 5971 $(this).addClass("on"); 5972 selectList.slideDown(duration); 5973
5974 selectItemCur = selectList.find(".new-select__item.active"); 5975 5976 if (!selectItem.hasClass("active")) { 5977 selectItemFirst.addClass("active"); 5978 selectItemCur = selectItemFirst; 5979 } 5980 5981 selectItem.on("click", function () { 5982 selectItemCur.removeClass("active"); 5983 var chooseItem = $(this).data("value"); 5984 5985 $("select").val(chooseItem).attr("selected", "selected"); 5986 selectHead.text($(this).find("span").text()); 5987 selectHead.attr("data-value", $(this).attr("data-value")); 5988 $(this).addClass("active"); 5989 var _this = $(this); 5990 selectList.slideUp(150, function () { 5991 selectHead.removeClass("on"); 5992 5993 var index = _this.index(); 5994 var curHeadBlock = _this.closest(".head-block"); 5995 var indexTab = curHeadBlock.find(".items-link .item-link.active"); 5996 var indexActiveTab = indexTab.index(); 5997 5998 if (indexActiveTab != index) { 5999 curHeadBlock.find(".items-link .item-link").eq(index).trigger("click"); 6000 } 6001 }); 6002 }); 6003 } else { 6004 $(this).removeClass("on"); 6005 selectList.slideUp(duration); 6006 } 6007 }); 6008 }); 6009 6010 // gallery in list 6011 $(document).on("mouseenter", ".section-gallery-wrapper .section-gallery-wrapper__item", function () { 6012 const _this = $(this); 6013 const index = _this.index(); 6014 const $nav_items = _this.closest(".image-list-wrapper").find(".section-gallery-nav .section-gallery-nav__item"); 6015 6016 _this.siblings().removeClass("active"); 6017 _this.addClass("active"); 6018 6019 $nav_items.removeClass("active"); 6020 $nav_items.filter(":eq(" + index + ")").addClass("active"); 6021 }); 6022 6023 // return to the first image 6024 $(document).on("mouseleave", ".section-gallery-wrapper", function () { 6025 const _this = $(this); 6026 const $elements = $(this).find(".section-gallery-wrapper__item"); 6027 const $nav_items = _this.closest(".image-list-wrapper").find(".section-gallery-nav .section-gallery-nav__item"); 6028 6029 if ($elements.length) { 6030 $elements.removeClass("active"); 6031 $($elements[0]).addClass("active"); 6032 $nav_items.removeClass("active"); 6033 $($nav_items[0]).addClass("active"); 6034 } 6035 }); 6036 6037 $(document).on("click", ".section-gallery-nav .section-gallery-nav__item", function () { 6038 const _this = $(this); 6039 const index = _this.index(); 6040 const items = _this.closest(".image-list-wrapper").find(".section-gallery-wrapper .section-gallery-wrapper__item"); 6041 6042 _this.siblings().removeClass("active"); 6043 _this.addClass("active"); 6044 6045 items.removeClass("active"); 6046 items.filter(":eq(" + index + ")").addClass("active"); 6047 }); 6048 6049 // item galery 6050 $(".thumbs .item a").on("click", function (e) { 6051 e.preventDefault(); 6052 $(".thumbs .item").removeClass("current"); 6053 $(this).closest(".item").toggleClass("current"); 6054 $(".slides li" + $(this).attr("href")) 6055 .addClass("current") 6056 .siblings() 6057 .removeClass("current"); 6058 }); 6059 6060 $("header.fixed .btn-responsive-nav").on("click", function () { 6061 $("html, body").animate({ scrollTop: 0 }, 400); 6062 }); 6063 6064 $("body").on("click", ".form .refresh-page", function () { 6065 location.href = location.href; 6066 }); 6067 6068 // show props 6069 $(document).on("click", ".show_props", function () { 6070 $(this).prev(".props_list").stop().slideToggle(333); 6071 $(this).find(".char_title").toggleClass("opened"); 6072 }); 6073 6074 // animated labels 6075 $(document) 6076 .on("focus", ".fill-animate input,.fill-animate textarea", function () { 6077 $(this).addClass("input-filed"); 6078 }) 6079 .on("focusout", ".fill-animate input,.fill-animate textarea", function () { 6080 if ("" != $(this).val()) { 6081 $(this).addClass("input-filed"); 6082 } else { 6083 $(this).removeClass("input-filed"); 6084 } 6085 }); 6086 6087 $(document).on("click", ".reload-page", function () { 6088 location.reload(true); 6089 }); 6090 6091 $("select.region").on("change", function () { 6092 var val = parseInt($(this).val()); 6093 if ($("select.city").length) { 6094 if (val) { 6095 $("select.city").removeAttr("disabled"); 6096 $("select.city option").hide(); 6097 $("select.city option[data-parent_section=" + val + "]").show(); 6098 } else $("select.city").attr("disabled", "disabled"); 6099 } 6100 }); 6101 6102 $("select.city, select.region").on("change", function () { 6103 var _this = $(this), 6104 val = parseInt(_this.val()); 6105 if (_this.hasClass("region")) { 6106 $("select.city option:eq(0)").show(); 6107 $("select.city").val(0); 6108 } 6109 6110 if ((_this.hasClass("region") && !val) || _this.hasClass("city")) { 6111 $.ajax({ 6112 type: "POST", 6113 data: { ID: val }, 6114 }).done(function (html) { 6115 var ob = BX.processHTML(html); 6116 $(".ajax_items")[0].innerHTML = ob.HTML; 6117 BX.ajax.processScripts(ob.SCRIPT); 6118 }); 6119 } 6120 }); 6121 6122 $(document).on("click", ".print", function () { 6123 window.print(); 6124 }); 6125 6126 BX.bindDelegate(document, "click", { class: "choise" }, function () { 6127 var $this = $(this); 6128 if (typeof $this.data("block") !== "undefined") { 6129 var block = $this.attr("data-block"); 6130
6131 try { 6132 var $block = BX(block) ? $("#" + block) : $(".detail-block." + block); 6133 } catch (e) { 6134 var $block = $(block); 6135 } 6136 6137 if ($block.length) { 6138 if ($block.closest(".tab-pane").length) { 6139 var offset = -206; 6140 if (typeof arAsproOptions !== "undefined") { 6141 offset = window.matchMedia("(max-width:991px)").matches 6142 ? arAsproOptions.THEME.HEADER_MOBILE_FIXED !== "Y" || arAsproOptions.THEME.HEADER_MOBILE_SHOW !== "ALWAYS" 6143 ? -187 + 62 6144 : -187 6145 : arAsproOptions.THEME.TOP_MENU_FIXED !== "Y" 6146 ? -206 + 81 6147 : -206; 6148 } 6149 6150 $block.data("offset", offset); 6151 $('.ordered-block a[href="#' + $block.closest(".tab-pane").attr("id") + '"]').click(); 6152 } 6153 6154 scrollToBlock($block); 6155 } 6156 } 6157 }); 6158 6159 // touch event 6160 document.addEventListener( 6161 "touchend", 6162 function (event) { 6163 if (!$(event.target).closest(".menu-item").length && !$(event.target).hasClass("menu-item")) { 6164 $(".mega-menu .dropdown-menu").css({ display: "none", opacity: 0 }); 6165 $(".menu-item").removeClass("hover"); 6166 } 6167 if (!$(event.target).closest(".menu.topest").length) { 6168 $(".menu.topest").css({ overflow: "hidden" }); 6169 $(".menu.topest > li").removeClass("hover"); 6170 } 6171 if (!$(event.target).closest(".full.has-child").length) { 6172 $(".menu_top_block.catalog_block li").removeClass("hover"); 6173 } 6174 // if(!$(event.target).closest('.basket_block').length){ 6175 // $('.basket_block .link').removeClass('hover'); 6176 // $('.basket_block .basket_popup_wrapp').slideUp(); 6177 // } 6178 // if(!$(event.target).closest('.catalog_item').length){ 6179 // var tabsContentUnhoverHover = $('.tab:visible').attr('data-unhover') * 1; 6180 // $('.tab:visible').stop().animate({'height': tabsContentUnhoverHover}, 100); 6181 // $('.tab:visible').find('.catalog_item').removeClass('hover'); 6182 // $('.tab:visible').find('.catalog_item .buttons_block').stop().fadeOut(233); 6183 // if($('.catalog_block').length){ 6184 // $('.catalog_block').find('.catalog_item_wrapp').removeClass('hover'); 6185 // $('.catalog_block').find('.catalog_item').removeClass('hover'); 6186 // } 6187 // } 6188 }, 6189 false 6190 ); 6191 6192 touchMenu(".mega-menu .menu-item"); 6193 touchTopMenu(".menu.topest li"); 6194}); 6195 6196function touchMenu(selector) { 6197 if (isMobile) { 6198 if ($(selector).length) { 6199 $(selector).each(function () { 6200 var th = $(this); 6201 th.on("touchend", function (e) { 6202 var _th = $(e.target).closest(".menu-item"); 6203 6204 $(".menu.topest > li").removeClass("hover"); 6205 $(".menu_top_block.catalog_block li").removeClass("hover"); 6206 6207 if (_th.find(".dropdown-menu").length && !_th.hasClass("hover")) { 6208 e.preventDefault(); 6209 e.stopPropagation(); 6210 _th.siblings().removeClass("hover"); 6211 _th.addClass("hover"); 6212 $(".menu-row .dropdown-menu").css({ display: "none", opacity: 0 }); 6213 if (_th.hasClass("menu-item")) { 6214 _th.closest(".dropdown-menu").css({ display: "block", opacity: 1 }); 6215 } 6216 if (_th.find("> .wrap > .dropdown-menu")) { 6217 _th.find("> .wrap > .dropdown-menu").css({ display: "block", opacity: 1 }); 6218 } else if (_th.find("> .dropdown-menu")) { 6219 _th.find("> .dropdown-menu").css({ display: "block", opacity: 1 }); 6220 } 6221 CheckTopVisibleMenu(); 6222 } else { 6223 var href = $(e.target).attr("href") ? $(e.target).attr("href") : $(e.target).closest("a").attr("href"); 6224 if (href && href !== "undefined") location.href = href; 6225 } 6226 }); 6227 }); 6228 } 6229 } else { 6230 $(selector).off(); 6231 } 6232} 6233 6234function touchTopMenu(selector) { 6235 if (isMobile) { 6236 if ($(selector).length) { 6237 $(selector).each(function () { 6238 var th = $(this); 6239 th.on("touchend", function (e) { 6240 var _th = $(e.target).closest("li"); 6241 6242 $(".menu-item").removeClass("hover"); 6243 $(".menu-item .dropdown-menu").css({ display: "none", opacity: 0 }); 6244 $(".menu_top_block.catalog_block li").removeClass("hover"); 6245 6246 if (_th.hasClass("more") && !_th.hasClass("hover")) { 6247 e.preventDefault(); 6248 e.stopPropagation(); 6249 _th.siblings().removeClass("hover"); 6250 _th.addClass("hover"); 6251 $(".menu.topest").css({ overflow: "visible" }); 6252 } else { 6253 var href = $(e.target).attr("href") ? $(e.target).attr("href") : $(e.target).closest("a").attr("href"); 6254 if (href && href !== "undefined") location.href = href; 6255 } 6256 }); 6257 }); 6258 } 6259 } else { 6260 $(selector).off(); 6261 } 6262} 6263 6264scrollToBlock = function (block) { 6265 if ($(block).length) { 6266 scrollToBlock.last = block; 6267 6268 if (typeof $(block).data("toggle") !== "undefined") { 6269 $(block).click(); 6270 } 6271 6272 var offset = -81 - 64; 6273 if (typeof $(block).data("offset") !== "undefined") { 6274 offset = $(block).data("offset"); 6275 } else { 6276 if (typeof arAsproOptions !== "undefined") { 6277 offset = window.matchMedia("(max-width:991px)").matches 6278 ? arAsproOptions.THEME.HEADER_MOBILE_FIXED !== "Y" || arAsproOptions.THEME.HEADER_MOBILE_SHOW !== "ALWAYS" 6279 ? -43 6280 : -62 - 43 6281 : arAsproOptions.THEME.TOP_MENU_FIXED !== "Y" 6282 ? -43 6283 : -81 - 43; 6284 6285 if ($(block).hasClass("drag-block")) { 6286 offset += 43; 6287 } 6288 } 6289 } 6290 6291 offset = $(block).offset().top + offset; 6292 6293 $("body").addClass("scrolling-state"); 6294 $("body, html").animate({ scrollTop: offset }, 500); 6295 setTimeout(function () { 6296 $("body").removeClass("scrolling-state"); 6297 }, 500); 6298 } 6299}; 6300 6301scrollToBlock.rescroll = function () { 6302 if (typeof scrollToBlock.last !== "undefined") { 6303 scrollToBlock(scrollToBlock.last); 6304 } 6305}; 6306 6307/*hover basket*/ 6308if (!BX.Aspro.Utils.isFunction("basketTop")) { 6309 var basketTop = function basketTop(action, hoverBlock) { 6310 hoverBlock = $("#headerfixed .basket-dropdown, header .basket-dropdown"); 6311 6312 hoverBlock.removeClass("loaded"); 6313 var firstTime = hoverBlock.find("div").length ? "false" : "true"; 6314 var params = $("#basket_form").find("input#fly_basket_params").val(); 6315 var postData = { 6316 firstTime: firstTime, 6317 }; 6318 if (params !== undefined) { 6319 postData.PARAMS = params; 6320 } 6321 6322 $.post( 6323 arAsproOptions["SITE_DIR"] + "ajax/showBasketHover.php", 6324 postData, 6325 $.proxy(function (data) { 6326 var ob = BX.processHTML(data); 6327 6328 // inject 6329 hoverBlock.html(ob.HTML); 6330 BX.ajax.processScripts(ob.SCRIPT); 6331 6332 if (window.matchMedia("(min-width: 992px)").matches) { 6333 hoverBlock.addClass("loaded"); 6334 } 6335 }) 6336 ); 6337 }; 6338} 6339 6340$(document).on("mouseenter", ".header-cart .top.basket", function () { 6341 var _this = $(this); 6342 var parent = _this.closest("header, #headerfixed"); 6343 var hover_block = parent.find(".basket-dropdown"); 6344 6345 if (!hover_block.hasClass("loaded")) { 6346 BX.loadExt(["aspro_prices", "aspro_dropdown-products"]); 6347 basketTop("", hover_block); 6348 } 6349}); 6350/*end hover basket*/ 6351 6352CheckTabActive = function () {}; 6353 6354/* parallax bg */ 6355ParallaxBg = function () { 6356 if ($("*[data-type=parallax-bg]").length) { 6357 var x = $(window).scrollTop() / $(document).height(); 6358 x = parseInt(-x * 280); 6359 $("*[data-type=parallax-bg]") 6360 .stop() 6361 .animate({ "background-position-y": x + "px" }, 400, "swing"); 6362 } 6363}; 6364 6365// Events 6366var timerScroll = false, 6367 ignoreScroll = [], 6368 documentScrollTopLast = $(document).scrollTop(), 6369 documentScrollTop = documentScrollTopLast; 6370$(window).scroll(function () { 6371 documentScrollTop = $(document).scrollTop(); 6372 6373 if (!ignoreScroll.length) { 6374 if (timerScroll) { 6375 clearTimeout(timerScroll); 6376 timerScroll = false;
6377 } 6378 timerScroll = setTimeout(function () { 6379 BX.onCustomEvent("onWindowScroll", false); 6380 }, 100); 6381 } 6382 6383 documentScrollTopLast = $(document).scrollTop(); 6384}); 6385 6386var timerResize = false, 6387 ignoreResize = []; 6388 6389$(window).resize(function () { 6390 documentScrollTop = $(document).scrollTop(); 6391 6392 CheckTopMenuPadding(); 6393 CheckTopMenuOncePadding(); 6394 CheckSearchWidth(); 6395 6396 if (!ignoreResize.length) { 6397 if (timerResize) { 6398 clearTimeout(timerResize); 6399 timerResize = false; 6400 } 6401 timerResize = setTimeout(function () { 6402 BX.onCustomEvent("onWindowResize", false); 6403 }, 100); 6404 } 6405 6406 documentScrollTopLast = $(document).scrollTop(); 6407}); 6408 6409BX.addCustomEvent("onWindowScroll", function (eventdata) { 6410 try { 6411 ignoreScroll.push(true); 6412 ParallaxBg(); 6413 6414 //CheckTopMenuDotted(); 6415 } catch (e) { 6416 } finally { 6417 ignoreScroll.pop(); 6418 } 6419}); 6420 6421BX.addCustomEvent("onWindowResize", function (eventdata) { 6422 try { 6423 ignoreResize.push(true); 6424 6425 CheckHeaderFixedMenu(); 6426 CheckTopMenuDotted(); 6427 CheckTopVisibleMenu(); 6428 CheckFlexSlider(); 6429 CheckMainBannerSliderVText($(".banners-big .flexslider")); 6430 CheckObjectsSizes(); 6431 6432 if (BX.Aspro.Utils.isFunction("CoverPlayer")) { 6433 CoverPlayer(); 6434 } 6435 6436 verticalAlign(); 6437 CheckTabActive(); 6438 setTimeout(function () { 6439 createTableCompare( 6440 $(".main-block .items .title-block:not(.clone) .item"), 6441 $(".prop_title_table"), 6442 $(".main-block .prop_title_table .item.clone") 6443 ); 6444 }, 100); 6445 SliceHeightBlocks(); 6446 6447 if (BX.Aspro.Utils.isFunction("checkMobileFilter")) { 6448 checkMobileFilter(); 6449 } 6450 } catch (e) { 6451 } finally { 6452 ignoreResize.pop(); 6453 } 6454}); 6455 6456BX.addCustomEvent("onSlide", function (eventdata) { 6457 try { 6458 ignoreResize.push(true); 6459 6460 if (eventdata) { 6461 var slider = eventdata.slider; 6462 var slideClass = ".banners-big__item"; 6463 var jsDots = $(slider).siblings(".owl-carousel__dots--line"); 6464 if (jsDots.length) { 6465 if (eventdata.data) { 6466 if (eventdata.data.relatedTarget) { 6467 var dotScroll = jsDots.find(".owl-carousel__dot-scroll"); 6468 var dotsWidth = jsDots.width(); 6469 if (dotScroll.length) { 6470 var owlOptions = eventdata.data.relatedTarget; 6471 6472 if (owlOptions) { 6473 var itemsCount = owlOptions._items.length; 6474 var itemsInRow = owlOptions.settings.items; 6475 var currentItem = owlOptions._current; // + 1; 6476 6477 //orig old 6478 //currentItem = currentItem < itemsInRow ? itemsCount + itemsInRow - 1 : currentItem; 6479 //var offset = ((currentItem - itemsInRow) / itemsCount) * dotsWidth; 6480 6481 //new by use count clones in slider 6482 var clonesInStart = Math.ceil(itemsCount / 2); 6483 currentItem = currentItem < clonesInStart ? itemsCount + clonesInStart - 1 : currentItem; 6484 currentItem = currentItem === itemsCount + clonesInStart ? clonesInStart : currentItem; 6485 var offset = ((currentItem - clonesInStart) / itemsCount) * dotsWidth; 6486 6487 var styles = { 6488 width: dotsWidth / itemsCount + "px", 6489 display: "block", 6490 left: offset, 6491 }; 6492 6493 dotScroll.css(styles); 6494 } 6495 } 6496 } 6497 } 6498 } 6499 if (slider) { 6500 // add classes .curent & .shown to slide 6501 slider.find(slideClass).removeClass("current"); 6502 var curSlideIndex = eventdata.data.item.index; 6503 var curSlide = slider.find(".owl-item:eq(" + curSlideIndex + ")" + " " + slideClass); 6504 6505 curSlide.addClass("current"); 6506 curSlide.addClass("shown"); 6507 slider.resize(); 6508 6509 if (slider.closest(".blocks").length) 6510 slider.closest(".blocks").find(".flex-direction-nav li").addClass("initied"); 6511 6512 if (slider.closest(".wraps").length) 6513 slider.closest(".wraps").find(".flex-direction-nav li").addClass("initied"); 6514 6515 if (!slider.find(".flex-control-nav li").length && slider.hasClass("normal")) { 6516 slider.find(".flex-direction-nav li a").addClass("flex-disabled"); 6517 } 6518 6519 if (slider.closest(".banners-big").length) { 6520 //nav flex color 6521 slider.find(".flex-control-nav li").removeClass(); 6522 6523 // header color 6524 $("header").removeClass("light dark"); 6525 if (typeof curSlide.data("color") != "undefined") { 6526 $("header").addClass(curSlide.data("color")); 6527 } 6528 6529 // logo color 6530 if (typeof window.headerLogo !== "undefined") { 6531 window.headerLogo.setColorOfBanner(curSlide[0]); 6532 } 6533 } 6534 6535 if (
6536 !slider.hasClass("flexslider-init-slice") && 6537 slider.hasClass("nav-title") && 6538 $(".gallery-block").closest(".tab-pane").hasClass("active") 6539 ) { 6540 slider.find(".item").sliceHeight({ lineheight: -3 }); 6541 slider.addClass("flexslider-init-slice"); 6542 } 6543 6544 if (slider.find(".flex-direction-nav").length) { 6545 if (slider.find(".flex-direction-nav").find("a.flex-disabled").length) 6546 slider.find(".flex-direction-nav").removeClass("opacity1").addClass("opacity0"); 6547 else slider.find(".flex-direction-nav").removeClass("opacity0").addClass("opacity1"); 6548 } 6549 } 6550 } 6551 } catch (e) { 6552 } finally { 6553 ignoreResize.pop(); 6554 } 6555}); 6556 6557BX.addCustomEvent("onSlideBefore", function (eventdata) { 6558 try { 6559 ignoreResize.push(true); 6560 if (eventdata) { 6561 var slider = eventdata.slider; 6562 if (slider) { 6563 if (slider.closest(".banners-big").length) { 6564 setTimeout(function () { 6565 var curSlide = slider.find(".banners-big__item.current"); 6566 6567 //nav flex color 6568 slider.find(".flex-control-nav li").removeClass(); 6569 6570 // header color 6571 $("header").removeClass("light dark"); 6572 if (typeof curSlide.data("color") != "undefined") { 6573 slider.find(".flex-control-nav li").addClass(curSlide.data("color")); 6574 $("header").addClass(curSlide.data("color")); 6575 } 6576 6577 // logo color 6578 if (typeof window.headerLogo !== "undefined") { 6579 window.headerLogo.setColorOfBanner(curSlide[0]); 6580 } 6581 }, 100); 6582 } else if (slider.hasClass("top-bigs")) { 6583 setTimeout(function () { 6584 var index = slider.find(".item.flex-active-slide").data("slide_key"); 6585 $(".bxSlider.top-small .slides").data("bxSlider").goToSlide(index); 6586 $(".bxSlider.top-small .slides li").removeClass("flex-active-slide"); 6587 $('.bxSlider.top-small .slides li[data-slide_key="' + index + '"]').addClass("flex-active-slide"); 6588 }, 100); 6589 } 6590 } 6591 } 6592 } catch (e) { 6593 } finally { 6594 ignoreResize.pop(); 6595 } 6596}); 6597 6598BX.addCustomEvent("onSlideEnd", function (eventdata) { 6599 try { 6600 ignoreResize.push(true); 6601 if (eventdata) { 6602 var slider = eventdata.slider; 6603 } 6604 } catch (e) { 6605 } finally { 6606 ignoreResize.pop(); 6607 } 6608}); 6609 6610/* End */ 6611; 6612; /* Start:"a:4:{s:4:"full";s:60:"/bitrix/templates/aspro-premier/js/mobile.js?177459632629822";s:6:"source";s:44:"/bitrix/templates/aspro-premier/js/mobile.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 6613BX.Aspro.Utils.readyDOM(function () { 6614 // --- Bind mobile menu --- 6615 let $mobileMenu = $("#mobilemenu"); 6616 let $mobileMenuNlo; 6617 if ($mobileMenu.length) { 6618 $mobileMenu.isOpen = $mobileMenu.hasClass("show"); 6619 $mobileMenu.isLeftSide = $("body").hasClass("mmenu_leftside"); 6620 $mobileMenuNlo = $mobileMenu.find("[data-nlo]"); 6621 6622 BX.bindDelegate(document, 'click', {class: 'js-burger'}, function () { 6623 SwipeMobileMenu(); 6624 CloseMobilePhone(); 6625 }); 6626 6627 BX.bindDelegate(document, 'click', {class: 'mobilemenu__close'}, function() { 6628 CloseMobileMenu(); 6629 $(".mobilemenu__menu-item").removeClass("mobilemenu__menu-item--expanded"); 6630 }); 6631 6632 $(document).on("click", ".mobilemenu__menu .toggle_block", function (e) { 6633 e.stopPropagation(); 6634 6635 var $this = $(this); 6636 var $item = $this.closest(".mobilemenu__menu-item"); 6637 6638 if ($item.hasClass("mobilemenu__menu-item--parent")) { 6639 e.preventDefault(); 6640 6641 $item.addClass("mobilemenu__menu-item--expanded"); 6642 MoveMobileMenuWrapNext(); 6643 } 6644 }); 6645 6646 BX.bindDelegate(document, 'click', {class: 'mobilemenu__menu-item-back'}, function() { 6647 const nodeItemExpanded = this.closest('.mobilemenu__menu-item--expanded'); 6648 MoveMobileMenuWrapPrev(); 6649 6650 if (nodeItemExpanded) { 6651 setTimeout(function () { 6652 nodeItemExpanded.classList.remove("mobilemenu__menu-item--expanded"); 6653 }, 400); 6654 } 6655 }); 6656 6657 $(document).on("click", ".mobilemenu__menu a", function (e) { 6658 var $this = $(this); 6659 var $item = $this.closest(".mobilemenu__menu-item"); 6660 6661 const href = $this.attr("href"); 6662 if (typeof href !== "undefined") { 6663 if (href.length) { 6664 window.location.href = href; 6665 return; 6666 } 6667 6668 if ($item.hasClass("mobilemenu__menu-item--parent")) { 6669 e.preventDefault(); 6670 6671 $item.addClass("mobilemenu__menu-item--expanded"); 6672 MoveMobileMenuWrapNext(); 6673 6674 return; 6675 } 6676 6677 if ($item.hasClass("mobilemenu__menu-item--title")) { 6678 e.preventDefault(); 6679 6680 return; 6681 } 6682 } 6683 6684 CloseMobileMenu(); 6685 }); 6686 6687 if ($mobileMenu.isLeftSide) { 6688 $mobileMenu.parent().append('<div class="mobilemenu__overlay"></div>'); 6689 var $mobileMenuOverlay = $(".mobilemenu__overlay"); 6690 6691 $mobileMenuOverlay.click(function () { 6692 if ($mobileMenu.isOpen) { 6693 CloseMobileMenu(); 6694 } 6695 }); 6696 } else { 6697 $(document).on("click", "#mobileheader", function (e) { 6698 if ( 6699 !$(e.target).closest("#mobilemenu").length && 6700 !$(e.target).closest(".burger").length && 6701 $mobileMenu.isOpen 6702 ) { 6703 CloseMobileMenu(); 6704 } 6705 }); 6706 } 6707 6708 $(document).on('click', '.mobilemenu__menu--regions .menu_autocomplete .clean_icon', function (e) { 6709 $(this).closest('.wrapper').find('input[type=text]').val('').trigger('change'); 6710 $(this).hide(); 6711 }); 6712 6713 $(document).on('keyup change paste', '.mobilemenu__menu--regions .menu_autocomplete input[type=text]', function (e) { 6714 let $btn = $(this).closest('.wrapper').find('.clean_icon'); 6715 6716 if ($(this).val().length) { 6717 $btn.show(); 6718 } 6719 else { 6720 $btn.hide(); 6721 6722 // hide finded cities 6723 $(this).closest('.dropdown').find('.mobile-cities').show().siblings().hide().empty(); 6724 } 6725 }); 6726 6727 $(document).on('click', '.mobilemenu__menu-item--city a', function(e) { 6728 e.preventDefault(); 6729 6730 var _this = $(this); 6731 6732 let regionId = _this.data('id'); 6733 if (regionId) {
6734 setCookieOnDomains('current_region', regionId); 6735 6736 let locationId = _this.data('locid'); 6737 if (locationId) { 6738 setCookieOnDomains('current_location', locationId); 6739 } 6740 else { 6741 setCookieOnDomains('current_location', '', {expires: -1}); 6742 } 6743 } 6744 6745 location.href = _this.attr("href"); 6746 }); 6747 6748 OpenMobileMenu = function () { 6749 if (!$mobileMenu.isOpen) { 6750 // hide styleswitcher 6751 if ($(".style-switcher").hasClass("active")) { 6752 $(".style-switcher .switch").trigger("click"); 6753 } 6754 $(".style-switcher .switch").hide(); 6755 $(".style-switcher .switch_presets").hide(); 6756 6757 if ($mobileMenu.isLeftSide) { 6758 setTimeout(function () { 6759 // hide body scroll 6760 $("body").addClass("overflow-block"); 6761 6762 // blur body 6763 $("#mobileheader").addClass("filter-none"); 6764 $("#mobilemenu").addClass("filter-none"); 6765 $("body").addClass("jqm-initied"); 6766 6767 // show overlay 6768 $mobileMenuOverlay.fadeIn("fast"); 6769 }, 100); 6770 } else { 6771 // hide body scroll 6772 $("body").addClass("overflow-block"); 6773 6774 // set menu top = bottom of header 6775 $mobileMenu.css({ 6776 top: +($("#mobileheader")[0].getBoundingClientRect().top + $("#mobileheader").height()) + "px", 6777 }); 6778 6779 // change burger icon 6780 // $('#mobileheader .burger').addClass('c'); 6781 } 6782 6783 // show menu 6784 $mobileMenu.addClass("show"); 6785 $mobileMenu.isOpen = true; 6786 6787 var $inner = $mobileMenu.find(".mobilemenu__inner"); 6788 var params = $inner.data("params"); 6789 if (typeof params === "undefined") { 6790 params = { 6791 depth: 0, 6792 scroll: {}, 6793 height: {}, 6794 }; 6795 } 6796 $inner.data("params", params); 6797 6798 if ($mobileMenuNlo.length) { 6799 if (!$mobileMenuNlo.hasClass("nlo-loadings")) { 6800 $mobileMenuNlo.addClass("nlo-loadings"); 6801 setTimeout(function () { 6802 $.ajax({ 6803 data: { nlo: $mobileMenuNlo.attr("data-nlo") }, 6804 error: function () { 6805 $mobileMenuNlo.removeClass("nlo-loadings"); 6806 }, 6807 complete: function (jqXHR, textStatus) { 6808 if (textStatus === "success" || jqXHR.status == 404) { 6809 var ob = BX.processHTML($.trim(jqXHR.responseText)); 6810 BX.ajax.processScripts(ob.SCRIPT); 6811 $mobileMenuNlo.replaceWith(ob.HTML); 6812 } 6813 }, 6814 }); 6815 }, 300); 6816 } 6817 } 6818 } 6819 }; 6820 6821 CloseMobileMenu = function () { 6822 if ($mobileMenu.isOpen) { 6823 // hide menu 6824 $mobileMenu.removeClass("show"); 6825 $mobileMenu.isOpen = false; 6826 6827 $mobileMenu.find(".mobilemenu__menu-item--expanded").removeClass("mobilemenu__menu-item--expanded"); 6828 6829 // show styleswitcher 6830 $(".style-switcher .switch").show(); 6831 $(".style-switcher .switch_presets").show(); 6832 6833 if ($mobileMenu.isLeftSide) { 6834 setTimeout(function () { 6835 // hide overlay 6836 $mobileMenuOverlay.fadeOut("fast"); 6837 6838 // show body scroll 6839 $("body").removeClass("overflow-block"); 6840 6841 // unblur body 6842 $("body").removeClass("jqm-initied"); 6843 $("#mobilemenu").removeClass("filter-none"); 6844 $("#mobileheader").removeClass("filter-none"); 6845 }, 100); 6846 } else { 6847 // change burger icon 6848 // $('#mobileheader .burger').removeClass('c'); 6849 6850 // show body scroll 6851 $("body").removeClass("overflow-block"); 6852 } 6853 6854 setTimeout(function () { 6855 var $scroller = $mobileMenu.find(".mobilemenu"); 6856 var $inner = $mobileMenu.find(".mobilemenu__inner"); 6857 var params = $inner.data("params"); 6858 params.depth = 0; 6859 $inner.data("params", params).attr("style", ""); 6860 $mobileMenu.scrollTop(0); 6861 $scroller.css("height", ""); 6862 }, 400); 6863 } 6864 }; 6865 6866 SwipeMobileMenu = function () { 6867 if ($mobileMenu.isOpen) { 6868 CloseMobileMenu(); 6869 } else { 6870 OpenMobileMenu(); 6871 } 6872 }; 6873 6874 CheckMobileMenu = function () { 6875 CloseMobileMenu(); 6876 }; 6877 6878 function MoveMobileMenuWrapNext() { 6879 var $scroller = $mobileMenu.find(".mobilemenu"); 6880 var $inner = $mobileMenu.find(".mobilemenu__inner"); 6881 if ($inner.length) { 6882 var params = $inner.data("params"); 6883 var $dropdownNext = $mobileMenu 6884 .find(".mobilemenu__menu-item--expanded>.mobilemenu__menu-dropdown") 6885 .eq(params.depth); 6886 if ($dropdownNext.length) { 6887 var bMobileRegions = $dropdownNext.closest('.mobilemenu__menu--regions').length; 6888 if (bMobileRegions) { 6889 var $fixedCities = $dropdownNext.find('.menu-item-fixed'); 6890 } 6891 6892 // save scroll position 6893 params.scroll[params.depth] = parseInt($mobileMenu.scrollTop()); 6894 6895 // height while move animating 6896 params.height[params.depth + 1] = Math.max( 6897 $dropdownNext.height(), 6898 !params.depth 6899 ? $inner.height() 6900 : $mobileMenu 6901 .find(".mobilemenu__menu-item--expanded>.mobilemenu__menu-dropdown") 6902 .eq(params.depth - 1) 6903 .height() 6904 ); 6905 $scroller.css("height", params.height[params.depth + 1] + "px"); 6906 6907 // inc depth 6908 ++params.depth; 6909 6910 // translateX for move
6911 $inner.css("transform", "translateX(" + -100 * params.depth + "%)"); 6912 6913 // scroll to top 6914 setTimeout(function () { 6915 $mobileMenu.animate({ scrollTop: 0 }, 200); 6916 }, 100); 6917 6918 if (bMobileRegions) { 6919 $fixedCities.css('height', ($mobileMenu.height() - $fixedCities.position().top) + 'px'); 6920 } 6921 6922 // height on enimating end 6923 var h = $dropdownNext.outerHeight(); 6924 setTimeout(function () { 6925 if (h) { 6926 $scroller.css("height", h + "px"); 6927 } else { 6928 $scroller.css("height", ""); 6929 } 6930 6931 if (bMobileRegions) { 6932 setTimeout(function () { 6933 // show cities scroll 6934 $fixedCities.css('overflow', ''); 6935 }, 200); 6936 6937 initMobileRegions(); 6938 } 6939 }, 200); 6940 } 6941 6942 $inner.data("params", params); 6943 } 6944 } 6945 6946 function MoveMobileMenuWrapPrev() { 6947 var $scroller = $mobileMenu.find(".mobilemenu"); 6948 var $inner = $mobileMenu.find(".mobilemenu__inner"); 6949 if ($inner.length) { 6950 var params = $inner.data("params"); 6951 if (params.depth > 0) { 6952 var $dropdown = $mobileMenu 6953 .find(".mobilemenu__menu-item--expanded>.mobilemenu__menu-dropdown") 6954 .eq(params.depth - 1); 6955 if ($dropdown.length) { 6956 // height while move animating 6957 $scroller.css("height", params.height[params.depth] + "px"); 6958 6959 // dec depth 6960 --params.depth; 6961 6962 // translateX for move 6963 $inner.css("transform", "translateX(" + -100 * params.depth + "%)"); 6964 6965 // restore scroll position 6966 setTimeout(function () { 6967 $mobileMenu.animate({ scrollTop: params.scroll[params.depth] }, 200); 6968 }, 100); 6969 6970 if ($dropdown.closest('.mobilemenu__menu--regions').length) { 6971 // hide cities scroll 6972 $dropdown.find('.menu-item-fixed').css('overflow', 'hidden'); 6973 6974 // scroll cities to top 6975 setTimeout(function () { 6976 $dropdown.find('.menu-item-fixed').animate({ scrollTop: 0 }, 200); 6977 }, 100); 6978 } 6979 6980 // height on enimating end 6981 var h = !params.depth 6982 ? false 6983 : $mobileMenu 6984 .find(".mobilemenu__menu-item--expanded>.mobilemenu__menu-dropdown") 6985 .eq(params.depth - 1) 6986 .outerHeight(); 6987 setTimeout(function () { 6988 if (h) { 6989 $scroller.css("height", h + "px"); 6990 } else { 6991 $scroller.css("height", ""); 6992 } 6993 }, 200); 6994 } 6995 } 6996 6997 $inner.data("params", params); 6998 } 6999 } 7000 7001 function initMobileRegions() { 7002 if (!initMobileRegions.inited) { 7003 initMobileRegions.inited = true; 7004 7005 BX.loadExt( 7006 [ 7007 'aspro_set_cookie_on_domains', 7008 'aspro_ui' 7009 ] 7010 ).then( 7011 () => { 7012 function getMainCities() { 7013 let componentAction = 'getMainCities'; 7014 let componentName = 'aspro:regionality.list.premier'; 7015 let sessid = BX.message('bitrix_sessid'); 7016 let lang = BX.message('LANGUAGE_ID'); 7017 let siteId = BX.message('SITE_ID'); 7018 let url = location.pathname + location.search; 7019 let lastId = getMainCities.lastId; 7020 let $loadings = $('.mobilemenu__menu--regions .dropdown .loadings').closest('li'); 7021 7022 BX.ajax({ 7023 url: '/bitrix/services/main/ajax.php?mode=ajax&c=' + encodeURIComponent(componentName) +'&action=' + componentAction + '&sessid=' + sessid + '&SITE_ID=' + siteId + '&siteId=' + siteId + '&url=' + encodeURIComponent(url) + '&lastId=' + lastId + '&lang=' + lang, 7024 method: 'POST', 7025 async: true, 7026 processData: true, 7027 scriptsRunFirst: true, 7028 emulateOnload: true, 7029 start: true, 7030 cache: false, 7031 dataType: 'json', 7032 onsuccess: function(response){ 7033 if ( 7034 typeof response === 'object' && 7035 response && 7036 typeof response.data === 'object' && 7037 response.data 7038 ) { 7039 if (typeof response.data.lastId !== 'undefined') { 7040 getMainCities.lastId = response.data.lastId; 7041 } 7042 7043 if ( 7044 response.data.cities && 7045 Object.values(response.data.cities).length 7046 ) { 7047 let itemsHtml = ''; 7048 7049 for (let i in response.data.cities) { 7050 let item = response.data.cities[i]; 7051 let bCurrent = item.CURRENT == 1; 7052 7053 itemsHtml += ` 7054 <li class="mobilemenu__menu-item mobilemenu__menu-item--city main-city` + (bCurrent ? ' mobilemenu__menu-item--selected stroke-dark-light-block stroke-dark-parent-all' : '') + `"> 7055 <div class="link-wrapper bg-opacity-theme-parent-hover fill-theme-parent-all"> 7056 <a href="${item.URL}" rel="nofollow" data-id="${item.ID}" data-locid="${(item.LOCATION_ID ? item.LOCATION_ID : '')}" class="dark_link">
7057 <span class="line-block line-block--gap line-block--justify-between line-block--align-flex-start"> 7058 <span class="line-block__item"> 7059 <span class="font_15">${item.NAME}</span> 7060 ${(item.PATH ? `<div class="secondary-color font_13">${item.PATH}</div>` : '')} 7061 </span> 7062 ${ 7063 bCurrent 7064 ? `<span class="line-block__item"> 7065 <i class="svg inline icon-block__icon icon-block__icon--sm stroke-dark-target inline mt mt--6" aria-hidden="true"> 7066 <svg width="10" height="7"> 7067 <use xlink:href="${arAsproOptions.SITE_TEMPLATE_PATH}/images/svg/form_icons.svg#checkmark"></use> 7068 </svg> 7069 </i> 7070 </span>` 7071 : '' 7072 } 7073 </span> 7074 </a> 7075 </div> 7076 </li> 7077 `; 7078 } 7079 7080 $(itemsHtml).insertBefore($loadings); 7081 7082 if (response.data.more) { 7083 getMainCities.observer.observe($loadings[0]); 7084 } 7085 else { 7086 $loadings.remove(); 7087 } 7088 } 7089 } 7090 }, 7091 onfailure: function(){ 7092 $loadings.remove(); 7093 } 7094 }); 7095 } 7096 7097 $("#mobile-region-search").autocomplete({ 7098 minLength: 2, 7099 appendTo : $('.mobilemenu__menu--regions .dropdown .mobile-cities').closest('.menu-item-fixed'), 7100 source: function(request, callback){ 7101 let componentAction = 'searchCities'; 7102 let componentName = 'aspro:regionality.list.premier'; 7103 let sessid = BX.message('bitrix_sessid'); 7104 let lang = BX.message('LANGUAGE_ID'); 7105 let siteId = BX.message('SITE_ID'); 7106 let url = location.pathname + location.search; 7107 7108 BX.ajax({ 7109 url: '/bitrix/services/main/ajax.php?mode=ajax&c=' + encodeURIComponent(componentName) +'&action=' + componentAction + '&sessid=' + sessid + '&SITE_ID=' + siteId + '&siteId=' + siteId + '&url=' + encodeURIComponent(url) + '&term=' + encodeURIComponent(request.term) + '&lang=' + lang, 7110 method: 'POST', 7111 async: true, 7112 processData: true, 7113 scriptsRunFirst: true, 7114 emulateOnload: true, 7115 start: true, 7116 cache: false, 7117 dataType: 'json', 7118 onsuccess: function(response){ 7119 if ( 7120 typeof response === 'object' && 7121 response && 7122 typeof response.data === 'object' && 7123 response.data 7124 ) { 7125 let cities = Object.values(response.data.cities); 7126 $("#mobile-region-search").data('cities', cities); 7127 7128 if (cities.length) { 7129 callback(response.data.cities); 7130 } 7131 else { 7132 $('.mobilemenu__menu--regions .dropdown .mobile-cities').hide().siblings().empty().show(); 7133 } 7134 } 7135 }, 7136 onfailure: function(){ 7137 } 7138 }); 7139 }, 7140 select: function(event, ui) { 7141 let regionId = ui.item.ID; 7142 if (regionId) { 7143 setCookieOnDomains('current_region', regionId); 7144 7145 let locationId = ui.item.LOCATION_ID; 7146 if (locationId) {
7147 setCookieOnDomains('current_location', locationId); 7148 } 7149 else { 7150 setCookieOnDomains('current_location', '', {expires: -1}); 7151 } 7152 } 7153 7154 $('#mobile-region-search').val(ui.item.label); 7155 7156 return false; 7157 }, 7158 focus: function(event, ui) { 7159 // !!!hack do not remove 7160 setTimeout(function() { 7161 $("#mobile-region-search").val(ui.item.NAME); 7162 7163 // highlight 7164 let cities = $("#mobile-region-search").data('cities'); 7165 if (typeof cities === 'object' && cities) { 7166 cities.every((item, i) => { 7167 if (item.NAME == ui.item.NAME) { 7168 $('.mobilemenu__menu--regions .ui-autocomplete .mobilemenu__menu-item').eq(i).addClass('selected').siblings().removeClass('selected'); 7169 7170 return false; 7171 } 7172 7173 return true; 7174 }); 7175 } 7176 }, 0); 7177 }, 7178 open: function(event, ui) { 7179 $('.mobilemenu__menu--regions .dropdown .mobile-cities').hide().siblings().show(); 7180 }, 7181 close: function(event, ui) { 7182 // do not hide finded citties! Hide it only on empty phrase! 7183 $('.mobilemenu__menu--regions .dropdown .mobile-cities').siblings().show(); 7184 } 7185 }).data('ui-autocomplete')._renderItem = function(ul, item){ 7186 let html = ` 7187 <li class="mobilemenu__menu-item mobilemenu__menu-item--city"> 7188 <div class="link-wrapper bg-opacity-theme-parent-hover fill-theme-parent-all"> 7189 <a href="` + item.URL + `" rel="nofollow" data-id="` + item.ID + `" data-locid="` + (item.LOCATION_ID ? item.LOCATION_ID : '') + `" class="dark_link"><span class="font_15">` + item.NAME + `</span>` + (item.PATH ? '<div class="secondary-color font_13">' + item.PATH + '</div>' : '') + `</a> 7190 </div> 7191 </li> 7192 `; 7193 7194 return $(html).appendTo(ul); 7195 } 7196 7197 if ($('.mobilemenu__menu--regions .dropdown .loadings').length) { 7198 getMainCities.lastId = 0; 7199 getMainCities.observer = new IntersectionObserver((entries, observer) => { 7200 entries.forEach(entry => { 7201 if (entry.isIntersecting) { 7202 getMainCities.observer.unobserve(entry.target); 7203 getMainCities(); 7204 } 7205 }) 7206 }, { 7207 root: null, 7208 rootMargin: '0px', 7209 threshold: 0.5, 7210 }); 7211 7212 getMainCities(); 7213 } 7214 } 7215 ); 7216 } 7217 } 7218 } 7219 // --- END Bind mobile menu --- 7220 7221 // --- Bind mobile phone --- 7222 if ($("#mobilephones").length) { 7223 $(document).on("click", ".mobileheader .phones__inner .icon-block__only-icon", function (e) { 7224 e.stopPropagation(); 7225 SwipeMobilePhone(); 7226 }); 7227 7228 $(document).on("click", ".mobilephones__menu-item a,.mobilephones__close", function (e) { 7229 e.stopPropagation(); 7230 CloseMobilePhone(); 7231 }); 7232 } 7233 7234 SwipeMobilePhone = function () { 7235 if ($("#mobilephones.show").length) { 7236 CloseMobilePhone(); 7237 } else { 7238 OpenMobilePhone(); 7239 } 7240 }; 7241 7242 OpenMobilePhone = function () { 7243 if (!$("#mobilephones.show").length) { 7244 CloseMobileMenu(); 7245 7246 // show overlay 7247 $('<div class="jqmOverlay mobp"></div>').appendTo("body"); 7248 7249 // blur body 7250 $("#mobileheader").addClass("filter-none"); 7251 $("body").addClass("jqm-initied"); 7252 7253 // toggle phones 7254 setTimeout(function () { 7255 $("#mobilephones").slideDown("fast", function () { 7256 $("#mobilephones").addClass("show"); 7257 }); 7258 }, 100); 7259 } 7260 }; 7261 7262 CloseMobilePhone = function () { 7263 if ($("#mobilephones.show").length) { 7264 // toggle phones 7265 setTimeout(function () {
7266 $("#mobilephones").slideUp("fast", function () { 7267 $("#mobilephones").removeClass("show"); 7268 7269 // unblur body 7270 $("body").removeClass("jqm-initied"); 7271 $("#mobileheader").removeClass("filter-none"); 7272 7273 // hide overlay 7274 $(".jqmOverlay.mobp").remove(); 7275 }); 7276 }, 100); 7277 } 7278 }; 7279 7280 checkMobilePhone = function () { 7281 CloseMobilePhone(); 7282 }; 7283 // --- END Bind mobile phone --- 7284 7285 /* --- Bind mobile filter --- */ 7286 var $mobilefilter = $("#mobilefilter"); 7287 var $mobiledMenu = $("#mobilemenu"); 7288 if ($mobilefilter.length) { 7289 $mobilefilter.isOpen = $mobiledMenu.hasClass("show"); 7290 $mobilefilter.isAppendLeft = false; 7291 $mobilefilter.isWrapFilter = false; 7292 $mobilefilter.isHorizontalOrCompact = $(".filter_horizontal").length || $(".bx_filter_vertical.compact").length; 7293 $mobilefilter.close = '<i class="svg svg-close close-icons"></i>'; 7294 7295 $(document).on("click", ".bx-filter-title", function () { 7296 OpenMobileFilter(); 7297 }); 7298 7299 $(document).on("click", "#mobilefilter .svg-close.close-icons", function () { 7300 CloseMobileFilter(); 7301 }); 7302 7303 $(document).on("click", ".bx_filter_select_block", function (e) { 7304 var bx_filter_select_container = $(e.target).parents(".bx_filter_select_container"); 7305 if (bx_filter_select_container.length) { 7306 var prop_id = bx_filter_select_container.closest(".bx_filter_parameters_box").attr("data-property_id"); 7307 if ($("#smartFilterDropDown" + prop_id).length) { 7308 $("#smartFilterDropDown" + prop_id).css({ 7309 "max-width": bx_filter_select_container.width(), 7310 "z-index": "3020", 7311 }); 7312 } 7313 } 7314 }); 7315 7316 $(document).on("click", ".bx_filter_search_button", function (e) { 7317 // if ($(e.target).hasClass("bx_filter_search_button")) { 7318 CloseMobileFilter(); 7319 // } 7320 }); 7321 7322 $(document).on("mouseup", ".bx_filter_parameters_box_title", function (e) { 7323 $("[id^='smartFilterDropDown']").hide(); 7324 if ($(e.target).hasClass("close-icons")) { 7325 CloseMobileFilter(); 7326 } 7327 }); 7328 7329 $mobilefilter.parent().append('<div id="mobilefilter-overlay"></div>'); 7330 var $mobilefilterOverlay = $("#mobilefilter-overlay"); 7331 7332 $mobilefilterOverlay.click(function () { 7333 if ($mobilefilter.isOpen) { 7334 CloseMobileFilter(); 7335 //e.stopPropagation(); 7336 } 7337 }); 7338 7339 mobileFilterNum = function (num, def) { 7340 if (def) { 7341 $(".bx_filter_search_button").val(num); 7342 } else { 7343 var str = ""; 7344 var $prosLeng = $(".bx_filter_parameters_box > span"); 7345 7346 str += 7347 $prosLeng.data("f") + 7348 " " + 7349 num 7350 // " " + 7351 // declOfNumFilter(num, [$prosLeng.data("fi"), $prosLeng.data("fr"), $prosLeng.data("frm")]); 7352 $(".bx_filter_search_button").val(str); 7353 } 7354 }; 7355 7356 declOfNumFilter = function (number, titles) { 7357 cases = [2, 0, 1, 1, 1, 2]; 7358 return titles[number % 100 > 4 && number % 100 < 20 ? 2 : cases[number % 10 < 5 ? number % 10 : 5]]; 7359 }; 7360 7361 OpenMobileFilter = function () { 7362 if (!$mobilefilter.isOpen) { 7363 $("body").addClass("jqm-initied wf"); 7364 7365 $(".bx_filter_vertical .slide-block__head.filter_title").removeClass("closed"); 7366 7367 $(".bx_filter_vertical .slide-block__head.filter_title + .slide-block__body").show(); 7368 7369 if (!$mobilefilter.isAppendLeft) { 7370 if (!$mobilefilter.isWrapFilter) { 7371 $(".bx_filter").wrap("<div id='wrapInlineFilter'></div>"); 7372 $mobilefilter.isWrapFilter = true; 7373 } 7374 $(".bx_filter").appendTo($("#mobilefilter")); 7375 var helper = $("#filter-helper"); 7376 if (helper.length) { 7377 helper.prependTo($("#mobilefilter .bx_filter_parameters")); 7378 } 7379 $mobilefilter.isAppendLeft = true; 7380 } 7381 if (typeof checkFilterLandgings === "function") { 7382 checkFilterLandgings(); 7383 } 7384 7385 $("#mobilefilter .bx_filter_parameters").addClass("mobile-scroll scrollbar"); 7386 7387 $(".bx_filter_button_box.ajax-btns").addClass("colored_theme_bg"); 7388 $(".bx_filter_button_box.ajax-btns .filter-bnt-wrapper").removeClass("hidden"); 7389 7390 // show overlay 7391 setTimeout(function () { 7392 $mobilefilterOverlay.fadeIn("fast"); 7393 }, 100); 7394 7395 // fix body 7396 $("body").css({ overflow: "hidden", height: "100vh" }); 7397 7398 // show mobile filter 7399 $mobilefilter.addClass("show"); 7400 $mobilefilter.find(".bx_filter").css({ display: "block" }); 7401 $mobilefilter.isOpen = true; 7402 7403 $("#mobilefilter .bx_filter_button_box.btns.ajax-btns").removeClass("hidden"); 7404 7405 var init = $mobilefilter.data("init"); 7406 if (typeof init === "undefined") { 7407 $mobilefilter.scroll(function () { 7408 $(".bx_filter_section .bx_filter_select_container").each(function () { 7409 var prop_id = $(this).closest(".bx_filter_parameters_box").attr("data-property_id"); 7410 if ($("#smartFilterDropDown" + prop_id).length) { 7411 $("#smartFilterDropDown" + prop_id).hide(); 7412 } 7413 }); 7414 }); 7415 7416 $mobilefilter.data("init", "Y"); 7417 } 7418 BX.onCustomEvent('showVisibleProps'); 7419 } 7420 }; 7421 7422 CloseMobileFilter = function (append) { 7423 $mobilefilter.find(".bx_filter_parameters").removeClass("scrollbar"); 7424 7425 $("body").removeClass("jqm-initied wf"); 7426 7427 $(".bx_filter:not(.n-ajax) .bx_filter_button_box.ajax-btns .filter-bnt-wrapper").addClass("hidden"); 7428 7429 if ($mobilefilter.isOpen) { 7430 // scroll to top 7431 $mobilefilter.find(".bx_filter_parameters").scrollTop(0); 7432 7433 // unfix body 7434 $("body").css({ overflow: "", height: "" }); 7435 7436 // hide overlay 7437 setTimeout(function () { 7438 $mobilefilterOverlay.fadeOut("fast"); 7439 }, 100); 7440 7441 // hide mobile filter 7442 $mobilefilter.removeClass("show"); 7443 $mobilefilter.isOpen = false;
7444 } 7445 7446 if (append && $mobilefilter.isAppendLeft) { 7447 $mobilefilter.find('.bx_filter_parameters_box_title:not(.no-html-close)').removeClass("opened"); 7448 $mobilefilter.find('.bx_filter_block.dropdown-menu-wrapper').hide(); 7449 7450 $(".bx_filter").appendTo($("#wrapInlineFilter")).show(); 7451 var helper = $("#filter-helper"); 7452 if (helper.length) { 7453 helper.appendTo($("#filter-helper-wrapper")); 7454 } 7455 $mobilefilter.isAppendLeft = false; 7456 $mobilefilter.removeData("init"); 7457 } 7458 }; 7459 7460 checkMobileFilter = function () { 7461 if ( 7462 (!window.matchMedia("(max-width: 991px)").matches && !$mobilefilter.isHorizontalOrCompact) || 7463 (!window.matchMedia("(max-width: 767px)").matches && $mobilefilter.isHorizontalOrCompact) 7464 ) { 7465 CloseMobileFilter(true); 7466 } 7467 }; 7468 } 7469 /* --- END Bind mobile filter --- */ 7470}); 7471 7472/* End */ 7473; 7474; /* Start:"a:4:{s:4:"full";s:58:"/bitrix/templates/aspro-premier/js/custom.js?1774596326100";s:6:"source";s:44:"/bitrix/templates/aspro-premier/js/custom.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7475/* 7476You can use this file with your scripts. 7477It will not be overwritten when you upgrade solution. 7478*/ 7479/* End */ 7480; 7481; /* Start:"a:4:{s:4:"full";s:70:"/bitrix/templates/aspro-premier/js/metrika.goals.min.js?17745963267001";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/metrika.goals.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7482function checkCounters(name){return void 0!==name?"google"==name&&"Y"==arAsproOptions.COUNTERS.GOOGLE_ECOMERCE&&arAsproOptions.COUNTERS.GOOGLE_COUNTER>0||"yandex"==name&&"Y"==arAsproOptions.COUNTERS.YANDEX_ECOMERCE&&arAsproOptions.COUNTERS.YANDEX_COUNTER>0:"Y"==arAsproOptions.COUNTERS.YANDEX_ECOMERCE&&arAsproOptions.COUNTERS.YANDEX_COUNTER>0||"Y"==arAsproOptions.COUNTERS.GOOGLE_ECOMERCE&&arAsproOptions.COUNTERS.GOOGLE_COUNTER>0}function waitLayer(delay,callback){"undefined"!=typeof dataLayer&&"function"==typeof callback?callback():setTimeout((function(){waitLayer(delay,callback)}),delay)}function addBasketCounter(id,callback){checkCounters()&&$.ajax({url:arAsproOptions.SITE_DIR+"ajax/goals.php",dataType:"json",type:"POST",data:{ID:id},success:function(item){if(item&&item.ID){let ecommerce={items:[{item_name:item.NAME,item_id:item.ID,price:parseFloat(item.PRICE),item_brand:item.BRAND,item_category:item.CATEGORY,item_list_name:"List Results",item_list_id:item.IBLOCK_SECTION_ID,affiliation:item.SHOP_NAME,index:1,quantity:parseFloat(item.QUANTITY)}]};"v3"===arAsproOptions.COUNTERS.GA_VERSION&&(ecommerce={currencyCode:item.CURRENCY,add:{products:[{id:item.ID,name:item.NAME,price:parseFloat(item.PRICE),brand:item.BRAND,category:item.CATEGORY,quantity:parseFloat(item.QUANTITY)}]}}),waitLayer(100,(function(){dataLayer.push({ecommerce:null}),dataLayer.push({event:arAsproOptions.COUNTERS.GOOGLE_EVENTS.ADD2BASKET,currency:item.CURRENCY,value:parseFloat(item.PRICE),ecommerce:ecommerce}),"function"==typeof callback&&callback()}))}}})}function delFromBasketCounter(id,callback){checkCounters()&&$.ajax({url:arAsproOptions.SITE_DIR+"ajax/goals.php",dataType:"json",type:"POST",data:{ID:id},success:function(item){if(item.ID){let ecommerce={items:[{item_name:item.NAME,item_id:item.ID,price:parseFloat(item.PRICE),item_brand:item.BRAND,item_category:item.CATEGORY,affiliation:item.SHOP_NAME,item_list_name:"List Results"}]};"v3"===arAsproOptions.COUNTERS.GA_VERSION&&(ecommerce={remove:{products:[{id:item.ID,name:item.NAME,category:item.CATEGORY}]}}),waitLayer(100,(function(){dataLayer.push({ecommerce:null}),dataLayer.push({event:arAsproOptions.COUNTERS.GOOGLE_EVENTS.REMOVE_BASKET,currency:item.CURRENCY,value:parseFloat(item.PRICE),ecommerce:ecommerce}),"function"==typeof callback&&callback()}))}}})}function viewItemCounter(id,price_id){checkCounters()&&$.ajax({url:arAsproOptions.SITE_DIR+"ajax/goals.php",dataType:"json",type:"POST",data:{PRODUCT_ID:id,PRICE_ID:price_id},success:function(item){if(item.ID){let ecommerce={items:[{item_name:item.NAME,item_id:item.ID,price:parseFloat(item.PRICE),item_brand:item.BRAND,item_category:item.CATEGORY,item_list_name:"List Results",item_list_id:item.IBLOCK_SECTION_ID,affiliation:item.SHOP_NAME,index:1,quantity:parseFloat(item.QUANTITY)}]};
7482"v3"===arAsproOptions.COUNTERS.GA_VERSION&&(ecommerce={detail:{products:[{id:item.ID,name:item.NAME,price:parseFloat(item.PRICE),brand:item.BRAND,category:item.CATEGORY}]}}),waitLayer(100,(function(){dataLayer.push({ecommerce:null}),dataLayer.push({event:"view_item",currency:item.CURRENCY,value:parseFloat(item.PRICE),ecommerce:ecommerce})}))}}})}function purchaseCounter(order_id,type,callback){checkCounters()&&$.ajax({url:arAsproOptions.SITE_DIR+"ajax/goals.php",dataType:"json",type:"POST",data:{ORDER_ID:order_id,TYPE:type},success:function(order){var products=[];const items=[];if(order.ITEMS)for(var i in order.ITEMS)products.push({id:order.ITEMS[i].ID,sku:order.ITEMS[i].ID,name:order.ITEMS[i].NAME,price:order.ITEMS[i].PRICE,brand:order.ITEMS[i].BRAND,category:order.ITEMS[i].CATEGORY,quantity:order.ITEMS[i].QUANTITY}),items.push({item_id:order.ITEMS[i].ID,item_name:order.ITEMS[i].NAME,price:parseFloat(order.ITEMS[i].PRICE),item_brand:order.ITEMS[i].BRAND,item_category:order.ITEMS[i].CATEGORY,affiliation:order.SHOP_NAME,quantity:parseFloat(order.ITEMS[i].QUANTITY)});if(order.ID){let ecommerce={transaction_id:order.ACCOUNT_NUMBER,affiliation:order.SHOP_NAME,value:order.PRICE,tax:order.TAX_VALUE,shipping:order.PRICE_DELIVERY,currency:order.CURRENCY,items:items};"v3"===arAsproOptions.COUNTERS.GA_VERSION&&(ecommerce={purchase:{actionField:{id:order.ACCOUNT_NUMBER,shipping:order.PRICE_DELIVERY,tax:order.TAX_VALUE,list:type,revenue:order.PRICE},products:products}}),waitLayer(100,(function(){dataLayer.push({ecommerce:null}),dataLayer.push({event:arAsproOptions.COUNTERS.GOOGLE_EVENTS.PURCHASE,ecommerce:ecommerce}),void 0!==callback&&callback(ecommerce)}))}else void 0!==callback&&callback()},error:function(){void 0!==callback&&callback()}})}function checkoutCounter(step,option,callback){checkCounters("google")&&$.ajax({url:arAsproOptions.SITE_DIR+"ajax/goals.php",dataType:"json",type:"POST",data:{BASKET:"Y"},success:function(basket){var products=[];const items=[];let summ=0,currency="RUB";if(basket.ITEMS)for(var i in basket.ITEMS)products.push({id:basket.ITEMS[i].ID,name:basket.ITEMS[i].NAME,price:basket.ITEMS[i].PRICE,brand:basket.ITEMS[i].BRAND,category:basket.ITEMS[i].CATEGORY,quantity:basket.ITEMS[i].QUANTITY}),items.push({item_id:basket.ITEMS[i].ID,item_name:basket.ITEMS[i].NAME,price:parseFloat(basket.ITEMS[i].PRICE),item_brand:basket.ITEMS[i].BRAND,item_category:basket.ITEMS[i].CATEGORY,affiliation:basket.SHOP_NAME,quantity:parseFloat(basket.ITEMS[i].QUANTITY)}),summ+=basket.ITEMS[i].PRICE,currency=basket.ITEMS[i].CURRENCY;if(products){let ecommerce={items:items};"v3"===arAsproOptions.COUNTERS.GA_VERSION&&(ecommerce={checkout:{actionField:{step:step,option:option},products:products}}),waitLayer(100,(function(){dataLayer.push({ecommerce:null}),dataLayer.push({event:arAsproOptions.COUNTERS.GOOGLE_EVENTS.CHECKOUT_ORDER,currency:currency,value:parseFloat(summ),ecommerce:ecommerce}),void 0!==callback&&"function"==typeof callback&&callback()}))}}})}function waitCounter(idCounter,delay,callback){var obCounter;"object"==typeof window["yaCounter"+idCounter]?"function"==typeof callback&&callback():setTimeout((function(){waitCounter(idCounter,delay,callback)}),delay)}BX.addCustomEvent("onCounterGoals",(function(eventdata){if("object"!=typeof eventdata&&(eventdata={goal:"undefined"}),"string"!=typeof eventdata.goal&&(eventdata.goal="undefined"),"goal_basket_add"===eventdata.goal?"object"==typeof eventdata.params&&eventdata.params&&eventdata.params.id&&addBasketCounter(eventdata.params.id):"goal_basket_remove"===eventdata.goal&&"object"==typeof eventdata.params&&eventdata.params&&eventdata.params.id&&delFromBasketCounter(eventdata.params.id),"Y"===arAsproOptions.THEME.YA_GOALS&&arAsproOptions.THEME.YA_COUNTER_ID){var idCounter=arAsproOptions.THEME.YA_COUNTER_ID;if(idCounter=parseInt(idCounter))try{waitCounter(idCounter,50,(function(){var obCounter=window["yaCounter"+idCounter];"object"==typeof obCounter&&obCounter.reachGoal(eventdata.goal)}))}catch(e){console.error(e)}else console.info("Bad counter id!",idCounter)}})),readyDOM((function(){"Y"===arAsproOptions.THEME.USE_DEBUG_GOALS?$.cookie("_ym_debug","1"):$.cookie("_ym_debug",null)})); 7483/* End */ 7484; 7485; /* Start:"a:4:{s:4:"full";
7485s:61:"/bitrix/templates/aspro-premier/js/logo.min.js?17745963263052";s:6:"source";s:46:"/bitrix/templates/aspro-premier/js/logo.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7486if(void 0===window.JLogo){window.JLogo=function(e,o){var t={inited:!1};Object.defineProperties(this,{inited:{get:function(){return t.inited},set:function(e){e&&(t.inited=!0)}},node:{get:function(){return e}},img:{get:function(){return e?e.querySelector("img"):null}},svg:{get:function(){return e?e.querySelector("svg"):null}}}),this.params=function(e){if("object"==typeof o&&void 0!==e&&Object.keys(o).indexOf(e)>-1)return o[e]},this.init()},window.JLogo.prototype={get src(){return this.img?this.img.getAttribute("src"):""},set src(e){this.img&&this.img.setAttribute("src",e)},get srcDark(){return arAsproOptions.THEME.LOGO_IMAGE},get srcLight(){return arAsproOptions.THEME.LOGO_IMAGE_WHITE?arAsproOptions.THEME.LOGO_IMAGE_WHITE:arAsproOptions.THEME.LOGO_IMAGE},get color(){if(this.img){let e=this.src;return e===this.srcDark?"dark":e===this.srcLight?"light":""}return""},set color(e){this.canChangeColor&&this.color!==e&&(this.src="light"===e?this.srcLight:this.srcDark)},get isMainLogo(){return Boolean(this.node.closest("header"))},get canChangeColor(){let e=!1;return this.img&&(this.isMainLogo&&this.node.closest(".header_opacity")||(e=!0)),e},setColorOfBanner:function(e){this.img&&e&&void 0!==window.headerLogo&&(value=BX.data(e,"color"),value=value||"dark",this.color!==value&&this.node.setAttribute("src","light"===value?this.srcLight:this.srcDark))},get isPreferColor(){return BX.hasClass(document.body,"theme-default")},get preferColor(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"},get themeColor(){return this.isPreferColor?this.preferColor:BX.hasClass(document.body,"theme-dark")?"dark":"light"},init:function(){this.inited||(this.inited=!0,this.img&&(this.color=this.getInvertedColor(this.themeColor),this.bindEvents()))},getInvertedColor:function(e){return"default"===e&&(e=this.preferColor),"light"===e?"dark":"dark"===e?"light":""},bindEvents:function(){"function"==typeof this.handlers.onChangePrefersColorScheme&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",BX.proxy(this.handlers.onChangePrefersColorScheme,this)),"function"==typeof this.handlers.onChangeThemeColor&&BX.addCustomEvent("onChangeThemeColor",BX.proxy(this.handlers.onChangeThemeColor,this))},unbindEvents:function(){},handlers:{onChangePrefersColorScheme:function(e){e||(e=window.event);let o=e.matches?"dark":"light";this.isPreferColor&&(this.color=this.getInvertedColor(o)),BX.setCookie("prefers-color-scheme",o)},onChangeThemeColor:function(e){"object"==typeof e&&e&&"value"in e&&(this.color=this.getInvertedColor(e.value))}}},("function"==typeof readyDOM?readyDOM:BX.ready)((function(){window.headerLogo=new JLogo(document.querySelector("header .logo")),window.headerfixedLogo=new JLogo(document.querySelector("#headerfixed .header .logo")),window.mobileheaderLogo=new JLogo(document.querySelector("#mobileheader .mobileheader .logo")),window.mobilemenuLogo=new JLogo(document.querySelector("#mobilemenu .mobilemenu .logo")),BX.setCookie("prefers-color-scheme",window.headerLogo.preferColor)}))} 7487/* End */ 7488; 7489; /* Start:"a:4:{s:4:"full";s:69:"/bitrix/templates/aspro-premier/js/item-action.min.js?177876543729303";s:6:"source";s:53:"/bitrix/templates/aspro-premier/js/item-action.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7490void 0===window.JItemAction&&(JItemAction=function(t,e){t="object"==typeof t&&t&&t instanceof Node?t:null,e="object"==typeof e&&e?e:{},this.node=t;var o={inited:!1};let i=JSON.stringify(e);Object.defineProperties(this,{inited:{get:function(){return o.inited},set:function(t){t&&(o.inited=!0)}},config:{get:function(){return JSON.parse(i)}}}),this.init()},JItemAction.prototype={constructor:JItemAction,busy:!1,parentNode:null,xhr:null,get class(){return this.constructor.name},get action(){return""},get requestUrl(){return arAsproOptions.SITE_DIR+"ajax/item.php"},get valid(){return this.node&&this.action},get idle(){return!1},activeStateClass:"active",get state(){return this.valid&&BX.hasClass(this.node,this.activeStateClass)},set state(t){this.valid&&t!=this.state&&(this.changeStateClass(t),this.switch&&(this.switch.checked=t,BX.fireEvent(this.switch,"change")),this.changeStateAttributes(t))},prevState:null,get data(){let t={};if(this.valid){let e="";if(e=this.node.classList.contains("js-external-button")?document.querySelector(".catalog-detail"):this.node.closest(".
7490js-popup-block"),e){let o=e.querySelector("[data-item]");if(o&&(t="function"==typeof jQuery?jQuery(o).data("item"):BX.data(o,"item"),void 0!==t&&"object"!=typeof t&&t))try{t=JSON.parse(t.toString())}catch(e){t={}}}}return"object"==typeof t&&t?t:{}},_switch:null,get switch(){return this._switch||(this._switch=this.getSwitch()),this._switch},init:function(){this.inited||(this.inited=!0,this.valid&&(this.node.itemAction=this,this.parentNode=this.node.parentElement,this.bindEvents()))},changeStateClass(t){const e=document.querySelectorAll(`.js-item-action[data-action="${this.action}"][data-id="${this.data.ID}"]`);e.length&&e.forEach((e=>{e.classList.toggle(this.activeStateClass,t),e.parentElement&&e.parentElement.classList.toggle(this.activeStateClass,t)}))},changeStateAttributes(t){const e=document.querySelectorAll(`.js-item-action[data-action="${this.action}"][data-id="${this.data.ID}"]`),o=this.getStateTitle(t);e.length&&e.forEach((t=>{t.setAttribute("title",o);let e=t.querySelector(".info-buttons__item-text");e&&e.setAttribute("title",o),this.isActionRequiresTextChange()&&(t.textContent=o)}))},bindEvents:function(){this.valid&&BX.Type.isFunction(this.handlers.onChangeSwitch)&&this.switch&&BX.bind(this.switch,"change",BX.proxy(this.handlers.onChangeSwitch,this))},unbindEvents:function(){this.valid&&BX.Type.isFunction(this.handlers.onChangeSwitch)&&this.switch&&BX.unbind(this.switch,"change",BX.proxy(this.handlers.onChangeSwitch,this))},fireEvent:function(t){if(this.valid&&!this.busy&&"object"==typeof t&&t){let e=t.type;e&&"click"===e&&BX.proxy(this.handlers.onClickNode,this)(t)}},isStateChanged:function(){return null!==this.prevState&&this.prevState!=this.state},getStateTitle:function(t){return this.valid?t?this.node.getAttribute("data-title_added")||"":this.node.getAttribute("data-title")||"":""},getStateGoalCode:function(t){return"goal_"+this.action+(t?"_add":"_remove")},showStateNotice:function(t,e){if(this.valid&&"function"==typeof JNoticeSurface){let o=JNoticeSurface.get(),i="onAdd2"+this.action.replace(/^\w/,(t=>t.toUpperCase()));i&&"function"==typeof o[i]&&o[i](t,e)}},mkStateNoticeItems:function(t){return[this.node]},getCustomEventName:function(t){if(this.action){return(t||"on")+("JItemAction"+this.action.replace(/^\w/,(t=>t.toUpperCase())))}return""},updateState:function(t){this.valid&&(this.xhr&&this.abortPrevRequest(),this.busy||(this.node.blur(),this.prevState=void 0!==t?t:this.state,this.idle?this.parentNode&&BX.removeClass(this.parentNode,"loadings"):(this.busy=!0,this.sendRequest())))},collectRequestData:async function(){let t=new FormData;t.set("is_ajax_post","Y"),t.set("sessid",BX.bitrix_sessid()),t.set("lang",BX.message("LANGUAGE_ID")),t.set("action",this.action),t.set("state",this.state?1:0),t.set("SITE_ID",BX.message("SITE_ID"));let e=this.data;return e&&(t.set("ID",e.ID),t.set("IBLOCK_ID",e.IBLOCK_ID)),t},makeRequestConfig:async function(){return this.collectRequestData().then(BX.proxy((function(t){let e=this.getCustomEventName("onCollectRequestData");return e&&BX.onCustomEvent(e,[{action:this.action,id:this.node.getAttribute("data-id"),data:t}]),{url:this.requestUrl,data:t,method:"POST",dataType:"json",async:!0,processData:!0,preparePost:!1,scriptsRunFirst:!0,emulateOnload:!0,start:!0,cache:!1}}),this)).catch((function(t){throw t}))},sendRequest:function(){this.valid&&this.makeRequestConfig().then(BX.proxy((function(t){t.onsuccess=BX.proxy((function(e){this.xhr&&this.xhr.status&&("function"==typeof this.onRequestSuccess&&this.onRequestSuccess(e),"function"==typeof this.onRequestComplete&&this.onRequestComplete(t))}),this),t.onfailure=BX.proxy((function(){"function"==typeof this.onRequestFailure&&this.onRequestFailure(),"function"==typeof this.onRequestComplete&&this.onRequestComplete(t)}),this),this.xhr=BX.ajax(t)}),this)).catch(BX.proxy((function(t){setTimeout(BX.proxy((function(){this.isStateChanged()&&(this.state=this.prevState,this.prevState=null),this.parentNode&&BX.removeClass(this.parentNode,"loadings"),this.busy=!1}),this),0)}),this))},onRequestComplete:function(t){setTimeout((()=>{this.parentNode&&BX.removeClass(this.parentNode,"loadings"),this.busy=!1,this.xhr=null}),0)},onRequestSuccess:function(t){let e="object"==typeof t&&t?t:{};if(e.success){if(this.action){let t=this.action.toUpperCase();"object"!=typeof arAsproCounters&&(arAsproCounters={}),"object"!=typeof arAsproCounters[t]&&(arAsproCounters[t]={}),"items"in e&&(arAsproCounters[t].ITEMS=e.items),"count"in e&&(arAsproCounters[t].COUNT=e.count),"title"in e&&(arAsproCounters[t].TITLE=e.title),this.class&&"function"==typeof window[this.class]&&"function"==typeof window[this.class].markBadges&&window[this.class].markBadges();let o=this.state;if(this.class&&"function"==typeof window[this.class]&&"function"==typeof window[this.class].markItems&&window[this.class].markItems(),this.isStateChanged()){let t=this.mkStateNoticeItems(e);void 0!==this.node.dataset.notice&&0==this.node.dataset.notice||this.showStateNotice(t,o),BX.onCustomEvent("onCounterGoals",[{goal:this.getStateGoalCode(o),params:{id:this.node.getAttribute("data-id")}}])}if("reload"in e)for(reloadAction in e.reload){let t=reloadAction.toUpperCase();"items"in e.reload[reloadAction]&&(arAsproCounters[t].ITEMS=e.reload[reloadAction].items),"count"in e.reload[reloadAction]&&(arAsproCounters[t].COUNT=e.reload[reloadAction].count),"title"in e.reload[reloadAction]&&(arAsproCounters[t].TITLE=e.reload[reloadAction].title);let o="JItemAction"+reloadAction.replace(/^\w/,(t=>t.toUpperCase()));"function"==typeof window[o]&&(this.class&&"function"==typeof window[o]&&"function"==typeof window[o].markBadges&&window[o].markBadges(),this.class&&"function"==typeof window[o]&&"function"==typeof window[o].markItems&&window[o].markItems())}}}else if(console.error(e.error),this.isStateChanged()&&(this.state=this.prevState),"function"==typeof JNoticeSurface){JNoticeSurface.get().onResultError(e)}this.finalRequestActions()},onRequestFailure:function(){if(this.isStateChanged()&&(this.state=this.prevState),"function"==typeof JNoticeSurface){JNoticeSurface.get().onRequestError(this.xhr)}},abortPrevRequest:function(){return this.xhr&&this.busy&&(this.xhr.abort(),this.busy=!1,this.xhr=null),this},finalRequestActions:function(){this.valid&&"subscribe"!==this.action&&this.updateDropdownBlocks(this.action)},updateDropdownBlocks:function(t){t||(t="basket");let e=Array.prototype.slice.call(document.querySelectorAll(`.${t}-dropdown`));if(e.length)for(let t in e)BX.removeClass(e[t],"loaded")},getSwitch:function(){let t=null;if(this.valid){let e=this.data;if(e){let o=e.ID;if(o){let e=this.node;for(;e&&!t;)t=e.querySelector(`.js-item-action-switch[data-action="${this.action}"][data-id="${o}"]`),e=e.parentElement}}}return t},isActionRequiresTextChange:function(){return BX.hasClass(this.node,"btn")&&!BX.hasClass(this.node,"item-action__inner--only-icon")},handlers:{onClickNode:function(t){t||(t=window.event);let e=t.target||t.srcElement;void 0!==e&&e&&this.valid&&(this.busy||(this.busy=!0,this.node.blur(),this.prevState=this.state,this.state=!this.state,this.idle?(this.parentNode&&BX.removeClass(this.parentNode,"loadings"),this.busy=!1):this.sendRequest()))},onChangeSwitch:function(t){t||(t=window.event);let e=t.target||t.srcElement;void 0!==e&&e&&this.valid}}},JItemAction.factory=function(t,e){if("object"==typeof t&&t&&t instanceof Node){if(t.itemAction instanceof JItemAction)return t.itemAction;{let o=(t.getAttribute("data-action")||"").trim();if(o){let i="JItemAction"+o.replace(/^\w/,(t=>t.toUpperCase()));if("function"==typeof window[i])return new window[i](t,e)}}}return new window.JItemAction(t,e)},JItemAction.markItems=function(){JItemActionBasket.markItems(),JItemActionService.markItems(),JItemActionCompare.markItems(),JItemActionFavorite.markItems(),JItemActionSubscribe.markItems()},JItemAction.markBadges=function(){JItemActionBasket.markBadges(),JItemActionCompare.markBadges(),JItemActionFavorite.markBadges()},JItemAction.actual=function(){JItemAction.markBadges(),JItemAction.markItems()},JItemAction.reload=function(){BX.ajax({url:arAsproOptions.SITE_DIR+"ajax/actualBasket.php",data:{action:"reload",sessid:BX.bitrix_sessid()},method:"POST",dataType:"html",async:!0,processData:!0,preparePost:!0,scriptsRunFirst:!0,emulateOnload:!0,start:!0,cache:!1,onsuccess:function(t){BX.onCustomEvent("onReloadCounters",[{data:t}])}})},JItemActionCompare=function(t,e){JItemAction.apply(this,arguments)},JItemActionCompare.prototype=Object.create(JItemAction.prototype),JItemActionCompare.prototype.constructor=JItemActionCompare,Object.defineProperties(JItemActionCompare.prototype,{action:{get:()=>"compare"}}),JItemActionCompare.markItems=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.COMPARE&&arAsproCounters.COMPARE&&"object"==typeof arAsproCounters.COMPARE.ITEMS){let t=Array.prototype.slice.call(document.querySelectorAll('.js-item-action.active[data-action="compare"]'));if(t.length){let e=Object.values(arAsproCounters.COMPARE.ITEMS);for(let o in t){let i=BX.data(t[o],"id");if(i&&-1==e.indexOf(i)){(t[o].itemAction instanceof JItemAction?t[o].itemAction:new this(t[o])).state=!1}}}if(arAsproCounters.COMPARE.ITEMS)for(let t in arAsproCounters.COMPARE.ITEMS){let e=arAsproCounters.COMPARE.ITEMS[t],o=Array.prototype.slice.call(document.querySelectorAll(`.js-item-action[data-action="compare"][data-id="${e}"]:not(.active)`));if(o.length)for(let t in o){(o[t].itemAction instanceof JItemAction?o[t].itemAction:new this(o[t])).state=!0}}}},JItemActionCompare.markBadges=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.COMPARE&&arAsproCounters.COMPARE&&void 0!==arAsproCounters.COMPARE.COUNT){let t=Array.prototype.slice.call(document.querySelectorAll(".js-compare-block"));if(t.length)if(arAsproCounters.COMPARE.COUNT>0)for(let e in t)BX.addClass(t[e],"icon-block-with-counter--count");else for(let e in t)BX.removeClass(t[e],"icon-block-with-counter--count");if(t=Array.prototype.slice.call(document.querySelectorAll(".js-compare-block .count")),t.length)for(let e in t)t[e].textContent=arAsproCounters.COMPARE.COUNT}},JItemActionFavorite=function(t,e){JItemAction.apply(this,arguments)},JItemActionFavorite.prototype=Object.create(JItemAction.prototype),JItemActionFavorite.prototype.constructor=JItemActionFavorite,Object.defineProperties(JItemActionFavorite.prototype,{action:{get:()=>"favorite"}}),JItemActionFavorite.prototype.getStateGoalCode=function(t){return"goal_wish"+(t?"_add":"_remove")},JItemActionFavorite.markBadges=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.FAVORITE&&arAsproCounters.FAVORITE&&void 0!==arAsproCounters.FAVORITE.COUNT){let t=Array.prototype.slice.call(document.querySelectorAll(".js-favorite-block"));if(t.length)if(arAsproCounters.FAVORITE.COUNT>0)for(let e in t)BX.addClass(t[e],"icon-block-with-counter--count");else for(let e in t)BX.removeClass(t[e],"icon-block-with-counter--count");if(t=Array.prototype.slice.call(document.querySelectorAll(".js-favorite-block .count")),t.length)for(let e in t)t[e].textContent=arAsproCounters.FAVORITE.COUNT}},JItemActionFavorite.markItems=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.FAVORITE&&arAsproCounters.FAVORITE&&"object"==typeof arAsproCounters.FAVORITE.ITEMS&&arAsproCounters.FAVORITE.ITEMS){let t=Array.prototype.slice.call(document.querySelectorAll('.js-item-action.active[data-action="favorite"]'));if(t.length){let e=Object.values(arAsproCounters.FAVORITE.ITEMS);for(let o in t){let i=BX.data(t[o],"id");if(i&&-1==e.indexOf(i)){(t[o].itemAction instanceof JItemAction?t[o].itemAction:new this(t[o])).state=!1}}}if(arAsproCounters.FAVORITE.ITEMS)for(let t in arAsproCounters.FAVORITE.ITEMS){let e=arAsproCounters.FAVORITE.ITEMS[t],o=Array.prototype.slice.call(document.querySelectorAll(`.js-item-action[data-action="favorite"][data-id="${e}"]:not(.active)`));if(o.length)for(let t in o){(o[t].itemAction instanceof JItemAction?o[t].itemAction:new this(o[t])).state=!0}}}},JItemActionSubscribe=function(t,e){JItemAction.apply(this,arguments)},JItemActionSubscribe.prototype=Object.create(JItemAction.prototype),JItemActionSubscribe.prototype.constructor=JItemActionSubscribe,Object.defineProperties(JItemActionSubscribe.prototype,{action:{get:()=>"subscribe"}}),JItemActionSubscribe.markItems=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.SUBSCRIBE&&arAsproCounters.SUBSCRIBE&&"object"==typeof arAsproCounters.SUBSCRIBE.ITEMS){let t=Array.prototype.slice.call(document.querySelectorAll('.js-item-action.active[data-action="subscribe"]'));if(t.length){let e=Object.values(arAsproCounters.SUBSCRIBE.ITEMS);for(let o in t){let i=BX.data(t[o],"id");if(i&&-1==e.indexOf(i)){(t[o].itemAction instanceof JItemAction?t[o].itemAction:new this(t[o])).state=!1}}}if(arAsproCounters.SUBSCRIBE.ITEMS)for(let t in arAsproCounters.SUBSCRIBE.ITEMS){let e=arAsproCounters.SUBSCRIBE.ITEMS[t],o=Array.prototype.slice.call(document.querySelectorAll(`.js-item-action[data-action="subscribe"][data-id="${e}"]:not(.active)`));if(o.length)for(let t in o){(o[t].itemAction instanceof JItemAction?o[t].itemAction:new this(o[t])).state=!0}}}},JItemActionBasket=function(t,e){JItemAction.apply(this,arguments)},JItemActionBasket.prototype=Object.create(JItemAction.prototype),JItemActionBasket.prototype.constructor=JItemActionBasket,JItemActionBasket.prototype.basketPropsNode=null,Object.defineProperties(JItemActionBasket.prototype,{action:{get:()=>"basket"},state:{get(){return this.valid&&BX.hasClass(this.node,this.activeStateClass)},set(t){this.valid&&t!=this.state&&(this.changeStateClass(t),this.switch&&(this.switch.checked=t,BX.fireEvent(this.switch,"change")),this.changeStateAttributes(t))}}
7490,quantity:{get(){if(this.valid){let t=this.node.closest(".buy_block");if(t){let e=t.querySelector(".in_cart .counter__count");if(e)return e.value}}return 1},set(t){if(this.valid){this.node.setAttribute("data-quantity",t);let e=this.node.closest(".buy_block");if(e){let o=e.querySelector(".in_cart .counter__count");o&&(o.value=t)}}}},ratio:{get(){let t=1;return this.valid&&(t=this.node.getAttribute("data-ratio")||1),t<=0&&(t=1),t}},minQuantity:{get(){let t=this.ratio,e=t;if(this.valid){if(e=this.node.getAttribute("data-min"),null===e){let t=this.node.closest(".counter");if(t){let o=t.querySelector(".counter__action--minus");o&&(e=o.getAttribute("data-min"))}}e<t&&(e=t)}return e}},maxQuantity:{get(){if(this.valid&&(maxQuantity=this.node.getAttribute("data-max"),null===maxQuantity)){let t=this.node.closest(".counter");if(t){let e=t.querySelector(".counter__action--plus");e&&(maxQuantity=e.getAttribute("data-max"))}}return maxQuantity}}}),JItemActionBasket.prototype.resetQuantity=function(){this.valid&&(this.quantity=this.minQuantity||this.ratio)},JItemActionBasket.prototype.getBasketPropsNode=function(){let t=null;if(this.valid){let e=this.node.getAttribute("data-bakset_div")||"";e&&(t=BX(e)),!t&&"Y"!==this.node.getAttribute("data-offers")&&this.node.closest(".grid-list__item")&&(t=this.node.closest(".grid-list__item").querySelector(".basket_props_block"))}return t},JItemActionBasket.prototype.collectRequestData=async function(){return JItemAction.prototype.collectRequestData.call(this,arguments).then(BX.proxy((function(t){if(t.set("quantity",this.quantity),this.valid){let e="Y"===this.node.getAttribute("data-offers")?"Y":"N";t.set("offers",e);let o="Y"===this.node.getAttribute("data-add_props")?"Y":"N";t.set("add_props",o);let s="Y"===this.node.getAttribute("data-part_props")?"Y":"N";t.set("part_props",s);let n=this.node.getAttribute("data-props")||"";try{n=n.length?n.split(";"):[]}catch(t){n=[]}t.set("props",JSON.stringify(n));let r=document.querySelector(".rid_item"),a=r?r.getAttribute("rid"):this.node.getAttribute("rid")||!1;t.set("rid",a);let c=!1,l=this.getBasketPropsNode();if(l){let e=l.getElementsByTagName("select");if(e&&e.length)for(i=0;i<e.length;i++)if(!e[i].disabled)switch(e[i].type.toLowerCase()){case"select-one":t.set(e[i].name,e[i].value),c=!0;break;default:break}if(e=l.getElementsByTagName("input"),e&&e.length)for(i=0;i<e.length;i++)if(!e[i].disabled)switch(e[i].type.toLowerCase()){case"hidden":t.set(e[i].name,e[i].value),c=!0;break;case"radio":e[i].checked&&(t.set(e[i].name,e[i].value),c=!0);break;default:break}}if(c||t.set("prop[0]",0),this.isStateChanged()){if("N"===("Y"===this.node.getAttribute("data-empty_props")?"Y":"N"))return this.showBasketPropsForm().then(BX.proxy((function(e){if("object"==typeof e&&e&&e instanceof FormData)for(let o of e.keys())t.set(o,e.get(o));return t}),this)).catch((function(t){throw t}))}}return t}),this))},JItemActionBasket.prototype.showBasketPropsForm=async function(){let t=this;return new Promise(BX.proxy((function(e,o){let s=BX.create({tag:"div",attrs:{"data-event":"jqm","data-name":"message","data-param-form_id":"message","data-param-message_title":encodeURIComponent(BX.message("ADD_BASKET_PROPS_TITLE")),"data-param-message_button_title":encodeURIComponent(BX.message("ADD_BASKET_PROPS_BUTTON_TITLE"))}});BX.append(s,document.body),$(s).jqmEx(BX.proxy((function(t,o,s){let n=o.w[0],r=n.querySelector(".form-body"),a=n.querySelector('.form-footer input[type="submit"]'),c=this.getBasketPropsNode();c&&r&&(r.innerHTML=c.innerHTML),BX.bind(a,"click",BX.proxy((function(){let t=new FormData,o=n.getElementsByTagName("select");if(o&&o.length)for(i=0;i<o.length;i++)if(!o[i].disabled)switch(o[i].type.toLowerCase()){case"select-one":t.set(o[i].name,o[i].value);break;default:break}if(o=n.getElementsByTagName("input"),o&&o.length)for(i=0;i<o.length;i++)if(!o[i].disabled)switch(o[i].type.toLowerCase()){case"hidden":t.set(o[i].name,o[i].value);break;case"radio":o[i].checked&&t.set(o[i].name,o[i].value);break;default:break}e(t);let s=n.querySelector(".jqmClose");if(s)BX.fireEvent(s,"click");else{let t=n.parentElement.querySelector(".jqmOverlay");t?BX.fireEvent(t,"click"):n.innerHTML=""}}),this))}
7490),t),BX.proxy((function(t,e,i){this.valid&&this.busy&&o()}),t)),BX.fireEvent(s,"click"),s.remove()})),t)},JItemActionBasket.prototype.onRequestSuccess=function(t){JItemAction.prototype.onRequestSuccess.call(this,t);let e=Array.prototype.slice.call(document.querySelectorAll(".basket-dropdown"));if(e.length)for(let t in e)BX.removeClass(e[t],"loaded")},JItemActionBasket.prototype.mkStateNoticeItems=function(t){let e=JItemAction.prototype.mkStateNoticeItems.call(this,t);if("changed_services"in t)for(i in t.changed_services){let o=t.changed_services[i],s=JItemActionService.get(o);s&&e.push(s.node)}return e},JItemActionBasket.markBadges=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.BASKET&&arAsproCounters.BASKET&&void 0!==arAsproCounters.BASKET.COUNT){let t=Array.prototype.slice.call(document.querySelectorAll(".js-basket-block"));if(t.length){if(arAsproCounters.BASKET.COUNT>0)for(let e in t){BX.addClass(t[e],"icon-block-with-counter--count"),BX.removeClass(t[e],"header-cart__inner--empty"),t[e].closest("a")&&t[e].closest("a").setAttribute("title",arAsproCounters.BASKET.TITLE)}else for(let e in t)BX.removeClass(t[e],"icon-block-with-counter--count"),BX.addClass(t[e],"header-cart__inner--empty");for(let e in t){let o=t[e].closest("a");o&&o.setAttribute("title",arAsproCounters.BASKET.TITLE)}}if(t=Array.prototype.slice.call(document.querySelectorAll(".js-basket-block .count")),t.length)for(let e in t)t[e].textContent=arAsproCounters.BASKET.COUNT}},JItemActionBasket.markItems=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.BASKET&&arAsproCounters.BASKET&&"object"==typeof arAsproCounters.BASKET.ITEMS&&arAsproCounters.BASKET.ITEMS){let t=Array.prototype.slice.call(document.querySelectorAll('.js-item-action.active[data-action="basket"]'));if(t.length){let e=Object.keys(arAsproCounters.BASKET.ITEMS);for(let o in t){let i=BX.data(t[o],"id");if(i&&-1==e.indexOf(i)){let e=t[o].itemAction instanceof JItemAction?t[o].itemAction:new this(t[o]);e.state=!1,e.resetQuantity()}}}if(arAsproCounters.BASKET.ITEMS)for(let e in arAsproCounters.BASKET.ITEMS){let o=e,i=arAsproCounters.BASKET.ITEMS[e];if(t=Array.prototype.slice.call(document.querySelectorAll(`.js-item-action[data-action="basket"][data-id="${o}"].active`)),t.length)for(let e in t){(t[e].itemAction instanceof JItemAction?t[e].itemAction:new this(t[e])).quantity=i}if(t=Array.prototype.slice.call(document.querySelectorAll(`.js-item-action[data-action="basket"][data-id="${o}"]:not(.active)`)),t.length)for(let e in t){let o=t[e].itemAction instanceof JItemAction?t[e].itemAction:new this(t[e]);o.state=!0,o.quantity=i}}}},JItemActionService=function(t,e){JItemAction.apply(this,arguments)},JItemActionService.prototype=Object.create(JItemAction.prototype),JItemActionService.prototype.constructor=JItemActionService,JItemActionService.prototype.basketPropsNode=null,Object.defineProperties(JItemActionService.prototype,{action:{get:()=>"service"},idle:{get(){if(this.valid){let t=this.productId;if(t){if(this.isInBasketPage)return!1;if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.BASKET&&arAsproCounters.BASKET&&"object"==typeof arAsproCounters.BASKET.ITEMS&&arAsproCounters.BASKET.ITEMS){let e=Object.keys(arAsproCounters.BASKET.ITEMS);return-1==e.indexOf(t)&&-1==e.indexOf(t.toString())}}}return!0}},state:{get(){return this.valid&&BX.hasClass(this.node,this.activeStateClass)},set(t){this.valid&&t!=this.state&&(this.changeStateClass(t),this.switch&&(this.switch.checked=t),this.changeStateAttributes(t))}},quantity:{get(){if(this.valid){let t=this.node.closest(".buy_block");if(t){let e=t.querySelector(".in_cart .counter__count");if(e)return e.value}}return 1},set(t){if(this.valid){this.node.setAttribute("data-quantity",t);let e=this.node.closest(".buy_block");if(e){let o=e.querySelector(".in_cart .counter__count");o&&(o.value=t)}}}},ratio:{get(){let t=1;return this.valid&&(t=this.node.getAttribute("data-ratio")||1),t<=0&&(t=1),t}},isInBasketPage:{get(){return this.node&&this.node.closest(".services_in_basket_page")}},productId:{get(){let t=0;if(this.valid){let e=this.node.closest(".services-buy-wrapper[data-
7490product_id]");e&&(t=parseInt(e.getAttribute("data-product_id")))}return t>0?t:0}}}),JItemActionService.prototype.bindEvents=function(){if(JItemAction.prototype.bindEvents.call(this,arguments),BX.Type.isFunction(this.handlers.onCollectRequestDataJItemActionBasket)){let t=JItemActionBasket.prototype.getCustomEventName("onCollectRequestData");t&&BX.addCustomEvent(t,BX.proxy(this.handlers.onCollectRequestDataJItemActionBasket,this))}},JItemActionService.prototype.unbindEvents=function(){if(JItemAction.prototype.unbindEvents.call(this,arguments),BX.Type.isFunction(this.handlers.onCollectRequestDataJItemActionBasket)){let t=JItemActionBasket.prototype.getCustomEventName("onCollectRequestData");t&&BX.removeCustomEvent(t,BX.proxy(this.handlers.onCollectRequestDataJItemActionBasket,this))}},JItemActionService.prototype.resetQuantity=function(){this.valid&&(this.quantity=this.ratio)},JItemActionService.prototype.collectRequestData=async function(){return JItemAction.prototype.collectRequestData.call(this,arguments).then(BX.proxy((function(t){return t.set("quantity",this.quantity),t.set("product_id",this.productId),t}),this))},JItemActionService.prototype.onRequestSuccess=function(t){JItemAction.prototype.onRequestSuccess.call(this,t),this.isInBasketPage&&BX.Sale.BasketComponent.sendRequest("refreshAjax",{fullRecalculation:"Y",otherParams:{param:"N"}});let e=Array.prototype.slice.call(document.querySelectorAll(".basket-dropdown"));if(e.length)for(let t in e)BX.removeClass(e[t],"loaded")},JItemActionService.prototype.handlers.onChangeSwitch=function(t){t||(t=window.event);let e=t.target||t.srcElement;if(void 0!==e&&e&&this.valid){let t=this.node.closest(".services-item");if(t){e.checked?t.classList.add("services-item--selected"):t.classList.remove("services-item--selected")}}},JItemActionService.prototype.handlers.onCollectRequestDataJItemActionBasket=function(t){try{if(this.state&&"basket"===t.action&&(t.id==this.productId||-1!==JItemActionService.getDetailSku2Ids().indexOf(t.id))){let e=t.data;if(BX.Type.isObject(e)){let t=this.data;if(t){let o=0;for(;e.get(`services[${id}][ID]`);)++o;e.set(`services[${id}][ID]`,t.ID),e.set(`services[${id}][IBLOCK_ID]`,t.IBLOCK_ID),e.set(`services[${id}][quantity]`,this.quantity)}}}}catch(t){console.error(t)}},JItemActionService.markBadges=function(){"object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.SERVICES&&arAsproCounters.SERVICES&&arAsproCounters.SERVICES.COUNT},JItemActionService.markItems=function(){if("object"==typeof arAsproCounters&&arAsproCounters&&"object"==typeof arAsproCounters.SERVICE&&arAsproCounters.SERVICE&&"object"==typeof arAsproCounters.SERVICE.ITEMS&&arAsproCounters.SERVICE.ITEMS){let t=Array.prototype.slice.call(document.querySelectorAll('.js-item-action.active[data-action="service"]'));if(t.length){let e=Object.keys(arAsproCounters.SERVICE.ITEMS);for(let o in t){let i=BX.data(t[o],"id"),s=t[o].closest("[data-product_id]");if(i&&s&&-1==e.indexOf(JItemActionService.joinId(i,s))){let e=t[o].itemAction instanceof JItemAction?t[o].itemAction:new this(t[o]);e.state=!1,e.resetQuantity()}}}if(arAsproCounters.SERVICE.ITEMS)for(let e in arAsproCounters.SERVICE.ITEMS){let o=JItemActionService.splitId(e),i=o.id,s=o.productId,n=arAsproCounters.SERVICE.ITEMS[e];if(i&&s){if(t=Array.prototype.slice.call(document.querySelectorAll(`.services-buy-wrapper[data-product_id="${s}"] .js-item-action[data-action="service"][data-id="${i}"].active`)),t.length)for(let e in t){(t[e].itemAction instanceof JItemAction?t[e].itemAction:new this(t[e])).quantity=n}if(t=Array.prototype.slice.call(document.querySelectorAll(`.services-buy-wrapper[data-product_id="${s}"] .js-item-action[data-action="service"][data-id="${i}"]:not(.active)`)),t.length)for(let e in t){let o=t[e].itemAction instanceof JItemAction?t[e].itemAction:new this(t[e]);o.state=!0,o.quantity=n}}}}},JItemActionService.joinId=function(t,e){return t+"_"+e},JItemActionService.splitId=function(t){let e=t.split("_");return{id:e[0]?e[0]:0,productId:e[1]?e[1]:0}},JItemActionService.getDetailSku2Ids=function(){let t=[];return document.querySelectorAll('.catalog-detail .detail-block.sku .js-item-action[data-action="basket"]').forEach((e=>{let o=JItemAction.factory(e);if(o){let e=o.data;e&&t.push(e.ID.toString())}})),t},JItemActionService.get=function(t){let e=null,o=JItemActionService.splitId(t);if(t=o.id,productId=o.productId,t>0&&productId>
74900){let o=document.querySelector(`.services-buy-wrapper[data-product_id="${productId}"] .js-item-action[data-action="service"][data-id="${t}"]`);o||-1!==JItemActionService.getDetailSku2Ids().indexOf(productId)&&(o=document.querySelector(`.catalog-detail .services-buy .js-item-action[data-action="service"][data-id="${t}"]`)),o&&(e=o.itemAction instanceof JItemAction?o.itemAction:new this(o))}return e},BX.Aspro.Utils.isFunction("reloadCounters")||(reloadCounters=function(){JItemAction.reload()}),BX.bindDelegate(document,"click",{class:"js-item-action"},(function(t){t||(t=window.event),BX.PreventDefault(t);let e=t.target||t.srcElement;void 0!==e&&e&&(e.closest(".opt_action")||JItemAction.factory(this).fireEvent(t))})),BX.bindDelegate(document,"change",{tag:"input",className:"js-item-action-switch",attrs:{type:"checkbox"}},(t=>{let e=(t=t||window.event).target,o=e.checked,i=null,s=(e.getAttribute("data-action")||"").trim();if(s){let t=e;for(;t&&!i;)i=t.querySelector(`.js-item-action[data-action="${s}"]`),t=t.parentElement}if(i){let t=JItemAction.factory(i);t&&(t.prevState=!o,t.state=o,t.updateState(!o))}})),BX.addCustomEvent("onCompleteAction",(function(t){try{"ajaxContentLoaded"!==t.action&&"jsLoadBlock"!==t.action||JItemAction.markItems()}catch(t){console.error(t)}})),BX.addCustomEvent("onAjaxSuccess",(function(t){"object"==typeof t&&t&&t.BASKET_REFRESHED&&(JItemAction.markItems(),JItemAction.reload())})),readyDOM((function(){JItemAction.markItems()}))); 7491/* End */ 7492; 7493; /* Start:"a:4:{s:4:"full";s:64:"/bitrix/templates/aspro-premier/js/notice.min.js?177876543716454";s:6:"source";s:48:"/bitrix/templates/aspro-premier/js/notice.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7494if(void 0===window.JNotice){let e='<svg width="60" height="60" viewB
7494ox="0 0 60 60" xmlns="http://www.w3.org/2000/svg"><path d="M40.7071 19.2929C41.0976 19.6834 41.0976 20.3166 40.7071 20.7071L31.4142 30L40.7071 39.2929C41.0976 39.6834 41.0976 40.3166 40.7071 40.7071C40.3166 41.0976 39.6834 41.0976 39.2929 40.7071L30 31.4142L20.7071 40.7071C20.3166 41.0976 19.6834 41.0976 19.2929 40.7071C18.9024 40.3166 18.9024 39.6834 19.2929 39.2929L28.5858 30L19.2929 20.7071C18.9024 20.3166 18.9024 19.6834 19.2929 19.2929C19.6834 18.9024 20.3166 18.9024 20.7071 19.2929L30 28.5858L39.2929 19.2929C39.6834 18.9024 40.3166 18.9024 40.7071 19.2929Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0 30C0 13.4315 13.4315 0 30 0C46.5685 0 60 13.4315 60 30C60 46.5685 46.5685 60 30 60C13.4315 60 0 46.5685 0 30ZM30 2C14.536 2 2 14.536 2 30C2 45.464 14.536 58 30 58C45.464 58 58 45.464 58 30C58 14.536 45.464 2 30 2Z"/></svg>',t='<svg width="60" height="60" viewBox="0 0 60 60" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M30 14C22.8203 14 17 19.8203 17 27C17 34.1797 22.8203 40 30 40C37.1797 40 43 34.1797 43 27C43 19.8203 37.1797 14 30 14ZM19 27C19 20.9249 23.9249 16 30 16C36.0751 16 41 20.9249 41 27C41 33.0751 36.0751 38 30 38C23.9249 38 19 33.0751 19 27Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0 30C0 13.4315 13.4315 0 30 0C46.5685 0 60 13.4315 60 30C60 46.5685 46.5685 60 30 60C13.4315 60 0 46.5685 0 30ZM30 2C14.536 2 2 14.536 2 30C2 38.8944 6.14718 46.8202 12.6133 51.9492C17.5183 48.4552 23.5206 46.4 30 46.4C36.4794 46.4 42.4817 48.4552 47.3866 51.9492C53.8528 46.8202 58 38.8944 58 30C58 14.536 45.464 2 30 2ZM30 58C24.1894 58 18.7922 56.2301 14.3182 53.1999C18.792 50.1697 24.188 48.4 30 48.4C35.812 48.4 41.208 50.1698 45.6818 53.1999C41.2077 56.2301 35.8106 58 30 58Z"/><g opacity="0.1"><path d="M31.5 39C36.7467 39 41 34.9706 41 30C41 25.0294 36.7467 21 31.5 21C26.2533 21 22 25.0294 22 30C22 34.9706 26.2533 39 31.5 39Z"/><path d="M18 55.8C19.9882 54.4667 25.3811 51 32.5385 51C39.6959 51 43.6154 52.6 45 53.4C42.9231 55.8 38.1834 59 32.2189 59C26.2544 59 20.7692 57.4 18 55.8Z"/></g></svg>';window.JNoticeSurface=function(e){var t={inited:!1};Object.defineProperties(this,{inited:{get:function(){return t.inited},set:function(e){e&&(t.inited=!0)}}}),this.config=function(t){if("object"==typeof e&&void 0!==t&&Object.keys(e).indexOf(t)>-1)return e[t]},this.init()},window.JNoticeSurface.prototype={node:null,inner:null,notices:[],bUseJquery:!1,get side(){return"left"===this.config("side")?"left":"right"},get reverse(){return Boolean(this.config("reverse"))},get classname(){return"notice-surface--"+this.side+(this.reverse?" notice-surface--reverse":"")},init:function(){this.inited||(this.inited=!0,this.node=BX.create({tag:"div",attrs:{class:"notice-surface "+this.classname},html:'<div class="notice-surface__inner"></div>'}),this.node.noticeSurface=this,this.inner=this.node.querySelector(".notice-surface__inner"),this.bUseJquery="function"==typeof jQuery,BX.ready(BX.delegate((function(){BX.append(this.node,document.body)}),this)))},search:function(e){if(void 0!==e&&e instanceof window.JNotice)for(var t in this.notices)if(this.notices[t]===e)return t;return!1},create:function(e){var t=new JNotice(e);return t.appendTo(this),t},append:function(e){if(void 0!==e&&e instanceof window.JNotice){if(e.removed||e.inserted&&e.surface!==this)return!1;var t=this.search(e);return t||(this.notices.push(e),t=this.notices.length-1,BX.prepend(e.node,this.inner)),e.inserted||e.appendTo(this),t}return!1},remove:function(e){if(void 0!==e&&void 0!==this.notices[e]){var t=this.notices[e];delete this.notices[e],this.notices.splice(e,1),BX.remove(t.node),t.remove()}},clear:function(){for(i in this.notices)void 0!==this.notices[i]&&this.notices[i].remove();this.notices=[]},getItemName:function(e){let t=e.item,i="",n=t.querySelector(".js-popup-title");if(n&&(i=n.textContent),!1!==e.useDataItem){var o=t.querySelector("[data-item]");if(o&&(o=this.bUseJquery?jQuery(o).data("item"):BX.data(o,"item"))){if(!this.bUseJquery)try{"object"==typeof(o=JSON.parse(o.toString()))&&o||(o={})}catch(e){o={}}o&&(i=o.NAME)}}return i}
7494,getItemImg:function(e){let t=e.item,i="",n=t.querySelector(".detail-info__image, .js-popup-image");if(n){if(i=n.getAttribute("src"),!BX.hasClass(n,"lazyloaded")){let e=this.bUseJquery?jQuery(n).data("src"):BX.data(n,"src");e&&(i=e)}if(!i){let e=this.bUseJquery?jQuery(n).data("bg"):BX.data(n,"bg");e&&(i=e)}}else if(n=t.querySelector(".image-list__link link[itemprop=image]"))i=n.getAttribute("href");else if(n=t.querySelector("meta[itemprop=image]"))i=n.getAttribute("content");else if((n=t.querySelector(".image-list-wrapper img, .js-notice-block__image img"))&&(i=n.getAttribute("src"),!BX.hasClass(n,"lazyloaded"))){let e=this.bUseJquery?jQuery(n).data("src"):BX.data(n,"src");e&&(i=e)}return i},getMoreContent:function(e){let t="";if(e.length>1){let i=[],n=[];for(let t=e.length,o=1;o<t;++o)e[o]&&"object"==typeof e[o]&&e[o].itemAction&&"function"==typeof JItemActionService&&e[o].itemAction instanceof JItemActionService?n.push(e[o]):i.push(e[o]);if(i.length){let e=i.length,n=[BX.message("NOTICE_PRODUCT1"),BX.message("NOTICE_PRODUCT2"),BX.message("NOTICE_PRODUCT0")],o=[2,0,1,1,1,2];t+=BX.message("NOTICE_MORE").replace("#COUNT#",e).replace("#PRODUCTS#",n[e%100>4&&e%100<20?2:o[Math.min(e%10,5)]])}if(n.length){let e=n.length,i=[BX.message("NOTICE_SERVICE1"),BX.message("NOTICE_SERVICE2"),BX.message("NOTICE_SERVICE0")],o=[2,0,1,1,1,2];t+=(t?"<br />":"")+BX.message("NOTICE_MORE").replace("#COUNT#",e).replace("#PRODUCTS#",i[e%100>4&&e%100<20?2:o[Math.min(e%10,5)]])}t&&(t='<div class="notice__detail__more fw-600">'+t+"</div>")}return t},onRequestError:function(t){var i={title:BX.message("NOTICE_REQUEST_ERROR"),detail:t.status+" "+t.statusText,image:e};return this.create({closeable:!0,autoclose:3e3,type:"requesterror",content:i})},onResultError:function(t){var i={title:BX.message("NOTICE_ERROR"),detail:t.error,image:e};return this.create({closeable:!0,autoclose:3e3,type:"resulterror",content:i})},onAuth:function(e){if("object"==typeof e&&e&&BX.message("USER_ID")){var i={title:BX.message("NOTICE_AUTHORIZED"),detail:e.login?e.login:e.fullname,image:e.image?e.image:t};return this.create({closeable:!0,autoclose:3e3,type:"auth",content:i,link:arAsproOptions.THEME.PERSONAL_PAGE_URL})}},onAdd2Cart:function(e,t){if(t=void 0===t||t){if("object"==typeof e&&e.length)for(i in e){var n=e[i];if(n instanceof Node&&(n=this.getPopupBlock(n))){var o={title:BX.message("NOTICE_ADDED2CART"),detail:this.getItemName({item:n}),image:this.getItemImg({item:n})};return o.detail+=this.getMoreContent(e),this.create({closeable:!0,autoclose:3e3,type:"add2cart",link:arAsproOptions.THEME.BASKET_PAGE_URL,content:o})}}}else"function"==typeof JNoticeSurface&&JNoticeSurface.get().node.remove()},onAdd2Basket:function(e,t){return this.onAdd2Cart(...arguments)},onAdd2Service:function(e,t){return this.onAdd2Cart(...arguments)},onAdd2Compare:function(e,t){if("object"==typeof e&&e.length)for(i in e){var n=e[i];if(n instanceof Node&&(n=this.getPopupBlock(n))){var o={title:t?BX.message("NOTICE_ADDED2COMPARE"):BX.message("NOTICE_REMOVED_FROM_COMPARE"),detail:this.getItemName({item:n,useDataItem:arAsproOptions.MODULES.sale}),image:this.getItemImg({item:n})};return o.detail+=this.getMoreContent(e),this.create({closeable:!0,autoclose:3e3,type:"add2compare",link:!!t&&arAsproOptions.THEME.COMPARE_PAGE_URL,content:o})}}},onAdd2Favorite:function(e,t){if("object"==typeof e&&e.length)for(i in e){var n=e[i];if(n instanceof Node&&(n=this.getPopupBlock(n))){var o={title:t?BX.message("NOTICE_ADDED2FAVORITE"):BX.message("NOTICE_REMOVED_FROM_FAVORITE"),detail:this.getItemName({item:n,useDataItem:!!n.closest(".detail-block.sku")}),image:this.getItemImg({item:n})};return o.detail+=this.getMoreContent(e),this.create({closeable:!0,autoclose:3e3,type:"add2favorite",link:!!t&&arAsproOptions.PAGES.PERSONAL_PAGE_URL+"favorite/",content:o})}}},onAdd2Subscribe:function(e,t){if("object"==typeof e&&e.length)for(i in e){var n=e[i];if(n instanceof Node&&(n=this.getPopupBlock(n))){var o={title:t?BX.message("NOTICE_ADDED2SUBSCRIBE"):BX.message("NOTICE_REMOVED_FROM_SUBSCRIBE"),detail:this.getItemName({item:n}),image:this.getItemImg({item:n})};return o.detail+=this.getMoreContent(e),this.create({closeable:!0,autoclose:3e3,type:"add2subscribe",link:!!t&&arAsproOptions.PAGES.PERSONAL_PAGE_URL+"subscribe/",content:o})}}},getPopupBlock(e){let t=null;return t=e.classList.contains("js-external-button")?document.querySelector(".catalog-detail"):e.closest(".
7494js-popup-block"),t}},window.JNoticeSurface.get=function(e){var t=".notice-surface.notice-surface--"+("left"===(e="object"==typeof e?e:{}).side?"left":"right")+(Boolean(e.reverse)?".notice-surface--reverse":":not(.notice-surface--reverse)"),i=document.querySelector(t);return i=i?i.noticeSurface:new window.JNoticeSurface(e)},window.JNotice=function(e){var t={surface:!1,inited:!1,removed:!1};Object.defineProperties(this,{surface:{get:function(){return t.surface},set:function(e){void 0!==e&&e instanceof window.JNoticeSurface&&!this.inserted&&!this.removed&&(t.surface=e,e.append(this),this.show(),BX.onCustomEvent("onAppendNotice",{notice:this}))}},inserted:{get:function(){return t.surface instanceof window.JNoticeSurface}},inited:{get:function(){return t.inited},set:function(e){e&&(t.inited=!0)}},removed:{get:function(){return t.removed},set:function(e){e&&(t.removed=!0)}}}),this.config=function(t){if("object"==typeof e&&void 0!==t&&Object.keys(e).indexOf(t)>-1)return e[t]},this.init()},window.JNotice.prototype={node:null,inner:null,closer:null,handlers:{onClickNode:function(e){e||(e=window.event);var t=e.target||e.srcElement;
7494if(void 0!==t&&t&&!t.closest("a")&&!t.closest(".notice__closer")){BX.PreventDefault(e);var i=t.closest(".notice");i&&(i=i.notice).link.length&&(location.href=i.link)}},onMouseEnterNode:function(e){e||(e=window.event);var t=e.target||e.srcElement;if(void 0!==t&&t){var i=t.closest(".notice");i&&(i=i.notice).autoclose&&(i.closed||i.stopAutoClose())}},onMouseLeaveNode:function(e){e||(e=window.event);var t=e.target||e.srcElement;if(void 0!==t&&t){var i=t.closest(".notice");i&&(i=i.notice,BX.removeClass(i.node,"animate--notice-click"),i.closed||i.startAutoClose())}},onMouseDownNode:function(e){e||(e=window.event);var t=e.target||e.srcElement;if(void 0!==t&&t){var i=t.closest(".notice");i&&(i=i.notice,BX.addClass(i.node,"animate--notice-click"))}},onMouseUpNode:function(e){e||(e=window.event);var t=e.target||e.srcElement;if(void 0!==t&&t){var i=t.closest(".notice");i&&(i=i.notice,BX.removeClass(i.node,"animate--notice-click"))}},onClickCloser:function(e){e||(e=window.event);var t=e.target||e.srcElement;if(void 0!==t&&t){for(var i=null,n=t;n;){if(n.matches(".notice")){i=n;break}n=n.parentElement||n.parentNode}i&&(i=i.notice,BX.addClass(i.node,"notice--closed"),i.remove())}}},get visible(){return!BX.hasClass(this.node,"notice--hidden")&&this.inserted},get closed(){return BX.hasClass(this.node,"notice--closed")},get closeable(){return Boolean(this.config("closeable"))},get autoclose(){var e=parseInt(this.config("autoclose"));return e||0},get classname(){var e=this.config("classname");return"string"==typeof e?e:""},get type(){var e=this.config("type");return"string"==typeof e?e:""},get link(){var e=this.config("link");return"string"==typeof e?e:""},get content(){var e=this.config("content");if("function"==typeof e&&(e=e()),"object"==typeof e){var t=void 0!==e.title&&e.title?"function"==typeof e.title?e.title():e.title.toString():"",i=void 0!==e.detail&&e.detail?"function"==typeof e.detail?e.detail():e.detail.toString():"",n=void 0!==e.image&&e.image?"function"==typeof e.image?e.image():e.image.toString():"",o=n.match(/^<svg[\s>]/),s=void 0!==e.image_link&&e.image_link?"function"==typeof e.image_link?e.image_link():e.image_link.toString():"";(t.length||i.length||n.length)&&(e='<div class="line-block line-block--20 line-block--align-flex-start">',n&&(e+='<div class="line-block__item"><div class="notice__image'+(o?" notice__image--svg":"")+'">'+(s?'<a href="'+s+'">':"")+(o?'<i class="svg inline fill-theme-svg" aria-hidden="true">'+n+"</i>":'<img src="'+n+'" />')+(s?"</a>":"")+"</div></div>"),(t||i)&&(e+='<div class="line-block__item">',t&&(e+='<div class="notice__title switcher-title fw-600">'+t+"</div>"),i&&(e+='<div class="notice__detail font_14">'+i+"</div>"),e+="</div>"),e+="</div>")}return void 0===e?"":e.toString()},init:function(){if(!this.inited){this.inited=!0;var e="";this.closeable&&(e=`<span class="notice__closer stroke-theme-hover" title="${BX.message("NOTICE_CLOSE")}">\n <i class="svg inline" aria-hidden="true">\n <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M13 1L1 13M1 1L13 13" stroke="#999999" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path>\n </svg>\n </i>\n </span>`),this.node=BX.create({tag:"div",attrs:{class:"notice notice--hidden"+(this.classname.length?" "+this.classname:"")+(this.link.length?" notice--link":"")},dataset:{type:this.type},html:e+'<div class="notice__inner">'+this.content+"</div>"}),this.node.notice=this,this.inner=this.node.querySelector(".notice__inner"),this.closeable&&(this.closer=this.node.querySelector(".notice__closer")),this.bindEvents(),BX.onCustomEvent("onInitNotice",{notice:this})}},bindEvents:function(){this.node&&("function"==typeof this.handlers.onClickNode&&this.node.addEventListener("click",this.handlers.onClickNode),"function"==typeof this.handlers.onMouseEnterNode&&this.node.addEventListener("mouseenter",this.handlers.onMouseEnterNode),"function"==typeof this.handlers.onMouseLeaveNode&&this.node.addEventListener("mouseleave",this.handlers.onMouseLeaveNode),"function"==typeof this.handlers.onMouseEnterNode&&this.node.addEventListener("mousedown",this.handlers.onMouseDownNode),"function"==typeof this.handlers.onMouseLeaveNode&&this.node.addEventListener("mouseup",this.handlers.onMouseUpNode)),this.closeable&&this.closer&&"function"==typeof this.handlers.onClickCloser&&this.closer.addEventListener("click",this.handlers.onClickCloser)},unbindEvents:function(){this.node&&("function"==typeof this.handlers.onClickNode&&this.node.removeEventListener("click",this.handlers.onClickNode),"function"==typeof this.handlers.onMouseEnterNode&&this.node.removeEventListener("mouseenter",this.handlers.onMouseEnterNode),"function"==typeof this.handlers.onMouseLeaveNode&&this.node.removeEventListener("mouseleave",this.handlers.onMouseLeaveNode),"function"==typeof this.handlers.onMouseEnterNode&&this.node.removeEventListener("mousedown",this.handlers.onMouseDownNode),"function"==typeof this.handlers.onMouseLeaveNode&&this.node.removeEventListener("mouseup",this.handlers.onMouseUpNode)),this.closer&&"function"==typeof this.handlers.onClickCloser&&this.closer.removeEventListener("click",this.handlers.onClickCloser)},callback:function(e){"function"==typeof e&&e()},appendTo:function(e){this.surface=e},show:function(e){this.visible?this.callback(e):(BX.addClass(this.node,"animate--notice-show"),BX.removeClass(this.node,"notice--hidden"),setTimeout(BX.delegate((function(){BX.removeClass(this.node,"animate--notice-show"),this.startAutoClose(),this.callback(e)}),this),600),BX.onCustomEvent("onShowNotice",{notice:this}))},hide:function(e){if(this.visible){var t=this;setTimeout((function(){t.node.style.height=t.node.getBoundingClientRect().height+"px",t.node.style.opacity=1,setTimeout((function(){BX.addClass(t.node,"animate--notice-hide"),setTimeout((function(){BX.addClass(t.node,"notice--hidden"),BX.removeClass(t.node,"animate--notice-hide"),t.callback(e)}),700)}),25),BX.onCustomEvent("onHideNotice",{notice:t})}),100)}else this.callback(e)},remove:function(){this.removed||(this.removed=!0,this.hide(BX.delegate((function(){this.unbindEvents(),this.inserted&&this.surface.remove(this.surface.search(this)),BX.onCustomEvent("onRemoveNotice",{notice:this})}),this)))},startAutoClose:function(){this.stopAutoClose(),this.autoclose&&(this.autocloseTimer=setTimeout(BX.delegate((function(){this.remove()}),this),this.autoclose))},stopAutoClose:function(){void 0!==this.autocloseTimer&&this.autocloseTimer&&(clearTimeout(this.autocloseTimer),this.autocloseTimer=!1)}}} 7495/* End */ 7496; 7497; /* Start:"a:4:{s:4:"full";
7497s:70:"/bitrix/templates/aspro-premier/js/scroll_to_top.min.js?17745963262367";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/scroll_to_top.min.js";s:3:"min";s:55:"/bitrix/templates/aspro-premier/js/scroll_to_top.min.js";s:3:"map";s:59:"/bitrix/templates/aspro-premier/js/scroll_to_top.min.js.map";}"*/ 7498var $scrolltotop=null;scrollToTop=function(){if("undefined"!=typeof arAsproOptions&&"NONE"!==arAsproOptions.THEME.SCROLLTOTOP_TYPE){scrollToTopAnimateClassIn=-1!==arAsproOptions.THEME.SCROLLTOTOP_TYPE.indexOf("ROUND")?"rotateIn":"rubberBand",scrollToTopAnimateClassOut=-1!==arAsproOptions.THEME.SCROLLTOTOP_TYPE.indexOf("ROUND")?"rotateOut":"flipOutX",BX.browser.IsMac()&&(scrollToTopAnimateClassIn=scrollToTopAnimateClassOut="");var _isScrolling=!1;$("body").append($("<a />").addClass("scroll-to-top "+arAsproOptions.THEME.SCROLLTOTOP_TYPE+" "+arAsproOptions.THEME.SCROLLTOTOP_POSITION).attr({href:"#",id:"scrollToTop"})),$scrolltotop=$("#scrollToTop"),"TOUCH"!==arAsproOptions.THEME.SCROLLTOTOP_POSITION&&arAsproOptions.THEME.SCROLLTOTOP_POSITION_RIGHT&&$scrolltotop.css({right:arAsproOptions.THEME.SCROLLTOTOP_POSITION_RIGHT+"px",left:"auto"}),$scrolltotop.click((function(e){return e.preventDefault(),$("body, html").animate({scrollTop:0},500),!1})),$(window).scroll((function(){_isScrolling||(_isScrolling=!0,$(window).scrollTop()>150?($scrolltotop.stop(!0,!0).addClass("visible"),_isScrolling=!1):($scrolltotop.stop(!0,!0).removeClass("visible"),_isScrolling=!1),CheckScrollToTop())})),$(window).resize((function(){CheckScrollToTop()}))}},CheckScrollToTop=function(){if("undefined"!=typeof arAsproOptions){"NONE"!==arAsproOptions.THEME.SCROLLTOTOP_TYPE&&$scrolltotop&&(documentScrollTop>150?($scrolltotop.stop(!0,!0).addClass("visible").addClass("animated"),scrollToTopAnimateClassOut&&$scrolltotop.removeClass(scrollToTopAnimateClassOut),scrollToTopAnimateClassIn&&$scrolltotop.addClass(scrollToTopAnimateClassIn)):($scrolltotop.stop(!0,!0).removeClass("visible"),scrollToTopAnimateClassIn&&$scrolltotop.removeClass(scrollToTopAnimateClassIn),scrollToTopAnimateClassOut&&$scrolltotop.addClass(scrollToTopAnimateClassOut)));var bottom=23,scrollVal=$(window).scrollTop(),windowHeight=$(window).height();if(arAsproOptions.THEME.SCROLLTOTOP_POSITION_BOTTOM&&(bottom=parseFloat(arAsproOptions.THEME.SCROLLTOTOP_POSITION_BOTTOM)),parseInt($scrolltotop.css("bottom"))>bottom&&(bottom=Math.round(bottom)),$("footer").length){var footerOffset=$("footer").offset().top;scrollVal+windowHeight>footerOffset&&(bottom=Math.round(bottom+scrollVal+windowHeight-Math.round(footerOffset)))}$scrolltotop.css("bottom",bottom+"px")}}; 7499/* End */ 7500; 7501; /* Start:"a:4:{s:4:"full";s:71:"/bitrix/templates/aspro-premier/js/regions.define.min.js?17745963262818";s:6:"source";s:56:"/bitrix/templates/aspro-premier/js/regions.define.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7502void 0===window.JRegionsDefine&&(window.JRegionsDefine=function(){var e={inited:!1};Object.defineProperties(this,{inited:{get:function(){return e.inited},set:function(i){i&&(e.inited=!0)}}}),this.init()},window.JRegionsDefine.prototype={get selectedRegion(){return this.getCookie("current_region")},get selectedLocation(){return this.getCookie("current_location")},get currentRegion(){return this.define.result&&this.define.result.currentRegion?this.define.result.currentRegion:arAsproOptions.REGIONALITY.CURRENT_REGION_ID?{ID:arAsproOptions.REGIONALITY.CURRENT_REGION_ID}:null},get realRegion(){return this.define.result&&BX.Type.isObject(this.define.result.realRegion)&&!BX.Type.isArray(this.define.result.realRegion)&&this.define.result.realRegion?this.define.result.realRegion:null},get realLocation(){return this.define.result&&this.define.result.realLocation?this.define.result.realLocation:null},get realTitle(){return this.define.result&&this.define.result.realTitle?this.define.result.realTitle:""},init:function(){"Y"===arAsproOptions.THEME.USE_REGIONALITY&&(!this.selectedRegion||this.currentRegion&&this.selectedRegion!=this.currentRegion.ID)&&(this.currentRegion&&this.currentRegion.ID,this.define().then((()=>{!this.realRegion||this.currentRegion&&this.currentRegion.ID==this.realRegion.ID||this.confirm(),this.realRegion&&this.currentRegion&&this.currentRegion.ID==this.realRegion.ID&&this.default()})).catch((function(e){throw e})))},getCookie:function(e){let i=document.cookie.match(new RegExp("(?:^|; )"+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)"));return i?decodeURIComponent(i[1]):void 0},define:async function(){return new Promise(((e,i)=>{if(this.define.result)return this.define.result;{this.define.result={};let t="define",n="aspro:regionality.list.premier",r=BX.message("bitrix_sessid"),o=BX.message("LANGUAGE_ID"),s=BX.message("S
7502ITE_ID"),a="Y"===arAsproOptions.THEME.REGIONALITY_CITY_IN_HEADER?"Y":"N",u=location.href.replace(location.origin,"");return BX.ajax({url:"/bitrix/services/main/ajax.php?mode=ajax&c="+encodeURIComponent(n)+"&action="+t+"&sessid="+r+"&SITE_ID="+s+"&siteId="+s+"&lang="+o+"&url="+encodeURIComponent(u)+"&showCity="+a,method:"POST",async:!0,processData:!0,scriptsRunFirst:!0,emulateOnload:!0,start:!0,cache:!1,dataType:"json",onsuccess:i=>{"object"==typeof i&&i&&"object"==typeof i.data&&i.data&&(this.define.result=i.data,e(this.define.result))},onfailure:function(){i()}})}}))},default:function(){BX.loadExt("aspro_set_cookie_on_domains").then((()=>{setCookieOnDomains("current_region",this.currentRegion.ID),setCookieOnDomains("current_location","",{expires:-1})}))},confirm:function(){BX.loadExt("aspro_regions.confirm").then((()=>{BX.ready((()=>{JRegionsConfirm.get(this.define.result).show()}))}))}}),BX.ready((function(){new JRegionsDefine})); 7503/* End */ 7504; 7505; /* Start:"a:4:{s:4:"full";s:86:"/bitrix/templates/aspro-premier/components/bitrix/menu/header/script.js?17745963253972";s:6:"source";s:71:"/bitrix/templates/aspro-premier/components/bitrix/menu/header/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7506BX.Aspro.Utils.readyDOM(() => { 7507 $(document).on("click", ".header-menu__wide-submenu-item-inner .toggle_block", function (e) { 7508 e.preventDefault(); 7509 7510 var _this = $(this), 7511 menu = _this.closest(".header-menu__wide-submenu-item-inner").find("> .submenu-wrapper"); 7512 7513 if (!_this.hasClass("clicked")) { 7514 _this.addClass("clicked"); 7515 7516 menu.slideToggle(150, function () { 7517 _this.removeClass("clicked"); 7518 }); 7519 7520 _this.closest(".header-menu__wide-submenu-item-inner").toggleClass("opened"); 7521 } 7522 }); 7523 7524 BX.bindDelegate(document, 'click', {class: 'header-menu__link--only-catalog'}, function (e) { 7525 e.preventDefault(); 7526 7527 const catalogButton = this; 7528 const nodeSvgUse = catalogButton.querySelector('use'); 7529 const svgLink = nodeSvgUse.getAttribute('xlink:href'); 7530 7531 if (catalogButton.classList.contains('opened')) { 7532 catalogButton.classList.remove('opened'); 7533 nodeSvgUse.setAttribute('xlink:href', svgLink.replace('#close', '#burger')); 7534 } else { 7535 catalogButton.classList.add('opened'); 7536 nodeSvgUse.setAttribute('xlink:href', svgLink.replace('#burger', '#close')); 7537 7538 onlyCatalogMenuOpen($(catalogButton)); 7539 } 7540 7541 onlyCatalogMenuClose(catalogButton); 7542 }); 7543 7544 BX.bindDelegate(document, "click", {tag: 'body'}, function (e) { 7545 const catalogButton = document.querySelector('.header-menu__link--only-catalog.opened'); 7546 const isMenu = e.target.closest('.header-menu__wrapper'); 7547 7548 if (catalogButton && !isMenu) { 7549 onlyCatalogMenuClose(); 7550 } 7551 }); 7552 7553 onlyCatalogMenuClose = function (currentButton = null) { 7554 let nodeListCatalogButton = document.querySelectorAll('.header-menu__link--only-catalog.opened'); 7555 if ( 7556 !nodeListCatalogButton.length 7557 || (nodeListCatalogButton.length === 1 && nodeListCatalogButton[0] === currentButton) 7558 ) return; 7559 7560 nodeListCatalogButton.forEach(nodeCatalogButton => { 7561 if (nodeCatalogButton !== currentButton) { 7562 const currentSvg = nodeCatalogButton.querySelector('use'); 7563 const currentSvgLink = currentSvg.getAttribute('xlink:href'); 7564 nodeCatalogButton.classList.remove('opened'); 7565 currentSvg.setAttribute('xlink:href', currentSvgLink.replace('#close', '#burger')); 7566 } 7567 }) 7568 } 7569 7570 onlyCatalogMenuOpen = function (catalogButton) { 7571 var menuNLO = catalogButton.siblings("[data-nlo]"); 7572 7573 if (menuNLO.length) { 7574 if (!menuNLO.hasClass("nlo-loadings")) { 7575 menuNLO.addClass("nlo-loadings"); 7576 var menuCatalog = $(".header-menu__link--only-catalog ~ .header-menu__dropdown-menu"); 7577 if(menuCatalog.length){ 7578 menuNLO.replaceWith(menuCatalog.clone()); 7579 catalogButton.parent().find('.aim-init').removeClass('aim-init'); 7580 if (BX.Aspro.Utils.isFunction("InitMenuNavigationAim")) { 7581 InitMenuNavigationAim(); 7582 } 7583 } else { 7584 var buttonTitle = catalogButton.find(".header-menu__title"); 7585 buttonTitle.addClass("loadings"); 7586 $.ajax({ 7587 data: { nlo: menuNLO.attr("data-nlo") }, 7588 error: function () { 7589 menuNLO.removeClass("nlo-loadings"); 7590 }, 7591 complete: function (jqXHR, textStatus) { 7592 if (textStatus === "success" || jqXHR.status == 404) { 7593 var ob = BX.processHTML($.trim(jqXHR.responseText)); 7594 BX.ajax.processScripts(ob.SCRIPT); 7595 menuNLO.replaceWith(ob.HTML); 7596 if (BX.Aspro.Utils.isFunction("InitMenuNavigationAim")) { 7597 InitMenuNavigationAim(); 7598 } 7599 } 7600 buttonTitle.removeClass("loadings"); 7601 }, 7602 }); 7603 } 7604 } 7605 } 7606 }; 7607 7608 BX.addCustomEvent("onAjaxChangeWidgetValue", function (eventdata) { 7609 if (eventdata && eventdata["NAME"] === "PAGE_WIDTH") { 7610 if (BX.Aspro.Utils.isFunction("CheckTopMenuDotted")) { 7611 CheckTopMenuDotted(); 7612 } 7613 } 7614 }); 7615 7616}); 7617 7618/* End */ 7619; 7620; /* Start:"a:4:{s:4:"full";
7620s:71:"/bitrix/templates/aspro-premier/js/conditional/collaps.js?1774596326590";s:6:"source";s:57:"/bitrix/templates/aspro-premier/js/conditional/collaps.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7621BX.Aspro.Utils.readyDOM(() => { 7622 $(document).on("click", ".show-more-items-btn", function (e) { 7623 e.stopImmediatePropagation(); 7624 7625 let _this = $(this); 7626 let bOpened = _this.hasClass("opened"); 7627 let childSpan = _this.find("button"); 7628 let parent = _this.parent(); 7629 let collapsed = parent.find(".collapsed"); 7630 7631 if (collapsed.length) { 7632 collapsed.slideToggle(200); 7633 7634 if (bOpened) { 7635 childSpan.text(BX.message("SHOW")); 7636 } else { 7637 childSpan.text(BX.message("HIDE")); 7638 } 7639 _this.toggleClass("opened"); 7640 } 7641 }); 7642}); 7643/* End */ 7644; 7645; /* Start:"a:4:{s:4:"full";s:91:"/bitrix/components/aspro/theme.selector.premier/templates/.default/script.js?17745962967768";s:6:"source";s:76:"/bitrix/components/aspro/theme.selector.premier/templates/.default/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 7646if (typeof window.JThemeSelector === 'undefined') { 7647 window.JThemeSelector = function(id, params, result) { 7648 var _private = { 7649 inited: false, 7650 id: id, 7651 }; 7652 7653 Object.defineProperties(this, { 7654 inited: { 7655 get: function() { 7656 return _private.inited; 7657 }, 7658 set: function(value) { 7659 if (value) { 7660 _private.inited = true; 7661 } 7662 } 7663 }, 7664 id: { 7665 get: function() { 7666 return _private.id; 7667 }, 7668 }, 7669 }); 7670 7671 this.params = function(key) { 7672 if (typeof params === 'object') { 7673 if (typeof key !== 'undefined') { 7674 if (Object.keys(params).indexOf(key) > -1) { 7675 return params[key]; 7676 } 7677 } 7678 } 7679 7680 return undefined; 7681 } 7682 7683 this.result = function(key) { 7684 if (typeof result === 'object') { 7685 if (typeof key !== 'undefined') { 7686 if (Object.keys(result).indexOf(key) > -1) { 7687 return result[key]; 7688 } 7689 } 7690 } 7691 7692 return undefined; 7693 } 7694 7695 this.init(); 7696 } 7697 7698 window.JThemeSelector.prototype = { 7699 node: null, 7700 7701 get color() { 7702 if (this.isDefaultColor) { 7703 return 'default'; 7704 } else { 7705 return BX.hasClass(document.body, 'theme-dark') ? 'dark': 'light'; 7706 } 7707 }, 7708 set color(value) { 7709 if ( 7710 this.node && 7711 ( 7712 value === 'light' || 7713 value === 'dark' || 7714 value === 'default' 7715 ) 7716 ) { 7717 let color = value; 7718 7719 if (value === 'default') { 7720 color = this.defaultColor; 7721 } 7722 7723 let item = this.node.querySelector('.theme-selector__item--' + color); 7724 if ( 7725 item && 7726 !BX.hasClass(item, 'current') 7727 ) { 7728 BX.addClass(item, 'current'); 7729 7730 this.node.setAttribute('title', BX.message('TS_T_' + color)); 7731 7732 let items = Array.prototype.slice.call(this.node.querySelectorAll('.theme-selector__item.current:not(.theme-selector__item--' + color + ')')); 7733 if (items.length) { 7734 for (let i = 0; i < items.length; ++i) { 7735 BX.removeClass(items[i], 'current'); 7736 } 7737 } 7738 } 7739 7740 let changed = !BX.hasClass(document.body, 'theme-' + value); 7741 7742 if (changed) { 7743 BX.removeClass(document.body, 'theme-default theme-dark theme-light'); 7744 BX.addClass(document.body, 'theme-' + value); 7745 7746 let items = Array.prototype.slice.call(document.querySelectorAll('.style-switcher [data-option-id="THEME_VIEW_COLOR"]')); 7747 if (items.length) { 7748 for (let i = 0; i < items.length; ++i) { 7749 let val = items[i].getAttribute('data-option-value'); 7750 if ( 7751 val && 7752 val.toLowerCase() === value 7753 ) { 7754 BX.addClass(items[i], 'current'); 7755 } else { 7756 BX.removeClass(items[i], 'current'); 7757 } 7758 } 7759 } 7760 7761 let fd = new FormData(); 7762 fd.set('color', value); 7763 this.sendAction('setColor', fd); 7764 7765 BX.onCustomEvent( 7766 'onChangeThemeColor', 7767 [{ 7768 value: value, 7769 }] 7770 ); 7771 } 7772 } 7773 }, 7774 7775 get isDefaultColor() { 7776 return BX.hasClass(document.body, 'theme-default'); 7777 }, 7778 7779 get defaultColor() { 7780 return window.matchMedia("(prefers-color-scheme: dark)").matches ? 'dark' : 'light'; 7781 }, 7782 7783 init: function() { 7784 if (!this.inited) { 7785 this.inited = true; 7786 7787 this.node = BX('theme-selector--' + this.id); 7788 if (this.node) { 7789 this.node.theme_selector = this; 7790 7791 this.bindEvents(); 7792 7793 // set current item as current body class 7794 this.color = this.color; 7795 } 7796 } 7797 }, 7798 7799 invert: function() { 7800 // current color 7801 let color = this.isDefaultColor ? this.defaultColor : this.color; 7802 7803 // invert color 7804 this.color = color === 'light' ? 'dark' : 'light'; 7805 }, 7806 7807 bindEvents: function() { 7808 if (this.node) { 7809 if (typeof this.handlers.onNodeClick === 'function') { 7810 BX.bind( 7811 this.node, 7812 'click', 7813 BX.proxy( 7814 this.handlers.onNodeClick, 7815 this 7816 ) 7817 ); 7818 } 7819 7820 if (typeof this.handlers.onKeyDown === 'function') { 7821 BX.bind( 7822 document.body, 7823 'keydown', 7824 BX.proxy( 7825 this.handlers.onKeyDown, 7826 this 7827 ) 7828 ); 7829 } 7830 7831 if (typeof this.handlers.onChangePrefersColorScheme === 'function') { 7832 window.matchMedia('(prefers-color-scheme: dark)').addEventListener( 7833 'change', 7834 BX.proxy( 7835 this.handlers.onChangePrefersColorScheme, 7836 this 7837 ) 7838 ); 7839 } 7840 7841 if (typeof this.handlers.onChangeThemeColor === 'function') { 7842 BX.addCustomEvent( 7843 'onChangeThemeColor', 7844 BX.proxy( 7845 this.handlers.onChangeThemeColor, 7846 this 7847 ) 7848 ); 7849 } 7850 } 7851 }, 7852 7853 unbindEvents: function() { 7854 if (this.node) { 7855 if (typeof this.handlers.onNodeClick === 'function') { 7856 BX.unbind( 7857 this.node, 7858 'click', 7859 BX.proxy( 7860 this.handlers.onNodeClick, 7861 this 7862 ) 7863 ); 7864 } 7865 7866 if (typeof this.handlers.onKeyDown === 'function') { 7867 BX.unbind( 7868 document.body, 7869 'keydown', 7870 BX.proxy( 7871 this.handlers.onKeyDown, 7872 this 7873 ) 7874 ); 7875 } 7876 7877 if (typeof this.handlers.onChangePrefersColorScheme === 'function') { 7878 window.matchMedia('(prefers-color-scheme: dark)').removeEventListener( 7879 'change', 7880 BX.proxy( 7881 this.handlers.onChangePrefersColorScheme, 7882 this 7883 ) 7884 ); 7885 } 7886 7887 if (typeof this.handlers.onChangeThemeColor === 'function') { 7888 BX.removeCustomEvent( 7889 'onChangeThemeColor', 7890 BX.proxy( 7891 this.handlers.onChangeThemeColor, 7892 this 7893 ) 7894 ); 7895 } 7896 } 7897 }, 7898 7899 sendAction: function(componentAction, data, onsuccess, onfailure, oncomplete) { 7900 let componentName = 'aspro:theme.selector.premier'; 7901 7902 data.set('is_ajax_post', 'Y'); 7903 data.set('sessid', BX.message('bitrix_sessid')); 7904 data.set('lang', BX.message('LANGUAGE_ID')); 7905 data.set('SITE_ID', this.result('SITE_ID')); 7906 data.set('SIGNED_PARAMS', this.result('SIGNED_PARAMS')); 7907
7908 let promise = BX.ajax.runComponentAction( 7909 componentName, 7910 componentAction, 7911 { 7912 mode: 'ajax', 7913 data: data, 7914 } 7915 ); 7916 7917 promise.then( 7918 BX.proxy( 7919 function(response){ 7920 if (typeof onsuccess === 'function') { 7921 onsuccess(response); 7922 } 7923 7924 if (typeof oncomplete === 'function') { 7925 oncomplete(); 7926 } 7927 }, 7928 this 7929 ), 7930 BX.proxy( 7931 function(response){ 7932 console.error(response); 7933 7934 let message = ''; 7935 for (let i = 0; i < response.errors.length; ++i) { 7936 if ( 7937 typeof response.errors[i] === 'object' && 7938 response.errors[i].message.length 7939 ) { 7940 if ( 7941 !message.length || 7942 response.errors[i].message.length < message.length 7943 ) { 7944 message = response.errors[i].message; 7945 } 7946 } 7947 } 7948 7949 if (typeof onfailure === 'function') { 7950 onfailure(message); 7951 } 7952 7953 if (typeof oncomplete === 'function') { 7954 oncomplete(); 7955 } 7956 }, 7957 this 7958 ), 7959 ); 7960 }, 7961 7962 handlers: { 7963 onNodeClick: function(event) { 7964 this.invert(); 7965 }, 7966 7967 onKeyDown: function(event) { 7968 event = event || window.event; 7969 7970 if ( 7971 event.ctrlKey && 7972 event.shiftKey && 7973 event.keyCode == 76 7974 ) { 7975 this.invert(); 7976 event.stopImmediatePropagation(); 7977 } 7978 }, 7979 7980 onChangePrefersColorScheme: function(event) { 7981 if (this.isDefaultColor) { 7982 if (!event) { 7983 event = window.event; 7984 } 7985 7986 this.color = 'default'; 7987 } 7988 }, 7989 7990 onChangeThemeColor: function(eventdata) { 7991 if ( 7992 typeof eventdata === 'object' && 7993 eventdata && 7994 'value' in eventdata 7995 ) { 7996 this.color = eventdata.value; 7997 } 7998 }, 7999 }, 8000 } 8001} 8002 8003/* End */ 8004; 8005; /* Start:"a:4:{s:4:"full";s:64:"/bitrix/components/bitrix/search.title/script.js?177459629710542";s:6:"source";s:48:"/bitrix/components/bitrix/search.title/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 8006function JCTitleSearch(arParams) 8007{ 8008 var _this = this; 8009 8010 this.arParams = {
8011 'AJAX_PAGE': arParams.AJAX_PAGE, 8012 'CONTAINER_ID': arParams.CONTAINER_ID, 8013 'INPUT_ID': arParams.INPUT_ID, 8014 'MIN_QUERY_LEN': parseInt(arParams.MIN_QUERY_LEN, 10), 8015 }; 8016 if (arParams.WAIT_IMAGE) 8017 { 8018 this.arParams.WAIT_IMAGE = arParams.WAIT_IMAGE; 8019 } 8020 8021 if (this.arParams.MIN_QUERY_LEN <= 0) 8022 { 8023 this.arParams.MIN_QUERY_LEN = 1; 8024 } 8025 8026 this.cache = []; 8027 this.cache_key = null; 8028 8029 this.startText = ''; 8030 this.running = false; 8031 this.runningCall = false; 8032 this.currentRow = -1; 8033 this.RESULT = null; 8034 this.CONTAINER = null; 8035 this.INPUT = null; 8036 this.WAIT = null; 8037 8038 this.ShowResult = function(result) 8039 { 8040 if (BX.type.isString(result)) 8041 { 8042 _this.RESULT.innerHTML = result; 8043 } 8044 8045 _this.RESULT.style.display = _this.RESULT.innerHTML === '' ? 'none' : 'block'; 8046 var pos = _this.adjustResultNode(); 8047 8048 // adjust left column to be an outline 8049 var resultPosition = null; 8050 var th = null; 8051 var tbl = BX.findChild(_this.RESULT, { 'tag': 'table', 'class': 'title-search-result' }, true); 8052 if (tbl) 8053 { 8054 th = BX.findChild(tbl, { 'tag': 'th' }, true); 8055 } 8056 8057 if (th) 8058 { 8059 var tablePosition = BX.pos(tbl); 8060 tablePosition.width = tablePosition.right - tablePosition.left; 8061 8062 var tableHeaderPosition = BX.pos(th); 8063 tableHeaderPosition.width = tableHeaderPosition.right - tableHeaderPosition.left; 8064 th.style.width = tableHeaderPosition.width + 'px'; 8065 8066 _this.RESULT.style.width = (pos.width + tableHeaderPosition.width) + 'px'; 8067 8068 // Move table to left by width of the first column 8069 _this.RESULT.style.left = (pos.left - tableHeaderPosition.width - 1) + 'px'; 8070 8071 // Shrink table when it's too wide 8072 if ((tablePosition.width - tableHeaderPosition.width) > pos.width) 8073 { 8074 _this.RESULT.style.width = (pos.width + tableHeaderPosition.width - 1) + 'px'; 8075 } 8076 8077 // Check if table is too wide and shrink result div to it's width 8078 tablePosition = BX.pos(tbl); 8079 resultPosition = BX.pos(_this.RESULT); 8080 if (resultPosition.right > tablePosition.right) 8081 { 8082 _this.RESULT.style.width = (tablePosition.right - tablePosition.left) + 'px'; 8083 } 8084 } 8085 8086 var fade = false;
8087 if (tbl) 8088 { 8089 fade = BX.findChild(_this.RESULT, { 'class': 'title-search-fader' }, true); 8090 } 8091 8092 if (fade && th) 8093 { 8094 resultPosition = BX.pos(_this.RESULT); 8095 fade.style.left = (resultPosition.right - resultPosition.left - 18) + 'px'; 8096 fade.style.width = 18 + 'px'; 8097 fade.style.top = 0 + 'px'; 8098 fade.style.height = (resultPosition.bottom - resultPosition.top) + 'px'; 8099 fade.style.display = 'block'; 8100 } 8101 }; 8102 8103 this.onKeyPress = function(keyCode) 8104 { 8105 var tbl = BX.findChild(_this.RESULT, { 'tag': 'table', 'class': 'title-search-result' }, true); 8106 if (!tbl) 8107 { 8108 return false; 8109 } 8110 8111 var i = 0; 8112 var cnt = tbl.rows.length; 8113 8114 switch (keyCode) 8115 { 8116 case 27: // escape key - close search div 8117 _this.RESULT.style.display = 'none'; 8118 _this.currentRow = -1; 8119 _this.UnSelectAll(); 8120 8121 return true; 8122 case 40: // down key - navigate down on search results 8123 if (_this.RESULT.style.display == 'none') 8124 { 8125 _this.RESULT.style.display = 'block'; 8126 } 8127 8128 var first = -1; 8129 for (i = 0; i < cnt; i++) 8130 { 8131 if (!BX.findChild(tbl.rows[i], { 'class': 'title-search-separator' }, true)) 8132 { 8133 if (first == -1) 8134 { 8135 first = i; 8136 } 8137 8138 if (_this.currentRow < i) 8139 { 8140 _this.currentRow = i; 8141 break; 8142 } 8143 else if (tbl.rows[i].className == 'title-search-selected') 8144 { 8145 tbl.rows[i].className = ''; 8146 } 8147 } 8148 } 8149 8150 if (i == cnt && _this.currentRow != i) 8151 { 8152 _this.currentRow = first; 8153 } 8154 8155 tbl.rows[_this.currentRow].className = 'title-search-selected'; 8156 8157 return true; 8158 case 38: // up key - navigate up on search results 8159 if (_this.RESULT.style.display == 'none') 8160 { 8161 _this.RESULT.style.display = 'block'; 8162 } 8163 8164 var last = -1; 8165 for (i = cnt - 1; i >= 0; i--) 8166 { 8167 if (!BX.findChild(tbl.rows[i], { 'class': 'title-search-separator' }, true)) 8168 { 8169 if (last == -1) 8170 { 8171 last = i; 8172 } 8173 8174 if (_this.currentRow > i) 8175 { 8176 _this.currentRow = i; 8177 break; 8178 } 8179 else if (tbl.rows[i].className == 'title-search-selected') 8180 { 8181 tbl.rows[i].className = ''; 8182 } 8183 } 8184 } 8185 8186 if (i < 0 && _this.currentRow != i) 8187 { 8188 _this.currentRow = last; 8189 } 8190 8191 tbl.rows[_this.currentRow].className = 'title-search-selected'; 8192 8193 return true; 8194 case 13: // enter key - choose current search result 8195 if (_this.RESULT.style.display == 'block') 8196 { 8197 for (i = 0; i < cnt; i++) 8198 { 8199 if ( 8200 _this.currentRow == i 8201 && !BX.findChild(tbl.rows[i], { 'class': 'title-search-separator' }, true) 8202 ) 8203 { 8204 var a = BX.findChild(tbl.rows[i], { 'tag': 'a' }, true); 8205 if (a) 8206 { 8207 window.location = a.href; 8208 8209 return true; 8210 } 8211 } 8212 } 8213 } 8214 8215 return false; 8216 default: 8217 break; 8218 } 8219 8220 return false; 8221 }; 8222 8223 this.onTimeout = function() 8224 { 8225 _this.onChange(function() { 8226 setTimeout(_this.onTimeout, 500); 8227 }); 8228 }; 8229 8230 this.onChange = function(callback) 8231 { 8232 if (_this.running) 8233 { 8234 _this.runningCall = true; 8235 8236 return; 8237 } 8238 _this.running = true; 8239 8240 if (_this.INPUT.value != _this.oldValue && _this.INPUT.value != _this.startText) 8241 { 8242 _this.oldValue = _this.INPUT.value; 8243 if (_this.INPUT.value.length >= _this.arParams.MIN_QUERY_LEN) 8244 { 8245 _this.cache_key = _this.arParams.INPUT_ID + '|' + _this.INPUT.value; 8246 if (_this.cache[_this.cache_key] == null) 8247 { 8248 if (_this.WAIT) 8249 { 8250 var pos = BX.pos(_this.INPUT); 8251 var height = (pos.bottom - pos.top) - 2; 8252 _this.WAIT.style.top = (pos.top + 1) + 'px'; 8253 _this.WAIT.style.height = height + 'px'; 8254 _this.WAIT.style.width = height + 'px'; 8255 _this.WAIT.style.left = (pos.right - height + 2) + 'px'; 8256 _this.WAIT.style.display = 'block'; 8257 } 8258 8259 BX.ajax.post( 8260 _this.arParams.AJAX_PAGE, 8261 { 8262 'ajax_call': 'y', 8263 'INPUT_ID': _this.arParams.INPUT_ID, 8264 'q': _this.INPUT.value, 8265 'l': _this.arParams.MIN_QUERY_LEN, 8266 }, 8267 function(result) 8268 { 8269 _this.cache[_this.cache_key] = result; 8270 _this.ShowResult(result); 8271 _this.currentRow = -1; 8272 _this.EnableMouseEvents(); 8273 if (_this.WAIT) 8274 { 8275 _this.WAIT.style.display = 'none'; 8276 } 8277 8278 if (!!callback) 8279 { 8280 callback(); 8281 } 8282 8283 _this.running = false;
8284 if (_this.runningCall) 8285 { 8286 _this.runningCall = false; 8287 _this.onChange(); 8288 } 8289 } 8290 ); 8291 8292 return; 8293 } 8294 8295 _this.ShowResult(_this.cache[_this.cache_key]); 8296 _this.currentRow = -1; 8297 _this.EnableMouseEvents(); 8298 } 8299 else 8300 { 8301 _this.RESULT.style.display = 'none'; 8302 _this.currentRow = -1; 8303 _this.UnSelectAll(); 8304 } 8305 } 8306 8307 if (!!callback) 8308 { 8309 callback(); 8310 } 8311 _this.running = false; 8312 }; 8313 8314 this.onScroll = function () 8315 { 8316 if (BX.type.isElementNode(_this.RESULT) 8317 && _this.RESULT.style.display !== 'none' 8318 && _this.RESULT.innerHTML !== '' 8319 ) 8320 { 8321 _this.adjustResultNode(); 8322 } 8323 }; 8324 8325 this.UnSelectAll = function() 8326 { 8327 var tbl = BX.findChild(_this.RESULT, { 'tag': 'table', 'class': 'title-search-result' }, true); 8328 if (tbl) 8329 { 8330 var cnt = tbl.rows.length; 8331 for (var i = 0; i < cnt; i++) 8332 { 8333 tbl.rows[i].className = ''; 8334 } 8335 } 8336 }; 8337 8338 this.EnableMouseEvents = function() 8339 { 8340 var tbl = BX.findChild(_this.RESULT, { 'tag': 'table', 'class': 'title-search-result' }, true); 8341 if (tbl) 8342 { 8343 var cnt = tbl.rows.length; 8344 for (var i = 0; i < cnt; i++) 8345 { 8346 if (!BX.findChild(tbl.rows[i], { 'class': 'title-search-separator' }, true)) 8347 { 8348 tbl.rows[i].id = 'row_' + i; 8349 tbl.rows[i].onmouseover = function (e) { 8350 if (_this.currentRow != this.id.substr(4)) 8351 { 8352 _this.UnSelectAll(); 8353 this.className = 'title-search-selected'; 8354 _this.currentRow = this.id.substr(4); 8355 } 8356 }; 8357 8358 tbl.rows[i].onmouseout = function (e) { 8359 this.className = ''; 8360 _this.currentRow = -1; 8361 }; 8362 } 8363 } 8364 } 8365 }; 8366 8367 this.onFocusLost = function(hide) 8368 { 8369 setTimeout(function() { _this.RESULT.style.display = 'none'; }, 250); 8370 }; 8371 8372 this.onFocusGain = function() 8373 { 8374 if (_this.RESULT.innerHTML.length > 0) 8375 { 8376 _this.ShowResult(); 8377 } 8378 }; 8379 8380 this.onKeyDown = function(e) 8381 { 8382 if (!e) 8383 { 8384 e = window.event; 8385 } 8386 8387 if (_this.RESULT.style.display == 'block' && _this.onKeyPress(e.keyCode)) 8388 { 8389 return BX.PreventDefault(e); 8390 } 8391 }; 8392 8393 this.adjustResultNode = function() 8394 { 8395 if (!(BX.type.isElementNode(_this.RESULT) 8396 && BX.type.isElementNode(_this.CONTAINER)) 8397 ) 8398 { 8399 return { top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 }; 8400 } 8401 8402 var pos = BX.pos(_this.CONTAINER); 8403 8404 _this.RESULT.style.position = 'absolute'; 8405 _this.RESULT.style.top = (pos.bottom + 2) + 'px'; 8406 _this.RESULT.style.left = pos.left + 'px'; 8407 _this.RESULT.style.width = pos.width + 'px'; 8408 8409 return pos; 8410 }; 8411 8412 this.onContainerLayoutChange = function() 8413 { 8414 if (BX.type.isElementNode(_this.RESULT) 8415 && _this.RESULT.style.display !== 'none' 8416 && _this.RESULT.innerHTML !== '' 8417 ) 8418 { 8419 _this.adjustResultNode(); 8420 } 8421 }; 8422 8423 this.Init = function() 8424 { 8425 this.CONTAINER = document.getElementById(this.arParams.CONTAINER_ID); 8426 BX.addCustomEvent(this.CONTAINER, 'OnNodeLayoutChange', this.onContainerLayoutChange); 8427 8428 this.RESULT = document.body.appendChild(document.createElement("DIV")); 8429 this.RESULT.className = 'title-search-result'; 8430 this.INPUT = document.getElementById(this.arParams.INPUT_ID); 8431 this.startText = this.INPUT.value; 8432 this.oldValue = this.INPUT.value; 8433 BX.bind(this.INPUT, 'focus', function() { _this.onFocusGain(); }); 8434 BX.bind(this.INPUT, 'blur', function() { _this.onFocusLost(); }); 8435 this.INPUT.onkeydown = this.onKeyDown; 8436 8437 if (this.arParams.WAIT_IMAGE) 8438 { 8439 this.WAIT = document.body.appendChild(document.createElement('DIV')); 8440 this.WAIT.style.backgroundImage = "url('" + this.arParams.WAIT_IMAGE + "')"; 8441 if (!BX.browser.IsIE()) 8442 { 8443 this.WAIT.style.backgroundRepeat = 'none'; 8444 } 8445 this.WAIT.style.display = 'none'; 8446 this.WAIT.style.position = 'absolute'; 8447 this.WAIT.style.zIndex = '1100'; 8448 } 8449 8450 BX.bind(this.INPUT, 'bxchange', function() {_this.onChange()}); 8451 8452 var fixedParent = BX.findParent(this.CONTAINER, BX.is_fixed); 8453 if (BX.type.isElementNode(fixedParent)) 8454 { 8455 BX.bind(window, 'scroll', BX.throttle(this.onScroll, 100, this)); 8456 } 8457 }; 8458 8459 BX.ready(function() { _this.Init(arParams); }); 8460} 8461 8462/* End */ 8463; 8464; /* Start:"a:4:{s:4:"full";s:91:"/bitrix/templates/aspro-premier/js/conditional/search_title/search-title.js?177459632613727";s:6:"source";s:75:"/bitrix/templates/aspro-premier/js/conditional/search_title/search-title.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 8465if (!BX.Aspro.Utils.isFunction("JCTitleSearch2")) { 8466 function JCTitleSearch2(arParams) { 8467 var _this = this; 8468 8469 this.arParams = {
8470 AJAX_PAGE: arParams.AJAX_PAGE, 8471 CONTAINER_ID: arParams.CONTAINER_ID, 8472 INPUT_ID: arParams.INPUT_ID, 8473 INPUT_ID_TMP: arParams.INPUT_ID_TMP, 8474 MIN_QUERY_LEN: parseInt(arParams.MIN_QUERY_LEN), 8475 DROPDOWN_TYPE: arParams.DROPDOWN_TYPE, 8476 }; 8477 8478 if (arParams.WAIT_IMAGE) this.arParams.WAIT_IMAGE = arParams.WAIT_IMAGE; 8479 if (arParams.MIN_QUERY_LEN <= 0) arParams.MIN_QUERY_LEN = 1; 8480 8481 this.cache = []; 8482 this.cache_key = null; 8483 8484 this.startText = ""; 8485 this.running = false; 8486 this.needRunAgain = false; 8487 this.currentRow = -1; 8488 this.RESULT = null; 8489 this.CONTAINER = null; 8490 this.INPUT = null; 8491 this.TYPE = null; 8492 this.WAIT = null; 8493 8494 this.ShowResult = function (result) { 8495 // check that the input is focused 8496 if (document.activeElement !== this.INPUT) { 8497 return; 8498 } 8499 8500 if (BX.type.isString(result)) { 8501 _this.RESULT.innerHTML = result; 8502 } 8503 8504 if (_this.RESULT.innerHTML !== "") { 8505 _this.RESULT.classList.remove("hidden"); 8506 } else { 8507 _this.RESULT.classList.add("hidden"); 8508 } 8509 8510 var pos = _this.adjustResultNode(); 8511 8512 //adjust left column to be an outline 8513 var res_pos; 8514 var th; 8515 var tbl = BX.findChild(_this.RESULT, { tag: "table", class: "title-search-result" }, true); 8516 if (tbl) { 8517 th = BX.findChild(tbl, { tag: "th" }, true); 8518 } 8519 if (th) { 8520 var tbl_pos = BX.pos(tbl); 8521 tbl_pos.width = tbl_pos.right - tbl_pos.left; 8522 8523 var th_pos = BX.pos(th); 8524 th_pos.width = th_pos.right - th_pos.left; 8525 th.style.width = th_pos.width + "px"; 8526 8527 _this.RESULT.style.width = pos.width + th_pos.width + "px"; 8528 8529 //Move table to left by width of the first column 8530 _this.RESULT.style.left = pos.left - th_pos.width - 1 + "px"; 8531 8532 //Shrink table when it's too wide 8533 if (tbl_pos.width - th_pos.width > pos.width) _this.RESULT.style.width = pos.width + th_pos.width - 1 + "px"; 8534 8535 //Check if table is too wide and shrink result div to it's width 8536 tbl_pos = BX.pos(tbl); 8537 res_pos = BX.pos(_this.RESULT); 8538 if (res_pos.right > tbl_pos.right) { 8539 _this.RESULT.style.width = tbl_pos.right - tbl_pos.left + "px"; 8540 } 8541 } 8542 8543 var fade; 8544 if (tbl) fade = BX.findChild(_this.RESULT, { class: "title-search-fader" }, true); 8545 if (fade && th) { 8546 res_pos = BX.pos(_this.RESULT); 8547 fade.style.left = res_pos.right - res_pos.left - 18 + "px"; 8548 fade.style.width = 18 + "px"; 8549 fade.style.top = 0 + "px"; 8550 fade.style.height = res_pos.bottom - res_pos.top + "px"; 8551 fade.classList.remove("hidden"); 8552 } 8553 8554 if (typeof InitScrollBar === "function") { 8555 InitScrollBar(); 8556 } 8557 }; 8558 8559 this.onKeyPress = function (keyCode) { 8560 var tbl = BX.findChild(_this.RESULT, { tag: "table", class: "title-search-result" }, true); 8561 if (!tbl) return false; 8562 8563 var i; 8564 var cnt = tbl.rows.length; 8565 8566 switch (keyCode) { 8567 case 27: // escape key - close search div 8568 _this.RESULT.classList.add("hidden"); 8569 _this.currentRow = -1; 8570 _this.UnSelectAll(); 8571 return true; 8572 8573 case 40: // down key - navigate down on search results 8574 if (_this.RESULT.classList.contains("hidden")) { 8575 _this.RESULT.classList.remove("hidden"); 8576 } 8577 8578 var first = -1; 8579 for (i = 0; i < cnt; i++) { 8580 if (!BX.findChild(tbl.rows[i], { class: "title-search-separator" }, true)) { 8581 if (first == -1) first = i; 8582 8583 if (_this.currentRow < i) { 8584 _this.currentRow = i; 8585 break; 8586 } else if (tbl.rows[i].className == "title-search-selected") { 8587 tbl.rows[i].className = ""; 8588 } 8589 } 8590 } 8591 8592 if (i == cnt && _this.currentRow != i) _this.currentRow = first; 8593 8594 tbl.rows[_this.currentRow].className = "title-search-selected"; 8595 return true; 8596 8597 case 38: // up key - navigate up on search results 8598 if (_this.RESULT.classList.contains("hidden")) { 8599 _this.RESULT.classList.remove("hidden"); 8600 } 8601 8602 var last = -1; 8603 for (i = cnt - 1; i >= 0; i--) { 8604 if (!BX.findChild(tbl.rows[i], { class: "title-search-separator" }, true)) { 8605 if (last == -1) last = i; 8606 8607 if (_this.currentRow > i) { 8608 _this.currentRow = i; 8609 break; 8610 } else if (tbl.rows[i].className == "title-search-selected") { 8611 tbl.rows[i].className = ""; 8612 } 8613 } 8614 } 8615 8616 if (i < 0 && _this.currentRow != i) _this.currentRow = last; 8617 8618 tbl.rows[_this.currentRow].className = "title-search-selected"; 8619 return true; 8620 8621 case 13: // enter key - choose current search result 8622 if (!_this.RESULT.classList.contains("hidden")) { 8623 for (i = 0; i < cnt; i++) { 8624 if (_this.currentRow == i) { 8625 if (!BX.findChild(tbl.rows[i], { class: "title-search-separator" }, true)) { 8626 var a = BX.findChild(tbl.rows[i], { tag: "a" }, true); 8627 if (a) { 8628 window.location = a.href; 8629 return true; 8630 } 8631 } 8632 } 8633 } 8634 } 8635 return false;
8636 } 8637 8638 return false; 8639 }; 8640 8641 this.onTimeout = function () { 8642 _this.onChange(function () { 8643 setTimeout(_this.onTimeout, 500); 8644 }); 8645 }; 8646 8647 this.onChange = function (callback) { 8648 if (_this.running) { 8649 _this.needRunAgain = true; 8650 return; 8651 } 8652 _this.running = true; 8653 8654 let type = "catalog"; 8655 if (this.TYPE) { 8656 type = this.TYPE.value; 8657 } 8658 8659 if ((_this.INPUT.value != _this.oldValue && _this.INPUT.value != _this.startText) || type != _this.oldType) { 8660 _this.oldValue = _this.INPUT.value; 8661 _this.oldType = type; 8662 8663 if (_this.INPUT.value.length >= _this.arParams.MIN_QUERY_LEN) { 8664 _this.cache_key = _this.arParams.INPUT_ID + "|" + _this.INPUT.value + "|" + type; 8665 if (_this.cache[_this.cache_key] == null) { 8666 if (_this.WAIT) { 8667 var pos = BX.pos(_this.INPUT); 8668 var height = pos.bottom - pos.top - 2; 8669 _this.WAIT.style.top = pos.top + 1 + "px"; 8670 _this.WAIT.style.height = height + "px"; 8671 _this.WAIT.style.width = height + "px"; 8672 _this.WAIT.style.left = pos.right - height + 2 + "px"; 8673 _this.WAIT.classList.remove("hidden"); 8674 } 8675 8676 BX.ajax.post( 8677 _this.arParams.AJAX_PAGE, 8678 { 8679 ajax_call: "y", 8680 INPUT_ID: _this.arParams.INPUT_ID_TMP, 8681 q: _this.INPUT.value, 8682 l: _this.arParams.MIN_QUERY_LEN, 8683 type: type, 8684 }, 8685 function (result) { 8686 _this.cache[_this.cache_key] = result; 8687 8688 BX.Aspro.Loader.add({ 8689 ext: "prices", 8690 }).then(function () { 8691 _this.ShowResult(result); 8692 _this.currentRow = -1; 8693 _this.EnableMouseEvents(); 8694 8695 if (_this.WAIT) { 8696 _this.WAIT.classList.add("hidden"); 8697 } 8698 8699 if (!!callback) callback(); 8700 _this.running = false; 8701 8702 if (_this.needRunAgain) { 8703 _this.needRunAgain = false; 8704 _this.onChange(callback); 8705 } 8706 }); 8707 } 8708 ); 8709 return; 8710 } else { 8711 _this.ShowResult(_this.cache[_this.cache_key]); 8712 _this.currentRow = -1; 8713 _this.EnableMouseEvents(); 8714 } 8715 } 8716 } 8717 8718 if (!!callback) callback(); 8719 _this.running = false; 8720 }; 8721 8722 this.UnSelectAll = function () { 8723 var tbl = BX.findChild(_this.RESULT, { tag: "table", class: "title-search-result" }, true); 8724 if (tbl) { 8725 var cnt = tbl.rows.length; 8726 for (var i = 0; i < cnt; i++) tbl.rows[i].className = ""; 8727 } 8728 }; 8729 8730 this.EnableMouseEvents = function () { 8731 var tbl = BX.findChild(_this.RESULT, { tag: "table", class: "title-search-result" }, true); 8732 if (tbl) { 8733 var cnt = tbl.rows.length; 8734 for (var i = 0; i < cnt; i++) 8735 if (!BX.findChild(tbl.rows[i], { class: "title-search-separator" }, true)) { 8736 tbl.rows[i].id = "row_" + i; 8737 tbl.rows[i].onmouseover = function (e) { 8738 if (_this.currentRow != this.id.substr(4)) { 8739 _this.UnSelectAll(); 8740 this.className = "title-search-selected"; 8741 _this.currentRow = this.id.substr(4); 8742 } 8743 }; 8744 tbl.rows[i].onmouseout = function (e) { 8745 this.className = ""; 8746 _this.currentRow = -1; 8747 }; 8748 } 8749 } 8750 }; 8751 8752 this.onFocusLost = function () { 8753 setTimeout(() => { 8754 _this.RESULT.classList.add("hidden"); 8755 }, 0); 8756 }; 8757 8758 this.onFocusGain = function () { 8759 if (_this.RESULT.innerHTML.length) { 8760 _this.ShowResult(); 8761 } 8762 8763 _this.onChange(); 8764 }; 8765 8766 this.onKeyDown = function (e) { 8767 if (!e) e = window.event; 8768 if (!_this.RESULT.classList.contains("hidden")) { 8769 if (_this.onKeyPress(e.keyCode)) return BX.PreventDefault(e); 8770 } 8771 }; 8772 8773 this.adjustResultNode = function () { 8774 var pos, pos_input; 8775 var fixedParent = BX.findParent(_this.CONTAINER, BX.is_fixed); 8776 8777 _this.RESULT.style.position = this.arParams.DROPDOWN_TYPE || "absolute"; 8778 pos = BX.pos(_this.CONTAINER); 8779 8780 pos_input = BX.pos(_this.INPUT); 8781 8782 if (this.arParams.DROPDOWN_TYPE === "absolute") { 8783 pos.width = pos.right - pos.left; 8784 _this.RESULT.style.top = "100%";
8785 _this.RESULT.style.left = "0px"; 8786 8787 if (_this.INPUT.closest(".inline-search-block.with-close")) { 8788 _this.RESULT.style.width = pos_input.width + "px"; 8789 } else { 8790 _this.RESULT.style.width = pos.width + "px"; 8791 } 8792 } 8793 8794 return pos; 8795 }; 8796 8797 this._onContainerLayoutChange = function () { 8798 if (!_this.RESULT.classList.contains("hidden") && _this.RESULT.innerHTML !== "") { 8799 _this.adjustResultNode(); 8800 } 8801 }; 8802 8803 this.Init = function () { 8804 this.INPUT = document.getElementById(this.arParams.INPUT_ID); 8805 if (!this.INPUT) { 8806 return; 8807 } 8808 8809 this.INPUT.search = this; 8810 8811 this.CONTAINER = document.getElementById(this.arParams.CONTAINER_ID); 8812 BX.addCustomEvent(this.CONTAINER, "OnNodeLayoutChange", this._onContainerLayoutChange); 8813 8814 this.RESULT = this.CONTAINER.appendChild(document.createElement("DIV")); 8815 this.RESULT.className = `title-search-result theme-root hidden ${this.arParams.INPUT_ID}`; 8816 8817 this.startText = this.oldValue = this.INPUT.value; 8818 BX.bind(this.INPUT, "focus", function (e) { 8819 _this.onFocusGain(); 8820 }); 8821 8822 BX.bind(this.INPUT, "blur", function (e) { 8823 if (!$(e.relatedTarget).closest(".title-search-result").length) { 8824 setTimeout(function () { 8825 if ( 8826 !$(_this.INPUT).closest("form").find(".dropdown-select.searchtype .dropdown-select__title.opened").length 8827 ) { 8828 _this.onFocusLost(); 8829 } 8830 }, 100); 8831 } 8832 }); 8833 8834 if (BX.browser.IsSafari() || BX.browser.IsIE()) this.INPUT.onkeydown = this.onKeyDown; 8835 else this.INPUT.onkeypress = this.onKeyDown; 8836 8837 BX.bind(this.INPUT, "bxchange", function (e) { 8838 _this.onChange(); 8839 }); 8840 8841 if (this.arParams.WAIT_IMAGE) { 8842 this.WAIT = document.body.appendChild(document.createElement("DIV")); 8843 this.WAIT.style.backgroundImage = "url('" + this.arParams.WAIT_IMAGE + "')"; 8844 this.WAIT.style.backgroundRepeat = "none"; 8845 this.WAIT.classList.add("hidden"); 8846 this.WAIT.style.position = this.arParams.DROPDOWN_TYPE || "absolute"; 8847 this.WAIT.style.zIndex = "1100"; 8848 } 8849 8850 this.TYPE = this.CONTAINER 8851 ? this.CONTAINER.querySelector('.dropdown-select.searchtype input[name="type"]') 8852 : null; 8853 if (this.TYPE) { 8854 BX.bind(this.TYPE, "change", function () { 8855 _this.onChange(); 8856 }); 8857 } 8858 8859 let searchForm = $(_this.INPUT).closest(".search"); 8860 let clearSearch = searchForm.find(".btn-clear-search"); 8861 BX.bind(clearSearch[0], "click", function (e) { 8862 setTimeout(function () { 8863 _this.onChange(); 8864 _this.INPUT.focus(); 8865 _this.RESULT.innerHTML = ""; 8866 }, 0); 8867 }); 8868 }; 8869 8870 BX.ready(function () { 8871 _this.Init(); 8872 }); 8873 } 8874} 8875 8876// clear button handler 8877BX.addCustomEvent("app.document.click", (eventdata) => { 8878 if (eventdata.target.closest(".btn-clear-search")) { 8879 const nodeForm = eventdata.target.closest("form"); 8880 nodeForm.querySelector('input[name="q"]').value = ""; 8881 8882 BX.onCustomEvent("onAsproSearchSync"); 8883 } 8884}); 8885 8886// sync search handler 8887{ 8888 let nodeListSearchInput = null; 8889 BX.addCustomEvent("onAsproSearchSync", (value = '') => { 8890 if (!nodeListSearchInput) { 8891 nodeListSearchInput = document.querySelectorAll(".search-title__input"); 8892 } 8893 8894 if (nodeListSearchInput.length > 1) { 8895 nodeListSearchInput.forEach((nodeSearchInput) => { 8896 nodeSearchInput.value = value; 8897 }); 8898 } 8899 }); 8900} 8901 8902/* End */ 8903; 8904; /* Start:"a:4:{s:4:"full";s:107:"/bitrix/templates/aspro-premier/js/conditional/search_title/search-title-handlers.desktop.js?17745963264365";s:6:"source";s:92:"/bitrix/templates/aspro-premier/js/conditional/search_title/search-title-handlers.desktop.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 8905BX.namespace("BX.Aspro.Search.Type"); 8906BX.Aspro.Search.Type = new (function () { 8907 let obSearch = null; 8908 8909 const getSearchType = () => { 8910 if (!obSearch) { 8911 if (document.querySelector(".inline-search-block")) { 8912 obSearch = new Fixed(); 8913 } else { 8914 obSearch = new Inline(); 8915 } 8916 } 8917 }; 8918 8919 this.open = function () { 8920 getSearchType(); 8921 8922 obSearch.open(); 8923 }; 8924 8925 this.close = function () { 8926 getSearchType(); 8927 8928 obSearch.close(); 8929 }; 8930 8931 this.toggle = function () { 8932 getSearchType(); 8933 8934 obSearch.toggle(); 8935 }; 8936 8937 function Fixed() { 8938 let nodeSearchBlock = null; 8939 let nodeSearchBlockInput = null; 8940 let nodeOverlay = null; 8941 8942 let isOpened = false;
8943 8944 this.open = function () { 8945 if (isOpened) { 8946 return; 8947 } 8948 isOpened = true; 8949 8950 if (!nodeSearchBlock) { 8951 nodeSearchBlock = document.querySelector(".inline-search-block"); 8952 8953 if (nodeSearchBlock) { 8954 nodeSearchBlockInput = nodeSearchBlock.querySelector('input[name="q"]'); 8955 } 8956 } 8957 8958 nodeSearchBlock.classList.add("show"); 8959 nodeSearchBlockInput.focus(); 8960 document.body.classList.add("jqm-initied"); 8961 8962 addOverlay(); 8963 }; 8964 8965 const addOverlay = () => { 8966 nodeOverlay = BX.create("div", { 8967 attrs: { 8968 class: "overlay", 8969 }, 8970 events: { 8971 click: () => this.close(), 8972 }, 8973 }); 8974 8975 nodeSearchBlock.appendChild(nodeOverlay); 8976 }; 8977 8978 this.close = function () { 8979 if (!isOpened) { 8980 return; 8981 } 8982 8983 isOpened = false; 8984 8985 nodeSearchBlock.classList.remove("show"); 8986 nodeSearchBlockInput.blur(); 8987 document.body.classList.remove("jqm-initied"); 8988 removeOverlay(); 8989 }; 8990 8991 const removeOverlay = () => { 8992 if (nodeOverlay) { 8993 nodeOverlay.remove(); 8994 nodeOverlay = null; 8995 } 8996 }; 8997 8998 this.toggle = function () { 8999 if (isOpened) { 9000 this.close(); 9001 } else { 9002 this.open(); 9003 } 9004 }; 9005 } 9006 9007 function Inline() { 9008 let nodeHeader = null; 9009 let nodeSearchBlockInput = null; 9010 let nodeOverlay = null; 9011 9012 let isOpened = false; 9013 9014 const isMobile = window.matchMedia("(max-width: 991px)").matches; 9015 9016 const addOverlay = () => { 9017 nodeOverlay = BX.create("div", { 9018 attrs: { 9019 class: "jqmOverlay mobp", 9020 }, 9021 events: { 9022 click: () => this.close(), 9023 }, 9024 }); 9025 9026 document.body.appendChild(nodeOverlay); 9027 }; 9028 9029 this.open = function () { 9030 if (!isMobile) { 9031 return; 9032 } 9033 9034 if (isOpened) { 9035 return; 9036 } 9037 isOpened = true; 9038 9039 if (!nodeHeader) { 9040 nodeHeader = document.querySelector('[data-ajax-block="HEADER"]'); 9041 if (nodeHeader) { 9042 nodeSearchBlockInput = nodeHeader.querySelector('input[name="q"]'); 9043 } 9044 } 9045 9046 window.CloseMobilePhone?.(); 9047 window.CloseMobileMenu?.(); 9048 9049 document.body.classList.add("header--mobile-search-active", "jqm-initied"); 9050 nodeHeader.classList.add("filter-none"); 9051 nodeSearchBlockInput.focus(); 9052 addOverlay(); 9053 }; 9054 9055 const removeOverlay = () => { 9056 if (nodeOverlay) { 9057 nodeOverlay.remove(); 9058 nodeOverlay = null; 9059 } 9060 }; 9061 9062 this.close = function () { 9063 if (!isOpened) { 9064 return; 9065 } 9066 isOpened = false; 9067 9068 document.body.classList.remove("header--mobile-search-active", "jqm-initied"); 9069 nodeHeader.classList.remove("filter-none"); 9070 nodeSearchBlockInput.blur(); 9071 removeOverlay(); 9072 }; 9073 9074 this.toggle = function () { 9075 if (isOpened) { 9076 this.close(); 9077 } else { 9078 this.open(); 9079 } 9080 }; 9081 } 9082 9083 BX.addCustomEvent("onAsproEscapeButton", () => { 9084 if (!document.querySelector("#popup_iframe_wrapper")?.style?.display) { 9085 BX.Aspro.Search.Type.close(); 9086 } 9087 }); 9088 9089 BX.addCustomEvent("app.document.keyup", (eventdata) => { 9090 const nodeCurrentSearchInput = eventdata.target.closest(".search-title__input"); 9091 if (!nodeCurrentSearchInput) { 9092 return; 9093 } 9094 9095 BX.onCustomEvent("onAsproSearchSync", [nodeCurrentSearchInput.value]); 9096 }); 9097 9098 BX.addCustomEvent("app.document.click", (eventdata) => { 9099 if (eventdata.target.closest(".header-search, .header-search__mobile, .bottom-icons-panel__content-link--search")) { 9100 BX.Aspro.Search.Type.open(); 9101 } 9102 }); 9103})(); 9104 9105/* End */ 9106; 9107; /* Start:"a:4:{s:4:"full";s:90:"/bitrix/components/aspro/search.title.options/templates/.default/script.js?177459629612085";s:6:"source";s:74:"/bitrix/components/aspro/search.title.options/templates/.default/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9108(() => { 9109 const additionalOptions = {}; 9110 const isSpeechRecognitionAPIAvailable = !!(window.SpeechRecognition || window.webkitSpeechRecognition); 9111 9112 const loadAssets = async (assets) => { 9113 if (assets?.ASSETS) { 9114 BX.load(assets.ASSETS); 9115 } 9116 9117 if (assets?.EXT) { 9118 BX.loadExt(assets.EXT); 9119 } 9120 }; 9121 9122 const selectOptionsHandler = async (eventdata) => { 9123 const nodeSelectOptions = eventdata.target.closest(".search-title-options__button"); 9124 if (!nodeSelectOptions) { 9125 return; 9126 } 9127 9128 BX.removeCustomEvent("app.document.click", selectOptionsHandler); 9129 9130 nodeSelectOptions.classList.add("loadings"); 9131 await BX.Aspro.Loader.addExt("popover"); 9132 nodeSelectOptions.classList.remove("loadings"); 9133 BX.Aspro.xPopover.get(nodeSelectOptions).toggle(); 9134 9135 const updateCurrentPopover = (html) => { 9136 const nodeActivePopover = document.querySelector(".xpopover .loading-state-before"); 9137 if (nodeActivePopover) { 9138 nodeActivePopover.insertAdjacentHTML("afterend", html); 9139 nodeActivePopover.remove(); 9140 } 9141 }; 9142 9143 const updateDropdownList = (html) => { 9144 const nodeDropdownContent = document.createRange().createContextualFragment(html); 9145 9146 const nodeListSearchTitleOptionsButton = document.querySelectorAll(".search-title-options__button"); 9147 nodeListSearchTitleOptionsButton.forEach((nodeSearchTitleOptionsButton) => { 9148 nodeSearchTitleOptionsButton 9149 .querySelector(".xpopover-template") 9150 .content.replaceChildren(nodeDropdownContent.cloneNode(true)); 9151 }); 9152 }; 9153 9154 const setContent = (html) => { 9155 if (html) { 9156 updateCurrentPopover(html); 9157 updateDropdownList(html); 9158 } 9159 }; 9160 9161 BX.ajax 9162 .runComponentAction("aspro:search.title.options", "load", { 9163 mode: "ajax", 9164 data: { 9165 conditions: { 9166 voice: isSpeechRecognitionAPIAvailable ? "Y" : "N", 9167 }, 9168 }, 9169 }) 9170 .then((response) => { 9171 setContent(response.data?.html); 9172 loadAssets(response.data?.componentResult); 9173 }); 9174 }; 9175 9176 const removeAdditionalOptions = () => { 9177 const nodeListSearchTitleAdditionalOption = document.querySelectorAll(".search-title__additional-option"); 9178 nodeListSearchTitleAdditionalOption.forEach((nodeSearchTitleAdditionalOption) => { 9179 nodeSearchTitleAdditionalOption.remove(); 9180 }); 9181 }; 9182 9183 const refreshActiveButton = (option) => { 9184 removeAdditionalOptions(); 9185 9186 const nodeListSearchTitleOptions = document.querySelectorAll(".search-title-options"); 9187 nodeListSearchTitleOptions.forEach((nodeSearchTitleOptions) => { 9188 if (additionalOptions[option]) { 9189 nodeSearchTitleOptions.insertAdjacentHTML("afterend", additionalOptions[option]); 9190 } 9191 }); 9192 }; 9193 9194 const changeOptionsHandler = async (eventdata) => { 9195 const nodeSearchAreaOption = eventdata.target.closest(".dropdown-select__list-item-label"); 9196 if (!nodeSearchAreaOption) { 9197 return; 9198 } 9199 9200 const { name, value } = nodeSearchAreaOption; 9201 9202 const changeOptionState = (option, activeValue) => { 9203 const isActive = option.value === activeValue; 9204 9205 option.classList.toggle("dropdown-menu-item--current", isActive); 9206 option.toggleAttribute("disabled", isActive); 9207 }; 9208 9209 const setCurrentOption = (name, value) => { 9210 const nodeForm = BX.Aspro?.xPopover?.toggleNode?.closest?.("form"); 9211 if (nodeForm) { 9212 const nodeListAreaOption = nodeForm?.querySelectorAll(`.dropdown-select__list-item-label[name="${name}"]`); 9213 if (nodeListAreaOption.length) { 9214 nodeListAreaOption.forEach((nodeAreaOption) => { 9215 changeOptionState(nodeAreaOption, value); 9216 }); 9217 } 9218 } 9219 9220 BX.Aspro?.xPopover?.hide?.(); 9221 }; 9222 9223 const syncPopoverOptions = (name, value) => { 9224 const nodeListSearchFormXpopover = document.querySelectorAll(".search-title-options__button .xpopover-template"); 9225 9226 nodeListSearchFormXpopover.forEach((nodeSearchFormXpopover) => { 9227 const nodeListAdditionalOption = nodeSearchFormXpopover.content.querySelectorAll(`[name="${name}"]`); 9228 nodeListAdditionalOption.forEach((nodeAdditionalOption) => { 9229 changeOptionState(nodeAdditionalOption, value); 9230 }); 9231 }); 9232 }; 9233 9234 const searchDropdownSelectAreaHandler = (target) => { 9235 const nodeInputSearchType = target.closest('[name="type"]'); 9236 if (!nodeInputSearchType) { 9237 return; 9238 } 9239 9240 const clearSearchResults = () => { 9241 const nodeListSearchResult = document.querySelectorAll(".title-search-result"); 9242 if (nodeListSearchResult.length) { 9243 nodeListSearchResult.forEach((nodeSearchResult) => { 9244 nodeSearchResult.classList.add("hidden"); 9245 }); 9246 } 9247 }; 9248 9249 const setFormSearchArea = (searchArea) => { 9250 const LIST_SEARCH_AREA = { 9251 all: arAsproOptions.PAGES.SEARCH_PAGE_URL, 9252 catalog: arAsproOptions.PAGES.CATALOG_PAGE_URL, 9253 }; 9254 9255 const nodeListSearchTitleForm = document.querySelectorAll(".search-title__form"); 9256 nodeListSearchTitleForm.forEach((nodeSearchTitleForm) => { 9257 nodeSearchTitleForm.setAttribute("action", LIST_SEARCH_AREA[searchArea]); 9258 nodeSearchTitleForm.querySelector('input[name="type"]').value = searchArea; 9259 nodeSearchTitleForm.querySelector('input[name="q"]').placeholder = BX.message( 9260 `SEARCH_AREA_${searchArea.toUpperCase()}` 9261 ); 9262 9263 BX.message("SEARCH_AREA_DEFAULT", BX.message(`SEARCH_AREA_${searchArea.toUpperCase()}`)); 9264 }); 9265 }; 9266 9267 const resolveSearchInputFocus = (form) => { 9268 if (!form) { 9269 return; 9270 } 9271 9272 const nodeSearhTitleFormInput = form.querySelector(".search-title__input"); 9273 nodeSearhTitleFormInput?.setSelectionRange?.( 9274 nodeSearhTitleFormInput.value.length, 9275 nodeSearhTitleFormInput.value.length 9276 ); 9277 nodeSearhTitleFormInput.focus(); 9278 }; 9279 9280 const nodeSearchForm = BX.Aspro?.xPopover?.toggleNode?.closest("form"); 9281 const searchArea = nodeInputSearchType.value; 9282 9283 BX.Aspro.Loader.addExt("set_cookie_on_domains").then(() => {
9284 setCookieOnDomains(BX.message("SEARCH_AREA_COOKIE_NAME"), searchArea); 9285 }); 9286 9287 clearSearchResults(); 9288 setFormSearchArea(searchArea); 9289 resolveSearchInputFocus(nodeSearchForm); 9290 }; 9291 9292 const searchDropdownSelectAdditionalOptionHandler = async (target) => { 9293 const nodeInputAdditionalOption = target.closest('[name="additional"]'); 9294 if (!nodeInputAdditionalOption) { 9295 return; 9296 } 9297 9298 BX.onCustomEvent("onAsproSearchOptionsChange"); 9299 9300 const searchDropdownAdditionalOptionToggleLoadingState = (active) => { 9301 const nodeListAdditionalOption = document.querySelectorAll(".search-title__additional-option"); 9302 if (nodeListAdditionalOption.length) { 9303 nodeListAdditionalOption.forEach((nodeAdditionalOption) => { 9304 nodeAdditionalOption.toggleAttribute("disabled", active); 9305 nodeAdditionalOption.classList.toggle("loading-state-before", active); 9306 }); 9307 } 9308 }; 9309 9310 searchDropdownAdditionalOptionToggleLoadingState(true); 9311 9312 try { 9313 const option = nodeInputAdditionalOption.value; 9314 9315 if (typeof additionalOptions[option] === "undefined") { 9316 const response = await BX.ajax.runComponentAction("aspro:search.title.options", "getButton", { 9317 mode: "ajax", 9318 data: { 9319 option: option, 9320 }, 9321 }); 9322 9323 additionalOptions[option] = response.data?.BUTTON; 9324 } else { 9325 BX.ajax.runComponentAction("aspro:search.title.options", "refreshActiveButton", { 9326 data: { 9327 option: option, 9328 }, 9329 }); 9330 } 9331 9332 refreshActiveButton(option); 9333 } catch (e) { 9334 console.error(e); 9335 searchDropdownAdditionalOptionToggleLoadingState(false); 9336 } 9337 }; 9338 9339 setCurrentOption(name, value); 9340 syncPopoverOptions(name, value); 9341 searchDropdownSelectAreaHandler(nodeSearchAreaOption); 9342 searchDropdownSelectAdditionalOptionHandler(nodeSearchAreaOption); 9343 }; 9344 9345 BX.addCustomEvent("app.document.click", selectOptionsHandler); 9346 9347 BX.addCustomEvent("app.document.click", (eventdata) => { 9348 changeOptionsHandler(eventdata); 9349 }); 9350 9351 const requestDefaultOption = (option) => { 9352 const nodeListSearchTitleAdditionalOption = document.querySelectorAll( 9353 `.search-title__additional-option--${option}` 9354 ); 9355 if (nodeListSearchTitleAdditionalOption.length) { 9356 const nodeSearchTitleOptionsButton = document.querySelector(".search-title-options__button"); 9357 if (!nodeSearchTitleOptionsButton) { 9358 removeAdditionalOptions(); 9359 return; 9360 } 9361 9362 try { 9363 let arSearchOptions = JSON.parse(nodeSearchTitleOptionsButton?.dataset?.options); 9364 if (arSearchOptions.length) { 9365 arSearchOptions = arSearchOptions.filter((value) => value !== "area"); 9366 } 9367 9368 const index = arSearchOptions.indexOf("voice"); 9369 if (!!~index) { 9370 if (!isSpeechRecognitionAPIAvailable) { 9371 arSearchOptions.splice(index, 1); 9372 } 9373 } 9374 9375 if (!arSearchOptions.length) { 9376 removeAdditionalOptions(); 9377 return; 9378 } 9379 } catch (error) {} 9380 9381 const currentOption = nodeListSearchTitleAdditionalOption[0].value; 9382 nodeListSearchTitleAdditionalOption.forEach((nodeSearchTitleAdditionalOption) => { 9383 nodeSearchTitleAdditionalOption.classList.add("loading-state-before"); 9384 }); 9385 9386 BX.ajax 9387 .runComponentAction("aspro:search.title.options", "getDefaultButton", { 9388 mode: "ajax", 9389 data: { 9390 option: currentOption, 9391 }, 9392 }) 9393 .then((response) => { 9394 additionalOptions[currentOption] = response.data?.BUTTON; 9395 refreshActiveButton(currentOption); 9396 loadAssets(response.data); 9397 }); 9398 } 9399 }; 9400 9401 const updatePopoverContent = (option) => { 9402 const nodePopover = document.querySelector(".xpopover"); 9403 nodePopover?.querySelector(`.dropdown-select__list-item--${option}`)?.remove(); 9404 nodePopover?.querySelector(".dropdown-select__list-item")?.classList?.add?.("dropdown-menu-item--current"); 9405 9406 const nodeListPopover = document.querySelectorAll(".search-title-options__button .xpopover-template"); 9407 if (nodeListPopover.length) { 9408 let content = ""; 9409 nodeListPopover.forEach((nodePopover) => { 9410 if (!content) { 9411 content = nodePopover.content.cloneNode(true); 9412 content?.querySelector(`.dropdown-select__list-item--${option}`)?.remove(); 9413 content?.querySelector(".dropdown-select__list-item")?.classList?.add?.("dropdown-menu-item--current"); 9414 } 9415 9416 nodePopover.content.replaceChildren(content.cloneNode(true)); 9417 }); 9418 } 9419 }; 9420 9421 BX.addCustomEvent("onAsproSearchOptionsHandleOption", (eventdata) => { 9422 if (!eventdata.option) { 9423 return; 9424 } 9425 9426 requestDefaultOption(eventdata.option); 9427 updatePopoverContent(eventdata.option); 9428 }); 9429 9430 BX.Aspro.Utils.readyDOM(() => { 9431 const nodeSearchTitleOptionsButton = document.querySelector(".search-title-options__button"); 9432 if (!nodeSearchTitleOptionsButton) { 9433 return; 9434 } 9435 9436 const options = nodeSearchTitleOptionsButton?.dataset?.options; 9437 if (options) {
9438 try { 9439 let arSearchOptions = JSON.parse(options); 9440 if (!arSearchOptions.length) { 9441 nodeSearchTitleOptionsButton.remove(); 9442 return; 9443 } 9444 9445 if (!!~arSearchOptions.indexOf("area")) { 9446 return; 9447 } 9448 9449 const index = arSearchOptions.indexOf("voice"); 9450 if (!!~index) { 9451 if (!isSpeechRecognitionAPIAvailable) { 9452 arSearchOptions.splice(index, 1); 9453 } 9454 } 9455 9456 if (arSearchOptions.length <= 1) { 9457 nodeSearchTitleOptionsButton.remove(); 9458 } 9459 } catch (error) { 9460 console.info(error); 9461 } 9462 } 9463 }); 9464 9465 BX.Aspro.Loader.addExt("popover"); 9466})(); 9467 9468/* End */ 9469; 9470; /* Start:"a:4:{s:4:"full";s:86:"/bitrix/components/aspro/search.title.options.voice/assets/voice.min.js?17745962961491";s:6:"source";s:71:"/bitrix/components/aspro/search.title.options.voice/assets/voice.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9471BX.namespace("BX.Aspro.Search.Voice"),BX.Aspro.Search.Voice=new class{constructor(){let e=null,o=null,t=!1,n=!1;function r(t){const r=function(e){return Array.from(e.results).map((e=>e[0])).map((e=>e.transcript)).join("")}(t);Array.from(e).forEach((e=>{e.value=r})),t.results[0].isFinal&&(n.stop(),o&&o.querySelector(".search-input").focus())}function s(){const o=Array.from(e);o.length&&o.forEach((e=>{e.setAttribute("placeholder",BX.message("SEARCH_AREA_DEFAULT")),e.closest("form").classList.remove("_voice-active")}))}window.SpeechRecognition=window.SpeechRecognition||window.webkitSpeechRecognition,e=document.getElementsByClassName("search-title__input"),BX.Aspro.Utils.readyDOM((()=>{window.SpeechRecognition?(n=new window.SpeechRecognition,n.interimResults=!0,n.lang="ru-RU",n.addEventListener("result",r),n.addEventListener("start",(()=>{t=!0,function(){const o=Array.from(e);o.length&&o.forEach((e=>{e.setAttribute("placeholder",BX.message("VOICE_ACTIVE")),e.closest("form").classList.add("_voice-active")}))}()})),n.addEventListener("end",(()=>{t=!1,s()})),n.onerror=e=>{t=!1,n.stop(),console.log(e.error),"no-speech"==e.error&&s()}):BX.onCustomEvent("onAsproSearchOptionsHandleOption",[{option:"voice"}])})),this.toggle=function(e){e instanceof Node&&(o=e.closest(".xpopover")?BX.Aspro.xPopover?.toggleNode?.closest("form"):e.closest("form")),function(){try{t?n.stop():n.start()}catch(e){}}()},BX.addCustomEvent("onAsproSearchOptionsChange",(()=>{try{t&&n.stop()}catch(e){}}))}}; 9472/* End */ 9473; 9474; /* Start:"a:4:{s:4:"full";s:67:"/bitrix/components/aspro/smartsearch.input/script.js?17745962962718";s:6:"source";s:52:"/bitrix/components/aspro/smartsearch.input/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9475BX.namespace('Aspro.SmartSearch.Input'); 9476 9477(() => { 9478 class JAsproSmartSearchInput { 9479 constructor(node, params, result) { 9480 node = typeof node === 'string' && node ? document.querySelector(node) : node; 9481 node = typeof node === 'object' && node && node instanceof Node ? node : null; 9482 this.node = node; 9483 9484 params = typeof params === 'object' && params ? params : {}; 9485 this.params = params; 9486 9487 result = typeof result === 'object' && result ? result : {}; 9488 this.result = result; 9489 9490 this.syncHistory(); 9491 9492 if (this.node) { 9493 this.bindEvents(); 9494 } 9495 } 9496 9497 bindEvents() { 9498 if (!this.node) { 9499 return; 9500 } 9501 9502 BX.bind( 9503 this.node,
9504 'focus', 9505 BX.proxy( 9506 this.onInputFocus, 9507 this 9508 ) 9509 ); 9510 } 9511 9512 unbindEvents() { 9513 if (!this.node) { 9514 return; 9515 } 9516 9517 BX.unbind( 9518 this.node, 9519 'focus', 9520 BX.proxy( 9521 this.onInputFocus, 9522 this 9523 ) 9524 ); 9525 } 9526 9527 load(assets) { 9528 return new Promise((resolve, reject) => { 9529 assets = BX.Type.isObject(assets) ? assets : {}; 9530 const ext2load = BX.Type.isArray(assets.ext) ? assets.ext : []; 9531 const css2load = BX.Type.isArray(assets.css) ? assets.css : []; 9532 const js2load = BX.Type.isArray(assets.js) ? assets.js : []; 9533 9534 BX.loadExt(ext2load).then(() => { 9535 if (css2load.length) { 9536 BX.loadCSS(css2load, () => { 9537 if (js2load) { 9538 BX.loadScript(js2load, () => { 9539 resolve(); 9540 }); 9541 } else { 9542 resolve(); 9543 } 9544 }); 9545 } else { 9546 if (js2load) { 9547 BX.loadScript(js2load, () => { 9548 resolve(); 9549 }); 9550 } else { 9551 resolve(); 9552 } 9553 } 9554 }); 9555 }); 9556 } 9557 9558 syncHistory() { 9559 if (this.result.history?.enabled) { 9560 if ( 9561 this.result.history.hash 9562 && typeof localStorage === 'object' 9563 && localStorage 9564 ) { 9565 localStorage.setItem('aspro-search-history-sync', this.result.history.hash); 9566 } 9567 } 9568 } 9569 9570 onInputFocus() { 9571 if (!this.node) { 9572 return; 9573 } 9574 9575 this.unbindEvents(); 9576 9577 if (this.result.suggest?.enabled) { 9578 this.load(this.result.suggest?.load).then(() => { 9579 if (BX.Type.isFunction(BX.Aspro.SmartSearch.Suggest)) { 9580 (new BX.Aspro.SmartSearch.Suggest(this.node, this.result.suggest?.params)).importTemplate(); 9581 } 9582 }); 9583 } 9584 9585 if (this.result.history?.enabled) { 9586 this.load(this.result.history?.load).then(() => { 9587 if (BX.Type.isFunction(BX.Aspro.SmartSearch.History)) { 9588 (new BX.Aspro.SmartSearch.History(this.node, this.result.history?.params)).importTemplate(); 9589 } 9590 }); 9591 } 9592 } 9593 } 9594 9595 BX.Aspro.SmartSearch.Input = JAsproSmartSearchInput; 9596})(); 9597 9598/* End */ 9599; 9600; /* Start:"a:4:{s:4:"full";s:67:"/bitrix/templates/aspro-premier/js/dragscroll.min.js?17745963265337";s:6:"source";s:52:"/bitrix/templates/aspro-premier/js/dragscroll.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9601class JSDragScroll{constructor(element,option={}){this.setOption(option),"object"==typeof element?this.wrapEl=element:"string"==typeof element&&(this.wrapEl=document.querySelector(element)),this.activeClass=this.option.activeClass,this.scrollSpeed=this.option.scrollSpeed,this.cancelClickSpace=this.option.cancelClickSpace,this.arrowSpeed=this.option.arrowSpeed,this.wrapEl.classList.add("drag-scroll"),this.el=this.wrapEl.querySelector(".drag-scroll__content"),this.el&&this.el instanceof Node?this.init():console.log("incorect params")}init(){this.isDown=!1,this.startX=0,this.scrollLeft=0,this.cancelClick=!1,this.translateX=0,this.scrollable=!1,this.appendArrows(),this.bindEvents(),this.checkArrows()}setOption(option){const optionDefault={activeClass:"drag-scroll--active",scrollSpeed:1,cancelClickSpace:10,arrowSpeed:75};this.option=Object.assign({},optionDefault,option)}appendArrows(){var arrow_svg='<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L1 11" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>';let arrows_wrapper='<div class="drag-scroll__arrows"><div class="drag-scroll__arrow drag-scroll__arrow--left stroke-dark-light drag-scroll__arrow--disabled">'+arrow_svg+'</div><div class="drag-scroll__arrow drag-scroll__arrow--right stroke-dark-light drag-scroll__arrow--disabled">'+arrow_svg+"</div></div>";this.wrapEl.insertAdjacentHTML("beforeend",arrows_wrapper),this.arrowLeft=this.wrapEl.querySelector(".drag-scroll__arrow--left"),this.arrowRight=this.wrapEl.querySelector(".drag-scroll__arrow--right")}removeArrows(){let arrows=this.wrapEl.querySelector(".drag-scroll__arrows");arrows&&arrows.remove()}checkArrows(){let showArrows=!1;this.translateX>=0?this.arrowLeft.classList.add("drag-scroll__arrow--disabled"):(this.arrowLeft.classList.remove("drag-scroll__arrow--disabled"),showArrows=!0),this.translateX<=this.el.clientWidth-this.el.scrollWidth?this.arrowRight.classList.add("drag-scroll__arrow--disabled"):(this.arrowRight.classList.remove("drag-scroll__arrow--disabled"),showArrows=!0),showArrows?(this.scrollable=!0,this.wrapEl.classList.add("drag-scroll--scrollable")):(this.scrollable=!1,this.wrapEl.classList.remove("drag-scroll--scrollable"))}setScroll(){this.translateX>0?this.translateX=0:this.translateX<this.el.clientWidth-this.el.scrollWidth&&(this.translateX=this.el.clientWidth-this.el.scrollWidth),this.el.style.transform="translateX("+this.translateX+"px)"}onResize(){this.setScroll(),this.checkArrows()}bindEvents(){this.wrapEl.addEventListener("mousedown",BX.proxy(this.onMousedown,this)),this.wrapEl.addEventListener("touchstart",BX.proxy(this.onTouchstart,this)),this.el.addEventListener("click",BX.proxy(this.onClick,this)),document.addEventListener("mouseup",BX.proxy(this.onMouseup,this)),document.addEventListener("touchend",BX.proxy(this.onTouchend,this)),document.addEventListener("mousemove",BX.proxy(this.onMousemove,this)),document.addEventListener("touchmove",BX.proxy(this.onTouchmove,this)),this.arrowLeft&&this.arrowLeft.addEventListener("click",BX.proxy(this.onArrowLeftClick,this)),this.arrowRight&&this.arrowRight.addEventListener("click",BX.proxy(this.onArrowRightClick,this)),window.addEventListener("resize",BX.proxy(this.onResize,this))}onMousedown(e){e.target.closest(".drag-scroll__arrow")||this.startAction(e.pageX)}onTouchstart(){e.target.closest(".drag-scroll__arrow")||this.startAction(e.touches[0].pageX)}onClick(e){this.cancelClick&&e.preventDefault()}onMouseup(){this.isDown&&this.endAction()}onTouchend(){this.isDown&&this.endAction()}onMousemove(e){this.isDown&&(e.preventDefault(),this.moveAction(e.pageX))}onTouchmove(e){this.isDown&&this.moveAction(e.touches[0].pageX)}onArrowRightClick(){this.translateX=this.translateX-this.arrowSpeed,this.checkArrows(),this.el.style["transition-duration"]="200ms",this.setScroll()}onArrowLeftClick(){this.translateX=this.translateX+this.arrowSpeed,this.checkArrows(),this.el.style["transition-duration"]="200ms",this.setScroll()}unBindEvents(){this.wrapEl.removeEventListener("mousedown",BX.proxy(this.onMousedown,this)),this.wrapEl.removeEventListener("touchstart",BX.proxy(this.onTouchstart,this)),this.el.removeEventListener("click",BX.proxy(this.onClick,this)),document.removeEventListener("mouseup",BX.proxy(this.onMouseup,this)),document.removeEventListener("touchend",BX.proxy(this.onTouchend,this)),document.removeEventListener("mousemove",BX.proxy(this.onMousemove,this)),document.removeEventListener("touchmove",BX.proxy(this.onTouchmove,this)),this.arrowLeft&&this.arrowLeft.removeEventListener("click",BX.proxy(this.onArrowLeftClick,this)),this.arrowRight&&this.arrowRight.removeEventListener("click",BX.proxy(this.onArrowRightClick,this)),window.removeEventListener("resize",BX.proxy(this.onResize,this))}destroy(){this.unBindEvents(),this.removeArrows()}moveAction(pageX){const walk=(pageX-this.startX)*this.scrollSpeed;this.translateX=walk,this.setScroll(),this.cancelClick||(this.cancelClick=Math.abs(walk)>this.cancelClickSpace),this.checkArrows()}startAction(pageX){this.scrollable&&(this.isDown=!0,this.cancelClick=!1,this.wrapEl.classList.add(this.activeClass),this.el.style["transition-duration"]="0ms",this.startX=pageX-this.translateX)}endAction(){this.isDown=!1,this.wrapEl.classList.remove(this.activeClass)}} 9602/* End */ 9603; 9604; /* Start:"a:4:{s:4:"full";
9604s:88:"/bitrix/components/aspro/com.banners.premier/templates/.default/script.js?17745962964640";s:6:"source";s:73:"/bitrix/components/aspro/com.banners.premier/templates/.default/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9605let progressBar = null; 9606 9607function checkNavColor(slider) { 9608 let menu_color = slider.find('.swiper-slide-active').data('color'); 9609 9610 checkNavColor.hasLongBanner = $('.header_opacity').length; 9611 if (checkNavColor.hasLongBanner) { 9612 var logoOpacity = $('body.header_opacity').length; 9613 var bLogoImg = $('body:not(.left_header_column) header .logo img').length; 9614 9615 if ( 9616 bLogoImg && 9617 logoOpacity 9618 ) { 9619 $('header .logo img').attr('src', arAsproOptions.THEME.LOGO_IMAGE); 9620 } 9621 9622 $('header').removeClass('theme-light theme-dark'); 9623 $('header').addClass('theme-' + (menu_color === 'light' ? 'dark' : 'light')); 9624 9625 if ( 9626 menu_color === 'light' && 9627 bLogoImg && 9628 logoOpacity && 9629 arAsproOptions.THEME.LOGO_IMAGE_WHITE 9630 ) { 9631 $('header .logo img').attr('src', arAsproOptions.THEME.LOGO_IMAGE_WHITE); 9632 } 9633 } 9634 9635 // swiper-pagintaion & navigation background color change 9636 if (menu_color) { 9637 slider.find('.banners-big__nav-wrap').removeClass('theme-light theme-dark'); 9638 slider.find('.banners-big__nav-wrap').addClass('theme-' + (menu_color === 'light' ? 'dark' : 'light')); 9639 } 9640 9641 var eventdata = {slider: slider}; 9642 BX.onCustomEvent('onSlide', [eventdata]); 9643} 9644 9645readyDOM(function () { 9646 $(".main-slider").mouseenter(function () { 9647 let swiper = $(this).data("swiper"); 9648 if (!$(this).hasClass("video_visible") && swiper) { 9649 if (swiper?.params.autoplay.enabled) { 9650 if (!swiper.autoplay.paused) { 9651 swiper.autoplay.pause(); 9652 } 9653 } 9654 } 9655 }); 9656 9657 $(".main-slider").mouseleave(function () { 9658 let swiper = $(this).data("swiper"); 9659 if (!$(this).hasClass("video_visible") && swiper) { 9660 if ($(this).data("swiper")?.params.autoplay.enabled) { 9661 if (swiper.autoplay.paused) { 9662 $(this).data("swiper").autoplay.resume(); 9663 } 9664 } 9665 } 9666 }); 9667}); 9668 9669BX.addCustomEvent("onSetSliderOptions", function (options) { 9670 if ("type" in options && options.type === "main_banner") { 9671 if (typeof arAsproOptions["THEME"] != "undefined") { 9672 const slideshowSpeed = Math.abs(parseInt(arAsproOptions["THEME"]["BIGBANNER_SLIDESSHOWSPEED"])); 9673 const animationSpeed = Math.abs(parseInt(arAsproOptions["THEME"]["BIGBANNER_ANIMATIONSPEED"])); 9674 9675 options.autoplay = slideshowSpeed && arAsproOptions["THEME"]["BIGBANNER_ANIMATIONTYPE"].length ? {} : false; 9676 // options.autoplay.pauseOnMouseEnter = true; 9677 // options.autoplay.disableOnInteraction = false; 9678 options.effect = arAsproOptions["THEME"]["BIGBANNER_ANIMATIONTYPE"] === "FADE" ? "fade" : "slide"; 9679 if (animationSpeed >= 0) { 9680 options.speed = animationSpeed; 9681 } 9682 if (slideshowSpeed >= 0) { 9683 options.autoplay.delay = slideshowSpeed; 9684 } 9685 /*if (arAsproOptions["THEME"]["BIGBANNER_ANIMATIONTYPE"] !== "FADE") { 9686 options.direction = 9687 arAsproOptions["THEME"]["BIGBANNER_ANIMATIONTYPE"] === "SLIDE_VERTICAL" ? "vertical" : "horizontal"; 9688 }*/ 9689 } 9690 9691 if ("CURRENT_BANNER_INDEX" in arAsproOptions && arAsproOptions["CURRENT_BANNER_INDEX"]) { 9692 currentBannerIndex = arAsproOptions["CURRENT_BANNER_INDEX"] - 1; 9693 if (currentBannerIndex < options.countSlides) { 9694 options.initialSlide = currentBannerIndex; 9695 // options.autoplay = false; 9696 } 9697 } 9698 9699 if (!options.on) { 9700 options.on = {} 9701 } 9702 9703 options.on.autoplayTimeLeft = (swiper, time, progress) => { 9704 if (progressBar) { 9705 progressBar.value = 1 - progress; 9706 } 9707 } 9708 } 9709}); 9710 9711BX.addCustomEvent("onSlideChanges", function (eventdata) { 9712 if ("slider" in eventdata && eventdata.slider) { 9713 const slider = eventdata.slider; 9714 if (slider && slider.params) { 9715 if ("type" in slider.params && slider.params.type === "main_banner") { 9716 setTimeout(function () { 9717 checkNavColor($(slider.el)); 9718 }, 100); 9719 9720 if ( 9721 slider.pagination 9722 && slider.pagination.bullets 9723 && slider.pagination.bullets[slider.activeIndex] 9724 ) { 9725 slider.pagination.el.querySelector('.swiper-pagination-bullet-active').append(progressBar); 9726 } 9727 } 9728 } 9729 } 9730}); 9731 9732BX.addCustomEvent('onInitSlider', (eventdata) => { 9733 if (!eventdata.options) return; 9734 9735 if ("type" in eventdata.options && eventdata.options.type === "main_banner") { 9736 progressBar = document.querySelector(".autoplay-progress"); 9737 9738 if ( 9739 eventdata.slider 9740 && eventdata.slider.pagination 9741 && eventdata.slider.pagination.bullets 9742 && eventdata.slider.pagination.bullets[0] 9743 ) { 9744 eventdata.slider.pagination.bullets[0].append(progressBar); 9745 } 9746 } 9747}); 9748/* End */ 9749; 9750; /* Start:"a:4:{s:4:"full";
9750s:70:"/bitrix/templates/aspro-premier/js/slider.swiper.min.js?17745963261707";s:6:"source";s:55:"/bitrix/templates/aspro-premier/js/slider.swiper.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9751function initSwiperSlider(e){const t=$((e||".slider-solution")+":not(.swiper-initialized):not(.appear-block)");t.each((function(){const e=$(this);let i={grabCursor:!0,navigation:{nextEl:e.parent().find(".swiper-button-next")[0],prevEl:e.parent().find(".swiper-button-prev")[0]},pagination:{el:e.parent().find(".swiper-pagination")[0],type:"bullets",clickable:!0}};if(i.spaceBetween=parseInt(t.css("--theme-items-gap")),e.data("pluginOptions")&&(i=deepMerge({},i,e.data("pluginOptions"))),i.thumbs&&"string"==typeof i.thumbs.swiper){const e=$(i.thumbs.swiper).data("swiper");e?i.thumbs.swiper=e:delete i.thumbs}BX.onCustomEvent("onSetSliderOptions",[i]);const n=new Swiper(this,i),s=!!i.mainSwiper&&$(i.mainSwiper).data("swiper");s&&(s.thumbs.swiper=n,!1!==i.init&&s.thumbs.init()),n.on("slideChange",(function(e){const t={slider:e};BX.onCustomEvent("onSlideChanges",[t])})),!1===i.init&&(n.on("init",(function(e){const t={slider:e,options:i};BX.onCustomEvent("onInitSlider",[t]),1===e.slides.length&&BX.onCustomEvent("onSlideChanges",[{slider:e}])})),n.init(),s&&s.thumbs.init()),e.data("swiper",n)}))}function deepMerge(){const e=[].slice.call(arguments);let t=e[0];const i=e.slice(1);return i.forEach((function(e){for(let i in e)if("object"==typeof e[i])for(let n in e[i])"object"!=typeof t[i]&&(t[i]={}),t[i][n]=e[i][n];else t[i]=e[i]})),t}BX.addCustomEvent("onAjaxChangeWidgetValue",(e=>{BX.type.isObject(e)&&"ITEMS_GAP"===e.NAME&&document.querySelectorAll(".slider-solution.swiper-initialized").forEach((e=>{BX.type.isObject(e.swiper)&&(e.swiper.params.spaceBetween=parseInt(getComputedStyle(e).getPropertyValue("--theme-items-gap")),e.swiper.update())}))})),readyDOM((function(){initSwiperSlider()})); 9752/* End */ 9753; 9754; /* Start:"a:4:{s:4:"full";s:95:"/bitrix/templates/aspro-premier/vendor/js/carousel/swiper/swiper-bundle.min.js?1774596325158093";s:6:"source";s:78:"/bitrix/templates/aspro-premier/vendor/js/carousel/swiper/swiper-bundle.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9755var Swiper=function(){"use strict";function isObject$1(obj){return null!==obj&&"object"==typeof obj&&"constructor"in obj&&obj.constructor===Object}function extend$1(target,src){void 0===target&&(target={}),void 0===src&&(src={}),Object.keys(src).forEach(key=>{void 0===target[key]?target[key]=src[key]:isObject$1(src[key])&&isObject$1(target[key])&&Object.keys(src[key]).length>0&&extend$1(target[key],src[key])})}const ssrDocument={body:{},addEventListener(){},removeEventListener(){},activeElement:{blur(){},nodeName:""},querySelector:()=>null,querySelectorAll:()=>[],getElementById:()=>null,createEvent:()=>({initEvent(){}}),createElement:()=>({children:[],childNodes:[],style:{},setAttribute(){},getElementsByTagName:()=>[]}),createElementNS:()=>({}),importNode:()=>null,location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function getDocument(){const doc="undefined"!=typeof document?document:{};return extend$1(doc,ssrDocument),doc}const ssrWindow={document:ssrDocument,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState(){},pushState(){},go(){},back(){}},CustomEvent:function CustomEvent(){return this},addEventListener(){},removeEventListener(){},getComputedStyle:()=>({getPropertyValue:()=>""}),Image(){},Date(){},screen:{},setTimeout(){},clearTimeout(){},matchMedia:()=>({}),requestAnimationFrame:callback=>"undefined"==typeof setTimeout?(callback(),null):setTimeout(callback,0),cancelAnimationFrame(id){"undefined"!=typeof setTimeout&&clearTimeout(id)}};function getWindow(){const win="undefined"!=typeof window?window:{};return extend$1(win,ssrWindow),win}function classesToTokens(classes){return void 0===classes&&(classes=""),classes.trim().split(" ").filter(c=>!!c.trim())}function deleteProps(obj){const object=obj;Object.keys(object).forEach(key=>{try{object[key]=null}catch(e){}try{delete object[key]}catch(e){}})}function nextTick(callback,delay){return void 0===delay&&(delay=0),setTimeout(callback,delay)}function now(){return Date.now()}function getComputedStyle$1(el){const window=getWindow();let style;return window.getComputedStyle&&(style=window.getComputedStyle(el,null)),!style&&el.currentStyle&&(style=el.currentStyle),style||(style=el.style),style}function getTranslate(el,axis){void 0===axis&&(axis="x");const window=getWindow();let matrix,curTransform,transformMatrix;const curStyle=getComputedStyle$1(el);return window.WebKitCSSMatrix?(curTransform=curStyle.transform||curStyle.webkitTransform,curTransform.split(",").length>6&&(curTransform=curTransform.split(", ").map(a=>a.replace(",",".")).join(", ")),transformMatrix=new window.WebKitCSSMatrix("none"===curTransform?"":curTransform)):(transformMatrix=curStyle.MozTransform||curStyle.OTransform||curStyle.MsTransform||curStyle.msTransform||curStyle.transform||curStyle.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),matrix=transformMatrix.toString().split(",")),"x"===axis&&(curTransform=window.WebKitCSSMatrix?transformMatrix.m41:16===matrix.length?parseFloat(matrix[12]):parseFloat(matrix[4])),"y"===axis&&(curTransform=window.WebKitCSSMatrix?transformMatrix.m42:16===matrix.length?parseFloat(matrix[13]):parseFloat(matrix[5])),curTransform||0}function isObject(o){return"object"==typeof o&&null!==o&&o.constructor&&"Object"===Object.prototype.toString.call(o).slice(8,-1)}function isNode(node){return"undefined"!=typeof window&&void 0!==window.HTMLElement?node instanceof HTMLElement:node&&(1===node.nodeType||11===node.nodeType)}function extend(){const to=Object(arguments.length<=0?void 0:arguments[0]),noExtend=["__proto__","constructor","prototype"];for(let i=1;i<arguments.length;i+=1){const nextSource=i<0||arguments.length<=i?void 0:arguments[i];if(null!=nextSource&&!isNode(nextSource)){const keysArray=Object.keys(Object(nextSource)).filter(key=>noExtend.indexOf(key)<0);for(let nextIndex=0,len=keysArray.length;nextIndex<len;nextIndex+=1){const nextKey=keysArray[nextIndex],desc=Object.getOwnPropertyDescriptor(nextSource,nextKey);void 0!==desc&&desc.enumerable&&(isObject(to[nextKey])&&isObject(nextSource[nextKey])?nextSource[nextKey].__swiper__?to[nextKey]=nextSource[nextKey]:extend(to[nextKey],nextSource[nextKey]):!isObject(to[nextKey])&&isObject(nextSource[nextKey])?(to[nextKey]={},nextSource[nextKey].__swiper__?to[nextKey]=nextSource[nextKey]:extend(to[nextKey],nextSource[nextKey])):to[nextKey]=nextSource[nextKey])}}}return to}function setCSSProperty(el,varName,varValue){el.style.setProperty(varName,varValue)}function animateCSSModeScroll(_ref){let{swiper:swiper,targetPosition:targetPosition,side:side}=_ref;const window=getWindow(),startPosition=-swiper.translate;let startTime=null,time;const duration=swiper.params.speed;swiper.wrapperEl.style.scrollSnapType="none",window.cancelAnimationFrame(swiper.cssModeFrameID);const dir=targetPosition>startPosition?"next":"prev",isOutOfBound=(current,target)=>"next"===dir&¤t>=target||"prev"===dir&¤t<=target,animate=()=>{time=(new Date).getTime(),null===startTime&&(startTime=time);const progress=Math.max(Math.min((time-startTime)/duration,1),0),easeProgress=.5-Math.cos(progress*Math.PI)/2;let currentPosition=startPosition+easeProgress*(targetPosition-startPosition);if(isOutOfBound(currentPosition,targetPosition)&&(currentPosition=targetPosition),swiper.wrapperEl.scrollTo({[side]:currentPosition}),isOutOfBound(currentPosition,targetPosition))return swiper.wrapperEl.style.overflow="hidden",swiper.wrapperEl.style.scrollSnapType="",setTimeout(()=>{swiper.wrapperEl.style.overflow="",swiper.wrapperEl.scrollTo({[side]:currentPosition})}),void window.cancelAnimationFrame(swiper.cssModeFrameID);swiper.cssModeFrameID=window.requestAnimationFrame(animate)};animate()}function getSlideTransformEl(slideEl){return slideEl.querySelector(".swiper-slide-transform")||slideEl.shadowRoot&&slideEl.shadowRoot.querySelector(".swiper-slide-transform")||slideEl}function elementChildren(element,selector){return void 0===selector&&(selector=""),[...element.children].filter(el=>el.matches(selector))}function showWarning(text){try{return void console.warn(text)}catch(err){}}function createElement(tag,classes){void 0===classes&&(classes=[]);const el=document.createElement(tag);
9755return el.classList.add(...Array.isArray(classes)?classes:classesToTokens(classes)),el}function elementOffset(el){const window=getWindow(),document=getDocument(),box=el.getBoundingClientRect(),body=document.body,clientTop=el.clientTop||body.clientTop||0,clientLeft=el.clientLeft||body.clientLeft||0,scrollTop=el===window?window.scrollY:el.scrollTop,scrollLeft=el===window?window.scrollX:el.scrollLeft;return{top:box.top+scrollTop-clientTop,left:box.left+scrollLeft-clientLeft}}function elementPrevAll(el,selector){const prevEls=[];for(;el.previousElementSibling;){const prev=el.previousElementSibling;selector?prev.matches(selector)&&prevEls.push(prev):prevEls.push(prev),el=prev}return prevEls}function elementNextAll(el,selector){const nextEls=[];for(;el.nextElementSibling;){const next=el.nextElementSibling;selector?next.matches(selector)&&nextEls.push(next):nextEls.push(next),el=next}return nextEls}function elementStyle(el,prop){const window=getWindow();return window.getComputedStyle(el,null).getPropertyValue(prop)}function elementIndex(el){let child=el,i;if(child){for(i=0;null!==(child=child.previousSibling);)1===child.nodeType&&(i+=1);return i}}function elementParents(el,selector){const parents=[];let parent=el.parentElement;for(;parent;)selector?parent.matches(selector)&&parents.push(parent):parents.push(parent),parent=parent.parentElement;return parents}function elementTransitionEnd(el,callback){function fireCallBack(e){e.target===el&&(callback.call(el,e),el.removeEventListener("transitionend",fireCallBack))}callback&&el.addEventListener("transitionend",fireCallBack)}function elementOuterSize(el,size,includeMargins){const window=getWindow();return includeMargins?el["width"===size?"offsetWidth":"offsetHeight"]+parseFloat(window.getComputedStyle(el,null).getPropertyValue("width"===size?"margin-right":"margin-top"))+parseFloat(window.getComputedStyle(el,null).getPropertyValue("width"===size?"margin-left":"margin-bottom")):el.offsetWidth}let support,deviceCached,browser;function calcSupport(){const window=getWindow(),document=getDocument();return{smoothScroll:document.documentElement&&document.documentElement.style&&"scrollBehavior"in document.documentElement.style,touch:!!("ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch)}}function getSupport(){return support||(support=calcSupport()),support}function calcDevice(_temp){let{userAgent:userAgent}=void 0===_temp?{}:_temp;const support=getSupport(),window=getWindow(),platform=window.navigator.platform,ua=userAgent||window.navigator.userAgent,device={ios:!1,android:!1},screenWidth=window.screen.width,screenHeight=window.screen.height,android=ua.match(/(Android);?[\s\/]+([\d.]+)?/);let ipad=ua.match(/(iPad).*OS\s([\d_]+)/);const ipod=ua.match(/(iPod)(.*OS\s([\d_]+))?/),iphone=!ipad&&ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/),windows="Win32"===platform;let macos="MacIntel"===platform;const iPadScreens=["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"];return!ipad&&macos&&support.touch&&iPadScreens.indexOf(`${screenWidth}x${screenHeight}`)>=0&&(ipad=ua.match(/(Version)\/([\d.]+)/),ipad||(ipad=[0,1,"13_0_0"]),macos=!1),android&&!windows&&(device.os="android",device.android=!0),(ipad||iphone||ipod)&&(device.os="ios",device.ios=!0),device}function getDevice(overrides){return void 0===overrides&&(overrides={}),deviceCached||(deviceCached=calcDevice(overrides)),deviceCached}function calcBrowser(){const window=getWindow();let needPerspectiveFix=!1;function isSafari(){const ua=window.navigator.userAgent.toLowerCase();return ua.indexOf("safari")>=0&&ua.indexOf("chrome")<0&&ua.indexOf("android")<0}if(isSafari()){const ua=String(window.navigator.userAgent);if(ua.includes("Version/")){const[major,minor]=ua.split("Version/")[1].split(" ")[0].split(".").map(num=>Number(num));needPerspectiveFix=major<16||16===major&&minor<2}}return{isSafari:needPerspectiveFix||isSafari(),needPerspectiveFix:needPerspectiveFix,isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent)}}function getBrowser(){return browser||(browser=calcBrowser()),browser}function Resize(_ref){let{swiper:swiper,on:on,emit:emit}=_ref;const window=getWindow();let observer=null,animationFrame=null;const resizeHandler=()=>{swiper&&!swiper.destroyed&&swiper.initialized&&(emit("beforeResize"),emit("resize"))},createObserver=()=>{swiper&&!swiper.destroyed&&swiper.initialized&&(observer=new ResizeObserver(entries=>{animationFrame=window.requestAnimationFrame(()=>{const{width:width,height:height}=swiper;let newWidth=width,newHeight=height;
9755entries.forEach(_ref2=>{let{contentBoxSize:contentBoxSize,contentRect:contentRect,target:target}=_ref2;target&&target!==swiper.el||(newWidth=contentRect?contentRect.width:(contentBoxSize[0]||contentBoxSize).inlineSize,newHeight=contentRect?contentRect.height:(contentBoxSize[0]||contentBoxSize).blockSize)}),newWidth===width&&newHeight===height||resizeHandler()})}),observer.observe(swiper.el))},removeObserver=()=>{animationFrame&&window.cancelAnimationFrame(animationFrame),observer&&observer.unobserve&&swiper.el&&(observer.unobserve(swiper.el),observer=null)},orientationChangeHandler=()=>{swiper&&!swiper.destroyed&&swiper.initialized&&emit("orientationchange")};on("init",()=>{swiper.params.resizeObserver&&void 0!==window.ResizeObserver?createObserver():(window.addEventListener("resize",resizeHandler),window.addEventListener("orientationchange",orientationChangeHandler))}),on("destroy",()=>{removeObserver(),window.removeEventListener("resize",resizeHandler),window.removeEventListener("orientationchange",orientationChangeHandler)})}function Observer(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit}=_ref;const observers=[],window=getWindow(),attach=function(target,options){void 0===options&&(options={});const ObserverFunc=window.MutationObserver||window.WebkitMutationObserver,observer=new ObserverFunc(mutations=>{if(swiper.__preventObserver__)return;if(1===mutations.length)return void emit("observerUpdate",mutations[0]);const observerUpdate=function observerUpdate(){emit("observerUpdate",mutations[0])};window.requestAnimationFrame?window.requestAnimationFrame(observerUpdate):window.setTimeout(observerUpdate,0)});observer.observe(target,{attributes:void 0===options.attributes||options.attributes,childList:void 0===options.childList||options.childList,characterData:void 0===options.characterData||options.characterData}),observers.push(observer)},init=()=>{if(swiper.params.observer){if(swiper.params.observeParents){const containerParents=elementParents(swiper.hostEl);for(let i=0;i<containerParents.length;i+=1)attach(containerParents[i])}attach(swiper.hostEl,{childList:swiper.params.observeSlideChildren}),attach(swiper.wrapperEl,{attributes:!1})}},destroy=()=>{observers.forEach(observer=>{observer.disconnect()}),observers.splice(0,observers.length)};extendParams({observer:!1,observeParents:!1,observeSlideChildren:!1}),on("init",init),on("destroy",destroy)}var eventsEmitter={on(events,handler,priority){const self=this;if(!self.eventsListeners||self.destroyed)return self;if("function"!=typeof handler)return self;const method=priority?"unshift":"push";return events.split(" ").forEach(event=>{self.eventsListeners[event]||(self.eventsListeners[event]=[]),self.eventsListeners[event][method](handler)}),self},once(events,handler,priority){const self=this;if(!self.eventsListeners||self.destroyed)return self;if("function"!=typeof handler)return self;function onceHandler(){self.off(events,onceHandler),onceHandler.__emitterProxy&&delete onceHandler.__emitterProxy;for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];handler.apply(self,args)}return onceHandler.__emitterProxy=handler,self.on(events,onceHandler,priority)},onAny(handler,priority){const self=this;if(!self.eventsListeners||self.destroyed)return self;if("function"!=typeof handler)return self;const method=priority?"unshift":"push";return self.eventsAnyListeners.indexOf(handler)<0&&self.eventsAnyListeners[method](handler),self},offAny(handler){const self=this;if(!self.eventsListeners||self.destroyed)return self;if(!self.eventsAnyListeners)return self;const index=self.eventsAnyListeners.indexOf(handler);return index>=0&&self.eventsAnyListeners.splice(index,1),self},off(events,handler){const self=this;return!self.eventsListeners||self.destroyed?self:self.eventsListeners?(events.split(" ").forEach(event=>{void 0===handler?self.eventsListeners[event]=[]:self.eventsListeners[event]&&self.eventsListeners[event].forEach((eventHandler,index)=>{(eventHandler===handler||eventHandler.__emitterProxy&&eventHandler.__emitterProxy===handler)&&self.eventsListeners[event].splice(index,1)})}),self):self}
9755,emit(){const self=this;if(!self.eventsListeners||self.destroyed)return self;if(!self.eventsListeners)return self;let events,data,context;for(var _len2=arguments.length,args=new Array(_len2),_key2=0;_key2<_len2;_key2++)args[_key2]=arguments[_key2];"string"==typeof args[0]||Array.isArray(args[0])?(events=args[0],data=args.slice(1,args.length),context=self):(events=args[0].events,data=args[0].data,context=args[0].context||self),data.unshift(context);const eventsArray=Array.isArray(events)?events:events.split(" ");return eventsArray.forEach(event=>{self.eventsAnyListeners&&self.eventsAnyListeners.length&&self.eventsAnyListeners.forEach(eventHandler=>{eventHandler.apply(context,[event,...data])}),self.eventsListeners&&self.eventsListeners[event]&&self.eventsListeners[event].forEach(eventHandler=>{eventHandler.apply(context,data)})}),self}};function updateSize(){const swiper=this;let width,height;const el=swiper.el;width=void 0!==swiper.params.width&&null!==swiper.params.width?swiper.params.width:el.clientWidth,height=void 0!==swiper.params.height&&null!==swiper.params.height?swiper.params.height:el.clientHeight,0===width&&swiper.isHorizontal()||0===height&&swiper.isVertical()||(width=width-parseInt(elementStyle(el,"padding-left")||0,10)-parseInt(elementStyle(el,"padding-right")||0,10),height=height-parseInt(elementStyle(el,"padding-top")||0,10)-parseInt(elementStyle(el,"padding-bottom")||0,10),Number.isNaN(width)&&(width=0),Number.isNaN(height)&&(height=0),Object.assign(swiper,{width:width,height:height,size:swiper.isHorizontal()?width:height}))}function updateSlides(){const swiper=this;function getDirectionPropertyValue(node,label){return parseFloat(node.getPropertyValue(swiper.getDirectionLabel(label))||0)}const params=swiper.params,{wrapperEl:wrapperEl,slidesEl:slidesEl,size:swiperSize,rtlTranslate:rtl,wrongRTL:wrongRTL}=swiper,isVirtual=swiper.virtual&¶ms.virtual.enabled,previousSlidesLength=isVirtual?swiper.virtual.slides.length:swiper.slides.length,slides=elementChildren(slidesEl,`.${swiper.params.slideClass}, swiper-slide`),slidesLength=isVirtual?swiper.virtual.slides.length:slides.length;let snapGrid=[];const slidesGrid=[],slidesSizesGrid=[];let offsetBefore=params.slidesOffsetBefore;"function"==typeof offsetBefore&&(offsetBefore=params.slidesOffsetBefore.call(swiper));let offsetAfter=params.slidesOffsetAfter;"function"==typeof offsetAfter&&(offsetAfter=params.slidesOffsetAfter.call(swiper));const previousSnapGridLength=swiper.snapGrid.length,previousSlidesGridLength=swiper.slidesGrid.length;let spaceBetween=params.spaceBetween,slidePosition=-offsetBefore,prevSlideSize=0,index=0;if(void 0===swiperSize)return;"string"==typeof spaceBetween&&spaceBetween.indexOf("%")>=0?spaceBetween=parseFloat(spaceBetween.replace("%",""))/100*swiperSize:"string"==typeof spaceBetween&&(spaceBetween=parseFloat(spaceBetween)),swiper.virtualSize=-spaceBetween,slides.forEach(sli
vendor: 4,090 bytes, line 9755
9755deEl=>{rtl?slideEl.style.marginLeft="":slideEl.style.marginRight="",slideEl.style.marginBottom="",slideEl.style.marginTop=""}),params.centeredSlides&¶ms.cssMode&&(setCSSProperty(wrapperEl,"--swiper-centered-offset-before",""),setCSSProperty(wrapperEl,"--swiper-centered-offset-after",""));const gridEnabled=params.grid&¶ms.grid.rows>1&&swiper.grid;let slideSize;gridEnabled?swiper.grid.initSlides(slides):swiper.grid&&swiper.grid.unsetSlides();const shouldResetSlideSize="auto"===params.slidesPerView&¶ms.breakpoints&&Object.keys(params.breakpoints).filter(key=>void 0!==params.breakpoints[key].slidesPerView).length>0;for(let i=0;i<slidesLength;i+=1){let slide;if(slideSize=0,slides[i]&&(slide=slides[i]),gridEnabled&&swiper.grid.updateSlide(i,slide,slides),!slides[i]||"none"!==elementStyle(slide,"display")){if("auto"===params.slidesPerView){shouldResetSlideSize&&(slides[i].style[swiper.getDirectionLabel("width")]="");const slideStyles=getComputedStyle(slide),currentTransform=slide.style.transform,currentWebKitTransform=slide.style.webkitTransform;if(currentTransform&&(slide.style.transform="none"),currentWebKitTransform&&(slide.style.webkitTransform="none"),params.roundLengths)slideSize=swiper.isHorizontal()?elementOuterSize(slide,"width",!0):elementOuterSize(slide,"height",!0);else{const width=getDirectionPropertyValue(slideStyles,"width"),paddingLeft=getDirectionPropertyValue(slideStyles,"padding-left"),paddingRight=getDirectionPropertyValue(slideStyles,"padding-right"),marginLeft=getDirectionPropertyValue(slideStyles,"margin-left"),marginRight=getDirectionPropertyValue(slideStyles,"margin-right"),boxSizing=slideStyles.getPropertyValue("box-sizing");if(boxSizing&&"border-box"===boxSizing)slideSize=width+marginLeft+marginRight;else{const{clientWidth:clientWidth,offsetWidth:offsetWidth}=slide;slideSize=width+paddingLeft+paddingRight+marginLeft+marginRight+(offsetWidth-clientWidth)}}currentTransform&&(slide.style.transform=currentTransform),currentWebKitTransform&&(slide.style.webkitTransform=currentWebKitTransform),params.roundLengths&&(slideSize=Math.floor(slideSize))}else slideSize=(swiperSize-(params.slidesPerView-1)*spaceBetween)/params.slidesPerView,params.roundLengths&&(slideSize=Math.floor(slideSize)),slides[i]&&(slides[i].style[swiper.getDirectionLabel("width")]=`${slideSize}px`);slides[i]&&(slides[i].swiperSlideSize=slideSize),slidesSizesGrid.push(slideSize),params.centeredSlides?(slidePosition=slidePosition+slideSize/2+prevSlideSize/2+spaceBetween,0===prevSlideSize&&0!==i&&(slidePosition=slidePosition-swiperSize/2-spaceBetween),0===i&&(slidePosition=slidePosition-swiperSize/2-spaceBetween),Math.abs(slidePosition)<.001&&(slidePosition=0),params.roundLengths&&(slidePosition=Math.floor(slidePosition)),index%params.slidesPerGroup==0&&snapGrid.push(slidePosition),slidesGrid.push(slidePosition)):(params.roundLengths&&(slidePosition=Math.floor(slidePosition)),(index-Math.min(swiper.params.slidesPerGroupSkip,index))%swiper.params.slidesPerGroup==0&&snapGrid.push(slidePosition),slidesGrid.push(slidePosition),slidePosition=slidePosition+slideSize+spaceBetween),swiper.virtualSize+=slideSize+spaceBetween,prevSlideSize=slideSize,index+=1}}if(swiper.virtualSize=Math.max(swiper.virtualSize,swiperSize)+offsetAfter,rtl&&wrongRTL&&("slide"===params.effect||"coverflow"===params.effect)&&(wrapperEl.style.width=`${swiper.virtualSize+spaceBetween}px`),params.setWrapperSize&&(wrapperEl.style[swiper.getDirectionLabel("width")]=`${swiper.virtualSize+spaceBetween}px`),gridEnabled&&swiper.grid.updateWrapperSize(slideSize,snapGrid),!params.centeredSlides){const newSlidesGrid=[];for(let i=0;i<snapGrid.length;i+=1){let slidesGridItem=snapGrid[i];params.roundLengths&&(slidesGridItem=Math.floor(slidesGridItem)),snapGrid[i]<=swiper.virtualSize-swiperSize&&newSlidesGrid.push(slidesGridItem)}snapGrid=newSlidesGrid,Math.floor(swiper.virtualSize-swiperSize)-Math.floor(snapGrid[snapGrid.length-1])>1&&snapGrid.push(swiper.virtualSize-swiperSize)}if(isVirtual&¶ms.loop){const size=slidesSizesGrid[0]+spaceBetween;if(params.slidesPerGroup>
97551){const groups=Math.ceil((swiper.virtual.slidesBefore+swiper.virtual.slidesAfter)/params.slidesPerGroup),groupSize=size*params.slidesPerGroup;for(let i=0;i<groups;i+=1)snapGrid.push(snapGrid[snapGrid.length-1]+groupSize)}for(let i=0;i<swiper.virtual.slidesBefore+swiper.virtual.slidesAfter;i+=1)1===params.slidesPerGroup&&snapGrid.push(snapGrid[snapGrid.length-1]+size),slidesGrid.push(slidesGrid[slidesGrid.length-1]+size),swiper.virtualSize+=size}if(0===snapGrid.length&&(snapGrid=[0]),0!==spaceBetween){const key=swiper.isHorizontal()&&rtl?"marginLeft":swiper.getDirectionLabel("marginRight");slides.filter((_,slideIndex)=>!(params.cssMode&&!params.loop)||slideIndex!==slides.length-1).forEach(slideEl=>{slideEl.style[key]=`${spaceBetween}px`})}if(params.centeredSlides&¶ms.centeredSlidesBounds){let allSlidesSize=0;slidesSizesGrid.forEach(slideSizeValue=>{allSlidesSize+=slideSizeValue+(spaceBetween||0)}),allSlidesSize-=spaceBetween;const maxSnap=allSlidesSize-swiperSize;snapGrid=snapGrid.map(snap=>snap<=0?-offsetBefore:snap>maxSnap?maxSnap+offsetAfter:snap)}if(params.centerInsufficientSlides){let allSlidesSize=0;
9755if(slidesSizesGrid.forEach(slideSizeValue=>{allSlidesSize+=slideSizeValue+(spaceBetween||0)}),allSlidesSize-=spaceBetween,allSlidesSize<swiperSize){const allSlidesOffset=(swiperSize-allSlidesSize)/2;snapGrid.forEach((snap,snapIndex)=>{snapGrid[snapIndex]=snap-allSlidesOffset}),slidesGrid.forEach((snap,snapIndex)=>{slidesGrid[snapIndex]=snap+allSlidesOffset})}}if(Object.assign(swiper,{slides:slides,snapGrid:snapGrid,slidesGrid:slidesGrid,slidesSizesGrid:slidesSizesGrid}),params.centeredSlides&¶ms.cssMode&&!params.centeredSlidesBounds){setCSSProperty(wrapperEl,"--swiper-centered-offset-before",`${-snapGrid[0]}px`),setCSSProperty(wrapperEl,"--swiper-centered-offset-after",`${swiper.size/2-slidesSizesGrid[slidesSizesGrid.length-1]/2}px`);const addToSnapGrid=-swiper.snapGrid[0],addToSlidesGrid=-swiper.slidesGrid[0];swiper.snapGrid=swiper.snapGrid.map(v=>v+addToSnapGrid),swiper.slidesGrid=swiper.slidesGrid.map(v=>v+addToSlidesGrid)}if(slidesLength!==previousSlidesLength&&swiper.emit("slidesLengthChange"),snapGrid.length!==previousSnapGridLength&&(swiper.params.watchOverflow&&swiper.checkOverflow(),swiper.emit("snapGridLengthChange")),slidesGrid.length!==previousSlidesGridLength&&swiper.emit("slidesGridLengthChange"),params.watchSlidesProgress&&swiper.updateSlidesOffset(),swiper.emit("slidesUpdated"),!(isVirtual||params.cssMode||"slide"!==params.effect&&"fade"!==params.effect)){const backFaceHiddenClass=`${params.containerModifierClass}backface-hidden`,hasClassBackfaceClassAdded=swiper.el.classList.contains(backFaceHiddenClass);slidesLength<=params.maxBackfaceHiddenSlides?hasClassBackfaceClassAdded||swiper.el.classList.add(backFaceHiddenClass):hasClassBackfaceClassAdded&&swiper.el.classList.remove(backFaceHiddenClass)}}function updateAutoHeight(speed){const swiper=this,activeSlides=[],isVirtual=swiper.virtual&&swiper.params.virtual.enabled;let newHeight=0,i;"number"==typeof speed?swiper.setTransition(speed):!0===speed&&swiper.setTransition(swiper.params.speed);const getSlideByIndex=index=>isVirtual?swiper.slides[swiper.getSlideIndexByData(index)]:swiper.slides[index];if("auto"!==swiper.params.slidesPerView&&swiper.params.slidesPerView>1)if(swiper.params.centeredSlides)(swiper.visibleSlides||[]).forEach(sli
9755de=>{activeSlides.push(slide)});else for(i=0;i<Math.ceil(swiper.params.slidesPerView);i+=1){const index=swiper.activeIndex+i;if(index>swiper.slides.length&&!isVirtual)break;activeSlides.push(getSlideByIndex(index))}else activeSlides.push(getSlideByIndex(swiper.activeIndex));for(i=0;i<activeSlides.length;i+=1)if(void 0!==activeSlides[i]){const height=activeSlides[i].offsetHeight;newHeight=height>newHeight?height:newHeight}(newHeight||0===newHeight)&&(swiper.wrapperEl.style.height=`${newHeight}px`)}function updateSlidesOffset(){const swiper=this,slides=swiper.slides,minusOffset=swiper.isElement?swiper.isHorizontal()?swiper.wrapperEl.offsetLeft:swiper.wrapperEl.offsetTop:0;for(let i=0;i<slides.length;i+=1)slides[i].swiperSlideOffset=(swiper.isHorizontal()?slides[i].offsetLeft:slides[i].offsetTop)-minusOffset-swiper.cssOverflowAdjustment()}function updateSlidesProgress(translate){void 0===translate&&(translate=this&&this.translate||0);const swiper=this,params=swiper.params,{slides:slides,rtlTranslate:rtl,snapGrid:snapGrid}=swiper;
vendor: 3,764 bytes, line 9755
9755if(0===slides.length)return;void 0===slides[0].swiperSlideOffset&&swiper.updateSlidesOffset();let offsetCenter=-translate;rtl&&(offsetCenter=translate),slides.forEach(slideEl=>{slideEl.classList.remove(params.slideVisibleClass,params.slideFullyVisibleClass)}),swiper.visibleSlidesIndexes=[],swiper.visibleSlides=[];let spaceBetween=params.spaceBetween;"string"==typeof spaceBetween&&spaceBetween.indexOf("%")>=0?spaceBetween=parseFloat(spaceBetween.replace("%",""))/100*swiper.size:"string"==typeof spaceBetween&&(spaceBetween=parseFloat(spaceBetween));for(let i=0;i<slides.length;i+=1){const slide=slides[i];let slideOffset=slide.swiperSlideOffset;params.cssMode&¶ms.centeredSlides&&(slideOffset-=slides[0].swiperSlideOffset);const slideProgress=(offsetCenter+(params.centeredSlides?swiper.minTranslate():0)-slideOffset)/(slide.swiperSlideSize+spaceBetween),originalSlideProgress=(offsetCenter-snapGrid[0]+(params.centeredSlides?swiper.minTranslate():0)-slideOffset)/(slide.swiperSlideSize+spaceBetween),slideBefore=-(offsetCenter-slideOffset),slideAfter=slideBefore+swiper.slidesSizesGrid[i],isFullyVisible=slideBefore>=0&&slideBefore<=swiper.size-swiper.slidesSizesGrid[i],isVisible=slideBefore>=0&&slideBefore<swiper.size-1||slideAfter>1&&slideAfter<=swiper.size||slideBefore<=0&&slideAfter>=swiper.size;isVisible&&(swiper.visibleSlides.push(slide),swiper.visibleSlidesIndexes.push(i),slides[i].classList.add(params.slideVisibleClass)),isFullyVisible&&slides[i].classList.add(params.slideFullyVisibleClass),slide.progress=rtl?-slideProgress:slideProgress,slide.originalProgress=rtl?-originalSlideProgress:originalSlideProgress}}function updateProgress(translate){const swiper=this;if(void 0===translate){const multiplier=swiper.rtlTranslate?-1:1;translate=swiper&&swiper.translate&&swiper.translate*multiplier||0}const params=swiper.params,translatesDiff=swiper.maxTranslate()-swiper.minTranslate();let{progress:progress,isBeginning:isBeginning,isEnd:isEnd,progressLoop:progressLoop}=swiper;const wasBeginning=isBeginning,wasEnd=isEnd;if(0===translatesDiff)progress=0,isBeginning=!0,isEnd=!0;else{progress=(translate-swiper.minTranslate())/translatesDiff;const isBeginningRounded=Math.abs(translate-swiper.minTranslate())<1,isEndRounded=Math.abs(translate-swiper.maxTranslate())<1;isBeginning=isBeginningRounded||progress<=0,isEnd=isEndRounded||progress>=1,isBeginningRounded&&(progress=0),isEndRounded&&(progress=1)}if(params.loop){const firstSlideIndex=swiper.getSlideIndexByData(0),lastSlideIndex=swiper.getSlideIndexByData(swiper.slides.length-1),firstSlideTranslate=swiper.slidesGrid[firstSlideIndex],lastSlideTranslate=swiper.slidesGrid[lastSlideIndex],translateMax=swiper.slidesGrid[swiper.slidesGrid.length-1],translateAbs=Math.abs(translate);progressLoop=translateAbs>=firstSlideTranslate?(translateAbs-firstSlideTranslate)/translateMax:(translateAbs+translateMax-lastSlideTranslate)/translateMax,progressLoop>1&&(progressLoop-=1)}Object.assign(swiper,{progress:progress,progressLoop:progressLoop,isBeginning:isBeginning,isEnd:isEnd}),(params.watchSlidesProgress||params.centeredSlides&¶ms.autoHeight)&&swiper.updateSlidesProgress(translate),isBeginning&&!wasBeginning&&swiper.emit("reachBeginning toEdge"),isEnd&&!wasEnd&&swiper.emit("reachEnd toEdge"),(wasBeginning&&!isBeginning||wasEnd&&!isEnd)&&swiper.emit("fromEdge"),swiper.emit("progress",progress)}function updateSlidesClasses(){const swiper=this,{slides:slides,params:params,slidesEl:slidesEl,activeIndex:activeIndex}=swiper,isVirtual=swiper.virtual&¶ms.virtual.enabled,gridEnabled=swiper.grid&¶ms.grid&¶ms.grid.rows>1,getFilteredSlide=selector=>elementChildren(slidesEl,`.${params.slideClass}${selector}, swiper-slide${selector}`)[0];let activeSlide,prevSlide,nextSlide;
9755if(slides.forEach(slideEl=>{slideEl.classList.remove(params.slideActiveClass,params.slideNextClass,params.slidePrevClass)}),isVirtual)if(params.loop){let slideIndex=activeIndex-swiper.virtual.slidesBefore;slideIndex<0&&(slideIndex=swiper.virtual.slides.length+slideIndex),slideIndex>=swiper.virtual.slides.length&&(slideIndex-=swiper.virtual.slides.length),activeSlide=getFilteredSlide(`[data-swiper-slide-index="${slideIndex}"]`)}else activeSlide=getFilteredSlide(`[data-swiper-slide-index="${activeIndex}"]`);else gridEnabled?(activeSlide=slides.filter(slideEl=>slideEl.column===activeIndex)[0],nextSlide=slides.filter(slideEl=>slideEl.column===activeIndex+1)[0],prevSlide=slides.filter(slideEl=>slideEl.column===activeIndex-1)[0]):activeSlide=slides[activeIndex];activeSlide&&(activeSlide.classList.add(params.slideActiveClass),gridEnabled?(nextSlide&&nextSlide.classList.add(params.slideNextClass),prevSlide&&prevSlide.classList.add(params.slidePrevClass)):(nextSlide=elementNextAll(activeSlide,`.${params.slideClass}, swiper-slide`)[0],params.loop&&!nextSlide&&(nextSlide=slides[0]),nextSlide&&nextSlide.classList.add(params.slideNextClass),prevSlide=elementPrevAll(activeSlide,`.${params.slideClass}, swiper-slide`)[0],params.loop&&0===!prevSlide&&(prevSlide=slides[slides.length-1]),prevSlide&&prevSlide.classList.add(params.slidePrevClass))),swiper.emitSlidesClasses()}const processLazyPreloader=(swiper,imageEl)=>{if(!swiper||swiper.destroyed||!swiper.params)return;const slideSelector=()=>swiper.isElement?"swiper-slide":`.${swiper.params.slideClass}`,slideEl=imageEl.closest(slideSelector());if(slideEl){let lazyEl=slideEl.querySelector(`.${swiper.params.lazyPreloaderClass}`);!lazyEl&&swiper.isElement&&(slideEl.shadowRoot?lazyEl=slideEl.shadowRoot.querySelector(`.${swiper.params.lazyPreloaderClass}`):requestAnimationFrame(()=>{slideEl.shadowRoot&&(lazyEl=slideEl.shadowRoot.querySelector(`.${swiper.params.lazyPreloaderClass}`),lazyEl&&lazyEl.remove())})),lazyEl&&lazyEl.remove()}},unlazy=(swiper,index)=>{if(!swiper.slides[index])return;const imageEl=swiper.slides[index].querySelector('[loading="lazy"]');imageEl&&imageEl.removeAttribute("loading")},preload=swiper=>{if(!swiper||swiper.destroyed||!swiper.params)return;let amount=swiper.params.lazyPreloadPrevNext;const len=swiper.slides.length;if(!len||!amount||amount<0)return;amount=Math.min(amount,len);const slidesPerView="auto"===swiper.params.slidesPerView?swiper.slidesPerViewDynamic():Math.ceil(swiper.params.slidesPerView),activeIndex=swiper.activeIndex;if(swiper.params.grid&&swiper.params.grid.rows>1){const activeColumn=activeIndex,preloadColumns=[activeColumn-amount];return preloadColumns.push(...Array.from({length:amount}).map((_,i)=>activeColumn+slidesPerView+i)),void swiper.slides.forEach((slideEl,i)=>{preloadColumns.includes(slideEl.column)&&unlazy(swiper,i)})}const slideIndexLastInView=activeIndex+slidesPerView-1;if(swiper.params.rewind||swiper.params.loop)for(let i=activeIndex-amount;i<=slideIndexLastInView+amount;i+=1){const realIndex=(i%len+len)%len;(realIndex<activeIndex||realIndex>slideIndexLastInView)&&unlazy(swiper,realIndex)}else for(let i=Math.max(activeIndex-amount,0);i<=Math.min(slideIndexLastInView+amount,len-1);i+=1)i!==activeIndex&&(i>slideIndexLastInView||i<activeIndex)&&unlazy(swiper,i)};function getActiveIndexByTranslate(swiper){const{slidesGrid:slidesGrid,params:params}=swiper,translate=swiper.rtlTranslate?swiper.translate:-swiper.translate;let activeIndex;for(let i=0;i<slidesGrid.length;i+=1)void 0!==slidesGrid[i+1]?translate>=slidesGrid[i]&&translate<slidesGrid[i+1]-(slidesGrid[i+1]-slidesGrid[i])/2?activeIndex=i:translate>=slidesGrid[i]&&translate<slidesGrid[i+1]&&(activeIndex=i+1):translate>=slidesGrid[i]&&(activeIndex=i);return params.normalizeSlideIndex&&(activeIndex<0||void 0===activeIndex)&&(activeIndex=0),activeIndex}function updateActiveIndex(newActiveIndex){const swiper=this,translate=swiper.rtlTranslate?swiper.translate:-swiper.translate,{snapGrid:snapGrid,params:params,activeIndex:previousIndex,realIndex:previousRealIndex,snapIndex:previousSnapIndex}=swiper;let activeIndex=newActiveIndex,snapIndex;const getVirtualRealIndex=aIndex=>{let realIndex=aIndex-swiper.virtual.slidesBefore;return realIndex<0&&(realIndex=swiper.virtual.slides.length+realIndex),realIndex>=swiper.virtual.slides.length&&(realIndex-=swiper.virtual.slides.length),realIndex};if(void 0===activeIndex&&(activeIndex=getActiveIndexByTranslate(swiper)),snapGrid.indexOf(translate)>=0)snapIndex=snapGrid.indexOf(translate);else{const skip=Math.min(params.slidesPerGroupSkip,activeIndex);snapIndex=skip+Math.floor((activeIndex-skip)/params.slidesPerGroup)}if(snapIndex>=snapGrid.length&&(snapIndex=snapGrid.length-1),activeIndex===previousIndex&&!swi
vendor: 1,714 bytes, line 9755
9755per.params.loop)return void(snapIndex!==previousSnapIndex&&(swiper.snapIndex=snapIndex,swiper.emit("snapIndexChange")));if(activeIndex===previousIndex&&swiper.params.loop&&swiper.virtual&&swiper.params.virtual.enabled)return void(swiper.realIndex=getVirtualRealIndex(activeIndex));const gridEnabled=swiper.grid&¶ms.grid&¶ms.grid.rows>1;let realIndex;if(swiper.virtual&¶ms.virtual.enabled&¶ms.loop)realIndex=getVirtualRealIndex(activeIndex);else if(gridEnabled){const firstSlideInColumn=swiper.slides.filter(slideEl=>slideEl.column===activeIndex)[0];let activeSlideIndex=parseInt(firstSlideInColumn.getAttribute("data-swiper-slide-index"),10);Number.isNaN(activeSlideIndex)&&(activeSlideIndex=Math.max(swiper.slides.indexOf(firstSlideInColumn),0)),realIndex=Math.floor(activeSlideIndex/params.grid.rows)}else if(swiper.slides[activeIndex]){const slideIndex=swiper.slides[activeIndex].getAttribute("data-swiper-slide-index");realIndex=slideIndex?parseInt(slideIndex,10):activeIndex}else realIndex=activeIndex;Object.assign(swiper,{previousSnapIndex:previousSnapIndex,snapIndex:snapIndex,previousRealIndex:previousRealIndex,realIndex:realIndex,previousIndex:previousIndex,activeIndex:activeIndex}),swiper.initialized&&preload(swiper),swiper.emit("activeIndexChange"),swiper.emit("snapIndexChange"),(swiper.initialized||swiper.params.runCallbacksOnInit)&&(previousRealIndex!==realIndex&&swiper.emit("realIndexChange"),swiper.emit("slideChange"))}function updateClickedSlide(el,path){const swiper=this,params=swiper.params;let slide=el.closest(`.${params.slideClass}, swiper-slide`);!slide&&swiper.isElement&&path&&path.length>1&&path.includes(el)&&[...path.slice(path.indexOf(el)+1,path.length)].forEac
9755h(pathEl=>{!slide&&pathEl.matches&&pathEl.matches(`.${params.slideClass}, swiper-slide`)&&(slide=pathEl)});let slideFound=!1,slideIndex;if(slide)for(let i=0;i<swiper.slides.length;i+=1)if(swiper.slides[i]===slide){slideFound=!0,slideIndex=i;break}if(!slide||!slideFound)return swiper.clickedSlide=void 0,void(swiper.clickedIndex=void 0);swiper.clickedSlide=slide,swiper.virtual&&swiper.params.virtual.enabled?swiper.clickedIndex=parseInt(slide.getAttribute("data-swiper-slide-index"),10):swiper.clickedIndex=slideIndex,params.slideToClickedSlide&&void 0!==swiper.clickedIndex&&swiper.clickedIndex!==swiper.activeIndex&&swiper.slideToClickedSlide()}var update,translate,transition,slide,loop,grabCursor;function getSwiperTranslate(axis){void 0===axis&&(axis=this.isHorizontal()?"x":"y");const swiper=this,{params:params,rtlTranslate:rtl,translate:translate,wrapperEl:wrapperEl}=this;if(params.virtualTranslate)return rtl?-translate:translate;if(params.cssMode)return translate;let currentTranslate=getTranslate(wrapperEl,axis);return currentTranslate+=this.cssOverflowAdjustment(),rtl&&(currentTranslate=-currentTranslate),currentTranslate||0}function setTranslate(translate,byController){const swiper=this,{rtlTranslate:rtl,params:params,wrapperEl:wrapperEl,progress:progress}=swiper;let x=0,y=0;const z=0;let newProgress;swiper.isHorizontal()?x=rtl?-translate:translate:y=translate,params.roundLengths&&(x=Math.floor(x),y=Math.floor(y)),swiper.previousTranslate=swiper.translate,swiper.translate=swiper.isHorizontal()?x:y,params.cssMode?wrapperEl[swiper.isHorizontal()?"scrollLeft":"scrollTop"]=swiper.isHorizontal()?-x:-y:params.virtualTranslate||(swiper.isHorizontal()?x-=swiper.cssOverflowAdjustment():y-=swiper.cssOverflowAdjustment(),wrapperEl.style.transform=`translate3d(${x}px, ${y}px, 0px)`);const translatesDiff=swiper.maxTranslate()-swiper.minTranslate();newProgress=0===translatesDiff?0:(translate-swiper.minTranslate())/translatesDiff,newProgress!==progress&&swiper.updateProgress(translate),swiper.emit("setTranslate",swiper.translate,byController)}function minTranslate(){return-this.snapGrid[0]}function maxTranslate(){return-this.snapGrid[this.snapGrid.length-1]}function translateTo(translate,speed,runCallbacks,translateBounds,internal){void 0===translate&&(translate=0),void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0),void 0===translateBounds&&(translateBounds=!0);const swiper=this,{params:params,wrapperEl:wrapperEl}=swiper;if(swiper.animating&¶ms.preventInteractionOnTransition)return!1;const minTranslate=swiper.minTranslate(),maxTranslate=swiper.maxTranslate();let newTranslate;if(newTranslate=translateBounds&&translate>minTranslate?minTranslate:translateBounds&&translate<maxTranslate?maxTranslate:translate,swiper.updateProgress(newTranslate),params.cssMode){const isH=swiper.isHorizontal();if(0===speed)wrapperEl[isH?"scrollLeft":"scrollTop"]=-newTranslate;else{if(!swiper.support.smoothScroll)return animateCSSModeScroll({swiper:swiper,targetPosition:-newTranslate,side:isH?"left":"top"}),!0;wrapperEl.scrollTo({[isH?"left":"top"]:-newTranslate,behavior:"smooth"})}return!0}return 0===speed?(swiper.setTransition(0),swiper.setTranslate(newTranslate),runCallbacks&&(swiper.emit("beforeTransitionStart",speed,internal),swiper.emit("transitionEnd"))):(swiper.setTransition(speed),swiper.setTranslate(newTranslate),runCallbacks&&(swiper.emit("beforeTransitionStart",speed,internal),swiper.emit("transitionStart")),swiper.animating||(swiper.animating=!0,swiper.onTranslateToWrapperTransitionEnd||(swiper.onTranslateToWrapperTransitionEnd=function transitionEnd(e){swiper&&!swiper.destroyed&&e.target===this&&(swiper.wrapperEl.removeEventListener("transitionend",swiper.onTranslateToWrapperTransitionEnd),swiper.onTranslateToWrapperTransitionEnd=null,delete swiper.onTranslateToWrapperTransitionEnd,runCallbacks&&swiper.emit("transitionEnd"))}),swiper.wrapperEl.addEventListener("transitionend",swiper.onTranslateToWrapperTransitionEnd))),!0}function setTransition(duration,byController){const swiper=this;swiper.params.cssMode||(swiper.wrapperEl.style.transitionDuration=`${duration}ms`,swiper.wrapperEl.style.transitionDelay=0===duration?"0ms":""),swiper.emit("setTransition",duration,byController)}function transitionEmit(_ref){let{swiper:swiper,runCallbacks:runCallbacks,direction:direction,step:step}=_ref;const{activeIndex:activeIndex,previousIndex:previousIndex}=swiper;let dir=direction;if(dir||(dir=activeIndex>previousIndex?"next":activeIndex<previousIndex?"prev":"reset"),swiper.emit(`transition${step}`),runCallbacks&&activeIndex!==previousIndex){if("reset"===dir)return void swiper.emit(`slideResetTransition${step}`);swiper.emit(`slideChangeTransition${step}`),"next"===dir?swiper.emit(`slideNextTransition${step}`):swiper.emit(`slidePrevTransition${step}`)}}function transitionStart(runCallbacks,direction){void 0===runCallbacks&&(runCallbacks=!0);const swiper=this,{params:params}=swiper;params.cssMode||(params.autoHeight&&swiper.updateAutoHeight(),transitionEmit({swiper:swiper,runCallbacks:runCallbacks,direction:direction,step:"Start"}))}function transitionEnd(runCallbacks,direction){void 0===runCallbacks&&(runCallbacks=!0);const swiper=this,{params:params}=this;this.animating=!1,params.cssMode||(this.setTransition(0),transitionEmit({swiper:this,runCallbacks:runCallbacks,direction:direction,step:"End"}))}function slideTo(index,speed,runCallbacks,internal,initial){void 0===index&&(index=0),void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0),"string"==typeof index&&(index=parseInt(index,10));const swiper=this;let slideIndex=index;slideIndex<0&&(slideIndex=0);const{params:params,snapGrid:snapGrid,slidesGrid:slidesGrid,previousIndex:previousIndex,activeIndex:activeIndex,rtlTranslate:rtl,wrapperEl:wrapperEl,enabled:enabled}=swiper;
9755if(swiper.animating&¶ms.preventInteractionOnTransition||!enabled&&!internal&&!initial)return!1;const skip=Math.min(swiper.params.slidesPerGroupSkip,slideIndex);let snapIndex=skip+Math.floor((slideIndex-skip)/swiper.params.slidesPerGroup);snapIndex>=snapGrid.length&&(snapIndex=snapGrid.length-1);const translate=-snapGrid[snapIndex];if(params.normalizeSlideIndex)for(let i=0;i<slidesGrid.length;i+=1){const normalizedTranslate=-Math.floor(100*translate),normalizedGrid=Math.floor(100*slidesGrid[i]),normalizedGridNext=Math.floor(100*slidesGrid[i+1]);void 0!==slidesGrid[i+1]?normalizedTranslate>=normalizedGrid&&normalizedTranslate<normalizedGridNext-(normalizedGridNext-normalizedGrid)/2?slideIndex=i:normalizedTranslate>=normalizedGrid&&normalizedTranslate<normalizedGridNext&&(slideIndex=i+1):normalizedTranslate>=normalizedGrid&&(slideIndex=i)}if(swiper.initialized&&slideIndex!==activeIndex){if(!swiper.allowSlideNext&&(rtl?translate>swiper.translate&&translate>swiper.minTranslate():translate<swiper.translate&&translate<swiper.minTranslate()))return!1;if(!swiper.allowSlidePrev&&translate>swiper.translate&&translate>swiper.maxTranslate()&&(activeIndex||0)!==slideIndex)return!1}let direction;if(slideIndex!==(previousIndex||0)&&runCallbacks&&swiper.emit("beforeSlideChangeStart"),swiper.updateProgress(translate),direction=slideIndex>activeIndex?"next":slideIndex<activeIndex?"prev":"reset",rtl&&-translate===swiper.translate||!rtl&&translate===swiper.translate)return swiper.updateActiveIndex(slideIndex),params.autoHeight&&swiper.updateAutoHeight(),swiper.updateSlidesClasses(),"slide"!==params.effect&&swiper.setTranslate(translate),"reset"!==direction&&(swiper.transitionStart(runCallbacks,direction),swiper.transitionEnd(runCallbacks,direction)),!1;if(params.cssMode){const isH=swiper.isHorizontal(),t=rtl?translate:-translate;if(0===speed){const isVirtual=swiper.virtual&&swiper.params.virtual.enabled;isVirtual&&(swiper.wrapperEl.style.scrollSnapType="none",swiper._immediateVirtual=!0),isVirtual&&!swiper._cssModeVirtualInitialSet&&swiper.params.initialSlide>0?(swiper._cssModeVirtualInitialSet=!0,requestAnimationFrame(()=>{wrapperEl[isH?"scrollLeft":"scrollTop"]=t})):wrapperEl[isH?"scrollLeft":"scrollTop"]=t,isVirtual&&requestAnimationFrame(()=>{swiper.wrapperEl.style.scrollSnapType="",swiper._immediateVirtual=!1})}else{if(!swiper.support.smoothScroll)return animateCSSModeScroll({swiper:swiper,targetPosition:t,side:isH?"left":"top"}),!0;wrapperEl.scrollTo({[isH?"left":"top"]:t,behavior:"smooth"})}return!0}return swiper.setTransition(speed),swiper.setTranslate(translate),swiper.updateActiveIndex(slideIndex),swiper.updateSlidesClasses(),swiper.emit("beforeTransitionStart",speed,internal),swiper.transitionStart(runCallbacks,direction),0===speed?swiper.transitionEnd(runCallbacks,direction):swiper.animating||(swiper.animating=!0,swiper.onSlideToWrapperTransitionEnd||(swiper.onSlideToWrapperTransitionEnd=function transitionEnd(e){swiper&&!swiper.destroyed&&e.target===this&&(swiper.wrapperEl.removeEventListener("transitionend",swiper.onSlideToWrapperTransitionEnd),swiper.onSlideToWrapperTransitionEnd=null,delete swiper.onSlideToWrapperTransitionEnd,swiper.transitionEnd(runCallbacks,direction))}),swiper.wrapperEl.addEventListener("transitionend",swiper.onSlideToWrapperTransitionEnd)),!0}function slideToLoop(index,speed,runCallbacks,internal){if(void 0===index&&(index=0),void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0),"string"==typeof index){const indexAsNumber=parseInt(index,10);index=indexAsNumber}const swiper=this,gridEnabled=swiper.grid&&swiper.params.grid&&swiper.params.grid.rows>1;let newIndex=index;if(swiper.params.loop)if(swiper.virtual&&swiper.params.virtual.enabled)newIndex+=swiper.virtual.slidesBefore;else{let targetSlideIndex;if(gridEnabled){const slideIndex=newIndex*swiper.params.grid.rows;targetSlideIndex=swiper.slides.filter(slideEl=>1*slideEl.getAttribute("data-swiper-slide-index")===slideIndex)[0].column}else targetSlideIndex=swiper.getSlideIndexByData(newIndex);const cols=gridEnabled?Math.ceil(swiper.slides.length/swiper.params.grid.rows):swiper.slides.length,{centeredSlides:centeredSlides}=swiper.params;let slidesPerView=swiper.params.slidesPerView;"auto"===slidesPerView?slidesPerView=swiper.slidesPerViewDynamic():(slidesPerView=Math.ceil(parseFloat(swiper.params.slidesPerView,10)),centeredSlides&&slidesPerView%2==0&&(slidesPerView+=1));let needLoopFix=cols-targetSlideIndex<slidesPerView;if(centeredSlides&&(needLoopFix=needLoopFix||targetSlideIndex<Math.ceil(slidesPerView/2)),needLoopFix){const direction=centeredSlides?targetSlideIndex<swiper.activeIndex?"prev":"next":target
9755SlideIndex-swiper.activeIndex-1<swiper.params.slidesPerView?"next":"prev";swiper.loopFix({direction:direction,slideTo:!0,activeSlideIndex:"next"===direction?targetSlideIndex+1:targetSlideIndex-cols+1,slideRealIndex:"next"===direction?swiper.realIndex:void 0})}if(gridEnabled){const slideIndex=newIndex*swiper.params.grid.rows;newIndex=swiper.slides.filter(slideEl=>1*slideEl.getAttribute("data-swiper-slide-index")===slideIndex)[0].column}else newIndex=swiper.getSlideIndexByData(newIndex)}return requestAnimationFrame(()=>{swiper.slideTo(newIndex,speed,runCallbacks,internal)}),swiper}function slideNext(speed,runCallbacks,internal){void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0);const swiper=this,{enabled:enabled,params:params,animating:animating}=swiper;if(!enabled)return swiper;let perGroup=params.slidesPerGroup;"auto"===params.slidesPerView&&1===params.slidesPerGroup&¶ms.slidesPerGroupAuto&&(perGroup=Math.max(swiper.slidesPerViewDynamic("current",!0),1));const increment=swiper.activeIndex<params.slidesPerGroupSkip?1:perGroup,isVirtual=swiper.virtual&¶ms.virtual.enabled;if(params.loop){if(animating&&!isVirtual&¶ms.loopPreventsSliding)return!1;if(swiper.loopFix({direction:"next"}),swiper._clientLeft=swiper.wrapperEl.clientLeft,swiper.activeIndex===swiper.slides.length-1&¶ms.cssMode)return requestAnimationFrame(()=>{swiper.slideTo(swiper.activeIndex+increment,speed,runCallbacks,internal)}),!0}return params.rewind&&swiper.isEnd?swiper.slideTo(0,speed,runCallbacks,internal):swiper.slideTo(swiper.activeIndex+increment,speed,runCallbacks,internal)}function slidePrev(speed,runCallbacks,internal){void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0);const swiper=this,{params:params,snapGrid:snapGrid,slidesGrid:slidesGrid,rtlTranslate:rtlTranslate,enabled:enabled,animating:animating}=swiper;if(!enabled)return swiper;const isVirtual=swiper.virtual&¶ms.virtual.enabled;if(params.loop){if(animating&&!isVirtual&¶ms.loopPreventsSliding)return!1;swiper.loopFix({direction:"prev"}),swiper._clientLeft=swiper.wrapperEl.clientLeft}const translate=rtlTranslate?swiper.translate:-swiper.translate;function normalize(val){return val<0?-Math.floor(Math.abs(val)):Math.floor(val)}const normalizedTranslate=normalize(translate),normalizedSnapGrid=snapGrid.map(val=>normalize(val));let prevSnap=snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate)-1];if(void 0===prevSnap&¶ms.cssMode){let prevSnapIndex;snapGrid.forEach((snap,snapIndex)=>{normalizedTranslate>=snap&&(prevSnapIndex=snapIndex)}),void 0!==prevSnapIndex&&(prevSnap=snapGrid[prevSnapIndex>0?prevSnapIndex-1:prevSnapIndex])}let prevIndex=0;if(void 0!==prevSnap&&(prevIndex=slidesGrid.indexOf(prevSnap),prevIndex<0&&(prevIndex=swiper.activeIndex-1),"auto"===params.slidesPerView&&1===params.slidesPerGroup&¶ms.slidesPerGroupAuto&&(prevIndex=prevIndex-swiper.slidesPerViewDynamic("previous",!0)+1,prevIndex=Math.max(prevIndex,0))),params.rewind&&swiper.isBeginning){const lastIndex=swiper.params.virtual&&swiper.params.virtual.enabled&&swiper.virtual?swiper.virtual.slides.length-1:swiper.slides.length-1;return swiper.slideTo(lastIndex,speed,runCallbacks,internal)}return params.loop&&0===swiper.activeIndex&¶ms.cssMode?(requestAnimationFrame(()=>{swiper.slideTo(prevIndex,speed,runCallbacks,internal)}),!0):swiper.slideTo(prevIndex,speed,runCallbacks,internal)}function slideReset(speed,runCallbacks,internal){void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0);const swiper=this;return this.slideTo(this.activeIndex,speed,runCallbacks,internal)}function slideToClosest(speed,runCallbacks,internal,threshold){void 0===speed&&(speed=this.params.speed),void 0===runCallbacks&&(runCallbacks=!0),void 0===threshold&&(threshold=.5);const swiper=this;let index=swiper.activeIndex;const skip=Math.min(swiper.params.slidesPerGroupSkip,index),snapIndex=skip+Math.floor((index-skip)/swiper.params.slidesPerGroup),translate=swiper.rtlTranslate?swiper.translate:-swiper.translate;if(translate>=swiper.snapGrid[snapIndex]){const currentSnap=swiper.snapGrid[snapIndex],nextSnap=swiper.snapGrid[snapIndex+1];translate-currentSnap>(nextSnap-currentSnap)*threshold&&(index+=swiper.params.slidesPerGroup)}else{const prevSnap=swiper.snapGrid[snapIndex-1],currentSnap=swiper.snapGrid[snapIndex];translate-prevSnap<=(currentSnap-prevSnap)*threshold&&(index-=swiper.params.slidesPerGroup)}return index=Math.max(index,0),index=Math.min(index,swiper.slidesGrid.length-1),swiper.slideTo(index,speed,runCallbacks,internal)}function slideToClickedSlide(){const swiper=this,{params:params,slidesEl:slidesEl}=swiper,slidesPerView="auto"===params.slidesPerView?swiper.slidesPerViewDynamic():params.slidesPerView;let slideToIndex=swiper.clickedIndex,realIndex;const slideSelector=swiper.isElement?"swiper-slide":`.${params.slideClass}`;if(params.loop){if(swiper.animating)return;realIndex=parseInt(swiper.clickedSlide.getAttribute("data-swiper-slide-index"),10),params.centeredSlides?slideToIndex<swiper.loopedSlides-slidesPerView/2||slideToIndex>swiper.slides.length-swiper.loopedSlides+slidesPerView/2?(swiper.loopFix(),slideToIndex=swiper.getSlideIndex(elementChildren(slidesEl,`${slideSelector}[data-swiper-slide-index="${realIndex}"]`)[0]),nextTick(()=>{swiper.slideTo(slideToIndex)})):swiper.slideTo(slideToIndex):slideToIndex>swiper.slides.length-slidesPerView?(swiper.loopFix(),slideToIndex=swiper.getSlideIndex(elementChildren(slidesEl,`${slideSelector}[data-swiper-slide-index="${realIndex}"]`)[0]),nextTick(()=>{swiper.slideTo(slideToIndex)})):swiper.slideTo(slideToIndex)}else swiper.slideTo(slideToIndex)}function loopCreate(slideRealIndex){const swiper=this,{params:params,slidesEl:slidesEl}=swiper;if(!params.loop||swiper.virtual&&swiper.params.virtual.enabled)return;const initSlides=()=>{const slides=elementChildren(slidesEl,`.${params.slideClass}, swiper-slide`);
9755slides.forEach((el,index)=>{el.setAttribute("data-swiper-slide-index",index)})},gridEnabled=swiper.grid&¶ms.grid&¶ms.grid.rows>1,slidesPerGroup=params.slidesPerGroup*(gridEnabled?params.grid.rows:1),shouldFillGroup=swiper.slides.length%slidesPerGroup!=0,shouldFillGrid=gridEnabled&&swiper.slides.length%params.grid.rows!=0,addBlankSlides=amountOfSlides=>{for(let i=0;i<amountOfSlides;i+=1){const slideEl=swiper.isElement?createElement("swiper-slide",[params.slideBlankClass]):createElement("div",[params.slideClass,params.slideBlankClass]);swiper.slidesEl.append(slideEl)}};if(shouldFillGroup){if(params.loopAddBlankSlides){const slidesToAdd=slidesPerGroup-swiper.slides.length%slidesPerGroup;addBlankSlides(slidesToAdd),swiper.recalcSlides(),swiper.updateSlides()}else showWarning("Swiper Loop Warning: The number of slides is not even to slidesPerGroup, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");initSlides()}else if(shouldFillGrid){if(params.loopAddBlankSlides){const slidesToAdd=params.grid.rows-swiper.slides.length%params.grid.rows;addBlankSlides(slidesToAdd),swiper.recalcSlides(),swiper.updateSlides()}else showWarning("Swiper Loop Warning: The number of slides is not even to grid.rows, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");initSlides()}else initSlides();
9755swiper.loopFix({slideRealIndex:slideRealIndex,direction:params.centeredSlides?void 0:"next"})}function loopFix(_temp){let{slideRealIndex:slideRealIndex,slideTo:slideTo=!0,direction:direction,setTranslate:setTranslate,activeSlideIndex:activeSlideIndex,byController:byController,byMousewheel:byMousewheel}=void 0===_temp?{}:_temp;const swiper=this;if(!swiper.params.loop)return;swiper.emit("beforeLoopFix");const{slides:slides,allowSlidePrev:allowSlidePrev,allowSlideNext:allowSlideNext,slidesEl:slidesEl,params:params}=swiper,{centeredSlides:centeredSlides}=params;if(swiper.allowSlidePrev=!0,swiper.allowSlideNext=!0,swiper.virtual&¶ms.virtual.enabled)return slideTo&&(params.centeredSlides||0!==swiper.snapIndex?params.centeredSlides&&swiper.snapIndex<params.slidesPerView?swiper.slideTo(swiper.virtual.slides.length+swiper.snapIndex,0,!1,!0):swiper.snapIndex===swiper.snapGrid.length-1&&swiper.slideTo(swiper.virtual.slidesBefore,0,!1,!0):swiper.slideTo(swiper.virtual.slides.length,0,!1,!0)),swiper.allowSlidePrev=allowSlidePrev,swiper.allowSlideNext=allowSlideNext,void swiper.emit("loopFix");let slidesPerView=params.slidesPerView;"auto"===slidesPerView?slidesPerView=swiper.slidesPerViewDynamic():(slidesPerView=Math.ceil(parseFloat(params.slidesPerView,10)),centeredSlides&&slidesPerView%2==0&&(slidesPerView+=1));const slidesPerGroup=params.slidesPerGroupAuto?slidesPerView:params.slidesPerGroup;let loopedSlides=slidesPerGroup;loopedSlides%slidesPerGroup!=0&&(loopedSlides+=slidesPerGroup-loopedSlides%slidesPerGroup),loopedSlides+=params.loopAdditionalSlides,swiper.loopedSlides=loopedSlides;const gridEnabled=swiper.grid&¶ms.grid&¶ms.grid.rows>1;slides.length<slidesPerView+loopedSlides?showWarning("Swiper Loop Warning: The number of slides is not enough for loop mode, it will be disabled and not function properly. You need to add more slides (or make duplicates) or lower the values of slidesPerView and slidesPerGroup parameters"):gridEnabled&&"row"===params.grid.fill&&showWarning("Swiper Loop Warning: Loop mode is not compatible with grid.fill = `row`");const prependSlidesIndexes=[],appendSlidesIndexes=[];let activeIndex=swiper.activeIndex;void 0===activeSlideIndex?activeSlideIndex=swiper.getSlideIndex(slides.filter(el=>el.classList.contains(params.slideActiveClass))[0]):activeIndex=activeSlideIndex;const isNext="next"===direction||!direction,isPrev="prev"===direction||!direction;let slidesPrepended=0,slidesAppended=0;const cols=gridEnabled?Math.ceil(slides.length/params.grid.rows):slides.length,activeColIndex=gridEnabled?slides[activeSlideIndex].column:activeSlideIndex,activeColIndexWithShift=activeColIndex+(centeredSlides&&void 0===setTranslate?-slidesPerView/2+.5:0);if(activeColIndexWithShift<loopedSlides){slidesPrepended=Math.max(loopedSlides-activeColIndexWithShift,slidesPerGroup);for(let i=0;i<loopedSlides-activeColIndexWithShift;i+=1){const index=i-Math.floor(i/cols)*cols;if(gridEnabled){const colIndexToPrepend=cols-index-1;for(let i=slides.length-1;i>=0;i-=1)slides[i].column===colIndexToPrepend&&prependSlidesIndexes.push(i)}else prependSlidesIndexes.push(cols-index-1)}}else if(activeColIndexWithShift+slidesPerView>cols-loopedSlides){slidesAppended=Math.max(activeColIndexWithShift-(cols-2*loopedSlides),slidesPerGroup);for(let i=0;i<slidesAppended;i+=1){const index=i-Math.floor(i/cols)*cols;gridEnabled?slides.forEach((slide,slideIndex)=>{slide.column===index&&appendSlidesIndexes.push(slideIndex)}):appendSlidesIndexes.push(index)}}if(swiper.__preventObserver__=!0,requestAnimationFrame(()=>{swiper.__preventObserver__=!1}),isPrev&&prependSlidesIndexes.forEach(index=>{slides[index].swiperLoopMoveDOM=!0,slidesEl.prepend(slides[index]),slides[index].swiperLoopMoveDOM=!1}),isNext&&appendSlidesIndexes.forEach(index=>{slides[index].swiperLoopMoveDOM=!0,slidesEl.append(slides[index]),slides[index].swiperLoopMoveDOM=!1}),swiper.recalcSlides(),"auto"===params.slidesPerView?swiper.updateSlides():gridEnabled&&(prependSlidesIndexes.length>0&&isPrev||appendSlidesIndexes.length>0&&isNext)&&swiper.slides.forEach((slide,slideIndex)=>{swiper.grid.updateSlide(slideIndex,slide,swiper.slides)}),params.watchSlidesProgress&&swiper.updateSlidesOffset(),slideTo)if(prependSlidesIndexes.length>0&&isPrev){if(void 0===slideRealIndex){const currentSlideTranslate=swiper.slidesGrid[activeIndex],newSlideTranslate=swiper.slidesGrid[activeIndex+slidesPrepended],diff=newSlideTranslate-currentSlideTranslate;byMousewheel?swiper.setTranslate(swiper.translate-diff):(swiper.slideTo(activeIndex+slidesPrepended,0,!1,!0),setTranslate&&(swiper.touchEventsData.startTranslate=swiper.touchEventsData.startTranslate-diff,swiper.touchEventsData.currentTranslate=swiper.touchEventsData.currentTranslate-diff))}else if(setTranslate){const shift=gridEnabled?prependSlidesIndexes.length/params.grid.rows:prependSlidesIndexes.length;swiper.slideTo(swiper.activeIndex+shift,0,!1,!0),swiper.touchEventsData.currentTranslate=swiper.translate}}else if(appendSlidesIndexes.length>0&&isNext)if(void 0===slideRealIndex){const currentSlideTranslate=swiper.slidesGrid[activeIndex],newSlideTranslate=swiper.slidesGrid[activeIndex-slidesAppended],diff=newSlideTranslate-currentSlideTranslate;byMousewheel?swiper.setTranslate(swiper.translate-diff):(swiper.slideTo(activeIndex-slidesAppended,0,!1,!0),setTranslate&&(swiper.touchEventsData.startTranslate=swiper.touchEventsData.startTranslate-diff,swiper.touchEventsData.currentTranslate=swiper.touchEventsData.currentTranslate-diff))}else{const shift=gridEnabled?appendSlidesIndexes.length/params.grid.rows:appendSlidesIndexes.length;swiper.slideTo(swiper.activeIndex-shift,0,!1,!0)}if(swiper.allowSlidePrev=allowSlidePrev,swiper.allowSlideNext=allowSlideNext,swiper.controller&&swiper.controller.control&&!byController){const loopParams={slideRealIndex:sli
vendor: 11,207 bytes, line 9755
9755deRealIndex,direction:direction,setTranslate:setTranslate,activeSlideIndex:activeSlideIndex,byController:!0};Array.isArray(swiper.controller.control)?swiper.controller.control.forEach(c=>{!c.destroyed&&c.params.loop&&c.loopFix({...loopParams,slideTo:c.params.slidesPerView===params.slidesPerView&&slideTo})}):swiper.controller.control instanceof swiper.constructor&&swiper.controller.control.params.loop&&swiper.controller.control.loopFix({...loopParams,slideTo:swiper.controller.control.params.slidesPerView===params.slidesPerView&&slideTo})}swiper.emit("loopFix")}function loopDestroy(){const swiper=this,{params:params,slidesEl:slidesEl}=this;if(!params.loop||this.virtual&&this.params.virtual.enabled)return;this.recalcSlides();const newSlidesOrder=[];this.slides.forEach(slideEl=>{const index=void 0===slideEl.swiperSlideIndex?1*slideEl.getAttribute("data-swiper-slide-index"):slideEl.swiperSlideIndex;newSlidesOrder[index]=slideEl}),this.slides.forEach(slideEl=>{slideEl.removeAttribute("data-swiper-slide-index")}),newSlidesOrder.forEach(slideEl=>{slidesEl.append(slideEl)}),this.recalcSlides(),this.slideTo(this.realIndex,0)}function setGrabCursor(moving){const swiper=this;if(!swiper.params.simulateTouch||swiper.params.watchOverflow&&swiper.isLocked||swiper.params.cssMode)return;const el="container"===swiper.params.touchEventsTarget?swiper.el:swiper.wrapperEl;swiper.isElement&&(swiper.__preventObserver__=!0),el.style.cursor="move",el.style.cursor=moving?"grabbing":"grab",swiper.isElement&&requestAnimationFrame(()=>{swiper.__preventObserver__=!1})}function unsetGrabCursor(){const swiper=this;swiper.params.watchOverflow&&swiper.isLocked||swiper.params.cssMode||(swiper.isElement&&(swiper.__preventObserver__=!0),swiper["container"===swiper.params.touchEventsTarget?"el":"wrapperEl"].style.cursor="",swiper.isElement&&requestAnimationFrame(()=>{swiper.__preventObserver__=!1}))}function closestElement(selector,base){function __closestFrom(el){if(!el||el===getDocument()||el===getWindow())return null;el.assignedSlot&&(el=el.assignedSlot);const found=el.closest(selector);return found||el.getRootNode?found||__closestFrom(el.getRootNode().host):null}return void 0===base&&(base=this),__closestFrom(base)}function preventEdgeSwipe(swiper,event,startX){const window=getWindow(),{params:params}=swiper,edgeSwipeDetection=params.edgeSwipeDetection,edgeSwipeThreshold=params.edgeSwipeThreshold;return!edgeSwipeDetection||!(startX<=edgeSwipeThreshold||startX>=window.innerWidth-edgeSwipeThreshold)||"prevent"===edgeSwipeDetection&&(event.preventDefault(),!0)}function onTouchStart(event){const swiper=this,document=getDocument();let e=event;e.originalEvent&&(e=e.originalEvent);const data=swiper.touchEventsData;if("pointerdown"===e.type){if(null!==data.pointerId&&data.pointerId!==e.pointerId)return;data.pointerId=e.pointerId}else"touchstart"===e.type&&1===e.targetTouches.length&&(data.touchId=e.targetTouches[0].identifier);if("touchstart"===e.type)return void preventEdgeSwipe(swiper,e,e.targetTouches[0].pageX);const{params:params,touches:touches,enabled:enabled}=swiper;if(!enabled)return;if(!params.simulateTouch&&"mouse"===e.pointerType)return;if(swiper.animating&¶ms.preventInteractionOnTransition)return;!swiper.animating&¶ms.cssMode&¶ms.loop&&swiper.loopFix();let targetEl=e.target;if("wrapper"===params.touchEventsTarget&&!swiper.wrapperEl.contains(targetEl))return;if("which"in e&&3===e.which)return;if("button"in e&&e.button>0)return;if(data.isTouched&&data.isMoved)return;const swipingClassHasValue=!!params.noSwipingClass&&""!==params.noSwipingClass,eventPath=e.composedPath?e.composedPath():e.path;swipingClassHasValue&&e.target&&e.target.shadowRoot&&eventPath&&(targetEl=eventPath[0]);const noSwipingSelector=params.noSwipingSelector?params.noSwipingSelector:`.${params.noSwipingClass}`,isTargetShadow=!(!e.target||!e.target.shadowRoot);if(params.noSwiping&&(isTargetShadow?closestElement(noSwipingSelector,targetEl):targetEl.closest(noSwipingSelector)))return void(swiper.allowClick=!0);if(params.swipeHandler&&!targetEl.closest(params.swipeHandler))return;touches.currentX=e.pageX,touches.currentY=e.pageY;const startX=touches.currentX,startY=touches.currentY;if(!preventEdgeSwipe(swiper,e,startX))return;Object.assign(data,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),touches.startX=startX,touches.startY=startY,data.touchStartTime=now(),swiper.allowClick=!0,swiper.updateSize(),swiper.swipeDirection=void 0,params.threshold>0&&(data.allowThresholdMove=!1);let preventDefault=!0;targetEl.matches(data.focusableElements)&&(preventDefault=!1,"SELECT"===targetEl.nodeName&&(data.isTouched=!1)),document.activeElement&&document.activeElement.matches(data.focusableElements)&&document.activeElement!==targetEl&&document.activeElement.blur();const shouldPreventDefault=preventDefault&&swiper.allowTouchMove&¶ms.touchStartPreventDefault;!params.touchStartForcePreventDefault&&!shouldPreventDefault||targetEl.isContentEditable||e.preventDefault(),params.freeMode&¶ms.freeMode.enabled&&swiper.freeMode&&swiper.animating&&!params.cssMode&&swiper.freeMode.onTouchStart(),swiper.emit("touchStart",e)}function onTouchMove(event){const document=getDocument(),swiper=this,data=swiper.touchEventsData,{params:params,touches:touches,rtlTranslate:rtl,enabled:enabled}=swiper;if(!enabled)return;if(!params.simulateTouch&&"mouse"===event.pointerType)return;let e=event,targetTouch;if(e.originalEvent&&(e=e.originalEvent),"pointermove"===e.type){if(null!==data.touchId)return;const id=e.pointerId;if(id!==data.pointerId)return}if("touchmove"===e.type){if(targetTouch=[...e.changedTouches].filter(t=>t.identifier===data.touchId)[0],!targetTouch||targetTouch.identifier!==data.touchId)return}else targetTouch=e;if(!data.isTouched)return void(data.startMoving&&data.isScrolling&&swiper.emit("touchMoveOpposite",e));const pageX=targetTouch.pageX,pageY=targetTouch.pageY;if(e.preventedByNestedSwiper)return touches.startX=pageX,void(touches.startY=pageY);if(!swiper.allowTouchMove)return e.target.matches(data.focusableElements)||(swiper.allowClick=!1),void(data.isTouched&&(Object.assign(touches,{startX:pageX,startY:pageY,currentX:pageX,currentY:pageY}),data.touchStartTime=now()));if(params.touchReleaseOnEdges&&!params.loop)if(swiper.isVertical()){if(pageY<touches.startY&&swiper.translate<=swiper.maxTranslate()||pageY>touches.startY&&swiper.translate>=swiper.minTranslate())return data.isTouched=!1,void(data.isMoved=!1)}else if(pageX<touches.startX&&swiper.translate<=swiper.maxTranslate()||pageX>touches.startX&&swiper.translate>=swiper.minTranslate())return;if(document.activeElement&&e.target===document.activeElement&&e.target.matches(data.focusableElements))return data.isMoved=!0,void(swiper.allowClick=!1);data.allowTouchCallbacks&&swiper.emit("touchMove",e),touches.previousX=touches.currentX,touches.previousY=touches.currentY,touches.currentX=pageX,touches.currentY=pageY;const diffX=touches.currentX-touches.startX,diffY=touches.currentY-touches.startY;if(swiper.params.threshold&&Math.sqrt(diffX**2+diffY**2)<swiper.params.threshold)return;if(void 0===data.isScrolling){let touchAngle;swiper.isHorizontal()&&touches.currentY===touches.startY||swiper.isVertical()&&touches.currentX===touches.startX?data.isScrolling=!1:diffX*diffX+diffY*diffY>=25&&(touchAngle=180*Math.atan2(Math.abs(diffY),Math.abs(diffX))/Math.PI,data.isScrolling=swiper.isHorizontal()?touchAngle>params.touchAngle:90-touchAngle>params.touchAngle)}if(data.isScrolling&&swiper.emit("touchMoveOpposite",e),void 0===data.startMoving&&(touches.currentX===touches.startX&&touches.currentY===touches.startY||(data.startMoving=!0)),data.isScrolling)return void(data.isTouched=!1);if(!data.startMoving)return;swiper.allowClick=!1,!params.cssMode&&e.cancelable&&e.preventDefault(),params.touchMoveStopPropagation&&!params.nested&&e.stopPropagation();let diff=swiper.isHorizontal()?diffX:diffY,touchesDiff=swiper.isHorizontal()?touches.currentX-touches.previousX:touches.currentY-touches.previousY;params.oneWayMovement&&(diff=Math.abs(diff)*(rtl?1:-1),touchesDiff=Math.abs(touchesDiff)*(rtl?1:-1)),touches.diff=diff,diff*=params.touchRatio,rtl&&(diff=-diff,touchesDiff=-touchesDiff);const prevTouchesDirection=swiper.touchesDirection;swiper.swipeDirection=diff>0?"prev":"next",swiper.touchesDirection=touchesDiff>0?"prev":"next";const isLoop=swiper.params.loop&&!params.cssMode,allowLoopFix="next"===swiper.touchesDirection&&swiper.allowSlideNext||"prev"===swiper.touchesDirection&&swiper.allowSlidePrev;if(!data.isMoved){if(isLoop&&allowLoopFix&&swiper.loopFix({direction:swiper.swipeDirection}),data.startTranslate=swiper.getTranslate(),swiper.setTransition(0),swiper.animating){const evt=new window.CustomEvent("transitionend",{bubbles:!0,cancelable:!0});swiper.wrapperEl.dispatchEvent(evt)}data.allowMomentumBounce=!1,!params.grabCursor||!0!==swiper.allowSlideNext&&!0!==swiper.allowSlidePrev||swiper.setGrabCursor(!0),swiper.emit("sliderFirstMove",e)}let loopFixed;if((new Date).getTime(),data.isMoved&&data.allowThresholdMove&&prevTouchesDirection!==swiper.touchesDirection&&isLoop&&allowLoopFix&&Math.abs(diff)>=1)return Object.assign(touches,{startX:pageX,startY:pageY,currentX:pageX,currentY:pageY,startTranslate:data.currentTranslate}),data.loopSwapReset=!0,void(data.startTranslate=data.currentTranslate);swiper.emit("sliderMove",e),data.isMoved=!0,data.currentTranslate=diff+data.startTranslate;let disableParentSwiper=!0,resistanceRatio=params.resistanceRatio;if(params.touchReleaseOnEdges&&(resistanceRatio=0),diff>0?(isLoop&&allowLoopFix&&data.allowThresholdMove&&data.currentTranslate>(params.centeredSlides?swiper.minTranslate()-swiper.slidesSizesGrid[swiper.activeIndex+1]:swiper.minTranslate())&&swiper.loopFix({direction:"prev",setTranslate:!0,activeSlideIndex:0}),data.currentTranslate>swiper.minTranslate()&&(disableParentSwiper=!1,params.resistance&&(data.currentTranslate=swiper.minTranslate()-1+(-swiper.minTranslate()+data.startTranslate+diff)**resistanceRatio))):diff<0&&(isLoop&&allowLoopFix&&data.allowThresholdMove&&data.currentTranslate<(params.centeredSlides?swiper.maxTranslate()+swiper.slidesSizesGrid[swiper.slidesSizesGrid.length-1]:swiper.maxTranslate())&&swiper.loopFix({direction:"next",setTranslate:!0,activeSlideIndex:swiper.slides.length-("auto"===params.slidesPerView?swiper.slidesPerViewDynamic():Math.ceil(parseFloat(params.slidesPerView,10)))}),data.currentTranslate<swiper.maxTranslate()&&(disableParentSwiper=!1,params.resistance&&(data.currentTranslate=swiper.maxTranslate()+1-(swiper.maxTranslate()-data.startTranslate-diff)**resistanceRatio))),disableParentSwiper&&(e.preventedByNestedSwiper=!0),!swiper.allowSlideNext&&"next"===swiper.swipeDirection&&data.currentTranslate<data.startTranslate&&(data.currentTranslate=data.startTranslate),!swiper.allowSlidePrev&&"prev"===swiper.swipeDirection&&data.currentTranslate>data.startTranslate&&(data.currentTranslate=data.startTranslate),swiper.allowSlidePrev||swiper.allowSlideNext||(data.currentTranslate=data.startTranslate),params.threshold>0){if(!(Math.abs(diff)>params.threshold||data.allowThresholdMove))return void(data.currentTranslate=data.startTranslate);
9755if(!data.allowThresholdMove)return data.allowThresholdMove=!0,touches.startX=touches.currentX,touches.startY=touches.currentY,data.currentTranslate=data.startTranslate,void(touches.diff=swiper.isHorizontal()?touches.currentX-touches.startX:touches.currentY-touches.startY)}params.followFinger&&!params.cssMode&&((params.freeMode&¶ms.freeMode.enabled&&swiper.freeMode||params.watchSlidesProgress)&&(swiper.updateActiveIndex(),swiper.updateSlidesClasses()),params.freeMode&¶ms.freeMode.enabled&&swiper.freeMode&&swiper.freeMode.onTouchMove(),swiper.updateProgress(data.currentTranslate),swiper.setTranslate(data.currentTranslate))}function onTouchEnd(event){const swiper=this,data=swiper.touchEventsData;let e=event,targetTouch;e.originalEvent&&(e=e.originalEvent);const isTouchEvent="touchend"===e.type||"touchcancel"===e.type;if(isTouchEvent){if(targetTouch=[...e.changedTouches].filter(t=>t.identifier===data.touchId)[0],!targetTouch||targetTouch.identifier!==data.touchId)return}else{if(null!==data.touchId)return;if(e.pointerId!==data.pointerId)return;targetTouch=e}if(["pointercancel","pointerout","pointerleave","contextmenu"].includes(e.type)){const proceed=["pointercancel","contextmenu"].includes(e.type)&&(swiper.browser.isSafari||swiper.browser.isWebView);if(!proceed)return}data.pointerId=null,data.touchId=null;const{params:params,touches:touches,rtlTranslate:rtl,slidesGrid:slidesGrid,enabled:enabled}=swiper;if(!enabled)return;if(!params.simulateTouch&&"mouse"===e.pointerType)return;if(data.allowTouchCallbacks&&swiper.emit("touchEnd",e),data.allowTouchCallbacks=!1,!data.isTouched)return data.isMoved&¶ms.grabCursor&&swiper.setGrabCursor(!1),data.isMoved=!1,void(data.startMoving=!1);params.grabCursor&&data.isMoved&&data.isTouched&&(!0===swiper.allowSlideNext||!0===swiper.allowSlidePrev)&&swiper.setGrabCursor(!1);const touchEndTime=now(),timeDiff=touchEndTime-data.touchStartTime;if(swiper.allowClick){const pathTree=e.path||e.composedPath&&e.composedPath();swiper.updateClickedSlide(pathTree&&pathTree[0]||e.target,pathTree),swiper.emit("tap click",e),timeDiff<300&&touchEndTime-data.lastClickTime<300&&swiper.emit("doubleTap doubleClick",e)}if(data.lastClickTime=now(),nextTick(()=>{swiper.destroyed||(swiper.allowClick=!0)}),!data.isTouched||!data.isMoved||!swiper.swipeDirection||0===touches.diff&&!data.loopSwapReset||data.currentTranslate===data.startTranslate&&!data.loopSwapReset)return data.isTouched=!1,data.isMoved=!1,void(data.startMoving=!1);let currentPos;if(data.isTouched=!1,data.isMoved=!1,data.startMoving=!1,currentPos=params.followFinger?rtl?swiper.translate:-swiper.translate:-data.currentTranslate,params.cssMode)return;if(params.freeMode&¶ms.freeMode.enabled)return void swiper.freeMode.onTouchEnd({currentPos:currentPos});const swipeToLast=currentPos>=-swiper.maxTranslate()&&!swiper.params.loop;let stopIndex=0,groupSize=swiper.slidesSizesGrid[0];for(let i=0;i<slidesGrid.length;i+=i<params.slidesPerGroupSkip?1:params.slidesPerGroup){const increment=i<params.slidesPerGroupSkip-1?1:params.slidesPerGroup;void 0!==slidesGrid[i+increment]?(swipeToLast||currentPos>=slidesGrid[i]&¤tPos<slidesGrid[i+increment])&&(stopIndex=i,groupSize=slidesGrid[i+increment]-slidesGrid[i]):(swipeToLast||currentPos>=slidesGrid[i])&&(stopIndex=i,groupSize=slidesGrid[slidesGrid.length-1]-slidesGrid[slidesGrid.length-2])}let rewindFirstIndex=null,rewindLastIndex=null;params.rewind&&(swiper.isBeginning?rewindLastIndex=params.virtual&¶ms.virtual.enabled&&swiper.virtual?swiper.virtual.slides.length-1:swiper.slides.length-1:swiper.isEnd&&(rewindFirstIndex=0));const ratio=(currentPos-slidesGrid[stopIndex])/groupSize,increment=stopIndex<params.slidesPerGroupSkip-1?1:params.slidesPerGroup;if(timeDiff>params.longSwipesMs){if(!params.longSwipes)return void swiper.slideTo(swiper.activeIndex);"next"===swiper.swipeDirection&&(ratio>=params.longSwipesRatio?swiper.slideTo(params.rewind&&swiper.isEnd?rewindFirstIndex:stopIndex+increment):swiper.slideTo(stopIndex)),"prev"===swiper.swipeDirection&&(ratio>1-params.longSwipesRatio?swiper.slideTo(stopIndex+increment):null!==rewindLastIndex&&ratio<0&&Math.abs(ratio)>params.longSwipesRatio?swiper.slideTo(rewindLastIndex):swiper.slideTo(stopIndex))}else{if(!params.shortSwipes)return void swiper.slideTo(swiper.activeIndex);const isNavButtonTarget=swiper.navigation&&(e.target===swiper.navigation.nextEl||e.target===swiper.navigation.prevEl);isNavButtonTarget?e.target===swiper.navigation.nextEl?swiper.slideTo(stopIndex+increment):swiper.slideTo(stopIndex):("next"===swiper.swipeDirection&&swiper.slideTo(null!==rewindFirstIndex?rewindFirstIndex:stopIndex+increment),"prev"===swiper.swipeDirection&&swiper.slideTo(null!==rewindLastIndex?rewindLastIndex:stopIndex))}}function onResize(){const swiper=this,{params:params,el:el}=swiper;if(el&&0===el.offsetWidth)return;params.breakpoints&&swiper.setBreakpoint();const{allowSlideNext:allowSlideNext,allowSlidePrev:allowSlidePrev,snapGrid:snapGrid}
9755=swiper,isVirtual=swiper.virtual&&swiper.params.virtual.enabled;swiper.allowSlideNext=!0,swiper.allowSlidePrev=!0,swiper.updateSize(),swiper.updateSlides(),swiper.updateSlidesClasses();const isVirtualLoop=isVirtual&¶ms.loop;!("auto"===params.slidesPerView||params.slidesPerView>1)||!swiper.isEnd||swiper.isBeginning||swiper.params.centeredSlides||isVirtualLoop?swiper.params.loop&&!isVirtual?swiper.slideToLoop(swiper.realIndex,0,!1,!0):swiper.slideTo(swiper.activeIndex,0,!1,!0):swiper.slideTo(swiper.slides.length-1,0,!1,!0),swiper.autoplay&&swiper.autoplay.running&&swiper.autoplay.paused&&(clearTimeout(swiper.autoplay.resizeTimeout),swiper.autoplay.resizeTimeout=setTimeout(()=>{swiper.autoplay&&swiper.autoplay.running&&swiper.autoplay.paused&&swiper.autoplay.resume()},500)),swiper.allowSlidePrev=allowSlidePrev,swiper.allowSlideNext=allowSlideNext,swiper.params.watchOverflow&&snapGrid!==swiper.snapGrid&&swiper.checkOverflow()}function onClick(e){const swiper=this;swiper.enabled&&(swiper.allowClick||(swiper.params.preventClicks&&e.preventDefault(),swiper.params.preventClicksPropagation&&swiper.animating&&(e.stopPropagation(),e.stopImmediatePropagation())))}function onScroll(){const swiper=this,{wrapperEl:wrapperEl,rtlTranslate:rtlTranslate,enabled:enabled}=swiper;if(!enabled)return;let newProgress;swiper.previousTranslate=swiper.translate,swiper.isHorizontal()?swiper.translate=-wrapperEl.scrollLeft:swiper.translate=-wrapperEl.scrollTop,0===swiper.translate&&(swiper.translate=0),swiper.updateActiveIndex(),swiper.updateSlidesClasses();const translatesDiff=swiper.maxTranslate()-swiper.minTranslate();newProgress=0===translatesDiff?0:(swiper.translate-swiper.minTranslate())/translatesDiff,newProgress!==swiper.progress&&swiper.updateProgress(rtlTranslate?-swiper.translate:swiper.translate),swiper.emit("setTranslate",swiper.translate,!1)}function onLoad(e){const swiper=this;processLazyPreloader(this,e.target),this.params.cssMode||"auto"!==this.params.slidesPerView&&!this.params.autoHeight||this.update()}function onDocumentTouchStart(){const swiper=this;swiper.documentTouchHandlerProceeded||(swiper.documentTouchHandlerProceeded=!0,swiper.params.touchReleaseOnEdges&&(swiper.el.style.touchAction="auto"))}const events=(swiper,method)=>{const document=getDocument(),{params:params,el:el,wrapperEl:wrapperEl,device:device}=swiper,capture=!!params.nested,domMethod="on"===method?"addEventListener":"removeEventListener",swiperMethod=method;document[domMethod]("touchstart",swiper.onDocumentTouchStart,{passive:!1,capture:capture}),el[domMethod]("touchstart",swiper.onTouchStart,{passive:!1}),el[domMethod]("pointerdown",swiper.onTouchStart,{passive:!1}),document[domMethod]("touchmove",swiper.onTouchMove,{passive:!1,capture:capture}),document[domMethod]("pointermove",swiper.onTouchMove,{passive:!1,capture:capture}),document[domMethod]("touchend",swiper.onTouchEnd,{passive:!0}),document[domMethod]("pointerup",swiper.onTouchEnd,{passive:!0}),document[domMethod]("pointercancel",swiper.onTouchEnd,{passive:!0}),document[domMethod]("touchcancel",swiper.onTouchEnd,{passive:!0}),document[domMethod]("pointerout",swiper.onTouchEnd,{passive:!0}),document[domMethod]("pointerleave",swiper.onTouchEnd,{passive:!0}),document[domMethod]("contextmenu",swiper.onTouchEnd,{passive:!0}),(params.preventClicks||params.preventClicksPropagation)&&el[domMethod]("click",swiper.onClick,!0),params.cssMode&&wrapperEl[domMethod]("scroll",swiper.onScroll),params.updateOnWindowResize?swiper[swiperMethod](device.ios||device.android?"resize orientationchange observerUpdate":"resize observerUpdate",onResize,!0):swiper[swiperMethod]("observerUpdate",onResize,!0),el[domMethod]("load",swiper.onLoad,{capture:!0})};function attachEvents(){const swiper=this,{params:params}=swiper;swiper.onTouchStart=onTouchStart.bind(swiper),swiper.onTouchMove=onTouchMove.bind(swiper),swiper.onTouchEnd=onTouchEnd.bind(swiper),swiper.onDocumentTouchStart=onDocumentTouchStart.bind(swiper),params.cssMode&&(swiper.onScroll=onScroll.bind(swiper)),swiper.onClick=onClick.bind(swiper),swiper.onLoad=onLoad.bind(swiper),events(swiper,"on")}function detachEvents(){const swiper=this;events(this,"off")}var events$1;const isGridEnabled=(swiper,params)=>swiper.grid&¶ms.grid&¶ms.grid.rows>1;function setBreakpoint(){const swiper=this,{realIndex:realIndex,initialized:initialized,params:params,el:el}=swiper,breakpoints=params.breakpoints;if(!breakpoints||breakpoints&&0===Object.keys(breakpoints).length)return;
9755const breakpoint=swiper.getBreakpoint(breakpoints,swiper.params.breakpointsBase,swiper.el);if(!breakpoint||swiper.currentBreakpoint===breakpoint)return;const breakpointOnlyParams=breakpoint in breakpoints?breakpoints[breakpoint]:void 0,breakpointParams=breakpointOnlyParams||swiper.originalParams,wasMultiRow=isGridEnabled(swiper,params),isMultiRow=isGridEnabled(swiper,breakpointParams),wasEnabled=params.enabled;wasMultiRow&&!isMultiRow?(el.classList.remove(`${params.containerModifierClass}grid`,`${params.containerModifierClass}grid-column`),swiper.emitContainerClasses()):!wasMultiRow&&isMultiRow&&(el.classList.add(`${params.containerModifierClass}grid`),(breakpointParams.grid.fill&&"column"===breakpointParams.grid.fill||!breakpointParams.grid.fill&&"column"===params.grid.fill)&&el.classList.add(`${params.containerModifierClass}grid-column`),swiper.emitContainerClasses()),["navigation","pagination","scrollbar"].forEach(prop=>{if(void 0===breakpointParams[prop])return;const wasModuleEnabled=params[prop]&¶ms[prop].enabled,isModuleEnabled=breakpointParams[prop]&&breakpointParams[prop].enabled;wasModuleEnabled&&!isModuleEnabled&&swiper[prop].disable(),!wasModuleEnabled&&isModuleEnabled&&swiper[prop].enable()});const directionChanged=breakpointParams.direction&&breakpointParams.direction!==params.direction,needsReLoop=params.loop&&(breakpointParams.slidesPerView!==params.slidesPerView||directionChanged),wasLoop=params.loop;directionChanged&&initialized&&swiper.changeDirection(),extend(swiper.params,breakpointParams);const isEnabled=swiper.params.enabled,hasLoop=swiper.params.loop;Object.assign(swiper,{allowTouchMove:swiper.params.allowTouchMove,allowSlideNext:swiper.params.allowSlideNext,allowSlidePrev:swiper.params.allowSlidePrev}),wasEnabled&&!isEnabled?swiper.disable():!wasEnabled&&isEnabled&&swiper.enable(),swiper.currentBreakpoint=breakpoint,swiper.emit("_beforeBreakpoint",breakpointParams),initialized&&(needsReLoop?(swiper.loopDestroy(),swiper.loopCreate(realIndex),swiper.updateSlides()):!wasLoop&&hasLoop?(swiper.loopCreate(realIndex),swiper.updateSlides()):wasLoop&&!hasLoop&&swiper.loopDestroy()),swiper.emit("breakpoint",breakpointParams)}function getBreakpoint(breakpoints,base,containerEl){if(void 0===base&&(base="window"),!breakpoints||"container"===base&&!containerEl)return;let breakpoint=!1;const window=getWindow(),currentHeight="window"===base?window.innerHeight:containerEl.clientHeight,points=Object.keys(breakpoints).map(point=>{if("string"==typeof point&&0===point.indexOf("@")){const minRatio=parseFloat(point.substr(1)),value=currentHeight*minRatio;return{value:value,point:point}}return{value:point,point:point}});points.sort((a,b)=>
9755parseInt(a.value,10)-parseInt(b.value,10));for(let i=0;i<points.length;i+=1){const{point:point,value:value}=points[i];"window"===base?window.matchMedia(`(min-width: ${value}px)`).matches&&(breakpoint=point):value<=containerEl.clientWidth&&(breakpoint=point)}return breakpoint||"max"}var breakpoints,classes;function prepareClasses(entries,prefix){const resultClasses=[];return entries.forEach(item=>{"object"==typeof item?Object.keys(item).forEach(classNames=>{item[classNames]&&resultClasses.push(prefix+classNames)}):"string"==typeof item&&resultClasses.push(prefix+item)}),resultClasses}function addClasses(){const swiper=this,{classNames:classNames,params:params,rtl:rtl,el:el,device:device}=this,suffixes=prepareClasses(["initialized",params.direction,{"free-mode":this.params.freeMode&¶ms.freeMode.enabled},{autoheight:params.autoHeight},{rtl:rtl},{grid:params.grid&¶ms.grid.rows>1},{"grid-column":params.grid&¶ms.grid.rows>1&&"column"===params.grid.fill},{android:device.android},{ios:device.ios},{"css-mode":params.cssMode},{centered:params.cssMode&¶ms.centeredSlides},{"watch-progress":params.watchSlidesProgress}],params.containerModifierClass);classNames.push(...suffixes),el.classList.add(...classNames),this.emitContainerClasses()}function removeClasses(){const swiper=this,{el:el,classNames:classNames}=this;el.classList.remove(...classNames),this.emitContainerClasses()}function checkOverflow(){const swiper=this,{isLocked:wasLocked,params:params}=swiper,{slidesOffsetBefore:slidesOffsetBefore}=params;if(slidesOffsetBefore){const lastSlideIndex=swiper.slides.length-1,lastSlideRightEdge=swiper.slidesGrid[lastSlideIndex]+swiper.slidesSizesGrid[lastSlideIndex]+2*slidesOffsetBefore;swiper.isLocked=swiper.size>lastSlideRightEdge}else swiper.isLocked=1===swiper.snapGrid.length;!0===params.allowSlideNext&&(swiper.allowSlideNext=!swiper.isLocked),!0===params.allowSlidePrev&&(swiper.allowSlidePrev=!swiper.isLocked),wasLocked&&wasLocked!==swiper.isLocked&&(swiper.isEnd=!1),wasLocked!==swiper.isLocked&&swiper.emit(swiper.isLocked?"lock":"unlock")}var checkOverflow$1,defaults={init:!0,direction:"horizontal",oneWayMovement:!1,touchEventsTarget:"wrapper",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!0,nested:!1,createElements:!1,eventsPrefix:"swiper",enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerGroup:1,slidesPerGroupSkip:0,slidesPerGroupAuto:!1,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!0,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:5,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,loop:!1,loopAddBlankSlides:!0,loopAdditionalSlides:0,loopPreventsSliding:!0,rewind:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,maxBackfaceHiddenSlides:10,containerModifierClass:"swiper-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-blank",slideActiveClass:"swiper-slide-active",slideVisibleClass:"swiper-slide-visible",slideFullyVisibleClass:"swiper-slide-fully-visible",slideNextClass:"swiper-slide-next",slidePrevClass:"swiper-slide-prev",wrapperClass:"swiper-wrapper",lazyPreloaderClass:"swiper-lazy-preloader",lazyPreloadPrevNext:0,runCallbacksOnInit:!0,_emitClasses:!1};function moduleExtendParams(params,allModulesParams){return function extendParams(obj){void 0===obj&&(obj={});const moduleParamName=Object.keys(obj)[0],moduleParams=obj[moduleParamName];"object"==typeof moduleParams&&null!==moduleParams?(!0===params[moduleParamName]&&(params[moduleParamName]={enabled:!0}),"navigation"===moduleParamName&¶ms[moduleParamName]&¶ms[moduleParamName].enabled&&!params[moduleParamName].prevEl&&!params[moduleParamName].nextEl&&(params[moduleParamName].auto=!0),["pagination","scrollbar"].indexOf(moduleParamName)>=0&¶ms[moduleParamName]&¶ms[moduleParamName].enabled&&!params[moduleParamName].el&&(params[moduleParamName].auto=!0),moduleParamName in params&&"enabled"in moduleParams?("object"!=typeof params[moduleParamName]||"enabled"in params[moduleParamName]||(params[moduleParamName].enabled=!0),params[moduleParamName]||(params[moduleParamName]={enabled:!1}),extend(allModulesParams,obj)):extend(allModulesParams,obj)):extend(allModulesParams,obj)}}const prototypes={eventsEmitter:eventsEmitter,update:{updateSize:updateSize,updateSlides:updateSlides,updateAutoHeight:updateAutoHeight,updateSlidesOffset:updateSlidesOffset,updateSlidesProgress:updateSlidesProgress,updateProgress:updateProgress,updateSlidesClasses:updateSlidesClasses,updateActiveIndex:updateActiveIndex,updateClickedSlide:updateClickedSlide},translate:{getTranslate:getSwiperTranslate,setTranslate:setTranslate,minTranslate:minTranslate,maxTranslate:maxTranslate,translateTo:translateTo},transition:{setTransition:setTransition,transitionStart:transitionStart,transitionEnd:transitionEnd},slide:{slideTo:slideTo,slideToLoop:slideToLoop,slideNext:slideNext,slidePrev:slidePrev,slideReset:slideReset,slideToClosest:slideToClosest,slideToClickedSlide:slideToClickedSlide},loop:{loopCreate:loopCreate,loopFix:loopFix,loopDestroy:loopDestroy},grabCursor:{setGrabCursor:setGrabCursor,unsetGrabCursor:unsetGrabCursor},events:{attachEvents:attachEvents,detachEvents:detachEvents}
9755,breakpoints:{setBreakpoint:setBreakpoint,getBreakpoint:getBreakpoint},checkOverflow:{checkOverflow:checkOverflow},classes:{addClasses:addClasses,removeClasses:removeClasses}},extendedDefaults={};class Swiper{constructor(){let el,params;for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];1===args.length&&args[0].constructor&&"Object"===Object.prototype.toString.call(args[0]).slice(8,-1)?params=args[0]:[el,params]=args,params||(params={}),params=extend({},params),el&&!params.el&&(params.el=el);const document=getDocument();if(params.el&&"string"==typeof params.el&&document.querySelectorAll(params.el).length>1){const swipers=[];return document.querySelectorAll(params.el).forEach(containerEl=>{const newParams=extend({},params,{el:containerEl});swipers.push(new Swiper(newParams))}),swipers}const swiper=this;swiper.__swiper__=!0,swiper.support=getSupport(),swiper.device=getDevice({userAgent:params.userAgent}),swiper.browser=getBrowser(),swiper.eventsListeners={},swiper.eventsAnyListeners=[],swiper.modules=[...swiper.__modules__],params.modules&&Array.isArray(params.modules)&&swiper.modules.push(...params.modules);const allModulesParams={};swiper.modules.forEach(mod=>{mod({params:params,swiper:swiper,extendParams:moduleExtendParams(params,allModulesParams),on:swiper.on.bind(swiper),once:swiper.once.bind(swiper),off:swiper.off.bind(swiper),emit:swiper.emit.bind(swiper)})});const swiperParams=extend({},defaults,allModulesParams);return swiper.params=extend({},swiperParams,extendedDefaults,params),swiper.originalParams=extend({},swiper.params),swiper.passedParams=extend({},params),swiper.params&&swiper.params.on&&Object.keys(swiper.params.on).forEac
9755h(eventName=>{swiper.on(eventName,swiper.params.on[eventName])}),swiper.params&&swiper.params.onAny&&swiper.onAny(swiper.params.onAny),Object.assign(swiper,{enabled:swiper.params.enabled,el:el,classNames:[],slides:[],slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:()=>"horizontal"===swiper.params.direction,isVertical:()=>"vertical"===swiper.params.direction,activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,cssOverflowAdjustment(){return Math.trunc(this.translate/2**23)*2**23},allowSlideNext:swiper.params.allowSlideNext,allowSlidePrev:swiper.params.allowSlidePrev,touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:swiper.params.focusableElements,lastClickTime:0,clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,startMoving:void 0,pointerId:null,touchId:null},allowClick:!0,allowTouchMove:swiper.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),swiper.emit("_swiper"),swiper.params.init&&swiper.init(),swiper}getDirectionLabel(property){return this.isHorizontal()?property:{width:"height","margin-top":"margin-left","margin-bottom ":"margin-right","margin-left":"margin-top","margin-right":"margin-bottom","padding-left":"padding-top","padding-right":"padding-bottom",marginRight:"marginBottom"}[property]}getSlideIndex(slideEl){const{slidesEl:slidesEl,params:params}=this,slides=elementChildren(slidesEl,`.${params.slideClass}, swiper-slide`),firstSlideIndex=elementIndex(slides[0]);return elementIndex(slideEl)-firstSlideIndex}getSlideIndexByData(index){return this.getSlideIndex(this.slides.filter(slideEl=>1*slideEl.getAttribute("data-swiper-slide-index")===index)[0])}recalcSlides(){const swiper=this,{slidesEl:slidesEl,params:params}=this;this.slides=elementChildren(slidesEl,`.${params.slideClass}, swiper-slide`)}enable(){const swiper=this;swiper.enabled||(swiper.enabled=!0,swiper.params.grabCursor&&swiper.setGrabCursor(),swiper.emit("enable"))}disable(){const swiper=this;swiper.enabled&&(swiper.enabled=!1,swiper.params.grabCursor&&swiper.unsetGrabCursor(),swiper.emit("disable"))}setProgress(progress,speed){const swiper=this;progress=Math.min(Math.max(progress,0),1);const min=this.minTranslate(),max=this.maxTranslate(),current=(max-min)*progress+min;this.translateTo(current,void 0===speed?0:speed),this.updateActiveIndex(),this.updateSlidesClasses()}emitContainerClasses(){const swiper=this;if(!swiper.params._emitClasses||!swiper.el)return;const cls=swiper.el.className.split(" ").filter(className=>0===className.indexOf("swiper")||0===className.indexOf(swiper.params.containerModifierClass));swiper.emit("_containerClasses",cls.join(" "))}getSlideClasses(slideEl){const swiper=this;return swiper.destroyed?"":slideEl.className.split(" ").filter(className=>0===className.indexOf("swiper-slide")||0===className.indexOf(swiper.params.slideClass)).join(" ")}emitSlidesClasses(){const swiper=this;if(!swiper.params._emitClasses||!swiper.el)return;const updates=[];
9755swiper.slides.forEach(slideEl=>{const classNames=swiper.getSlideClasses(slideEl);updates.push({slideEl:slideEl,classNames:classNames}),swiper.emit("_slideClass",slideEl,classNames)}),swiper.emit("_slideClasses",updates)}slidesPerViewDynamic(view,exact){void 0===view&&(view="current"),void 0===exact&&(exact=!1);const swiper=this,{params:params,slides:slides,slidesGrid:slidesGrid,slidesSizesGrid:slidesSizesGrid,size:swiperSize,activeIndex:activeIndex}=this;let spv=1;if("number"==typeof params.slidesPerView)return params.slidesPerView;if(params.centeredSlides){let slideSize=slides[activeIndex]?slides[activeIndex].swiperSlideSize:0,breakLoop;for(let i=activeIndex+1;i<slides.length;i+=1)slides[i]&&!breakLoop&&(slideSize+=slides[i].swiperSlideSize,spv+=1,slideSize>swiperSize&&(breakLoop=!0));for(let i=activeIndex-1;i>=0;i-=1)slides[i]&&!breakLoop&&(slideSize+=slides[i].swiperSlideSize,spv+=1,slideSize>swiperSize&&(breakLoop=!0))}else if("current"===view)for(let i=activeIndex+1;i<slides.length;i+=1){const slideInView=exact?slidesGrid[i]+slidesSizesGrid[i]-slidesGrid[activeIndex]<swiperSize:slidesGrid[i]-slidesGrid[activeIndex]<swiperSize;slideInView&&(spv+=1)}else for(let i=activeIndex-1;i>=0;i-=1){const slideInView=slidesGrid[activeIndex]-slidesGrid[i]<swiperSize;slideInView&&(spv+=1)}return spv}update(){const swiper=this;if(!swiper||swiper.destroyed)return;const{snapGrid:snapGrid,params:params}=swiper;function setTranslate(){const translateValue=swiper.rtlTranslate?-1*swiper.translate:swiper.translate,newTranslate=Math.min(Math.max(translateValue,swiper.maxTranslate()),swiper.minTranslate());swiper.setTranslate(newTranslate),swiper.updateActiveIndex(),swiper.updateSlidesClasses()}let translated;if(params.breakpoints&&swiper.setBreakpoint(),[...swiper.el.querySelectorAll('[loading="lazy"]')].forEach(imageEl=>{imageEl.complete&&processLazyPreloader(swiper,imageEl)}),swiper.updateSize(),swiper.updateSlides(),swiper.updateProgress(),swiper.updateSlidesClasses(),params.freeMode&¶ms.freeMode.enabled&&!params.cssMode)setTranslate(),params.autoHeight&&swiper.updateAutoHeight();else{if(("auto"===params.slidesPerView||params.slidesPerView>1)&&swiper.isEnd&&!params.centeredSlides){const slides=swiper.virtual&¶ms.virtual.enabled?swiper.virtual.slides:swiper.slides;translated=swiper.slideTo(slides.length-1,0,!1,!0)}else translated=swiper.slideTo(swiper.activeIndex,0,!1,!0);translated||setTranslate()}params.watchOverflow&&snapGrid!==swiper.snapGrid&&swiper.checkOverflow(),swiper.emit("update")}changeDirection(newDirection,needUpdate){void 0===needUpdate&&(needUpdate=!0);const swiper=this,currentDirection=swiper.params.direction;return newDirection||(newDirection="horizontal"===currentDirection?"vertical":"horizontal"),newDirection===currentDirection||"horizontal"!==newDirection&&"vertical"!==newDirection?swiper:(swiper.el.classList.remove(`${swiper.params.containerModifierClass}${currentDirection}`),swiper.el.classList.add(`${swiper.params.containerModifierClass}${newDirection}`),swiper.emitContainerClasses(),swiper.params.direction=newDirection,swiper.slides.forEach(sli
9755deEl=>{"vertical"===newDirection?slideEl.style.width="":slideEl.style.height=""}),swiper.emit("changeDirection"),needUpdate&&swiper.update(),swiper)}changeLanguageDirection(direction){const swiper=this;swiper.rtl&&"rtl"===direction||!swiper.rtl&&"ltr"===direction||(swiper.rtl="rtl"===direction,swiper.rtlTranslate="horizontal"===swiper.params.direction&&swiper.rtl,swiper.rtl?(swiper.el.classList.add(`${swiper.params.containerModifierClass}rtl`),swiper.el.dir="rtl"):(swiper.el.classList.remove(`${swiper.params.containerModifierClass}rtl`),swiper.el.dir="ltr"),swiper.update())}mount(element){const swiper=this;if(swiper.mounted)return!0;let el=element||swiper.params.el;if("string"==typeof el&&(el=document.querySelector(el)),!el)return!1;el.swiper=swiper,el.parentNode&&el.parentNode.host&&"SWIPER-CONTAINER"===el.parentNode.host.nodeName&&(swiper.isElement=!0);const getWrapperSelector=()=>`.${(swiper.params.wrapperClass||"").trim().split(" ").join(".")}`,getWrapper=()=>{if(el&&el.shadowRoot&&el.shadowRoot.querySelector){const res=el.shadowRoot.querySelector(getWrapperSelector());return res}return elementChildren(el,getWrapperSelector())[0]};let wrapperEl=getWrapper();return!wrapperEl&&swiper.params.createElements&&(wrapperEl=createElement("div",swiper.params.wrapperClass),el.append(wrapperEl),elementChildren(el,`.${swiper.params.slideClass}
9755`).forEach(slideEl=>{wrapperEl.append(slideEl)})),Object.assign(swiper,{el:el,wrapperEl:wrapperEl,slidesEl:swiper.isElement&&!el.parentNode.host.slideSlots?el.parentNode.host:wrapperEl,hostEl:swiper.isElement?el.parentNode.host:el,mounted:!0,rtl:"rtl"===el.dir.toLowerCase()||"rtl"===elementStyle(el,"direction"),rtlTranslate:"horizontal"===swiper.params.direction&&("rtl"===el.dir.toLowerCase()||"rtl"===elementStyle(el,"direction")),wrongRTL:"-webkit-box"===elementStyle(wrapperEl,"display")}),!0}init(el){const swiper=this;if(swiper.initialized)return swiper;const mounted=swiper.mount(el);if(!1===mounted)return swiper;swiper.emit("beforeInit"),swiper.params.breakpoints&&swiper.setBreakpoint(),swiper.addClasses(),swiper.updateSize(),swiper.updateSlides(),swiper.params.watchOverflow&&swiper.checkOverflow(),swiper.params.grabCursor&&swiper.enabled&&swiper.setGrabCursor(),swiper.params.loop&&swiper.virtual&&swiper.params.virtual.enabled?swiper.slideTo(swiper.params.initialSlide+swiper.virtual.slidesBefore,0,swiper.params.runCallbacksOnInit,!1,!0):swiper.slideTo(swiper.params.initialSlide,0,swiper.params.runCallbacksOnInit,!1,!0),swiper.params.loop&&swiper.loopCreate(),swiper.attachEvents();const lazyElements=[...swiper.el.querySelectorAll('[loading="lazy"]')];return swiper.isElement&&lazyElements.push(...swiper.hostEl.querySelectorAll('[loading="lazy"]')),lazyElements.forEach(imageEl=>{imageEl.complete?processLazyPreloader(swiper,imageEl):imageEl.addEventListener("load",e=>{processLazyPreloader(swiper,e.target)})}),preload(swiper),swiper.initialized=!0,preload(swiper),swiper.emit("init"),swiper.emit("afterInit"),swiper}destroy(deleteInstance,cleanStyles){void 0===deleteInstance&&(deleteInstance=!0),void 0===cleanStyles&&(cleanStyles=!0);const swiper=this,{params:params,el:el,wrapperEl:wrapperEl,slides:slides}=swiper;return void 0===swiper.params||swiper.destroyed?null:(swiper.emit("beforeDestroy"),swiper.initialized=!1,swiper.detachEvents(),params.loop&&swiper.loopDestroy(),cleanStyles&&(swiper.removeClasses(),el.removeAttribute("style"),wrapperEl.removeAttribute("style"),slides&&slides.length&&slides.forEach(sli
9755deEl=>{slideEl.classList.remove(params.slideVisibleClass,params.slideFullyVisibleClass,params.slideActiveClass,params.slideNextClass,params.slidePrevClass),slideEl.removeAttribute("style"),slideEl.removeAttribute("data-swiper-slide-index")})),swiper.emit("destroy"),Object.keys(swiper.eventsListeners).forEach(eventName=>{swiper.off(eventName)}),!1!==deleteInstance&&(swiper.el.swiper=null,deleteProps(swiper)),swiper.destroyed=!0,null)}static extendDefaults(newDefaults){extend(extendedDefaults,newDefaults)}static get extendedDefaults(){return extendedDefaults}static get defaults(){return defaults}static installModule(mod){Swiper.prototype.__modules__||(Swiper.prototype.__modules__=[]);const modules=Swiper.prototype.__modules__;"function"==typeof mod&&modules.indexOf(mod)<0&&modules.push(mod)}static use(module){return Array.isArray(module)?(module.forEach(m=>Swiper.installModule(m)),Swiper):(Swiper.installModule(module),Swiper)}}function Keyboard(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit}=_ref;const document=getDocument(),window=getWindow();function handle(event){if(!swiper.enabled)return;const{rtlTranslate:rtl}=swiper;let e=event;e.originalEvent&&(e=e.originalEvent);const kc=e.keyCode||e.charCode,pageUpDown=swiper.params.keyboard.pageUpDown,isPageUp=pageUpDown&&33===kc,isPageDown=pageUpDown&&34===kc,isArrowLeft=37===kc,isArrowRight=39===kc,isArrowUp=38===kc,isArrowDown=40===kc;if(!swiper.allowSlideNext&&(swiper.isHorizontal()&&isArrowRight||swiper.isVertical()&&isArrowDown||isPageDown))return!1;if(!swiper.allowSlidePrev&&(swiper.isHorizontal()&&isArrowLeft||swiper.isVertical()&&isArrowUp||isPageUp))return!1;if(!(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey||document.activeElement&&document.activeElement.nodeName&&("input"===document.activeElement.nodeName.toLowerCase()||"textarea"===document.activeElement.nodeName.toLowerCase()))){if(swiper.params.keyboard.onlyInViewport&&(isPageUp||isPageDown||isArrowLeft||isArrowRight||isArrowUp||isArrowDown)){let inView=!1;if(elementParents(swiper.el,`.${swiper.params.slideClass}, swiper-slide`).length>0&&0===elementParents(swiper.el,`.${swiper.params.slideActiveClass}`).length)return;const el=swiper.el,swiperWidth=el.clientWidth,swiperHeight=el.clientHeight,windowWidth=window.innerWidth,windowHeight=window.innerHeight,swiperOffset=elementOffset(el);rtl&&(swiperOffset.left-=el.scrollLeft);const swiperCoord=[[swiperOffset.left,swiperOffset.top],[swiperOffset.left+swiperWidth,swiperOffset.top],[swiperOffset.left,swiperOffset.top+swiperHeight],[swiperOffset.left+swiperWidth,swiperOffset.top+swiperHeight]];for(let i=0;i<swiperCoord.length;i+=1){const point=swiperCoord[i];if(point[0]>=0&&point[0]<=windowWidth&&point[1]>=0&&point[1]<=windowHeight){if(0===point[0]&&0===point[1])continue;inView=!0}}if(!inView)return}swiper.isHorizontal()?((isPageUp||isPageDown||isArrowLeft||isArrowRight)&&(e.preventDefault?e.preventDefault():e.returnValue=!1),((isPageDown||isArrowRight)&&!rtl||(isPageUp||isArrowLeft)&&rtl)&&swiper.slideNext(),((isPageUp||isArrowLeft)&&!rtl||(isPageDown||isArrowRight)&&rtl)&&swiper.slidePrev()):((isPageUp||isPageDown||isArrowUp||isArrowDown)&&(e.preventDefault?e.preventDefault():e.returnValue=!1),(isPageDown||isArrowDown)&&swiper.slideNext(),(isPageUp||isArrowUp)&&swiper.slidePrev()),emit("keyPress",kc)}}function enable(){swiper.keyboard.enabled||(document.addEventListener("keydown",handle),swiper.keyboard.enabled=!0)}function disable(){swiper.keyboard.enabled&&(document.removeEventListener("keydown",handle),swiper.keyboard.enabled=!1)}swiper.keyboard={enabled:!1},extendParams({keyboard:{enabled:!1,onlyInViewport:!0,pageUpDown:!0}}),on("init",()=>{swiper.params.keyboard.enabled&&enable()}),on("destroy",()=>{swiper.keyboard.enabled&&disable()}),Object.assign(swiper.keyboard,{enable:enable,disable:disable})}function Mousewheel(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit}=_ref;const window=getWindow();let timeout;extendParams({mousewheel:{enabled:!1,releaseOnEdges:!1,invert:!1,forceToAxis:!1,sensitivity:1,eventsTarget:"container",thresholdDelta:null,thresholdTime:null,noMousewheelClass:"swiper-no-mousewheel"}}),swiper.mousewheel={enabled:!1};let lastScrollTime=now(),lastEventBeforeSnap;const recentWheelEvents=[];function normalize(e){const PIXEL_STEP=10,LINE_HEIGHT=40,PAGE_HEIGHT=800;let sX=0,sY=0,pX=0,pY=0;return"detail"in e&&(sY=e.detail),"wheelDelta"in e&&(sY=-e.wheelDelta/120),"wheelDeltaY"in e&&(sY=-e.wheelDeltaY/120
vendor: 4,294 bytes, line 9755
9755),"wheelDeltaX"in e&&(sX=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(sX=sY,sY=0),pX=10*sX,pY=10*sY,"deltaY"in e&&(pY=e.deltaY),"deltaX"in e&&(pX=e.deltaX),e.shiftKey&&!pX&&(pX=pY,pY=0),(pX||pY)&&e.deltaMode&&(1===e.deltaMode?(pX*=40,pY*=40):(pX*=800,pY*=800)),pX&&!sX&&(sX=pX<1?-1:1),pY&&!sY&&(sY=pY<1?-1:1),{spinX:sX,spinY:sY,pixelX:pX,pixelY:pY}}function handleMouseEnter(){swiper.enabled&&(swiper.mouseEntered=!0)}function handleMouseLeave(){swiper.enabled&&(swiper.mouseEntered=!1)}function animateSlider(newEvent){return!(swiper.params.mousewheel.thresholdDelta&&newEvent.delta<swiper.params.mousewheel.thresholdDelta)&&(!(swiper.params.mousewheel.thresholdTime&&now()-lastScrollTime<swiper.params.mousewheel.thresholdTime)&&(newEvent.delta>=6&&now()-lastScrollTime<60||(newEvent.direction<0?swiper.isEnd&&!swiper.params.loop||swiper.animating||(swiper.slideNext(),emit("scroll",newEvent.raw)):swiper.isBeginning&&!swiper.params.loop||swiper.animating||(swiper.slidePrev(),emit("scroll",newEvent.raw)),lastScrollTime=(new window.Date).getTime(),!1)))}function releaseScroll(newEvent){const params=swiper.params.mousewheel;if(newEvent.direction<0){if(swiper.isEnd&&!swiper.params.loop&¶ms.releaseOnEdges)return!0}else if(swiper.isBeginning&&!swiper.params.loop&¶ms.releaseOnEdges)return!0;return!1}function handle(event){let e=event,disableParentSwiper=!0;if(!swiper.enabled)return;if(event.target.closest(`.${swiper.params.mousewheel.noMousewheelClass}`))return;const params=swiper.params.mousewheel;swiper.params.cssMode&&e.preventDefault();let targetEl=swiper.el;"container"!==swiper.params.mousewheel.eventsTarget&&(targetEl=document.querySelector(swiper.params.mousewheel.eventsTarget));const targetElContainsTarget=targetEl&&targetEl.contains(e.target);if(!swiper.mouseEntered&&!targetElContainsTarget&&!params.releaseOnEdges)return!0;e.originalEvent&&(e=e.originalEvent);let delta=0;const rtlFactor=swiper.rtlTranslate?-1:1,data=normalize(e);if(params.forceToAxis)if(swiper.isHorizontal()){if(!(Math.abs(data.pixelX)>Math.abs(data.pixelY)))return!0;delta=-data.pixelX*rtlFactor}else{if(!(Math.abs(data.pixelY)>Math.abs(data.pixelX)))return!0;delta=-data.pixelY}else delta=Math.abs(data.pixelX)>Math.abs(data.pixelY)?-data.pixelX*rtlFactor:-data.pixelY;if(0===delta)return!0;params.invert&&(delta=-delta);let positions=swiper.getTranslate()+delta*params.sensitivity;if(positions>=swiper.minTranslate()&&(positions=swiper.minTranslate()),positions<=swiper.maxTranslate()&&(positions=swiper.maxTranslate()),disableParentSwiper=!!swiper.params.loop||!(positions===swiper.minTranslate()||positions===swiper.maxTranslate()),disableParentSwiper&&swiper.params.nested&&e.stopPropagation(),swiper.params.freeMode&&swiper.params.freeMode.enabled){const newEvent={time:now(),delta:Math.abs(delta),direction:Math.sign(delta)},ignoreWheelEvents=lastEventBeforeSnap&&newEvent.time<lastEventBeforeSnap.time+500&&newEvent.delta<=lastEventBeforeSnap.delta&&newEvent.direction===lastEventBeforeSnap.direction;if(!ignoreWheelEvents){lastEventBeforeSnap=void 0;let position=swiper.getTranslate()+delta*params.sensitivity;const wasBeginning=swiper.isBeginning,wasEnd=swiper.isEnd;if(position>=swiper.minTranslate()&&(position=swiper.minTranslate()),position<=swiper.maxTranslate()&&(position=swiper.maxTranslate()),swiper.setTransition(0),swiper.setTranslate(position),swiper.updateProgress(),swiper.updateActiveIndex(),swiper.updateSlidesClasses(),(!wasBeginning&&swiper.isBeginning||!wasEnd&&swiper.isEnd)&&swiper.updateSlidesClasses(),swiper.params.loop&&swiper.loopFix({direction:newEvent.direction<0?"next":"prev",byMousewheel:!0}),swiper.params.freeMode.sticky){clearTimeout(timeout),timeout=void 0,recentWheelEvents.length>=15&&recentWheelEvents.shift();const prevEvent=recentWheelEvents.length?recentWheelEvents[recentWheelEvents.length-1]:void 0,firstEvent=recentWheelEvents[0];if(recentWheelEvents.push(newEvent),prevEvent&&(newEvent.delta>prevEvent.delta||newEvent.direction!==prevEvent.direction))recentWheelEvents.splice(0);else if(recentWheelEvents.length>=15&&newEvent.time-firstEvent.time<500&&firstEvent.delta-newEvent.delta>=1&&newEvent.delta<=6){const snapToThreshold=delta>0?.8:.2;lastEventBeforeSnap=newEvent,recentWheelEvents.splice(0),timeout=nextTick(()=>
9755{swiper.slideToClosest(swiper.params.speed,!0,void 0,snapToThreshold)},0)}timeout||(timeout=nextTick(()=>{const snapToThreshold=.5;lastEventBeforeSnap=newEvent,recentWheelEvents.splice(0),swiper.slideToClosest(swiper.params.speed,!0,void 0,.5)},500))}if(ignoreWheelEvents||emit("scroll",e),swiper.params.autoplay&&swiper.params.autoplayDisableOnInteraction&&swiper.autoplay.stop(),params.releaseOnEdges&&(position===swiper.minTranslate()||position===swiper.maxTranslate()))return!0}}else{const newEvent={time:now(),delta:Math.abs(delta),direction:Math.sign(delta),raw:event};recentWheelEvents.length>=2&&recentWheelEvents.shift();const prevEvent=recentWheelEvents.length?recentWheelEvents[recentWheelEvents.length-1]:void 0;if(recentWheelEvents.push(newEvent),prevEvent?(newEvent.direction!==prevEvent.direction||newEvent.delta>prevEvent.delta||newEvent.time>prevEvent.time+150)&&animateSlider(newEvent):animateSlider(newEvent),releaseScroll(newEvent))return!0}return e.preventDefault?e.preventDefault():e.returnValue=!1,!1}function events(method){let targetEl=swiper.el;"container"!==swiper.params.mousewheel.eventsTarget&&(targetEl=document.querySelector(swiper.params.mousewheel.eventsTarget)),targetEl[method]("mouseenter",handleMouseEnter),targetEl[method]("mouseleave",handleMouseLeave),targetEl[method]("wheel",handle)}function enable(){return swiper.params.cssMode?(swiper.wrapperEl.removeEventListener("wheel",handle),!0):!swiper.mousewheel.enabled&&(events("addEventListener"),swiper.mousewheel.enabled=!0,!0)}function disable(){return swiper.params.cssMode?(swiper.wrapperEl.addEventListener(event,handle),!0):!!swiper.mousewheel.enabled&&(events("removeEventListener"),swiper.mousewheel.enabled=!1,!0)}on("init",()=>{!swiper.params.mousewheel.enabled&&swiper.params.cssMode&&disable(),swiper.params.mousewheel.enabled&&enable()}),on("destroy",()=>{swiper.params.cssMode&&enable(),swiper.mousewheel.enabled&&disable()}),Object.assign(swiper.mousewheel,{enable:enable,disable:disable})}function createElementIfNotDefined(swiper,originalParams,params,checkProps){return swiper.params.createElements&&Object.keys(checkProps).forEach(key=>{if(!params[key]&&!0===params.auto){let element=elementChildren(swiper.el,`.${checkProps[key]}`)[0];element||(element=createElement("div",checkProps[key]),element.className=checkProps[key],swiper.el.append(element)),params[key]=element,originalParams[key]=element}}),params}function Navigation(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit}=_ref;extendParams({navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock",navigationDisabledClass:"swiper-navigation-disabled"}}),swiper.navigation={nextEl:null,prevEl:null};const makeElementsArray=el=>(Array.isArray(el)?el:[el]).filter(e=>!!e);function getEl(el){let res;return el&&"string"==typeof el&&swiper.isElement&&(res=swiper.el.querySelector(el),res)?res:(el&&("string"==typeof el&&(res=[...document.querySelectorAll(el)]),swiper.params.uniqueNavElements&&"string"==typeof el&&res.length>1&&1===swiper.el.querySelectorAll(el).length&&(res=swiper.el.querySelector(el))),el&&!res?el:res)}function toggleEl(el,disabled){const params=swiper.params.navigation;(el=makeElementsArray(el)).forEach(subEl=>{subEl&&(subEl.classList[disabled?"add":"remove"](...params.disabledClass.split(" ")),"BUTTON"===subEl.tagName&&(subEl.disabled=disabled),swiper.params.watchOverflow&&swiper.enabled&&subEl.classList[swiper.isLocked?"add":"remove"](params.lockClass))})}function update(){const{nextEl:nextEl,prevEl:prevEl}=swiper.navigation;if(swiper.params.loop)return toggleEl(prevEl,!1),void toggleEl(nextEl,!1);toggleEl(prevEl,swiper.isBeginning&&!swiper.params.rewind),toggleEl(nextEl,swiper.isEnd&&!swiper.params.rewind)}function onPrevClick(e){e.preventDefault(),(!swiper.isBeginning||swiper.params.loop||swiper.params.rewind)&&(swiper.slidePrev(),emit("navigationPrev"))}function onNextClick(e){e.preventDefault(),(!swiper.isEnd||swiper.params.loop||swiper.params.rewind)&&(swiper.slideNext(),emit("navigationNext"))}
9755function init(){const params=swiper.params.navigation;if(swiper.params.navigation=createElementIfNotDefined(swiper,swiper.originalParams.navigation,swiper.params.navigation,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),!params.nextEl&&!params.prevEl)return;let nextEl=getEl(params.nextEl),prevEl=getEl(params.prevEl);Object.assign(swiper.navigation,{nextEl:nextEl,prevEl:prevEl}),nextEl=makeElementsArray(nextEl),prevEl=makeElementsArray(prevEl);const initButton=(el,dir)=>{el&&el.addEventListener("click","next"===dir?onNextClick:onPrevClick),!swiper.enabled&&el&&el.classList.add(...params.lockClass.split(" "))};nextEl.forEach(el=>initButton(el,"next")),prevEl.forEach(el=>initButton(el,"prev"))}function destroy(){let{nextEl:nextEl,prevEl:prevEl}=swiper.navigation;nextEl=makeElementsArray(nextEl),prevEl=makeElementsArray(prevEl);const destroyButton=(el,dir)=>{el.removeEventListener("click","next"===dir?onNextClick:onPrevClick),el.classList.remove(...swiper.params.navigation.disabledClass.split(" "))};nextEl.forEach(el=>destroyButton(el,"next")),prevEl.forEach(el=>destroyButton(el,"prev"))}on("init",()=>{!1===swiper.params.navigation.enabled?disable():(init(),update())}),on("toEdge fromEdge lock unlock",()=>{update()}),on("destroy",()=>{destroy()}),on("enable disable",()=>{let{nextEl:nextEl,prevEl:prevEl}=swiper.navigation;nextEl=makeElementsArray(nextEl),prevEl=makeElementsArray(prevEl),swiper.enabled?update():[...nextEl,...prevEl].filter(el=>!!el).forEach(el=>el.classList.add(swiper.params.navigation.lockClass))}),on("click",(_s,e)=>{let{nextEl:nextEl,prevEl:prevEl}=swiper.navigation;nextEl=makeElementsArray(nextEl),prevEl=makeElementsArray(prevEl);const targetEl=e.target;if(swiper.params.navigation.hideOnClick&&!prevEl.includes(targetEl)&&!nextEl.includes(targetEl)){if(swiper.pagination&&swiper.params.pagination&&swiper.params.pagination.clickable&&(swiper.pagination.el===targetEl||swiper.pagination.el.contains(targetEl)))return;let isHidden;nextEl.length?isHidden=nextEl[0].classList.contains(swiper.params.navigation.hiddenClass):prevEl.length&&(isHidden=prevEl[0].classList.contains(swiper.params.navigation.hiddenClass)),emit(!0===isHidden?"navigationShow":"navigationHide"),[...nextEl,...prevEl].filter(el=>!!el).forEach(el=>el.classList.toggle(swiper.params.navigation.hiddenClass))}});const enable=()=>{swiper.el.classList.remove(...swiper.params.navigation.navigationDisabledClass.split(" ")),init(),update()},disable=()=>{swiper.el.classList.add(...swiper.params.navigation.navigationDisabledClass.split(" ")),destroy()};Object.assign(swiper.navigation,{enable:enable,disable:disable,update:update,init:init,destroy:destroy})}function classesToSelector(classes){return void 0===classes&&(classes=""),`.${classes.trim().replace(/([\.:!+\/])/g,"\\$1").replace(/ /g,".")}`}function Pagination(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit}=_ref;const pfx="swiper-pagination";let bulletSize;extendParams({pagination:{el:null,bulletElement:"span",clickable:!1,hideOnClick:!1,renderBullet:null,renderProgressbar:null,renderFraction:null,renderCustom:null,progressbarOpposite:!1,type:"bullets",dynamicBullets:!1,dynamicMainBullets:1,formatFractionCurrent:number=>number,formatFractionTotal:number=>number,bulletClass:`${pfx}-bullet`,bulletActiveClass:`${pfx}-bullet-active`,modifierClass:`${pfx}-`,currentClass:`${pfx}-current`,totalClass:`${pfx}-total`,hiddenClass:`${pfx}-hidden`,progressbarFillClass:`${pfx}-progressbar-fill`,progressbarOppositeClass:`${pfx}-progressbar-opposite`,clickableClass:`${pfx}-clickable`,lockClass:`${pfx}-lock`,horizontalClass:`${pfx}-horizontal`,verticalClass:`${pfx}-vertical`,paginationDisabledClass:`${pfx}-disabled`}}),swiper.pagination={el:null,bullets:[]};let dynamicBulletIndex=0;const makeElementsArray=el=>(Array.isArray(el)?el:[el]).filter(e=>!!e);function isPaginationDisabled(){return!swiper.params.pagination.el||!swiper.pagination.el||Array.isArray(swiper.pagination.el)&&0===swiper.pagination.el.length}function setSideBullets(bulletEl,position){const{bulletActiveClass:bulletActiveClass}=swiper.params.pagination;bulletEl&&(bulletEl=bulletEl[`${"prev"===position?"previous":"next"}ElementSibling`])&&(bulletEl.classList.add(`${bulletActiveClass}-${position}`),(bulletEl=bulletEl[`${"prev"===position?"previous":"next"}ElementSibling`])&&bulletEl.classList.add(`${bulletActiveClass}-${position}-${position}`))}function onBulletClick(e){const bulletEl=e.target.closest(classesToSelector(swiper.params.pagination.bulletClass));if(!bulletEl)return;e.preventDefault();const index=elementIndex(bulletEl)*swiper.params.slidesPerGroup;if(swiper.params.loop){if(swiper.realIndex===index)return;swiper.slideToLoop(index)}else swiper.slideTo(index)}
9755function update(){const rtl=swiper.rtl,params=swiper.params.pagination;if(isPaginationDisabled())return;let el=swiper.pagination.el,current,previousIndex;el=makeElementsArray(el);const slidesLength=swiper.virtual&&swiper.params.virtual.enabled?swiper.virtual.slides.length:swiper.slides.length,total=swiper.params.loop?Math.ceil(slidesLength/swiper.params.slidesPerGroup):swiper.snapGrid.length;if(swiper.params.loop?(previousIndex=swiper.previousRealIndex||0,current=swiper.params.slidesPerGroup>1?Math.floor(swiper.realIndex/swiper.params.slidesPerGroup):swiper.realIndex):void 0!==swiper.snapIndex?(current=swiper.snapIndex,previousIndex=swiper.previousSnapIndex):(previousIndex=swiper.previousIndex||0,current=swiper.activeIndex||0),"bullets"===params.type&&swiper.pagination.bullets&&swiper.pagination.bullets.length>0){const bullets=swiper.pagination.bullets;let firstIndex,lastIndex,midIndex;if(params.dynamicBullets&&(bulletSize=elementOuterSize(bullets[0],swiper.isHorizontal()?"width":"height",!0),el.forEach(subEl=>{subEl.style[swiper.isHorizontal()?"width":"height"]=`${bulletSize*(params.dynamicMainBullets+4)}px`}),params.dynamicMainBullets>1&&void 0!==previousIndex&&(dynamicBulletIndex+=current-(previousIndex||0),dynamicBulletIndex>params.dynamicMainBullets-1?dynamicBulletIndex=params.dynamicMainBullets-1:dynamicBulletIndex<0&&(dynamicBulletIndex=0)),firstIndex=Math.max(current-dynamicBulletIndex,0),lastIndex=firstIndex+(Math.min(bullets.length,params.dynamicMainBullets)-1),midIndex=(lastIndex+firstIndex)/2),bullets.forEach(bulletEl=>{const classesToRemove=[...["","-next","-next-next","-prev","-prev-prev","-main"].map(suffix=>`${params.bulletActiveClass}${suffix}`)].map(s=>"string"==typeof s&&s.includes(" ")?s.split(" "):s).flat();bulletEl.classList.remove(...classesToRemove)}),el.length>1)bullets.forEach(bullet=>{const bulletIndex=elementIndex(bullet);bulletIndex===current?bullet.classList.add(...params.bulletActiveClass.split(" ")):swiper.isElement&&bullet.setAttribute("part","bullet"),params.dynamicBullets&&(bulletIndex>=firstIndex&&bulletIndex<=lastIndex&&bullet.classList.add(...`${params.bulletActiveClass}-main`.split(" ")),bulletIndex===firstIndex&&setSideBullets(bullet,"prev"),bulletIndex===lastIndex&&setSideBullets(bullet,"next"))});else{const bullet=bullets[current];if(bullet&&bullet.classList.add(...params.bulletActiveClass.split(" ")),swiper.isElement&&bullets.forEach((bulletEl,bulletIndex)=>{bulletEl.setAttribute("part",bulletIndex===current?"bullet-active":"bullet")}),params.dynamicBullets){const firstDisplayedBullet=bullets[firstIndex],lastDisplayedBullet=bullets[lastIndex];for(let i=firstIndex;i<=lastIndex;i+=1)bullets[i]&&bullets[i].classList.add(...`${params.bulletActiveClass}-main`.split(" "));setSideBullets(firstDisplayedBullet,"prev"),setSideBullets(lastDisplayedBullet,"next")}}if(params.dynamicBullets){const dynamicBulletsLength=Math.min(bullets.length,params.dynamicMainBullets+4),bulletsOffset=(bulletSize*dynamicBulletsLength-bulletSize)/2-midIndex*bulletSize,offsetProp=rtl?"right":"left";bullets.forEach(bullet=>{bullet.style[swiper.isHorizontal()?offsetProp:"top"]=`${bulletsOffset}px`})}}el.forEach((subEl,subElIndex)=>{if("fraction"===params.type&&(subEl.querySelectorAll(classesToSelector(params.currentClass)).forEach(fractionEl=>{fractionEl.textContent=params.formatFractionCurrent(current+1)}),subEl.querySelectorAll(classesToSelector(params.totalClass)).forEach(totalEl=>{totalEl.textContent=params.formatFractionTotal(total)})),"progressbar"===params.type){let progressbarDirection;progressbarDirection=params.progressbarOpposite?swiper.isHorizontal()?"vertical":"horizontal":swiper.isHorizontal()?"horizontal":"vertical";const scale=(current+1)/total;let scaleX=1,scaleY=1;"horizontal"===progressbarDirection?scaleX=scale:scaleY=scale,subEl.querySelectorAll(classesToSelector(params.progressbarFillClass)).forEach(progressEl=>{progressEl.style.transform=`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`,progressEl.style.transitionDuration=`${swiper.params.speed}ms`})}"custom"===params.type&¶ms.renderCustom?(subEl.innerHTML=params.renderCustom(swiper,current+1,total),0===subElIndex&&emit
9755("paginationRender",subEl)):(0===subElIndex&&emit("paginationRender",subEl),emit("paginationUpdate",subEl)),swiper.params.watchOverflow&&swiper.enabled&&subEl.classList[swiper.isLocked?"add":"remove"](params.lockClass)})}function render(){const params=swiper.params.pagination;if(isPaginationDisabled())return;const slidesLength=swiper.virtual&&swiper.params.virtual.enabled?swiper.virtual.slides.length:swiper.grid&&swiper.params.grid.rows>1?swiper.slides.length/Math.ceil(swiper.params.grid.rows):swiper.slides.length;let el=swiper.pagination.el;el=makeElementsArray(el);let paginationHTML="";if("bullets"===params.type){let numberOfBullets=swiper.params.loop?Math.ceil(slidesLength/swiper.params.slidesPerGroup):swiper.snapGrid.length;swiper.params.freeMode&&swiper.params.freeMode.enabled&&numberOfBullets>slidesLength&&(numberOfBullets=slidesLength);for(let i=0;i<numberOfBullets;i+=1)params.renderBullet?paginationHTML+=params.renderBullet.call(swiper,i,params.bulletClass):paginationHTML+=`<${params.bulletElement} ${swiper.isElement?'part="bullet"':""} class="${params.bulletClass}"></${params.bulletElement}>`}"fraction"===params.type&&(paginationHTML=params.renderFraction?params.renderFraction.call(swiper,params.currentClass,params.totalClass):`<span class="${params.currentClass}"></span>`+" / "+`<span class="${params.totalClass}"></span>`),"progressbar"===params.type&&(paginationHTML=params.renderProgressbar?params.renderProgressbar.call(swiper,params.progressbarFillClass):`<span class="${params.progressbarFillClass}"></span>`),swiper.pagination.bullets=[],el.forEach(subEl=>{"custom"!==params.type&&(subEl.innerHTML=paginationHTML||""),"bullets"===params.type&&swiper.pagination.bullets.push(...subEl.querySelectorAll(classesToSelector(params.bulletClass)))}),"custom"!==params.type&&emit("paginationRender",el[0])}function init(){swiper.params.pagination=createElementIfNotDefined(swiper,swiper.originalParams.pagination,swiper.params.pagination,{el:"swiper-pagination"});const params=swiper.params.pagination;if(!params.el)return;let el;"string"==typeof params.el&&swiper.isElement&&(el=swiper.el.querySelector(params.el)),el||"string"!=typeof params.el||(el=[...document.querySelectorAll(params.el)]),el||(el=params.el),el&&0!==el.length&&(swiper.params.uniqueNavElements&&"string"==typeof params.el&&Array.isArray(el)&&el.length>1&&(el=[...swiper.el.querySelectorAll(params.el)],el.length>1&&(el=el.filter(subEl=>elementParents(subEl,".swiper")[0]===swiper.el)[0])),Array.isArray(el)&&1===el.length&&(el=el[0]),Object.assign(swiper.pagination,{el:el}),el=makeElementsArray(el),el.forEach(subEl=>{"bullets"===params.type&¶ms.clickable&&subEl.classList.add(...(params.clickableClass||"").split(" ")),subEl.classList.add(params.modifierClass+params.type),subEl.classList.add(swiper.isHorizontal()?params.horizontalClass:params.verticalClass),"bullets"===params.type&¶ms.dynamicBullets&&(subEl.classList.add(`${params.modifierClass}${params.type}-dynamic`),dynamicBulletIndex=0,params.dynamicMainBullets<1&&(params.dynamicMainBullets=1)),"progressbar"===params.type&¶ms.progressbarOpposite&&subEl.classList.add(params.progressbarOppositeClass),params.clickable&&subEl.addEventListener("click",onBulletClick),swiper.enabled||subEl.classList.add(params.lockClass)}))}function destroy(){const params=swiper.params.pagination;if(isPaginationDisabled())return;let el=swiper.pagination.el;el&&(el=makeElementsArray(el),el.forEach(subEl=>{subEl.classList.remove(params.hiddenClass),subEl.classList.remove(params.modifierClass+params.type),subEl.classList.remove(swiper.isHorizontal()?params.horizontalClass:params.verticalClass),params.clickable&&(subEl.classList.remove(...(params.clickableClass||"").split(" ")),subEl.removeEventListener("click",onBulletClick))})),swiper.pagination.bullets&&swiper.pagination.bullets.forEach(subEl=>subEl.classList.remove(...params.bulletActiveClass.split(" ")))}on("changeDirection",()=>{if(!swiper.pagination||!swiper.pagination.el)return;const params=swiper.params.pagination;let{el:el}=swiper.pagination;el=makeElementsArray(el),el.forEach(subEl=>{subEl.classList.remove(params.horizontalClass,params.verticalClass),subEl.classList.add(swiper.isHorizontal()?params.horizontalClass:params.verticalClass)})}),on("init",()=>{!1===swiper.params.pagination.enabled?disable():(init(),render(),update())}),on("activeIndexChange",()=>{void 0===swiper.snapIndex&&update()}),on("snapIndexChange",()=>
9755{update()}),on("snapGridLengthChange",()=>{render(),update()}),on("destroy",()=>{destroy()}),on("enable disable",()=>{let{el:el}=swiper.pagination;el&&(el=makeElementsArray(el),el.forEach(subEl=>subEl.classList[swiper.enabled?"remove":"add"](swiper.params.pagination.lockClass)))}),on("lock unlock",()=>{update()}),on("click",(_s,e)=>{const targetEl=e.target,el=makeElementsArray(swiper.pagination.el);if(swiper.params.pagination.el&&swiper.params.pagination.hideOnClick&&el&&el.length>0&&!targetEl.classList.contains(swiper.params.pagination.bulletClass)){if(swiper.navigation&&(swiper.navigation.nextEl&&targetEl===swiper.navigation.nextEl||swiper.navigation.prevEl&&targetEl===swiper.navigation.prevEl))return;const isHidden=el[0].classList.contains(swiper.params.pagination.hiddenClass);emit(!0===isHidden?"paginationShow":"paginationHide"),el.forEach(subEl=>subEl.classList.toggle(swiper.params.pagination.hiddenClass))}});const enable=()=>{swiper.el.classList.remove(swiper.params.pagination.paginationDisabledClass);let{el:el}=swiper.pagination;el&&(el=makeElementsArray(el),el.forEach(subEl=>subEl.classList.remove(swiper.params.pagination.paginationDisabledClass))),init(),render(),update()},disable=()=>{swiper.el.classList.add(swiper.params.pagination.paginationDisabledClass);let{el:el}=swiper.pagination;el&&(el=makeElementsArray(el),el.forEach(subEl=>subEl.classList.add(swiper.params.pagination.paginationDisabledClass))),destroy()};Object.assign(swiper.pagination,{enable:enable,disable:disable,render:render,update:update,init:init,destroy:destroy})}function Controller(_ref){let{swiper:swiper,extendParams:extendParams,on:on}=_ref;function LinearSpline(x,y){const binarySearch=function search(){let maxIndex,minIndex,guess;return(array,val)=>{for(minIndex=-1,maxIndex=array.length;maxIndex-minIndex>1;)guess=maxIndex+minIndex>>1,array[guess]<=val?minIndex=guess:maxIndex=guess;return maxIndex}}();let i1,i3;return this.x=x,this.y=y,this.lastIndex=x.length-1,this.interpolate=function interpolate(x2){return x2?(i3=binarySearch(this.x,x2),i1=i3-1,(x2-this.x[i1])*(this.y[i3]-this.y[i1])/(this.x[i3]-this.x[i1])+this.y[i1]):0},this}function getInterpolateFunction(c){swiper.controller.spline=swiper.params.loop?new LinearSpline(swiper.slidesGrid,c.slidesGrid):new LinearSpline(swiper.snapGrid,c.snapGrid)}function setTranslate(_t,byController){const controlled=swiper.controller.control;let multiplier,controlledTranslate;const Swiper=swiper.constructor;function setControlledTranslate(c){if(c.destroyed)return;const translate=swiper.rtlTranslate?-swiper.translate:swiper.translate;"slide"===swiper.params.controller.by&&(getInterpolateFunction(c),controlledTranslate=-swiper.controller.spline.interpolate(-translate)),controlledTranslate&&"container"!==swiper.params.controller.by||(multiplier=(c.maxTranslate()-c.minTranslate())/(swiper.maxTranslate()-swiper.minTranslate()),!Number.isNaN(multiplier)&&Number.isFinite(multiplier)||(multiplier=1),controlledTranslate=(translate-swiper.minTranslate())*multiplier+c.minTranslate()),swiper.params.controller.inverse&&(controlledTranslate=c.maxTranslate()-controlledTranslate),c.updateProgress(controlledTranslate),c.setTranslate(controlledTranslate,swiper),c.updateActiveIndex(),c.updateSlidesClasses()}if(Array.isArray(controlled))for(let i=0;i<controlled.length;i+=1)controlled[i]!==byController&&controlled[i]instanceof Swiper&&setControlledTranslate(controlled[i]);else controlled instanceof Swiper&&byController!==controlled&&setControlledTranslate(controlled)}function setTransition(duration,byController){const Swiper=swiper.constructor,controlled=swiper.controller.control;let i;function setControlledTransition(c){c.destroyed||(c.setTransition(duration,swiper),0!==duration&&(c.transitionStart(),c.params.autoHeight&&nextTick(()=>{c.updateAutoHeight()}),elementTransitionEnd(c.wrapperEl,()=>{controlled&&c.transitionEnd()})))}if(Array.isArray(controlled))for(i=0;i<controlled.length;i+=1)controlled[i]!==byController&&controlled[i]instanceof Swiper&&setControlledTransition(controlled[i]);else controlled instanceof Swiper&&byController!==controlled&&setControlledTransition(controlled)}function removeSpline(){swiper.controller.control&&swiper.controller.spline&&(swiper.controller.spline=void 0,delete swiper.controller.spline)}extendParams({controller:{control:void 0,inverse:!1,by:"slide"}}),swiper.controller={control:void 0},on("beforeInit",()=>{if("undefined"!=typeof window&&("string"==typeof swiper.params.controller.control||swiper.params.controller.control instanceof HTMLElement)){const controlElement=document.querySelector(swiper.params.controller.control);if(controlElement&&controlElement.swiper)swiper.controller.control=controlElement.swiper;else if(controlElement){const onControllerSwiper=e=>
9755{swiper.controller.control=e.detail[0],swiper.update(),controlElement.removeEventListener("init",onControllerSwiper)};controlElement.addEventListener("init",onControllerSwiper)}}else swiper.controller.control=swiper.params.controller.control}),on("update",()=>{removeSpline()}),on("resize",()=>{removeSpline()}),on("observerUpdate",()=>{removeSpline()}),on("setTranslate",(_s,translate,byController)=>{swiper.controller.control&&!swiper.controller.control.destroyed&&swiper.controller.setTranslate(translate,byController)}),on("setTransition",(_s,duration,byController)=>{swiper.controller.control&&!swiper.controller.control.destroyed&&swiper.controller.setTransition(duration,byController)}),Object.assign(swiper.controller,{setTranslate:setTranslate,setTransition:setTransition})}function Autoplay(_ref){let{swiper:swiper,extendParams:extendParams,on:on,emit:emit,params:params}=_ref,timeout,raf;swiper.autoplay={running:!1,paused:!1,timeLeft:0},extendParams({autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!1,stopOnLastSlide:!1,reverseDirection:!1,pauseOnMouseEnter:!1}});let autoplayDelayTotal=params&¶ms.autoplay?params.autoplay.delay:3e3,autoplayDelayCurrent=params&¶ms.autoplay?params.autoplay.delay:3e3,autoplayTimeLeft,autoplayStartTime=(new Date).getTime(),wasPaused,isTouched,pausedByTouch,touchStartTimeout,slideChanged,pausedByInteraction,pausedByPointerEnter;function onTransitionEnd(e){swiper&&!swiper.destroyed&&swiper.wrapperEl&&e.target===swiper.wrapperEl&&(swiper.wrapperEl.removeEventListener("transitionend",onTransitionEnd),pausedByPointerEnter||resume())}const calcTimeLeft=()=>{if(swiper.destroyed||!swiper.autoplay.running)return;swiper.autoplay.paused?wasPaused=!0:wasPaused&&(autoplayDelayCurrent=autoplayTimeLeft,wasPaused=!1);const timeLeft=swiper.autoplay.paused?autoplayTimeLeft:autoplayStartTime+autoplayDelayCurrent-(new Date).getTime();swiper.autoplay.timeLeft=timeLeft,emit("autoplayTimeLeft",timeLeft,timeLeft/autoplayDelayTotal),raf=requestAnimationFrame(()=>{calcTimeLeft()})},getSlideDelay=()=>{let activeSlideEl;if(activeSlideEl=swiper.virtual&&swiper.params.virtual.enabled?swiper.slides.filter(slideEl=>slideEl.classList.contains("swiper-slide-active"))[0]:swiper.slides[swiper.activeIndex],!activeSlideEl)return;const currentSlideDelay=parseInt(activeSlideEl.getAttribute("data-swiper-autoplay"),10);return currentSlideDelay},run=delayForce=>{if(swiper.destroyed||!swiper.autoplay.running)return;cancelAnimationFrame(raf),calcTimeLeft();let delay=void 0===delayForce?swiper.params.autoplay.delay:delayForce;autoplayDelayTotal=swiper.params.autoplay.delay,autoplayDelayCurrent=swiper.params.autoplay.delay;const currentSlideDelay=getSlideDelay();!Number.isNaN(currentSlideDelay)&¤tSlideDelay>0&&void 0===delayForce&&(delay=currentSlideDelay,autoplayDelayTotal=currentSlideDelay,autoplayDelayCurrent=currentSlideDelay),autoplayTimeLeft=delay;const speed=swiper.params.speed,proceed=()=>{swiper&&!swiper.destroyed&&(swiper.params.autoplay.reverseDirection?!swiper.isBeginning||swiper.params.loop||swiper.params.rewind?(swiper.slidePrev(speed,!0,!0),emit("autoplay")):swiper.params.autoplay.stopOnLastSlide||(swiper.slideTo(swiper.slides.length-1,speed,!0,!0),emit("autoplay")):!swiper.isEnd||swiper.params.loop||swiper.params.rewind?(swiper.slideNext(speed,!0,!0),emit("autoplay")):swiper.params.autoplay.stopOnLastSlide||(swiper.slideTo(0,speed,!0,!0),emit("autoplay")),swiper.params.cssMode&&(autoplayStartTime=(new Date).getTime(),requestAnimationFrame(()=>{run()})))};return delay>0?(clearTimeout(timeout),timeout=setTimeout(()=>{proceed()},delay)):requestAnimationFrame(()=>{proceed()}),delay},start=()=>{autoplayStartTime=(new Date).getTime(),swiper.autoplay.running=!0,run(),emit("autoplayStart")},stop=()=>{swiper.autoplay.running=!1,clearTimeout(timeout),cancelAnimationFrame(raf),emit("autoplayStop")},pause=(internal,reset)=>{if(swiper.destroyed||!swiper.autoplay.running)return;clearTimeout(timeout),internal||(pausedByInteraction=!0);const proceed=()=>{emit("autoplayPause"),swiper.params.autoplay.waitForTransition?swiper.wrapperEl.addEventListener("transitionend",onTransitionEnd):resume()};if(swiper.autoplay.paused=!0,reset)return slideChanged&&(autoplayTimeLeft=swiper.params.autoplay.delay),slideChanged=!1,void proceed();const delay=autoplayTimeLeft||swiper.params.autoplay.delay;autoplayTimeLeft=delay-((new Date).getTime()-autoplayStartTime),swiper.isEnd&&autoplayTimeLeft<0&&!swi
9755per.params.loop||(autoplayTimeLeft<0&&(autoplayTimeLeft=0),proceed())},resume=()=>{swiper.isEnd&&autoplayTimeLeft<0&&!swiper.params.loop||swiper.destroyed||!swiper.autoplay.running||(autoplayStartTime=(new Date).getTime(),pausedByInteraction?(pausedByInteraction=!1,run(autoplayTimeLeft)):run(),swiper.autoplay.paused=!1,emit("autoplayResume"))},onVisibilityChange=()=>{if(swiper.destroyed||!swiper.autoplay.running)return;const document=getDocument();"hidden"===document.visibilityState&&(pausedByInteraction=!0,pause(!0)),"visible"===document.visibilityState&&resume()},onPointerEnter=e=>{"mouse"===e.pointerType&&(pausedByInteraction=!0,pausedByPointerEnter=!0,swiper.animating||swiper.autoplay.paused||pause(!0))},onPointerLeave=e=>{"mouse"===e.pointerType&&(pausedByPointerEnter=!1,swiper.autoplay.paused&&resume())},attachMouseEvents=()=>{swiper.params.autoplay.pauseOnMouseEnter&&(swiper.el.addEventListener("pointerenter",onPointerEnter),swiper.el.addEventListener("pointerleave",onPointerLeave))},detachMouseEvents=()=>{swiper.el.removeEventListener("pointerenter",onPointerEnter),swiper.el.removeEventListener("pointerleave",onPointerLeave)},attachDocumentEvents=()=>{const document=getDocument();document.addEventListener("visibilitychange",onVisibilityChange)},detachDocumentEvents=()=>{const document=getDocument();document.removeEventListener("visibilitychange",onVisibilityChange)};on("init",()=>{swiper.params.autoplay.enabled&&(attachMouseEvents(),attachDocumentEvents(),start())}),on("destroy",()=>{detachMouseEvents(),detachDocumentEvents(),swiper.autoplay.running&&stop()}),on("_freeModeStaticRelease",()=>{(pausedByTouch||pausedByInteraction)&&resume()}),on("_freeModeNoMomentumRelease",()=>{swiper.params.autoplay.disableOnInteraction?stop():pause(!0,!0)}),on("beforeTransitionStart",(_s,speed,internal)=>{!swiper.destroyed&&swiper.autoplay.running&&(internal||!swiper.params.autoplay.disableOnInteraction?pause(!0,!0):stop())}),on("sliderFirstMove",()=>{!swiper.destroyed&&swiper.autoplay.running&&(swiper.params.autoplay.disableOnInteraction?stop():(isTouched=!0,pausedByTouch=!1,pausedByInteraction=!1,touchStartTimeout=setTimeout(()=>{pausedByInteraction=!0,pausedByTouch=!0,pause(!0)},200)))}),on("touchEnd",()=>{if(!swiper.destroyed&&swiper.autoplay.running&&isTouched){if(clearTimeout(touchStartTimeout),clearTimeout(timeout),swiper.params.autoplay.disableOnInteraction)return pausedByTouch=!1,void(isTouched=!1);pausedByTouch&&swiper.params.cssMode&&resume(),pausedByTouch=!1,isTouched=!1}}),on("slideChange",()=>{!swiper.destroyed&&swiper.autoplay.running&&(slideChanged=!0)}),Object.assign(swiper.autoplay,{start:start,stop:stop,pause:pause,resume:resume})}function Thumb(_ref){let{swiper:swiper,extendParams:extendParams,on:on}=_ref;extendParams({thumbs:{swiper:null,multipleActiveThumbs:!0,autoScrollOffset:0,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-thumbs"}});let initialized=!1,swiperCreated=!1;function onThumbClick(){const thumbsSwiper=swiper.thumbs.swiper;if(!thumbsSwiper||thumbsSwiper.destroyed)return;const clickedIndex=thumbsSwiper.clickedIndex,clickedSlide=thumbsSwiper.clickedSlide;if(clickedSlide&&clickedSlide.classList.contains(swiper.params.thumbs.slideThumbActiveClass))return;if(null==clickedIndex)return;let slideToIndex;slideToIndex=thumbsSwiper.params.loop?parseInt(thumbsSwiper.clickedSlide.getAttribute("data-swiper-slide-index"),10):clickedIndex,swiper.params.loop?swiper.slideToLoop(slideToIndex):swiper.slideTo(slideToIndex)}function init(){const{thumbs:thumbsParams}=swiper.params;if(initialized)return!1;initialized=!0;const SwiperClass=swiper.constructor;if(thumbsParams.swiper instanceof SwiperClass)swiper.thumbs.swiper=thumbsParams.swiper,Object.assign(swiper.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),Object.assign(swiper.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1}),swiper.thumbs.swiper.update();else if(isObject(thumbsParams.swiper)){const thumbsSwiperParams=Object.assign({},thumbsParams.swiper);Object.assign(thumbsSwiperParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),swiper.thumbs.swiper=new SwiperClass(thumbsSwiperParams),swiperCreated=!0}return swiper.thumbs.swiper.el.classList.add(swiper.params.thumbs.thumbsContainerClass),swiper.thumbs.swiper.on("tap",onThumbClick),!0}function update(initial){const thumbsSwiper=swiper.thumbs.swiper;if(!thumbsSwiper||thumbsSwiper.destroyed)return;const slidesPerView="auto"===thumbsSwiper.params.slidesPerView?thumbsSwiper.slidesPerViewDynamic():thumbsSwiper.params.slidesPerView;let thumbsToActivate=1;const thumbActiveClass=swiper.params.thumbs.slideThumbActiveClass;if(swiper.params.slidesPerView>
97551&&!swiper.params.centeredSlides&&(thumbsToActivate=swiper.params.slidesPerView),swiper.params.thumbs.multipleActiveThumbs||(thumbsToActivate=1),thumbsToActivate=Math.floor(thumbsToActivate),thumbsSwiper.slides.forEach(slideEl=>slideEl.classList.remove(thumbActiveClass)),thumbsSwiper.params.loop||thumbsSwiper.params.virtual&&thumbsSwiper.params.virtual.enabled)for(let i=0;i<thumbsToActivate;i+=1)elementChildren(thumbsSwiper.slidesEl,`[data-swiper-slide-index="${swiper.realIndex+i}"]`).forEach(slideEl=>{slideEl.classList.add(thumbActiveClass)});else for(let i=0;i<thumbsToActivate;i+=1)thumbsSwiper.slides[swiper.realIndex+i]&&thumbsSwiper.slides[swiper.realIndex+i].classList.add(thumbActiveClass);const autoScrollOffset=swiper.params.thumbs.autoScrollOffset,useOffset=autoScrollOffset&&!thumbsSwiper.params.loop;if(swiper.realIndex!==thumbsSwiper.realIndex||useOffset){const currentThumbsIndex=thumbsSwiper.activeIndex;let newThumbsIndex,direction;if(thumbsSwiper.params.loop){const newThumbsSlide=thumbsSwiper.slides.filter(slideEl=>slideEl.getAttribute("data-swiper-slide-index")===`${swiper.realIndex}`)[0];newThumbsIndex=thumbsSwiper.slides.indexOf(newThumbsSlide),direction=swiper.activeIndex>swiper.previousIndex?"next":"prev"}else newThumbsIndex=swiper.realIndex,direction=newThumbsIndex>swiper.previousIndex?"next":"prev";useOffset&&(newThumbsIndex+="next"===direction?autoScrollOffset:-1*autoScrollOffset),thumbsSwiper.visibleSlidesIndexes&&thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex)<0&&(thumbsSwiper.params.centeredSlides?newThumbsIndex=newThumbsIndex>currentThumbsIndex?newThumbsIndex-Math.floor(slidesPerView/2)+1:newThumbsIndex+Math.floor(slidesPerView/2)-1:newThumbsIndex>currentThumbsIndex&&thumbsSwiper.params.slidesPerGroup,thumbsSwiper.slideTo(newThumbsIndex,initial?0:void 0))}}swiper.thumbs={swiper:null},on("beforeInit",()=>{const{thumbs:thumbs}=swiper.params;if(thumbs&&thumbs.swiper)if("string"==typeof thumbs.swiper||thumbs.swiper instanceof HTMLElement){const document=getDocument(),getThumbsElementAndInit=()=>{const thumbsElement="string"==typeof thumbs.swiper?document.querySelector(thumbs.swiper):thumbs.swiper;if(thumbsElement&&thumbsElement.swiper)thumbs.swiper=thumbsElement.swiper,init(),update(!0);else if(thumbsElement){const onThumbsSwiper=e=>{thumbs.swiper=e.detail[0],thumbsElement.removeEventListener("init",onThumbsSwiper),init(),update(!0),thumbs.swiper.update(),swiper.update()};thumbsElement.addEventListener("init",onThumbsSwiper)}return thumbsElement},watchForThumbsToAppear=()=>{if(swiper.destroyed)return;const thumbsElement=getThumbsElementAndInit();thumbsElement||requestAnimationFrame(watchForThumbsToAppear)};requestAnimationFrame(watchForThumbsToAppear)}else init(),update(!0)}),on("slideChange update resize observerUpdate",()=>{update()}),on("setTransition",(_s,duration)=>{const thumbsSwiper=swiper.thumbs.swiper;thumbsSwiper&&!thumbsSwiper.destroyed&&thumbsSwiper.setTransition(duration)}),on("beforeDestroy",()=>{const thumbsSwiper=swiper.thumbs.swiper;thumbsSwiper&&!thumbsSwiper.destroyed&&swiperCreated&&thumbsSwiper.destroy()}),Object.assign(swiper.thumbs,{init:init,update:update})}function freeMode(_ref){let{swiper:swiper,extendParams:extendParams,emit:emit,once:once}=_ref;function onTouchStart(){if(swiper.params.cssMode)return;const translate=swiper.getTranslate();swiper.setTranslate(translate),swiper.setTransition(0),swiper.touchEventsData.velocities.length=0,swiper.freeMode.onTouchEnd({currentPos:swiper.rtl?swiper.translate:-swiper.translate})}function onTouchMove(){if(swiper.params.cssMode)return;const{touchEventsData:data,touches:touches}=swiper;0===data.velocities.length&&data.velocities.push({position:touches[swiper.isHorizontal()?"startX":"startY"],time:data.touchStartTime}),data.velocities.push({position:touches[swiper.isHorizontal()?"currentX":"currentY"],time:now()})}function onTouchEnd(_ref2){let{currentPos:currentPos}=_ref2;if(swiper.params.cssMode)return;const{params:params,wrapperEl:wrapperEl,rtlTranslate:rtl,snapGrid:snapGrid,touchEventsData:data}=swiper,touchEndTime=now(),timeDiff=touchEndTime-data.touchStartTime;if(currentPos<-swiper.minTranslate())swiper.slideTo(swiper.activeIndex);else if(currentPos>-swiper.maxTranslate())swiper.slides.length<snapGrid.length?swiper.slideTo(snapGrid.length-1):swiper.slideTo(swiper.slides.length-1);else{if(params.freeMode.momentum){if(data.velocities.length>
97551){const lastMoveEvent=data.velocities.pop(),velocityEvent=data.velocities.pop(),distance=lastMoveEvent.position-velocityEvent.position,time=lastMoveEvent.time-velocityEvent.time;swiper.velocity=distance/time,swiper.velocity/=2,Math.abs(swiper.velocity)<params.freeMode.minimumVelocity&&(swiper.velocity=0),(time>150||now()-lastMoveEvent.time>300)&&(swiper.velocity=0)}else swiper.velocity=0;swiper.velocity*=params.freeMode.momentumVelocityRatio,data.velocities.length=0;let momentumDuration=1e3*params.freeMode.momentumRatio;const momentumDistance=swiper.velocity*momentumDuration;let newPosition=swiper.translate+momentumDistance;rtl&&(newPosition=-newPosition);let doBounce=!1,afterBouncePosition;const bounceAmount=20*Math.abs(swiper.velocity)*params.freeMode.momentumBounceRatio;let needsLoopFix;if(newPosition<swiper.maxTranslate())params.freeMode.momentumBounce?(newPosition+swiper.maxTranslate()<-bounceAmount&&(newPosition=swiper.maxTranslate()-bounceAmount),afterBouncePosition=swiper.maxTranslate(),doBounce=!0,data.allowMomentumBounce=!0):newPosition=swiper.maxTranslate(),params.loop&¶ms.centeredSlides&&(needsLoopFix=!0);else if(newPosition>swiper.minTranslate())params.freeMode.momentumBounce?(newPosition-swiper.minTranslate()>bounceAmount&&(newPosition=swiper.minTranslate()+bounceAmount),afterBouncePosition=swiper.minTranslate(),doBounce=!0,data.allowMomentumBounce=!0):newPosition=swiper.minTranslate(),params.loop&¶ms.centeredSlides&&(needsLoopFix=!0);else if(params.freeMode.sticky){let nextSlide;for(let j=0;j<snapGrid.length;j+=1)if(snapGrid[j]>-newPosition){nextSlide=j;break}newPosition=Math.abs(snapGrid[nextSlide]-newPosition)<Math.abs(snapGrid[nextSlide-1]-newPosition)||"next"===swiper.swipeDirection?snapGrid[nextSlide]:snapGrid[nextSlide-1],newPosition=-newPosition}if(needsLoopFix&&once("transitionEnd",()=>{swiper.loopFix()}),0!==swiper.velocity){if(momentumDuration=rtl?Math.abs((-newPosition-swiper.translate)/swiper.velocity):Math.abs((newPosition-swiper.translate)/swiper.velocity),params.freeMode.sticky){const moveDistance=Math.abs((rtl?-newPosition:newPosition)-swiper.translate),currentSlideSize=swiper.slidesSizesGrid[swiper.activeIndex];momentumDuration=moveDistance<currentSlideSize?params.speed:moveDistance<2*currentSlideSize?1.5*params.speed:2.5*params.speed}}else if(params.freeMode.sticky)return void swiper.slideToClosest();params.freeMode.momentumBounce&&doBounce?(swiper.updateProgress(afterBouncePosition),swiper.setTransition(momentumDuration),swiper.setTranslate(newPosition),swiper.transitionStart(!0,swiper.swipeDirection),swiper.animating=!0,elementTransitionEnd(wrapperEl,()=>{swiper&&!swiper.destroyed&&data.allowMomentumBounce&&(emit("momentumBounce"),swiper.setTransition(params.speed),setTimeout(()=>{swiper.setTranslate(afterBouncePosition),elementTransitionEnd(wrapperEl,()=>{swiper&&!swiper.destroyed&&swiper.transitionEnd()})},0))})):swiper.velocity?(emit("_freeModeNoMomentumRelease"),swiper.updateProgress(newPosition),swiper.setTransition(momentumDuration),swiper.setTranslate(newPosition),swiper.transitionStart(!0,swiper.swipeDirection),swiper.animating||(swiper.animating=!0,elementTransitionEnd(wrapperEl,()=>{swiper&&!swiper.destroyed&&swiper.transitionEnd()}))):swiper.updateProgress(newPosition),swiper.updateActiveIndex(),swiper.updateSlidesClasses()}else{if(params.freeMode.sticky)return void swiper.slideToClosest();params.freeMode&&emit("_freeModeNoMomentumRelease")}(!params.freeMode.momentum||timeDiff>=params.longSwipesMs)&&(emit("_freeModeStaticRelease"),swiper.updateProgress(),swiper.updateActiveIndex(),swiper.updateSlidesClasses())}}extendParams({freeMode:{enabled:!1,momentum:!0,momentumRatio:1,momentumBounce:!0,momentumBounceRatio:1,momentumVelocityRatio:1,sticky:!1,minimumVelocity:.02}}),Object.assign(swiper,{freeMode:{onTouchStart:onTouchStart,onTouchMove:onTouchMove,onTouchEnd:onTouchEnd}})}function appendSlide(slides){const swiper=this,{params:params,slidesEl:slidesEl}=swiper;params.loop&&swiper.loopDestroy();const appendElement=slideEl=>{if("string"==typeof slideEl){const tempDOM=document.createElement("div");tempDOM.innerHTML=slideEl,slidesEl.append(tempDOM.children[0]),tempDOM.innerHTML=""}else slidesEl.append(slideEl)};if("object"==typeof slides&&"length"in slides)for(let i=0;i<slides.length;i+=1)slides[i]&&appendElement(slides[i]);else appendElement(slides);swiper.recalcSlides(),params.loop&&swiper.loopCreate(),params.observer&&!swiper.isElement||swiper.update(
9755)}function prependSlide(slides){const swiper=this,{params:params,activeIndex:activeIndex,slidesEl:slidesEl}=swiper;params.loop&&swiper.loopDestroy();let newActiveIndex=activeIndex+1;const prependElement=slideEl=>{if("string"==typeof slideEl){const tempDOM=document.createElement("div");tempDOM.innerHTML=slideEl,slidesEl.prepend(tempDOM.children[0]),tempDOM.innerHTML=""}else slidesEl.prepend(slideEl)};if("object"==typeof slides&&"length"in slides){for(let i=0;i<slides.length;i+=1)slides[i]&&prependElement(slides[i]);newActiveIndex=activeIndex+slides.length}else prependElement(slides);swiper.recalcSlides(),params.loop&&swiper.loopCreate(),params.observer&&!swiper.isElement||swiper.update(),swiper.slideTo(newActiveIndex,0,!1)}function addSlide(index,slides){const swiper=this,{params:params,activeIndex:activeIndex,slidesEl:slidesEl}=swiper;let activeIndexBuffer=activeIndex;params.loop&&(activeIndexBuffer-=swiper.loopedSlides,swiper.loopDestroy(),swiper.recalcSlides());const baseLength=swiper.slides.length;if(index<=0)return void swiper.prependSlide(slides);if(index>=baseLength)return void swiper.appendSlide(slides);let newActiveIndex=activeIndexBuffer>index?activeIndexBuffer+1:activeIndexBuffer;const slidesBuffer=[];for(let i=baseLength-1;i>=index;i-=1){const currentSlide=swiper.slides[i];currentSlide.remove(),slidesBuffer.unshift(currentSlide)}if("object"==typeof slides&&"length"in slides){for(let i=0;i<slides.length;i+=1)slides[i]&&slidesEl.append(slides[i]);newActiveIndex=activeIndexBuffer>index?activeIndexBuffer+slides.length:activeIndexBuffer}else slidesEl.append(slides);for(let i=0;i<slidesBuffer.length;i+=1)slidesEl.append(slidesBuffer[i]);swiper.recalcSlides(),params.loop&&swiper.loopCreate(),params.observer&&!swiper.isElement||swiper.update(),params.loop?swiper.slideTo(newActiveIndex+swiper.loopedSlides,0,!1):swiper.slideTo(newActiveIndex,0,!1)}function removeSlide(slidesIndexes){const swiper=this,{params:params,activeIndex:activeIndex}=swiper;let activeIndexBuffer=activeIndex;params.loop&&(activeIndexBuffer-=swiper.loopedSlides,swiper.loopDestroy());let newActiveIndex=activeIndexBuffer,indexToRemove;if("object"==typeof slidesIndexes&&"length"in slidesIndexes){for(let i=0;i<slidesIndexes.length;i+=1)indexToRemove=slidesIndexes[i],swiper.slides[indexToRemove]&&swiper.slides[indexToRemove].remove(),indexToRemove<newActiveIndex&&(newActiveIndex-=1);newActiveIndex=Math.max(newActiveIndex,0)}else indexToRemove=slidesIndexes,swiper.slides[indexToRemove]&&swiper.slides[indexToRemove].remove(),indexToRemove<newActiveIndex&&(newActiveIndex-=1),newActiveIndex=Math.max(newActiveIndex,0);swiper.recalcSlides(),params.loop&&swiper.loopCreate(),params.observer&&!swiper.isElement||swiper.update(),params.loop?swiper.slideTo(newActiveIndex+swiper.loopedSlides,0,!1):swiper.slideTo(newActiveIndex,0,!1)}function removeAllSlides(){const swiper=this,slidesIndexes=[];for(let i=0;i<swiper.slides.length;i+=1)slidesIndexes.push(i);swiper.removeSlide(slidesIndexes)}function Manipulation(_ref){let{swiper:swiper}=_ref;Object.assign(swiper,{appendSlide:appendSlide.bind(swiper),prependSlide:prependSlide.bind(swiper),addSlide:addSlide.bind(swiper),removeSlide:removeSlide.bind(swiper),removeAllSlides:removeAllSlides.bind(swiper)})}function effectInit(params){const{effect:effect,swiper:swiper,on:on,setTranslate:setTranslate,setTransition:setTransition,overwriteParams:overwriteParams,perspective:perspective,recreateShadows:recreateShadows,getEffectParams:getEffectParams}=params;let requireUpdateOnVirtual;on("beforeInit",()=>{if(swiper.params.effect!==effect)return;swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`),perspective&&perspective()&&swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);const overwriteParamsResult=overwriteParams?overwriteParams():{};Object.assign(swiper.params,overwriteParamsResult),Object.assign(swiper.originalParams,overwriteParamsResult)}),on("setTranslate",()=>{swiper.params.effect===effect&&setTranslate()}),on("setTransition",(_s,duration)=>{swiper.params.effect===effect&&setTransition(duration)}),on("transitionEnd",()=>{if(swiper.params.effect===effect&&recreateShadows){if(!getEffectParams||!getEffectParams().slideShadows)return;
9755swiper.slides.forEach(slideEl=>{slideEl.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach(shadowEl=>shadowEl.remove())}),recreateShadows()}}),on("virtualUpdate",()=>{swiper.params.effect===effect&&(swiper.slides.length||(requireUpdateOnVirtual=!0),requestAnimationFrame(()=>{requireUpdateOnVirtual&&swiper.slides&&swiper.slides.length&&(setTranslate(),requireUpdateOnVirtual=!1)}))})}function effectTarget(effectParams,slideEl){const transformEl=getSlideTransformEl(slideEl);return transformEl!==slideEl&&(transformEl.style.backfaceVisibility="hidden",transformEl.style["-webkit-backface-visibility"]="hidden"),transformEl}function effectVirtualTransitionEnd(_ref){let{swiper:swiper,duration:duration,transformElements:transformElements,allSlides:allSlides}=_ref;const{activeIndex:activeIndex}=swiper,getSlide=el=>{if(!el.parentElement){const slide=swiper.slides.filter(slideEl=>slideEl.shadowRoot&&slideEl.shadowRoot===el.parentNode)[0];return slide}return el.parentElement};if(swiper.params.virtualTranslate&&0!==duration){let eventTriggered=!1,transitionEndTarget;transitionEndTarget=allSlides?transformElements:transformElements.filter(transformEl=>{const el=transformEl.classList.contains("swiper-slide-transform")?getSlide(transformEl):transformEl;return swiper.getSlideIndex(el)===activeIndex}),transitionEndTarget.forEach(el=>{elementTransitionEnd(el,()=>{if(eventTriggered)return;if(!swiper||swiper.destroyed)return;eventTriggered=!0,swiper.animating=!1;const evt=new window.CustomEvent("transitionend",{bubbles:!0,cancelable:!0});swiper.wrapperEl.dispatchEvent(evt)})})}}function EffectFade(_ref){let{swiper:swiper,extendParams:extendParams,on:on}=_ref;extendParams({fadeEffect:{crossFade:!1}});const setTranslate=()=>{const{slides:slides}=swiper,params=swiper.params.fadeEffect;for(let i=0;i<slides.length;i+=1){const slideEl=swiper.slides[i],offset=slideEl.swiperSlideOffset;let tx=-offset;swiper.params.virtualTranslate||(tx-=swiper.translate);let ty=0;swiper.isHorizontal()||(ty=tx,tx=0);const slideOpacity=swiper.params.fadeEffect.crossFade?Math.max(1-Math.abs(slideEl.progress),0):1+Math.min(Math.max(slideEl.progress,-1),0),targetEl=effectTarget(params,slideEl);targetEl.style.opacity=slideOpacity,targetEl.style.transform=`translate3d(${tx}px, ${ty}px, 0px)`}},setTransition=duration=>{const transformElements=swiper.slides.map(slideEl=>getSlideTransformEl(slideEl));transformElements.forEach(el=>{el.style.transitionDuration=`${duration}ms`}),effectVirtualTransitionEnd({swiper:swiper,duration:duration,transformElements:transformElements,allSlides:!0})};effectInit({effect:"fade",swiper:swiper,on:on,setTranslate:setTranslate,setTransition:setTransition,overwriteParams:()=>({slidesPerView:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!swiper.params.cssMode})})}Object.keys(prototypes).forEach(prototypeGroup=>{Object.keys(prototypes[prototypeGroup]).forEach(protoMethod=>{Swiper.prototype[protoMethod]=prototypes[prototypeGroup][protoMethod]})}),Swiper.use([Resize,Observer]);const modules=[Keyboard,Mousewheel,Navigation,Pagination,Controller,Autoplay,Thumb,freeMode,Manipulation,EffectFade];return Swiper.use(modules),Swiper}(); 9756/* End */ 9757; 9758; /* Start:"a:4:{s:4:"full";s:104:"/bitrix/templates/aspro-premier/components/bitrix/catalog.section/catalog_block/script.js?17745963252623";s:6:"source";s:89:"/bitrix/templates/aspro-premier/components/bitrix/catalog.section/catalog_block/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9759if (!funcDefined("sliceItemBlock")) { 9760 sliceItemBlock = function () { 9761 $(".catalog-block .catalog-block__item:visible .catalog-block__info-title").sliceHeight({ 9762 row: ".grid-list", 9763 item: ".catalog-block__item:visible", 9764 mobile: true, 9765 }); 9766 }; 9767} 9768 9769(function () { 9770 const ready = function (callback) { 9771 if (document.readyState !== "loading") { 9772 callback(); 9773 } else { 9774 document.addEventListener("DOMContentLoaded", callback); 9775 } 9776 }; 9777 const equalHeight = function (options) { 9778 const parent = options.items.parent(); 9779 const parentRect = parent[0].getBoundingClientRect(); 9780 const index = options.index; 9781 let items = options.items; 9782 let size = options.size; 9783 9784 if (!size) { 9785 const rect = options.items[0].getBoundingClientRect(); 9786 size = Math.round(parentRect.width / rect.width); 9787 } 9788 if (index) { 9789 let from = 1; 9790 let to = size; 9791 if (index % size === 0) { 9792 from = index - size; 9793 } else { 9794 from = index - (index % size); 9795 } 9796 to += from; 9797 items = options.items.slice(from, to); 9798 } 9799 9800 const sizes = []; 9801 items.each(function (item) { 9802 const _this = $(this).find(options.block); 9803 _this.css("height", ""); 9804 sizes.push(_this[0].clientHeight); 9805 }); 9806 const maxSize = Math.max.apply(null, sizes); 9807 9808 if (options.current) { 9809 options.current.find(options.block).css("height", maxSize); 9810 } else if (index) { 9811 items 9812 .eq(index - 1) 9813 .find(options.block) 9814 .css("height", maxSize); 9815 } else { 9816 items.each(function () { 9817 $(this).find(options.block).css("height", maxSize); 9818 }); 9819 } 9820 }; 9821 const handler = function () { 9822 $(document).on("mouseenter", ".catalog-block__wrapper.has-offers", function () { 9823 const _this = $(this); 9824 const parent = _this.parent(); 9825 const bHovered = _this.data("hovered"); 9826 if (bHovered) { 9827 return; 9828 } 9829 9830 let items = parent.find(" .catalog-block__wrapper:visible"); 9831 let index = items.index(this) + 1; 9832 9833 equalHeight({ 9834 items: items, 9835 current: _this, 9836 block: ".catalog-block__info", 9837 index: index, 9838 }); 9839 9840 const rect = _this[0].getBoundingClientRect(); 9841 _this.css("height", rect.height); 9842 _this.attr("data-hovered", true); 9843 }); 9844 $(document).on("mouseleave", ".catalog-block__wrapper.has-offers", function () { 9845 const _this = $(this); 9846 9847 _this.css("height", ""); 9848 _this.attr("data-hovered", false); 9849 _this.find(".catalog-block__info").css("height", ""); 9850 }); 9851 }; 9852 ready(handler); 9853})(); 9854 9855/* End */ 9856; 9857; /* Start:"a:4:{s:4:"full";s:74:"/bitrix/templates/aspro-premier/js/conditional/prices.min.js?1774596326420";s:6:"source";
9857s:60:"/bitrix/templates/aspro-premier/js/conditional/prices.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9858BX.Aspro.Utils.readyDOM((()=>{let e=null,t=function(o){let n=(o=o||window.event).target||o.srcElement;n&&n.closest(".price__popup-toggle")&&"function"!=typeof BX.Aspro.xPopover&&(n.classList.add("animate"),e?e.classList.remove("animate"):BX.Aspro.Loader.add({ext:"popover"}).then((()=>{BX.unbind(document.body,"click",t),e.classList.remove("animate"),BX.fireEvent(e,"click")})),e=n)};BX.bind(document.body,"click",t)})); 9859/* End */ 9860; 9861; /* Start:"a:4:{s:4:"full";s:74:"/bitrix/templates/aspro-premier/js/conditional/pagination.js?1774596326873";s:6:"source";s:60:"/bitrix/templates/aspro-premier/js/conditional/pagination.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9862BX.namespace('BX.Aspro.Pagination'); 9863 9864BX.Aspro.Pagination = { 9865 lazyLoad: () => { 9866 setTimeout(() => { 9867 if ($(".with-load-block .ajax_load_btn:not(.appear-block)").length) { 9868 $(".with-load-block .ajax_load_btn:not(.appear-block)").iAppear( 9869 function () { 9870 var $this = $(this); 9871 $this.addClass("appear-block").trigger("click"); 9872 }, 9873 { 9874 rootMargin: "-10% 0px 0px 0px", 9875 accX: 0, 9876 accY: 200 9877 } 9878 ); 9879 } 9880 }, 200); 9881 } 9882} 9883 9884BX.Aspro.Utils.readyDOM(() => { 9885 BX.Aspro.Pagination.lazyLoad(); 9886 9887 BX.addCustomEvent("onCompleteAction", function (eventdata) { 9888 try { 9889 if (eventdata.action === "jsLoadBlock" || eventdata.action === "ajaxContentLoaded") { 9890 BX.Aspro.Pagination.lazyLoad(); 9891 } 9892 } catch (e) { 9893 console.error(e); 9894 } 9895 }); 9896}); 9897 9898/* End */ 9899; 9900; /* Start:"a:4:{s:4:"full";s:78:"/bitrix/templates/aspro-premier/js/conditional/input_numeric.js?17745963261261";s:6:"source";s:63:"/bitrix/templates/aspro-premier/js/conditional/input_numeric.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9901function input_numeric(selector, customRegExp) { 9902 if (!selector) return; 9903 9904 try { 9905 const nodes = Array.from( 9906 document.querySelectorAll(selector), 9907 node =>
9907 node.nodeType === node.ELEMENT_NODE && node instanceof HTMLInputElement && node 9908 ); 9909 nodes.forEach(eventsHandler); 9910 } catch (e) { 9911 console.error(e); 9912 } 9913 9914 function eventsHandler(node) { 9915 ["input", "keydown", "keyup", "mousedown", "mouseup", "select", "contextmenu", "drop", "focusout"].forEach( 9916 function (event) { 9917 node.addEventListener(event, eventHandler); 9918 } 9919 ); 9920 } 9921 9922 function eventHandler(e) { 9923 if (regexp.test(this.value)) { 9924 this.oldValue = this.value; 9925 this.oldSelectionStart = this.selectionStart; 9926 this.oldSelectionEnd = this.selectionEnd; 9927 } else if (this.oldValue) { 9928 this.value = this.oldValue; 9929 this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd); 9930 } else { 9931 // Rejected value - nothing to restore 9932 const value = parseFloat(this.value) 9933 if (!Number.isNaN(value)) { 9934 this.value = value; 9935 } else { 9936 this.value = ''; 9937 } 9938 } 9939 } 9940 9941 let regexp = /^-?\d*[.,]?\d*$/; 9942 if (customRegExp && customRegExp instanceof RegExp) { 9943 regexp = customRegExp; 9944 } 9945} 9946 9947/* End */ 9948; 9949; /* Start:"a:4:{s:4:"full";s:73:"/bitrix/templates/aspro-premier/js/select_offer_load.min.js?1774596326230";s:6:"source";s:59:"/bitrix/templates/aspro-premier/js/select_offer_load.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9950function useOfferSelect(){BX.ready(()=>{if(!("SelectOfferProp"in window)){const $catalogItems=$(".catalog-items");$catalogItems.length&&$catalogItems.iAppear((function(e){BX.loadExt(["aspro_select_offer"])}),{accX:0,accY:100})}})} 9951/* End */ 9952; 9953; /* Start:"a:4:{s:4:"full";s:72:"/bitrix/templates/aspro-premier/js/conditional/hint.min.js?1774596326515";s:6:"source";s:58:"/bitrix/templates/aspro-premier/js/conditional/hint.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9954$(document).ready((function(){$("html, body").on("mousedown",(function(e){"string"==typeof e.target.className&&e.target.className.indexOf("adm")<0&&(e.stopPropagation(),$(e.target).closest(".hint.active").length||$(".hint.active .hint__icon").trigger("click"))})),$(document).on("click",".hint",(function(e){let _this=$(this),target=e.target;e.stopImmediatePropagation(),"A"!==target.tagName&&e.preventDefault(),target.closest(".tooltip")||_this.toggleClass("active").find(".tooltip").stop().slideToggle(200)}))})); 9955/* End */ 9956; 9957; /* Start:"a:4:{s:4:"full";s:67:"/bitrix/templates/aspro-premier/js/index-tabs.min.js?17745963262381";s:6:"source";s:52:"/bitrix/templates/aspro-premier/js/index-tabs.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9958const ajaxRequest=function(t,e,a){parseUrlQuery();const n=a.data||{},s=t||"GET";const o=Object.assign({},{ajax_get:"Y",AJAX_REQUEST:"Y",AJAX_POST:"Y",bitrix_include_areas:"N",TABS_REQUEST:"Y"},n),c=new FormData,i=Object.keys(o);for(let t=0;t<i.length;t++)c.append(i[t],o[i[t]]);const r=new XMLHttpRequest;r.open(s,e+""),r.setRequestHeader("X-Requested-With","XMLHttpRequest"),r.send(c),r.onload=function(){let t=r.response;if(a.context.classList.remove("loading-state"),200!=r.status)a.context.innerHTML="Error "+r.status+": "+r.statusText;else{const n=BX.processHTML(t);a.context.innerHTML=n.HTML,BX.onCustomEvent("onSetHeightBanner"),setTimeout((function(){BX.ajax.processScripts(n.SCRIPT)}),0);var e={action:"ajaxContentLoaded",content:t};BX.onCustomEvent("onCompleteAction",[e,a.tab])}},r.onerror=function(){a.context.classList.remove("loading-state"),a.context.innerHTML="Error"}},readyHandler=function(){document.addEventListener("click",(function(t){const e=t.target.closest(".element-list .nav-tabs .nav-tabs__item");if(e){const a=e.closest(".element-list"),n=a.querySelectorAll(".nav-tabs__item"),s=a.querySelector(".js-request-data");if(n.length&&e.classList.contains("nav-tabs__item")&&!e.classList.contains("active")){const o=e.dataset.code,c=a.querySelectorAll(".tab-content-block"),i=a.querySelector(".tab-content-block[data-code='"+o+"']");for(let t=0;t<n.length;t++)n[t].classList.remove("active");e.classList.toggle("active");for(let t=0;t<c.length;t++)c[t].classList.remove("active");if(i.classList.toggle("active"),e.classList.contains("clicked"))BX.onCustomEvent("onSetHeightBanner");else{const a=s.dataset.action?window.location.origin+s.dataset.action:window.location.href,n=new URL(a),c={FILTER_HIT_PROP:o,AJAX_PARAMS:s.dataset.value,GLOBAL_FILTER:i.dataset.f
9958ilter};if(document.querySelector(".body.index")){const e=t.target.closest(".drag-block").dataset.class.replace("_drag","").replace(/\s/g,"");n.searchParams.set("BLOCK",e)}ajaxRequest("POST",n.href,{data:c,context:i,tab:e}),e.classList.add("clicked")}}}}))};document.addEventListener("DOMContentLoaded",readyHandler),window.tabsInitOnReady=function(t){$.isFunction($.fn.scrollTab)&&$(".element-list[data-block_key='"+t+"'] .nav-tabs-wrapper").scrollTab({tabs_wrapper:".nav-tabs",tab_item:".nav-tabs__item",offset:8,outer_wrapper:".element-list[data-block_key='"+t+"'] .index-block__title-wrapper"})}; 9959/* End */ 9960; 9961; /* Start:"a:4:{s:4:"full";s:85:"/bitrix/templates/aspro-premier/components/bitrix/menu/bottom/script.js?1774596325470";s:6:"source";s:71:"/bitrix/templates/aspro-premier/components/bitrix/menu/bottom/script.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9962$(document).ready(function(){ 9963 $(document).on('click', '.bottom-menu .items > .item-link.items-child', function(event){ 9964 if (window.matchMedia("(max-width:767px)").matches) { 9965 var _this = $(this); 9966 var target = event.target; 9967 9968 if (!target.getAttribute('href')){ 9969 _this.next('.wrap_menu_compact_mobile').slideToggle(); 9970 _this.toggleClass("opened"); 9971 } 9972 } 9973 }); 9974}); 9975 9976/* End */ 9977; 9978; /* Start:"a:4:{s:4:"full";s:81:"/bitrix/templates/aspro-premier/js/jquery.inputmask.bundle.min.js?177459632670933";s:6:"source";s:65:"/bitrix/templates/aspro-premier/js/jquery.inputmask.bundle.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/ 9979!function(e){function t(n){if(i[n])return i[n].exports;var a=i[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var i={};t.m=e,t.c=i,t.d=function(e,i,n){t.o(e,i)||Object.defineProperty(e,i,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var i=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(i,"a",i),i},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=3)}([function(e,t,i){"use strict";var n,a,r;"function"==typeof Symbol&&Symbol.iterator,a=[i(2)],void 0!==(r="function"==typeof(n=function(e){return e})?n.apply(t,a):n)&&(e.exports=r)},function(e,t,i){"use strict";var n,a,r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};a=[i(0),i(5),i(6)],void 0!==(r="function"==typeof(n=function(e,t,i,n){function a(t,i,o){if(!(this instanceof a))return new a(t,i,o);this.el=n,this.events={},this.maskset=n,this.refreshValue=!1,!0!==o&&(e.isPlainObject(t)?i=t:(i=i||{},t&&(i.alias=t)),this.opts=e.extend(!0,{},this.defaults,i),this.noMasksCache=i&&i.definitions!==n,this.userOptions=i||{},this.isRTL=this.opts.numericInput,r(this.opts.alias,i,this.opts))}function r(t,i,o){var s=a.prototype.aliases[t];return s?(s.alias&&r(s.alias,n,o),e.extend(!0,o,s),e.extend(!0,o,i),!0):(null===o.mask&&(o.mask=t),!1)}function s(t,i){function r(t,r,o){var s=!1;if(null!==t&&""!==t||((s=null!==o.regex)?t=(t=o.regex).replace(/^(\^)(.*)(\$)$/,"$2"):(s=!0,t=".*")),1===t.length&&!1===o.greedy&&0!==o.repeat&&(o.placeholder=""),o.repeat>0||"*"===o.repeat||"+"===o.repeat){var l="*"===o.repeat?0:"+"===o.repeat?1:o.repeat;t=o.groupmarker[0]+t+o.groupmarker[1]+o.quantifiermarker[0]+l+","+o.repeat+o.quantifiermarker[1]}var u,c=s?"regex_"+o.regex:o.numericInput?t.split("").reverse().join(""):t;return a.prototype.masksCache[c]===n||!0===i?(u={mask:t,maskToken:a.prototype.analyseMask(t,s,o),validPositions:{},_buffer:n,buffer:n,tests:{},excludes:{},metadata:r,maskLength:n},!0!==i&&(a.prototype.masksCache[c]=u,u=e.extend(!0,{},a.prototype.masksCache[c]))):u=e.extend(!0,{},a.prototype.masksCache[c]),u}if(e.isFunction(t.mask)&&(t.mask=t.mask(t)),e.isArray(t.mask)){if(t.mask.length>1){if(null===t.keepStatic){t.keepStatic="auto";for(var o=0;o<t.mask.length;o++)if(t.mask[o].charAt(0)!==t.mask[0].charAt(0)){t.keepStatic=!0;break}}var s=t.groupmarker[0];return e.each(t.isRTL?t.mask.reverse():t.mask,function(i,a){s.length>1&&(s+=t.groupmarker[1]+t.alternatormarker+t.groupmarker[0]),a.mask===n||e.isFunction(a.mask)?s+=a:s+=a.mask}),r(s+=t.groupmarker[1],t.mask,t)}t.mask=t.mask.pop()}return t.mask&&t.mask.mask!==n&&!e.isFunction(t.mask.mask)?r(t.mask.mask,t.mask,t):r(t.mask,t.mask,t)}function l(e){var t=i.createElement("input"),n="on"+e,a=n in t;return a||(t.setAttribute(n,"return;"),a="function"==typeof t[n]),t=null,a}function u(r,s,c){function d(e,t,i){t=t||0;var a,r,o,s=[],l=0,u=v();
9979do{!0===e&&h().validPositions[l]?(r=(o=h().validPositions[l]).match,a=o.locator.slice(),s.push(!0===i?o.input:!1===i?r.nativeDef:N(l,r))):(r=(o=P(l,a,l-1)).match,a=o.locator.slice(),(!1===c.jitMasking||l<u||"number"==typeof c.jitMasking&&isFinite(c.jitMasking)&&c.jitMasking>l)&&s.push(!1===i?r.nativeDef:N(l,r))),"auto"===c.keepStatic&&r.newBlockMarker&&null!==r.fn&&(c.keepStatic=l-1),l++}while(($===n||l<$)&&(null!==r.fn||""!==r.def)||t>l);return""===s[s.length-1]&&s.pop(),!1===i&&h().maskLength!==n||(h().maskLength=l-1),s}function h(){return s}function g(e){var t=h();t.buffer=n,!0!==e&&(t.validPositions={},t.p=0)}function v(e,t,i){var a=-1,r=-1,o=i||h().validPositions;e===n&&(e=-1);for(var s in o){var l=parseInt(s);o[l]&&(t||!0!==o[l].generatedInput)&&(l<=e&&(a=l),l>=e&&(r=l))}return-1!==a&&e-a>1||r<e?a:r}function k(t,i,a,r){var o,s=t,l=e.extend(!0,{},h().validPositions),u=!1;for(h().p=t,o=i-1;o>=s;o--)h().validPositions[o]!==n&&(!0!==a&&(!h().validPositions[o].match.optionality&&function(e){var t=h().validPositions[e];if(t!==n&&null===t.match.fn){var i=h().validPositions[e-1],a=h().validPositions[e+1];return i!==n&&a!==n}return!1}(o)||!1===c.canClearPosition(h(),o,v(n,!0),r,c))||delete h().validPositions[o]);for(g(!0),o=s+1;o<=v();){for(;h().validPositions[s]!==n;)s++;if(o<s&&(o=s+1),h().validPositions[o]===n&&j(o))o++;else{var p=P(o);!1===u&&l[s]&&l[s].match.def===p.match.def?(h().validPositions[s]=e.extend(!0,{},l[s]),h().validPositions[s].input=p.input,delete h().validPositions[o],o++):A(s,p.match.def)?!1!==_(s,p.input||N(o),!0)&&(delete h().validPositions[o],o++,u=!0):j(o)||(o++,s--),s++}}if(!0!==r)for(o=v(-1,!0);h().validPositions[o]&&!0===h().validPositions[o].generatedInput;)delete h().validPositions[o--];g(!0)}function y(e,t,i){for(var a,r=S(e=e>0?e-1:0),o=r.alternation!==n?r.locator[r.alternation].toString().split(","):[],s=0;s<t.length&&(!((a=t[s]).match&&(c.greedy&&!0!==a.match.optionalQuantifier||(!1===a.match.optionality||!1===a.match.newBlockMarker)&&!0!==a.match.optionalQuantifier)&&(r.alternation===n||r.alternation!==a.alternation||a.locator[r.alternation]!==n&&D(a.locator[r.alternation].toString().split(","),o)))||!0===i&&(null!==a.match.fn||/[0-9a-bA-Z]/.test(a.match.def)));s++);return a}function b(e){var t=e.locator[e.alternation];return"string"==typeof t&&t.length>0&&(t=t.split(",")[0]),t!==n?t.toString():""}function x(e,t){for(var i=(e.alternation!=n?e.mloc[b(e)]:e.locator).join("");i.length<t;)i+="0";return i}function P(e,t,i){return h().validPositions[e]||y(e,C(e,t?t.slice():t,i))}function S(e){return h().validPositions[e]?h().validPositions[e]:C(e)[0]}function A(e,t){for(var i=!1,n=C(e),a=0;a<n.length;a++)if(n[a].match&&n[a].match.def===t){i=!0;break}return i}function C(t,i,a){function r(i,a,s,l){function u(s,l,p){function m(t,i){var n=0===e.inArray(t,i.matches);return n||e.each(i.matches,function(e,a){if(!0===a.isQuantifier&&(n=m(t,i.matches[e-1])))return!1}),n}function k(t,i,a){var r,o;if((h().tests[t]||h().validPositions[t])&&e.each(h().tests[t]||[h().validPositions[t]],function(e,t){if(t.mloc[i])return r=t,!1;var s=a!==n?a:t.alternation,l=t.locator[s]!==n?t.locator[s].toString().indexOf(i):-1;(o===n||l<o)&&-1!==l&&(r=t,o=l)}),r){var s=r.locator[r.alternation];return(r.mloc[i]||r.mloc[s]||r.locator).slice((a!==n?a:r.alternation)+1)}return a!==n?k(t,i):n}function y(e,t){function i(e){for(var t,i,n=[],a=0,r=e.length;a<r;a++)if("-"===e.charAt(a))for(i=e.charCodeAt(a+1);++t<i;)n.push(String.fromCharCode(t));else t=e.charCodeAt(a),n.push(e.charAt(a));return n.join("")}return c.regex&&null!==e.match.fn&&null!==t.match.fn?-1!==i(t.match.def.replace(/[\[\]]/g,"")).indexOf(i(e.match.def.replace(/[\[\]]/g,""))):e.match.def===t.match.nativeDef}function b(e,t){if(t===n||e.alternation===t.alternation&&-1===e.locator[e.alternation].toString().indexOf(t.locator[t.alternation])){e.mloc=e.mloc||{};var i=e.locator[e.alternation];if(i!==n){if("string"==typeof i&&(i=i.split(",")[0]),e.mloc[i]===n&&(e.mloc[i]=e.locator.slice()),t!==n){for(var a in t.mloc)"string"==typeof a&&(a=a.split(",")[0]),e.mloc[a]===n&&(e.mloc[a]=t.mloc[a]
9979);e.locator[e.alternation]=Object.keys(e.mloc).join(",")}return!0}e.alternation=n}return!1}if(f>1e4)throw"Inputmask: There is probably an error in your mask definition or in the code. Create an issue on github with an example of the mask you are using. "+h().mask;if(f===t&&s.matches===n)return d.push({match:s,locator:l.reverse(),cd:v,mloc:{}}),!0;if(s.matches!==n){if(s.isGroup&&p!==s){if(s=u(i.matches[e.inArray(s,i.matches)+1],l))return!0}else if(s.isOptional){var x=s;if(s=r(s,a,l,p)){if(!m(o=d[d.length-1].match,x))return!0;g=!0,f=t}}else if(s.isAlternator){var P,S=s,A=[],C=d.slice(),M=l.length,E=a.length>0?a.shift():-1;if(-1===E||"string"==typeof E){var w,D=f,O=a.slice(),_=[];if("string"==typeof E)_=E.split(",");else for(w=0;w<S.matches.length;w++)_.push(w.toString());if(h().excludes[t]){for(var j=_.slice(),F=0,T=h().excludes[t].length;F<T;F++)_.splice(_.indexOf(h().excludes[t][F].toString()),1);0===_.length&&(h().excludes[t]=n,_=j)}(!0===c.keepStatic||isFinite(parseInt(c.keepStatic))&&D>=c.keepStatic)&&(_=_.slice(0,1));for(var R=0;R<_.length;R++){w=parseInt(_[R]),d=[],a=k(f,w,M)||O.slice(),S.matches[w]&&u(S.matches[w],[w].concat(l),p)&&(s=!0),P=d.slice(),f=D,d=[];for(var N=0;N<P.length;N++){var G=P[N],B=!1;G.alternation=G.alternation||M,b(G);for(var I=0;I<A.length;I++){var L=A[I];if("string"!=typeof E||G.alternation!==n&&-1!==e.inArray(G.locator[G.alternation].toString(),_)){if(G.match.nativeDef===L.match.nativeDef){B=!0,b(L,G);break}if(y(G,L)){b(G,L)&&(B=!0,A.splice(A.indexOf(L),0,G));break}if(y(L,G)){b(L,G);break}if(z=L,null===(U=G).match.fn&&null!==z.match.fn&&z.match.fn.test(U.match.def,h(),t,!1,c,!1)){b(G,L)&&(B=!0,A.splice(A.indexOf(L),0,G));break}}}B||A.push(G)}}d=C.concat(A),f=t,g=d.length>0,s=A.length>0,a=O.slice()}else s=u(S.matches[E]||i.matches[E],[E].concat(l),p);if(s)return!0}else if(s.isQuantifier&&p!==i.matches[e.inArray(s,i.matches)-1])for(var H=s,V=a.length>0?a.shift():0;V<(isNaN(H.quantifier.max)?V+1:H.quantifier.max)&&f<=t;V++){var K=i.matches[e.inArray(H,i.matches)-1];
9979if(s=u(K,[V].concat(l),K)){if((o=d[d.length-1].match).optionalQuantifier=V>H.quantifier.min-1,m(o,K)){if(V>H.quantifier.min-1){g=!0,f=t;break}return!0}return!0}}else if(s=r(s,a,l,p))return!0}else f++;var U,z}for(var p=a.length>0?a.shift():0;p<i.matches.length;p++)if(!0!==i.matches[p].isQuantifier){var m=u(i.matches[p],[p].concat(s),l);if(m&&f===t)return m;if(f>t)break}}var o,s,l,u,p=h().maskToken,f=i?a:0,m=i?i.slice():[0],d=[],g=!1,v=i?i.join(""):"";if(t>-1){if(i===n){for(var k,b=t-1;(k=h().validPositions[b]||h().tests[b])===n&&b>-1;)b--;k!==n&&b>-1&&(s=b,l=k,u=[],e.isArray(l)||(l=[l]),l.length>0&&(l[0].alternation===n?0===(u=y(s,l.slice()).locator.slice()).length&&(u=l[0].locator.slice()):e.each(l,function(e,t){if(""!==t.def)if(0===u.length)u=t.locator.slice();else for(var i=0;i<u.length;i++)t.locator[i]&&-1===u[i].toString().indexOf(t.locator[i])&&(u[i]+=","+t.locator[i])})),v=(m=u).join(""),f=b)}if(h().tests[t]&&h().tests[t][0].cd===v)return h().tests[t];for(var x=m.shift();x<p.length&&!(r(p[x],m,[x])&&f===t||f>t);x++);}return(0===d.length||g)&&d.push({match:{fn:null,optionality:!0,casing:null,def:"",placeholder:""},locator:[],mloc:{},cd:v}),i!==n&&h().tests[t]?e.extend(!0,[],d):(h().tests[t]=e.extend(!0,[],d),h().tests[t])}function M(){return h()._buffer===n&&(h()._buffer=d(!1,1),h().buffer===n&&(h().buffer=h()._buffer.slice())),h()._buffer}function E(e){return h().buffer!==n&&!0!==e||(h().buffer=d(!0,v(),!0)),h().buffer}function w(e,t,i){var a,r;if(!0===e)g(),e=0,t=i.length;else for(a=e;a<t;a++)delete h().validPositions[a];for(r=e,a=e;a<t;a++)if(g(!0),i[a]!==c.skipOptionalPartCharacter){var o=_(r,i[a],!0,!0);!1!==o&&(g(!0),r=o.caret!==n?o.caret:o.pos+1)}}function D(t,i,a){for(var r,o=c.greedy?i:i.slice(0,1),s=!1,l=a!==n?a.split(","):[],u=0;u<l.length;u++)-1!==(r=t.indexOf(l[u]))&&t.splice(r,1);for(var p=0;p<t.length;p++)if(-1!==e.inArray(t[p],o)){s=!0;break}return s}function O(t,i,a,r,o){var s,l,u,p,f,m,d,k=e.extend(!0,{},h().validPositions),y=!1,x=o!==n?o:v();if(-1===x&&o===n)l=(p=S(s=0)).alternation;else for(;x>=0;x--)if((u=h().validPositions[x])&&u.alternation!==n){if(p&&p.locator[u.alternation]!==u.locator[u.alternation])break;s=x,l=h().validPositions[s].alternation,p=u}if(l!==n){d=parseInt(s),h().excludes[d]=h().excludes[d]||[],!0!==t&&h().excludes[d].push(b(p));var P=[],A=0;for(f=d;f<v(n,!0)+1;f++)(m=h().validPositions[f])&&!0!==m.generatedInput&&/[0-9a-bA-Z]/.test(m.input)?P.push(m.input):f<t&&A++,delete h().validPositions[f];for(;h().excludes[d]&&h().excludes[d].length<10;){var C=-1*A,M=P.slice();for(h().tests[d]=n,g(!0),y=!0;M.length>0;){var E=M.shift();if(E!==c.skipOptionalPartCharacter&&!(y=_(v(n,!0)+1,E,!1,r,!0)))break}if(y&&i!==n){var w=v(t)+1;for(f=d;f<v()+1;f++)((m=h().validPositions[f])===n||null==m.match.fn)&&f<t+C&&C++;y=_((t+=C)>w?w:t,i,a,r,!0)}if(y)break;if(g(),p=S(d),h().validPositions=e.extend(!0,{},k),!h().excludes[d]){y=O(t,i,a,r,d-1);break}var D=b(p);if(-1!==h().excludes[d].indexOf(D)){y=O(t,i,a,r,d-1);break}for(h().excludes[d].push(D),f=d;f<v(n,!0)+1;f++)delete h().validPositions[f]}}return h().excludes[d]=n,y}function _(t,i,r,o,s,l){function u(e){return X?e.begin-e.end>1||e.begin-e.end==1:e.end-e.begin>1||e.end-e.begin==1}function p(i,r,s){var l=!1;return e.each(C(i),function(p,f){var d=f.match;if(E(!0),!1!==(l=null!=d.fn?d.fn.test(r,h(),i,s,c,u(t)):(r===d.def||r===c.skipOptionalPartCharacter)&&""!==d.def&&{c:N(i,d,!0)||d.def,pos:i})){var y=l.c!==n?l.c:r;y=y===c.skipOptionalPartCharacter&&null===d.fn?N(i,d,!0)||d.def:y;var b=i,x=E();if(l.remove!==n&&(e.isArray(l.remove)||(l.remove=[l.remove]),e.each(l.remove.sort(function(e,t){return t-e}),function(e,t){k(t,t+1,!0)})),l.insert!==n&&(e.isArray(l.insert)||(l.insert=[l.insert]),e.each(l.insert.sort(function(e,t){return e-t}),function(e,t){_(t.pos,t.c,!0,o)})),l.refreshFromBuffer){var P=l.refreshFromBuffer;if(w(!0===P?P:P.start,P.end,x),l.pos===n&&l.c===n)return l.pos=v(),!1;if((b=l.pos!==n?l.pos:i)!==i)return l=e.extend(l,_(b,y,!0,o)),!1}else if(!0!==l&&l.pos!==n&&l.pos!==i&&(b=l.pos,w(i,b,E().slice()),b!==i))return l=e.extend(l,_(b,y,!0)),!1;return(!0===l||l.pos!==n||l.c!==n)&&(p>0&&g(!0),m(b,e.extend({}
9979,f,{input:function(t,i,n){switch(c.casing||i.casing){case"upper":t=t.toUpperCase();break;case"lower":t=t.toLowerCase();break;case"title":var r=h().validPositions[n-1];t=0===n||r&&r.input===String.fromCharCode(a.keyCode.SPACE)?t.toUpperCase():t.toLowerCase();break;default:if(e.isFunction(c.casing)){var o=Array.prototype.slice.call(arguments);o.push(h().validPositions),t=c.casing.apply(this,o)}}return t}(y,d,b)}),o,u(t))||(l=!1),!1)}}),l}function f(t,i,a){var r;if(t===n)for(t=i-1;t>0&&!h().validPositions[t];t--);for(var o=t;o<i;o++)if(h().validPositions[o]===n&&!j(o,!0)){var s=0==o?S(o):h().validPositions[o-1];if(s){var l,u=x(s),c=C(o).slice(),p=n,f=S(o);if(""===c[c.length-1].match.def&&c.pop(),e.each(c,function(e,t){l=x(t,u.length);var i=Math.abs(l-u);(p===n||i<p)&&null===t.match.fn&&!0!==t.match.optionality&&!0!==t.match.optionalQuantifier&&(p=i,f=t)}),(f=e.extend({},f,{input:N(o,f.match,!0)||f.match.def})).generatedInput=!0,m(o,f,!0),!0!==a){var d=h().validPositions[i].input;h().validPositions[i]=n,r=_(i,d,!0,!0)}}}return r}function m(t,i,a,r){if(r||c.insertMode&&h().validPositions[t]!==n&&a===n){var o,s=e.extend(!0,{},h().validPositions),l=v(n,!0);for(o=t;o<=l;o++)delete h().validPositions[o];h().validPositions[t]=e.extend(!0,{},i);var u,p=!0,m=h().validPositions,d=!1;for(o=u=t;o<=l;o++){var k=s[o];if(k!==n)for(var y=u;""!==S(y).match.def&&(null===k.match.fn&&m[o]&&(!0===m[o].match.optionalQuantifier||!0===m[o].match.optionality)||null!=k.match.fn);){if(y++,!1===d&&s[y]&&s[y].match.def===k.match.def)h().validPositions[y]=e.extend(!0,{},s[y]),h().validPositions[y].input=k.input,f(n,y,!0),u=y,p=!0;else if(A(y,k.match.def)){var b=_(y,k.input,!0,!0);p=!1!==b,u=b.caret||b.insert?v():y,d=!0}else if(!(p=!0===k.generatedInput)&&""===S(y).match.def)break;if(p)break}if(!p)break}if(!p)return h().validPositions=e.extend(!0,{},s),g(!0),!1}else h().validPositions[t]=e.extend(!0,{},i);return g(!0),!0}r=!0===r;var d=t;t.begin!==n&&(d=X&&!u(t)?t.end:t.begin);var y=!0,b=e.extend(!0,{},h().validPositions);if(e.isFunction(c.preValidation)&&!r&&!0!==o&&!0!==l&&(y=c.preValidation(E(),d,i,u(t),c)),!0===y){if(f(n,d,!0),u(t)&&(K(0,a.keyCode.DELETE,t,!0,!0),d=h().p),($===n||d<$)&&(y=p(d,i,r),(!r||!0===o)&&!1===y&&!0!==l)){var P=h().validPositions[d];if(!P||null!==P.match.fn||P.match.def!==i&&i!==c.skipOptionalPartCharacter){if((c.insertMode||h().validPositions[F(d)]===n)&&!j(d,!0))for(var M=d+1,D=F(d);M<=D;M++)if(!1!==(y=p(M,i,r))){y=f(d,y.pos!==n?y.pos:M)||y,d=M;break}}else y={caret:F(d)}}!1!==y||null===c.keepStatic||!1===c.keepStatic||r||!0===s||(y=O(d,i,r,o)),!0===y&&(y={pos:d})}if(e.isFunction(c.postValidation)&&!1!==y&&!r&&!0!==o&&!0!==l){var T=c.postValidation(E(!0),y,c);if(T!==n){if(T.refreshFromBuffer&&T.buffer){var R=T.refreshFromBuffer;w(!0===R?R:R.start,R.end,T.buffer)}y=!0===T?y:T}}return y&&y.pos===n&&(y.pos=d),!1!==y&&!0!==l||(g(!0),h().validPositions=e.extend(!0,{},b)),y}function j(e,t){var i=P(e).match;if(""===i.def&&(i=S(e).match),null!=i.fn)return i.fn;if(!0!==t&&e>-1){var n=C(e);return n.length>1+(""===n[n.length-1].match.def?1:0)}return!1}function F(e,t){for(var i=e+1;""!==S(i).match.def&&(!0===t&&(!0!==S(i).match.newBlockMarker||!j(i))||!0!==t&&!j(i));)i++;return i}function T(e,t){var i,n=e;if(n<=0)return 0;for(;--n>0&&(!0===t&&!0!==S(n).match.newBlockMarker||!0!==t&&!j(n)&&((i=C(n)).length<2||2===i.length&&""===i[1].match.def)););return n}function R(t,i,a,r,o){if(r&&e.isFunction(c.onBeforeWrite)){var s=c.onBeforeWrite.call(J,r,i,a,c);if(s){if(s.refreshFromBuffer){var l=s.refreshFromBuffer;w(!0===l?l:l.start,l.end,s.buffer||i),i=E(!0)}a!==n&&(a=s.caret!==n?s.caret:a)}}t!==n&&(t.inputmask._valueSet(i.join("")),a===n||r!==n&&"blur"===r.type?z(t,a,0===i.length):I(t,a),!0===o&&(te=!0,e(t).trigger("input")))}function N(t,i,a){if((i=i||S(t).match).placeholder!==n||!0===a)return e.isFunction(i.placeholder)?i.placeholder(c):i.placeholder;if(null===i.fn){if(t>-1&&h().validPositions[t]===n){var r,o=C(t),s=[];if(o.length>1+(""===o[o.length-1].match.def?1:0))for(var l=0;l<o.length;l++)if(!0!==o[l].match.optionality&&!0!==o[l].match.optionalQuantifier&&(null===o[l].match.fn||r===n||!1!==o[l].match.fn.test(r.match.def,h(),t,!0,c))&&(s.push(o[l]),null===o[l].match.fn&&(r=o[l]),s.length>1&&/[0-9a-bA-Z]/.test(s[0].match.def)))return c.placeholder.charAt(t%c.placeholder.length)}return i.def}return c.placeholder.charAt(t%c.placeholder.length)}function G(t,i,r,o,s){var l=o.slice(),u="",p=-1,f=n;if(g(),r||!0===c.autoUnmask)p=F(p);else{var m=M().slice(0,F(-1)).join(""),k=l.join("").match(new RegExp("^"+a.escapeRegex(m),"g"));k&&k.length>0&&(l.splice(0,k.length*m.length),p=F(p))}-1===p?(h().p=F(p),p=0):h().p=p,e.each(l,function(i,a){if(a!==n)if(h().validPositions[i]===n&&l[i]===N(i)&&j(i,!0)&&!1===_(i,l[i],!0,n,n,!0))h().p++;else{var o=new e.Event("_checkval");
9979o.which=a.charCodeAt(0),u+=a;var s=v(n,!0),m=S(s),g=P(s+1,m?m.locator.slice():n,s);if(y=p,b=u,-1===d(!0,0,!1).slice(y,F(y)).join("").indexOf(b)||j(y)||S(y).match.nativeDef!==b.charAt(0)&&(" "!==S(y).match.nativeDef||S(y+1).match.nativeDef!==b.charAt(0))||r||c.autoUnmask){var k=r?i:null==g.match.fn&&g.match.optionality&&s+1<h().p?s+1:h().p;(f=oe.keypressEvent.call(t,o,!0,!1,r,k))&&(p=k+1,u="")}else f=oe.keypressEvent.call(t,o,!0,!1,!0,s+1);R(n,E(),f.forwardPosition,o,!1)}var y,b}),i&&R(t,E(),f?f.forwardPosition:n,s||new e.Event("checkval"),s&&"input"===s.type)}function B(t){if(t){if(t.inputmask===n)return t.value;t.inputmask&&t.inputmask.refreshValue&&oe.setValueEvent.call(t)}var i=[],a=h().validPositions;for(var r in a)a[r].match&&null!=a[r].match.fn&&i.push(a[r].input);var o=0===i.length?"":(X?i.reverse():i).join("");if(e.isFunction(c.onUnMask)){var s=(X?E().slice().reverse():E()).join("");o=c.onUnMask.call(J,s,o,c)}return o}function I(a,r,o,s){function l(e){return!0===s||!X||"number"!=typeof e||c.greedy&&""===c.placeholder||(e=a.inputmask.__valueGet.call(a).length-e),e}var u;if(r===n)return a.setSelectionRange?(r=a.selectionStart,o=a.selectionEnd):t.getSelection?(u=t.getSelection().getRangeAt(0)).commonAncestorContainer.parentNode!==a&&u.commonAncestorContainer!==a||(r=u.startOffset,o=u.endOffset):i.selection&&i.selection.createRange&&(o=(r=0-(u=i.selection.createRange()).duplicate().moveStart("character",-a.inputmask._valueGet().length))+u.text.length),{begin:l(r),end:l(o)};if(e.isArray(r)&&(o=X?r[0]:r[1],r=X?r[1]:r[0]),r.begin!==n&&(o=X?r.begin:r.end,r=X?r.end:r.begin),"number"==typeof r){r=l(r),o="number"==typeof(o=l(o))?o:r;var p=parseInt(((a.ownerDocument.defaultView||t).getComputedStyle?(a.ownerDocument.defaultView||t).getComputedStyle(a,null):a.currentStyle).fontSize)*o;if(a.scrollLeft=p>a.scrollWidth?p:0,!1===c.insertMode&&r===o&&o++,a.inputmask.caretPos={begin:r,end:o},a.setSelectionRange)a.selectionStart=r,a.selectionEnd=o;else if(t.getSelection){if(u=i.createRange(),a.firstChild===n||null===a.firstChild){var f=i.createTextNode("");a.appendChild(f)}u.setStart(a.firstChild,r<a.inputmask._valueGet().length?r:a.inputmask._valueGet().length),u.setEnd(a.firstChild,o<a.inputmask._valueGet().length?o:a.inputmask._valueGet().length),u.collapse(!0);var m=t.getSelection();m.removeAllRanges(),m.addRange(u)}else a.createTextRange&&((u=a.createTextRange()).collapse(!0),u.moveEnd("character",o),u.moveStart("character",r),u.select());z(a,{begin:r,end:o})}}function L(t){var i,a,r=E(),o=r.length,s=v(),l={},u=h().validPositions[s],c=u!==n?u.locator.slice():n;for(i=s+1;i<r.length;i++)c=(a=P(i,c,i-1)).locator.slice(),l[i]=e.extend(!0,{},a);var p=u&&u.alternation!==n?u.locator[u.alternation]:n;for(i=o-1;i>s&&((a=l[i]).match.optionality||a.match.optionalQuantifier&&a.match.newBlockMarker||p&&(p!==l[i].locator[u.alternation]&&null!=a.match.fn||null===a.match.fn&&a.locator[u.alternation]&&D(a.locator[u.alternation].toString().split(","),p.toString().split(","))&&""!==C(i)[0].def))&&r[i]===N(i,a.match);i--)o--;return t?{l:o,def:l[o]?l[o].match:n}:o}function H(e){for(var t,i=L(),a=e.length,r=h().validPositions[v()];i<a&&!j(i,!0)&&(t=r!==n?P(i,r.locator.slice(""),r):S(i))&&!0!==t.match.optionality&&(!0!==t.match.optionalQuantifier&&!0!==t.match.newBlockMarker||i+1===a&&""===(r!==n?P(i+1,r.locator.slice(""),r):S(i+1)).match.def);)i++;for(;(t=h().validPositions[i-1])&&t&&t.match.optionality&&t.input===c.skipOptionalPartCharacter;)i--;return e.splice(i),e}function V(t){if(e.isFunction(c.isComplete))return c.isComplete(t,c);if("*"===c.repeat)return n;var i=!1,a=L(!0),r=T(a.l);if(a.def===n||a.def.newBlockMarker||a.def.optionality||a.def.optionalQuantifier){i=!0;for(var o=0;o<=r;o++){var s=P(o).match;if(null!==s.fn&&h().validPositions[o]===n&&!0!==s.optionality&&!0!==s.optionalQuantifier||null===s.fn&&t[o]!==N(o,s)){i=!1;break}}}return i}function K(e,t,i,r,o){if((c.numericInput||X)&&(t===a.keyCode.BACKSPACE?t=a.keyCode.DELETE:t===a.keyCode.DELETE&&(t=a.keyCode.BACKSPACE),X)){var s=i.end;i.end=i.begin,i.begin=s}if(t===a.keyCode.BACKSPACE&&(i.end-i.begin<1||!1===c.insertMode)?(i.begin=T(i.begin),h().validPositions[i.begin]!==n&&h().validPositions[i.begin].input===c.groupSeparator&&i.begin--):t===a.keyCode.DELETE&&i.begin===i.end&&(i.end=j(i.end,!0)&&h().validPositions[i.end]&&h().validPositions[i.end].input!==c.radixPoint?i.end+1:F(i.end)+1,h().validPositions[i.begin]!==n&&h().validPositions[i.begin].input===c.groupSeparator&&i.end++),k(i.begin,i.end,!1,r),!0!==r&&null!==c.keepStatic&&!1!==c.keepStatic){var l=O(!0);l&&(i.begin=l.caret!==n?l.caret:l.pos?F(l.pos.begin?l.pos.begin:l.pos):v(-1,!0))}var u=v(i.begin,!0);if(u<i.begin||-1===i.begin)h().p=F(u);else if(!0!==r&&(h().p=i.begin,!0!==o))for(;h().p<u&&h().validPositions[h().p]===n;)h().p++}function U(n){var a=(n.ownerDocument.defaultView||t).getComputedStyle(n,null),r=i.createElement("div");r.style.width=a.width,r.style.textAlign=a.textAlign,q=i.createElement("div"),n.inputmask.colorMask=q,q.className="im-colormask",n.parentNode.insertBefore(q,n),n.parentNode.removeChild(n),q.appendChild(r),q.appendChild(n),n.style.left=r.offsetLeft+"px",e(n).on("click",function(e){return I(n,function(e){var t,r=i.createElement("span");for(var o in a)isNaN(o)&&-1!==o.indexOf("font")&&(r.style[o]=a[o]);r.style.textTransform=a.textTransform,r.style.letterSpacing=a.letterSpacing,r.style.position="absolute",r.style.height="auto",r.style.width="auto",r.style.visibility="hidden",r.style.whiteSpace="nowrap",i.body.appendChild(r);var s,l=n.inputmask._valueGet(),u=0;for(t=0,s=l.length;t<=s;t++){if(r.innerHTML+=l.charAt(t)||"_",r.offsetWidth>=e){var c=e-u,p=r.offsetWidth-e;r.innerHTML=l.charAt(t),t=(c-=r.offsetWidth/3)<p?t-1:t;break}u=r.offsetWidth}return i.body.removeChild(r),t}(e.clientX)),oe.clickEvent.call(n,[e])}),e(n).on("keydown",function(e){e.shiftKey||!1===c.insertMode||setTimeout(function(){z(n)},0)})}function z(e,t,a){function r(e){if(e===n&&(e=""),p||null!==o.fn&&s.input!==n)if(p&&(null!==o.fn&&s.input!==n||""===o.def)){p=!1;var t=u.length;u[t-1]=u[t-1]+"</span>",u.push(e)}else u.push(e);else p=!0,u.push("<span class='im-static'>"+e)}var o,s,l,u=[],p=!1,f=0;if(q!==n){var m=E();if(t===n?t=I(e):t.begin===n&&(t={begin:t,end:t}),!0!==a){var d=v();
9979do{h().validPositions[f]?(s=h().validPositions[f],o=s.match,l=s.locator.slice(),r(m[f])):(s=P(f,l,f-1),o=s.match,l=s.locator.slice(),(!1===c.jitMasking||f<d||"number"==typeof c.jitMasking&&isFinite(c.jitMasking)&&c.jitMasking>f)&&r(N(f,o))),f++}while(($===n||f<$)&&(null!==o.fn||""!==o.def)||d>f||p);p&&r(),i.activeElement===e&&(u.splice(t.begin,0,t.begin===t.end?'<mark class="im-caret" style="border-right-width: 1px;border-right-style: solid;">':'<mark class="im-caret-select">'),u.splice(t.end+1,0,"</mark>"))}var g=q.getElementsByTagName("div")[0];g.innerHTML=u.join(""),e.inputmask.positionColorMask(e,g)}}s=s||this.maskset,c=c||this.opts;var Q,W,$,q,Z,J=this,Y=this.el,X=this.isRTL,ee=!1,te=!1,ie=!1,ne=!1,ae=!1,re={on:function(t,i,r){var o=function(t){var i=this;if(i.inputmask===n&&"FORM"!==this.nodeName){var o=e.data(i,"_inputmask_opts");o?new a(o).mask(i):re.off(i)}else{if("setvalue"===t.type||"FORM"===this.nodeName||!(i.disabled||i.readOnly&&!("keydown"===t.type&&t.ctrlKey&&67===t.keyCode||!1===c.tabThrough&&t.keyCode===a.keyCode.TAB))){switch(t.type){case"input":if(!0===te)return te=!1,t.preventDefault();p&&(ae=!0);break;case"keydown":ee=!1,te=!1;break;case"keypress":if(!0===ee)return t.preventDefault();ee=!0;break;case"click":if(f||m){var s=arguments;return setTimeout(function(){r.apply(i,s)},0),!1}}var l=r.apply(i,arguments);return ae&&(ae=!1,setTimeout(function(){I(i,i.inputmask.caretPos,n,!0)})),!1===l&&(t.preventDefault(),t.stopPropagation()),l}t.preventDefault()}};t.inputmask.events[i]=t.inputmask.events[i]||[],t.inputmask.events[i].push(o),-1!==e.inArray(i,["submit","reset"])?null!==t.form&&e(t.form).on(i,o):e(t).on(i,o)},off:function(t,i){var n;t.inputmask&&t.inputmask.events&&(i?(n=[])[i]=t.inputmask.events[i]:n=t.inputmask.events,e.each(n,function(i,n){for(;n.length>0;){var a=n.pop();-1!==e.inArray(i,["submit","reset"])?null!==t.form&&e(t.form).off(i,a):e(t).off(i,a)}delete t.inputmask.events[i]}))}},oe={keydownEvent:function(t){var i=this,n=e(i),r=t.keyCode,o=I(i);if(r===a.keyCode.BACKSPACE||r===a.keyCode.DELETE||m&&r===a.keyCode.BACKSPACE_SAFARI||t.ctrlKey&&r===a.keyCode.X&&!l("cut"))t.preventDefault(),K(0,r,o),R(i,E(!0),h().p,t,i.inputmask._valueGet()!==E().join("")),i.inputmask._valueGet()===M().join("")?n.trigger("cleared"):!0===V(E())&&n.trigger("complete");else if(r===a.keyCode.END||r===a.keyCode.PAGE_DOWN){t.preventDefault();var s=F(v());c.insertMode||s!==h().maskLength||t.shiftKey||s--,I(i,t.shiftKey?o.begin:s,s,!0)}else r===a.keyCode.HOME&&!t.shiftKey||r===a.keyCode.PAGE_UP?(t.preventDefault(),I(i,0,t.shiftKey?o.begin:0,!0)):(c.undoOnEscape&&r===a.keyCode.ESCAPE||90===r&&t.ctrlKey)&&!0!==t.altKey?(G(i,!0,!1,Q.split("")),n.trigger("click")):r!==a.keyCode.INSERT||t.shiftKey||t.ctrlKey?!0===c.tabThrough&&r===a.keyCode.TAB?(!0===t.shiftKey?(null===S(o.begin).match.fn&&(o.begin=F(o.begin)),o.end=T(o.begin,!0),o.begin=T(o.end,!0)):(o.begin=F(o.begin,!0),o.end=F(o.begin,!0),o.end<h().maskLength&&o.end--),o.begin<h().maskLength&&(t.preventDefault(),I(i,o.begin,o.end))):t.shiftKey||!1===c.insertMode&&(r===a.keyCode.RIGHT?setTimeout(function(){var e=I(i);I(i,e.begin)},0):r===a.keyCode.LEFT&&setTimeout(function(){var e=I(i);I(i,X?e.begin+1:e.begin-1)},0)):(c.insertMode=!c.insertMode,I(i,c.insertMode||o.begin!==h().maskLength?o.begin:o.begin-1));c.onKeyDown.call(this,t,E(),I(i).begin,c),ie=-1!==e.inArray(r,c.ignorables)},keypressEvent:function(t,i,r,o,s){var l=this,u=e(l),p=t.which||t.charCode||t.keyCode;if(!(!0===i||t.ctrlKey&&t.altKey)&&(t.ctrlKey||t.metaKey||ie))return p===a.keyCode.ENTER&&Q!==E().join("")&&(Q=E().join(""),setTimeout(function(){u.trigger("change")},0)),!0;if(p){46===p&&!1===t.shiftKey&&""!==c.radixPoint&&(p=c.radixPoint.charCodeAt(0));var f,m=i?{begin:s,end:s}:I(l),d=String.fromCharCode(p);h().writeOutBuffer=!0;var v=_(m,d,o);if(!1!==v&&(g(!0),f=v.caret!==n?v.caret:F(v.pos.begin?v.pos.begin:v.pos),h().p=f),f=c.numericInput&&v.caret===n?T(f):f,!1!==r&&(setTimeout(function(){c.onKeyValidation.call(l,p,v,c)},0),h().writeOutBuffer&&!1!==v)){var k=E();R(l,k,f,t,!0!==i),!0!==i&&setTimeout(function(){!0===V(k)&&u.trigger("complete")},0)}if(t.preventDefault(),i)return!1!==v&&(v.forwardPosition=f),v}},pasteEvent:function(i){var n,a=this,r=i.originalEvent||i,o=e(a),s=a.inputmask._valueGet(!0),l=I(a);X&&(n=l.end,l.end=l.begin,l.begin=n);var u=s.substr(0,l.begin),p=s.substr(l.end,s.length);if(u===(X?M().reverse():M()).slice(0,l.begin).join("")&&(u=""),p===(X?M().reverse():M()).slice(l.end).join("")&&(p=""),X&&(n=u,u=p,p=n),t.clipboardData&&t.clipboardData.getData)s=u+t.clipboardData.getData("Text")+p;else{if(!r.clipboardData||!r.clipboardData.getData)return!0;s=u+r.clipboardData.getData("text/plain")+p}var f=s;if(e.isFunction(c.onBeforePaste)){if(!1===(f=c.onBeforePaste.call(J,s,c)))return i.preventDefault();f||(f=s)}return G(a,!1,!1,X?f.split("").reverse():f.toString().split("")),R(a,E(),F(v()),i,Q!==E().join("")),!0===V(E())&&o.trigger("complete"),i.preventDefault()},inputFallBackEvent:function(t){var i,n,r=this,o=r.inputmask._valueGet();if(E().join("")!==o){var s=I(r);if(n=s,"."===(i=o).charAt(n.begin-1)&&""!==c.radixPoint&&((i=i.split(""))[n.begin-1]=c.radixPoint.charAt(0),i=i.join("")),o=function(e,t,i){if(f){var n=t.replace(E().join(""),"");if(1===n.length){var a=t.split("");
9979a.splice(i.begin,0,n),t=a.join("")}}return t}(0,o=i,s),E().join("")!==o){var l=E().join(""),u=o.length>l.length?-1:0,p=o.substr(0,s.begin),m=o.substr(s.begin),d=l.substr(0,s.begin+u),h=l.substr(s.begin+u),g=s,v="",k=!1;if(p!==d){for(var y=(k=p.length>=d.length)?p.length:d.length,b=0;p.charAt(b)===d.charAt(b)&&b<y;b++);k&&(0===u&&(g.begin=b),v+=p.slice(b,g.end))}if(m!==h&&(m.length>h.length?v+=m.slice(0,1):m.length<h.length&&(g.end+=h.length-m.length,k||""===c.radixPoint||""!==m||p.charAt(g.begin+u-1)!==c.radixPoint||(g.begin--,v=c.radixPoint))),R(r,E(),{begin:g.begin+u,end:g.end+u}),v.length>0)e.each(v.split(""),function(t,i){var n=new e.Event("keypress");n.which=i.charCodeAt(0),ie=!1,oe.keypressEvent.call(r,n)});else{g.begin===g.end-1&&(g.begin=T(g.begin+1),g.begin===g.end-1?I(r,g.begin):I(r,g.begin,g.end));var x=new e.Event("keydown");x.keyCode=a.keyCode.DELETE,oe.keydownEvent.call(r,x),!1===c.insertMode&&I(r,I(r).begin-1)}t.preventDefault()}}},setValueEvent:function(t){this.inputmask.refreshValue=!1;var i=this.inputmask._valueGet(!0);e.isFunction(c.onBeforeMask)&&(i=c.onBeforeMask.call(J,i,c)||i),i=i.split(""),G(this,!0,!1,X?i.reverse():i),Q=E().join(""),(c.clearMaskOnLostFocus||c.clearIncomplete)&&this.inputmask._valueGet()===M().join("")&&this.inputmask._valueSet("")},focusEvent:function(e){var t=this,i=t.inputmask._valueGet();c.showMaskOnFocus&&(!c.showMaskOnHover||c.showMaskOnHover&&""===i)&&(t.inputmask._valueGet()!==E().join("")?R(t,E(),F(v())):!1===ne&&I(t,F(v()))),!0===c.positionCaretOnTab&&!1===ne&&oe.clickEvent.apply(t,[e,!0]),Q=E().join("")},mouseleaveEvent:function(e){if(ne=!1,c.clearMaskOnLostFocus&&i.activeElement!==this){var t=E().slice(),n=this.inputmask._valueGet();n!==this.getAttribute("placeholder")&&""!==n&&(-1===v()&&n===M().join("")?t=[]:H(t),R(this,t))}},clickEvent:function(t,a){var r=this;setTimeout(function(){if(i.activeElement===r){var t=I(r);if(a&&(X?t.end=t.begin:t.begin=t.end),t.begin===t.end)switch(c.positionCaretOnClick){case"none":break;case"select":I(r,0,E().length);break;case"radixFocus":if(function(t){if(""!==c.radixPoint){var i=h().validPositions;if(i[t]===n||i[t].input===N(t)){if(t<F(-1))return!0;var a=e.inArray(c.radixPoint,E());if(-1!==a){for(var r in i)if(a<r&&i[r].input!==N(r))return!1;return!0}}}return!1}(t.begin)){var o=E().join("").indexOf(c.radixPoint);I(r,c.numericInput?F(o):o);break}default:var s=t.begin,l=v(s,!0),u=F(l);if(s<u)I(r,j(s,!0)||j(s-1,!0)?s:F(s));
9979else{var p=h().validPositions[l],f=P(u,p?p.match.locator:n,p),m=N(u,f.match);if(""!==m&&E()[u]!==m&&!0!==f.match.optionalQuantifier&&!0!==f.match.newBlockMarker||!j(u,!0)&&f.match.def===m){var d=F(u);(s>=d||s===u)&&(u=d)}I(r,u)}}}},0)},dblclickEvent:function(e){var t=this;setTimeout(function(){I(t,0,F(v()))},0)},cutEvent:function(n){var r=e(this),o=I(this),s=n.originalEvent||n,l=t.clipboardData||s.clipboardData,u=X?E().slice(o.end,o.begin):E().slice(o.begin,o.end);l.setData("text",X?u.reverse().join(""):u.join("")),i.execCommand&&i.execCommand("copy"),K(0,a.keyCode.DELETE,o),R(this,E(),h().p,n,Q!==E().join("")),this.inputmask._valueGet()===M().join("")&&r.trigger("cleared")},blurEvent:function(t){var i=e(this);if(this.inputmask){var a=this.inputmask._valueGet(),r=E().slice();""===a&&q===n||(c.clearMaskOnLostFocus&&(-1===v()&&a===M().join("")?r=[]:H(r)),!1===V(r)&&(setTimeout(function(){i.trigger("incomplete")},0),c.clearIncomplete&&(g(),r=c.clearMaskOnLostFocus?[]:M().slice())),R(this,r,n,t)),Q!==E().join("")&&(Q=r.join(""),i.trigger("change"))}},mouseenterEvent:function(e){ne=!0,i.activeElement!==this&&c.showMaskOnHover&&this.inputmask._valueGet()!==E().join("")&&R(this,E())},submitEvent:function(e){Q!==E().join("")&&W.trigger("change"),c.clearMaskOnLostFocus&&-1===v()&&Y.inputmask._valueGet&&Y.inputmask._valueGet()===M().join("")&&Y.inputmask._valueSet(""),c.removeMaskOnSubmit&&(Y.inputmask._valueSet(Y.inputmask.unmaskedvalue(),!0),setTimeout(function(){R(Y,E())},0))},resetEvent:function(e){Y.inputmask.refreshValue=!0,setTimeout(function(){W.trigger("setvalue")},0)}};if(a.prototype.positionColorMask=function(e,t){e.style.left=t.offsetLeft+"px"},r!==n)switch(r.action){case"isComplete":return Y=r.el,V(E());case"unmaskedvalue":return Y!==n&&r.value===n||(Z=r.value,Z=(e.isFunction(c.onBeforeMask)&&c.onBeforeMask.call(J,Z,c)||Z).split(""),G(n,!1,!1,X?Z.reverse():Z),e.isFunction(c.onBeforeWrite)&&c.onBeforeWrite.call(J,n,E(),0,c)),B(Y);case"mask":!function(t){re.off(t);var a=function(t,a){var r=t.getAttribute("type"),s="INPUT"===t.tagName&&-1!==e.inArray(r,a.supportsInputType)||t.isContentEditable||"TEXTAREA"===t.tagName;if(!s)if("INPUT"===t.tagName){var l=i.createElement("input");l.setAttribute("type",r),s="text"===l.type,l=null}else s="partial";return!1!==s?function(t){function r(){return this.inputmask?this.inputmask.opts.autoUnmask?this.inputmask.unmaskedvalue():-1!==v()||!0!==a.nullable?i.activeElement===this&&a.clearMaskOnLostFocus?(X?H(E().slice()).reverse():H(E().slice())).join(""):l.call(this):"":l.call(this)}function s(t){u.call(this,t),this.inputmask&&e(this).trigger("setvalue")}var l,u,c;if(!t.inputmask.__valueGet){if(!0!==a.noValuePatching){if(Object.getOwnPropertyDescriptor){"function"!=typeof Object.getPrototypeOf&&(Object.getPrototypeOf="object"===o("test".__proto__)?function(e){return e.__proto__}:function(e){return e.constructor.prototype});var p=Object.getPrototypeOf?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(t),"value"):n;p&&p.get&&p.set?(l=p.get,u=p.set,Object.defineProperty(t,"value",{get:r,set:s,configurable:!0})):"INPUT"!==t.tagName&&(l=function(){return this.textContent},u=function(e){this.textContent=e},Object.defineProperty(t,"value",{get:r,set:s,configurable:!0}))}else i.__lookupGetter__&&t.__lookupGetter__("value")&&(l=t.__lookupGetter__("value"),u=t.__lookupSetter__("value"),t.__defineGetter__("value",r),t.__defineSetter__("value",s));t.inputmask.__valueGet=l,t.inputmask.__valueSet=u}t.inputmask._valueGet=function(e){return X&&!0!==e?l.call(this.el).split("").reverse().join(""):l.call(this.el)},t.inputmask._valueSet=function(e,t){u.call(this.el,null===e||e===n?"":!0!==t&&X?e.split("").reverse().join(""):e)},l===n&&(l=function(){return this.value},u=function(e){this.value=e},function(t){if(e.valHooks&&(e.valHooks[t]===n||!0!==e.valHooks[t].inputmaskpatch)){var i=e.valHooks[t]&&e.valHooks[t].get?e.valHooks[t].get:function(e){return e.value},r=e.valHooks[t]&&e.valHooks[t].set?e.valHooks[t].set:function(e,t){return e.value=t,e};e.valHooks[t]={get:function(e){if(e.inputmask){if(e.inputmask.opts.autoUnmask)return e.inputmask.unmaskedvalue();var t=i(e);return-1!==v(n,n,e.inputmask.maskset.validPositions)||!0!==a.nullable?t:""}return i(e)},set:function(t,i){var n,a=e(t);return n=r(t,i),t.inputmask&&a.trigger("setvalue"),n},inputmaskpatch:!0}}}(t.type),c=t,re.on(c,"mouseenter",function(t){var i=e(this);this.inputmask._valueGet()!==E().join("")&&i.trigger("setvalue")}))}}(t):t.inputmask=n,s}(t,c);if(!1!==a&&(W=e(Y=t),-1===($=Y!==n?Y.maxLength:n)&&($=n),!0===c.colorMask&&U(Y),p&&("inputmode"in Y&&(Y.inputmode=c.inputmode,Y.setAttribute("inputmode",c.inputmode)),!0===c.disablePredictiveText&&("autocorrect"in Y?Y.autocorrect=!1:(!0!==c.colorMask&&U(Y),Y.type="password"))),!0===a&&(re.on(Y,"submit",oe.submitEvent),re.on(Y,"reset",oe.resetEvent),re.on(Y,"mouseenter",oe.mouseenterEvent),re.on(Y,"blur",oe.blurEvent),re.on(Y,"focus",oe.focusEvent),re.on(Y,"mouseleave",oe.mouseleaveEvent),!0!==c.colorMask&&re.on(Y,"click",oe.clickEvent),re.on(Y,"dblclick",oe.dblclickEvent),re.on(Y,"paste",oe.pasteEvent),re.on(Y,"dragdrop",oe.pasteEvent),re.on(Y,"drop",oe.pasteEvent),re.on(Y,"cut",oe.cutEvent),re.on(Y,"complete",c.oncomplete),re.on(Y,"incomplete",c.onincomplete),re.on(Y,"cleared",c.oncleared),p||!0===c.inputEventOnly?Y.removeAttribute("maxLength"):(re.on(Y,"keydown",oe.keydownEvent),re.on(Y,"keypress",oe.keypressEvent)),re.on(Y,"compositionstart",e.noop),re.on(Y,"compositionupdate",e.noop),re.on(Y,"compositionend",e.noop),re.on(Y,"keyup",e.noop),re.on(Y,"input",oe.inputFallBackEvent),re.on(Y,"beforeinput",e.noop)),re.on(Y,"setvalue",oe.setValueEvent),Q=M().join(""),""!==Y.inputmask._valueGet(!0)||!1===c.clearMaskOnLostFocus||i.activeElement===Y)){var r=e.isFunction(c.onBeforeMask)&&c.onBeforeMask.call(J,Y.
9979inputmask._valueGet(!0),c)||Y.inputmask._valueGet(!0);""!==r&&G(Y,!0,!1,X?r.split("").reverse():r.split(""));var s=E().slice();Q=s.join(""),!1===V(s)&&c.clearIncomplete&&g(),c.clearMaskOnLostFocus&&i.activeElement!==Y&&(-1===v()?s=[]:H(s)),R(Y,s),i.activeElement===Y&&I(Y,F(v()))}}(Y);break;case"format":return Z=(e.isFunction(c.onBeforeMask)&&c.onBeforeMask.call(J,r.value,c)||r.value).split(""),G(n,!0,!1,X?Z.reverse():Z),r.metadata?{value:X?E().slice().reverse().join(""):E().join(""),metadata:u.call(this,{action:"getmetadata"},s,c)}:X?E().slice().reverse().join(""):E().join("");case"isValid":r.value?(Z=r.value.split(""),G(n,!0,!0,X?Z.reverse():Z)):r.value=E().join("");for(var se=E(),le=L(),ue=se.length-1;ue>le&&!j(ue);ue--);return se.splice(le,ue+1-le),V(se)&&r.value===E().join("");case"getemptymask":return M().join("");case"remove":return Y&&Y.inputmask&&(W=e(Y),Y.inputmask._valueSet(c.autoUnmask?B(Y):Y.inputmask._valueGet(!0)),re.off(Y),Y.inputmask.colorMask&&((q=Y.inputmask.colorMask).removeChild(Y),q.parentNode.insertBefore(Y,q),q.parentNode.removeChild(q)),Object.getOwnPropertyDescriptor&&Object.getPrototypeOf?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Y),"value")&&Y.inputmask.__valueGet&&Object.defineProperty(Y,"value",{get:Y.inputmask.__valueGet,set:Y.inputmask.__valueSet,configurable:!0}):i.__lookupGetter__&&Y.__lookupGetter__("value")&&Y.inputmask.__valueGet&&(Y.__defineGetter__("value",Y.inputmask.__valueGet),Y.__defineSetter__("value",Y.inputmask.__valueSet)),Y.inputmask=n),Y;case"getmetadata":if(e.isArray(s.metadata)){var ce=d(!0,0,!1).join("");return e.each(s.metadata,function(e,t){if(t.mask===ce)return ce=t,!1}),ce}return s.metadata}}var c=navigator.userAgent,p=l("touchstart"),f=/iemobile/i.test(c),m=/iphone/i.test(c)&&!f;return a.prototype={dataAttribute:"data-inputmask",defaults:{placeholder:"_",optionalmarker:["[","]"],quantifiermarker:["{","}"],groupmarker:["(",")"],alternatormarker:"|",escapeChar:"\\",mask:null,regex:null,oncomplete:e.noop,onincomplete:e.noop,oncleared:e.noop,repeat:0,greedy:!0,autoUnmask:!1,removeMaskOnSubmit:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,alias:null,onKeyDown:e.noop,onBeforeMask:null,onBeforePaste:function(t,i){return e.isFunction(i.onBeforeMask)?i.onBeforeMask.call(this,t,i):t},onBeforeWrite:null,onUnMask:null,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:e.noop,skipOptionalPartCharacter:" ",numericInput:!1,rightAlign:!1,undoOnEscape:!0,radixPoint:"",radixPointDefinitionSymbol:n,groupSeparator:"",keepStatic:null,positionCaretOnTab:!0,tabThrough:!1,supportsInputType:["text","tel","password","search"],ignorables:[8,9,13,19,27,33,34,35,36,37,38,39,40,45,46,93,112,113,114,115,116,117,118,119,120,121,122,123,0,229],isComplete:null,canClearPosition:e.noop,preValidation:null,postValidation:null,staticDefinitionSymbol:n,jitMasking:!1,nullable:!0,inputEventOnly:!1,noValuePatching:!1,positionCaretOnClick:"lvp",casing:null,inputmode:"verbatim",colorMask:!1,disablePredictiveText:!1,importDataAttributes:!0},definitions:{9:{validator:"[0-91-9]",definitionSymbol:"*"},a:{validator:"[A-Za-zÀ-ÿ¨¸A-yµ]",definitionSymbol:"*"},"*":{validator:"[0-91-9A-Za-zÀ-ÿ¨¸A-yµ]"}},aliases:{},masksCache:{},mask:function(o){var l=this;return"string"==typeof o&&(o=i.getElementById(o)||i.querySelectorAll(o)),o=o.nodeName?[o]:o,e.each(o,function(i,o){var c=e.extend(!0,{},l.opts);if(function(i,a,o,s){if(!0===a.importDataAttributes){var l,u,c,p,f=function(e,a){null!==(a=a!==n?a:i.getAttribute(s+"-"+e))&&("string"==typeof a&&(0===e.indexOf("on")?a=t[a]:"false"===a?a=!1:"true"===a&&(a=!0)),o[e]=a)},m=i.getAttribute(s);if(m&&""!==m&&(m=m.replace(/'/g,'"'),u=JSON.parse("{"+m+"}")),u){c=n;for(p in u)if("alias"===p.toLowerCase()){c=u[p];break}}f("alias",c),o.alias&&r(o.alias,o,a);for(l in a){if(u){c=n;for(p in u)if(p.toLowerCase()===l.toLowerCase()){c=u[p];break}}f(l,c)}}return e.extend(!0,a,o),("rtl"===i.dir||a.rightAlign)&&(i.style.textAlign="right"),("rtl"===i.dir||a.numericInput)&&(i.dir="ltr",i.removeAttribute("dir"),a.isRTL=!0),Object.keys(o).length}(o,c,e.extend(!0,{},l.userOptions),l.dataAttribute)){var p=s(c,l.noMasksCache);p!==n&&(o.inputmask!==n&&(o.inputmask.opts.autoUnmask=!0,o.inputmask.remove()),o.inputmask=new a(n,n,!0),o.inputmask.opts=c,o.inputmask.noMasksCache=l.noMasksCache,o.inputmask.userOptions=e.extend(!0,{},l.userOptions),o.inputmask.isRTL=c.isRTL||c.numericInput,o.inputmask.el=o,o.inputmask.maskset=p,e.data(o,"_inputmask_opts",c),u.call(o.inputmask,{action:"mask"}))}}),o&&o[0]&&o[0].inputmask||this},option:function(t,i){return"string"==typeof t?this.opts[t]:"object"===(void 0===t?"undefined":o(t))?(e.extend(this.userOptions,t),this.el&&!0!==i&&this.mask(this.el),this):void 0},unmaskedvalue:function(e){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"unmaskedvalue",value:e})},remove:function(){return u.call(this,{action:"remove"})},getemptymask:function(){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"getemptymask"})},hasMaskedValue:function(){return!this.opts.autoUnmask},isComplete:function(){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"isComplete"})},getmetadata:function(){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"getmetadata"})},isValid:function(e){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"isValid",value:e})},format:function(e,t){return this.maskset=this.maskset||s(this.opts,this.noMasksCache),u.call(this,{action:"format",value:e,metadata:t})},analyseMask:function(t,i,r){function o(e,t,i,n){this.matches=[],this.openGroup=e||!1,this.alternatorGroup=!1,this.isGroup=e||!1,this.isOptional=t||!1,this.isQuantifier=i||!1,this.isAlternator=n||!1,this.quantifier={min:1,max:1}}function s(t,o,s){s=s!==n?s:t.matches.length;var l=t.matches[s-1];if(i)0===o.indexOf("[")||k&&/\\d|\\s|\\w]/i.test(o)||"."===o?t.matches.splice(s++,0,{fn:new RegExp(o,r.casing?"i":""),optionality:t.isOptional,newBlockMarker:l===n||l.def!==o,casing:null,def:o,placeholder:n,nativeDef:o}):(k&&(o=o[o.length-1]),e.each(o.split(""),function(e,i){l=t.matches[s-1],t.matches.splice(s++,0,{fn:null,optionality:t.isOptional,newBlockMarker:l===n||l.def!==i&&null!==l.fn,casing:null,def:r.staticDefinitionSymbol||i,placeholder:r.staticDefinitionSymbol!==n?i:n,nativeDef:i})})),k=!1;else{var u=(r.definitions?r.definitions[o]:n)||a.prototype.definitions[o];u&&!k?t.matches.splice(s++,0,{fn:u.validator?"string"==typeof u.validator?new RegExp(u.validator,r.casing?"i":""):new function(){this.test=u.validator}:new RegExp("."),optionality:t.isOptional,newBlockMarker:l===n||l.def!==(u.definitionSymbol||o),casing:u.casing,def:u.definitionSymbol||o,placeholder:u.placeholder,nativeDef:o}):(t.matches.splice(s++,0,{fn:null,optionality:t.isOptional,newBlockMarker:l===n||l.def!==o&&null!==l.fn,casing:null,def:r.staticDefinitionSymbol||o,placeholder:r.staticDefinitionSymbol!==n?o:n,nativeDef:o}),k=!1)}}function l(){if(b.length>0){if(s(f=b[b.length-1],c),f.isAlternator){m=b.pop();for(var e=0;e<m.matches.length;e++)m.matches[e].isGroup=!1;b.length>0?(f=b[b.length-1]).matches.push(m):y.matches.push(m)}}else s(y,c)}var u,c,p,f,m,d,h,g=/(?:[?*+]|\{[0-9\+\*]+(?:,[0-9\+\*]*)?\})|[^.?*+^${[]()|\\]+|./g,v=/\[\^?]?(?:[^\\\]]+|\\[\S\s]?)*]?|\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9][0-9]*|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|c[A-Za-z]|[\S\s]?)|\((?:\?[:=!]?)?|(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[()|\\]+|./g,k=!1,y=new o,b=[],x=[];for(i&&(r.optionalmarker[0]=n,r.optionalmarker[1]=n);u=i?v.exec(t):g.exec(t);){if(c=u[0],i)switch(c.charAt(0)){case"?":c="{0,1}";break;case"+":case"*":c="{"+c+"}"}if(k)l();else switch(c.charAt(0)){case r.escapeChar:k=!0,i&&l();break;case r.optionalmarker[1]:case r.groupmarker[1]:if((p=b.pop()).openGroup=!1,p!==n)if(b.length>0){if((f=b[b.length-1]).matches.push(p),f.isAlternator){m=b.pop();for(var P=0;P<m.matches.length;P++)m.matches[P].isGroup=!1,m.matches[P].alternatorGroup=!1;b.length>0?(f=b[b.length-1]).matches.push(m):y.matches.push(m)}}else y.matches.push(p);else l();break;case r.optionalmarker[0]:b.push(new o(!1,!0));break;case r.groupmarker[0]:b.push(new o(!0));break;case r.quantifiermarker[0]:var S=new o(!1,!1,!0),A=(c=c.replace(/[{}]/g,"")).split(","),C=isNaN(A[0])?A[0]:parseInt(A[0]),M=1===A.length?C:isNaN(A[1])?A[1]:parseInt(A[1]);if("*"!==M&&"+"!==M||(C="*"===M?0:1),S.quantifier={min:C,max:M},b.length>0){var E=b[b.length-1].matches;(u=E.pop()).isGroup||((h=new o(!0)).matches.push(u),u=h),E.push(u),E.push(S)}else(u=y.matches.pop()).isGroup||(i&&null===u.fn&&"."===u.def&&(u.fn=new RegExp(u.def,r.casing?"i":"")),(h=new o(!0)).matches.push(u),u=h),y.matches.push(u),y.matches.push(S);break;case r.alternatormarker:if(b.length>0){var w=(f=b[b.length-1]).matches[f.matches.length-1];
9979d=f.openGroup&&(w.matches===n||!1===w.isGroup&&!1===w.isAlternator)?b.pop():f.matches.pop()}else d=y.matches.pop();if(d.isAlternator)b.push(d);else if(d.alternatorGroup?(m=b.pop(),d.alternatorGroup=!1):m=new o(!1,!1,!1,!0),m.matches.push(d),b.push(m),d.openGroup){d.openGroup=!1;var D=new o(!0);D.alternatorGroup=!0,b.push(D)}break;default:l()}}for(;b.length>0;)p=b.pop(),y.matches.push(p);return y.matches.length>0&&(function t(a){a&&a.matches&&e.each(a.matches,function(e,o){var l=a.matches[e+1];(l===n||l.matches===n||!1===l.isQuantifier)&&o&&o.isGroup&&(o.isGroup=!1,i||(s(o,r.groupmarker[0],0),!0!==o.openGroup&&s(o,r.groupmarker[1]))),t(o)})}(y),x.push(y)),(r.numericInput||r.isRTL)&&function e(t){t.matches=t.matches.reverse();for(var i in t.matches)if(t.matches.hasOwnProperty(i)){var a=parseInt(i);if(t.matches[i].isQuantifier&&t.matches[a+1]&&t.matches[a+1].isGroup){var o=t.matches[i];t.matches.splice(i,1),t.matches.splice(a+1,0,o)}t.matches[i].matches!==n?t.matches[i]=e(t.matches[i]):t.matches[i]=function(e){return e===r.optionalmarker[0]?e=r.optionalmarker[1]:e===r.optionalmarker[1]?e=r.optionalmarker[0]:e===r.groupmarker[0]?e=r.groupmarker[1]:e===r.groupmarker[1]&&(e=r.groupmarker[0]),e}(t.matches[i])}return t}(x[0]),x}},a.extendDefaults=function(t){e.extend(!0,a.prototype.defaults,t)},a.extendDefinitions=function(t){e.extend(!0,a.prototype.definitions,t)},a.extendAliases=function(t){e.extend(!0,a.prototype.aliases,t)},a.format=function(e,t,i){return a(t).format(e,i)},a.unmask=function(e,t){return a(t).unmaskedvalue(e)},a.isValid=function(e,t){return a(t).isValid(e)},a.remove=function(t){e.each(t,function(e,t){t.inputmask&&t.inputmask.remove()})},a.escapeRegex=function(e){return e.replace(new RegExp("(\\"+["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^"].join("|\\")+")","gim"),"\\$1")},a.keyCode={BACKSPACE:8,BACKSPACE_SAFARI:127,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,RIGHT:39,SPACE:32,TAB:9,UP:38,X:88,CONTROL:17},a})?n.apply(t,a):n)&&(e.exports=r)},function(e,t){e.exports=jQuery},function(e,t,i){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}i(4),i(7),i(8),i(9);var a=n(i(1)),r=n(i(0)),o=n(i(2));r.default===o.default&&i(10),window.Inputmask=a.default},function(e,t,i){"use strict";var n,a,r;"function"==typeof Symbol&&Symbol.iterator,a=[i(0),i(1)],void 0!==(r="function"==typeof(n=function(e,t){function i(e){if(!e.tokenizer){var t=[];for(var i in o)-1===t.indexOf(i[0])&&t.push(i[0]);e.tokenizer="("+t.join("+|")+")+?|.",e.tokenizer=new RegExp(e.tokenizer,"g")}return e.tokenizer}function n(e,n,a){for(var r,s="";r=i(a).exec(e);)void 0===n?s+=o[r[0]]?"("+o[r[0]][0]+")":t.escapeRegex(r[0]):o[r[0]]?s+=o[r[0]][3].call(n.date):s+=r[0];return s}function a(e,t){for(e=String(e),t=t||2;e.length<t;)e="0"+e;return e}function r(e,t,n){var a,r,s,l,u,c,p,f,m={date:new Date(1,0,1)},d=e;if("string"==typeof d){for(;r=i(n).exec(t);){var h=d.slice(0,r[0].length);o.hasOwnProperty(r[0])&&(a=o[r[0]][2],s=o[r[0]][1],l=m,u=h,c=n,p=void 0,f=void 0,"year"===a?(l[a]=(f=4===(p=u).length?p:(new Date).getFullYear().toString().substr(0,4-p.length)+p,n.min&&n.min.year&&n.max&&n.max.year?(f=f.replace(/[^0-9]/g,""),f=p.charAt(0)===n.max.year.charAt(0)?p.replace(/[^0-9]/g,"0"):f+n.min.year.substr(f.length)):f=f.replace(/[^0-9]/g,"0"),f),l["raw"+a]=u):l[a]=c.min&&u.match(/[^0-9]/)?c.min[a]:u,void 0!==s&&s.call(l.date,"month"==a?parseInt(l[a])-1:l[a])),d=d.slice(h.length)}return m}}var o={d:["[1-9]|[12][0-9]|3[01]",Date.prototype.setDate,"day",Date.prototype.getDate],dd:["0[1-9]|[12][0-9]|3[01]",Date.prototype.setDate,"day",function(){return a(Date.prototype.getDate.call(this),2)}],ddd:[""],dddd:[""],m:["[1-9]|1[012]",Date.prototype.setMonth,"month",function(){return Date.prototype.getMonth.call(this)+1}],mm:["0[1-9]|1[012]",Date.prototype.setMonth,"month",function(){return a(Date.prototype.getMonth.call(this)+1,2)}],mmm:[""],mmmm:[""],yy:["[0-9]{2}",Date.prototype.setFullYear,"year",function(){return a(Date.prototype.getFullYear.call(this),2)}],yyyy:["[0-9]{4}",Date.prototype.setFullYear,"year",function(){return a(Date.prototype.getFullYear.call(this),4)}],h:["[1-9]|1[0-2]",Date.prototype.setHours,"hours",Date.prototype.getHours],hh:["0[1-9]|1[0-2]",Date.prototype.setHours,"hours",function(){return a(Date.prototype.getHours.call(this),2)}],hhh:["[0-9]+",Date.prototype.setHours,"hours",Date.prototype.getHours],H:["1?[0-9]|2[0-3]",Date.prototype.setHours,"hours",Date.prototype.getHours],HH:["[01][0-9]|2[0-3]",Date.prototype.setHours,"hours",function(){return a(Date.prototype.getHours.call(this),2)}],HHH:["[0-9]+",Date.prototype.setHours,"hours",Date.prototype.getHours],M:["[1-5]?[0-9]",Date.prototype.setMinutes,"minutes",Date.prototype.getMinutes],MM:["[0-5][0-9]",Date.prototype.setMinutes,"minutes",function(){return a(Date.prototype.getMinutes.call(this),2)}],s:["[1-5]?[0-9]",Date.prototype.setSeconds,"seconds",Date.prototype.getSeconds],ss:["[0-5][0-9]",Date.prototype.setSeconds,"seconds",function(){return a(Date.prototype.getSeconds.call(this),2)}],l:["[0-9]{3}",Date.prototype.setMilliseconds,"milliseconds",function(){return a(Date.prototype.getMilliseconds.call(this),3)}],L:["[0-9]{2}",Date.prototype.setMilliseconds,"milliseconds",function(){return a(Date.prototype.getMilliseconds.call(this),2)}],t:[""],tt:[""],T:[""],TT:[""],Z:[""],o:[""],S:[""]},s={isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:ss",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"};return t.extendAliases({datetime:{mask:function(e){return e.inputFormat=s[e.inputFormat]||e.inputFormat,e.displayFormat=s[e.displayFormat]||e.displayFormat||e.inputFormat,e.outputFormat=s[e.outputFormat]||e.outputFormat||e.inputFormat,e.placeholder=e.placeholder!==t.prototype.defaults.placeholder?e.placeholder:e.inputFormat,e.min=r(e.min,e.inputFormat,e),e.max=r(e.max,e.inputFormat,e),e.regex=n(e.inputFormat,void 0,e),null},inputFormat:"isoDateTime",displayFormat:void 0,outputFormat:void 0,min:null,max:null,i18n:{dayNames:["Mon","Tue","Wed","Thu","Fri","Sat","Sun","Monday","Tuesday","Wednesday","Thursday","Frid
9979ay","Saturday","Sunday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"]},postValidation:function(e,t,i){var n,a,o,s,l,u=t,c=r(e.join(""),i.inputFormat,i);return u&&c.date.getTime()==c.date.getTime()&&(s=c,l=u,u=(u=(!isFinite(s.day)||"29"==s.day&&!isFinite(s.rawyear)||new Date(s.date.getFullYear(),isFinite(s.month)?s.month:s.date.getMonth()+1,0).getDate()>=s.day)&&l)&&(n=c.date,o=!0,(a=i).min&&a.min.date.getTime()==a.min.date.getTime()&&(o=o&&a.min.date.getTime()<=n.getTime()),a.max&&a.max.date.getTime()==a.max.date.getTime()&&(o=o&&a.max.date.getTime()>=n.getTime()),o)),u},onKeyDown:function(n,r,o,s){if(n.ctrlKey&&n.keyCode===t.keyCode.RIGHT){for(var l,u=new Date,c="";l=i(s).exec(s.inputFormat);)"d"===l[0].charAt(0)?c+=a(u.getDate(),l[0].length):"m"===l[0].charAt(0)?c+=a(u.getMonth()+1,l[0].length):"yyyy"===l[0]?c+=u.getFullYear().toString():"y"===l[0].charAt(0)&&(c+=a(u.getYear(),l[0].length));this.inputmask._valueSet(c),e(this).trigger("setvalue")}},onUnMask:function(e,t,i){return n(i.outputFormat,r(e,i.inputFormat,i),i)},insertMode:!1}}),t})?n.apply(t,a):n)&&(e.exports=r)},function(e,t,i){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,void 0!==(n=function(){return window}.call(t,i,t,e))&&(e.exports=n)},function(e,t,i){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,void 0!==(n=function(){return document}.call(t,i,t,e))&&(e.exports=n)},function(e,t,i){"use strict";var n,a,r;"function"==typeof Symbol&&Symbol.iterator,a=[i(0),i(1)],void 0!==(r="function"==typeof(n=function(e,t){return t.extendDefinitions({A:{validator:"[A-Za-zÀ-ÿ¨¸A-yµ]",casing:"upper"},"&":{validator:"[0-9A-Za-zÀ-ÿ¨¸A-yµ]",casing:"upper"},"#":{validator:"[0-9A-Fa-f]",casing:"upper"}}),t.extendAliases({url:{definitions:{i:{validator:"."}},mask:"(\\http://)|(\\http\\s://)|(ftp://)|(ftp\\s://)i{+}",insertMode:!1,autoUnmask:!1,inputmode:"url"},ip:{mask:"i[i[i]].i[i[i]].i[i[i]].i[i[i]]",definitions:{i:{validator:function(e,t,i,n,a){return i-1>-1&&"."!==t.buffer[i-1]?(e=t.buffer[i-1]+e,e=i-2>-1&&"."!==t.buffer[i-2]?t.buffer[i-2]+e:"0"+e):e="00"+e,new RegExp("25[0-5]|2[0-4][0-9]|[01][0-9][0-9]").test(e)}}},onUnMask:function(e,t,i){return e},inputmode:"numeric"},email:{mask:"*{1,64}[.*{1,64}][.*{1,64}][.*{1,63}]@-{1,63}.-{1,63}[.-{1,63}][.-{1,63}]",greedy:!1,onBeforePaste:function(e,t){return(e=e.toLowerCase()).replace("mailto:","")},definitions:{"*":{validator:"[0-9A-Za-z!#$%&'*+/=?^_`{|}~-]",casing:"lower"},"-":{validator:"[0-9A-Za-z-]",casing:"lower"}},onUnMask:function(e,t,i){return e},inputmode:"email"},mac:{mask:"##:##:##:##:##:##"},vin:{mask:"V{13}9{4}",definitions:{V:{validator:"[A-HJ-NPR-Za-hj-npr-z\\d]",casing:"upper"}},clearIncomplete:!0,autoUnmask:!0}}),t})?n.apply(t,a):n)&&(e.exports=r)},function(e,t,i){"use strict";var n,a,r;"function"==typeof Symbol&&Symbol.iterator,a=[i(0),i(1)],void 0!==(r="function"==typeof(n=function(e,t,i){function n(e,i){for(var n="",a=0;a<e.length;a++)t.prototype.definitions[e.charAt(a)]||i.definitions[e.charAt(a)]||i.optionalmarker.start===e.charAt(a)||i.optionalmarker.end===e.charAt(a)||i.quantifiermarker.start===e.charAt(a)||i.quantifiermarker.end===e.charAt(a)||i.groupmarker.start===e.charAt(a)||i.groupmarker.end===e.charAt(a)||i.alternatormarker===e.charAt(a)?n+="\\"+e.charAt(a):n+=e.charAt(a);return n}return t.extendAliases({numeric:{mask:function(e){if(0!==e.repeat&&isNaN(e.integerDigits)&&(e.integerDigits=e.repeat),e.repeat=0,e.groupSeparator===e.radixPoint&&e.digits&&"0"!==e.digits&&("."===e.radixPoint?e.groupSeparator=",":","===e.radixPoint?e.groupSeparator=".":e.groupSeparator="")," "===e.groupSeparator&&(e.skipOptionalPartCharacter=i),e.autoGroup=e.autoGroup&&""!==e.groupSeparator,e.autoGroup&&("string"==typeof e.groupSize&&isFinite(e.groupSize)&&(e.groupSize=parseInt(e.groupSize)),isFinite(e.integerDigits))){var t=Math.floor(e.integerDigits/e.groupSize),a=e.integerDigits%e.groupSize;e.integerDigits=parseInt(e.integerDigits)+(0===a?t-1:t),e.integerDigits<1&&(e.integerDigits="*")}e.placeholder.length>1&&(e.placeholder=e.placeholder.charAt(0)),"radixFocus"===e.positionCaretOnClick&&""===e.placeholder&&!1===e.integerOptional&&(e.positionCaretOnClick="lvp"),e.definitions[";"]=e.definitions["~"],e.definitions[";
9979"].definitionSymbol="~",!0===e.numericInput&&(e.positionCaretOnClick="radixFocus"===e.positionCaretOnClick?"lvp":e.positionCaretOnClick,e.digitsOptional=!1,isNaN(e.digits)&&(e.digits=2),e.decimalProtect=!1);var r="[+]";if(r+=n(e.prefix,e),!0===e.integerOptional?r+="~{1,"+e.integerDigits+"}":r+="~{"+e.integerDigits+"}",e.digits!==i){e.radixPointDefinitionSymbol=e.decimalProtect?":":e.radixPoint;var o=e.digits.toString().split(",");isFinite(o[0]&&o[1]&&isFinite(o[1]))?r+=e.radixPointDefinitionSymbol+";{"+e.digits+"}":(isNaN(e.digits)||parseInt(e.digits)>0)&&(e.digitsOptional?r+="["+e.radixPointDefinitionSymbol+";{1,"+e.digits+"}]":r+=e.radixPointDefinitionSymbol+";{"+e.digits+"}")}return r+=n(e.suffix,e),r+="[-]",e.greedy=!1,r},placeholder:"",greedy:!1,digits:"*",digitsOptional:!0,enforceDigitsOnBlur:!1,radixPoint:".",positionCaretOnClick:"radixFocus",groupSize:3,groupSeparator:"",autoGroup:!1,allowMinus:!0,negationSymbol:{front:"-",back:""},integerDigits:"+",integerOptional:!0,prefix:"",suffix:"",rightAlign:!0,decimalProtect:!0,min:null,max:null,step:1,insertMode:!0,autoUnmask:!1,unmaskAsNumber:!1,inputmode:"numeric",preValidation:function(t,n,a,r,o){if("-"===a||a===o.negationSymbol.front)return!0===o.allowMinus&&(o.isNegative=o.isNegative===i||!o.isNegative,""===t.join("")||{caret:n,dopost:!0});if(!1===r&&a===o.radixPoint&&o.digits!==i&&(isNaN(o.digits)||parseInt(o.digits)>0)){var s=e.inArray(o.radixPoint,t);if(-1!==s)return!0===o.numericInput?n===s:{caret:s+1}}return!0},postValidation:function(n,a,r){var o=r.suffix.split(""),s=r.prefix.split("");if(a.pos===i&&a.caret!==i&&!0!==a.dopost)return a;var l=a.caret!==i?a.caret:a.pos,u=n.slice();r.numericInput&&(l=u.length-l-1,u=u.reverse());var c=u[l];if(c===r.groupSeparator&&(c=u[l+=1]),l===u.length-r.suffix.length-1&&c===r.radixPoint)return a;c!==i&&c!==r.radixPoint&&c!==r.negationSymbol.front&&c!==r.negationSymbol.back&&(u[l]="?",r.prefix.length>0&&l>=(!1===r.isNegative?1:0)&&l<r.prefix.length-1+(!1===r.isNegative?1:0)?s[l-(!1===r.isNegative?1:0)]="?":r.suffix.length>0&&l>=u.length-r.suffix.length-(!1===r.isNegative?1:0)&&(o[l-(u.length-r.suffix.length-(!1===r.isNegative?1:0))]="?")),s=s.join(""),o=o.join("");var p=u.join("").replace(s,"");if(p=(p=(p=(p=p.replace(o,"")).replace(new RegExp(t.escapeRegex(r.groupSeparator),"g"),"")).replace(new RegExp("[-"+t.escapeRegex(r.negationSymbol.front)+"]","g"),"")).replace(new RegExp(t.escapeRegex(r.negationSymbol.back)+"$"),""),isNaN(r.placeholder)&&(p=p.replace(new RegExp(t.escapeRegex(r.placeholder),"g"),"")),p.length>1&&1!==p.indexOf(r.radixPoint)&&("0"===c&&(p=p.replace(/^\?/g,"")),p=p.replace(/^0/g,"")),p.charAt(0)===r.radixPoint&&""!==r.radixPoint&&!0!==r.numericInput&&(p="0"+p),""!==p){if(p=p.split(""),(!r.digitsOptional||r.enforceDigitsOnBlur&&"blur"===a.event)&&isFinite(r.digits)){var f=e.inArray(r.radixPoint,p),m=e.inArray(r.radixPoint,u);-1===f&&(p.push(r.radixPoint),f=p.length-1);for(var d=1;d<=r.digits;d++)r.digitsOptional&&(!r.enforceDigitsOnBlur||"blur"!==a.event)||p[f+d]!==i&&p[f+d]!==r.placeholder.charAt(0)?-1!==m&&u[m+d]!==i&&(p[f+d]=p[f+d]||u[m+d]):p[f+d]=a.placeholder||r.placeholder.charAt(0)}if(!0!==r.autoGroup||""===r.groupSeparator||c===r.radixPoint&&a.pos===i&&!a.dopost)p=p.join("");else{var h=p[p.length-1]===r.radixPoint&&a.c===r.radixPoint;p=t(function(e,t){var i="";if(i+="("+t.groupSeparator+"*{"+t.groupSize+"}){*}",""!==t.radixPoint){var n=e.join("").split(t.radixPoint);n[1]&&(i+=t.radixPoint+"*{"+n[1].match(/^\d*\??\d*/)[0].length+"}")}return i}(p,r),{numericInput:!0,jitMasking:!0,definitions:{"*":{validator:"[0-9?]",cardinality:1}}}).format(p.join("")),h&&(p+=r.radixPoint),p.charAt(0)===r.groupSeparator&&p.substr(1)}}if(r.isNegative&&"blur"===a.event&&(r.isNegative="0"!==p),p=s+p,p+=o,r.isNegative&&(p=r.negationSymbol.front+p,p+=r.negationSymbol.back),p=p.split(""),c!==i)if(c!==r.radixPoint&&c!==r.negationSymbol.front&&c!==r.negationSymbol.back)(l=e.inArray("?",p))>-1?p[l]=c:l=a.caret||0;else if(c===r.radixPoint||c===r.negationSymbol.front||c===r.negationSymbol.back){var g=e.inArray(c,p);-1!==g&&(l=g)}r.numericInput&&(l=p.length-l-1,p=p.reverse());var v={caret:c===i||a.pos!==i?l+(r.numericInput?-1:1):l,buffer:p,refreshFromBuffer:a.dopost||n.join("")!==p.join("")};return v.refreshFromBuffer?v:a},onBeforeWrite:function(n,a,r,o){if(n)switch(n.type){case"keydown":return o.postValidation(a,{caret:r,dopost:!0},o);case"blur":case"checkval":var s;if((l=o).parseMinMaxOptions===i&&(null!==l.min&&(l.min=l.min.toString().replace(new RegExp(t.escapeRegex(l.groupSeparator),"g"),""),","===l.radixPoint&&(l.min=l.min.replace(l.radixPoint,".")),l.min=isFinite(l.min)?parseFloat(l.min):NaN,isNaN(l.min)&&(l.min=Number.MIN_VALUE)),null!==l.max&&(l.max=l.max.toString().replace(new RegExp(t.escapeRegex(l.groupSeparator),"g"),""),","===l.radixPoint&&(l.max=l.max.replace(l.radixPoint,".")),l.max=isFinite(l.max)?parseFloat(l.max):NaN,isNaN(l.max)&&(l.max=Number.MAX_VALUE)),l.parseMinMaxOptions="done"),null!==o.min||null!==o.max){if(s=o.onUnMask(a.join(""),i,e.extend({},o,{unmaskAsNumber:!0})),null!==o.min&&s<o.min)return o.isNegative=o.min<0,o.postValidation(o.min.toString().replace(".",o.radixPoint).split(""),{caret:r,dopost:!0,placeholder:"0"},o);if(null!==o.max&&s>o.max)return o.isNegative=o.max<0,o.postValidation(o.max.toString().replace(".",o.radixPoint).split(""),{caret:r,dopost:!0,placeholder:"0"},o)}return o.postValidation(a,{caret:r,placeholder:"0",event:"blur"},o);case"_checkval":return{caret:r}}var l},regex:{integerPart:function(e,i){return i?new RegExp("["+t.escapeRegex(e.negationSymbol.front)+"+]?"):new RegExp("["+t.escapeRegex(e.negationSymbol.front)+"+]?\\d+")},integerNPart:function(e){return new RegExp("[\\d"+t.escapeRegex(e.groupSeparator)+t.escapeRegex(e.placeholder.charAt(0))+"]+")}},definitions:{"~":{validator:function(e,n,a,r,o,s){var l=r?new RegExp("[0-9"+t.escapeRegex(o.groupSeparator)+"]").test(e):new RegExp("[0-9]").test(e);
9979if(!0===l){if(!0!==o.numericInput&&n.validPositions[a]!==i&&"~"===n.validPositions[a].match.def&&!s){var u=n.buffer.join(""),c=(u=(u=u.replace(new RegExp("[-"+t.escapeRegex(o.negationSymbol.front)+"]","g"),"")).replace(new RegExp(t.escapeRegex(o.negationSymbol.back)+"$"),"")).split(o.radixPoint);c.length>1&&(c[1]=c[1].replace(/0/g,o.placeholder.charAt(0))),"0"===c[0]&&(c[0]=c[0].replace(/0/g,o.placeholder.charAt(0))),u=c[0]+o.radixPoint+c[1]||"";var p=n._buffer.join("");for(u===o.radixPoint&&(u=p);null===u.match(t.escapeRegex(p)+"$");)p=p.slice(1);l=(u=(u=u.replace(p,"")).split(""))[a]===i?{pos:a,remove:a}:{pos:a}}}else r||e!==o.radixPoint||n.validPositions[a-1]!==i||(n.buffer[a]="0",l={pos:a+1});return l},cardinality:1},"+":{validator:function(e,t,i,n,a){return a.allowMinus&&("-"===e||e===a.negationSymbol.front)},cardinality:1,placeholder:""},"-":{validator:function(e,t,i,n,a){return a.allowMinus&&e===a.negationSymbol.back},cardinality:1,placeholder:""},":":{validator:function(e,i,n,a,r){var o="["+t.escapeRegex(r.radixPoint)+"]",s=new RegExp(o).test(e);return s&&i.validPositions[n]&&i.validPositions[n].match.placeholder===r.radixPoint&&(s={caret:n+1}),s},cardinality:1,placeholder:function(e){return e.radixPoint}}},onUnMask:function(e,i,n){if(""===i&&!0===n.nullable)return i;var a=e.replace(n.prefix,"");return a=(a=a.replace(n.suffix,"")).replace(new RegExp(t.escapeRegex(n.groupSeparator),"g"),""),""!==n.placeholder.charAt(0)&&(a=a.replace(new RegExp(n.placeholder.charAt(0),"g"),"0")),n.unmaskAsNumber?(""!==n.radixPoint&&-1!==a.indexOf(n.radixPoint)&&(a=a.replace(t.escapeRegex.call(this,n.radixPoint),".")),a=(a=a.replace(new RegExp("^"+t.escapeRegex(n.negationSymbol.front)),"-")).replace(new RegExp(t.escapeRegex(n.negationSymbol.back)+"$"),""),Number(a)):a},isComplete:function(e,i){var n=e.join("");if(e.slice().join("")!==n)return!1;var a=n.replace(i.prefix,"");return a=(a=a.replace(i.suffix,"")).replace(new RegExp(t.escapeRegex(i.groupSeparator)+"([0-9]{3})","g"),"$1"),","===i.radixPoint&&(a=a.replace(t.escapeRegex(i.radixPoint),".")),isFinite(a)},onBeforeMask:function(e,n){if(n.isNegative=i,e=e.toString().charAt(e.length-1)===n.radixPoint?e.toString().substr(0,e.length-1):e.toString(),""!==n.radixPoint&&isFinite(e)){var a=e.split("."),r=""!==n.groupSeparator?parseInt(n.groupSize):0;2===a.length&&(a[0].length>r||a[1].length>r||a[0].length<=r&&a[1].length<r)&&(e=e.replace(".",n.radixPoint))}var o=e.match(/,/g),s=e.match(/\./g);if(e=s&&o?s.length>o.length?(e=e.replace(/\./g,"")).replace(",",n.radixPoint):o.length>s.length?(e=e.replace(/,/g,"")).replace(".",n.radixPoint):e.indexOf(".")<e.indexOf(",")?e.replace(/\./g,""):e.replace(/,/g,""):e.replace(new RegExp(t.escapeRegex(n.groupSeparator),"g"),""),0===n.digits&&(-1!==e.indexOf(".")?e=e.substring(0,e.indexOf(".")):-1!==e.indexOf(",")&&(e=e.substring(0,e.indexOf(",")))),""!==n.radixPoint&&isFinite(n.digits)&&-1!==e.indexOf(n.radixPoint)){var l=e.split(n.radixPoint)[1].match(new RegExp("\\d*"))[0];if(parseInt(n.digits)<l.toString().length){var u=Math.pow(10,parseInt(n.digits));e=e.replace(t.escapeRegex(n.radixPoint),"."),e=(e=Math.round(parseFloat(e)*u)/u).toString().replace(".",n.radixPoint)}}return e},canClearPosition:function(e,t,i,n,a){var r=e.validPositions[t],o=r.input!==a.radixPoint||null!==e.validPositions[t].match.fn&&!1===a.decimalProtect||r.input===a.radixPoint&&e.validPositions[t+1]&&null===e.validPositions[t+1].match.fn||isFinite(r.input)||t===i||r.input===a.groupSeparator||r.input===a.negationSymbol.front||r.input===a.negationSymbol.back;return!o||"+"!==r.match.nativeDef&&"-"!==r.match.nativeDef||(a.isNegative=!1),o},onKeyDown:function(i,n,a,r){var o=e(this);if(i.ctrlKey)switch(i.keyCode){case t.keyCode.UP:o.val(parseFloat(this.inputmask.unmaskedvalue())+parseInt(r.step)),o.trigger("setvalue");break;case t.keyCode.DOWN:o.val(parseFloat(this.inputmask.unmaskedvalue())-parseInt(r.step)),o.trigger("setvalue")}}},currency:{prefix:"$ ",groupSeparator:",",alias:"numeric",placeholder:"0",autoGroup:!0,digits:2,digitsOptional:!1,clearMaskOnLostFocus:!1},decimal:{alias:"numeric"},integer:{alias:"numeric",digits:0,radixPoint:""},percentage:{alias:"numeric",digits:2,digitsOptional:!0,radixPoint:".",placeholder:"0",autoGroup:!1,min:0,max:100,suffix:" %",allowMinus:!1}}),t})?n.apply(t,a):n)&&(e.exports=r)},function(e,t,i){"use strict";var n,a,r;"function"==typeof Symbol&&Symbol.iterator,a=[i(0),i(1)],void 0!==(r="function"==typeof(n=function(e,t){function i(e,t){var i=(e.mask||e).replace(/#/g,"0").replace(/\)/,"0").replace(/[+()#-]/g,""),n=(t.mask||t).replace(/#/g,"0").replace(/\)/,"0").replace(/[+()#-]/g,"");return i.localeCompare(n)}
9979var n=t.prototype.analyseMask;return t.prototype.analyseMask=function(t,i,a){var r={};return a.phoneCodes&&(a.phoneCodes&&a.phoneCodes.length>1e3&&(function e(i,n,a){n=n||"",a=a||r,""!==n&&(a[n]={});for(var o="",s=a[n]||a,l=i.length-1;l>=0;l--)s[o=(t=i[l].mask||i[l]).substr(0,1)]=s[o]||[],s[o].unshift(t.substr(1)),i.splice(l,1);for(var u in s)s[u].length>500&&e(s[u].slice(),u,s)}((t=t.substr(1,t.length-2)).split(a.groupmarker[1]+a.alternatormarker+a.groupmarker[0])),t=function t(i){var n="",r=[];for(var o in i)e.isArray(i[o])?1===i[o].length?r.push(o+i[o]):r.push(o+a.groupmarker[0]+i[o].join(a.groupmarker[1]+a.alternatormarker+a.groupmarker[0])+a.groupmarker[1]):r.push(o+t(i[o]));return 1===r.length?n+=r[0]:n+=a.groupmarker[0]+r.join(a.groupmarker[1]+a.alternatormarker+a.groupmarker[0])+a.groupmarker[1],n}(r)),t=t.replace(/9/g,"\\9")),n.call(this,t,i,a)},t.extendAliases({abstractphone:{groupmarker:["<",">"],countrycode:"",phoneCodes:[],keepStatic:"auto",mask:function(e){return e.definitions={"#":t.prototype.definitions[9]},e.phoneCodes.sort(i)},onBeforeMask:function(e,t){var i=e.replace(/^0{1,2}/,"").replace(/[\s]/g,"");return(i.indexOf(t.countrycode)>1||-1===i.indexOf(t.countrycode))&&(i="+"+t.countrycode+i),i},onUnMask:function(e,t,i){return e.replace(/[()#-]/g,"")},inputmode:"tel"}}),t})?n.apply(t,a):n)&&(e.exports=r)},function(e,t,i){"use strict";var n,a,r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};a=[i(2),i(1)],void 0!==(r="function"==typeof(n=function(e,t){return void 0===e.fn.inputmask&&(e.fn.inputmask=function(i,n){var a,r=this[0];if(void 0===n&&(n={}),"string"==typeof i)switch(i){case"unmaskedvalue":return r&&r.inputmask?r.inputmask.unmaskedvalue():e(r).val();case"remove":return this.each(function(){this.inputmask&&this.inputmask.remove()});case"getemptymask":return r&&r.inputmask?r.inputmask.getemptymask():"";case"hasMaskedValue":return!(!r||!r.inputmask)&&r.inputmask.hasMaskedValue();case"isComplete":return!r||!r.inputmask||r.inputmask.isComplete();case"getmetadata":return r&&r.inputmask?r.inputmask.getmetadata():void 0;case"setvalue":e(r).val(n),r&&void 0===r.inputmask&&e(r).triggerHandler("setvalue");break;case"option":if("string"!=typeof n)return this.each(function(){if(void 0!==this.inputmask)return this.inputmask.option(n)});if(r&&void 0!==r.inputmask)return r.inputmask.option(n);break;default:return n.alias=i,a=new t(n),this.each(function(){a.mask(this)})}else{if("object"==(void 0===i?"undefined":o(i)))return a=new t(i),void 0===i.mask&&void 0===i.alias?this.each(function(){if(void 0!==this.inputmask)return this.inputmask.option(i);a.mask(this)}):this.each(function(){a.mask(this)});if(void 0===i)return this.each(function(){(a=new t(n)).mask(this)})}}),e.fn.inputmask})?n.apply(t,a):n)&&(e.exports=r)}]); 9980/* End */ 9981;; /* /bitrix/templates/aspro-premier/js/observer.js?17745963267026*/ 9982; /* /bitrix/templates/aspro-premier/js/lite.bootstrap.js?177459632619575*/ 9983; /* /bitrix/templates/aspro-premier/vendor/jquery.cookie.js?17745963252426*/ 9984; /* /bitrix/templates/aspro-premier/vendor/jquery.validate.min.js?177459632522254*/ 9985; /* /bitrix/templates/aspro-premier/vendor/js/ripple.js?17745963254702*/ 9986; /* /bitrix/templates/aspro-premier/js/detectmobilebrowser.js?17745963262203*/ 9987; /* /bitrix/templates/aspro-premier/js/matchMedia.js?17745963261585*/ 9988; /* /bitrix/templates/aspro-premier/js/jquery.actual.min.js?17745963261239*/ 9989; /* /bitrix/templates/aspro-premier/js/jquery.plugin.min.js?17745963263356*/ 9990; /* /bitrix/templates/aspro-premier/js/jqModal.js?177459632611182*/ 9991; /* /bitrix/templates/aspro-premier/js/scrollTabs.js?177459632614271*/ 9992; /* /bitrix/templates/aspro-premier/js/conditional/file-input.js?17745963261272*/ 9993; /* /bitrix/templates/aspro-premier/js/autoload/accordion.js?1774596326853*/ 9994; /* /bitrix/templates/aspro-premier/js/autoload/controls.js?17745963263659*/ 9995; /* /bitrix/templates/aspro-premier/js/autoload/counter.js?17787654376516*/ 9996; /* /bitrix/templates/aspro-premier/js/autoload/dropdown-product.js?17745963261447*/ 9997; /* /bitrix/templates/aspro-premier/js/autoload/section-toggle.js?17745963261832*/ 9998; /* /bitrix/templates/aspro-premier/js/autoload/tabs-history.js?17745963261664*/ 9999; /* /bitrix/templates/aspro-premier/js/general.js?1778765438133855*/ 10000; /* /bitrix/templates/aspro-premier/js/mobile.js?177459632629822*/ 10001; /* /bitrix/templates/aspro-premier/js/custom.js?1774596326100*/ 10002; /* /bitrix/templates/aspro-premier/js/metrika.goals.min.js?17745963267001*/ 10003; /* /bitrix/templates/aspro-premier/js/logo.min.js?17745963263052*/ 10004; /* /bitrix/templates/aspro-premier/js/item-action.min.js?177876543729303*/ 10005; /* /bitrix/templates/aspro-premier/js/notice.min.js?177876543716454*/ 10006; /* /bitrix/templates/aspro-premier/js/scroll_to_top.min.js?17745963262367*/ 10007; /* /bitrix/templates/aspro-premier/js/regions.define.min.js?17745963262818*/ 10008; /* /bitrix/templates/aspro-premier/components/bitrix/menu/header/script.js?17745963253972*/ 10009; /* /bitrix/templates/aspro-premier/js/conditional/collaps.js?1774596326590*/ 10010;
10010 /* /bitrix/components/aspro/theme.selector.premier/templates/.default/script.js?17745962967768*/ 10011; /* /bitrix/components/bitrix/search.title/script.js?177459629710542*/ 10012; /* /bitrix/templates/aspro-premier/js/conditional/search_title/search-title.js?177459632613727*/ 10013; /* /bitrix/templates/aspro-premier/js/conditional/search_title/search-title-handlers.desktop.js?17745963264365*/ 10014; /* /bitrix/components/aspro/search.title.options/templates/.default/script.js?177459629612085*/ 10015; /* /bitrix/components/aspro/search.title.options.voice/assets/voice.min.js?17745962961491*/ 10016; /* /bitrix/components/aspro/smartsearch.input/script.js?17745962962718*/ 10017; /* /bitrix/templates/aspro-premier/js/dragscroll.min.js?17745963265337*/ 10018; /* /bitrix/components/aspro/com.banners.premier/templates/.default/script.js?17745962964640*/ 10019; /* /bitrix/templates/aspro-premier/js/slider.swiper.min.js?17745963261707*/ 10020; /* /bitrix/templates/aspro-premier/vendor/js/carousel/swiper/swiper-bundle.min.js?1774596325158093*/ 10021; /* /bitrix/templates/aspro-premier/components/bitrix/catalog.section/catalog_block/script.js?17745963252623*/ 10022; /* /bitrix/templates/aspro-premier/js/conditional/prices.min.js?1774596326420*/ 10023; /* /bitrix/templates/aspro-premier/js/conditional/pagination.js?1774596326873*/ 10024; /* /bitrix/templates/aspro-premier/js/conditional/input_numeric.js?17745963261261*/ 10025; /* /bitrix/templates/aspro-premier/js/select_offer_load.min.js?1774596326230*/ 10026; /* /bitrix/templates/aspro-premier/js/conditional/hint.min.js?1774596326515*/ 10027; /* /bitrix/templates/aspro-premier/js/index-tabs.min.js?17745963262381*/ 10028; /* /bitrix/templates/aspro-premier/components/bitrix/menu/bottom/script.js?1774596325470*/ 10029; /* /bitrix/templates/aspro-premier/js/jquery.inputmask.bundle.min.js?177459632670933*/ 10030 10031//# sourceMappingURL=template_b8a5809145465c652c2be83ca65fec55.map.js
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.