@shift72/core-template 1.3.0-alpha.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- package/.github/pull_request_template.md +1 -1
- package/CHANGELOG.md +41 -1
- package/kibble.json +3 -3
- package/package.json +2 -2
- package/scripts/core-template-version.js +4 -4
- package/scripts/css-local-get.js +12 -5
- package/scripts/css-local-put.js +3 -3
- package/scripts/language-file-validator.js +1 -1
- package/scripts/translate.mjs +2 -3
- package/site/ar_LB.all.json +104 -10
- package/site/ca_ES.all.json +74 -8
- package/site/da_DK.all.json +76 -10
- package/site/de_DE.all.json +74 -8
- package/site/el_EL.all.json +79 -4
- package/site/en_AU.all.json +79 -4
- package/site/es_ES.all.json +79 -4
- package/site/es_MX.all.json +81 -6
- package/site/et_ET.all.json +73 -7
- package/site/fi_FI.all.json +77 -2
- package/site/fr_FR.all.json +80 -5
- package/site/hr_HR.all.json +85 -9
- package/site/hu_HU.all.json +73 -7
- package/site/it_IT.all.json +79 -4
- package/site/ja_JP.all.json +71 -0
- package/site/lt_LT.all.json +92 -3
- package/site/manifest.json.jet +4 -2
- package/site/nl_BE.all.json +75 -0
- package/site/no_NO.all.json +80 -5
- package/site/pl_PL.all.json +92 -3
- package/site/plans.html.jet +12 -2
- package/site/pt_BR.all.json +80 -5
- package/site/pt_PT.all.json +78 -3
- package/site/ru_RU.all.json +93 -4
- package/site/search.html.jet +3 -1
- package/site/sr_SR.all.json +85 -3
- package/site/static/js/main.js +1 -0
- package/site/static/scripts/main.js.map +1 -1
- package/site/styles/_availability-tags.scss +1 -1
- package/site/styles/_awards.scss +2 -1
- package/site/styles/_buttons.scss +20 -10
- package/site/styles/_carousel.scss +7 -3
- package/site/styles/_cookie-consent.scss +1 -0
- package/site/styles/_footer.scss +10 -31
- package/site/styles/_forms.scss +11 -0
- package/site/styles/_meta-detail.scss +27 -32
- package/site/styles/_meta-item-tagline.scss +1 -1
- package/site/styles/_mixins.scss +23 -1
- package/site/styles/_nav.scss +49 -65
- package/site/styles/_share-modal.scss +12 -7
- package/site/styles/_shopping.scss +5 -0
- package/site/styles/_typography.scss +30 -22
- package/site/styles/_variables.scss +93 -46
- package/site/subscriptions.html.jet +1 -1
- package/site/templates/application/application.jet +13 -13
- package/site/templates/application/brand/logo.jet +11 -0
- package/site/templates/application/brand/sponsors.jet +11 -0
- package/site/templates/application/footer/brand.jet +3 -1
- package/site/templates/application/footer/sponsor-banner.jet +3 -3
- package/site/templates/application/head/seo.jet +1 -1
- package/site/templates/application/nav/nav.jet +5 -4
- package/site/templates/collection/carousel/carousel.jet +4 -1
- package/site/templates/collection/carousel/item.jet +3 -1
- package/site/templates/tv/detail.jet +4 -2
- package/site/tr_TR.all.json +79 -4
- package/site/uk_UA.all.json +93 -4
- package/site/zh_TW.all.json +73 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"main.js","sources":["../js/modernizr-custom.js","../js/can-be-watched-button.component.js","../js/main.js"],"sourcesContent":["/*! modernizr 3.6.0 (Custom Build) | MIT *\n * https://modernizr.com/download/?-smil-setclasses !*/\n!function(e,n,s){function o(e,n){return typeof e===n}function a(){var e,n,s,a,t,r,f;for(var c in l)if(l.hasOwnProperty(c)){if(e=[],n=l[c],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(s=0;s<n.options.aliases.length;s++)e.push(n.options.aliases[s].toLowerCase());for(a=o(n.fn,\"function\")?n.fn():n.fn,t=0;t<e.length;t++)r=e[t],f=r.split(\".\"),1===f.length?Modernizr[f[0]]=a:(!Modernizr[f[0]]||Modernizr[f[0]]instanceof Boolean||(Modernizr[f[0]]=new Boolean(Modernizr[f[0]])),Modernizr[f[0]][f[1]]=a),i.push((a?\"\":\"no-\")+f.join(\"-\"))}}function t(e){var n=f.className,s=Modernizr._config.classPrefix||\"\";if(c&&(n=n.baseVal),Modernizr._config.enableJSClass){var o=new RegExp(\"(^|\\\\s)\"+s+\"no-js(\\\\s|$)\");n=n.replace(o,\"$1\"+s+\"js$2\")}Modernizr._config.enableClasses&&(n+=\" \"+s+e.join(\" \"+s),c?f.className.baseVal=n:f.className=n)}var i=[],l=[],r={_version:\"3.6.0\",_config:{classPrefix:\"\",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var s=this;setTimeout(function(){n(s[e])},0)},addTest:function(e,n,s){l.push({name:e,fn:n,options:s})},addAsyncTest:function(e){l.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=r,Modernizr=new Modernizr;var f=n.documentElement,c=\"svg\"===f.nodeName.toLowerCase(),u={}.toString;Modernizr.addTest(\"smil\",function(){return!!n.createElementNS&&/SVGAnimate/.test(u.call(n.createElementNS(\"http://www.w3.org/2000/svg\",\"animate\")))}),a(),t(i),delete r.addTest,delete r.addAsyncTest;for(var d=0;d<Modernizr._q.length;d++)Modernizr._q[d]();e.Modernizr=Modernizr}(window,document);","import { utils } from 's72';\nimport { AppComponent, bindAllComponents, render, h, attrs, getComponentElement } from 's72.ui';\n\nexport default class CanBeWatchedButton extends AppComponent {\n constructor(props, context) {\n super(props, context);\n this.state = { loaded: false };\n }\n\n componentDidMount() {\n this.updateState();\n this.app.messagebus.subscribe('user-signed-in', () => this.updateState());\n this.app.messagebus.subscribe('user-signed-out', () => this.updateState());\n this.app.messagebus.subscribe('shopping-session-completed', session =>\n this.shoppingSessionCompleted(session)\n );\n }\n\n componentWillUnmount() {\n this.app.messagebus.unsubscribe('shopping-session-completed', () => this.updateState());\n }\n\n updateState() {\n if (this.props.slug && this.app.shoppingService.isValidType(this.props.slug)) {\n return this.loadAvailability(this.props.slug)\n .then(() => {\n return this.setState({ loaded: true });\n }, utils.noop)\n .then(() => {\n let e = getComponentElement(this);\n e.classList.toggle('s72-show', this.state.loaded && this.state.isOwned);\n }, utils.noop);\n }\n }\n\n shoppingSessionCompleted(session) {\n if (session.data.slug != this.props.slug) {\n return;\n }\n this.updateState();\n }\n\n loadAvailability(slug) {\n if (utils.slugs.detect(slug) === utils.slugs.TYPE.FILM) {\n return this.app.availabilityService.getAvailability(slug).then(a => {\n this.setState({ isOwned: a && a.canBeWatched });\n });\n }\n return;\n }\n\n openLink(event, url) {\n event.preventDefault();\n if (url.length == 0) return;\n window.open(url);\n }\n\n render(props, state) {\n if (!state.loaded || !state.isOwned || props.url == '' || props.label == '') return;\n return (\n state.loaded &&\n state.isOwned && (\n <button\n class=\"s72-btn s72-btn-can-be-watched\"\n onClick={e => {\n this.openLink(e, props.url);\n }}\n >\n <span class=\"padder\" />\n <span class=\"verb watch s72-btn-can-be-watched-label\">{props.label}</span>\n </button>\n )\n );\n }\n}\n\nbindAllComponents('can-be-watched-button', elements => {\n return elements.map(e => render(h(CanBeWatchedButton, attrs(e)), e));\n});\n","import './modernizr-custom.js';\nimport './can-be-watched-button.component.js';\n\n/*global Swiper, Modernizr, s72*/\n\nlet slideObservers = [];\n\nfunction initializeWishlist() {\n let wishlist = document.querySelector('s72-userwishlist');\n if (!wishlist) return;\n let originalFunction = wishlist.classList.remove;\n wishlist.classList.remove = function (className) {\n if (className == 's72-hide') {\n // Hide this from view\n wishlist.style.opacity = '0';\n\n // Remove class\n originalFunction.apply(this, [className]);\n\n /* Convert this to a swiper */\n let containers = wishlist.getElementsByClassName('swiper-container');\n if (containers.length > 0) {\n let container = containers[0];\n let swiper = initializeSwiper(container, true);\n\n init(swiper);\n toggleButtons(container);\n }\n\n // Now show it\n wishlist.style.opacity = '1';\n } else {\n originalFunction.apply(this, [className]);\n }\n };\n}\n\nfunction initializeSwiper(element, force) {\n if (element.swiper) {\n if (force) {\n element.swiper.destroy();\n } else {\n return;\n }\n }\n\n let isTouchscreen = isTouchscreenEnabled();\n\n let defaultSlidesPerView = 8;\n let slidesPerView = {\n 320: 2,\n 568: 2,\n 667: 2,\n 768: 4,\n 992: 4,\n 1200: 4,\n 1440: 6,\n 1600: 6,\n };\n\n // Override some slider values specific sizes. Could potentially expand this for portrait vs. landscapes\n if (element.getAttribute('data-items-per-row')) {\n let itemsPerRow = element.getAttribute('data-items-per-row');\n let layout = element.getAttribute('data-layout');\n\n if (layout == 'portrait') {\n switch (itemsPerRow) {\n case '6':\n defaultSlidesPerView = 8;\n slidesPerView[1600] = 6;\n slidesPerView[1440] = 6;\n slidesPerView[1200] = 5;\n slidesPerView[992] = 4;\n slidesPerView[768] = 4;\n slidesPerView[667] = 3;\n slidesPerView[568] = 3;\n break;\n\n case '4':\n defaultSlidesPerView = 6;\n slidesPerView[1600] = 5;\n slidesPerView[1440] = 5;\n slidesPerView[1200] = 4;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[667] = 3;\n slidesPerView[568] = 2;\n break;\n }\n } else if (layout == 'landscape') {\n switch (itemsPerRow) {\n case '4':\n defaultSlidesPerView = 5;\n slidesPerView[1600] = 4;\n slidesPerView[1440] = 4;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[568] = 2;\n break;\n\n case '3':\n defaultSlidesPerView = 4;\n slidesPerView[1600] = 3;\n slidesPerView[1440] = 3;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 2;\n slidesPerView[768] = 2;\n slidesPerView[568] = 2;\n break;\n }\n }\n }\n\n let swiper = new Swiper(element, {\n init: false,\n slidesPerView: defaultSlidesPerView,\n spaceBetween: 1,\n slidesPerGroup: 1, // leave this for infinite scrollings\n speed: 600,\n watchSlidesVisibility: true,\n\n breakpoints: {\n // when window width is <= 320px\n 319: {\n slidesPerView: slidesPerView[320],\n spaceBetween: 2,\n slidesPerGroup: 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 480px\n 567: {\n slidesPerView: slidesPerView[568],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[568] : 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 640px\n 666: {\n slidesPerView: slidesPerView[667],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[667] : 1,\n },\n 767: {\n slidesPerView: slidesPerView[768],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[768] : 1,\n },\n 991: {\n slidesPerView: slidesPerView[992],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[992] : 1,\n },\n 1199: {\n slidesPerView: slidesPerView[1200],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1200] : 1,\n },\n 1439: {\n slidesPerView: slidesPerView[1440],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1440] : 1,\n },\n 1599: {\n slidesPerView: slidesPerView[1600],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1600] : 1,\n },\n },\n pagination: {\n el: '.swiper-pagination',\n clickable: true,\n },\n on: {\n init() {\n element.dispatchEvent(new Event('init'));\n },\n slideChangeTransitionEnd() {\n addAndRemoveSlides(element.swiper, true, true);\n toggleButtons(element);\n },\n },\n });\n\n element.buttons = {};\n\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-next'),\n 1\n );\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-prev'),\n -1\n );\n\n return swiper;\n}\n\nfunction disableButton(button) {\n button.classList.add('swiper-button-disabled');\n}\n\nfunction enableButton(button) {\n button.classList.remove('swiper-button-disabled');\n}\n\nfunction toggleButtons(slider) {\n let currentIndex = slider.swiper.activeIndex;\n let slidesToTheLeft = currentIndex;\n let slidesPerView = slider.swiper.params.slidesPerView;\n let slidesLength = slider.swiper.slides.length;\n let lastVisibleIndex = currentIndex + slidesPerView;\n let slidesToTheRight = slidesLength - lastVisibleIndex;\n\n if (slidesToTheLeft == 0) {\n disableButton(slider.buttons.prev);\n } else {\n enableButton(slider.buttons.prev);\n }\n\n if (slidesToTheRight <= 0) {\n disableButton(slider.buttons.next);\n } else {\n enableButton(slider.buttons.next);\n }\n}\n\nfunction initButton(slider, button, velocity) {\n if (button) {\n button.classList.remove('s72-hide');\n // Clone the button so any pre-existing listeners are destroyed\n let buttonClone = button.cloneNode(true);\n button.parentNode.replaceChild(buttonClone, button);\n\n buttonClone.addEventListener('click', e => {\n e.preventDefault();\n if (velocity > 0) {\n addAndRemoveSlides(slider.swiper, true, false);\n } else {\n addAndRemoveSlides(slider.swiper, false, true);\n }\n slider.swiper.slideToLoop(\n slider.swiper.realIndex + slider.swiper.params.slidesPerView * velocity\n );\n });\n\n let direction = velocity > 0 ? 'next' : 'prev';\n slider.buttons[direction] = buttonClone;\n }\n}\n\nfunction getMatchingDuplicatedSlides(slider, link) {\n let result = [];\n\n if (!slider.destroyed) {\n Array.from(slider.el.querySelectorAll('.swiper-slide')).forEach(slide => {\n if (!slide.classList.contains('base')) {\n let thisLink = slide.querySelector('a.meta-item-link').getAttribute('href');\n if (link === thisLink) result.push(slide);\n }\n });\n }\n\n return result;\n}\n\nfunction init(slider) {\n slider.init();\n\n // Set up a mutation observer against each base slide, as it'll get redrawn as the components get rendered\n for (let x = 0; x < slider.slides.length; x++) {\n let slide = slider.slides[x];\n\n slide.classList.add('base');\n\n if (infiniteScrollEnabled(slider)) {\n let config = { subtree: true, childList: true };\n\n let observer = new MutationObserver(mutations => {\n for (let y = 0; y < mutations.length; y++) {\n let mutationRecord = mutations[y];\n\n // var href = mutationRecord.target.closest('a.meta-item-link').getAttribute('href');\n let thisSlide = mutationRecord.target.closest('.swiper-slide');\n if (thisSlide) {\n let thisLink = thisSlide.querySelector('a.meta-item-link').getAttribute('href');\n\n let duplicatedSlides = getMatchingDuplicatedSlides(slider, thisLink);\n\n Array.from(duplicatedSlides).forEach(dupe => {\n dupe.innerHTML = thisSlide.innerHTML;\n });\n }\n }\n });\n\n observer.observe(slide, config);\n\n slideObservers.push(observer);\n }\n }\n\n addAndRemoveSlides(slider);\n\n return true;\n}\n\nfunction infiniteScrollEnabled(slider) {\n if (!Modernizr.smil) return false; // i.e. is this IE11\n\n if (isTouchscreenEnabled()) return false; // i.e. is this a touchscreen device?\n\n let el = slider.el;\n\n if (el.getAttribute('disable-infinite-scroll') !== null) {\n return false;\n }\n\n let prev = el.buttons.prev;\n let next = el.buttons.next;\n\n // Only infinite scroll on desktop (i.e. when the next/prev buttons are visible)\n let buttonsVisible = (prev && prev.offsetHeight > 0) || (next && next.offsetHeight > 0);\n\n let screens = slider.slides.length / slider.params.slidesPerView;\n\n return buttonsVisible && screens > 1;\n}\n\nfunction addAndRemoveSlides(slider, append, prepend) {\n // This is a no-go\n if (!infiniteScrollEnabled(slider)) return;\n\n // Just in case something's gone horribly wrong\n if (slider.slides.length > 100) {\n return;\n }\n\n if (append) {\n let lastVisibleIndex = slider.activeIndex + slider.params.slidesPerView;\n let slidesToTheRight = slider.slides.length - lastVisibleIndex;\n\n if (slidesToTheRight <= slider.params.slidesPerView) {\n appendBaseSlides(slider);\n }\n }\n\n if (prepend) {\n if (slider.activeIndex <= slider.params.slidesPerView) {\n prependBaseSlides(slider);\n }\n }\n}\n\nfunction getBaseSlides(slider) {\n let result = Array.from(slider.el.querySelectorAll('.swiper-slide.base')).map(node => {\n return node.cloneNode(true);\n });\n\n Array.from(result).forEach(slide => {\n slide.classList.remove(\n 'base',\n 'swiper-slide-visible',\n 'swiper-slide-active',\n 'swiper-slide-next',\n 'swiper-slide-prev'\n );\n });\n\n return result;\n}\n\nfunction appendBaseSlides(slider) {\n let baseSlides = getBaseSlides(slider).slice(0);\n slider.appendSlide(baseSlides);\n\n cullSlides(slider, 1);\n}\n\nfunction prependBaseSlides(slider) {\n // var baseSlides = getBaseSlides(slider).reverse().slice(0);\n let baseSlides = getBaseSlides(slider).reverse().slice(0);\n\n let currentIndex = slider.activeIndex;\n\n for (let i = 0; i < baseSlides.length; i++) {\n slider.prependSlide(baseSlides[i]);\n }\n slider.slideTo(currentIndex + baseSlides.length, 0);\n\n cullSlides(slider, -1);\n}\n\n// Get rid of the oldest N slides to the left of current\nfunction cullSlides(slider, direction) {\n let baseSlides = getBaseSlides(slider);\n\n let indices = [];\n for (let index = 0; index < slider.slides.length; index++) {\n let slide = slider.slides[index];\n if (direction > 0) {\n if (index < slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n } else if (index > slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n }\n\n if (indices.length > baseSlides.length) {\n let toCullIndices = [];\n if (direction > 0) {\n toCullIndices = indices.slice(0, baseSlides.length);\n } else {\n toCullIndices = indices.reverse().slice(0, baseSlides.length).reverse();\n }\n\n slider.removeSlide(toCullIndices.reverse());\n }\n}\n\nfunction initSearch() {\n let searchButton = document.querySelector('.btn-search-open');\n let searchForm = document.querySelector('.form-control-search');\n\n let openSearch = function () {\n document.querySelector('.form-control-search').focus();\n document.querySelector('.navbar-nav-search').classList.add('search-show');\n document.querySelector('.navbar-nav-search').classList.remove('search-hidden');\n };\n\n let closeSearch = function () {\n document.querySelector('.navbar-nav-search').classList.remove('search-show');\n document.querySelector('.navbar-nav-search').classList.add('search-hidden');\n };\n\n searchButton.addEventListener('click', openSearch, false);\n searchForm.addEventListener('focusin', openSearch, false);\n searchForm.addEventListener('focusout', closeSearch, false);\n}\n\nfunction initScroll() {\n let nav = document.querySelector('.navbar-toggler');\n nav.addEventListener('click', () => {\n toggleScroll();\n });\n}\n\nfunction toggleScroll() {\n let body = document.querySelector('body');\n if (!body.classList.contains('no-scroll')) {\n body.classList.add('no-scroll');\n } else {\n body.classList.remove('no-scroll');\n }\n}\n\nfunction documentReady(app) {\n initializeWishlist();\n\n app.classificationsService.load('/classifications.all.json');\n app.urlMapService.load('/urlmap.json');\n\n detectTouchscreen();\n\n let swipers = document.getElementsByClassName('swiper-container');\n for (let i = 0; i < swipers.length; i++) {\n let el = swipers[i];\n if (el.getAttribute('is-wishlist') == undefined) {\n let swiper = initializeSwiper(el, false);\n init(swiper);\n\n toggleButtons(el);\n }\n }\n\n document.querySelectorAll('.s72-btn-trailer:not(.s72-btn-play)').forEach(btn => {\n btn.addEventListener('click', e => {\n e.preventDefault();\n e.stopPropagation();\n });\n });\n\n document.querySelectorAll('.navbar-nav').forEach(nav => {\n nav.classList.remove('s72-hide');\n });\n if (document.querySelector('.navbar-nav-search')) {\n initSearch();\n }\n initScroll();\n}\n\nfunction detectTouchscreen() {\n let touchEnabled = s72.utils.device.isTouchEnabled();\n document.querySelector('html').setAttribute('is-touchscreen', touchEnabled);\n}\n\nfunction isTouchscreenEnabled() {\n return document.querySelector('html').getAttribute('is-touchscreen') === 'true';\n}\ndocument.addEventListener('s72loaded', event => {\n let app = event.detail.app;\n documentReady(app);\n});\n"],"names":["super","this","utils","let","getComponentElement","AppComponent","bindAllComponents","render","h","attrs","y"],"mappings":";;;EAAA;EACA;EACA,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAA,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,EAAA,EAAA,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA,EAAC,CAAC,EAAA,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAC,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,OAAM,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAA,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAA,CAAC,CAAC,SAAS,CAAC,UAAS,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;;ECC5iD,IAAM,kBAAkB,iBAAqB,UAAA,YAAA,EAAA;EAC1D,EAAA,SAAA,kBAAW,CAAC,KAAK,EAAE,OAAO,EAAE;EAC9B,IAAIA,iBAAK,CAAC,IAAA,EAAA,KAAK,EAAE,OAAO,CAAC,CAAC;EAC1B,IAAI,IAAI,CAAC,KAAK,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;EACnC,GAAA;;;;EAAG,EAAA,kBAAA,CAAA,SAAA,CAAA,WAAA,GAAA,kBAAA,CAAA;AACH;EACA,EAAA,kBAAA,CAAA,SAAA,CAAE,kDAAoB;;AAAC;EACvB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;EACvB,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,EAAA,qBAAQC,QAAI,CAAC,WAAW,EAAA,CAAA,EAAE,CAAC,CAAC;EAC9E,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,iBAAiB,EAAA,qBAAQA,QAAI,CAAC,WAAW,EAAA,CAAA,EAAE,CAAC,CAAC;EAC/E,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,4BAA4B,EAAA,UAAE,SAC1DA,EAAAA,OAAAA,QAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA,EAAA;EAC5C,KAAK,CAAC;EACN,GAAG,CAAA;AACH;EACA,EAAA,kBAAA,CAAA,SAAA,CAAE,wDAAuB;;AAAC;EAC1B,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,4BAA4B,EAAA,qBAAQA,QAAI,CAAC,WAAW,EAAA,CAAA,EAAE,CAAC,CAAC;EAC5F,GAAG,CAAA;AACH;EACA,EAAA,kBAAA,CAAA,SAAA,CAAE,sCAAc;;AAAC;EACjB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;EAClF,MAAM,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;EACnD,SAAS,IAAI,aAAO;EACpB,UAAU,OAAOA,QAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;EACjD,SAAS,EAAEC,WAAK,CAAC,IAAI,CAAC;EACtB,SAAS,IAAI,aAAO;EACpB,UAAUC,IAAI,CAAC,GAAGC,0BAAmB,CAACH,QAAI,CAAC,CAAC;EAC5C,UAAU,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAEA,QAAI,CAAC,KAAK,CAAC,MAAM,IAAIA,QAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;EAClF,SAAS,EAAEC,WAAK,CAAC,IAAI,CAAC,CAAC;EACvB,KAAK;EACL,GAAG,CAAA;AACH;EACA,EAAE,kBAAA,CAAA,SAAA,CAAA,wBAAA,GAAA,SAAA,wBAAA,EAAyB,OAAO,EAAE;EACpC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;EAC9C,MAAM,OAAO;EACb,KAAK;EACL,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;EACvB,GAAG,CAAA;AACH;EACA,EAAE,kBAAA,CAAA,SAAA,CAAA,gBAAA,GAAA,SAAA,gBAAA,EAAiB,IAAI,EAAE;;AAAC;EAC1B,IAAI,IAAIA,WAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAKA,WAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;EAC5D,MAAM,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAA,UAAC,GAAK;EAC1E,QAAQD,QAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;EACxD,OAAO,CAAC,CAAC;EACT,KAAK;EACL,IAAI,OAAO;EACX,GAAG,CAAA;AACH;EACA,EAAA,kBAAA,CAAA,SAAA,CAAE,QAAQ,GAAA,SAAA,QAAA,EAAC,KAAK,EAAE,GAAG,EAAE;EACvB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;EAC3B,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAE,OAAO,EAAA;EAChC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EACrB,GAAG,CAAA;AACH;EACA,EAAA,kBAAA,CAAA,SAAA,CAAE,MAAM,GAAA,SAAA,MAAA,EAAC,KAAK,EAAE,KAAK,EAAE;;AAAC;EACxB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,EAAA,EAAE,OAAO,EAAA;EACxF,IAAI;EACJ,MAAM,KAAK,CAAC,MAAM;EAClB,MAAM,KAAK,CAAC,OAAO;EACnB,QAAQ,kBAAO,EAAA;EACf,UAAU,KAAM,EAAA,gCAAgC,EACtC,OAAA,EAAA,UAAS,GAAK;EACxB,YAAYA,QAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;EACxC,WACS,EAAA;EACT,UAAU,GAAC,CAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAK,KAAA,EAAM,UAAQ,CAAG;EACjC,UAAU,GAAA,CAAA,EAAA,CAAA,CAAA,EAAA,UAAM,KAAA,EAAM,6CAA2C,KAAK,CAAC,KAAM,CAAO;EACpF,SAAiB;EACjB,OAAO;EACP,MAAM;EACN,GAAA,CAAA;;;EAtEgD,CAAA,CAAAI,mBAAA,CAAA,CAAA,CAAA;AAwEhD;AACAC,0BAAiB,CAAC,uBAAuB,EAAE,UAAA,QAAA,EAAY;EACvD,EAAE,OAAO,QAAQ,CAAC,GAAG,WAAC,CAAC,EAAA,EAAA,OAAIC,aAAM,CAACC,QAAC,CAAC,kBAAkB,EAAEC,YAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;EACvE,CAAC,CAAC;;ECvEF,SAAS,kBAAkB,GAAG;EAC9B,EAAEN,IAAI,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;EAC5D,EAAE,IAAI,CAAC,QAAQ,EAAA,EAAE,OAAO,EAAA;EACxB,EAAEA,IAAI,gBAAgB,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;EACnD,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,UAAU,SAAS,EAAE;EACnD,IAAI,IAAI,SAAS,IAAI,UAAU,EAAE;EACjC;EACA,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;AACnC;EACA;EACA,MAAM,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAChD;EACA;EACA,MAAMA,IAAI,UAAU,GAAG,QAAQ,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;EAC3E,MAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;EACjC,QAAQA,IAAI,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;EACtC,QAAQA,IAAI,MAAM,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACvD;EACA,QAAQ,IAAI,CAAC,MAAM,CAAC,CAAC;EACrB,QAAQ,aAAa,CAAC,SAAS,CAAC,CAAC;EACjC,OAAO;AACP;EACA;EACA,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;EACnC,KAAK,MAAM;EACX,MAAM,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;EAChD,KAAK;EACL,GAAG,CAAC;EACJ,CAAC;AACD;EACA,SAAS,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE;EAC1C,EAAE,IAAI,OAAO,CAAC,MAAM,EAAE;EACtB,IAAI,IAAI,KAAK,EAAE;EACf,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;EAC/B,KAAK,MAAM;EACX,MAAM,OAAO;EACb,KAAK;EACL,GAAG;AACH;EACA,EAAEA,IAAI,aAAa,GAAG,oBAAoB,EAAE,CAAC;AAC7C;EACA,EAAEA,IAAI,oBAAoB,GAAG,CAAC,CAAC;EAC/B,EAAEA,IAAI,aAAa,GAAG;EACtB,IAAI,GAAG,EAAE,CAAC;EACV,IAAI,GAAG,EAAE,CAAC;EACV,IAAI,GAAG,EAAE,CAAC;EACV,IAAI,GAAG,EAAE,CAAC;EACV,IAAI,GAAG,EAAE,CAAC;EACV,IAAI,IAAI,EAAE,CAAC;EACX,IAAI,IAAI,EAAE,CAAC;EACX,IAAI,IAAI,EAAE,CAAC;EACX,GAAG,CAAC;AACJ;EACA;EACA,EAAE,IAAI,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE;EAClD,IAAIA,IAAI,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;EACjE,IAAIA,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;AACrD;EACA,IAAI,IAAI,MAAM,IAAI,UAAU,EAAE;EAC9B,MAAM,QAAQ,WAAW;EACzB,MAAM,KAAK,GAAG;EACd,QAAQ,oBAAoB,GAAG,CAAC,CAAC;EACjC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,MAAM;AACd;EACA,MAAM,KAAK,GAAG;EACd,QAAQ,oBAAoB,GAAG,CAAC,CAAC;EACjC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,MAAM;EACd,OAAO;EACP,KAAK,MAAM,IAAI,MAAM,IAAI,WAAW,EAAE;EACtC,MAAM,QAAQ,WAAW;EACzB,MAAM,KAAK,GAAG;EACd,QAAQ,oBAAoB,GAAG,CAAC,CAAC;EACjC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,MAAM;AACd;EACA,MAAM,KAAK,GAAG;EACd,QAAQ,oBAAoB,GAAG,CAAC,CAAC;EACjC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAChC,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/B,QAAQ,MAAM;EACd,OAAO;EACP,KAAK;EACL,GAAG;AACH;EACA,EAAEA,IAAI,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE;EACnC,IAAI,IAAI,EAAE,KAAK;EACf,IAAI,aAAa,EAAE,oBAAoB;EACvC,IAAI,YAAY,EAAE,CAAC;EACnB,IAAI,cAAc,EAAE,CAAC;EACrB,IAAI,KAAK,EAAE,GAAG;EACd,IAAI,qBAAqB,EAAE,IAAI;AAC/B;EACA,IAAI,WAAW,EAAE;EACjB;EACA,MAAM,GAAG,EAAE;EACX,QAAQ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC;EACzC,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,CAAC;EACzB,QAAQ,kBAAkB,EAAE,EAAE;EAC9B,QAAQ,iBAAiB,EAAE,EAAE;EAC7B,OAAO;EACP;EACA,MAAM,GAAG,EAAE;EACX,QAAQ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC;EACzC,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;EAC9D,QAAQ,kBAAkB,EAAE,EAAE;EAC9B,QAAQ,iBAAiB,EAAE,EAAE;EAC7B,OAAO;EACP;EACA,MAAM,GAAG,EAAE;EACX,QAAQ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC;EACzC,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;EAC9D,OAAO;EACP,MAAM,GAAG,EAAE;EACX,QAAQ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC;EACzC,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;EAC9D,OAAO;EACP,MAAM,GAAG,EAAE;EACX,QAAQ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC;EACzC,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;EAC9D,OAAO;EACP,MAAM,IAAI,EAAE;EACZ,QAAQ,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC;EAC1C,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;EAC/D,OAAO;EACP,MAAM,IAAI,EAAE;EACZ,QAAQ,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC;EAC1C,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;EAC/D,OAAO;EACP,MAAM,IAAI,EAAE;EACZ,QAAQ,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC;EAC1C,QAAQ,YAAY,EAAE,CAAC;EACvB,QAAQ,cAAc,EAAE,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;EAC/D,OAAO;EACP,KAAK;EACL,IAAI,UAAU,EAAE;EAChB,MAAM,EAAE,EAAE,oBAAoB;EAC9B,MAAM,SAAS,EAAE,IAAI;EACrB,KAAK;EACL,IAAI,EAAE,EAAE;EACR,MAAM,mBAAI,GAAG;EACb,QAAQ,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EACjD,OAAO;EACP,MAAM,2DAAwB,GAAG;EACjC,QAAQ,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;EACvD,QAAQ,aAAa,CAAC,OAAO,CAAC,CAAC;EAC/B,OAAO;EACP,KAAK;EACL,GAAG,CAAC,CAAC;AACL;EACA,EAAE,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;AACvB;EACA,EAAE,UAAU;EACZ,IAAI,OAAO;EACX,IAAI,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAAC;EACrF,IAAI,CAAC;EACL,GAAG,CAAC;EACJ,EAAE,UAAU;EACZ,IAAI,OAAO;EACX,IAAI,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAAC;EACrF,IAAI,CAAC,CAAC;EACN,GAAG,CAAC;AACJ;EACA,EAAE,OAAO,MAAM,CAAC;EAChB,CAAC;AACD;EACA,SAAS,aAAa,CAAC,MAAM,EAAE;EAC/B,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;EACjD,CAAC;AACD;EACA,SAAS,YAAY,CAAC,MAAM,EAAE;EAC9B,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;EACpD,CAAC;AACD;EACA,SAAS,aAAa,CAAC,MAAM,EAAE;EAC/B,EAAEA,IAAI,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;EAC/C,EAAEA,IAAI,eAAe,GAAG,YAAY,CAAC;EACrC,EAAEA,IAAI,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;EACzD,EAAEA,IAAI,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;EACjD,EAAEA,IAAI,gBAAgB,GAAG,YAAY,GAAG,aAAa,CAAC;EACtD,EAAEA,IAAI,gBAAgB,GAAG,YAAY,GAAG,gBAAgB,CAAC;AACzD;EACA,EAAE,IAAI,eAAe,IAAI,CAAC,EAAE;EAC5B,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;EACvC,GAAG,MAAM;EACT,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;EACtC,GAAG;AACH;EACA,EAAE,IAAI,gBAAgB,IAAI,CAAC,EAAE;EAC7B,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;EACvC,GAAG,MAAM;EACT,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;EACtC,GAAG;EACH,CAAC;AACD;EACA,SAAS,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;EAC9C,EAAE,IAAI,MAAM,EAAE;EACd,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;EACxC;EACA,IAAIA,IAAI,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;EAC7C,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AACxD;EACA,IAAI,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAA,UAAE,GAAK;EAC/C,MAAM,CAAC,CAAC,cAAc,EAAE,CAAC;EACzB,MAAM,IAAI,QAAQ,GAAG,CAAC,EAAE;EACxB,QAAQ,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;EACvD,OAAO,MAAM;EACb,QAAQ,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;EACvD,OAAO;EACP,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW;EAC/B,QAAQ,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,GAAG,QAAQ;EAC/E,OAAO,CAAC;EACR,KAAK,CAAC,CAAC;AACP;EACA,IAAIA,IAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;EACnD,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;EAC5C,GAAG;EACH,CAAC;AACD;EACA,SAAS,2BAA2B,CAAC,MAAM,EAAE,IAAI,EAAE;EACnD,EAAEA,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB;EACA,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;EACzB,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAA,UAAC,OAAS;EAC7E,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;EAC7C,QAAQA,IAAI,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;EACpF,QAAQ,IAAI,IAAI,KAAK,QAAQ,EAAA,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAA;EAClD,OAAO;EACP,KAAK,CAAC,CAAC;EACP,GAAG;AACH;EACA,EAAE,OAAO,MAAM,CAAC;EAChB,CAAC;AACD;EACA,SAAS,IAAI,CAAC,MAAM,EAAE;EACtB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAChB;EACA;EACA,EAAE,KAAKA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;EACjD,IAAIA,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC;EACA,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAChC;EACA,IAAI,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;EACvC,MAAMA,IAAI,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACtD;EACA,MAAMA,IAAI,QAAQ,GAAG,IAAI,gBAAgB,CAAA,UAAC,WAAa;EACvD,QAAmD,IAAA,IAAA,GAAA,WAAA,CAAA,GAAA;EACnD,UAAUA,IAAI,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC5C;EACA;EACA,UAAUA,IAAI,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;EACzE,UAAU,IAAI,SAAS,EAAE;EACzB,YAAYA,IAAI,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC5F;EACA,YAAYA,IAAI,gBAAgB,GAAG,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACjF;EACA,YAAY,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAA,IAAA,EAAQ;EACzD,cAAc,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;EACnD,aAAa,CAAC,CAAC;EACf,WAAW;EACX,SAAA,CAAA;;EAdQ,QAAA,KAAKA,IAAIO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAcxC,IAAA,EAAA,CAAA,EAAA,CAAA;EACT,OAAO,CAAC,CAAC;AACT;EACA,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;EAGtC,KAAK;EACL,GAAG;AACH;EACA,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC7B;EACA,EAAE,OAAO,IAAI,CAAC;EACd,CAAC;AACD;EACA,SAAS,qBAAqB,CAAC,MAAM,EAAE;EACvC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAA,OAAO,KAAK,CAAC,EAAA;AACpC;EACA,EAAE,IAAI,oBAAoB,EAAE,EAAE,EAAA,OAAO,KAAK,CAAC,EAAA;AAC3C;EACA,EAAEP,IAAI,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;AACrB;EACA,EAAE,IAAI,EAAE,CAAC,YAAY,CAAC,yBAAyB,CAAC,KAAK,IAAI,EAAE;EAC3D,IAAI,OAAO,KAAK,CAAC;EACjB,GAAG;AACH;EACA,EAAEA,IAAI,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;EAC7B,EAAEA,IAAI,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;AAC7B;EACA;EACA,EAAEA,IAAI,cAAc,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;AAC1F;EACA,EAAEA,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;AACnE;EACA,EAAE,OAAO,cAAc,IAAI,OAAO,GAAG,CAAC,CAAC;EACvC,CAAC;AACD;EACA,SAAS,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;EACrD;EACA,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAE,OAAO,EAAA;AAC7C;EACA;EACA,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;EAClC,IAAI,OAAO;EACX,GAAG;AACH;EACA,EAAE,IAAI,MAAM,EAAE;EACd,IAAIA,IAAI,gBAAgB,GAAG,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;EAC5E,IAAIA,IAAI,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC;AACnE;EACA,IAAI,IAAI,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;EACzD,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;EAC/B,KAAK;EACL,GAAG;AACH;EACA,EAAE,IAAI,OAAO,EAAE;EACf,IAAI,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;EAC3D,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;EAChC,KAAK;EACL,GAAG;EACH,CAAC;AACD;EACA,SAAS,aAAa,CAAC,MAAM,EAAE;EAC/B,EAAEA,IAAI,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,UAAA,IAAA,EAAQ;EACxF,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;EAChC,GAAG,CAAC,CAAC;AACL;EACA,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,KAAA,EAAS;EACtC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM;EAC1B,MAAM,MAAM;EACZ,MAAM,sBAAsB;EAC5B,MAAM,qBAAqB;EAC3B,MAAM,mBAAmB;EACzB,MAAM,mBAAmB;EACzB,KAAK,CAAC;EACN,GAAG,CAAC,CAAC;AACL;EACA,EAAE,OAAO,MAAM,CAAC;EAChB,CAAC;AACD;EACA,SAAS,gBAAgB,CAAC,MAAM,EAAE;EAClC,EAAEA,IAAI,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;EAClD,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACjC;EACA,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;EACxB,CAAC;AACD;EACA,SAAS,iBAAiB,CAAC,MAAM,EAAE;EACnC;EACA,EAAEA,IAAI,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5D;EACA,EAAEA,IAAI,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;AACxC;EACA,EAAE,KAAKA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;EAC9C,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;EACvC,GAAG;EACH,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACtD;EACA,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;EACzB,CAAC;AACD;EACA;EACA,SAAS,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE;EACvC,EAAEA,IAAI,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;AACzC;EACA,EAAEA,IAAI,OAAO,GAAG,EAAE,CAAC;EACnB,EAAE,KAAKA,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;EAC7D,IAAIA,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;EACrC,IAAI,IAAI,SAAS,GAAG,CAAC,EAAE;EACvB,MAAM,IAAI,KAAK,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;EAC3E,QAAQ,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;EAC5B,OAAO;EACP,KAAK,MAAM,IAAI,KAAK,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;EAChF,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;EAC1B,KAAK;EACL,GAAG;AACH;EACA,EAAE,IAAI,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE;EAC1C,IAAIA,IAAI,aAAa,GAAG,EAAE,CAAC;EAC3B,IAAI,IAAI,SAAS,GAAG,CAAC,EAAE;EACvB,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;EAC1D,KAAK,MAAM;EACX,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;EAC9E,KAAK;AACL;EACA,IAAI,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;EAChD,GAAG;EACH,CAAC;AACD;EACA,SAAS,UAAU,GAAG;EACtB,EAAEA,IAAI,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;EAChE,EAAEA,IAAI,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;AAClE;EACA,EAAEA,IAAI,UAAU,GAAG,YAAY;EAC/B,IAAI,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;EAC3D,IAAI,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;EAC9E,IAAI,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;EACnF,GAAG,CAAC;AACJ;EACA,EAAEA,IAAI,WAAW,GAAG,YAAY;EAChC,IAAI,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;EACjF,IAAI,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;EAChF,GAAG,CAAC;AACJ;EACA,EAAE,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;EAC5D,EAAE,UAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;EAC5D,EAAE,UAAU,CAAC,gBAAgB,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;EAC9D,CAAC;AACD;EACA,SAAS,UAAU,GAAG;EACtB,EAAEA,IAAI,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;EACtD,EAAE,GAAG,CAAC,gBAAgB,CAAC,OAAO,cAAQ;EACtC,IAAI,YAAY,EAAE,CAAC;EACnB,GAAG,CAAC,CAAC;EACL,CAAC;AACD;EACA,SAAS,YAAY,GAAG;EACxB,EAAEA,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;EAC5C,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;EAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;EACpC,GAAG,MAAM;EACT,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;EACvC,GAAG;EACH,CAAC;AACD;EACA,SAAS,aAAa,CAAC,GAAG,EAAE;EAC5B,EAAE,kBAAkB,EAAE,CAAC;AACvB;EACA,EAAE,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;EAC/D,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACzC;EACA,EAAE,iBAAiB,EAAE,CAAC;AACtB;EACA,EAAEA,IAAI,OAAO,GAAG,QAAQ,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;EACpE,EAAE,KAAKA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;EAC3C,IAAIA,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;EACxB,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,SAAS,EAAE;EACrD,MAAMA,IAAI,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;EAC/C,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;AACnB;EACA,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;EACxB,KAAK;EACL,GAAG;AACH;EACA,EAAE,QAAQ,CAAC,gBAAgB,CAAC,qCAAqC,CAAC,CAAC,OAAO,CAAC,UAAA,GAAA,EAAO;EAClF,IAAI,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAA,UAAE,GAAK;EACvC,MAAM,CAAC,CAAC,cAAc,EAAE,CAAC;EACzB,MAAM,CAAC,CAAC,eAAe,EAAE,CAAC;EAC1B,KAAK,CAAC,CAAC;EACP,GAAG,CAAC,CAAC;AACL;EACA,EAAE,QAAQ,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAA,GAAA,EAAO;EAC1D,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;EACrC,GAAG,CAAC,CAAC;EACL,EAAE,IAAI,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE;EACpD,IAAI,UAAU,EAAE,CAAC;EACjB,GAAG;EACH,EAAE,UAAU,EAAE,CAAC;EACf,CAAC;AACD;EACA,SAAS,iBAAiB,GAAG;EAC7B,EAAEA,IAAI,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;EACvD,EAAE,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;EAC9E,CAAC;AACD;EACA,SAAS,oBAAoB,GAAG;EAChC,EAAE,OAAO,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,MAAM,CAAC;EAClF,CAAC;EACD,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAA,UAAE,OAAS;EAChD,EAAEA,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;EAC7B,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;EACrB,CAAC,CAAC;;;;;;"}
|
1
|
+
{"version":3,"file":"main.js","sources":["../js/modernizr-custom.js","../js/can-be-watched-button.component.js","../js/main.js"],"sourcesContent":["/*! modernizr 3.6.0 (Custom Build) | MIT *\n * https://modernizr.com/download/?-smil-setclasses !*/\n!function(e,n,s){function o(e,n){return typeof e===n}function a(){var e,n,s,a,t,r,f;for(var c in l)if(l.hasOwnProperty(c)){if(e=[],n=l[c],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(s=0;s<n.options.aliases.length;s++)e.push(n.options.aliases[s].toLowerCase());for(a=o(n.fn,\"function\")?n.fn():n.fn,t=0;t<e.length;t++)r=e[t],f=r.split(\".\"),1===f.length?Modernizr[f[0]]=a:(!Modernizr[f[0]]||Modernizr[f[0]]instanceof Boolean||(Modernizr[f[0]]=new Boolean(Modernizr[f[0]])),Modernizr[f[0]][f[1]]=a),i.push((a?\"\":\"no-\")+f.join(\"-\"))}}function t(e){var n=f.className,s=Modernizr._config.classPrefix||\"\";if(c&&(n=n.baseVal),Modernizr._config.enableJSClass){var o=new RegExp(\"(^|\\\\s)\"+s+\"no-js(\\\\s|$)\");n=n.replace(o,\"$1\"+s+\"js$2\")}Modernizr._config.enableClasses&&(n+=\" \"+s+e.join(\" \"+s),c?f.className.baseVal=n:f.className=n)}var i=[],l=[],r={_version:\"3.6.0\",_config:{classPrefix:\"\",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var s=this;setTimeout(function(){n(s[e])},0)},addTest:function(e,n,s){l.push({name:e,fn:n,options:s})},addAsyncTest:function(e){l.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=r,Modernizr=new Modernizr;var f=n.documentElement,c=\"svg\"===f.nodeName.toLowerCase(),u={}.toString;Modernizr.addTest(\"smil\",function(){return!!n.createElementNS&&/SVGAnimate/.test(u.call(n.createElementNS(\"http://www.w3.org/2000/svg\",\"animate\")))}),a(),t(i),delete r.addTest,delete r.addAsyncTest;for(var d=0;d<Modernizr._q.length;d++)Modernizr._q[d]();e.Modernizr=Modernizr}(window,document);","import { utils } from 's72';\nimport { AppComponent, bindAllComponents, render, h, attrs, getComponentElement } from 's72.ui';\n\nexport default class CanBeWatchedButton extends AppComponent {\n constructor(props, context) {\n super(props, context);\n this.state = { loaded: false };\n }\n\n componentDidMount() {\n this.updateState();\n this.app.messagebus.subscribe('user-signed-in', () => this.updateState());\n this.app.messagebus.subscribe('user-signed-out', () => this.updateState());\n this.app.messagebus.subscribe('shopping-session-completed', session =>\n this.shoppingSessionCompleted(session)\n );\n }\n\n componentWillUnmount() {\n this.app.messagebus.unsubscribe('shopping-session-completed', () => this.updateState());\n }\n\n updateState() {\n if (this.props.slug && this.app.shoppingService.isValidType(this.props.slug)) {\n return this.loadAvailability(this.props.slug)\n .then(() => {\n return this.setState({ loaded: true });\n }, utils.noop)\n .then(() => {\n let e = getComponentElement(this);\n e.classList.toggle('s72-show', this.state.loaded && this.state.isOwned);\n }, utils.noop);\n }\n }\n\n shoppingSessionCompleted(session) {\n if (session.data.slug != this.props.slug) {\n return;\n }\n this.updateState();\n }\n\n loadAvailability(slug) {\n if (utils.slugs.detect(slug) === utils.slugs.TYPE.FILM) {\n return this.app.availabilityService.getAvailability(slug).then(a => {\n this.setState({ isOwned: a && a.canBeWatched });\n });\n }\n return;\n }\n\n openLink(event, url) {\n event.preventDefault();\n if (url.length == 0) return;\n window.open(url);\n }\n\n render(props, state) {\n if (!state.loaded || !state.isOwned || props.url == '' || props.label == '') return;\n return (\n state.loaded &&\n state.isOwned && (\n <button\n class=\"s72-btn s72-btn-can-be-watched\"\n onClick={e => {\n this.openLink(e, props.url);\n }}\n >\n <span class=\"padder\" />\n <span class=\"verb watch s72-btn-can-be-watched-label\">{props.label}</span>\n </button>\n )\n );\n }\n}\n\nbindAllComponents('can-be-watched-button', elements => {\n return elements.map(e => render(h(CanBeWatchedButton, attrs(e)), e));\n});\n","import './modernizr-custom.js';\nimport './can-be-watched-button.component.js';\n\n/*global Swiper, Modernizr, s72*/\n\nlet slideObservers = [];\n\nfunction initializeWishlist() {\n let wishlist = document.querySelector('s72-userwishlist');\n if (!wishlist) return;\n let originalFunction = wishlist.classList.remove;\n wishlist.classList.remove = function (className) {\n if (className == 's72-hide') {\n // Hide this from view\n wishlist.style.opacity = '0';\n\n // Remove class\n originalFunction.apply(this, [className]);\n\n /* Convert this to a swiper */\n let containers = wishlist.getElementsByClassName('swiper-container');\n if (containers.length > 0) {\n let container = containers[0];\n let swiper = initializeSwiper(container, true);\n\n init(swiper);\n toggleButtons(container);\n }\n\n // Now show it\n wishlist.style.opacity = '1';\n } else {\n originalFunction.apply(this, [className]);\n }\n };\n}\n\nfunction initializeSwiper(element, force) {\n if (element.swiper) {\n if (force) {\n element.swiper.destroy();\n } else {\n return;\n }\n }\n\n let isTouchscreen = isTouchscreenEnabled();\n\n let defaultSlidesPerView = 8;\n let slidesPerView = {\n 320: 2,\n 568: 2,\n 667: 2,\n 768: 4,\n 992: 4,\n 1200: 4,\n 1440: 6,\n 1600: 6,\n };\n\n // Override some slider values specific sizes. Could potentially expand this for portrait vs. landscapes\n if (element.getAttribute('data-items-per-row')) {\n let itemsPerRow = element.getAttribute('data-items-per-row');\n let layout = element.getAttribute('data-layout');\n\n if (layout == 'portrait') {\n switch (itemsPerRow) {\n case '6':\n defaultSlidesPerView = 8;\n slidesPerView[1600] = 6;\n slidesPerView[1440] = 6;\n slidesPerView[1200] = 5;\n slidesPerView[992] = 4;\n slidesPerView[768] = 4;\n slidesPerView[667] = 3;\n slidesPerView[568] = 3;\n break;\n\n case '4':\n defaultSlidesPerView = 6;\n slidesPerView[1600] = 5;\n slidesPerView[1440] = 5;\n slidesPerView[1200] = 4;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[667] = 3;\n slidesPerView[568] = 2;\n break;\n }\n } else if (layout == 'landscape') {\n switch (itemsPerRow) {\n case '4':\n defaultSlidesPerView = 5;\n slidesPerView[1600] = 4;\n slidesPerView[1440] = 4;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[568] = 2;\n break;\n\n case '3':\n defaultSlidesPerView = 4;\n slidesPerView[1600] = 3;\n slidesPerView[1440] = 3;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 2;\n slidesPerView[768] = 2;\n slidesPerView[568] = 2;\n break;\n }\n }\n }\n\n let swiper = new Swiper(element, {\n init: false,\n slidesPerView: defaultSlidesPerView,\n spaceBetween: 1,\n slidesPerGroup: 1, // leave this for infinite scrollings\n speed: 600,\n watchSlidesVisibility: true,\n\n breakpoints: {\n // when window width is <= 320px\n 319: {\n slidesPerView: slidesPerView[320],\n spaceBetween: 2,\n slidesPerGroup: 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 480px\n 567: {\n slidesPerView: slidesPerView[568],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[568] : 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 640px\n 666: {\n slidesPerView: slidesPerView[667],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[667] : 1,\n },\n 767: {\n slidesPerView: slidesPerView[768],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[768] : 1,\n },\n 991: {\n slidesPerView: slidesPerView[992],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[992] : 1,\n },\n 1199: {\n slidesPerView: slidesPerView[1200],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1200] : 1,\n },\n 1439: {\n slidesPerView: slidesPerView[1440],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1440] : 1,\n },\n 1599: {\n slidesPerView: slidesPerView[1600],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1600] : 1,\n },\n },\n pagination: {\n el: '.swiper-pagination',\n clickable: true,\n },\n on: {\n init() {\n element.dispatchEvent(new Event('init'));\n },\n slideChangeTransitionEnd() {\n addAndRemoveSlides(element.swiper, true, true);\n toggleButtons(element);\n },\n },\n });\n\n element.buttons = {};\n\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-next'),\n 1\n );\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-prev'),\n -1\n );\n\n return swiper;\n}\n\nfunction disableButton(button) {\n button.classList.add('swiper-button-disabled');\n}\n\nfunction enableButton(button) {\n button.classList.remove('swiper-button-disabled');\n}\n\nfunction toggleButtons(slider) {\n let currentIndex = slider.swiper.activeIndex;\n let slidesToTheLeft = currentIndex;\n let slidesPerView = slider.swiper.params.slidesPerView;\n let slidesLength = slider.swiper.slides.length;\n let lastVisibleIndex = currentIndex + slidesPerView;\n let slidesToTheRight = slidesLength - lastVisibleIndex;\n\n if (slidesToTheLeft == 0) {\n disableButton(slider.buttons.prev);\n } else {\n enableButton(slider.buttons.prev);\n }\n\n if (slidesToTheRight <= 0) {\n disableButton(slider.buttons.next);\n } else {\n enableButton(slider.buttons.next);\n }\n}\n\nfunction initButton(slider, button, velocity) {\n if (button) {\n button.classList.remove('s72-hide');\n // Clone the button so any pre-existing listeners are destroyed\n let buttonClone = button.cloneNode(true);\n button.parentNode.replaceChild(buttonClone, button);\n\n buttonClone.addEventListener('click', e => {\n e.preventDefault();\n if (velocity > 0) {\n addAndRemoveSlides(slider.swiper, true, false);\n } else {\n addAndRemoveSlides(slider.swiper, false, true);\n }\n slider.swiper.slideToLoop(\n slider.swiper.realIndex + slider.swiper.params.slidesPerView * velocity\n );\n });\n\n let direction = velocity > 0 ? 'next' : 'prev';\n slider.buttons[direction] = buttonClone;\n }\n}\n\nfunction getMatchingDuplicatedSlides(slider, link) {\n let result = [];\n\n if (!slider.destroyed) {\n Array.from(slider.el.querySelectorAll('.swiper-slide')).forEach(slide => {\n if (!slide.classList.contains('base')) {\n let thisLink = slide.querySelector('a.meta-item-link').getAttribute('href');\n if (link === thisLink) result.push(slide);\n }\n });\n }\n\n return result;\n}\n\nfunction init(slider) {\n slider.init();\n\n // Set up a mutation observer against each base slide, as it'll get redrawn as the components get rendered\n for (let x = 0; x < slider.slides.length; x++) {\n let slide = slider.slides[x];\n\n slide.classList.add('base');\n\n if (infiniteScrollEnabled(slider)) {\n let config = { subtree: true, childList: true };\n\n let observer = new MutationObserver(mutations => {\n for (let y = 0; y < mutations.length; y++) {\n let mutationRecord = mutations[y];\n\n // var href = mutationRecord.target.closest('a.meta-item-link').getAttribute('href');\n let thisSlide = mutationRecord.target.closest('.swiper-slide');\n if (thisSlide) {\n let thisLink = thisSlide.querySelector('a.meta-item-link').getAttribute('href');\n\n let duplicatedSlides = getMatchingDuplicatedSlides(slider, thisLink);\n\n Array.from(duplicatedSlides).forEach(dupe => {\n dupe.innerHTML = thisSlide.innerHTML;\n });\n }\n }\n });\n\n observer.observe(slide, config);\n\n slideObservers.push(observer);\n }\n }\n\n addAndRemoveSlides(slider);\n\n return true;\n}\n\nfunction infiniteScrollEnabled(slider) {\n if (!Modernizr.smil) return false; // i.e. is this IE11\n\n if (isTouchscreenEnabled()) return false; // i.e. is this a touchscreen device?\n\n let el = slider.el;\n\n if (el.getAttribute('disable-infinite-scroll') !== null) {\n return false;\n }\n\n let prev = el.buttons.prev;\n let next = el.buttons.next;\n\n // Only infinite scroll on desktop (i.e. when the next/prev buttons are visible)\n let buttonsVisible = (prev && prev.offsetHeight > 0) || (next && next.offsetHeight > 0);\n\n let screens = slider.slides.length / slider.params.slidesPerView;\n\n return buttonsVisible && screens > 1;\n}\n\nfunction addAndRemoveSlides(slider, append, prepend) {\n // This is a no-go\n if (!infiniteScrollEnabled(slider)) return;\n\n // Just in case something's gone horribly wrong\n if (slider.slides.length > 100) {\n return;\n }\n\n if (append) {\n let lastVisibleIndex = slider.activeIndex + slider.params.slidesPerView;\n let slidesToTheRight = slider.slides.length - lastVisibleIndex;\n\n if (slidesToTheRight <= slider.params.slidesPerView) {\n appendBaseSlides(slider);\n }\n }\n\n if (prepend) {\n if (slider.activeIndex <= slider.params.slidesPerView) {\n prependBaseSlides(slider);\n }\n }\n}\n\nfunction getBaseSlides(slider) {\n let result = Array.from(slider.el.querySelectorAll('.swiper-slide.base')).map(node => {\n return node.cloneNode(true);\n });\n\n Array.from(result).forEach(slide => {\n slide.classList.remove(\n 'base',\n 'swiper-slide-visible',\n 'swiper-slide-active',\n 'swiper-slide-next',\n 'swiper-slide-prev'\n );\n });\n\n return result;\n}\n\nfunction appendBaseSlides(slider) {\n let baseSlides = getBaseSlides(slider).slice(0);\n slider.appendSlide(baseSlides);\n\n cullSlides(slider, 1);\n}\n\nfunction prependBaseSlides(slider) {\n // var baseSlides = getBaseSlides(slider).reverse().slice(0);\n let baseSlides = getBaseSlides(slider).reverse().slice(0);\n\n let currentIndex = slider.activeIndex;\n\n for (let i = 0; i < baseSlides.length; i++) {\n slider.prependSlide(baseSlides[i]);\n }\n slider.slideTo(currentIndex + baseSlides.length, 0);\n\n cullSlides(slider, -1);\n}\n\n// Get rid of the oldest N slides to the left of current\nfunction cullSlides(slider, direction) {\n let baseSlides = getBaseSlides(slider);\n\n let indices = [];\n for (let index = 0; index < slider.slides.length; index++) {\n let slide = slider.slides[index];\n if (direction > 0) {\n if (index < slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n } else if (index > slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n }\n\n if (indices.length > baseSlides.length) {\n let toCullIndices = [];\n if (direction > 0) {\n toCullIndices = indices.slice(0, baseSlides.length);\n } else {\n toCullIndices = indices.reverse().slice(0, baseSlides.length).reverse();\n }\n\n slider.removeSlide(toCullIndices.reverse());\n }\n}\n\nfunction initSearch() {\n let searchButton = document.querySelector('.btn-search-open');\n let searchForm = document.querySelector('.form-control-search');\n\n let openSearch = function () {\n document.querySelector('.form-control-search').focus();\n document.querySelector('.navbar-nav-search').classList.add('search-show');\n document.querySelector('.navbar-nav-search').classList.remove('search-hidden');\n };\n\n let closeSearch = function () {\n document.querySelector('.navbar-nav-search').classList.remove('search-show');\n document.querySelector('.navbar-nav-search').classList.add('search-hidden');\n };\n\n searchButton.addEventListener('click', openSearch, false);\n searchForm.addEventListener('focusin', openSearch, false);\n searchForm.addEventListener('focusout', closeSearch, false);\n}\n\nfunction initScroll() {\n let nav = document.querySelector('.navbar-toggler');\n nav.addEventListener('click', () => {\n toggleScroll();\n });\n}\n\nfunction toggleScroll() {\n let body = document.querySelector('body');\n if (!body.classList.contains('no-scroll')) {\n body.classList.add('no-scroll');\n } else {\n body.classList.remove('no-scroll');\n }\n}\n\nfunction documentReady(app) {\n initializeWishlist();\n\n app.classificationsService.load('/classifications.all.json');\n app.urlMapService.load('/urlmap.json');\n\n detectTouchscreen();\n\n let swipers = document.getElementsByClassName('swiper-container');\n for (let i = 0; i < swipers.length; i++) {\n let el = swipers[i];\n if (el.getAttribute('is-wishlist') == undefined) {\n let swiper = initializeSwiper(el, false);\n init(swiper);\n\n toggleButtons(el);\n }\n }\n\n document.querySelectorAll('.s72-btn-trailer:not(.s72-btn-play)').forEach(btn => {\n btn.addEventListener('click', e => {\n e.preventDefault();\n e.stopPropagation();\n });\n });\n\n document.querySelectorAll('.navbar-nav').forEach(nav => {\n nav.classList.remove('s72-hide');\n });\n\n if (document.querySelector('.navbar-nav-search')) {\n initSearch();\n }\n initScroll();\n}\n\nfunction detectTouchscreen() {\n let touchEnabled = s72.utils.device.isTouchEnabled();\n document.querySelector('html').setAttribute('is-touchscreen', touchEnabled);\n}\n\nfunction isTouchscreenEnabled() {\n return document.querySelector('html').getAttribute('is-touchscreen') === 'true';\n}\ndocument.addEventListener('s72loaded', event => {\n let app = event.detail.app;\n documentReady(app);\n});\n"],"names":["super","this","utils","let","getComponentElement","AppComponent","bindAllComponents","render","h","attrs","y"],"mappings":"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"}
|
package/site/styles/_awards.scss
CHANGED
@@ -6,13 +6,14 @@
|
|
6
6
|
gap: 30px 104px;
|
7
7
|
grid-auto-rows: 1fr;
|
8
8
|
margin-bottom: 51px;
|
9
|
+
margin-top: -14px;
|
9
10
|
|
10
11
|
@include media-breakpoint-up(md) {
|
11
12
|
grid-template-columns: repeat(2, minmax(0, 320px));
|
12
13
|
}
|
13
14
|
|
14
15
|
@include media-breakpoint-up(lg) {
|
15
|
-
margin-bottom:
|
16
|
+
margin-bottom: 52px;
|
16
17
|
}
|
17
18
|
}
|
18
19
|
|
@@ -16,24 +16,27 @@
|
|
16
16
|
|
17
17
|
.btn.btn-signin {
|
18
18
|
align-items: center;
|
19
|
-
background-color:
|
20
|
-
border: 3px solid
|
21
|
-
color:
|
19
|
+
background-color: var(--signin-background);
|
20
|
+
border: 3px solid var(--signin-border-color);
|
21
|
+
color: var(--signin-text-color);
|
22
22
|
display: flex;
|
23
23
|
font-size: 14px;
|
24
24
|
justify-content: center;
|
25
|
+
|
25
26
|
@include hover-focus {
|
26
|
-
background:
|
27
|
-
border: 3px solid
|
28
|
-
color: var(--body-color);
|
27
|
+
background: var(--signin-background-hover);
|
28
|
+
border: 3px solid var(--signin-border-color-hover);
|
29
29
|
}
|
30
|
+
|
30
31
|
@include media-breakpoint-up(lg) {
|
31
|
-
background-color:
|
32
|
+
background-color: var(--signin-background-lg);
|
33
|
+
|
32
34
|
@include hover-focus {
|
33
|
-
background:
|
34
|
-
color:
|
35
|
+
background: var(--signin-background-hover-lg);
|
36
|
+
color: var(--signin-text-color-hover);
|
35
37
|
}
|
36
38
|
}
|
39
|
+
|
37
40
|
@include media-breakpoint-up(xl) {
|
38
41
|
font-size: 16px;
|
39
42
|
}
|
@@ -191,6 +194,13 @@ s72-userwishlist-button {
|
|
191
194
|
}
|
192
195
|
|
193
196
|
.extra-buttons {
|
197
|
+
> * {
|
198
|
+
&:hover {
|
199
|
+
background-color: var(--hover-background);
|
200
|
+
border-radius: 50%;
|
201
|
+
}
|
202
|
+
}
|
203
|
+
|
194
204
|
.s72-btn-trailer,
|
195
205
|
s72-share-modal .s72-btn,
|
196
206
|
.s72-btn-wishlist {
|
@@ -198,7 +208,7 @@ s72-userwishlist-button {
|
|
198
208
|
padding: 0;
|
199
209
|
width: 42px;
|
200
210
|
&:hover {
|
201
|
-
color: var(--
|
211
|
+
color: var(--body-color-hover);
|
202
212
|
}
|
203
213
|
|
204
214
|
/* stylelint-disable selector-max-compound-selectors, max-nesting-depth */
|
@@ -138,7 +138,7 @@ s72-carousel {
|
|
138
138
|
}
|
139
139
|
|
140
140
|
.availability-bg {
|
141
|
-
margin-bottom:
|
141
|
+
margin-bottom: 22px;
|
142
142
|
}
|
143
143
|
|
144
144
|
.availability-state {
|
@@ -179,7 +179,7 @@ s72-carousel {
|
|
179
179
|
|
180
180
|
.meta-item-tagline-and-classification {
|
181
181
|
display: flex;
|
182
|
-
margin-bottom:
|
182
|
+
margin-bottom: 12px;
|
183
183
|
}
|
184
184
|
|
185
185
|
.meta-item-tagline {
|
@@ -190,13 +190,17 @@ s72-carousel {
|
|
190
190
|
|
191
191
|
.meta-item-synopsis {
|
192
192
|
display: none;
|
193
|
-
margin-bottom:
|
193
|
+
margin-bottom: 14px;
|
194
194
|
max-width: 600px;
|
195
195
|
padding-top: 0;
|
196
196
|
|
197
197
|
@include media-breakpoint-up(xs) {
|
198
198
|
display: block;
|
199
199
|
}
|
200
|
+
|
201
|
+
p {
|
202
|
+
margin-bottom: 0;
|
203
|
+
}
|
200
204
|
}
|
201
205
|
}
|
202
206
|
|
package/site/styles/_footer.scss
CHANGED
@@ -15,7 +15,7 @@ footer {
|
|
15
15
|
}
|
16
16
|
|
17
17
|
.footer-brand-image {
|
18
|
-
height:
|
18
|
+
height: var(--footer-brand-height);
|
19
19
|
}
|
20
20
|
|
21
21
|
.footer-nav {
|
@@ -44,7 +44,7 @@ footer {
|
|
44
44
|
}
|
45
45
|
|
46
46
|
&:hover {
|
47
|
-
color: var(--
|
47
|
+
color: var(--body-color-hover);
|
48
48
|
}
|
49
49
|
}
|
50
50
|
}
|
@@ -78,6 +78,10 @@ footer {
|
|
78
78
|
|
79
79
|
a {
|
80
80
|
@include caption-1-style;
|
81
|
+
|
82
|
+
&:hover {
|
83
|
+
text-decoration: none;
|
84
|
+
}
|
81
85
|
}
|
82
86
|
}
|
83
87
|
|
@@ -112,41 +116,16 @@ footer {
|
|
112
116
|
display: flex;
|
113
117
|
justify-content: center;
|
114
118
|
padding: 60px 20px 0;
|
119
|
+
|
115
120
|
@include media-breakpoint-up(lg) {
|
116
121
|
padding: 60px 50px 0;
|
117
122
|
}
|
118
123
|
|
119
|
-
|
120
|
-
max-width: max-content;
|
121
|
-
}
|
122
|
-
|
123
|
-
.sponsors-xxxs {
|
124
|
-
width: 100%;
|
125
|
-
|
126
|
-
@include media-breakpoint-up(xs) {
|
127
|
-
display: none;
|
128
|
-
}
|
129
|
-
}
|
130
|
-
|
131
|
-
.sponsors-xs {
|
132
|
-
display: none;
|
133
|
-
width: 100%;
|
134
|
-
|
135
|
-
@include media-breakpoint-up(xs) {
|
136
|
-
display: block;
|
137
|
-
}
|
138
|
-
|
139
|
-
@include media-breakpoint-up(md) {
|
140
|
-
display: none;
|
141
|
-
}
|
142
|
-
}
|
143
|
-
|
144
|
-
.sponsors-md {
|
145
|
-
display: none;
|
124
|
+
.sponsor-picture {
|
146
125
|
width: 100%;
|
147
126
|
|
148
|
-
|
149
|
-
|
127
|
+
.sponsor-image {
|
128
|
+
width: 100%;
|
150
129
|
}
|
151
130
|
}
|
152
131
|
}
|
package/site/styles/_forms.scss
CHANGED
@@ -204,7 +204,13 @@ s72-activatedevice-form,
|
|
204
204
|
|
205
205
|
.s72-btn-modal-cancel {
|
206
206
|
border-color: transparent;
|
207
|
+
color: var(--body-color);
|
207
208
|
margin-right: $grid-gutter-width / 3;
|
209
|
+
|
210
|
+
&:hover {
|
211
|
+
background-color: var(--hover-background);
|
212
|
+
color: var(--body-color-hover);
|
213
|
+
}
|
208
214
|
}
|
209
215
|
}
|
210
216
|
}
|
@@ -215,7 +221,12 @@ s72-activatedevice-form,
|
|
215
221
|
|
216
222
|
.s72-btn {
|
217
223
|
&.s72-btn-modal-close {
|
224
|
+
color: var(--body-color);
|
218
225
|
top: 11px;
|
226
|
+
|
227
|
+
&:hover {
|
228
|
+
color: var(--body-color-hover);
|
229
|
+
}
|
219
230
|
}
|
220
231
|
}
|
221
232
|
|
@@ -33,25 +33,18 @@
|
|
33
33
|
top: 0;
|
34
34
|
width: 100%;
|
35
35
|
z-index: -1;
|
36
|
-
@include media-breakpoint-up(
|
36
|
+
@include media-breakpoint-up(xs) {
|
37
37
|
height: 700px;
|
38
38
|
opacity: 1;
|
39
39
|
}
|
40
|
-
@include media-breakpoint-up(
|
41
|
-
height:
|
42
|
-
left: 0;
|
43
|
-
margin-left: auto;
|
44
|
-
margin-right: auto;
|
45
|
-
right: 0;
|
40
|
+
@include media-breakpoint-up(lg) {
|
41
|
+
height: auto;
|
46
42
|
}
|
47
43
|
|
48
44
|
s72-image {
|
49
45
|
display: block;
|
50
46
|
position: relative;
|
51
47
|
width: 100%;
|
52
|
-
@include media-breakpoint-up(lg) {
|
53
|
-
width: 1600px;
|
54
|
-
}
|
55
48
|
|
56
49
|
&::before {
|
57
50
|
@extend .left-gradient-bg;
|
@@ -63,37 +56,29 @@
|
|
63
56
|
top: 0;
|
64
57
|
width: 60%;
|
65
58
|
z-index: 8;
|
66
|
-
@include media-breakpoint-up(
|
67
|
-
|
59
|
+
@include media-breakpoint-up(lg) {
|
60
|
+
display: none;
|
68
61
|
}
|
69
62
|
}
|
70
63
|
|
71
64
|
img {
|
72
65
|
animation: fadein 2s;
|
73
|
-
height:
|
74
|
-
|
75
|
-
width: auto;
|
76
|
-
@include media-breakpoint-up(md) {
|
77
|
-
float: right;
|
78
|
-
height: 700px;
|
79
|
-
margin-left: 0;
|
80
|
-
}
|
81
|
-
@include media-breakpoint-up(xl) {
|
82
|
-
float: right;
|
83
|
-
height: auto;
|
84
|
-
}
|
66
|
+
min-height: 100%;
|
67
|
+
object-fit: cover;
|
85
68
|
}
|
86
69
|
}
|
87
70
|
|
88
71
|
&::after {
|
89
72
|
@extend .bottom-gradient-bg;
|
90
|
-
bottom: 0;
|
91
73
|
content: '';
|
92
74
|
height: 350px;
|
93
|
-
left: 0;
|
94
75
|
position: absolute;
|
95
76
|
width: 100%;
|
96
77
|
z-index: 8;
|
78
|
+
@include media-breakpoint-up(lg) {
|
79
|
+
@include detail-page-gradient-lg;
|
80
|
+
height: 100%;
|
81
|
+
}
|
97
82
|
}
|
98
83
|
}
|
99
84
|
|
@@ -207,7 +192,7 @@ s72-element-switcher,
|
|
207
192
|
|
208
193
|
.meta-detail-synopsis,
|
209
194
|
.meta-detail-switcher-tagline {
|
210
|
-
padding-top:
|
195
|
+
padding-top: 22px;
|
211
196
|
|
212
197
|
p {
|
213
198
|
animation: fadein 2s;
|
@@ -238,6 +223,10 @@ s72-element-switcher,
|
|
238
223
|
|
239
224
|
a {
|
240
225
|
animation: fadein 2s;
|
226
|
+
|
227
|
+
&:hover {
|
228
|
+
text-decoration: none;
|
229
|
+
}
|
241
230
|
}
|
242
231
|
}
|
243
232
|
}
|
@@ -387,16 +376,18 @@ s72-element-switcher,
|
|
387
376
|
}
|
388
377
|
|
389
378
|
.element-switcher-wrapper {
|
390
|
-
display:
|
379
|
+
display: grid;
|
391
380
|
gap: 50px;
|
392
|
-
|
381
|
+
grid-template-columns: auto auto;
|
393
382
|
width: 100%;
|
394
383
|
|
395
384
|
.sponsor {
|
396
385
|
display: none;
|
397
386
|
padding-top: 10px;
|
387
|
+
|
398
388
|
@include media-breakpoint-up(lg) {
|
399
389
|
display: block;
|
390
|
+
margin-left: auto;
|
400
391
|
}
|
401
392
|
}
|
402
393
|
}
|
@@ -417,9 +408,12 @@ s72-element-switcher,
|
|
417
408
|
}
|
418
409
|
|
419
410
|
s72-element-switcher {
|
420
|
-
margin-bottom:
|
421
|
-
|
422
|
-
|
411
|
+
margin-bottom: 62px;
|
412
|
+
|
413
|
+
.s72-toggle {
|
414
|
+
&:hover {
|
415
|
+
color: var(--body-color-hover);
|
416
|
+
}
|
423
417
|
}
|
424
418
|
}
|
425
419
|
|
@@ -427,6 +421,7 @@ s72-element-switcher {
|
|
427
421
|
display: grid;
|
428
422
|
gap: 20px;
|
429
423
|
grid-template-columns: repeat(1, 1fr);
|
424
|
+
padding-bottom: 20px;
|
430
425
|
|
431
426
|
@include media-breakpoint-up(lg) {
|
432
427
|
grid-template-columns: repeat(2, 1fr);
|
package/site/styles/_mixins.scss
CHANGED
@@ -71,6 +71,28 @@
|
|
71
71
|
);
|
72
72
|
}
|
73
73
|
|
74
|
+
@mixin detail-page-gradient-lg() {
|
75
|
+
background: linear-gradient(
|
76
|
+
to bottom,
|
77
|
+
rgba(var(--body-bg-rgb), 0) 0%,
|
78
|
+
rgba(var(--body-bg-rgb), 0.068) 15.9%,
|
79
|
+
rgba(var(--body-bg-rgb), 0.138) 28%,
|
80
|
+
rgba(var(--body-bg-rgb), 0.211) 36.9%,
|
81
|
+
rgba(var(--body-bg-rgb), 0.285) 43.1%,
|
82
|
+
rgba(var(--body-bg-rgb), 0.359) 47.3%,
|
83
|
+
rgba(var(--body-bg-rgb), 0.434) 49.9%,
|
84
|
+
rgba(var(--body-bg-rgb), 0.508) 51.6%,
|
85
|
+
rgba(var(--body-bg-rgb), 0.581) 52.9%,
|
86
|
+
rgba(var(--body-bg-rgb), 0.652) 54.4%,
|
87
|
+
rgba(var(--body-bg-rgb), 0.721) 56.7%,
|
88
|
+
rgba(var(--body-bg-rgb), 0.786) 60.4%,
|
89
|
+
rgba(var(--body-bg-rgb), 0.847) 66%,
|
90
|
+
rgba(var(--body-bg-rgb), 0.86) 74.1%,
|
91
|
+
rgba(var(--body-bg-rgb), 0.86) 85.2%,
|
92
|
+
rgba(var(--body-bg-rgb)) 100%
|
93
|
+
);
|
94
|
+
}
|
95
|
+
|
74
96
|
@mixin a {
|
75
97
|
background-color: transparent;
|
76
98
|
color: var(--link-color);
|
@@ -78,7 +100,7 @@
|
|
78
100
|
|
79
101
|
&:hover,
|
80
102
|
&:focus {
|
81
|
-
color: var(--link-color);
|
103
|
+
color: var(--link-color-hover);
|
82
104
|
text-decoration: none;
|
83
105
|
}
|
84
106
|
}
|