griffincss-ui 0.26.1 → 0.26.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/griffinjs.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! GriffinJS | MIT | https://gitverse.ru/BarneyScott/GriffinCSS */
2
- (()=>{"use strict";var e=(()=>{var e={},t={},r={},n=[],o=[],i=!1;function a(e,t){return t&&(r[e]=t),r[e]||[]}function l(e,t,r,n,o){if("function"==typeof n&&(o=n,n=null),"string"!=typeof r||!r)throw new Error("GriffinJS: "+t+" без имени");if("function"!=typeof o)throw new Error("GriffinJS: "+t+" «"+r+"» — не функция");if(e[r])throw new Error("GriffinJS: "+t+" «"+r+"» уже зарегистрирован");return n&&n.needs&&a(r,n.needs),e[r]=o,o}function u(e){"undefined"!=typeof console&&console.warn&&console.warn("GriffinJS: "+e)}function s(e,t){for(var r=0;r<o.length;r++)if(o[r].el===e&&o[r].name===t)return o[r];return null}function f(e,r,n){if(!e||!t[r])return u("виджет «"+r+"» не зарегистрирован"),null;var i=s(e,r);if(i)return i.instance;void 0===n&&(n=v.options?v.options.read(e,r):{});var a={el:e,name:r,instance:null};o.push(a);try{a.instance=t[r](e,n,v)||{}}catch(e){return o.splice(o.indexOf(a),1),u("виджет «"+r+"» не поднялся: "+(e&&e.message)),null}return a.instance}function c(e,t){for(var r=o.length-1;r>=0;r--){var n=o[r];n.el===e&&(t&&n.name!==t||(o.splice(r,1),n.instance&&"function"==typeof n.instance.destroy&&n.instance.destroy()))}}function d(e){for(var r in e=e||document,t)if(Object.prototype.hasOwnProperty.call(t,r)){var o="[data-gr-"+r+"]",i=[];"function"==typeof e.matches&&e.matches(o)&&i.push(e);for(var a=e.querySelectorAll?e.querySelectorAll(o):[],l=0;l<a.length;l++)i.push(a[l]);for(var u=0;u<i.length;u++)f(i[u],r)}for(var s=0;s<n.length;s++)"function"==typeof n[s].init&&n[s].init(e);return v}function p(e){for(var t=e;t;){if(t===document||t===document.documentElement)return!0;t=t.parentNode}return!1}function g(){if(i)return v;i=!0,(()=>{for(var n=Object.keys(r),o=0;o<n.length;o++)for(var i=r[n[o]],a=0;a<i.length;a++){var l=i[a];v[l]||t[l]||e[l]||u("«"+n[o]+"» не работает без griffinjs-"+l+".js")}})();for(var o=0;o<n.length;o++)"function"==typeof n[o].start&&n[o].start(v);return d(document),v}var v={version:"0.26.1",config:{},engines:e,widgets:t,defineEngine:(t,r,n)=>l(e,"движок",t,r,n),defineWidget:(e,r,n)=>l(t,"виджет",e,r,n),needs:a,use:e=>(n.push(e),i&&"function"==typeof e.start&&e.start(v),v),mount:f,unmount:c,instance:(e,t)=>{var r=s(e,t);return r?r.instance:null},init:d,start:g,destroy:()=>{if(!i)return v;for(i=!1;o.length;)c(o[o.length-1].el);for(var e=n.length-1;e>=0;e--)"function"==typeof n[e].destroy&&n[e].destroy(v);return v},warn:u,recorder:()=>{var e=[];return{set:(t,r,n)=>{var o=t.getAttribute(r);if(o!==n){for(var i=!1,a=0;a<e.length;a++)if(e[a].el===t&&e[a].attr===r){i=!0;break}i||e.push({el:t,attr:r,before:o}),null===n?t.removeAttribute(r):t.setAttribute(r,n)}},restore:()=>{for(var t=e.length-1;t>=0;t--){var r=e[t];null===r.before?r.el.removeAttribute(r.attr):r.el.setAttribute(r.attr,r.before)}e=[]}}},listeners:()=>{var e=[];return{add:(t,r,n,o)=>{t.addEventListener(r,n,o),e.push([t,r,n,o])},removeAll:()=>{for(var t=0;t<e.length;t++)e[t][0].removeEventListener(e[t][1],e[t][2],e[t][3]);e=[]}}},merge:(e,t)=>{var r,n={};for(r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);for(r in t||{})Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n},_mounted:()=>o.slice(),_prune:()=>{for(var e=o.length-1;e>=0;e--){var t=o[e].el;("boolean"==typeof t.isConnected?!t.isConnected:!p(t))&&c(t,o[e].name)}},_started:()=>i,_autoStart:()=>{var e=null;try{e=document.currentScript}catch(e){}if(!e||"false"!==e.getAttribute("data-auto")){var t=!!e&&e.hasAttribute("defer")&&!e.hasAttribute("async");if("loading"===document.readyState||t&&"complete"!==document.readyState){var r=()=>{document.removeEventListener("DOMContentLoaded",r),document.removeEventListener("readystatechange",r),g()};return document.addEventListener("DOMContentLoaded",r),void(t&&document.addEventListener("readystatechange",r))}Promise.resolve().then(g)}}};return v})();"object"==typeof module&&module.exports&&(module.exports=e),"undefined"!=typeof window&&"undefined"!=typeof document&&(window.GriffinJS=e,e._autoStart())})(),(e=>{"use strict";function t(e){return""===e||"true"===e||"false"!==e&&("null"===e?null:/^-?\d+(\.\d+)?$/.test(e)?Number(e):e)}function r(e){return e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function n(n){var o={};if("string"!=typeof n)return o;if(!(n=n.trim()))return o;if("{"===n.charAt(0))try{return JSON.parse(n)}catch(t){return e.warn("параметры не разобраны как JSON: "+n),o}for(var i=n.split(";"),a=0;a<i.length;a++){var l=i[a].trim();if(l){var u=l.indexOf(":"),s=-1===u?l:l.slice(0,u),f=-1===u?"":l.slice(u+1);o[r(s.trim())]=t(f.trim())}}return o}e.options={parse:n,read:(e,t,r)=>{var o,i={};for(o in r||{})Object.prototype.hasOwnProperty.call(r,o)&&(i[o]=r[o]);var a=n(e&&e.getAttribute?e.getAttribute("data-gr-"+t):null);for(o in a)Object.prototype.hasOwnProperty.call(a,o)&&(i[o]=a[o]);return i}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={},r=!1;function n(e,t){if(!e)return null;if("function"==typeof e.closest)return e.closest(t);for(var r=e;r;){if("function"==typeof r.matches&&r.matches(t))return r;r=r.parentNode}return null}function o(e){for(var r=t[e.type]||[],o=0;o<r.length;o++){var i=n(e.target,r[o].selector);if(i&&!0===r[o].handler(e,i))return}}function i(e){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&document[e](r,o)}e.on=(n,i,a)=>(t[n]||(t[n]=[],r&&document.addEventListener(n,o)),t[n].push({selector:i,handler:a}),e),e.off=(r,n,o)=>{for(var i=t[r]||[],a=i.length-1;a>=0;a--)i[a].selector!==n||o&&i[a].handler!==o||i.splice(a,1);return e},e.emit=(e,t,r)=>{try{(t&&"function"==typeof t.dispatchEvent?t:document).dispatchEvent(new CustomEvent(e,{detail:r,bubbles:!0}))}catch(e){}},e.closest=n,e.use({start:()=>{r=!0,i("addEventListener")},destroy:()=>{r=!1,i("removeEventListener")}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=null,r=null,n=[];function o(){r=null;var t=n;n=[],e._prune();for(var o=0;o<t.length;o++)e.init(t[o])}function i(e){for(var t=!1,i=0;i<e.length;i++){for(var a=e[i].addedNodes,l=0;l<a.length;l++)1===a[l].nodeType&&(n.push(a[l]),t=!0);e[i].removedNodes.length&&(t=!0)}t&&!r&&(r=setTimeout(o,0))}function a(){t||"undefined"==typeof MutationObserver||(t=new MutationObserver(i)).observe(document.documentElement,{childList:!0,subtree:!0})}function l(){r&&(clearTimeout(r),r=null),n=[],t&&(t.disconnect(),t=null)}e.scanner={start:a,stop:l,_flush:o},e.use({start:a,destroy:l})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";e.defineEngine("scroll",(t,r,n)=>{var o=!(!n||!n.loop),i=[],a=[],l=0,u=[],s=null,f=null,c=!1,d=null,p=!1,g=null,v=0,h=e.listeners(),m=h.add,y="undefined"!=typeof window&&"onscrollend"in window;function w(){return t.count}function b(e){return l+e}function A(e){var t=e.cloneNode(!0);return t.setAttribute("data-gr-clone",""),t.setAttribute("aria-hidden","true"),t.setAttribute("inert",""),t.removeAttribute("aria-current"),t.removeAttribute("id"),t}function x(){for(var e=0;e<u.length;e++)u[e].remove();u=[],l=0}function S(){var e=r.children,t=r.scrollLeft,n=r.getBoundingClientRect().left;i=[],a=[];for(var o=0;o<e.length;o++){var l=e[o].getBoundingClientRect();i.push(t+l.left-n),a.push(l.width)}}function E(){for(var e=0,t=r.clientWidth,n=b(0),o=n;o<i.length;o++){var l=Math.abs(i[o]-i[n])+a[o];if(!(a[o]>0&&l<=t+1))break;e+=1}return Math.max(1,e)}function C(){var e=r.scrollLeft,t=i.length;if(t<2)return 0;for(var n=0;n<t-1;n++){var o=i[n],a=i[n+1],u=Math.min(o,a),s=Math.max(o,a);if(e>=u&&e<=s&&s!==u)return n+(e-o)/(a-o)-l}return(Math.abs(e-i[0])<=Math.abs(e-i[t-1])?0:t-1)-l}function k(e,t){var n=i[e];"number"==typeof n&&("function"==typeof r.scrollTo?r.scrollTo({left:n,behavior:t?"auto":"smooth"}):r.scrollLeft=n,p=!t&&Math.abs(r.scrollLeft-n)>=1,g=p?n:null,v=0)}function T(e){if(!o)return b(e);for(var t=C()+l,r=w(),n=b(e),a=[b(e)-r,b(e),b(e)+r],u=0;u<a.length;u++){var s=a[u];s<0||s>=i.length||Math.abs(s-t)<Math.abs(n-t)&&(n=s)}return n}function M(){if(f=null,p&&null!==g&&Math.abs(r.scrollLeft-g)>=1&&v<5)return v+=1,void(f=setTimeout(M,120));p=!1,g=null,c=!1;var e=Math.round(C()),n=w();if(o&&n&&(e<0||e>=n)&&k(b(e=(e%n+n)%n),!0),d){var i=d;return d=null,void k(T(i.physical),i.instant)}t._settle(e)}return m(r,"scroll",()=>{if(null===s){var e=()=>{s=null,t._report(C())};"function"==typeof requestAnimationFrame?s=requestAnimationFrame(e):e()}y||(f&&clearTimeout(f),f=setTimeout(M,120))},{passive:!0}),y&&m(r,"scrollend",()=>{f&&(clearTimeout(f),f=null),M()}),m(r,"touchstart",()=>{c=!0},{passive:!0}),{loop:o,live:!0,goTo:(e,t)=>c?(d={physical:e,instant:t},!0):!(p&&!t||(k(T(e),t),0)),layout:()=>{S();var e=o?Math.min(E(),w()):0;(e!==l||o&&u.length!==2*e)&&((e=>{var n=t.slides,i=n.length;if(x(),o&&!(i<2)){for(var a=Math.min(e,i),s=i-a;s<i;s++){var f=A(n[s]);r.insertBefore(f,n[0]),u.push(f)}for(var c=0;c<a;c++){var d=A(n[c]);r.appendChild(d),u.push(d)}l=a}})(e),S())},visible:()=>{for(var e=r.scrollLeft,n=e+r.clientWidth,u=w(),s=[],f=0;f<i.length;f++){var c=Math.min(i[f],i[f]+a[f]),d=Math.max(i[f],i[f]+a[f]),p=Math.min(d,n)-Math.max(c,e);if(a[f]>0&&p>=a[f]/2){var g=f-l;o&&u&&(g=(g%u+u)%u),g>=0&&g<u&&-1===s.indexOf(g)&&s.push(g)}}return s.length?s:[t.physical(Math.round(C()))]},perView:E,position:C,moving:()=>p,queued:()=>!!d,destroy:()=>{h.removeAll(),x(),f&&clearTimeout(f),null!==s&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(s)},_offsets:()=>i.slice(),_clones:()=>u.slice()}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";e.defineEngine("fade",{needs:["gesture"]},(t,r)=>{var n=e.recorder(),o=null;function i(){return t.physical(t.index)}return"function"==typeof e.gesture&&(o=e.gesture(r,{onStart:()=>{n.set(r,"data-gr-state","dragging")},onMove:e=>{var r=t.count,n=i()-e.progress;t.loop||(n=Math.max(0,Math.min(r-1,n))),t._report(n)},onEnd:e=>{n.set(r,"data-gr-state","ready"),e.swipe<0&&t.next()||e.swipe>0&&t.prev()||t._report(i())},onCancel:()=>{n.set(r,"data-gr-state","ready"),t._report(i())}})),n.set(r,"data-gr-state","ready"),{loop:!0,goTo:e=>{t._report(e),t._settle(e)},layout:()=>{},visible:()=>[i()],perView:()=>1,destroy:()=>{o&&o.destroy(),n.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t=["mask","phone","datetime","number","file","rating","otp","counter","validate"],r=e.config,n="",o=null,i={};try{var a=document.currentScript;if(a){n=a.nonce||"";var l=a.getAttribute("data-fields");l&&(r.fields={src:l,countries:a.getAttribute("data-countries")||""})}}catch(e){}function u(){if(!o){o="pending";var t,n=[r.fields.src],i=!0;r.fields.countries&&n.push(r.fields.countries),t=n.length;for(var a=0;a<n.length;a++)s(n[a],l)}function l(r){"error"===r.type&&(i=!1,e.warn("бандл полей не загружен: "+r.target.src+" — поля остались базой без скрипта")),--t||(o=i?"done":"failed",e.init(document),i&&e.emit("griffinjs:fields-loaded",document,{files:n}))}}function s(e,t){var r=document.createElement("script");r.src=e,r.async=!1,n&&(r.nonce=n),r.addEventListener("load",t),r.addEventListener("error",t),(document.head||document.documentElement).appendChild(r)}e.loader={_fields:()=>t.slice(),_nonce:e=>(void 0!==e&&(n=e),n)},e.use({init:n=>{for(var o=0;o<t.length;o++){var a=t[o],l="[data-gr-"+a+"]";if(!e.widgets[a]&&!i[a]&&(n.matches&&n.matches(l)||n.querySelector&&n.querySelector(l))){if(r.fields&&r.fields.src)return u();i[a]=!0,e.warn("поле «"+a+"» не собрано: подключите griffinjs-fields.js или задайте GriffinJS.config.fields")}}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=["top","left","right","bottom"];function r(e,t){return"left"===e?t?"end":"start":"right"===e?t?"start":"end":e}var n={top:"bottom",bottom:"top",left:"right",right:"left"};function o(e,t,r,n){return"bottom"===e?n.h-t.bottom:"top"===e?t.top:"right"===e?n.w-t.right:t.left}e.anchor={place:(e,t,i)=>{var a,l,u,s=(i=i||{}).gap||0,f=i.margin||0,c=i.align||"start",d=(e=>{try{return"rtl"===getComputedStyle(e).direction||"rtl"===document.documentElement.getAttribute("dir")}catch(e){return"rtl"===document.documentElement.getAttribute("dir")}})(t),p=((e,t)=>"start"===e?t?"right":"left":"end"===e?t?"left":"right":e)(i.side||"bottom",d),g=t.getBoundingClientRect(),v=e.getBoundingClientRect(),h={w:(a=document.documentElement).clientWidth||("number"==typeof innerWidth?innerWidth:0),h:a.clientHeight||("number"==typeof innerHeight?innerHeight:0)},m="top"===p||"bottom"===p,y=(m?v.height:v.width)+s;if(o(p,g,0,h)<y&&o(n[p],g,0,h)>=y&&(p=n[p]),m){l="bottom"===p?g.bottom+s:g.top-s-v.height;var w=d?"end"===c:"start"===c;u="center"===c?g.left+(g.width-v.width)/2:w?g.left:g.right-v.width}else u="right"===p?g.right+s:g.left-s-v.width,l=g.top+(g.height-v.height)/2;return h.w&&(u=Math.min(Math.max(u,f),Math.max(f,h.w-f-v.width))),h.h&&(l=Math.min(Math.max(l,f),Math.max(f,h.h-f-v.height))),e.style.setProperty("top",Math.round(l)+"px"),e.style.setProperty("left",Math.round(u)+"px"),e.style.setProperty("right","auto"),e.style.setProperty("bottom","auto"),{side:r(p,d),top:l,left:u}},clear:e=>{if(e&&e.style)for(var r=0;r<t.length;r++)e.style.removeProperty(t[r])}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=null;function r(e){if(t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];t||(t={});var r=null;try{r=getComputedStyle(document.documentElement).getPropertyValue("--gr-bp-"+e).trim()||null}catch(e){}return t[e]=r,r}function n(e){var t=r(e);return t?"(width >= "+t+")":null}function o(){t=null}e.media={value:r,query:n,matches:e=>{var t=n(e);return!(!t||"function"!=typeof matchMedia)&&matchMedia(t).matches},on:(e,t)=>{var r=n(e);if(!r||"function"!=typeof matchMedia)return t(!1),()=>{};var o=matchMedia(r),i=e=>{t(e.matches)};return t(o.matches),"function"==typeof o.addEventListener?o.addEventListener("change",i):o.addListener(i),()=>{"function"==typeof o.removeEventListener?o.removeEventListener("change",i):o.removeListener(i)}},reset:o},e.use({start:o})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t="--gr-progress";function r(e,t,r){return e<t?t:e>r?r:e}function n(e,n){e&&e.style&&e.style.setProperty(t,String(Math.round(1e3*r(n,0,1))/1e3))}function o(e){e&&e.style&&e.style.removeProperty(t)}function i(e,t){var n=t+e.height;return n<=0?0:r((t-e.top)/n,0,1)}e.motion={PROP:t,set:n,clear:o,clamp:r,time:e=>{var t=e.duration||1e3,r=!!e.loop,o=e.now||("undefined"!=typeof performance&&performance.now?()=>performance.now():Date.now),i=e.schedule||("function"==typeof requestAnimationFrame?e=>requestAnimationFrame(e):e=>setTimeout(e,16)),a=e.cancel||("function"==typeof cancelAnimationFrame?e=>{cancelAnimationFrame(e)}:e=>{clearTimeout(e)}),l=0,u=0,s=null,f=!1;function c(t){e.el&&n(e.el,t),e.onProgress&&e.onProgress(t)}function d(){if(s=null,f){var n=(u+(o()-l))/t;if(n>=1)return c(1),e.onEnd&&e.onEnd(),void(r&&f?(u=0,l=o(),c(0),s=i(d)):f=!1);c(n),s=i(d)}}function p(){return f||(f=!0,l=o(),s=i(d)),h}function g(){return f?(f=!1,u+=o()-l,null!==s&&(a(s),s=null),h):h}function v(){return g(),u=0,c(0),h}var h={start:p,pause:g,resume:p,stop:v,restart:()=>(v(),p()),running:()=>f};return h},viewport:(e,t)=>{t=t||{};var r=!1,a=null,l=null;function u(){a=null;var r="undefined"!=typeof window?window.innerHeight:0,o=i(e.getBoundingClientRect(),r);n(e,o),t.onProgress&&t.onProgress(o)}function s(){null===a&&"function"==typeof requestAnimationFrame?a=requestAnimationFrame(u):null===a&&u()}function f(e){if(e!==r){r=e;var t=e?"addEventListener":"removeEventListener";document[t]("scroll",s,{capture:!0,passive:!0}),window[t]("resize",s),e&&s()}}return"function"==typeof IntersectionObserver?(l=new IntersectionObserver(e=>{f(e[e.length-1].isIntersecting)})).observe(e):f(!0),{update:s,destroy:()=>{f(!1),l&&l.disconnect(),null!==a&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(a),o(e)}}},viewportProgress:i}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={axis:"x",threshold:8,velocity:.4,distance:.35,pointers:null,onStart:null,onMove:null,onEnd:null,onCancel:null};e.gesture=(r,n)=>{var o=e.merge(t,n),i="y"!==o.axis,a=null,l=[];function u(){var e=r.getBoundingClientRect?r.getBoundingClientRect():null;return(e?i?e.width:e.height:0)||1}function s(e){return"number"==typeof e.timeStamp?e.timeStamp:Date.now()}function f(e){if(!a&&(e=>!o.pointers||-1!==o.pointers.indexOf(e.pointerType))(e)&&("number"!=typeof e.button||0===e.button)&&(a={id:e.pointerId,pointerType:e.pointerType,startX:e.clientX,startY:e.clientY,dx:0,dy:0,progress:0,active:!1,locked:!1,swipe:0},l=[[s(e),i?e.clientX:e.clientY]],r.setPointerCapture))try{r.setPointerCapture(e.pointerId)}catch(e){}}function c(e){if(a&&e.pointerId===a.id&&!a.locked){a.dx=e.clientX-a.startX,a.dy=e.clientY-a.startY;var t=i?a.dx:a.dy,r=i?a.dy:a.dx;if(!a.active){if(Math.abs(t)<o.threshold&&Math.abs(r)<o.threshold)return;if(Math.abs(r)>Math.abs(t))return void(a.locked=!0);a.active=!0,o.onStart&&o.onStart(a)}l.push([s(e),i?e.clientX:e.clientY]),l.length>5&&l.shift(),a.progress=t/u(),e.cancelable&&e.preventDefault&&e.preventDefault(),o.onMove&&o.onMove(a)}}function d(e){if(a&&e.pointerId===a.id){var t=a,r=i?t.dx:t.dy,n=(()=>{if(l.length<2)return 0;var e=l[0],t=l[l.length-1],r=t[0]-e[0];return r>0?(t[1]-e[1])/r:0})();if(a=null,t.active){var s=Math.abs(r)/u()>=o.distance,f=Math.abs(n)>=o.velocity&&n>0==r>0;t.swipe=s||f?r>0?1:-1:0,t.velocity=n,o.onEnd&&o.onEnd(t)}else t.locked&&o.onCancel&&o.onCancel(t)}}function p(e){if(a&&e.pointerId===a.id){var t=a;a=null,o.onCancel&&o.onCancel(t)}}return r.addEventListener("pointerdown",f),r.addEventListener("pointermove",c),r.addEventListener("pointerup",d),r.addEventListener("pointercancel",p),{destroy:()=>{r.removeEventListener("pointerdown",f),r.removeEventListener("pointermove",c),r.removeEventListener("pointerup",d),r.removeEventListener("pointercancel",p),a=null},_state:()=>a}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t="griffin:change",r="griffin:layout",n={engine:"scroll",loop:!1,rewind:!1,step:1,index:0,keyboard:!0,inert:!0,label:"Слайд {i} из {n}"};function o(e,t){return(e%t+t)%t}function i(i,a){var l=e.merge(n,a),u=[],s=0,f=1,c=null,d=!1,p=!!l.rewind,g=e.recorder(),v=e.listeners(),h=[],m=null,y=!1,w=!1,b=g.set;function A(){for(var e=l.slides?i.querySelectorAll(l.slides):i.children,t=[],r=0;r<e.length;r++)void 0!==e[r].nodeType&&1!==e[r].nodeType||e[r].hasAttribute&&e[r].hasAttribute("data-gr-clone")||t.push(e[r]);return t}function x(){return u.length}function S(){return Math.max(0,x()-f)}function E(e){var t=x();if(0===t)return 0;if(d)return o(e,t);var r=S();return e<0?0:e>r?r:e}function C(){if("page"===l.step)return Math.max(1,f);var e=Number(l.step);return e>=1?Math.floor(e):1}function k(){var e=x();return 0===e?0:d?Math.ceil(e/C()):Math.ceil(S()/C())+1}function T(e){var t=e*C();return d?t:Math.min(t,S())}function M(e){var t=E(e),r=k();return!d&&t>=S()?r-1:Math.min(r-1,Math.round(t/C()))}function O(e){var t=x();if(!d||0===t)return e;var r=o(e-E(s),t);return r>t/2&&(r-=t),s+r}function j(e){return l.label.replace("{i}",e+1).replace("{n}",x())}function q(){for(var e=0;e<u.length;e++){var t=u[e];t.getAttribute("role")||b(t,"role","group"),t.getAttribute("aria-roledescription")||b(t,"aria-roledescription","slide"),t.getAttribute("aria-label")||t.getAttribute("aria-labelledby")||b(t,"aria-label",j(e))}}function L(){for(var e=E(s),t=c&&"function"==typeof c.visible?c.visible():[e],r=0;r<u.length;r++)b(u[r],"aria-current",r===e?"true":null),l.inert&&b(u[r],"inert",-1===t.indexOf(r)?"":null)}function P(r,n){var o=s;s=r,L(),n&&n.silent||(r=>{var n={index:s,physical:E(s),previous:r,track:H};"function"==typeof e.emit?e.emit(t,i,n):"function"==typeof i.dispatchEvent&&"function"==typeof CustomEvent&&i.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0}))})(o)}function G(){return!d&&C()>1}function J(e,t){if(w||0===x())return!1;if(!d&&(e<0||e>S()))return!1;var r=d?e:E(e);return G()&&(r=T(M(r))),!(c&&!1===c.goTo(E(r),!(!t||!t.instant))||(r===s||P(r,t),0))}function D(e){if(d)return J(s+C(),e);var t=M(s);return t<k()-1?J(T(t+1),e):!!p&&J(0,e)}function N(e){if(d)return J(s-C(),e);var t=M(s);return t>0?J(T(t-1),e):!!p&&J(T(k()-1),e)}function R(){try{return"rtl"===getComputedStyle(i).direction}catch(e){return"rtl"===(i.getAttribute("dir")||document.documentElement&&document.documentElement.getAttribute("dir"))}}function _(){var t=f+":"+x();c&&(c.layout(),f="function"==typeof c.perView?Math.max(1,c.perView()):1),d||(s=E(s)),(()=>{for(var e=C(),t=x(),r=S(),n=e>1&&!d,o=0;o<t;o++){var i=u[o].style;i&&(n?i.setProperty("--gr-snap",o===t-1?"end":o%e===0&&(o<r||!o)?"start":"none"):i.removeProperty("--gr-snap"))}})(),c&&c.goTo(E(s),!0),t!==f+":"+x()&&"function"==typeof e.emit&&e.emit(r,i,{perView:f,count:x(),pages:k(),track:H})}function B(){return w||(u=A(),q(),_(),L()),H}var H={el:i,goTo:J,goToPage:(e,t)=>J(T(Math.max(0,Math.min(e,k()-1))),t),next:D,prev:N,physical:E,pageOf:M,pageStart:T,sync:e=>{function r(t){if(!y&&t.detail&&t.detail.track===H){y=!0;try{e.index!==t.detail.index&&e.goTo(t.detail.index)}finally{y=!1}}}function n(t){if(!y&&t.detail&&t.detail.track===e){y=!0;try{s!==t.detail.index&&J(t.detail.index)}finally{y=!1}}}return v.add(i,t,r),v.add(e.el,t,n),()=>{i.removeEventListener(t,r),e.el.removeEventListener(t,n)}},refresh:B,destroy:()=>{if(!w){w=!0,c&&"function"==typeof c.destroy&&c.destroy(),c=null,v.removeAll();for(var t=0;t<h.length;t++)h[t].disconnect();h=[];for(var r=0;r<u.length;r++)e.motion&&e.motion.clear(u[r]),u[r].style&&u[r].style.removeProperty("--gr-snap");e.motion&&e.motion.clear(i),g.restore()}},_report:t=>{var r=x();if(e.motion){for(var n=0;n<r;n++){var a=Math.abs(t-n);d&&r&&(a=Math.min(a,r-a)),e.motion.set(u[n],a>=1?0:1-a)}e.motion.set(i,r>1?t/(r-1):1)}(e=>{var t=x();if(t&&c&&c.live&&!("function"==typeof c.moving&&c.moving()||"function"==typeof c.queued&&c.queued())){var r=O(d?o(Math.round(e),t):G()?(e=>{for(var t=0,r=k(),n=0;n<r;n++)Math.abs(e-T(n))<Math.abs(e-T(t))&&(t=n);return T(t)})(e):E(Math.round(e)));r!==s&&P(r)}})(t)},_settle:e=>{if(!w){var t=O(e);t!==s?P(t):L()}},_engine:()=>c};Object.defineProperty(H,"index",{get:()=>s}),Object.defineProperty(H,"count",{get:x}),Object.defineProperty(H,"perView",{get:()=>f}),Object.defineProperty(H,"last",{get:S}),Object.defineProperty(H,"pages",{get:k}),Object.defineProperty(H,"step",{get:C}),Object.defineProperty(H,"slides",{get:()=>u.slice()}),Object.defineProperty(H,"loop",{get:()=>!!d}),Object.defineProperty(H,"moving",{get:()=>!(!c||"function"!=typeof c.moving||!c.moving())}),Object.defineProperty(H,"rewind",{get:()=>p}),u=A(),s=l.index||0;var F=e.engines[l.engine];return F?c=F(H,i,l)||null:e.warn("движок «"+l.engine+"» не зарегистрирован — дорожка без движения"),d=!!(l.loop&&c&&c.loop),l.loop&&!d&&(p=!0),q(),_(),L(),l.keyboard&&v.add(i,"keydown",e=>{var t=e.key,r=R()?"ArrowRight":"ArrowLeft",n=!1;t===(R()?"ArrowLeft":"ArrowRight")?n=D():t===r?n=N():"Home"===t?n=J(d?s-E(s):0):"End"===t&&(n=J(d?s-E(s)+x()-1:S())),n&&e.preventDefault&&e.preventDefault()}),(()=>{if("function"==typeof MutationObserver&&((m=new MutationObserver(()=>{B()})).observe(i,{childList:!0}),h.push(m)),"function"==typeof ResizeObserver){var e=new ResizeObserver(()=>{_(),L()});e.observe(i),h.push(e)}})(),H}e.track=i,e.track.CHANGE=t,e.track.LAYOUT=r,e.defineWidget("track",{needs:["motion"]},(e,t)=>i(e,t))})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={autoplay:0,loop:!1,rewind:!1,step:1,pauseOnHover:!0,dots:!0,engine:"scroll",dotLabel:"Страница {i}",pauseLabel:"Пауза"};e.defineWidget("slider",{needs:["track","motion"]},(r,n)=>{var o=e.merge(t,n),i=r.querySelector(".gr-track")||r.firstElementChild;if(!i)throw new Error("у слайдера нет дорожки");var a=e.track(i,{loop:o.loop,rewind:o.rewind,step:o.step,engine:o.engine,index:o.index||0}),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=[],d=[],p=r.querySelector("[data-gr-prev]"),g=r.querySelector("[data-gr-next]"),v=r.querySelector("[data-gr-dots]"),h=r.querySelector("[data-gr-pause]"),m=null,y=!1,w=0;function b(e,t){var r=document.createElement("button");return r.setAttribute("type","button"),r.setAttribute("class",e),r.setAttribute("aria-label",t),c.push(r),r}function A(){for(var e=a.pageOf(a.index),t=a.physical(a.index),r=0;r<d.length;r++)s(d[r],"aria-current",r===e?"true":null);a.loop||a.rewind||(p&&s(p,"aria-disabled",t<=0?"true":null),g&&s(g,"aria-disabled",t>=a.last?"true":null))}function x(){if(v&&o.dots){for(var e=0;e<d.length;e++)d[e].remove(),c.splice(c.indexOf(d[e]),1);d=[];for(var t=0;t<a.pages;t++){var r=b("gr-slider-dot",o.dotLabel.replace("{i}",t+1));r.setAttribute("data-gr-page",String(t)),v.appendChild(r),d.push(r)}}}function S(){return!!m&&m.running()}function E(){return!m||y||w>0||(m.start(),s(r,"data-gr-state","playing")),q}function C(){return m?(m.pause(),s(r,"data-gr-state","paused"),q):q}function k(){m&&S()&&m.restart()}function T(){w+=1,C()}function M(){w=Math.max(0,w-1),E()}function O(){return k(),a.next()}function j(){return k(),a.prev()}var q={el:r,track:a,goTo:(e,t)=>a.goTo(e,t),next:O,prev:j,play:E,pause:C,playing:S,destroy:()=>{m&&m.stop(),m=null,u.removeAll();for(var e=0;e<c.length;e++)c[e].remove();c=[],d=[],a.destroy(),l.restore()}};return r.getAttribute("role")||s(r,"role","region"),s(r,"aria-roledescription","carousel"),s(i,"aria-live",o.autoplay?"off":"polite"),s(r,"data-gr-state","ready"),x(),p&&f(p,"click",()=>{j()}),g&&f(g,"click",()=>{O()}),v&&f(v,"click",t=>{var r=e.closest(t.target,".gr-slider-dot");if(r&&v){var n=Number(r.getAttribute("data-gr-page"));isNaN(n)||(a.goToPage(n),k())}}),f(i,e.track.CHANGE,()=>{A()}),f(i,e.track.LAYOUT,()=>{x(),A()}),A(),!o.autoplay||(()=>{try{return"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}})()||a.count<2||(h||((h=b("gr-slider-pause",o.pauseLabel)).setAttribute("data-gr-pause",""),h.textContent="❚❚",r.appendChild(h)),s(h,"aria-pressed","false"),m=e.motion.time({duration:o.autoplay,loop:!0,el:h,onEnd:()=>{a.moving||a.next()||a.goTo(0)}}),f(h,"click",()=>{y=!y,h&&s(h,"aria-pressed",y?"true":"false"),y?C():E()}),o.pauseOnHover&&(f(r,"pointerenter",T),f(r,"pointerleave",M)),f(r,"focusin",T),f(r,"focusout",M),f(document,"visibilitychange",()=>{document.hidden?T():M()}),E()),q})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";function t(e,t){if("function"==typeof e.getBoundingClientRect&&"function"==typeof t.getBoundingClientRect){var r=e.getBoundingClientRect(),n=t.getBoundingClientRect(),o=e.scrollLeft||0,i=o;n.left<r.left?i=o-(r.left-n.left):n.right>r.right&&(i=o+(n.right-r.right)),i!==o&&("function"==typeof e.scrollTo?e.scrollTo({left:i,behavior:"smooth"}):e.scrollLeft=i)}}e.defineWidget("gallery",{needs:["track","slider"]},(r,n)=>{var o=r.querySelector(".gr-gallery-thumbs"),i=e.widgets.slider(r,n,e),a=i.track,l=[],u=e.recorder(),s=e.listeners(),f=u.set,c=s.add;function d(){for(var e=a.physical(a.index),r=0;r<l.length;r++){var n=r===e;f(l[r],"aria-current",n?"true":null),n&&t(o,l[r])}}if(o){for(var p=o.children,g=0;g<p.length;g++)l.push(p[g]),f(p[g],"aria-label",p[g].getAttribute("aria-label")||"Слайд "+(g+1));c(o,"click",e=>{for(var t=0;t<l.length;t++)if(l[t]===e.target||"function"==typeof l[t].contains&&l[t].contains(e.target))return void i.goTo(t)}),c(a.el,e.track.CHANGE,d),d()}return{el:r,slider:i,track:a,goTo:i.goTo,next:i.next,prev:i.prev,destroy:()=>{s.removeAll(),i.destroy(),u.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t="data-gr-lightbox",r=/\.(mp4|webm|ogv|mov)(\?|#|$)/i,n=/youtube\.com|youtu\.be|vimeo\.com/i,o=null,i=null,a=null,l=e.listeners(),u=l.add;function s(e,t){return e&&e.getAttribute&&e.getAttribute("data-gr-type")||(r.test(t)?"video":n.test(t)?"iframe":"image")}function f(e){var t=e.getAttribute("href")||e.getAttribute("data-gr-src")||"",r=e.querySelector?e.querySelector("img"):null;return{src:t,type:s(e,t),caption:e.getAttribute("data-gr-caption")||"",alt:e.getAttribute("data-gr-alt")||r&&r.getAttribute("alt")||""}}function c(e,t,r){var n=document.createElement(e);for(var o in t&&n.setAttribute("class",t),r||{})Object.prototype.hasOwnProperty.call(r,o)&&n.setAttribute(o,r[o]);return n}function d(e){return"video"===e.type?c("video",null,{src:e.src,controls:"",playsinline:""}):"iframe"===e.type?c("iframe",null,{src:e.src,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",title:e.caption||e.alt||"Видео"}):c("img",null,{src:e.src,alt:e.alt})}function p(e,t){return e+1+" / "+t}function g(t,r,n){m(),n=n||{},r=r||0;var a=t.length;if(0===a)return null;o=c("dialog","gr-modal gr-lightbox",{"aria-label":n.label||"Просмотр"});for(var l=c("div","gr-track gr-lightbox-track",{tabindex:"0"}),s=0;s<a;s++){var f=c("figure","gr-slide gr-lightbox-item");if(f.appendChild(d(t[s])),t[s].caption){var g=c("figcaption","gr-lightbox-caption");g.textContent=t[s].caption,f.appendChild(g)}l.appendChild(f)}o.appendChild(l);var v=c("button","gr-lightbox-close",{type:"button","aria-label":"Закрыть"});v.textContent="×",o.appendChild(v),u(v,"click",m);var w=null;if(a>1){var b=c("button","gr-lightbox-prev",{type:"button","aria-label":"Назад"}),A=c("button","gr-lightbox-next",{type:"button","aria-label":"Вперёд"});b.textContent="‹",A.textContent="›",(w=c("div","gr-lightbox-counter",{"aria-live":"polite"})).textContent=p(r,a),o.appendChild(b),o.appendChild(A),o.appendChild(w),u(b,"click",()=>{i&&i.prev()}),u(A,"click",()=>{i&&i.next()})}return u(o,"click",t=>{t.target!==o&&t.target!==l&&e.closest(t.target,".gr-lightbox-item")!==t.target||m()}),u(o,"keydown",e=>{i&&e.target!==l&&("ArrowRight"===e.key?(i.next(),e.preventDefault()):"ArrowLeft"===e.key&&(i.prev(),e.preventDefault()))}),u(o,"close",h),document.body.appendChild(o),a>1&&(i=e.track(l,{loop:!0,index:r}),u(l,e.track.CHANGE,e=>{w&&(w.textContent=p(e.detail.physical,a))})),"function"==typeof o.showModal?o.showModal():o.setAttribute("open",""),y}function v(e){a=e;for(var r=(e=>{var r=e.getAttribute(t);if(!r)return[e];for(var n=document.querySelectorAll("["+t+'="'+r+'"]'),o=[],i=0;i<n.length;i++)o.push(n[i]);return o})(e),n=[],o=0,i=0;i<r.length;i++)r[i]===e&&(o=i),n.push(f(r[i]));return g(n,o)}function h(){o&&((()=>{if(o){for(var e=o.querySelectorAll("video"),t=o.querySelectorAll("iframe"),r=0;r<e.length;r++)"function"==typeof e[r].pause&&e[r].pause();for(var n=0;n<t.length;n++)t[n].setAttribute("src","about:blank")}})(),i&&i.destroy(),i=null,l.removeAll(),o.remove(),o=null,a&&"function"==typeof a.focus&&a.focus(),a=null)}function m(){o&&("function"==typeof o.close&&o.hasAttribute("open")?o.close():h())}var y={open:g,openFrom:v,close:m,_dialog:()=>o,_track:()=>i};e.lightbox=y,e.needs("lightbox",["track"]),e.on("click","["+t+"]",(e,t)=>!(e.metaKey||e.ctrlKey||e.shiftKey||e.button||(e.preventDefault&&e.preventDefault(),v(t),0))),e.use({destroy:h})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";e.defineWidget("parallax",{needs:["motion"]},t=>{var r=e.motion.viewport(t);return{el:t,update:r.update,destroy:r.destroy}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={hover:!0,delay:120,hide:250,bp:"md"},r=0;function n(e){return!!e&&"SUMMARY"===e.tagName}function o(e){return!!e&&"DETAILS"===e.tagName}function i(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function a(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}function l(e){return!!e&&!e.hasAttribute("disabled")&&"-1"!==e.getAttribute("tabindex")&&"true"!==e.getAttribute("aria-hidden")}function u(e){return!(!e||"function"!=typeof e.focus)&&(e.focus(),document.activeElement===e)}e.defineWidget("megamenu",{needs:["media"]},(s,f)=>{var c=e.merge(t,f),d=e.recorder(),p=e.listeners(),g=d.set,v=p.add,h=[],m=!1,y=null,w=null,b=null,A=null,x=null;function S(e){for(var t=e;t&&t!==s;){for(var r=0;r<h.length;r++)if(h[r].el===t)return h[r];t=t.parentNode}return null}function E(){for(var e=0;e<h.length;e++)if(h[e].el.open)return h[e];return null}function C(t){t.panel.getAttribute("id")||g(t.panel,"id","gr-megamenu-"+ ++r),g(t.summary,"aria-controls",t.panel.getAttribute("id")),g(t.summary,"aria-expanded",t.el.open?"true":"false"),v(t.el,"toggle",()=>{(t=>{var r=!!t.el.open;if(g(t.summary,"aria-expanded",r?"true":"false"),r){for(var n=0;n<h.length;n++)h[n]!==t&&T(h[n]);(t=>{var r=t.el.getAttribute("data-gr-src");r&&!t.loaded&&(t.loaded=!0,"function"!=typeof fetch?(e.warn("мегаменю: fetch недоступен, панель "+r+" не загружена"),g(t.el,"data-gr-state","error")):(g(t.el,"data-gr-state","loading"),fetch(r).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.text()}).then(e=>{t.panel.innerHTML=e,g(t.el,"data-gr-state","ready")},n=>{e.warn("мегаменю: панель "+r+" не загружена: "+(n&&n.message)),g(t.el,"data-gr-state","error")})))})(t)}else M(t)})(t)}),v(t.summary,"click",e=>{((e,t)=>{t.el.open&&(e.preventDefault(),t.closing?k(t):T(t))})(e,t)})}function k(e){q(),e&&(e.closing&&(M(e),g(e.el,"data-gr-state",e.was)),e.el.open||(e.el.open=!0))}function T(e){if(e&&e.el.open&&!e.closing){var t=(e=>{var t="";try{t=getComputedStyle(e).getPropertyValue("--gr-transition")}catch(e){}var r=/(\d*\.?\d+)(m?s)/.exec(t);return r?parseFloat(r[1])*("s"===r[2]?1e3:1):0})(e.panel);t?(e.was=e.el.getAttribute("data-gr-state"),e.onEnd=t=>{t.target===e.panel&&O(e)},e.closing=setTimeout(()=>{O(e)},t+50),e.panel.addEventListener("transitionend",e.onEnd),e.panel.addEventListener("animationend",e.onEnd),g(e.el,"data-gr-state","closing")):e.el.open=!1}}function M(e){e.closing&&(clearTimeout(e.closing),e.closing=null,e.panel.removeEventListener("transitionend",e.onEnd),e.panel.removeEventListener("animationend",e.onEnd))}function O(e){e.closing&&(M(e),g(e.el,"data-gr-state",e.was),e.el.open=!1)}function j(){q();for(var e=0;e<h.length;e++)T(h[e])}function q(){y&&clearTimeout(y),w&&clearTimeout(w),y=w=null,b=null}function L(e){w&&clearTimeout(w),w=null,b!==e&&(y&&clearTimeout(y),b=e,y=setTimeout(()=>{y=null,b=null,k(e)},c.delay))}function P(e){for(var t=[],r=e.panel.querySelectorAll("a[href], button, input, select, textarea, summary, [tabindex]"),n=0;n<r.length;n++)l(r[n])&&t.push(r[n]);return t}function G(e,t,r){var n=null===t?r>0?-1:e.length:e.indexOf(t);if(-1===n&&null!==t)return!1;for(var o=0;o<e.length;o++)if(u(e[n=(n+r+e.length)%e.length]))return!0;return!1}(()=>{for(var e=s.querySelectorAll("details"),t=0;t<e.length;t++){for(var r=e[t],i=!1,a=r.parentNode;a&&a!==s;){if(o(a)){i=!0;break}a=a.parentNode}if(!i){for(var l=null,u=null,f=0;f<r.children.length;f++)!l&&n(r.children[f])?l=r.children[f]:l&&!u&&(u=r.children[f]);l&&u&&h.push({el:r,summary:l,panel:u,loaded:!1})}}})();for(var J=0;J<h.length;J++)C(h[J]);return x=e.media.on(c.bp,e=>{m=e,q()}),v(s,"pointerover",e=>{if(m&&c.hover&&i(e)){var t=S(e.target),r=E();if(t)return t===r||t===b?(w&&clearTimeout(w),w=null,void(t.closing&&k(t))):void L(t)}}),v(s,"pointerout",e=>{if(m&&c.hover&&i(e)){var t=e.relatedTarget;t&&a(s,t)&&S(t)||(y&&clearTimeout(y),y=null,b=null,w||(w=setTimeout(()=>{w=null,j()},c.hide)))}}),v(s,"pointermove",e=>{if(m&&c.hover&&i(e)){var t={x:e.clientX,y:e.clientY};if(b&&((e,t)=>{if(!A||!t||"function"!=typeof t.panel.getBoundingClientRect)return!1;var r=t.panel.getBoundingClientRect();if(!r.width||e.y<=A.y||e.y>=r.top)return!1;var n=r.left-A.x,o=r.top-A.y,i=r.right-A.x,a=r.top-A.y,l=e.x-A.x,u=e.y-A.y;return(n*u-o*l)*(i*u-a*l)<=0})(t,E())){var r=b;b=null,L(r)}A=t}}),v(s,"keydown",e=>{var t=e.key,r=e.target,i=S(r),f=i&&!n(r);if("Escape"===t){var c=i&&i.el.open?i:E();if(!c)return;return T(c),u(c.summary),void e.preventDefault()}if(f){if(!m)return;var d=P(i);if("ArrowDown"===t)G(d,r,1);else{if("ArrowUp"!==t)return;G(d,r,-1)}e.preventDefault()}else if(m){var p=(()=>{for(var e=[],t=(()=>{if(!h.length)return s;for(var e=h[0].el.parentNode;e&&e!==s;){for(var t=!0,r=0;r<h.length;r++)if(!a(e,h[r].el)){t=!1;break}if(t)return e;e=e.parentNode}return s})().querySelectorAll("a[href], button, summary"),r=0;r<t.length;r++){for(var i=t[r],u=null,f=i.parentNode;f&&f!==s;){if(o(f)){u=f;break}f=f.parentNode}(!u||n(i)&&i.parentNode===u&&S(u))&&l(i)&&e.push(i)}return e})();if(-1!==p.indexOf(r)){if("ArrowRight"===t)G(p,r,1);else if("ArrowLeft"===t)G(p,r,-1);else if("Home"===t)G(p,null,1);else if("End"===t)G(p,null,-1);else{if("ArrowDown"!==t||!i)return;k(i),u(P(i)[0])}e.preventDefault()}}}),v(s,"focusout",e=>{if(m){var t=e.relatedTarget;t&&a(s,t)||j()}}),v(document,"pointerdown",e=>{a(s,e.target)||j()},!0),g(s,"data-gr-state","ready"),{el:s,items:h,open:k,close:T,closeAll:j,current:E,destroy:()=>{q();for(var e=0;e<h.length;e++)O(h[e]);x&&x(),p.removeAll(),d.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={role:"menu",hover:!1,delay:100,hide:300,side:"bottom",align:"start",gap:4},r=0;function n(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function o(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}function i(e){return!!e&&!e.hasAttribute("disabled")&&"true"!==e.getAttribute("aria-disabled")}function a(e){return!(!e||"function"!=typeof e.focus)&&(e.focus(),document.activeElement===e)}e.defineWidget("dropdown",{needs:["anchor"]},(l,u)=>{var s=e.merge(t,u),f=e.recorder(),c=e.listeners(),d=f.set,p=c.add,g=l.firstElementChild,v=g&&g.nextElementSibling;if(!g||!v)throw new Error("у дропдауна нет кнопки и панели");var h="DETAILS"===l.tagName?"details":v.hasAttribute("popover")?"popover":"css",m=!1,y=!1,w=null,b=null;function A(){return"details"===h?!!l.open:m}function x(){for(var e=[],t=v.querySelectorAll('a[href], button, [role="menuitem"], [role="menuitemcheckbox"], [role="menuitemradio"]'),r=0;r<t.length;r++)i(t[r])&&e.push(t[r]);return e}function S(){"popover"===h&&e.anchor&&e.anchor.place(v,g,{side:s.side,align:s.align,gap:s.gap})}function E(e){"details"!==h&&(m=e),e||k(),d(g,"aria-expanded",e?"true":"false"),d(l,"data-gr-state",e?"open":"ready"),e&&S(),e&&y&&a(x()[0]),y=!1}function C(e){e.target===v&&T()}function k(){b&&(clearTimeout(b),b=null,v.removeEventListener("transitionend",C),v.removeEventListener("animationend",C))}function T(){b&&(k(),l.open=!1)}function M(){"popover"===h&&A()&&S()}function O(){if(P(),b)return k(),void d(l,"data-gr-state","open");if(!A())if("details"===h)l.open=!0;else if("popover"===h)try{v.showPopover()}catch(e){E(!0)}else E(!0)}function j(){if(P(),A())if("details"===h)(()=>{if(!b){var e=(e=>{var t="";try{t=getComputedStyle(e).getPropertyValue("--gr-transition")}catch(e){}var r=/(\d*\.?\d+)(m?s)/.exec(t);return r?parseFloat(r[1])*("s"===r[2]?1e3:1):0})(v);e?(b=setTimeout(T,e+50),v.addEventListener("transitionend",C),v.addEventListener("animationend",C),d(l,"data-gr-state","closing")):l.open=!1}})();else if("popover"===h)try{v.hidePopover()}catch(e){E(!1)}else E(!1)}function q(){A()?j():O()}function L(e,t,r){var n=null===t?r>0?-1:e.length:e.indexOf(t);if(-1===n&&null!==t)return!1;for(var o=0;o<e.length;o++)if(a(e[n=(n+r+e.length)%e.length]))return!0;return!1}function P(){w&&clearTimeout(w),w=null}return v.getAttribute("id")||d(v,"id","gr-dropdown-"+ ++r),d(g,"aria-controls",v.getAttribute("id")),(()=>{if("menu"===s.role){var e=v.querySelector("ul, ol")||v;d(g,"aria-haspopup","menu"),d(e,"role","menu");for(var t=e.querySelectorAll("li"),r=0;r<t.length;r++)d(t[r],"role","none");for(var n=e.querySelectorAll("hr"),o=0;o<n.length;o++)d(n[o],"role","separator");for(var i=e.querySelectorAll("a[href], button"),a=0;a<i.length;a++)i[a].getAttribute("role")||d(i[a],"role",i[a].hasAttribute("aria-checked")?"menuitemcheckbox":"menuitem")}})(),"details"===h?(p(l,"toggle",()=>{E(!!l.open)}),p(g,"click",e=>{"details"===h&&l.open&&(e.preventDefault(),b?O():j())})):"popover"===h?(p(v,"beforetoggle",e=>{"open"===e.newState&&S()}),p(v,"toggle",e=>{E("open"===e.newState)}),p(document,"scroll",M,!0),"undefined"!=typeof window&&p(window,"resize",M)):p(g,"click",()=>{q()}),p(l,"keydown",e=>{var t=e.key,r=e.target;if("Escape"===t){if(!A())return;return j(),a(g),void e.preventDefault()}if(r!==g){if(o(v,r)&&A()){var n=x();if("ArrowDown"===t)L(n,r,1);else if("ArrowUp"===t)L(n,r,-1);else if("Home"===t)L(n,null,1);else if("End"===t)L(n,null,-1);else{if(1!==t.length||e.ctrlKey||e.metaKey||e.altKey||" "===t)return;((e,t,r)=>{for(var n=e.indexOf(t),o=1;o<=e.length;o++){var i=e[(n+o)%e.length];if((i.textContent||"").trim().toLowerCase().charAt(0)===r.toLowerCase()&&a(i))return!0}})(n,r,t)}e.preventDefault()}}else"ArrowDown"===t||"ArrowUp"===t?(y=!0,A()?a("ArrowDown"===t?x()[0]:x()[x().length-1]):O(),e.preventDefault()):"Enter"!==t&&" "!==t||(y=!A())}),p(l,"pointerover",e=>{s.hover&&n(e)&&(P(),A()||(w=setTimeout(()=>{w=null,O()},s.delay)))}),p(l,"pointerout",e=>{s.hover&&n(e)&&(e.relatedTarget&&o(l,e.relatedTarget)||(P(),w=setTimeout(()=>{w=null,j()},s.hide)))}),p(l,"focusout",e=>{e.relatedTarget&&o(l,e.relatedTarget)||j()}),p(document,"pointerdown",e=>{o(l,e.target)||j()},!0),E(A()),{el:l,trigger:g,panel:v,kind:h,open:O,close:j,toggle:q,isOpen:A,destroy:()=>{P(),T(),c.removeAll(),"popover"===h&&e.anchor&&e.anchor.clear(v),f.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={delay:150,side:"top",align:"center",gap:6};function r(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function n(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}e.defineWidget("tooltip",{needs:["anchor"]},(o,i)=>{var a=e.merge(t,i),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=o.firstElementChild,d=o.querySelector('[role="tooltip"]')||o.lastElementChild;if(!c||!d||d===c)throw new Error("у подсказки нет якоря и текста");var p=!1,g=null;function v(){g&&clearTimeout(g),g=null}function h(){if(v(),!p){p=!0;try{d.showPopover()}catch(e){}s(o,"data-gr-state","open"),e.anchor&&e.anchor.place(d,c,{side:a.side,align:a.align,gap:a.gap})}}function m(){if(v(),p){p=!1;try{d.hidePopover()}catch(e){}e.anchor&&e.anchor.clear(d),s(o,"data-gr-state","ready")}}function y(){p&&e.anchor&&e.anchor.place(d,c,{side:a.side,align:a.align,gap:a.gap})}return d.hasAttribute("popover")||s(d,"popover","manual"),f(o,"pointerover",e=>{r(e)&&(v(),p||(a.delay>0?g=setTimeout(()=>{g=null,h()},a.delay):h()))}),f(o,"pointerout",e=>{r(e)&&(e.relatedTarget&&n(o,e.relatedTarget)||m())}),f(o,"focusin",()=>{h()}),f(o,"focusout",e=>{e.relatedTarget&&n(o,e.relatedTarget)||m()}),f(d,"toggle",e=>{"closed"===e.newState&&p&&m()}),f(document,"keydown",e=>{"Escape"===e.key&&p&&m()},!0),f(document,"scroll",y,!0),"undefined"!=typeof window&&f(window,"resize",y),s(o,"data-gr-state","ready"),{el:o,tip:d,show:h,hide:m,destroy:()=>{m(),u.removeAll(),l.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={hash:!1,media:!0,lock:!0,grow:!1},r="data-gr-open",n=[],o=e.recorder(),i=e.listeners(),a=0;function l(e){var t=n[n.length-1];t&&(((e,t)=>{for(var r=e;r&&r!==t;){try{var n=getComputedStyle(r);if(("auto"===n.overflowY||"scroll"===n.overflowY)&&r.scrollHeight>r.clientHeight)return!0}catch(e){}r=r.parentNode}return!1})(e.target,t.el)||"function"==typeof e.preventDefault&&e.preventDefault())}function u(){for(var e=0,t=0;t<n.length;t++)n[t].o.lock&&(e+=1);e&&!a?(o.set(document.documentElement,"data-gr-state","locked"),i.add(document,"touchmove",l,{passive:!1})):!e&&a&&(o.restore(),i.removeAll()),a=e}function s(t){var r="string"==typeof t?document.getElementById((t||"").replace(/^#/,"")):t;return r?e.instance(r,"dialog")||e.mount(r,"dialog"):null}function f(t){var r=s(t);return r?r.open():(e.warn("окно не найдено: "+t),null)}function c(){for(var t=e._mounted(),r=0;r<t.length;r++)"dialog"===t[r].name&&t[r].instance&&t[r].instance.onPopState()}e.defineWidget("dialog",(r,o)=>{var i=e.merge(t,o),a=e.recorder(),l=e.listeners(),s=a.set,f=l.add,c=!1,d=[],p=!1,g={el:r,o:i},v=null,h=0,m=null;function y(){return r.getAttribute("id")||""}function w(){return r.hasAttribute("open")}function b(){for(var e=0;e<d.length;e++)d[e].el.setAttribute("src",d[e].src);d=[]}function A(){return"undefined"!=typeof location&&location.hash==="#"+y()}function x(){return w()||(b(),"function"==typeof r.showModal?r.showModal():r.setAttribute("open",""),n.push(g),u(),s(r,"data-gr-state","open"),(()=>{var t=r.getAttribute("data-gr-src");if(t&&!c){if(c=!0,"function"!=typeof fetch)return e.warn("окно: fetch недоступен, "+t+" не загружен"),void s(r,"data-gr-state","error");var n=r.querySelector("[data-gr-content]")||r;s(r,"data-gr-state","loading"),fetch(t).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.text()}).then(e=>{n.innerHTML=e,s(r,"data-gr-state",w()?"open":"ready")},n=>{e.warn("окно: "+t+" не загружен: "+(n&&n.message)),s(r,"data-gr-state","error")})}})(),(()=>{if(i.hash&&y()&&"undefined"!=typeof history&&!A())try{history.pushState(null,"","#"+y())}catch(e){}})(),e.emit("griffin:open",r,{dialog:r})),C}function S(){return w()?("function"==typeof r.close?r.close():(r.removeAttribute("open"),E()),C):C}function E(){var t=n.indexOf(g);-1!==t&&n.splice(t,1),u(),(()=>{if(i.media){for(var e=r.querySelectorAll("video, audio"),t=r.querySelectorAll("iframe"),n=0;n<e.length;n++)"function"==typeof e[n].pause&&e[n].pause();for(var o=0;o<t.length;o++){var a=t[o].getAttribute("src");a&&"about:blank"!==a&&(d.push({el:t[o],src:a}),t[o].setAttribute("src","about:blank"))}}})(),(()=>{if(i.hash&&!p&&"undefined"!=typeof history&&A())try{history.back()}catch(e){}})(),p=!1,"loading"!==r.getAttribute("data-gr-state")&&s(r,"data-gr-state","ready"),e.emit("griffin:close",r,{dialog:r})}var C={el:r,open:x,close:S,isOpen:w,onPopState:()=>{i.hash&&w()&&!A()&&(p=!0,S())},destroy:()=>{var e=n.indexOf(g);-1!==e&&n.splice(e,1),v&&v.disconnect(),m&&m.cancel(),u(),b(),l.removeAll(),a.restore()}};return f(r,"close",E),s(r,"data-gr-state",w()?"open":"ready"),i.grow&&"function"==typeof ResizeObserver&&(v=new ResizeObserver(()=>{if(!m){var e=r.getBoundingClientRect().height,t=h;if(h=e,t&&e&&w()&&!(Math.abs(e-t)<=24)){var n=(()=>{try{return"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}})()?0:(e=>{var t="";try{var r=getComputedStyle(e);t=r.getPropertyValue("--gr-modal-transition")||r.getPropertyValue("--gr-transition")}catch(e){}var n=/(\d*\.?\d+)(m?s)/.exec(t);return n?parseFloat(n[1])*("s"===n[2]?1e3:1):0})(r);n&&"function"==typeof r.animate&&((m=r.animate([{blockSize:t+"px"},{blockSize:e+"px"}],{duration:n,easing:"ease"})).onfinish=m.oncancel=()=>{m=null})}}})).observe(r),w()&&(n.push(g),u()),i.hash&&A()&&!w()&&x(),C}),e.dialog={open:f,close:e=>{var t=s(e);return t?t.close():null},closeAll:()=>{for(;n.length;){var t=e.instance(n[n.length-1].el,"dialog");t?t.close():n.pop()}u()},top:()=>n.length?n[n.length-1].el:null,stack:()=>{for(var e=[],t=0;t<n.length;t++)e.push(n[t].el);return e},_popstate:c},e.on("click","["+r+"]",(e,t)=>!(e.metaKey||e.ctrlKey||e.shiftKey||e.button||(e.preventDefault&&e.preventDefault(),f(t.getAttribute(r)),0))),e.use({start:()=>{"undefined"!=typeof window&&window.addEventListener("popstate",c)},destroy:()=>{"undefined"!=typeof window&&window.removeEventListener("popstate",c),n=[],a=0,o.restore(),i.removeAll()}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={src:"",source:null,render:null,min:1,delay:200,empty:"",navigate:!1,highlight:!0,cache:!0,multiple:!1,free:!1,remove:"Убрать {label}"},r=0;function n(e,t,r){var n=document.createElement(e);for(var o in t&&n.setAttribute("class",t),r||{})Object.prototype.hasOwnProperty.call(r,o)&&n.setAttribute(o,r[o]);return n}e.defineWidget("combobox",(o,i)=>{var a=e.merge(t,i),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=o.querySelector("input");if(!c)throw new Error("у комбобокса нет поля ввода");var d=a.multiple?o.querySelector("select[multiple]"):null;if(a.multiple&&!d)throw new Error("для multiple нужен <select multiple> внутри");a.free&&!d&&(e.warn("комбобокс: free без multiple смысла не имеет — флаг пропущен"),a.free=!1);var p=o.querySelector('[role="listbox"]'),g=!1;p||(p=n("ul","gr-combobox-list"),o.appendChild(p),g=!0);var v=++r,h=[],m=[],y=-1,w=null,b=null,A=null,x={},S=!1,E=null,C=[];function k(){S||(S=!0,s(o,"data-gr-state","open"),s(c,"aria-expanded","true"))}function T(){M(),S&&(S=!1,_(-1),s(o,"data-gr-state","ready"),s(c,"aria-expanded","false"))}function M(){b&&clearTimeout(b),b=null}function O(){for(;p.firstElementChild;)p.firstElementChild.remove();m=[],y=-1,c.removeAttribute("aria-activedescendant")}function j(e,t,r){var o=a.render?a.render(e,t):null,i=o||n("li","gr-combobox-option");return o||((e,t,r,n)=>{var o=n&&r?t.toLowerCase().indexOf(r.toLowerCase()):-1;if(-1!==o){var i=document.createElement("mark");i.textContent=t.slice(o,o+r.length),o>0&&e.appendChild(document.createTextNode(t.slice(0,o))),e.appendChild(i),o+r.length<t.length&&e.appendChild(document.createTextNode(t.slice(o+r.length)))}else e.textContent=t})(i,e.label,t,a.highlight),i.setAttribute("role","option"),i.setAttribute("aria-selected","false"),i.setAttribute("id","gr-combobox-"+v+"-"+r),i}function q(e,t){if(O(),h=t,w=e,!t.length){if(!a.empty)return void T();var r=n("li","gr-combobox-empty",{role:"status"});return r.textContent=a.empty,p.appendChild(r),void k()}for(var o=null,i=0;i<t.length;i++){if(t[i].group&&t[i].group!==o){o=t[i].group;var l=n("li","gr-combobox-group",{role:"presentation"});l.textContent=o,p.appendChild(l)}var u=j(t[i],e,i);m.push(u),p.appendChild(u)}k()}function L(t){if(a.cache&&Object.prototype.hasOwnProperty.call(x,t))q(t,x[t]);else{A&&A.abort&&A.abort();var r,n=(A="function"==typeof AbortController?new AbortController:null)?A.signal:void 0;if("function"==typeof a.source)r=Promise.resolve(a.source(t,n));else{if(!a.src||"function"!=typeof fetch)return void e.warn("комбобокс: нет источника (src или source)");r=fetch(a.src.replace("{q}",encodeURIComponent(t)),{signal:n}).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.json()})}var o=A;r.then(e=>{if(o===A){var r=(e=>{var t=e&&e.items?e.items:e,r=[];if(!t||!t.length)return r;for(var n=0;n<t.length;n++){var o=t[n];"string"==typeof o?r.push({value:o,label:o}):o&&"object"==typeof o&&r.push({value:void 0!==o.value?String(o.value):String(o.label||""),label:void 0!==o.label?String(o.label):String(o.value||""),href:o.href||null,group:o.group||null,data:o})}return r})(e);a.cache&&(x[t]=r),q(t,r)}},t=>{t&&"AbortError"===t.name||e.warn("комбобокс: запрос не удался: "+(t&&t.message))})}}function P(e){return M(),(e=(void 0===e?c.value:e).trim()).length<a.min?(T(),O(),h=[],w=null,F):(a.delay>0?b=setTimeout(()=>{b=null,L(e)},a.delay):L(e),F)}function G(e){for(var t=d.options,r=0;r<t.length;r++)if(t[r].value===e)return t[r];return null}function J(){for(;E.firstElementChild;)E.firstElementChild.remove();for(var e=d.options,t=0;t<e.length;t++)if(e[t].selected){var r=n("li","gr-combobox-tag"),o=n("span"),i=n("button","gr-combobox-tag-remove",{type:"button","data-gr-value":e[t].value,"aria-label":String(a.remove).replace("{label}",e[t].textContent)});o.textContent=e[t].textContent,i.textContent="×",r.appendChild(o),r.appendChild(i),E.appendChild(r)}}function D(){try{d.dispatchEvent(new Event("change",{bubbles:!0}))}catch(e){}}function N(e,t){var r=G(e);r||((r=n("option","",{value:e})).textContent=t,d.appendChild(r),C.push(r)),r.selected||(r.selected=!0,J(),D())}function R(e){var t=G(e);if(t){t.selected=!1;var r=C.indexOf(t);-1!==r&&(C.splice(r,1),t.remove()),J(),D()}}function _(e,t){y>=0&&m[y]&&m[y].setAttribute("aria-selected","false"),y=e,e<0||!m[e]?c.removeAttribute("aria-activedescendant"):(m[e].setAttribute("aria-selected","true"),c.setAttribute("aria-activedescendant",m[e].getAttribute("id")),t&&((e,t)=>{if("function"==typeof e.getBoundingClientRect&&"function"==typeof t.getBoundingClientRect){var r=e.getBoundingClientRect(),n=t.getBoundingClientRect(),o=e.scrollTop||0,i=o;n.top<r.top?i=o-(r.top-n.top):n.bottom>r.bottom&&(i=o+(n.bottom-r.bottom)),i!==o&&(e.scrollTop=i)}})(p,m[e]))}function B(t){var r=h[t];return r?(d?(N(r.value,r.label),c.value=""):c.value=r.value,T(),e.emit("griffin:select",c,{item:r,index:t,input:c}),a.navigate&&r.href&&"undefined"!=typeof location&&(location.href=r.href),F):F}function H(t){var r=e.closest(t,'[role="option"]');return r?m.indexOf(r):-1}var F={el:o,input:c,list:p,open:k,close:T,query:P,select:B,items:()=>h.slice(),values:()=>{var e=[];if(d)for(var t=0;t<d.options.length;t++)d.options[t].selected&&e.push(d.options[t].value);return e},destroy:()=>{M(),A&&A.abort&&A.abort(),u.removeAll(),O(),g&&p.remove(),E&&E.remove(),l.restore()}};return p.getAttribute("id")||s(p,"id","gr-combobox-list-"+v),s(p,"role","listbox"),s(c,"role","combobox"),s(c,"aria-autocomplete","list"),s(c,"aria-expanded","false"),s(c,"aria-controls",p.getAttribute("id")),s(c,"autocomplete","off"),s(o,"data-gr-state","ready"),d&&(E=n("ul","gr-combobox-tags",{role:"list"}),o.insertBefore(E,c),J(),f(E,"click",t=>{var r=e.closest(t.target,".gr-combobox-tag-remove");r&&(R(r.getAttribute("data-gr-value")),c.focus())})),f(c,"input",()=>{P()}),f(c,"keydown",e=>{var t=e.key;if("ArrowDown"===t||"ArrowUp"===t){if(!h.length)return;(e=>{if(h.length){if(!S)return k(),void _(e>0?0:h.length-1,!0);var t=y+e;t<0&&(t=h.length-1),t>=h.length&&(t=0),_(t,!0)}})("ArrowDown"===t?1:-1),e.preventDefault()}else if("Home"===t||"End"===t){if(!S||!h.length)return;_("Home"===t?0:h.length-1,!0),e.preventDefault()}else if("Enter"===t){var r=c.value.trim();if(S&&y>=0)B(y);else{if(!a.free||!r)return;N(r,r),c.value="",T()}e.preventDefault()}else if("Escape"===t){if(!S)return;T(),e.preventDefault()}else if("Tab"===t)T();else if("Backspace"===t&&d&&!c.value){for(var n=null,o=0;o<d.options.length;o++)d.options[o].selected&&(n=d.options[o]);n&&(R(n.value),e.preventDefault())}}),f(c,"focus",()=>{!S&&h.length&&c.value.trim()===w&&k()}),f(p,"click",e=>{var t=H(e.target);-1!==t&&(B(t),e.preventDefault())}),f(p,"pointerover",e=>{var t=H(e.target);-1!==t&&t!==y&&_(t,!1)}),f(p,"pointerdown",e=>{e.preventDefault&&e.preventDefault()}),f(document,"pointerdown",e=>{for(var t=e.target;t;){if(t===o)return;t=t.parentNode}T()},!0),F})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t="--gr-progress",r="--gr-range-from",n="--gr-range-to";function o(e,t){var r=parseFloat(e);return isNaN(r)?t:r}function i(e){return o(void 0===e.value||""===e.value?e.getAttribute("value"):e.value,o(e.getAttribute("min"),0))}function a(e,t,r){return o(e.getAttribute(t),r)}e.defineWidget("range",(l,u)=>{var s="INPUT"===l.tagName?[l]:[].slice.call(l.querySelectorAll('input[type="range"]')),f=e.listeners(),c=[];if(!s.length)throw new Error('внутри нет ни одного <input type="range">');function d(e){var t,r=a(e,"min",0),n=a(e,"max",100)-r;return t=n>0?(i(e)-r)/n:0,Math.round(1e4*Math.max(0,Math.min(1,t)))/1e4}function p(e){var t=s[e],r=a(t,"min",0),n=a(t,"max",100),i=c[e].value;t.value=""===i?e?n:r:Math.max(r,Math.min(n,o(i,r)))}function g(e){for(var t=0;t<c.length;t++)c[t]!==e&&(c[t].value=i(s[t]))}function v(e){var t=e.target,r=c.indexOf(t);p(r),"change"===e.type&&(h(s[r]),g(t)),m(),w()}function h(e){if(!(s.length<2)){var t=s[0],r=s[1];i(t)<=i(r)||(e===r?t.value=r.value:r.value=t.value)}}function m(){s.length>1?(l.style.setProperty(r,d(s[0])),l.style.setProperty(n,d(s[1]))):s[0].style.setProperty(t,d(s[0]))}function y(e){h(e&&e.target),m(),e&&(g(),w())}function w(){for(var t=[],r=0;r<s.length;r++)t.push(i(s[r]));e.emit("griffin:change",l,{values:t,from:t[0],to:t[t.length-1]})}if(f.add(l,"input",y),u&&u.fields)for(var b=String(u.fields).split(","),A=0;A<s.length;A++){var x=document.querySelector(b[A]||"#");if(!x)throw new Error("поле «"+b[A]+"» не найдено");c.push(x),p(A),f.add(x,"input",v),f.add(x,"change",v)}return y(),{el:l,inputs:s,update:y,destroy:()=>{f.removeAll(),l.style.removeProperty(r),l.style.removeProperty(n);for(var e=0;e<s.length;e++)s[e].style.removeProperty(t)}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={none:"ascending",ascending:"descending",descending:"none"},r=/^\d{4}-\d{2}-\d{2}/;function n(e){return r.test(e)?Date.parse(e):Number(e)}function o(e){for(var t=[],r=0;r<e.children.length;r++)"TR"===e.children[r].tagName&&t.push(e.children[r]);return t}e.defineWidget("sortable",r=>{var i=r.querySelector("thead"),a=i?i.querySelectorAll("th[aria-sort]"):[];function l(){return r.querySelector("tbody")}if(!l()||!a.length)throw new Error("нужны tbody и заголовки с aria-sort");var u,s=e.recorder(),f=e.listeners();try{u=new Intl.Collator(document.documentElement.getAttribute("lang")||void 0,{numeric:!0})}catch(e){u=new Intl.Collator(void 0,{numeric:!0})}for(var c=o(l()),d=null,p=0;p<a.length;p++)a[p].querySelector("button")||s.set(a[p],"tabindex","0");function g(e){for(var t=l(),r=0;r<e.length;r++)t.appendChild(e[r])}function v(){var e,t=o(l()),r=[];for(e=0;e<c.length;e++)-1!==t.indexOf(c[e])&&r.push(c[e]);for(e=0;e<t.length;e++)-1===r.indexOf(t[e])&&r.push(t[e]);g(r)}function h(e,t){var r=e.children[t];if(!r)return"";var n=r.getAttribute("data-gr-sort-value");return String(null===n?r.textContent:n).trim()}function m(e,t){var r;for(r=0;r<a.length;r++)s.set(a[r],"aria-sort",a[r]===e?t:"none");if(d="none"===t?null:e,"none"===t)return v();var i=[].indexOf.call(e.parentNode.children,e),f=o(l()),c=!0,p=[];for(r=0;r<f.length;r++)p.push(h(f[r],i)),""!==p[r]&&isNaN(n(p[r]))&&(c=!1);var m=f.map((e,t)=>({row:e,key:p[t],num:c?n(p[t]):0})),y="descending"===t?-1:1;m.sort((e,t)=>""===e.key?""===t.key?0:1:""===t.key?-1:y*(c?e.num-t.num:u.compare(e.key,t.key))),g(m.map(e=>e.row))}function y(t){var r=e.closest(t,"th");return r&&-1!==[].indexOf.call(a,r)?r:null}function w(e){var r=y(e.target);if(r){var n=r.getAttribute("aria-sort");m(r,d===r?t[n]||"ascending":"ascending"===n?"descending":"ascending")}}return s.set(r,"data-gr-state","ready"),f.add(r,"click",w),f.add(r,"keydown",e=>{"Enter"!==e.key&&" "!==e.key||y(e.target)===e.target&&(e.preventDefault(),w(e))}),{el:r,sort:m,destroy:()=>{f.removeAll(),s.restore(),v()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js"));
2
+ (()=>{"use strict";var e=(()=>{var e={},t={},r={},n=[],o=[],i=!1;function a(e,t){return t&&(r[e]=t),r[e]||[]}function l(e,t,r,n,o){if("function"==typeof n&&(o=n,n=null),"string"!=typeof r||!r)throw new Error("GriffinJS: "+t+" без имени");if("function"!=typeof o)throw new Error("GriffinJS: "+t+" «"+r+"» — не функция");if(e[r])throw new Error("GriffinJS: "+t+" «"+r+"» уже зарегистрирован");return n&&n.needs&&a(r,n.needs),e[r]=o,o}function u(e){"undefined"!=typeof console&&console.warn&&console.warn("GriffinJS: "+e)}function s(e,t){for(var r=0;r<o.length;r++)if(o[r].el===e&&o[r].name===t)return o[r];return null}function f(e,r,n){if(!e||!t[r])return u("виджет «"+r+"» не зарегистрирован"),null;var i=s(e,r);if(i)return i.instance;void 0===n&&(n=v.options?v.options.read(e,r):{});var a={el:e,name:r,instance:null};o.push(a);try{a.instance=t[r](e,n,v)||{}}catch(e){return o.splice(o.indexOf(a),1),u("виджет «"+r+"» не поднялся: "+(e&&e.message)),null}return a.instance}function c(e,t){for(var r=o.length-1;r>=0;r--){var n=o[r];n.el===e&&(t&&n.name!==t||(o.splice(r,1),n.instance&&"function"==typeof n.instance.destroy&&n.instance.destroy()))}}function d(e){for(var r in e=e||document,t)if(Object.prototype.hasOwnProperty.call(t,r)){var o="[data-gr-"+r+"]",i=[];"function"==typeof e.matches&&e.matches(o)&&i.push(e);for(var a=e.querySelectorAll?e.querySelectorAll(o):[],l=0;l<a.length;l++)i.push(a[l]);for(var u=0;u<i.length;u++)f(i[u],r)}for(var s=0;s<n.length;s++)"function"==typeof n[s].init&&n[s].init(e);return v}function p(e){for(var t=e;t;){if(t===document||t===document.documentElement)return!0;t=t.parentNode}return!1}function g(){if(i)return v;i=!0,(()=>{for(var n=Object.keys(r),o=0;o<n.length;o++)for(var i=r[n[o]],a=0;a<i.length;a++){var l=i[a];v[l]||t[l]||e[l]||u("«"+n[o]+"» не работает без griffinjs-"+l+".js")}})();for(var o=0;o<n.length;o++)"function"==typeof n[o].start&&n[o].start(v);return d(document),v}var v={version:"0.26.2",config:{},engines:e,widgets:t,defineEngine:(t,r,n)=>l(e,"движок",t,r,n),defineWidget:(e,r,n)=>l(t,"виджет",e,r,n),needs:a,use:e=>(n.push(e),i&&"function"==typeof e.start&&e.start(v),v),mount:f,unmount:c,instance:(e,t)=>{var r=s(e,t);return r?r.instance:null},init:d,start:g,destroy:()=>{if(!i)return v;for(i=!1;o.length;)c(o[o.length-1].el);for(var e=n.length-1;e>=0;e--)"function"==typeof n[e].destroy&&n[e].destroy(v);return v},warn:u,recorder:()=>{var e=[];return{set:(t,r,n)=>{var o=t.getAttribute(r);if(o!==n){for(var i=!1,a=0;a<e.length;a++)if(e[a].el===t&&e[a].attr===r){i=!0;break}i||e.push({el:t,attr:r,before:o}),null===n?t.removeAttribute(r):t.setAttribute(r,n)}},restore:()=>{for(var t=e.length-1;t>=0;t--){var r=e[t];null===r.before?r.el.removeAttribute(r.attr):r.el.setAttribute(r.attr,r.before)}e=[]}}},listeners:()=>{var e=[];return{add:(t,r,n,o)=>{t.addEventListener(r,n,o),e.push([t,r,n,o])},removeAll:()=>{for(var t=0;t<e.length;t++)e[t][0].removeEventListener(e[t][1],e[t][2],e[t][3]);e=[]}}},merge:(e,t)=>{var r,n={};for(r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);for(r in t||{})Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n},_mounted:()=>o.slice(),_prune:()=>{for(var e=o.length-1;e>=0;e--){var t=o[e].el;("boolean"==typeof t.isConnected?!t.isConnected:!p(t))&&c(t,o[e].name)}},_started:()=>i,_autoStart:()=>{var e=null;try{e=document.currentScript}catch(e){}if(!e||"false"!==e.getAttribute("data-auto")){var t=!!e&&e.hasAttribute("defer")&&!e.hasAttribute("async");if("loading"===document.readyState||t&&"complete"!==document.readyState){var r=()=>{document.removeEventListener("DOMContentLoaded",r),document.removeEventListener("readystatechange",r),g()};return document.addEventListener("DOMContentLoaded",r),void(t&&document.addEventListener("readystatechange",r))}Promise.resolve().then(g)}}};return v})();"object"==typeof module&&module.exports&&(module.exports=e),"undefined"!=typeof window&&"undefined"!=typeof document&&(window.GriffinJS=e,e._autoStart())})(),(e=>{"use strict";function t(e){return""===e||"true"===e||"false"!==e&&("null"===e?null:/^-?\d+(\.\d+)?$/.test(e)?Number(e):e)}function r(e){return e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function n(n){var o={};if("string"!=typeof n)return o;if(!(n=n.trim()))return o;if("{"===n.charAt(0))try{return JSON.parse(n)}catch(t){return e.warn("параметры не разобраны как JSON: "+n),o}for(var i=n.split(";"),a=0;a<i.length;a++){var l=i[a].trim();if(l){var u=l.indexOf(":"),s=-1===u?l:l.slice(0,u),f=-1===u?"":l.slice(u+1);o[r(s.trim())]=t(f.trim())}}return o}e.options={parse:n,read:(e,t,r)=>{var o,i={};for(o in r||{})Object.prototype.hasOwnProperty.call(r,o)&&(i[o]=r[o]);var a=n(e&&e.getAttribute?e.getAttribute("data-gr-"+t):null);for(o in a)Object.prototype.hasOwnProperty.call(a,o)&&(i[o]=a[o]);return i}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={},r=!1;function n(e,t){if(!e)return null;if("function"==typeof e.closest)return e.closest(t);for(var r=e;r;){if("function"==typeof r.matches&&r.matches(t))return r;r=r.parentNode}return null}function o(e){for(var r=t[e.type]||[],o=0;o<r.length;o++){var i=n(e.target,r[o].selector);if(i&&!0===r[o].handler(e,i))return}}function i(e){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&document[e](r,o)}e.on=(n,i,a)=>(t[n]||(t[n]=[],r&&document.addEventListener(n,o)),t[n].push({selector:i,handler:a}),e),e.off=(r,n,o)=>{for(var i=t[r]||[],a=i.length-1;a>=0;a--)i[a].selector!==n||o&&i[a].handler!==o||i.splice(a,1);return e},e.emit=(e,t,r)=>{try{(t&&"function"==typeof t.dispatchEvent?t:document).dispatchEvent(new CustomEvent(e,{detail:r,bubbles:!0}))}catch(e){}},e.closest=n,e.use({start:()=>{r=!0,i("addEventListener")},destroy:()=>{r=!1,i("removeEventListener")}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=null,r=null,n=[];function o(){r=null;var t=n;n=[],e._prune();for(var o=0;o<t.length;o++)e.init(t[o])}function i(e){for(var t=!1,i=0;i<e.length;i++){for(var a=e[i].addedNodes,l=0;l<a.length;l++)1===a[l].nodeType&&(n.push(a[l]),t=!0);e[i].removedNodes.length&&(t=!0)}t&&!r&&(r=setTimeout(o,0))}function a(){t||"undefined"==typeof MutationObserver||(t=new MutationObserver(i)).observe(document.documentElement,{childList:!0,subtree:!0})}function l(){r&&(clearTimeout(r),r=null),n=[],t&&(t.disconnect(),t=null)}e.scanner={start:a,stop:l,_flush:o},e.use({start:a,destroy:l})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";e.defineEngine("scroll",(t,r,n)=>{var o=!(!n||!n.loop),i=[],a=[],l=0,u=[],s=null,f=null,c=!1,d=null,p=!1,g=null,v=0,h=e.listeners(),m=h.add,y="undefined"!=typeof window&&"onscrollend"in window;function w(){return t.count}function b(e){return l+e}function A(e){var t=e.cloneNode(!0);return t.setAttribute("data-gr-clone",""),t.setAttribute("aria-hidden","true"),t.setAttribute("inert",""),t.removeAttribute("aria-current"),t.removeAttribute("id"),t}function x(){for(var e=0;e<u.length;e++)u[e].remove();u=[],l=0}function S(){var e=r.children,t=r.scrollLeft,n=r.getBoundingClientRect().left;i=[],a=[];for(var o=0;o<e.length;o++){var l=e[o].getBoundingClientRect();i.push(t+l.left-n),a.push(l.width)}}function E(){for(var e=0,t=r.clientWidth,n=b(0),o=n;o<i.length;o++){var l=Math.abs(i[o]-i[n])+a[o];if(!(a[o]>0&&l<=t+1))break;e+=1}return Math.max(1,e)}function C(){var e=r.scrollLeft,t=i.length;if(t<2)return 0;for(var n=0;n<t-1;n++){var o=i[n],a=i[n+1],u=Math.min(o,a),s=Math.max(o,a);if(e>=u&&e<=s&&s!==u)return n+(e-o)/(a-o)-l}return(Math.abs(e-i[0])<=Math.abs(e-i[t-1])?0:t-1)-l}function k(e,t){var n=i[e];"number"==typeof n&&("function"==typeof r.scrollTo?r.scrollTo({left:n,behavior:t?"auto":"smooth"}):r.scrollLeft=n,p=!t&&Math.abs(r.scrollLeft-n)>=1,g=p?n:null,v=0)}function T(e){if(!o)return b(e);for(var t=C()+l,r=w(),n=b(e),a=[b(e)-r,b(e),b(e)+r],u=0;u<a.length;u++){var s=a[u];s<0||s>=i.length||Math.abs(s-t)<Math.abs(n-t)&&(n=s)}return n}function M(){if(f=null,p&&null!==g&&Math.abs(r.scrollLeft-g)>=1&&v<5)return v+=1,void(f=setTimeout(M,120));p=!1,g=null,c=!1;var e=Math.round(C()),n=w();if(o&&n&&(e<0||e>=n)&&k(b(e=(e%n+n)%n),!0),d){var i=d;return d=null,void k(T(i.physical),i.instant)}t._settle(e)}return m(r,"scroll",()=>{if(null===s){var e=()=>{s=null,t._report(C())};"function"==typeof requestAnimationFrame?s=requestAnimationFrame(e):e()}y||(f&&clearTimeout(f),f=setTimeout(M,120))},{passive:!0}),y&&m(r,"scrollend",()=>{f&&(clearTimeout(f),f=null),M()}),m(r,"touchstart",()=>{c=!0},{passive:!0}),{loop:o,live:!0,goTo:(e,t)=>c?(d={physical:e,instant:t},!0):!(p&&!t||(k(T(e),t),0)),layout:()=>{S();var e=o?Math.min(E(),w()):0;(e!==l||o&&u.length!==2*e)&&((e=>{var n=t.slides,i=n.length;if(x(),o&&!(i<2)){for(var a=Math.min(e,i),s=i-a;s<i;s++){var f=A(n[s]);r.insertBefore(f,n[0]),u.push(f)}for(var c=0;c<a;c++){var d=A(n[c]);r.appendChild(d),u.push(d)}l=a}})(e),S())},visible:()=>{for(var e=r.scrollLeft,n=e+r.clientWidth,u=w(),s=[],f=0;f<i.length;f++){var c=Math.min(i[f],i[f]+a[f]),d=Math.max(i[f],i[f]+a[f]),p=Math.min(d,n)-Math.max(c,e);if(a[f]>0&&p>=a[f]/2){var g=f-l;o&&u&&(g=(g%u+u)%u),g>=0&&g<u&&-1===s.indexOf(g)&&s.push(g)}}return s.length?s:[t.physical(Math.round(C()))]},perView:E,position:C,moving:()=>p,queued:()=>!!d,destroy:()=>{h.removeAll(),x(),f&&clearTimeout(f),null!==s&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(s)},_offsets:()=>i.slice(),_clones:()=>u.slice()}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";e.defineEngine("fade",{needs:["gesture"]},(t,r)=>{var n=e.recorder(),o=null;function i(){return t.physical(t.index)}return"function"==typeof e.gesture&&(o=e.gesture(r,{onStart:()=>{n.set(r,"data-gr-state","dragging")},onMove:e=>{var r=t.count,n=i()-e.progress;t.loop||(n=Math.max(0,Math.min(r-1,n))),t._report(n)},onEnd:e=>{n.set(r,"data-gr-state","ready"),e.swipe<0&&t.next()||e.swipe>0&&t.prev()||t._report(i())},onCancel:()=>{n.set(r,"data-gr-state","ready"),t._report(i())}})),n.set(r,"data-gr-state","ready"),{loop:!0,goTo:e=>{t._report(e),t._settle(e)},layout:()=>{},visible:()=>[i()],perView:()=>1,destroy:()=>{o&&o.destroy(),n.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t=["mask","phone","datetime","number","file","rating","otp","counter","validate"],r=e.config,n="",o=null,i={};try{var a=document.currentScript;if(a){n=a.nonce||"";var l=a.getAttribute("data-fields");l&&(r.fields={src:l,countries:a.getAttribute("data-countries")||""})}}catch(e){}function u(){if(!o){o="pending";var t,n=[r.fields.src],i=!0;r.fields.countries&&n.push(r.fields.countries),t=n.length;for(var a=0;a<n.length;a++)s(n[a],l)}function l(r){"error"===r.type&&(i=!1,e.warn("бандл полей не загружен: "+r.target.src+" — поля остались базой без скрипта")),--t||(o=i?"done":"failed",e.init(document),i&&e.emit("griffinjs:fields-loaded",document,{files:n}))}}function s(e,t){var r=document.createElement("script");r.src=e,r.async=!1,n&&(r.nonce=n),r.addEventListener("load",t),r.addEventListener("error",t),(document.head||document.documentElement).appendChild(r)}e.loader={_fields:()=>t.slice(),_nonce:e=>(void 0!==e&&(n=e),n)},e.use({init:n=>{for(var o=0;o<t.length;o++){var a=t[o],l="[data-gr-"+a+"]";if(!e.widgets[a]&&!i[a]&&(n.matches&&n.matches(l)||n.querySelector&&n.querySelector(l))){if(r.fields&&r.fields.src)return u();i[a]=!0,e.warn("поле «"+a+"» не собрано: подключите griffinjs-fields.js или задайте GriffinJS.config.fields")}}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=["top","left","right","bottom"];function r(e,t){return"left"===e?t?"end":"start":"right"===e?t?"start":"end":e}var n={top:"bottom",bottom:"top",left:"right",right:"left"};function o(e,t,r,n){return"bottom"===e?n.h-t.bottom:"top"===e?t.top:"right"===e?n.w-t.right:t.left}e.anchor={place:(e,t,i)=>{var a,l,u,s=(i=i||{}).gap||0,f=i.margin||0,c=i.align||"start",d=(e=>{try{return"rtl"===getComputedStyle(e).direction||"rtl"===document.documentElement.getAttribute("dir")}catch(e){return"rtl"===document.documentElement.getAttribute("dir")}})(t),p=((e,t)=>"start"===e?t?"right":"left":"end"===e?t?"left":"right":e)(i.side||"bottom",d),g=t.getBoundingClientRect(),v=e.getBoundingClientRect(),h={w:(a=document.documentElement).clientWidth||("number"==typeof innerWidth?innerWidth:0),h:a.clientHeight||("number"==typeof innerHeight?innerHeight:0)},m="top"===p||"bottom"===p,y=(m?v.height:v.width)+s;if(o(p,g,0,h)<y&&o(n[p],g,0,h)>=y&&(p=n[p]),m){l="bottom"===p?g.bottom+s:g.top-s-v.height;var w=d?"end"===c:"start"===c;u="center"===c?g.left+(g.width-v.width)/2:w?g.left:g.right-v.width}else u="right"===p?g.right+s:g.left-s-v.width,l=g.top+(g.height-v.height)/2;return h.w&&(u=Math.min(Math.max(u,f),Math.max(f,h.w-f-v.width))),h.h&&(l=Math.min(Math.max(l,f),Math.max(f,h.h-f-v.height))),e.style.setProperty("top",Math.round(l)+"px"),e.style.setProperty("left",Math.round(u)+"px"),e.style.setProperty("right","auto"),e.style.setProperty("bottom","auto"),{side:r(p,d),top:l,left:u}},clear:e=>{if(e&&e.style)for(var r=0;r<t.length;r++)e.style.removeProperty(t[r])}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t=null;function r(e){if(t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];t||(t={});var r=null;try{r=getComputedStyle(document.documentElement).getPropertyValue("--gr-bp-"+e).trim()||null}catch(e){}return t[e]=r,r}function n(e){var t=r(e);return t?"(width >= "+t+")":null}function o(){t=null}e.media={value:r,query:n,matches:e=>{var t=n(e);return!(!t||"function"!=typeof matchMedia)&&matchMedia(t).matches},on:(e,t)=>{var r=n(e);if(!r||"function"!=typeof matchMedia)return t(!1),()=>{};var o=matchMedia(r),i=e=>{t(e.matches)};return t(o.matches),"function"==typeof o.addEventListener?o.addEventListener("change",i):o.addListener(i),()=>{"function"==typeof o.removeEventListener?o.removeEventListener("change",i):o.removeListener(i)}},reset:o},e.use({start:o})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t="--gr-progress";function r(e,t,r){return e<t?t:e>r?r:e}function n(e,n){e&&e.style&&e.style.setProperty(t,String(Math.round(1e3*r(n,0,1))/1e3))}function o(e){e&&e.style&&e.style.removeProperty(t)}function i(e,t){var n=t+e.height;return n<=0?0:r((t-e.top)/n,0,1)}e.motion={PROP:t,set:n,clear:o,clamp:r,time:e=>{var t=e.duration||1e3,r=!!e.loop,o=e.now||("undefined"!=typeof performance&&performance.now?()=>performance.now():Date.now),i=e.schedule||("function"==typeof requestAnimationFrame?e=>requestAnimationFrame(e):e=>setTimeout(e,16)),a=e.cancel||("function"==typeof cancelAnimationFrame?e=>{cancelAnimationFrame(e)}:e=>{clearTimeout(e)}),l=0,u=0,s=null,f=!1;function c(t){e.el&&n(e.el,t),e.onProgress&&e.onProgress(t)}function d(){if(s=null,f){var n=(u+(o()-l))/t;if(n>=1)return c(1),e.onEnd&&e.onEnd(),void(r&&f?(u=0,l=o(),c(0),s=i(d)):f=!1);c(n),s=i(d)}}function p(){return f||(f=!0,l=o(),s=i(d)),h}function g(){return f?(f=!1,u+=o()-l,null!==s&&(a(s),s=null),h):h}function v(){return g(),u=0,c(0),h}var h={start:p,pause:g,resume:p,stop:v,restart:()=>(v(),p()),running:()=>f};return h},viewport:(e,t)=>{t=t||{};var r=!1,a=null,l=null;function u(){a=null;var r="undefined"!=typeof window?window.innerHeight:0,o=i(e.getBoundingClientRect(),r);n(e,o),t.onProgress&&t.onProgress(o)}function s(){null===a&&"function"==typeof requestAnimationFrame?a=requestAnimationFrame(u):null===a&&u()}function f(e){if(e!==r){r=e;var t=e?"addEventListener":"removeEventListener";document[t]("scroll",s,{capture:!0,passive:!0}),window[t]("resize",s),e&&s()}}return"function"==typeof IntersectionObserver?(l=new IntersectionObserver(e=>{f(e[e.length-1].isIntersecting)})).observe(e):f(!0),{update:s,destroy:()=>{f(!1),l&&l.disconnect(),null!==a&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(a),o(e)}}},viewportProgress:i}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={axis:"x",threshold:8,velocity:.4,distance:.35,pointers:null,onStart:null,onMove:null,onEnd:null,onCancel:null};e.gesture=(r,n)=>{var o=e.merge(t,n),i="y"!==o.axis,a=null,l=[];function u(){var e=r.getBoundingClientRect?r.getBoundingClientRect():null;return(e?i?e.width:e.height:0)||1}function s(e){return"number"==typeof e.timeStamp?e.timeStamp:Date.now()}function f(e){if(!a&&(e=>!o.pointers||-1!==o.pointers.indexOf(e.pointerType))(e)&&("number"!=typeof e.button||0===e.button)&&(a={id:e.pointerId,pointerType:e.pointerType,startX:e.clientX,startY:e.clientY,dx:0,dy:0,progress:0,active:!1,locked:!1,swipe:0},l=[[s(e),i?e.clientX:e.clientY]],r.setPointerCapture))try{r.setPointerCapture(e.pointerId)}catch(e){}}function c(e){if(a&&e.pointerId===a.id&&!a.locked){a.dx=e.clientX-a.startX,a.dy=e.clientY-a.startY;var t=i?a.dx:a.dy,r=i?a.dy:a.dx;if(!a.active){if(Math.abs(t)<o.threshold&&Math.abs(r)<o.threshold)return;if(Math.abs(r)>Math.abs(t))return void(a.locked=!0);a.active=!0,o.onStart&&o.onStart(a)}l.push([s(e),i?e.clientX:e.clientY]),l.length>5&&l.shift(),a.progress=t/u(),e.cancelable&&e.preventDefault&&e.preventDefault(),o.onMove&&o.onMove(a)}}function d(e){if(a&&e.pointerId===a.id){var t=a,r=i?t.dx:t.dy,n=(()=>{if(l.length<2)return 0;var e=l[0],t=l[l.length-1],r=t[0]-e[0];return r>0?(t[1]-e[1])/r:0})();if(a=null,t.active){var s=Math.abs(r)/u()>=o.distance,f=Math.abs(n)>=o.velocity&&n>0==r>0;t.swipe=s||f?r>0?1:-1:0,t.velocity=n,o.onEnd&&o.onEnd(t)}else t.locked&&o.onCancel&&o.onCancel(t)}}function p(e){if(a&&e.pointerId===a.id){var t=a;a=null,o.onCancel&&o.onCancel(t)}}return r.addEventListener("pointerdown",f),r.addEventListener("pointermove",c),r.addEventListener("pointerup",d),r.addEventListener("pointercancel",p),{destroy:()=>{r.removeEventListener("pointerdown",f),r.removeEventListener("pointermove",c),r.removeEventListener("pointerup",d),r.removeEventListener("pointercancel",p),a=null},_state:()=>a}}})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t="griffin:change",r="griffin:layout",n={engine:"scroll",loop:!1,rewind:!1,step:1,index:0,keyboard:!0,inert:!0,label:"Слайд {i} из {n}"};function o(e,t){return(e%t+t)%t}function i(i,a){var l=e.merge(n,a),u=[],s=0,f=1,c=null,d=!1,p=!!l.rewind,g=e.recorder(),v=e.listeners(),h=[],m=null,y=!1,w=!1,b=g.set;function A(){for(var e=l.slides?i.querySelectorAll(l.slides):i.children,t=[],r=0;r<e.length;r++)void 0!==e[r].nodeType&&1!==e[r].nodeType||e[r].hasAttribute&&e[r].hasAttribute("data-gr-clone")||t.push(e[r]);return t}function x(){return u.length}function S(){return Math.max(0,x()-f)}function E(e){var t=x();if(0===t)return 0;if(d)return o(e,t);var r=S();return e<0?0:e>r?r:e}function C(){if("page"===l.step)return Math.max(1,f);var e=Number(l.step);return e>=1?Math.floor(e):1}function k(){var e=x();return 0===e?0:d?Math.ceil(e/C()):Math.ceil(S()/C())+1}function T(e){var t=e*C();return d?t:Math.min(t,S())}function M(e){var t=E(e),r=k();return!d&&t>=S()?r-1:Math.min(r-1,Math.round(t/C()))}function O(e){var t=x();if(!d||0===t)return e;var r=o(e-E(s),t);return r>t/2&&(r-=t),s+r}function j(e){return l.label.replace("{i}",e+1).replace("{n}",x())}function q(){for(var e=0;e<u.length;e++){var t=u[e];t.getAttribute("role")||b(t,"role","group"),t.getAttribute("aria-roledescription")||b(t,"aria-roledescription","slide"),t.getAttribute("aria-label")||t.getAttribute("aria-labelledby")||b(t,"aria-label",j(e))}}function L(){for(var e=E(s),t=c&&"function"==typeof c.visible?c.visible():[e],r=0;r<u.length;r++)b(u[r],"aria-current",r===e?"true":null),l.inert&&b(u[r],"inert",-1===t.indexOf(r)?"":null)}function P(r,n){var o=s;s=r,L(),n&&n.silent||(r=>{var n={index:s,physical:E(s),previous:r,track:H};"function"==typeof e.emit?e.emit(t,i,n):"function"==typeof i.dispatchEvent&&"function"==typeof CustomEvent&&i.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0}))})(o)}function G(){return!d&&C()>1}function J(e,t){if(w||0===x())return!1;if(!d&&(e<0||e>S()))return!1;var r=d?e:E(e);return G()&&(r=T(M(r))),!(c&&!1===c.goTo(E(r),!(!t||!t.instant))||(r===s||P(r,t),0))}function D(e){if(d)return J(s+C(),e);var t=M(s);return t<k()-1?J(T(t+1),e):!!p&&J(0,e)}function N(e){if(d)return J(s-C(),e);var t=M(s);return t>0?J(T(t-1),e):!!p&&J(T(k()-1),e)}function R(){try{return"rtl"===getComputedStyle(i).direction}catch(e){return"rtl"===(i.getAttribute("dir")||document.documentElement&&document.documentElement.getAttribute("dir"))}}function _(){var t=f+":"+x();c&&(c.layout(),f="function"==typeof c.perView?Math.max(1,c.perView()):1),d||(s=E(s)),(()=>{for(var e=C(),t=x(),r=S(),n=e>1&&!d,o=0;o<t;o++){var i=u[o].style;i&&(n?i.setProperty("--gr-snap",o===t-1?"end":o%e===0&&(o<r||!o)?"start":"none"):i.removeProperty("--gr-snap"))}})(),c&&c.goTo(E(s),!0),t!==f+":"+x()&&"function"==typeof e.emit&&e.emit(r,i,{perView:f,count:x(),pages:k(),track:H})}function B(){return w||(u=A(),q(),_(),L()),H}var H={el:i,goTo:J,goToPage:(e,t)=>J(T(Math.max(0,Math.min(e,k()-1))),t),next:D,prev:N,physical:E,pageOf:M,pageStart:T,sync:e=>{function r(t){if(!y&&t.detail&&t.detail.track===H){y=!0;try{e.index!==t.detail.index&&e.goTo(t.detail.index)}finally{y=!1}}}function n(t){if(!y&&t.detail&&t.detail.track===e){y=!0;try{s!==t.detail.index&&J(t.detail.index)}finally{y=!1}}}return v.add(i,t,r),v.add(e.el,t,n),()=>{i.removeEventListener(t,r),e.el.removeEventListener(t,n)}},refresh:B,destroy:()=>{if(!w){w=!0,c&&"function"==typeof c.destroy&&c.destroy(),c=null,v.removeAll();for(var t=0;t<h.length;t++)h[t].disconnect();h=[];for(var r=0;r<u.length;r++)e.motion&&e.motion.clear(u[r]),u[r].style&&u[r].style.removeProperty("--gr-snap");e.motion&&e.motion.clear(i),g.restore()}},_report:t=>{var r=x();if(e.motion){for(var n=0;n<r;n++){var a=Math.abs(t-n);d&&r&&(a=Math.min(a,r-a)),e.motion.set(u[n],a>=1?0:1-a)}e.motion.set(i,r>1?t/(r-1):1)}(e=>{var t=x();if(t&&c&&c.live&&!("function"==typeof c.moving&&c.moving()||"function"==typeof c.queued&&c.queued())){var r=O(d?o(Math.round(e),t):G()?(e=>{for(var t=0,r=k(),n=0;n<r;n++)Math.abs(e-T(n))<Math.abs(e-T(t))&&(t=n);return T(t)})(e):E(Math.round(e)));r!==s&&P(r)}})(t)},_settle:e=>{if(!w){var t=O(e);t!==s?P(t):L()}},_engine:()=>c};Object.defineProperty(H,"index",{get:()=>s}),Object.defineProperty(H,"count",{get:x}),Object.defineProperty(H,"perView",{get:()=>f}),Object.defineProperty(H,"last",{get:S}),Object.defineProperty(H,"pages",{get:k}),Object.defineProperty(H,"step",{get:C}),Object.defineProperty(H,"slides",{get:()=>u.slice()}),Object.defineProperty(H,"loop",{get:()=>!!d}),Object.defineProperty(H,"moving",{get:()=>!(!c||"function"!=typeof c.moving||!c.moving())}),Object.defineProperty(H,"rewind",{get:()=>p}),u=A(),s=l.index||0;var F=e.engines[l.engine];return F?c=F(H,i,l)||null:e.warn("движок «"+l.engine+"» не зарегистрирован — дорожка без движения"),d=!!(l.loop&&c&&c.loop),l.loop&&!d&&(p=!0),q(),_(),L(),l.keyboard&&v.add(i,"keydown",e=>{var t=e.key,r=R()?"ArrowRight":"ArrowLeft",n=!1;t===(R()?"ArrowLeft":"ArrowRight")?n=D():t===r?n=N():"Home"===t?n=J(d?s-E(s):0):"End"===t&&(n=J(d?s-E(s)+x()-1:S())),n&&e.preventDefault&&e.preventDefault()}),(()=>{if("function"==typeof MutationObserver&&((m=new MutationObserver(()=>{B()})).observe(i,{childList:!0}),h.push(m)),"function"==typeof ResizeObserver){var e=new ResizeObserver(()=>{_(),L()});e.observe(i),h.push(e)}})(),H}e.track=i,e.track.CHANGE=t,e.track.LAYOUT=r,e.defineWidget("track",{needs:["motion"]},(e,t)=>i(e,t))})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("./griffinjs-core.js")),(e=>{"use strict";var t={autoplay:0,loop:!1,rewind:!1,step:1,pauseOnHover:!0,dots:!0,engine:"scroll",dotLabel:"Страница {i}",pauseLabel:"Пауза"};e.defineWidget("slider",{needs:["track","motion"]},(r,n)=>{var o=e.merge(t,n),i=r.querySelector(".gr-track")||r.firstElementChild;if(!i)throw new Error("у слайдера нет дорожки");var a=e.track(i,{loop:o.loop,rewind:o.rewind,step:o.step,engine:o.engine,index:o.index||0}),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=[],d=[],p=r.querySelector("[data-gr-prev]"),g=r.querySelector("[data-gr-next]"),v=r.querySelector("[data-gr-dots]"),h=r.querySelector("[data-gr-pause]"),m=null,y=!1,w=0;function b(e,t){var r=document.createElement("button");return r.setAttribute("type","button"),r.setAttribute("class",e),r.setAttribute("aria-label",t),c.push(r),r}function A(){for(var e=a.pageOf(a.index),t=a.physical(a.index),r=0;r<d.length;r++)s(d[r],"aria-current",r===e?"true":null);a.loop||a.rewind||(p&&s(p,"aria-disabled",t<=0?"true":null),g&&s(g,"aria-disabled",t>=a.last?"true":null))}function x(){if(v&&o.dots){for(var e=0;e<d.length;e++)d[e].remove(),c.splice(c.indexOf(d[e]),1);d=[];for(var t=0;t<a.pages;t++){var r=b("gr-slider-dot",o.dotLabel.replace("{i}",t+1));r.setAttribute("data-gr-page",String(t)),v.appendChild(r),d.push(r)}}}function S(){return!!m&&m.running()}function E(){return!m||y||w>0||(m.start(),s(r,"data-gr-state","playing")),q}function C(){return m?(m.pause(),s(r,"data-gr-state","paused"),q):q}function k(){m&&S()&&m.restart()}function T(){w+=1,C()}function M(){w=Math.max(0,w-1),E()}function O(){return k(),a.next()}function j(){return k(),a.prev()}var q={el:r,track:a,goTo:(e,t)=>a.goTo(e,t),next:O,prev:j,play:E,pause:C,playing:S,destroy:()=>{m&&m.stop(),m=null,u.removeAll();for(var e=0;e<c.length;e++)c[e].remove();c=[],d=[],a.destroy(),l.restore()}};return r.getAttribute("role")||s(r,"role","region"),s(r,"aria-roledescription","carousel"),s(i,"aria-live",o.autoplay?"off":"polite"),s(r,"data-gr-state","ready"),x(),p&&f(p,"click",()=>{j()}),g&&f(g,"click",()=>{O()}),v&&f(v,"click",t=>{var r=e.closest(t.target,".gr-slider-dot");if(r&&v){var n=Number(r.getAttribute("data-gr-page"));isNaN(n)||(a.goToPage(n),k())}}),f(i,e.track.CHANGE,()=>{A()}),f(i,e.track.LAYOUT,()=>{x(),A()}),A(),!o.autoplay||(()=>{try{return"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}})()||a.count<2||(h||((h=b("gr-slider-pause",o.pauseLabel)).setAttribute("data-gr-pause",""),h.textContent="❚❚",r.appendChild(h)),s(h,"aria-pressed","false"),m=e.motion.time({duration:o.autoplay,loop:!0,el:h,onEnd:()=>{a.moving||a.next()||a.goTo(0)}}),f(h,"click",()=>{y=!y,h&&s(h,"aria-pressed",y?"true":"false"),y?C():E()}),o.pauseOnHover&&(f(r,"pointerenter",T),f(r,"pointerleave",M)),f(r,"focusin",T),f(r,"focusout",M),f(document,"visibilitychange",()=>{document.hidden?T():M()}),E()),q})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";function t(e,t){if("function"==typeof e.getBoundingClientRect&&"function"==typeof t.getBoundingClientRect){var r=e.getBoundingClientRect(),n=t.getBoundingClientRect(),o=e.scrollLeft||0,i=o;n.left<r.left?i=o-(r.left-n.left):n.right>r.right&&(i=o+(n.right-r.right)),i!==o&&("function"==typeof e.scrollTo?e.scrollTo({left:i,behavior:"smooth"}):e.scrollLeft=i)}}e.defineWidget("gallery",{needs:["track","slider"]},(r,n)=>{var o=r.querySelector(".gr-gallery-thumbs"),i=e.widgets.slider(r,n,e),a=i.track,l=[],u=e.recorder(),s=e.listeners(),f=u.set,c=s.add;function d(){for(var e=a.physical(a.index),r=0;r<l.length;r++){var n=r===e;f(l[r],"aria-current",n?"true":null),n&&t(o,l[r])}}if(o){for(var p=o.children,g=0;g<p.length;g++)l.push(p[g]),f(p[g],"aria-label",p[g].getAttribute("aria-label")||"Слайд "+(g+1));c(o,"click",e=>{for(var t=0;t<l.length;t++)if(l[t]===e.target||"function"==typeof l[t].contains&&l[t].contains(e.target))return void i.goTo(t)}),c(a.el,e.track.CHANGE,d),d()}return{el:r,slider:i,track:a,goTo:i.goTo,next:i.next,prev:i.prev,destroy:()=>{s.removeAll(),i.destroy(),u.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t="data-gr-lightbox",r=/\.(mp4|webm|ogv|mov)(\?|#|$)/i,n=/youtube\.com|youtu\.be|vimeo\.com/i,o=null,i=null,a=null,l=e.listeners(),u=l.add;function s(e,t){return e&&e.getAttribute&&e.getAttribute("data-gr-type")||(r.test(t)?"video":n.test(t)?"iframe":"image")}function f(e){var t=e.getAttribute("href")||e.getAttribute("data-gr-src")||"",r=e.querySelector?e.querySelector("img"):null;return{src:t,type:s(e,t),caption:e.getAttribute("data-gr-caption")||"",alt:e.getAttribute("data-gr-alt")||r&&r.getAttribute("alt")||""}}function c(e,t,r){var n=document.createElement(e);for(var o in t&&n.setAttribute("class",t),r||{})Object.prototype.hasOwnProperty.call(r,o)&&n.setAttribute(o,r[o]);return n}function d(e){return"video"===e.type?c("video",null,{src:e.src,controls:"",playsinline:""}):"iframe"===e.type?c("iframe",null,{src:e.src,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",title:e.caption||e.alt||"Видео"}):c("img",null,{src:e.src,alt:e.alt})}function p(e,t){return e+1+" / "+t}function g(t,r,n){m(),n=n||{},r=r||0;var a=t.length;if(0===a)return null;o=c("dialog","gr-modal gr-lightbox",{"aria-label":n.label||"Просмотр"});for(var l=c("div","gr-track gr-lightbox-track",{tabindex:"0"}),s=0;s<a;s++){var f=c("figure","gr-slide gr-lightbox-item");if(f.appendChild(d(t[s])),t[s].caption){var g=c("figcaption","gr-lightbox-caption");g.textContent=t[s].caption,f.appendChild(g)}l.appendChild(f)}o.appendChild(l);var v=c("button","gr-lightbox-close",{type:"button","aria-label":"Закрыть"});v.textContent="×",o.appendChild(v),u(v,"click",m);var w=null;if(a>1){var b=c("button","gr-lightbox-prev",{type:"button","aria-label":"Назад"}),A=c("button","gr-lightbox-next",{type:"button","aria-label":"Вперёд"});b.textContent="‹",A.textContent="›",(w=c("div","gr-lightbox-counter",{"aria-live":"polite"})).textContent=p(r,a),o.appendChild(b),o.appendChild(A),o.appendChild(w),u(b,"click",()=>{i&&i.prev()}),u(A,"click",()=>{i&&i.next()})}return u(o,"click",t=>{t.target!==o&&t.target!==l&&e.closest(t.target,".gr-lightbox-item")!==t.target||m()}),u(o,"keydown",e=>{i&&e.target!==l&&("ArrowRight"===e.key?(i.next(),e.preventDefault()):"ArrowLeft"===e.key&&(i.prev(),e.preventDefault()))}),u(o,"close",h),document.body.appendChild(o),a>1&&(i=e.track(l,{loop:!0,index:r}),u(l,e.track.CHANGE,e=>{w&&(w.textContent=p(e.detail.physical,a))})),"function"==typeof o.showModal?o.showModal():o.setAttribute("open",""),y}function v(e){a=e;for(var r=(e=>{var r=e.getAttribute(t);if(!r)return[e];for(var n=document.querySelectorAll("["+t+'="'+r+'"]'),o=[],i=0;i<n.length;i++)o.push(n[i]);return o})(e),n=[],o=0,i=0;i<r.length;i++)r[i]===e&&(o=i),n.push(f(r[i]));return g(n,o)}function h(){o&&((()=>{if(o){for(var e=o.querySelectorAll("video"),t=o.querySelectorAll("iframe"),r=0;r<e.length;r++)"function"==typeof e[r].pause&&e[r].pause();for(var n=0;n<t.length;n++)t[n].setAttribute("src","about:blank")}})(),i&&i.destroy(),i=null,l.removeAll(),o.remove(),o=null,a&&"function"==typeof a.focus&&a.focus(),a=null)}function m(){o&&("function"==typeof o.close&&o.hasAttribute("open")?o.close():h())}var y={open:g,openFrom:v,close:m,_dialog:()=>o,_track:()=>i};e.lightbox=y,e.needs("lightbox",["track"]),e.on("click","["+t+"]",(e,t)=>!(e.metaKey||e.ctrlKey||e.shiftKey||e.button||(e.preventDefault&&e.preventDefault(),v(t),0))),e.use({destroy:h})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";e.defineWidget("parallax",{needs:["motion"]},t=>{var r=e.motion.viewport(t);return{el:t,update:r.update,destroy:r.destroy}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={hover:!0,delay:120,hide:250,bp:"md"},r=0;function n(e){return!!e&&"SUMMARY"===e.tagName}function o(e){return!!e&&"DETAILS"===e.tagName}function i(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function a(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}function l(e){return!!e&&!e.hasAttribute("disabled")&&"-1"!==e.getAttribute("tabindex")&&"true"!==e.getAttribute("aria-hidden")}function u(e){return!(!e||"function"!=typeof e.focus)&&(e.focus(),document.activeElement===e)}e.defineWidget("megamenu",{needs:["media"]},(s,f)=>{var c=e.merge(t,f),d=e.recorder(),p=e.listeners(),g=d.set,v=p.add,h=[],m=!1,y=null,w=null,b=null,A=null,x=null;function S(e){for(var t=e;t&&t!==s;){for(var r=0;r<h.length;r++)if(h[r].el===t)return h[r];t=t.parentNode}return null}function E(){for(var e=0;e<h.length;e++)if(h[e].el.open)return h[e];return null}function C(t){t.panel.getAttribute("id")||g(t.panel,"id","gr-megamenu-"+ ++r),g(t.summary,"aria-controls",t.panel.getAttribute("id")),g(t.summary,"aria-expanded",t.el.open?"true":"false"),v(t.el,"toggle",()=>{(t=>{var r=!!t.el.open;if(g(t.summary,"aria-expanded",r?"true":"false"),r){for(var n=0;n<h.length;n++)h[n]!==t&&T(h[n]);(t=>{var r=t.el.getAttribute("data-gr-src");r&&!t.loaded&&(t.loaded=!0,"function"!=typeof fetch?(e.warn("мегаменю: fetch недоступен, панель "+r+" не загружена"),g(t.el,"data-gr-state","error")):(g(t.el,"data-gr-state","loading"),fetch(r).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.text()}).then(e=>{t.panel.innerHTML=e,g(t.el,"data-gr-state","ready")},n=>{e.warn("мегаменю: панель "+r+" не загружена: "+(n&&n.message)),g(t.el,"data-gr-state","error")})))})(t)}else M(t)})(t)}),v(t.summary,"click",e=>{((e,t)=>{t.el.open&&(e.preventDefault(),t.closing?k(t):T(t))})(e,t)})}function k(e){q(),e&&(e.closing&&(M(e),g(e.el,"data-gr-state",e.was)),e.el.open||(e.el.open=!0))}function T(e){if(e&&e.el.open&&!e.closing){var t=(e=>{var t="";try{t=getComputedStyle(e).getPropertyValue("--gr-transition")}catch(e){}var r=/(\d*\.?\d+)(m?s)/.exec(t);return r?parseFloat(r[1])*("s"===r[2]?1e3:1):0})(e.panel);t?(e.was=e.el.getAttribute("data-gr-state"),e.onEnd=t=>{t.target===e.panel&&O(e)},e.closing=setTimeout(()=>{O(e)},t+50),e.panel.addEventListener("transitionend",e.onEnd),e.panel.addEventListener("animationend",e.onEnd),g(e.el,"data-gr-state","closing")):e.el.open=!1}}function M(e){e.closing&&(clearTimeout(e.closing),e.closing=null,e.panel.removeEventListener("transitionend",e.onEnd),e.panel.removeEventListener("animationend",e.onEnd))}function O(e){e.closing&&(M(e),g(e.el,"data-gr-state",e.was),e.el.open=!1)}function j(){q();for(var e=0;e<h.length;e++)T(h[e])}function q(){y&&clearTimeout(y),w&&clearTimeout(w),y=w=null,b=null}function L(e){w&&clearTimeout(w),w=null,b!==e&&(y&&clearTimeout(y),b=e,y=setTimeout(()=>{y=null,b=null,k(e)},c.delay))}function P(e){for(var t=[],r=e.panel.querySelectorAll("a[href], button, input, select, textarea, summary, [tabindex]"),n=0;n<r.length;n++)l(r[n])&&t.push(r[n]);return t}function G(e,t,r){var n=null===t?r>0?-1:e.length:e.indexOf(t);if(-1===n&&null!==t)return!1;for(var o=0;o<e.length;o++)if(u(e[n=(n+r+e.length)%e.length]))return!0;return!1}(()=>{for(var e=s.querySelectorAll("details"),t=0;t<e.length;t++){for(var r=e[t],i=!1,a=r.parentNode;a&&a!==s;){if(o(a)){i=!0;break}a=a.parentNode}if(!i){for(var l=null,u=null,f=0;f<r.children.length;f++)!l&&n(r.children[f])?l=r.children[f]:l&&!u&&(u=r.children[f]);l&&u&&h.push({el:r,summary:l,panel:u,loaded:!1})}}})();for(var J=0;J<h.length;J++)C(h[J]);return x=e.media.on(c.bp,e=>{m=e,q()}),v(s,"pointerover",e=>{if(m&&c.hover&&i(e)){var t=S(e.target),r=E();if(t)return t===r||t===b?(w&&clearTimeout(w),w=null,void(t.closing&&k(t))):void L(t)}}),v(s,"pointerout",e=>{if(m&&c.hover&&i(e)){var t=e.relatedTarget;t&&a(s,t)&&S(t)||(y&&clearTimeout(y),y=null,b=null,w||(w=setTimeout(()=>{w=null,j()},c.hide)))}}),v(s,"pointermove",e=>{if(m&&c.hover&&i(e)){var t={x:e.clientX,y:e.clientY};if(b&&((e,t)=>{if(!A||!t||"function"!=typeof t.panel.getBoundingClientRect)return!1;var r=t.panel.getBoundingClientRect();if(!r.width||e.y<=A.y||e.y>=r.top)return!1;var n=r.left-A.x,o=r.top-A.y,i=r.right-A.x,a=r.top-A.y,l=e.x-A.x,u=e.y-A.y;return(n*u-o*l)*(i*u-a*l)<=0})(t,E())){var r=b;b=null,L(r)}A=t}}),v(s,"keydown",e=>{var t=e.key,r=e.target,i=S(r),f=i&&!n(r);if("Escape"===t){var c=i&&i.el.open?i:E();if(!c)return;return T(c),u(c.summary),void e.preventDefault()}if(f){if(!m)return;var d=P(i);if("ArrowDown"===t)G(d,r,1);else{if("ArrowUp"!==t)return;G(d,r,-1)}e.preventDefault()}else if(m){var p=(()=>{for(var e=[],t=(()=>{if(!h.length)return s;for(var e=h[0].el.parentNode;e&&e!==s;){for(var t=!0,r=0;r<h.length;r++)if(!a(e,h[r].el)){t=!1;break}if(t)return e;e=e.parentNode}return s})().querySelectorAll("a[href], button, summary"),r=0;r<t.length;r++){for(var i=t[r],u=null,f=i.parentNode;f&&f!==s;){if(o(f)){u=f;break}f=f.parentNode}(!u||n(i)&&i.parentNode===u&&S(u))&&l(i)&&e.push(i)}return e})();if(-1!==p.indexOf(r)){if("ArrowRight"===t)G(p,r,1);else if("ArrowLeft"===t)G(p,r,-1);else if("Home"===t)G(p,null,1);else if("End"===t)G(p,null,-1);else{if("ArrowDown"!==t||!i)return;k(i),u(P(i)[0])}e.preventDefault()}}}),v(s,"focusout",e=>{if(m){var t=e.relatedTarget;t&&a(s,t)||j()}}),v(document,"pointerdown",e=>{a(s,e.target)||j()},!0),g(s,"data-gr-state","ready"),{el:s,items:h,open:k,close:T,closeAll:j,current:E,destroy:()=>{q();for(var e=0;e<h.length;e++)O(h[e]);x&&x(),p.removeAll(),d.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={role:"menu",hover:!1,delay:100,hide:300,side:"bottom",align:"start",gap:4},r=0;function n(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function o(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}function i(e){return!!e&&!e.hasAttribute("disabled")&&"true"!==e.getAttribute("aria-disabled")}function a(e){return!(!e||"function"!=typeof e.focus)&&(e.focus(),document.activeElement===e)}e.defineWidget("dropdown",{needs:["anchor"]},(l,u)=>{var s=e.merge(t,u),f=e.recorder(),c=e.listeners(),d=f.set,p=c.add,g=l.firstElementChild,v=g&&g.nextElementSibling;if(!g||!v)throw new Error("у дропдауна нет кнопки и панели");var h="DETAILS"===l.tagName?"details":v.hasAttribute("popover")?"popover":"css",m=!1,y=!1,w=null,b=null;function A(){return"details"===h?!!l.open:m}function x(){for(var e=[],t=v.querySelectorAll('a[href], button, [role="menuitem"], [role="menuitemcheckbox"], [role="menuitemradio"]'),r=0;r<t.length;r++)i(t[r])&&e.push(t[r]);return e}function S(){"popover"===h&&e.anchor&&e.anchor.place(v,g,{side:s.side,align:s.align,gap:s.gap})}function E(e){"details"!==h&&(m=e),e||k(),d(g,"aria-expanded",e?"true":"false"),d(l,"data-gr-state",e?"open":"ready"),e&&S(),e&&y&&a(x()[0]),y=!1}function C(e){e.target===v&&T()}function k(){b&&(clearTimeout(b),b=null,v.removeEventListener("transitionend",C),v.removeEventListener("animationend",C))}function T(){b&&(k(),l.open=!1)}function M(){"popover"===h&&A()&&S()}function O(){if(P(),b)return k(),void d(l,"data-gr-state","open");if(!A())if("details"===h)l.open=!0;else if("popover"===h)try{v.showPopover()}catch(e){E(!0)}else E(!0)}function j(){if(P(),A())if("details"===h)(()=>{if(!b){var e=(e=>{var t="";try{t=getComputedStyle(e).getPropertyValue("--gr-transition")}catch(e){}var r=/(\d*\.?\d+)(m?s)/.exec(t);return r?parseFloat(r[1])*("s"===r[2]?1e3:1):0})(v);e?(b=setTimeout(T,e+50),v.addEventListener("transitionend",C),v.addEventListener("animationend",C),d(l,"data-gr-state","closing")):l.open=!1}})();else if("popover"===h)try{v.hidePopover()}catch(e){E(!1)}else E(!1)}function q(){A()?j():O()}function L(e,t,r){var n=null===t?r>0?-1:e.length:e.indexOf(t);if(-1===n&&null!==t)return!1;for(var o=0;o<e.length;o++)if(a(e[n=(n+r+e.length)%e.length]))return!0;return!1}function P(){w&&clearTimeout(w),w=null}return v.getAttribute("id")||d(v,"id","gr-dropdown-"+ ++r),d(g,"aria-controls",v.getAttribute("id")),(()=>{if("menu"===s.role){var e=v.querySelector("ul, ol")||v;d(g,"aria-haspopup","menu"),d(e,"role","menu");for(var t=e.querySelectorAll("li"),r=0;r<t.length;r++)d(t[r],"role","none");for(var n=e.querySelectorAll("hr"),o=0;o<n.length;o++)d(n[o],"role","separator");for(var i=e.querySelectorAll("a[href], button"),a=0;a<i.length;a++)i[a].getAttribute("role")||d(i[a],"role",i[a].hasAttribute("aria-checked")?"menuitemcheckbox":"menuitem")}})(),"details"===h?(p(l,"toggle",()=>{E(!!l.open)}),p(g,"click",e=>{"details"===h&&l.open&&(e.preventDefault(),b?O():j())})):"popover"===h?(p(v,"beforetoggle",e=>{"open"===e.newState&&S()}),p(v,"toggle",e=>{E("open"===e.newState)}),p(document,"scroll",M,!0),"undefined"!=typeof window&&p(window,"resize",M)):p(g,"click",()=>{q()}),p(l,"keydown",e=>{var t=e.key,r=e.target;if("Escape"===t){if(!A())return;return j(),a(g),void e.preventDefault()}if(r!==g){if(o(v,r)&&A()){var n=x();if("ArrowDown"===t)L(n,r,1);else if("ArrowUp"===t)L(n,r,-1);else if("Home"===t)L(n,null,1);else if("End"===t)L(n,null,-1);else{if(1!==t.length||e.ctrlKey||e.metaKey||e.altKey||" "===t)return;((e,t,r)=>{for(var n=e.indexOf(t),o=1;o<=e.length;o++){var i=e[(n+o)%e.length];if((i.textContent||"").trim().toLowerCase().charAt(0)===r.toLowerCase()&&a(i))return!0}})(n,r,t)}e.preventDefault()}}else"ArrowDown"===t||"ArrowUp"===t?(y=!0,A()?a("ArrowDown"===t?x()[0]:x()[x().length-1]):O(),e.preventDefault()):"Enter"!==t&&" "!==t||(y=!A())}),p(l,"pointerover",e=>{s.hover&&n(e)&&(P(),A()||(w=setTimeout(()=>{w=null,O()},s.delay)))}),p(l,"pointerout",e=>{s.hover&&n(e)&&(e.relatedTarget&&o(l,e.relatedTarget)||(P(),w=setTimeout(()=>{w=null,j()},s.hide)))}),p(l,"focusout",e=>{e.relatedTarget&&o(l,e.relatedTarget)||j()}),p(document,"pointerdown",e=>{o(l,e.target)||j()},!0),E(A()),{el:l,trigger:g,panel:v,kind:h,open:O,close:j,toggle:q,isOpen:A,destroy:()=>{P(),T(),c.removeAll(),"popover"===h&&e.anchor&&e.anchor.clear(v),f.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={delay:150,side:"top",align:"center",gap:6};function r(e){return!e.pointerType||"mouse"===e.pointerType||"pen"===e.pointerType}function n(e,t){for(var r=t;r;){if(r===e)return!0;r=r.parentNode}return!1}e.defineWidget("tooltip",{needs:["anchor"]},(o,i)=>{var a=e.merge(t,i),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=o.firstElementChild,d=o.querySelector('[role="tooltip"]')||o.lastElementChild;if(!c||!d||d===c)throw new Error("у подсказки нет якоря и текста");var p=!1,g=null;function v(){g&&clearTimeout(g),g=null}function h(){if(v(),!p){p=!0;try{d.showPopover()}catch(e){}s(o,"data-gr-state","open"),e.anchor&&e.anchor.place(d,c,{side:a.side,align:a.align,gap:a.gap})}}function m(){if(v(),p){p=!1;try{d.hidePopover()}catch(e){}e.anchor&&e.anchor.clear(d),s(o,"data-gr-state","ready")}}function y(){p&&e.anchor&&e.anchor.place(d,c,{side:a.side,align:a.align,gap:a.gap})}return d.hasAttribute("popover")||s(d,"popover","manual"),f(o,"pointerover",e=>{r(e)&&(v(),p||(a.delay>0?g=setTimeout(()=>{g=null,h()},a.delay):h()))}),f(o,"pointerout",e=>{r(e)&&(e.relatedTarget&&n(o,e.relatedTarget)||m())}),f(o,"focusin",()=>{h()}),f(o,"focusout",e=>{e.relatedTarget&&n(o,e.relatedTarget)||m()}),f(d,"toggle",e=>{"closed"===e.newState&&p&&m()}),f(document,"keydown",e=>{"Escape"===e.key&&p&&m()},!0),f(document,"scroll",y,!0),"undefined"!=typeof window&&f(window,"resize",y),s(o,"data-gr-state","ready"),{el:o,tip:d,show:h,hide:m,destroy:()=>{m(),u.removeAll(),l.restore()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={hash:!1,media:!0,lock:!0,grow:!1},r="data-gr-open",n=[],o=e.recorder(),i=e.listeners(),a=0;function l(e){var t=n[n.length-1];t&&(((e,t)=>{for(var r=e;r&&r!==t;){try{var n=getComputedStyle(r);if(("auto"===n.overflowY||"scroll"===n.overflowY)&&r.scrollHeight>r.clientHeight)return!0}catch(e){}r=r.parentNode}return!1})(e.target,t.el)||"function"==typeof e.preventDefault&&e.preventDefault())}function u(){for(var e=0,t=0;t<n.length;t++)n[t].o.lock&&(e+=1);e&&!a?(o.set(document.documentElement,"data-gr-state","locked"),i.add(document,"touchmove",l,{passive:!1})):!e&&a&&(o.restore(),i.removeAll()),a=e}function s(t){var r="string"==typeof t?document.getElementById((t||"").replace(/^#/,"")):t;return r?e.instance(r,"dialog")||e.mount(r,"dialog"):null}function f(t){var r=s(t);return r?r.open():(e.warn("окно не найдено: "+t),null)}function c(){for(var t=e._mounted(),r=0;r<t.length;r++)"dialog"===t[r].name&&t[r].instance&&t[r].instance.onPopState()}e.defineWidget("dialog",(r,o)=>{var i=e.merge(t,o),a=e.recorder(),l=e.listeners(),s=a.set,f=l.add,c=!1,d=[],p=!1,g={el:r,o:i},v=null,h=0,m=null;function y(){return r.getAttribute("id")||""}function w(){return r.hasAttribute("open")}function b(){for(var e=0;e<d.length;e++)d[e].el.setAttribute("src",d[e].src);d=[]}function A(){m=null,v&&v.observe(r)}function x(){return"undefined"!=typeof location&&location.hash==="#"+y()}function S(){return w()||(b(),"function"==typeof r.showModal?r.showModal():r.setAttribute("open",""),n.push(g),u(),s(r,"data-gr-state","open"),(()=>{var t=r.getAttribute("data-gr-src");if(t&&!c){if(c=!0,"function"!=typeof fetch)return e.warn("окно: fetch недоступен, "+t+" не загружен"),void s(r,"data-gr-state","error");var n=r.querySelector("[data-gr-content]")||r;s(r,"data-gr-state","loading"),fetch(t).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.text()}).then(e=>{n.innerHTML=e,s(r,"data-gr-state",w()?"open":"ready")},n=>{e.warn("окно: "+t+" не загружен: "+(n&&n.message)),s(r,"data-gr-state","error")})}})(),(()=>{if(i.hash&&y()&&"undefined"!=typeof history&&!x())try{history.pushState(null,"","#"+y())}catch(e){}})(),e.emit("griffin:open",r,{dialog:r})),k}function E(){return w()?("function"==typeof r.close?r.close():(r.removeAttribute("open"),C()),k):k}function C(){var t=n.indexOf(g);-1!==t&&n.splice(t,1),u(),(()=>{if(i.media){for(var e=r.querySelectorAll("video, audio"),t=r.querySelectorAll("iframe"),n=0;n<e.length;n++)"function"==typeof e[n].pause&&e[n].pause();for(var o=0;o<t.length;o++){var a=t[o].getAttribute("src");a&&"about:blank"!==a&&(d.push({el:t[o],src:a}),t[o].setAttribute("src","about:blank"))}}})(),(()=>{if(i.hash&&!p&&"undefined"!=typeof history&&x())try{history.back()}catch(e){}})(),p=!1,"loading"!==r.getAttribute("data-gr-state")&&s(r,"data-gr-state","ready"),e.emit("griffin:close",r,{dialog:r})}var k={el:r,open:S,close:E,isOpen:w,onPopState:()=>{i.hash&&w()&&!x()&&(p=!0,E())},destroy:()=>{var e=n.indexOf(g);-1!==e&&n.splice(e,1),v&&(v.disconnect(),v=null),m&&m.cancel(),u(),b(),l.removeAll(),a.restore()}};return f(r,"close",C),s(r,"data-gr-state",w()?"open":"ready"),i.grow&&"function"==typeof ResizeObserver&&(v=new ResizeObserver(()=>{var e=r.getBoundingClientRect().height,t=h;if(h=e,t&&e&&w()&&!(Math.abs(e-t)<=24)){var n=(()=>{try{return"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}})()?0:(e=>{var t="";try{var r=getComputedStyle(e);t=r.getPropertyValue("--gr-modal-transition")||r.getPropertyValue("--gr-transition")}catch(e){}var n=/(\d*\.?\d+)(m?s)/.exec(t);return n?parseFloat(n[1])*("s"===n[2]?1e3:1):0})(r);n&&"function"==typeof r.animate&&(v.unobserve(r),(m=r.animate([{blockSize:t+"px"},{blockSize:e+"px"}],{duration:n,easing:"ease"})).onfinish=m.oncancel=A)}})).observe(r),w()&&(n.push(g),u()),i.hash&&x()&&!w()&&S(),k}),e.dialog={open:f,close:e=>{var t=s(e);return t?t.close():null},closeAll:()=>{for(;n.length;){var t=e.instance(n[n.length-1].el,"dialog");t?t.close():n.pop()}u()},top:()=>n.length?n[n.length-1].el:null,stack:()=>{for(var e=[],t=0;t<n.length;t++)e.push(n[t].el);return e},_popstate:c},e.on("click","["+r+"]",(e,t)=>!(e.metaKey||e.ctrlKey||e.shiftKey||e.button||(e.preventDefault&&e.preventDefault(),f(t.getAttribute(r)),0))),e.use({start:()=>{"undefined"!=typeof window&&window.addEventListener("popstate",c)},destroy:()=>{"undefined"!=typeof window&&window.removeEventListener("popstate",c),n=[],a=0,o.restore(),i.removeAll()}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={src:"",source:null,render:null,min:1,delay:200,empty:"",navigate:!1,highlight:!0,cache:!0,multiple:!1,free:!1,remove:"Убрать {label}"},r=0;function n(e,t,r){var n=document.createElement(e);for(var o in t&&n.setAttribute("class",t),r||{})Object.prototype.hasOwnProperty.call(r,o)&&n.setAttribute(o,r[o]);return n}e.defineWidget("combobox",(o,i)=>{var a=e.merge(t,i),l=e.recorder(),u=e.listeners(),s=l.set,f=u.add,c=o.querySelector("input");if(!c)throw new Error("у комбобокса нет поля ввода");var d=a.multiple?o.querySelector("select[multiple]"):null;if(a.multiple&&!d)throw new Error("для multiple нужен <select multiple> внутри");a.free&&!d&&(e.warn("комбобокс: free без multiple смысла не имеет — флаг пропущен"),a.free=!1);var p=o.querySelector('[role="listbox"]'),g=!1;p||(p=n("ul","gr-combobox-list"),o.appendChild(p),g=!0);var v=++r,h=[],m=[],y=-1,w=null,b=null,A=null,x={},S=!1,E=null,C=[];function k(){S||(S=!0,s(o,"data-gr-state","open"),s(c,"aria-expanded","true"))}function T(){M(),S&&(S=!1,_(-1),s(o,"data-gr-state","ready"),s(c,"aria-expanded","false"))}function M(){b&&clearTimeout(b),b=null}function O(){for(;p.firstElementChild;)p.firstElementChild.remove();m=[],y=-1,c.removeAttribute("aria-activedescendant")}function j(e,t,r){var o=a.render?a.render(e,t):null,i=o||n("li","gr-combobox-option");return o||((e,t,r,n)=>{var o=n&&r?t.toLowerCase().indexOf(r.toLowerCase()):-1;if(-1!==o){var i=document.createElement("mark");i.textContent=t.slice(o,o+r.length),o>0&&e.appendChild(document.createTextNode(t.slice(0,o))),e.appendChild(i),o+r.length<t.length&&e.appendChild(document.createTextNode(t.slice(o+r.length)))}else e.textContent=t})(i,e.label,t,a.highlight),i.setAttribute("role","option"),i.setAttribute("aria-selected","false"),i.setAttribute("id","gr-combobox-"+v+"-"+r),i}function q(e,t){if(O(),h=t,w=e,!t.length){if(!a.empty)return void T();var r=n("li","gr-combobox-empty",{role:"status"});return r.textContent=a.empty,p.appendChild(r),void k()}for(var o=null,i=0;i<t.length;i++){if(t[i].group&&t[i].group!==o){o=t[i].group;var l=n("li","gr-combobox-group",{role:"presentation"});l.textContent=o,p.appendChild(l)}var u=j(t[i],e,i);m.push(u),p.appendChild(u)}k()}function L(t){if(a.cache&&Object.prototype.hasOwnProperty.call(x,t))q(t,x[t]);else{A&&A.abort&&A.abort();var r,n=(A="function"==typeof AbortController?new AbortController:null)?A.signal:void 0;if("function"==typeof a.source)r=Promise.resolve(a.source(t,n));else{if(!a.src||"function"!=typeof fetch)return void e.warn("комбобокс: нет источника (src или source)");r=fetch(a.src.replace("{q}",encodeURIComponent(t)),{signal:n}).then(e=>{if(!e.ok)throw new Error("HTTP "+e.status);return e.json()})}var o=A;r.then(e=>{if(o===A){var r=(e=>{var t=e&&e.items?e.items:e,r=[];if(!t||!t.length)return r;for(var n=0;n<t.length;n++){var o=t[n];"string"==typeof o?r.push({value:o,label:o}):o&&"object"==typeof o&&r.push({value:void 0!==o.value?String(o.value):String(o.label||""),label:void 0!==o.label?String(o.label):String(o.value||""),href:o.href||null,group:o.group||null,data:o})}return r})(e);a.cache&&(x[t]=r),q(t,r)}},t=>{t&&"AbortError"===t.name||e.warn("комбобокс: запрос не удался: "+(t&&t.message))})}}function P(e){return M(),(e=(void 0===e?c.value:e).trim()).length<a.min?(T(),O(),h=[],w=null,F):(a.delay>0?b=setTimeout(()=>{b=null,L(e)},a.delay):L(e),F)}function G(e){for(var t=d.options,r=0;r<t.length;r++)if(t[r].value===e)return t[r];return null}function J(){for(;E.firstElementChild;)E.firstElementChild.remove();for(var e=d.options,t=0;t<e.length;t++)if(e[t].selected){var r=n("li","gr-combobox-tag"),o=n("span"),i=n("button","gr-combobox-tag-remove",{type:"button","data-gr-value":e[t].value,"aria-label":String(a.remove).replace("{label}",e[t].textContent)});o.textContent=e[t].textContent,i.textContent="×",r.appendChild(o),r.appendChild(i),E.appendChild(r)}}function D(){try{d.dispatchEvent(new Event("change",{bubbles:!0}))}catch(e){}}function N(e,t){var r=G(e);r||((r=n("option","",{value:e})).textContent=t,d.appendChild(r),C.push(r)),r.selected||(r.selected=!0,J(),D())}function R(e){var t=G(e);if(t){t.selected=!1;var r=C.indexOf(t);-1!==r&&(C.splice(r,1),t.remove()),J(),D()}}function _(e,t){y>=0&&m[y]&&m[y].setAttribute("aria-selected","false"),y=e,e<0||!m[e]?c.removeAttribute("aria-activedescendant"):(m[e].setAttribute("aria-selected","true"),c.setAttribute("aria-activedescendant",m[e].getAttribute("id")),t&&((e,t)=>{if("function"==typeof e.getBoundingClientRect&&"function"==typeof t.getBoundingClientRect){var r=e.getBoundingClientRect(),n=t.getBoundingClientRect(),o=e.scrollTop||0,i=o;n.top<r.top?i=o-(r.top-n.top):n.bottom>r.bottom&&(i=o+(n.bottom-r.bottom)),i!==o&&(e.scrollTop=i)}})(p,m[e]))}function B(t){var r=h[t];return r?(d?(N(r.value,r.label),c.value=""):c.value=r.value,T(),e.emit("griffin:select",c,{item:r,index:t,input:c}),a.navigate&&r.href&&"undefined"!=typeof location&&(location.href=r.href),F):F}function H(t){var r=e.closest(t,'[role="option"]');return r?m.indexOf(r):-1}var F={el:o,input:c,list:p,open:k,close:T,query:P,select:B,items:()=>h.slice(),values:()=>{var e=[];if(d)for(var t=0;t<d.options.length;t++)d.options[t].selected&&e.push(d.options[t].value);return e},destroy:()=>{M(),A&&A.abort&&A.abort(),u.removeAll(),O(),g&&p.remove(),E&&E.remove(),l.restore()}};return p.getAttribute("id")||s(p,"id","gr-combobox-list-"+v),s(p,"role","listbox"),s(c,"role","combobox"),s(c,"aria-autocomplete","list"),s(c,"aria-expanded","false"),s(c,"aria-controls",p.getAttribute("id")),s(c,"autocomplete","off"),s(o,"data-gr-state","ready"),d&&(E=n("ul","gr-combobox-tags",{role:"list"}),o.insertBefore(E,c),J(),f(E,"click",t=>{var r=e.closest(t.target,".gr-combobox-tag-remove");r&&(R(r.getAttribute("data-gr-value")),c.focus())})),f(c,"input",()=>{P()}),f(c,"keydown",e=>{var t=e.key;if("ArrowDown"===t||"ArrowUp"===t){if(!h.length)return;(e=>{if(h.length){if(!S)return k(),void _(e>0?0:h.length-1,!0);var t=y+e;t<0&&(t=h.length-1),t>=h.length&&(t=0),_(t,!0)}})("ArrowDown"===t?1:-1),e.preventDefault()}else if("Home"===t||"End"===t){if(!S||!h.length)return;_("Home"===t?0:h.length-1,!0),e.preventDefault()}else if("Enter"===t){var r=c.value.trim();if(S&&y>=0)B(y);else{if(!a.free||!r)return;N(r,r),c.value="",T()}e.preventDefault()}else if("Escape"===t){if(!S)return;T(),e.preventDefault()}else if("Tab"===t)T();else if("Backspace"===t&&d&&!c.value){for(var n=null,o=0;o<d.options.length;o++)d.options[o].selected&&(n=d.options[o]);n&&(R(n.value),e.preventDefault())}}),f(c,"focus",()=>{!S&&h.length&&c.value.trim()===w&&k()}),f(p,"click",e=>{var t=H(e.target);-1!==t&&(B(t),e.preventDefault())}),f(p,"pointerover",e=>{var t=H(e.target);-1!==t&&t!==y&&_(t,!1)}),f(p,"pointerdown",e=>{e.preventDefault&&e.preventDefault()}),f(document,"pointerdown",e=>{for(var t=e.target;t;){if(t===o)return;t=t.parentNode}T()},!0),F})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t="--gr-progress",r="--gr-range-from",n="--gr-range-to";function o(e,t){var r=parseFloat(e);return isNaN(r)?t:r}function i(e){return o(void 0===e.value||""===e.value?e.getAttribute("value"):e.value,o(e.getAttribute("min"),0))}function a(e,t,r){return o(e.getAttribute(t),r)}e.defineWidget("range",(l,u)=>{var s="INPUT"===l.tagName?[l]:[].slice.call(l.querySelectorAll('input[type="range"]')),f=e.listeners(),c=[];if(!s.length)throw new Error('внутри нет ни одного <input type="range">');function d(e){var t,r=a(e,"min",0),n=a(e,"max",100)-r;return t=n>0?(i(e)-r)/n:0,Math.round(1e4*Math.max(0,Math.min(1,t)))/1e4}function p(e){var t=s[e],r=a(t,"min",0),n=a(t,"max",100),i=c[e].value;t.value=""===i?e?n:r:Math.max(r,Math.min(n,o(i,r)))}function g(e){for(var t=0;t<c.length;t++)c[t]!==e&&(c[t].value=i(s[t]))}function v(e){var t=e.target,r=c.indexOf(t);p(r),"change"===e.type&&(h(s[r]),g(t)),m(),w()}function h(e){if(!(s.length<2)){var t=s[0],r=s[1];i(t)<=i(r)||(e===r?t.value=r.value:r.value=t.value)}}function m(){s.length>1?(l.style.setProperty(r,d(s[0])),l.style.setProperty(n,d(s[1]))):s[0].style.setProperty(t,d(s[0]))}function y(e){h(e&&e.target),m(),e&&(g(),w())}function w(){for(var t=[],r=0;r<s.length;r++)t.push(i(s[r]));e.emit("griffin:change",l,{values:t,from:t[0],to:t[t.length-1]})}if(f.add(l,"input",y),u&&u.fields)for(var b=String(u.fields).split(","),A=0;A<s.length;A++){var x=document.querySelector(b[A]||"#");if(!x)throw new Error("поле «"+b[A]+"» не найдено");c.push(x),p(A),f.add(x,"input",v),f.add(x,"change",v)}return y(),{el:l,inputs:s,update:y,destroy:()=>{f.removeAll(),l.style.removeProperty(r),l.style.removeProperty(n);for(var e=0;e<s.length;e++)s[e].style.removeProperty(t)}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js")),(e=>{"use strict";var t={none:"ascending",ascending:"descending",descending:"none"},r=/^\d{4}-\d{2}-\d{2}/;function n(e){return r.test(e)?Date.parse(e):Number(e)}function o(e){for(var t=[],r=0;r<e.children.length;r++)"TR"===e.children[r].tagName&&t.push(e.children[r]);return t}e.defineWidget("sortable",r=>{var i=r.querySelector("thead"),a=i?i.querySelectorAll("th[aria-sort]"):[];function l(){return r.querySelector("tbody")}if(!l()||!a.length)throw new Error("нужны tbody и заголовки с aria-sort");var u,s=e.recorder(),f=e.listeners();try{u=new Intl.Collator(document.documentElement.getAttribute("lang")||void 0,{numeric:!0})}catch(e){u=new Intl.Collator(void 0,{numeric:!0})}for(var c=o(l()),d=null,p=0;p<a.length;p++)a[p].querySelector("button")||s.set(a[p],"tabindex","0");function g(e){for(var t=l(),r=0;r<e.length;r++)t.appendChild(e[r])}function v(){var e,t=o(l()),r=[];for(e=0;e<c.length;e++)-1!==t.indexOf(c[e])&&r.push(c[e]);for(e=0;e<t.length;e++)-1===r.indexOf(t[e])&&r.push(t[e]);g(r)}function h(e,t){var r=e.children[t];if(!r)return"";var n=r.getAttribute("data-gr-sort-value");return String(null===n?r.textContent:n).trim()}function m(e,t){var r;for(r=0;r<a.length;r++)s.set(a[r],"aria-sort",a[r]===e?t:"none");if(d="none"===t?null:e,"none"===t)return v();var i=[].indexOf.call(e.parentNode.children,e),f=o(l()),c=!0,p=[];for(r=0;r<f.length;r++)p.push(h(f[r],i)),""!==p[r]&&isNaN(n(p[r]))&&(c=!1);var m=f.map((e,t)=>({row:e,key:p[t],num:c?n(p[t]):0})),y="descending"===t?-1:1;m.sort((e,t)=>""===e.key?""===t.key?0:1:""===t.key?-1:y*(c?e.num-t.num:u.compare(e.key,t.key))),g(m.map(e=>e.row))}function y(t){var r=e.closest(t,"th");return r&&-1!==[].indexOf.call(a,r)?r:null}function w(e){var r=y(e.target);if(r){var n=r.getAttribute("aria-sort");m(r,d===r?t[n]||"ascending":"ascending"===n?"descending":"ascending")}}return s.set(r,"data-gr-state","ready"),f.add(r,"click",w),f.add(r,"keydown",e=>{"Enter"!==e.key&&" "!==e.key||y(e.target)===e.target&&(e.preventDefault(),w(e))}),{el:r,sort:m,destroy:()=>{f.removeAll(),s.restore(),v()}}})})("undefined"!=typeof window&&window.GriffinJS?window.GriffinJS:require("../core/griffinjs-core.js"));
3
3
  //# sourceMappingURL=griffinjs.js.map