@jetbrains/kotlin-web-site-ui 2.9.0-alpha.4 → 2.9.0

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/footer.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see footer.js.LICENSE.txt */
2
- !function(){var t={4184:function(t,e){var r;!function(){"use strict";var l={}.hasOwnProperty;function o(){for(var t=[],e=0;e<arguments.length;e++){var r=arguments[e];if(r){var n=typeof r;if("string"===n||"number"===n)t.push(r);else if(Array.isArray(r)){if(r.length){var a=o.apply(null,r);a&&t.push(a)}}else if("object"===n)if(r.toString===Object.prototype.toString)for(var i in r)l.call(r,i)&&r[i]&&t.push(i);else t.push(r.toString())}}return t.join(" ")}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()},5251:function(t,e,r){"use strict";var l=r(3910),o=60103;if(60107,"function"==typeof Symbol&&Symbol.for){var n=Symbol.for;o=n("react.element"),n("react.fragment")}var a=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(t,e,r){var l,n={},c=null,u=null;for(l in void 0!==r&&(c=""+r),void 0!==e.key&&(c=""+e.key),void 0!==e.ref&&(u=e.ref),e)i.call(e,l)&&!s.hasOwnProperty(l)&&(n[l]=e[l]);if(t&&t.defaultProps)for(l in e=t.defaultProps)void 0===n[l]&&(n[l]=e[l]);return{$$typeof:o,type:t,key:c,ref:u,props:n,_owner:a.current}}e.jsx=c,e.jsxs=c},5893:function(t,e,r){"use strict";t.exports=r(5251)},3910:function(t){"use strict";t.exports=require("react")}},e={};function r(l){var o=e[l];if(void 0!==o)return o.exports;var n=e[l]={exports:{}};return t[l](n,n.exports,r),n.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var l in e)r.o(e,l)&&!r.o(t,l)&&Object.defineProperty(t,l,{enumerable:!0,get:e[l]})},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var l={};!function(){"use strict";r.r(l),r.d(l,{default:function(){return H}});var t=require("@rescui/ui-contexts");var e,o,n,a,i,s,c,u=r(3910);function h(){return h=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},h.apply(this,arguments)}function f(){return f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},f.apply(this,arguments)}function d(){return d=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},d.apply(this,arguments)}function v(){return v=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},v.apply(this,arguments)}function p(){return p=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},p.apply(this,arguments)}function m(){return m=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},m.apply(this,arguments)}const g=[{url:"https://github.com/JetBrains/kotlin",title:"Kotlin on GitHub",logoAlt:"GitHub logo",icon:function(t){return u.createElement("svg",h({width:18,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),e||(e=u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M17.9 9.2a8.94 8.94 0 01-6.4 8.6.392.392 0 01-.4-.4v-3a1.58 1.58 0 00-.5-1.2 3.734 3.734 0 003.9-3.4 4.244 4.244 0 00-.9-3.5c.29-.79.217-1.669-.2-2.4a7.24 7.24 0 00-2.4.9c-1.44-.4-2.96-.4-4.4 0a4.62 4.62 0 00-2.3-.9h-.1A2.75 2.75 0 004 6.3a4.075 4.075 0 00-.9 3.5A3.81 3.81 0 007 13.2c-.198.148-.34.36-.4.6a2.638 2.638 0 00-.1.7 1.943 1.943 0 01-2.2-.5c-.5-.8-.9-1.2-1.4-1.3-.5-.1-.6.2-.6.2.079.26.26.476.5.6.387.216.674.575.8 1a1.827 1.827 0 001.2 1.2 3.915 3.915 0 001.9 0v1.7a.297.297 0 01-.4.3A8.82 8.82 0 010 9.2a8.95 8.95 0 0117.9 0z",fill:"currentColor"})))}},{url:"https://twitter.com/kotlin",title:"Kotlin on Twitter",logoAlt:"Twitter logo",icon:function(t){return u.createElement("svg",p({width:20,height:17,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),s||(s=u.createElement("path",{d:"M6.29 16.25A11.59 11.59 0 0018 4.58v-.53a8.3 8.3 0 002-2.13 8.36 8.36 0 01-2.36.65A4.16 4.16 0 0019.45.3a8.19 8.19 0 01-2.61 1 4.11 4.11 0 00-7 3.75A11.7 11.7 0 011.39.75a4.11 4.11 0 001.27 5.48A4.06 4.06 0 01.8 5.71a4.11 4.11 0 003.29 4 4.13 4.13 0 01-1.85.07 4.12 4.12 0 003.83 2.85A8.25 8.25 0 011 14.47a7.94 7.94 0 01-1-.06 11.69 11.69 0 006.29 1.84z",fill:"currentColor"})))}},{url:"https://surveys.jetbrains.com/s3/kotlin-slack-sign-up",title:"Kotlin Slack",logoAlt:"Slack logo",icon:function(t){return u.createElement("svg",d({width:18,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),n||(n=u.createElement("path",{d:"M6.63 9.49a1.895 1.895 0 00-1.89 1.89v4.73a1.89 1.89 0 103.78 0v-4.73a1.895 1.895 0 00-1.89-1.89zM.01 11.38a1.89 1.89 0 103.78 0V9.49H1.91a1.897 1.897 0 00-1.9 1.89zM6.63 0a1.89 1.89 0 100 3.78h1.89v-1.9A1.886 1.886 0 006.63 0zM1.89 8.53h4.74a1.89 1.89 0 100-3.78H1.89a1.89 1.89 0 000 3.78zm14.2-3.79a1.895 1.895 0 00-1.89 1.89v1.89h1.89a1.89 1.89 0 100-3.78zM9.48 1.89v4.74a1.89 1.89 0 103.78 0V1.89a1.89 1.89 0 10-3.78 0zm3.78 14.22a1.895 1.895 0 00-1.89-1.89H9.48v1.89a1.89 1.89 0 103.78 0zm2.85-6.62h-4.74a1.89 1.89 0 100 3.78h4.74a1.89 1.89 0 100-3.78z",fill:"currentColor"})))}},{url:"https://www.reddit.com/r/Kotlin/",title:"Kotlin on Reddit",logoAlt:"Reddit logo",icon:function(t){return u.createElement("svg",f({width:20,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),o||(o=u.createElement("path",{d:"M20 9.068a2.183 2.183 0 00-2.186-2.186 2.2 2.2 0 00-1.524.61c-1.505-1.076-3.566-1.775-5.86-1.865L11.434.932l3.261.699a1.559 1.559 0 003.119-.072A1.56 1.56 0 0016.254 0c-.609 0-1.147.358-1.397.878l-3.638-.77a.381.381 0 00-.287.053.347.347 0 00-.161.251L9.659 5.645c-2.33.072-4.426.77-5.95 1.864a2.2 2.2 0 00-1.523-.61 2.183 2.183 0 00-.896 4.176c-.036.22-.054.441-.053.664 0 3.368 3.924 6.11 8.763 6.11s8.764-2.723 8.764-6.11c0-.223-.018-.444-.054-.664A2.208 2.208 0 0020 9.069zm-15.018 1.56a1.56 1.56 0 013.118 0c0 .86-.698 1.559-1.559 1.559-.86.017-1.559-.7-1.559-1.56zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 010-.573.4.4 0 01.574 0c.68.68 2.115.913 3.136.913 1.022 0 2.473-.232 3.136-.913a.401.401 0 01.574 0 .436.436 0 010 .573zm-.287-2.563a1.56 1.56 0 010-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558z",fill:"currentColor"})))}},{url:"https://stackoverflow.com/questions/tagged/kotlin",title:"Kotlin on Stack Overflow",logoAlt:"Stack Overflow logo",icon:function(t){return u.createElement("svg",v({width:16,height:19,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),a||(a=u.createElement("path",{d:"M13.527 17.27V12.19h1.685v6.764H0v-6.763h1.685v5.078h11.842z",fill:"currentColor"})),i||(i=u.createElement("path",{d:"M3.546 11.71l8.274 1.73.35-1.664-8.274-1.73-.35 1.664zM4.64 7.77l7.661 3.568.7-1.532-7.66-3.59-.7 1.554zm2.123-3.765l6.501 5.407 1.073-1.292-6.501-5.406-1.073 1.291zM10.966 0L9.609 1.007l5.034 6.785L16 6.785 10.966 0zM3.37 15.562h8.448v-1.685H3.371v1.685z",fill:"currentColor"})))}},{url:"https://www.youtube.com/channel/UCP7uiEZIqci43m22KDl0sNw",title:"Kotlin on YouTube",logoAlt:"YouTube logo",icon:function(t){return u.createElement("svg",m({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),c||(c=u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M21.005 5.617c.43.633.702 1.36.795 2.119.124 1.146.191 2.299.2 3.452v1.618a34.375 34.375 0 01-.2 3.454 4.808 4.808 0 01-.795 2.116 2.772 2.772 0 01-2.003.904c-2.8.215-7.002.222-7.002.222s-5.2-.05-6.8-.214a3.27 3.27 0 01-2.205-.912 4.8 4.8 0 01-.795-2.117 34.354 34.354 0 01-.2-3.453v-1.618c.009-1.154.075-2.306.2-3.452.093-.76.365-1.486.795-2.12a2.76 2.76 0 012.003-.901c2.799-.217 6.997-.217 6.997-.217h.01s4.198 0 6.997.217a2.76 2.76 0 012.003.902zM15.755 12L9.501 8.249v7.502L15.754 12z",fill:"currentColor"})))}}];var w=r(4184),k=r.n(w);var y=r(5893);const _=e=>{let{socialNetwork:r}=e;const l=r.icon,o=(0,t.useTheme)();return(0,y.jsx)("a",{target:"_blank",className:k()("ktl-social-item-module_social-item_altig",{"ktl-social-item-module_social-item-dark-theme_4WGX5":"dark"===o}),href:r.url,title:r.title,children:(0,y.jsx)(l,{})})},b=()=>(0,y.jsx)("div",{className:"ktl-social-list-module_social-list_InQY0",children:g.map((t=>(0,y.jsx)(_,{socialNetwork:t},t.url)))}),j=[{url:"https://kotlinlang.org/docs/contribute.html",title:"Contributing to Kotlin"},{url:"https://kotlinlang.org/docs/releases.html",title:"Releases"},{url:"https://kotlinlang.org/assets/kotlin-media-kit.pdf",title:"Press Kit"},{url:"https://kotlinlang.org/docs/security.html",title:"Security"},{url:"https://blog.jetbrains.com/kotlin/",title:"Blog",isTargetBlank:!0},{url:"https://youtrack.jetbrains.com/issues/KT",title:"Issue Tracker",isTargetBlank:!0},{url:"https://resources.jetbrains.com/storage/products/kotlin/docs/kotlin_logos.zip",title:"Brand assets",isTargetBlank:!0}];var x=require("@rescui/typography");const z=e=>{let{data:r}=e;const l=(0,x.useTextStyles)(),o=(0,t.useTheme)();return(0,y.jsx)("li",{className:k()("ktl-nav-item-module_nav-item_4o3J-",{"ktl-nav-item-module_nav-item-dark-theme_3EbRM":"dark"==o}),children:(0,y.jsx)("a",{target:r.isTargetBlank?"_blank":void 0,href:r.url,title:r.title,className:k()(l("rs-text-2"),l("rs-link",{hardness:"average",mode:"nude"})),children:r.title})})},O=t=>(0,y.jsx)("nav",{className:t.className,children:(0,y.jsx)("ul",{className:"ktl-nav-list-module_nav-list_cEUsm",children:j.map((t=>(0,y.jsx)(z,{data:t},t.url)))})});var M,N,E;function S(){return S=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},S.apply(this,arguments)}var A=function(t){return u.createElement("svg",S({viewBox:"0 0 60 60",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),M||(M=u.createElement("path",{d:"M60 0H0v60h60V0z",fill:"#000"})),N||(N=u.createElement("path",{d:"M27.648 48.706H5.178v3.765h22.47v-3.765zM4.941 15.765l1.765-1.647c.47.588.941.941 1.53.941.705 0 1.058-.47 1.058-1.412V7.412H12v6.235c0 1.177-.353 2.118-.94 2.706-.59.588-1.53.941-2.707.941-1.765.118-2.706-.588-3.412-1.529zM12.586 7.53h7.883v2.235h-5.177v1.529h4.706v2.118h-4.706v1.53h5.294v2.352h-7.882l-.118-9.765zM24 9.882h-2.941V7.53h8.588v2.353h-2.941v7.412H24V9.882zM5.177 19.53h5.06c1.175 0 2.117.352 2.705.823.353.353.588.941.588 1.647 0 1.177-.588 1.765-1.53 2.235 1.177.353 1.883 1.06 1.883 2.353 0 1.647-1.412 2.706-3.647 2.706H5.177V19.53zm5.647 3.058c0-.588-.47-.823-1.176-.823H7.883v1.764H9.53c.824-.117 1.294-.352 1.294-.94zm-.94 2.824H7.764v1.765h2.118c.824 0 1.294-.353 1.294-.942 0-.588-.47-.823-1.294-.823zM14.352 19.53h4.588c1.53 0 2.471.352 3.177 1.058.588.589.823 1.294.823 2.236 0 1.53-.823 2.47-2 3.058l2.353 3.412h-3.058l-2-2.94h-1.177v2.94h-2.706V19.53zm4.47 4.705c.942 0 1.413-.47 1.413-1.176 0-.824-.589-1.177-1.412-1.177h-1.765v2.353h1.765z",fill:"#fff"})),E||(E=u.createElement("path",{d:"M26.119 19.53h2.588l4.117 9.882h-2.94l-.707-1.765h-3.764l-.706 1.765h-2.824l4.236-9.883zm2.352 5.882l-1.058-2.706-1.06 2.706h2.118zM33.177 19.53h2.706v9.764h-2.706V19.53zM36.588 19.53h2.471l4 5.176v-5.177h2.706v9.765h-2.353L39.294 24v5.412h-2.706v-9.883zM46 27.883l1.529-1.765c.941.824 2 1.177 3.176 1.177.706 0 1.177-.236 1.177-.706s-.353-.588-1.647-.941c-2.118-.47-3.647-1.06-3.647-3.06 0-1.764 1.411-3.176 3.764-3.176 1.648 0 2.942.47 4 1.294l-1.411 1.883c-.942-.588-1.883-.941-2.706-.941-.706 0-.941.235-.941.588 0 .47.353.588 1.647.941 2.235.47 3.647 1.177 3.647 3.059 0 2-1.53 3.176-4 3.176-1.765.118-3.412-.47-4.589-1.53z",fill:"#fff"})))};const T=t=>(0,y.jsx)("a",{href:"https://jetbrains.com",target:"_blank",className:k()(t.className,"ktl-logo-module_link_Z7W49"),children:(0,y.jsx)(A,{})}),P="ktl-footer-module_underlined-link_mhvsS";var H=e=>{let{forwardedRef:r,className:l}=e;const o=(0,x.useTextStyles)(),n=(0,t.useTheme)(),a=o("rs-link",{hardness:"pale",mode:"nude"});return(0,y.jsxs)("footer",{className:k()("ktl-footer-module_footer_YYHJn",l,{"ktl-footer-module_footer-dark-theme_GiAQp":"dark"===n}),ref:r,children:[(0,y.jsxs)("div",{className:"ktl-footer-module_social-list-area_4hUNp",children:[(0,y.jsx)("div",{className:k()(o("rs-h4"),"ktl-footer-module_social-list-title_KkSwg"),children:"Stay in touch:"}),(0,y.jsx)(b,{})]}),(0,y.jsx)(O,{className:"ktl-footer-module_nav-list-area_QH4VT"}),(0,y.jsxs)("div",{className:k()(o("rs-text-3",{hardness:"pale"}),"ktl-footer-module_text-area_H3lZP"),children:[(0,y.jsxs)("div",{className:"ktl-footer-module_copyright_eGK3c",children:["Kotlin™ is protected under the"," ",(0,y.jsx)("a",{className:k()(a,P),href:"https://kotlinlang.org/foundation/kotlin-foundation.html",children:"Kotlin Foundation"})," ","and licensed under the"," ",(0,y.jsx)("a",{className:k()(a,P),target:"_blank",href:"https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE",children:"Apache 2 license"}),"."]})," ",(0,y.jsxs)("div",{className:"ktl-footer-module_motto_JKLSs",children:["Supported and developed by ",(0,y.jsx)("a",{className:k()(a,P),href:"https://www.jetbrains.com/",target:"_blank",children:"JetBrains"})]})]}),(0,y.jsx)(T,{className:"ktl-footer-module_logo-area_-cPlN"})]})}}(),module.exports=l}();
2
+ !function(){var t={4184:function(t,e){var r;!function(){"use strict";var l={}.hasOwnProperty;function o(){for(var t=[],e=0;e<arguments.length;e++){var r=arguments[e];if(r){var n=typeof r;if("string"===n||"number"===n)t.push(r);else if(Array.isArray(r)){if(r.length){var a=o.apply(null,r);a&&t.push(a)}}else if("object"===n)if(r.toString===Object.prototype.toString)for(var i in r)l.call(r,i)&&r[i]&&t.push(i);else t.push(r.toString())}}return t.join(" ")}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()},5251:function(t,e,r){"use strict";var l=r(3910),o=60103;if(60107,"function"==typeof Symbol&&Symbol.for){var n=Symbol.for;o=n("react.element"),n("react.fragment")}var a=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(t,e,r){var l,n={},c=null,u=null;for(l in void 0!==r&&(c=""+r),void 0!==e.key&&(c=""+e.key),void 0!==e.ref&&(u=e.ref),e)i.call(e,l)&&!s.hasOwnProperty(l)&&(n[l]=e[l]);if(t&&t.defaultProps)for(l in e=t.defaultProps)void 0===n[l]&&(n[l]=e[l]);return{$$typeof:o,type:t,key:c,ref:u,props:n,_owner:a.current}}e.jsx=c,e.jsxs=c},5893:function(t,e,r){"use strict";t.exports=r(5251)},3910:function(t){"use strict";t.exports=require("react")}},e={};function r(l){var o=e[l];if(void 0!==o)return o.exports;var n=e[l]={exports:{}};return t[l](n,n.exports,r),n.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var l in e)r.o(e,l)&&!r.o(t,l)&&Object.defineProperty(t,l,{enumerable:!0,get:e[l]})},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var l={};!function(){"use strict";r.r(l),r.d(l,{default:function(){return H}});var t=require("@rescui/ui-contexts");var e,o,n,a,i,s,c,u=r(3910);function h(){return h=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},h.apply(this,arguments)}function f(){return f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},f.apply(this,arguments)}function d(){return d=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},d.apply(this,arguments)}function v(){return v=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},v.apply(this,arguments)}function p(){return p=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},p.apply(this,arguments)}function m(){return m=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},m.apply(this,arguments)}const g=[{url:"https://github.com/JetBrains/kotlin",title:"Kotlin on GitHub",logoAlt:"GitHub logo",icon:function(t){return u.createElement("svg",h({width:18,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),e||(e=u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M17.9 9.2a8.94 8.94 0 01-6.4 8.6.392.392 0 01-.4-.4v-3a1.58 1.58 0 00-.5-1.2 3.734 3.734 0 003.9-3.4 4.244 4.244 0 00-.9-3.5c.29-.79.217-1.669-.2-2.4a7.24 7.24 0 00-2.4.9c-1.44-.4-2.96-.4-4.4 0a4.62 4.62 0 00-2.3-.9h-.1A2.75 2.75 0 004 6.3a4.075 4.075 0 00-.9 3.5A3.81 3.81 0 007 13.2c-.198.148-.34.36-.4.6a2.638 2.638 0 00-.1.7 1.943 1.943 0 01-2.2-.5c-.5-.8-.9-1.2-1.4-1.3-.5-.1-.6.2-.6.2.079.26.26.476.5.6.387.216.674.575.8 1a1.827 1.827 0 001.2 1.2 3.915 3.915 0 001.9 0v1.7a.297.297 0 01-.4.3A8.82 8.82 0 010 9.2a8.95 8.95 0 0117.9 0z",fill:"currentColor"})))}},{url:"https://twitter.com/kotlin",title:"Kotlin on Twitter",logoAlt:"Twitter logo",icon:function(t){return u.createElement("svg",p({width:20,height:17,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),s||(s=u.createElement("path",{d:"M6.29 16.25A11.59 11.59 0 0018 4.58v-.53a8.3 8.3 0 002-2.13 8.36 8.36 0 01-2.36.65A4.16 4.16 0 0019.45.3a8.19 8.19 0 01-2.61 1 4.11 4.11 0 00-7 3.75A11.7 11.7 0 011.39.75a4.11 4.11 0 001.27 5.48A4.06 4.06 0 01.8 5.71a4.11 4.11 0 003.29 4 4.13 4.13 0 01-1.85.07 4.12 4.12 0 003.83 2.85A8.25 8.25 0 011 14.47a7.94 7.94 0 01-1-.06 11.69 11.69 0 006.29 1.84z",fill:"currentColor"})))}},{url:"https://surveys.jetbrains.com/s3/kotlin-slack-sign-up",title:"Kotlin Slack",logoAlt:"Slack logo",icon:function(t){return u.createElement("svg",d({width:18,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),n||(n=u.createElement("path",{d:"M6.63 9.49a1.895 1.895 0 00-1.89 1.89v4.73a1.89 1.89 0 103.78 0v-4.73a1.895 1.895 0 00-1.89-1.89zM.01 11.38a1.89 1.89 0 103.78 0V9.49H1.91a1.897 1.897 0 00-1.9 1.89zM6.63 0a1.89 1.89 0 100 3.78h1.89v-1.9A1.886 1.886 0 006.63 0zM1.89 8.53h4.74a1.89 1.89 0 100-3.78H1.89a1.89 1.89 0 000 3.78zm14.2-3.79a1.895 1.895 0 00-1.89 1.89v1.89h1.89a1.89 1.89 0 100-3.78zM9.48 1.89v4.74a1.89 1.89 0 103.78 0V1.89a1.89 1.89 0 10-3.78 0zm3.78 14.22a1.895 1.895 0 00-1.89-1.89H9.48v1.89a1.89 1.89 0 103.78 0zm2.85-6.62h-4.74a1.89 1.89 0 100 3.78h4.74a1.89 1.89 0 100-3.78z",fill:"currentColor"})))}},{url:"https://www.reddit.com/r/Kotlin/",title:"Kotlin on Reddit",logoAlt:"Reddit logo",icon:function(t){return u.createElement("svg",f({width:20,height:18,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),o||(o=u.createElement("path",{d:"M20 9.068a2.183 2.183 0 00-2.186-2.186 2.2 2.2 0 00-1.524.61c-1.505-1.076-3.566-1.775-5.86-1.865L11.434.932l3.261.699a1.559 1.559 0 003.119-.072A1.56 1.56 0 0016.254 0c-.609 0-1.147.358-1.397.878l-3.638-.77a.381.381 0 00-.287.053.347.347 0 00-.161.251L9.659 5.645c-2.33.072-4.426.77-5.95 1.864a2.2 2.2 0 00-1.523-.61 2.183 2.183 0 00-.896 4.176c-.036.22-.054.441-.053.664 0 3.368 3.924 6.11 8.763 6.11s8.764-2.723 8.764-6.11c0-.223-.018-.444-.054-.664A2.208 2.208 0 0020 9.069zm-15.018 1.56a1.56 1.56 0 013.118 0c0 .86-.698 1.559-1.559 1.559-.86.017-1.559-.7-1.559-1.56zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 010-.573.4.4 0 01.574 0c.68.68 2.115.913 3.136.913 1.022 0 2.473-.232 3.136-.913a.401.401 0 01.574 0 .436.436 0 010 .573zm-.287-2.563a1.56 1.56 0 010-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558z",fill:"currentColor"})))}},{url:"https://stackoverflow.com/questions/tagged/kotlin",title:"Kotlin on Stack Overflow",logoAlt:"Stack Overflow logo",icon:function(t){return u.createElement("svg",v({width:16,height:19,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),a||(a=u.createElement("path",{d:"M13.527 17.27V12.19h1.685v6.764H0v-6.763h1.685v5.078h11.842z",fill:"currentColor"})),i||(i=u.createElement("path",{d:"M3.546 11.71l8.274 1.73.35-1.664-8.274-1.73-.35 1.664zM4.64 7.77l7.661 3.568.7-1.532-7.66-3.59-.7 1.554zm2.123-3.765l6.501 5.407 1.073-1.292-6.501-5.406-1.073 1.291zM10.966 0L9.609 1.007l5.034 6.785L16 6.785 10.966 0zM3.37 15.562h8.448v-1.685H3.371v1.685z",fill:"currentColor"})))}},{url:"https://www.youtube.com/channel/UCP7uiEZIqci43m22KDl0sNw",title:"Kotlin on YouTube",logoAlt:"YouTube logo",icon:function(t){return u.createElement("svg",m({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),c||(c=u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M21.005 5.617c.43.633.702 1.36.795 2.119.124 1.146.191 2.299.2 3.452v1.618a34.375 34.375 0 01-.2 3.454 4.808 4.808 0 01-.795 2.116 2.772 2.772 0 01-2.003.904c-2.8.215-7.002.222-7.002.222s-5.2-.05-6.8-.214a3.27 3.27 0 01-2.205-.912 4.8 4.8 0 01-.795-2.117 34.354 34.354 0 01-.2-3.453v-1.618c.009-1.154.075-2.306.2-3.452.093-.76.365-1.486.795-2.12a2.76 2.76 0 012.003-.901c2.799-.217 6.997-.217 6.997-.217h.01s4.198 0 6.997.217a2.76 2.76 0 012.003.902zM15.755 12L9.501 8.249v7.502L15.754 12z",fill:"currentColor"})))}}];var w=r(4184),k=r.n(w);var y=r(5893);const _=e=>{let{socialNetwork:r}=e;const l=r.icon,o=(0,t.useTheme)();return(0,y.jsx)("a",{target:"_blank",className:k()("ktl-social-item-module_social-item_altig",{"ktl-social-item-module_social-item-dark-theme_4WGX5":"dark"===o}),href:r.url,title:r.title,children:(0,y.jsx)(l,{})})},b=()=>(0,y.jsx)("div",{className:"ktl-social-list-module_social-list_InQY0",children:g.map((t=>(0,y.jsx)(_,{socialNetwork:t},t.url)))}),j=[{url:"https://kotlinlang.org/docs/contribute.html",title:"Contributing to Kotlin"},{url:"https://kotlinlang.org/docs/releases.html",title:"Releases"},{url:"https://kotlinlang.org/assets/kotlin-media-kit.pdf",title:"Press Kit"},{url:"https://kotlinlang.org/docs/security.html",title:"Security"},{url:"https://blog.jetbrains.com/kotlin/",title:"Blog",isTargetBlank:!0},{url:"https://youtrack.jetbrains.com/issues/KT",title:"Issue Tracker",isTargetBlank:!0},{url:"https://resources.jetbrains.com/storage/products/kotlin/docs/kotlin_logos.zip",title:"Brand assets",isTargetBlank:!0},{url:"https://www.jetbrains.com/careers/jobs/?team=Kotlin",title:"Careers",isTargetBlank:!0}];var x=require("@rescui/typography");const z=e=>{let{data:r}=e;const l=(0,x.useTextStyles)(),o=(0,t.useTheme)();return(0,y.jsx)("li",{className:k()("ktl-nav-item-module_nav-item_4o3J-",{"ktl-nav-item-module_nav-item-dark-theme_3EbRM":"dark"==o}),children:(0,y.jsx)("a",{target:r.isTargetBlank?"_blank":void 0,href:r.url,title:r.title,className:k()(l("rs-text-2"),l("rs-link",{hardness:"average",mode:"nude"})),children:r.title})})},O=t=>(0,y.jsx)("nav",{className:t.className,children:(0,y.jsx)("ul",{className:"ktl-nav-list-module_nav-list_cEUsm",children:j.map((t=>(0,y.jsx)(z,{data:t},t.url)))})});var M,N,E;function S(){return S=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(t[l]=r[l])}return t},S.apply(this,arguments)}var A=function(t){return u.createElement("svg",S({viewBox:"0 0 60 60",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),M||(M=u.createElement("path",{d:"M60 0H0v60h60V0z",fill:"#000"})),N||(N=u.createElement("path",{d:"M27.648 48.706H5.178v3.765h22.47v-3.765zM4.941 15.765l1.765-1.647c.47.588.941.941 1.53.941.705 0 1.058-.47 1.058-1.412V7.412H12v6.235c0 1.177-.353 2.118-.94 2.706-.59.588-1.53.941-2.707.941-1.765.118-2.706-.588-3.412-1.529zM12.586 7.53h7.883v2.235h-5.177v1.529h4.706v2.118h-4.706v1.53h5.294v2.352h-7.882l-.118-9.765zM24 9.882h-2.941V7.53h8.588v2.353h-2.941v7.412H24V9.882zM5.177 19.53h5.06c1.175 0 2.117.352 2.705.823.353.353.588.941.588 1.647 0 1.177-.588 1.765-1.53 2.235 1.177.353 1.883 1.06 1.883 2.353 0 1.647-1.412 2.706-3.647 2.706H5.177V19.53zm5.647 3.058c0-.588-.47-.823-1.176-.823H7.883v1.764H9.53c.824-.117 1.294-.352 1.294-.94zm-.94 2.824H7.764v1.765h2.118c.824 0 1.294-.353 1.294-.942 0-.588-.47-.823-1.294-.823zM14.352 19.53h4.588c1.53 0 2.471.352 3.177 1.058.588.589.823 1.294.823 2.236 0 1.53-.823 2.47-2 3.058l2.353 3.412h-3.058l-2-2.94h-1.177v2.94h-2.706V19.53zm4.47 4.705c.942 0 1.413-.47 1.413-1.176 0-.824-.589-1.177-1.412-1.177h-1.765v2.353h1.765z",fill:"#fff"})),E||(E=u.createElement("path",{d:"M26.119 19.53h2.588l4.117 9.882h-2.94l-.707-1.765h-3.764l-.706 1.765h-2.824l4.236-9.883zm2.352 5.882l-1.058-2.706-1.06 2.706h2.118zM33.177 19.53h2.706v9.764h-2.706V19.53zM36.588 19.53h2.471l4 5.176v-5.177h2.706v9.765h-2.353L39.294 24v5.412h-2.706v-9.883zM46 27.883l1.529-1.765c.941.824 2 1.177 3.176 1.177.706 0 1.177-.236 1.177-.706s-.353-.588-1.647-.941c-2.118-.47-3.647-1.06-3.647-3.06 0-1.764 1.411-3.176 3.764-3.176 1.648 0 2.942.47 4 1.294l-1.411 1.883c-.942-.588-1.883-.941-2.706-.941-.706 0-.941.235-.941.588 0 .47.353.588 1.647.941 2.235.47 3.647 1.177 3.647 3.059 0 2-1.53 3.176-4 3.176-1.765.118-3.412-.47-4.589-1.53z",fill:"#fff"})))};const T=t=>(0,y.jsx)("a",{href:"https://jetbrains.com",target:"_blank",className:k()(t.className,"ktl-logo-module_link_Z7W49"),children:(0,y.jsx)(A,{})}),P="ktl-footer-module_underlined-link_mhvsS";var H=e=>{let{forwardedRef:r,className:l}=e;const o=(0,x.useTextStyles)(),n=(0,t.useTheme)(),a=o("rs-link",{hardness:"pale",mode:"nude"});return(0,y.jsxs)("footer",{className:k()("ktl-footer-module_footer_YYHJn",l,{"ktl-footer-module_footer-dark-theme_GiAQp":"dark"===n}),ref:r,children:[(0,y.jsxs)("div",{className:"ktl-footer-module_social-list-area_4hUNp",children:[(0,y.jsx)("div",{className:k()(o("rs-h4"),"ktl-footer-module_social-list-title_KkSwg"),children:"Stay in touch:"}),(0,y.jsx)(b,{})]}),(0,y.jsx)(O,{className:"ktl-footer-module_nav-list-area_QH4VT"}),(0,y.jsxs)("div",{className:k()(o("rs-text-3",{hardness:"pale"}),"ktl-footer-module_text-area_H3lZP"),children:[(0,y.jsxs)("div",{className:"ktl-footer-module_copyright_eGK3c",children:["Kotlin™ is protected under the"," ",(0,y.jsx)("a",{className:k()(a,P),href:"https://kotlinlang.org/foundation/kotlin-foundation.html",children:"Kotlin Foundation"})," ","and licensed under the"," ",(0,y.jsx)("a",{className:k()(a,P),target:"_blank",href:"https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE",children:"Apache 2 license"}),"."]})," ",(0,y.jsxs)("div",{className:"ktl-footer-module_motto_JKLSs",children:["Supported and developed by ",(0,y.jsx)("a",{className:k()(a,P),href:"https://www.jetbrains.com/",target:"_blank",children:"JetBrains"})]})]}),(0,y.jsx)(T,{className:"ktl-footer-module_logo-area_-cPlN"})]})}}(),module.exports=l}();
3
3
  //# sourceMappingURL=footer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","mappings":"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","sources":["webpack://@jetbrains/kotlin-web-site-ui/./node_modules/classnames/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/cjs/react-jsx-runtime.production.min.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/jsx-runtime.js","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs2\":\"react\",\"commonjs\":\"react\"}","webpack://@jetbrains/kotlin-web-site-ui/webpack/bootstrap","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/compat get default export","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/define property getters","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/hasOwnProperty shorthand","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/make namespace object","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/ui-contexts\",\"commonjs2\":\"@rescui/ui-contexts\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/github-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/reddit-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/slack-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/stackoverflow-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/twitter-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/youtube-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-data.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-item/social-item.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-item/social-item.module.pcss?001d","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-list.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-list.module.pcss?74b3","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-data.ts","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/typography\",\"commonjs2\":\"@rescui/typography\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-item.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-item.module.pcss?d5d2","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-list.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-list.module.pcss?3b90","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/jetbrains-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/logo.module.pcss?88e6","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/logo.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/footer.module.pcss?0bbd","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/index.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/footer.tsx"],"sourcesContent":["/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/** @license React v16.14.0\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/ui-contexts\");","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgGithubLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M17.9 9.2a8.94 8.94 0 01-6.4 8.6.392.392 0 01-.4-.4v-3a1.58 1.58 0 00-.5-1.2 3.734 3.734 0 003.9-3.4 4.244 4.244 0 00-.9-3.5c.29-.79.217-1.669-.2-2.4a7.24 7.24 0 00-2.4.9c-1.44-.4-2.96-.4-4.4 0a4.62 4.62 0 00-2.3-.9h-.1A2.75 2.75 0 004 6.3a4.075 4.075 0 00-.9 3.5A3.81 3.81 0 007 13.2c-.198.148-.34.36-.4.6a2.638 2.638 0 00-.1.7 1.943 1.943 0 01-2.2-.5c-.5-.8-.9-1.2-1.4-1.3-.5-.1-.6.2-.6.2.079.26.26.476.5.6.387.216.674.575.8 1a1.827 1.827 0 001.2 1.2 3.915 3.915 0 001.9 0v1.7a.297.297 0 01-.4.3A8.82 8.82 0 010 9.2a8.95 8.95 0 0117.9 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgGithubLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgRedditLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 9.068a2.183 2.183 0 00-2.186-2.186 2.2 2.2 0 00-1.524.61c-1.505-1.076-3.566-1.775-5.86-1.865L11.434.932l3.261.699a1.559 1.559 0 003.119-.072A1.56 1.56 0 0016.254 0c-.609 0-1.147.358-1.397.878l-3.638-.77a.381.381 0 00-.287.053.347.347 0 00-.161.251L9.659 5.645c-2.33.072-4.426.77-5.95 1.864a2.2 2.2 0 00-1.523-.61 2.183 2.183 0 00-.896 4.176c-.036.22-.054.441-.053.664 0 3.368 3.924 6.11 8.763 6.11s8.764-2.723 8.764-6.11c0-.223-.018-.444-.054-.664A2.208 2.208 0 0020 9.069zm-15.018 1.56a1.56 1.56 0 013.118 0c0 .86-.698 1.559-1.559 1.559-.86.017-1.559-.7-1.559-1.56zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 010-.573.4.4 0 01.574 0c.68.68 2.115.913 3.136.913 1.022 0 2.473-.232 3.136-.913a.401.401 0 01.574 0 .436.436 0 010 .573zm-.287-2.563a1.56 1.56 0 010-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgRedditLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSlackLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.63 9.49a1.895 1.895 0 00-1.89 1.89v4.73a1.89 1.89 0 103.78 0v-4.73a1.895 1.895 0 00-1.89-1.89zM.01 11.38a1.89 1.89 0 103.78 0V9.49H1.91a1.897 1.897 0 00-1.9 1.89zM6.63 0a1.89 1.89 0 100 3.78h1.89v-1.9A1.886 1.886 0 006.63 0zM1.89 8.53h4.74a1.89 1.89 0 100-3.78H1.89a1.89 1.89 0 000 3.78zm14.2-3.79a1.895 1.895 0 00-1.89 1.89v1.89h1.89a1.89 1.89 0 100-3.78zM9.48 1.89v4.74a1.89 1.89 0 103.78 0V1.89a1.89 1.89 0 10-3.78 0zm3.78 14.22a1.895 1.895 0 00-1.89-1.89H9.48v1.89a1.89 1.89 0 103.78 0zm2.85-6.62h-4.74a1.89 1.89 0 100 3.78h4.74a1.89 1.89 0 100-3.78z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSlackLogo;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgStackoverflowLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 19,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.527 17.27V12.19h1.685v6.764H0v-6.763h1.685v5.078h11.842z\",\n fill: \"currentColor\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.546 11.71l8.274 1.73.35-1.664-8.274-1.73-.35 1.664zM4.64 7.77l7.661 3.568.7-1.532-7.66-3.59-.7 1.554zm2.123-3.765l6.501 5.407 1.073-1.292-6.501-5.406-1.073 1.291zM10.966 0L9.609 1.007l5.034 6.785L16 6.785 10.966 0zM3.37 15.562h8.448v-1.685H3.371v1.685z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgStackoverflowLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgTwitterLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 17,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.29 16.25A11.59 11.59 0 0018 4.58v-.53a8.3 8.3 0 002-2.13 8.36 8.36 0 01-2.36.65A4.16 4.16 0 0019.45.3a8.19 8.19 0 01-2.61 1 4.11 4.11 0 00-7 3.75A11.7 11.7 0 011.39.75a4.11 4.11 0 001.27 5.48A4.06 4.06 0 01.8 5.71a4.11 4.11 0 003.29 4 4.13 4.13 0 01-1.85.07 4.12 4.12 0 003.83 2.85A8.25 8.25 0 011 14.47a7.94 7.94 0 01-1-.06 11.69 11.69 0 006.29 1.84z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgTwitterLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgYoutubeLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M21.005 5.617c.43.633.702 1.36.795 2.119.124 1.146.191 2.299.2 3.452v1.618a34.375 34.375 0 01-.2 3.454 4.808 4.808 0 01-.795 2.116 2.772 2.772 0 01-2.003.904c-2.8.215-7.002.222-7.002.222s-5.2-.05-6.8-.214a3.27 3.27 0 01-2.205-.912 4.8 4.8 0 01-.795-2.117 34.354 34.354 0 01-.2-3.453v-1.618c.009-1.154.075-2.306.2-3.452.093-.76.365-1.486.795-2.12a2.76 2.76 0 012.003-.901c2.799-.217 6.997-.217 6.997-.217h.01s4.198 0 6.997.217a2.76 2.76 0 012.003.902zM15.755 12L9.501 8.249v7.502L15.754 12z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgYoutubeLogo;","import { FC } from 'react';\nimport githubLogo from './svg/github-logo.svg';\nimport redditLogo from './svg/reddit-logo.svg';\nimport slackLogo from './svg/slack-logo.svg';\nimport stackoverflowLogo from './svg/stackoverflow-logo.svg';\nimport twitterLogo from './svg/twitter-logo.svg';\nimport youtubeLogo from './svg/youtube-logo.svg';\n\nexport interface SocialNetworkData {\n url: string;\n title: string;\n logoAlt: string;\n icon: FC;\n}\n\nexport const socialList: SocialNetworkData[] = [\n {\n url: 'https://github.com/JetBrains/kotlin',\n title: 'Kotlin on GitHub',\n logoAlt: 'GitHub logo',\n icon: githubLogo,\n },\n {\n url: 'https://twitter.com/kotlin',\n title: 'Kotlin on Twitter',\n logoAlt: 'Twitter logo',\n icon: twitterLogo,\n },\n {\n url: 'https://surveys.jetbrains.com/s3/kotlin-slack-sign-up',\n title: 'Kotlin Slack',\n logoAlt: 'Slack logo',\n icon: slackLogo,\n },\n {\n url: 'https://www.reddit.com/r/Kotlin/',\n title: 'Kotlin on Reddit',\n logoAlt: 'Reddit logo',\n icon: redditLogo,\n },\n {\n url: 'https://stackoverflow.com/questions/tagged/kotlin',\n title: 'Kotlin on Stack Overflow',\n logoAlt: 'Stack Overflow logo',\n icon: stackoverflowLogo,\n },\n {\n url: 'https://www.youtube.com/channel/UCP7uiEZIqci43m22KDl0sNw',\n title: 'Kotlin on YouTube',\n logoAlt: 'YouTube logo',\n icon: youtubeLogo,\n },\n];\n","import { FC } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport classNames from 'classnames';\nimport { SocialNetworkData } from '../social-data';\nimport * as styles from './social-item.module.pcss';\n\ninterface SocialItemProps {\n socialNetwork: SocialNetworkData;\n}\n\nexport const SocialItem: FC<SocialItemProps> = ({ socialNetwork }) => {\n const SocialIcon = socialNetwork.icon;\n const theme = useTheme();\n\n return (\n <a\n target=\"_blank\"\n className={classNames(styles.socialItem, {\n [styles.socialItemDarkTheme]: theme === 'dark',\n })}\n href={socialNetwork.url}\n title={socialNetwork.title}\n >\n <SocialIcon />\n </a>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const socialItem = \"ktl-social-item-module_social-item_altig\";\nexport const socialItemDarkTheme = \"ktl-social-item-module_social-item-dark-theme_4WGX5\";","import { FC } from 'react';\nimport * as styles from './social-list.module.pcss';\nimport { socialList } from './social-data';\nimport { SocialItem } from './social-item/social-item';\n\nexport const SocialList: FC = () => (\n <div className={styles.socialList}>\n {socialList.map((socialNetwork) => (\n <SocialItem key={socialNetwork.url} socialNetwork={socialNetwork} />\n ))}\n </div>\n);\n","// extracted by mini-css-extract-plugin\nexport const socialList = \"ktl-social-list-module_social-list_InQY0\";","export interface NavData {\n url: string;\n title: string;\n isTargetBlank?: boolean;\n}\n\nexport const navList: NavData[] = [\n {\n url: 'https://kotlinlang.org/docs/contribute.html',\n title: 'Contributing to Kotlin',\n },\n {\n url: 'https://kotlinlang.org/docs/releases.html',\n title: 'Releases',\n },\n {\n url: 'https://kotlinlang.org/assets/kotlin-media-kit.pdf',\n title: 'Press Kit',\n },\n {\n url: 'https://kotlinlang.org/docs/security.html',\n title: 'Security',\n },\n {\n url: 'https://blog.jetbrains.com/kotlin/',\n title: 'Blog',\n isTargetBlank: true,\n },\n {\n url: 'https://youtrack.jetbrains.com/issues/KT',\n title: 'Issue Tracker',\n isTargetBlank: true,\n },\n {\n url: 'https://resources.jetbrains.com/storage/products/kotlin/docs/kotlin_logos.zip',\n title: 'Brand assets',\n isTargetBlank: true,\n },\n];\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/typography\");","import { FC } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport classNames from 'classnames';\nimport { NavData } from './nav-data';\nimport * as styles from './nav-item.module.pcss';\nimport { useTextStyles } from '@rescui/typography';\n\ninterface NavItemProps {\n data: NavData;\n}\n\nexport const NavItem: FC<NavItemProps> = ({ data }) => {\n const textCn = useTextStyles();\n const theme = useTheme();\n\n return (\n <li\n className={classNames(styles.navItem, {\n [styles.navItemDarkTheme]: theme == 'dark',\n })}\n >\n <a\n target={data.isTargetBlank ? '_blank' : undefined}\n href={data.url}\n title={data.title}\n className={classNames(\n textCn('rs-text-2'),\n textCn('rs-link', { hardness: 'average', mode: 'nude' })\n )}\n >\n {data.title}\n </a>\n </li>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const navItem = \"ktl-nav-item-module_nav-item_4o3J-\";\nexport const navItemDarkTheme = \"ktl-nav-item-module_nav-item-dark-theme_3EbRM\";","import { FC } from 'react';\nimport * as styles from './nav-list.module.pcss';\nimport { navList } from './nav-data';\nimport { NavItem } from './nav-item';\n\nexport const NavList: FC<{ className?: string }> = (props) => (\n <nav className={props.className}>\n <ul className={styles.navList}>\n {navList.map((value) => (\n <NavItem key={value.url} data={value} />\n ))}\n </ul>\n </nav>\n);\n","// extracted by mini-css-extract-plugin\nexport const navList = \"ktl-nav-list-module_nav-list_cEUsm\";","var _path, _path2, _path3;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgJetbrainsLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 60 60\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60 0H0v60h60V0z\",\n fill: \"#000\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M27.648 48.706H5.178v3.765h22.47v-3.765zM4.941 15.765l1.765-1.647c.47.588.941.941 1.53.941.705 0 1.058-.47 1.058-1.412V7.412H12v6.235c0 1.177-.353 2.118-.94 2.706-.59.588-1.53.941-2.707.941-1.765.118-2.706-.588-3.412-1.529zM12.586 7.53h7.883v2.235h-5.177v1.529h4.706v2.118h-4.706v1.53h5.294v2.352h-7.882l-.118-9.765zM24 9.882h-2.941V7.53h8.588v2.353h-2.941v7.412H24V9.882zM5.177 19.53h5.06c1.175 0 2.117.352 2.705.823.353.353.588.941.588 1.647 0 1.177-.588 1.765-1.53 2.235 1.177.353 1.883 1.06 1.883 2.353 0 1.647-1.412 2.706-3.647 2.706H5.177V19.53zm5.647 3.058c0-.588-.47-.823-1.176-.823H7.883v1.764H9.53c.824-.117 1.294-.352 1.294-.94zm-.94 2.824H7.764v1.765h2.118c.824 0 1.294-.353 1.294-.942 0-.588-.47-.823-1.294-.823zM14.352 19.53h4.588c1.53 0 2.471.352 3.177 1.058.588.589.823 1.294.823 2.236 0 1.53-.823 2.47-2 3.058l2.353 3.412h-3.058l-2-2.94h-1.177v2.94h-2.706V19.53zm4.47 4.705c.942 0 1.413-.47 1.413-1.176 0-.824-.589-1.177-1.412-1.177h-1.765v2.353h1.765z\",\n fill: \"#fff\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.119 19.53h2.588l4.117 9.882h-2.94l-.707-1.765h-3.764l-.706 1.765h-2.824l4.236-9.883zm2.352 5.882l-1.058-2.706-1.06 2.706h2.118zM33.177 19.53h2.706v9.764h-2.706V19.53zM36.588 19.53h2.471l4 5.176v-5.177h2.706v9.765h-2.353L39.294 24v5.412h-2.706v-9.883zM46 27.883l1.529-1.765c.941.824 2 1.177 3.176 1.177.706 0 1.177-.236 1.177-.706s-.353-.588-1.647-.941c-2.118-.47-3.647-1.06-3.647-3.06 0-1.764 1.411-3.176 3.764-3.176 1.648 0 2.942.47 4 1.294l-1.411 1.883c-.942-.588-1.883-.941-2.706-.941-.706 0-.941.235-.941.588 0 .47.353.588 1.647.941 2.235.47 3.647 1.177 3.647 3.059 0 2-1.53 3.176-4 3.176-1.765.118-3.412-.47-4.589-1.53z\",\n fill: \"#fff\"\n })));\n}\n\nexport default SvgJetbrainsLogo;","// extracted by mini-css-extract-plugin\nexport const link = \"ktl-logo-module_link_Z7W49\";","import { FC } from 'react';\nimport classNames from 'classnames';\nimport JetBrainsLogo from './jetbrains-logo.svg';\nimport * as styles from './logo.module.pcss';\n\nexport const Logo: FC<{ className?: string }> = (props) => (\n <a\n href=\"https://jetbrains.com\"\n target=\"_blank\"\n className={classNames(props.className, styles.link)}\n >\n <JetBrainsLogo />\n </a>\n);\n","// extracted by mini-css-extract-plugin\nexport const footer = \"ktl-footer-module_footer_YYHJn\";\nexport const footerDarkTheme = \"ktl-footer-module_footer-dark-theme_GiAQp\";\nexport const underlinedLink = \"ktl-footer-module_underlined-link_mhvsS\";\nexport const socialListArea = \"ktl-footer-module_social-list-area_4hUNp\";\nexport const socialListTitle = \"ktl-footer-module_social-list-title_KkSwg\";\nexport const navListArea = \"ktl-footer-module_nav-list-area_QH4VT\";\nexport const textArea = \"ktl-footer-module_text-area_H3lZP\";\nexport const logoArea = \"ktl-footer-module_logo-area_-cPlN\";\nexport const copyright = \"ktl-footer-module_copyright_eGK3c\";\nexport const motto = \"ktl-footer-module_motto_JKLSs\";","import { Footer } from './footer';\nexport default Footer;\n","import { FC, ForwardedRef } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport { SocialList } from './social-list/social-list';\nimport { NavList } from './nav/nav-list';\nimport { Logo } from './logo/logo';\nimport classNames from 'classnames';\nimport * as styles from './footer.module.pcss';\nimport { useTextStyles } from '@rescui/typography';\n\nexport interface FooterProps {\n forwardedRef?: ForwardedRef<HTMLDivElement>;\n className?: string;\n}\n\nexport const Footer: FC<FooterProps> = ({ forwardedRef , className}) => {\n const textCn = useTextStyles();\n const theme = useTheme();\n const linkClass = textCn('rs-link', { hardness: 'pale', mode: 'nude' });\n\n return (\n <footer\n className={classNames(styles.footer, className, {\n [styles.footerDarkTheme]: theme === 'dark',\n })}\n ref={forwardedRef}\n >\n <div className={styles.socialListArea}>\n <div className={classNames(textCn('rs-h4'), styles.socialListTitle)}>\n Stay in touch:\n </div>\n\n <SocialList />\n </div>\n\n <NavList className={styles.navListArea} />\n\n <div\n className={classNames(\n textCn('rs-text-3', { hardness: 'pale' }),\n styles.textArea\n )}\n >\n <div className={styles.copyright}>\n Kotlin&trade; is&nbsp;protected under the{' '}\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n href=\"https://kotlinlang.org/foundation/kotlin-foundation.html\"\n >\n Kotlin&nbsp;Foundation\n </a>{' '}\n and licensed under the{' '}\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n target=\"_blank\"\n href=\"https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE\"\n >\n Apache 2&nbsp;license\n </a>\n .\n </div>{' '}\n <div className={styles.motto}>\n Supported and developed by&nbsp;\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n href=\"https://www.jetbrains.com/\"\n target=\"_blank\"\n >\n JetBrains\n </a>\n </div>\n </div>\n\n <Logo className={styles.logoArea} />\n </footer>\n );\n};\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","f","g","Symbol","for","h","m","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","n","p","ref","__self","__source","q","c","a","k","b","d","e","l","defaultProps","$$typeof","type","props","_owner","current","jsx","jsxs","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getter","__esModule","definition","o","defineProperty","enumerable","get","obj","prop","r","toStringTag","value","_path","_path2","_extends","assign","target","source","this","socialList","url","title","logoAlt","icon","width","height","fill","xmlns","fillRule","clipRule","SocialItem","socialNetwork","SocialIcon","theme","useTheme","className","href","SocialList","navList","isTargetBlank","NavItem","data","textCn","useTextStyles","hardness","mode","NavList","_path3","viewBox","Logo","underlinedLink","forwardedRef","linkClass","styles"],"sourceRoot":""}
1
+ {"version":3,"file":"footer.js","mappings":"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","sources":["webpack://@jetbrains/kotlin-web-site-ui/./node_modules/classnames/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/cjs/react-jsx-runtime.production.min.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/jsx-runtime.js","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs2\":\"react\",\"commonjs\":\"react\"}","webpack://@jetbrains/kotlin-web-site-ui/webpack/bootstrap","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/compat get default export","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/define property getters","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/hasOwnProperty shorthand","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/make namespace object","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/ui-contexts\",\"commonjs2\":\"@rescui/ui-contexts\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/github-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/reddit-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/slack-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/stackoverflow-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/twitter-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/svg/youtube-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-data.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-item/social-item.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-item/social-item.module.pcss?001d","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-list.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/social-list/social-list.module.pcss?74b3","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-data.ts","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/typography\",\"commonjs2\":\"@rescui/typography\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-item.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-item.module.pcss?d5d2","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-list.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/nav/nav-list.module.pcss?3b90","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/jetbrains-logo.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/logo.module.pcss?88e6","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/logo/logo.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/footer.module.pcss?0bbd","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/index.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/footer/footer.tsx"],"sourcesContent":["/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/** @license React v16.14.0\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/ui-contexts\");","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgGithubLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M17.9 9.2a8.94 8.94 0 01-6.4 8.6.392.392 0 01-.4-.4v-3a1.58 1.58 0 00-.5-1.2 3.734 3.734 0 003.9-3.4 4.244 4.244 0 00-.9-3.5c.29-.79.217-1.669-.2-2.4a7.24 7.24 0 00-2.4.9c-1.44-.4-2.96-.4-4.4 0a4.62 4.62 0 00-2.3-.9h-.1A2.75 2.75 0 004 6.3a4.075 4.075 0 00-.9 3.5A3.81 3.81 0 007 13.2c-.198.148-.34.36-.4.6a2.638 2.638 0 00-.1.7 1.943 1.943 0 01-2.2-.5c-.5-.8-.9-1.2-1.4-1.3-.5-.1-.6.2-.6.2.079.26.26.476.5.6.387.216.674.575.8 1a1.827 1.827 0 001.2 1.2 3.915 3.915 0 001.9 0v1.7a.297.297 0 01-.4.3A8.82 8.82 0 010 9.2a8.95 8.95 0 0117.9 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgGithubLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgRedditLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 9.068a2.183 2.183 0 00-2.186-2.186 2.2 2.2 0 00-1.524.61c-1.505-1.076-3.566-1.775-5.86-1.865L11.434.932l3.261.699a1.559 1.559 0 003.119-.072A1.56 1.56 0 0016.254 0c-.609 0-1.147.358-1.397.878l-3.638-.77a.381.381 0 00-.287.053.347.347 0 00-.161.251L9.659 5.645c-2.33.072-4.426.77-5.95 1.864a2.2 2.2 0 00-1.523-.61 2.183 2.183 0 00-.896 4.176c-.036.22-.054.441-.053.664 0 3.368 3.924 6.11 8.763 6.11s8.764-2.723 8.764-6.11c0-.223-.018-.444-.054-.664A2.208 2.208 0 0020 9.069zm-15.018 1.56a1.56 1.56 0 013.118 0c0 .86-.698 1.559-1.559 1.559-.86.017-1.559-.7-1.559-1.56zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 010-.573.4.4 0 01.574 0c.68.68 2.115.913 3.136.913 1.022 0 2.473-.232 3.136-.913a.401.401 0 01.574 0 .436.436 0 010 .573zm-.287-2.563a1.56 1.56 0 010-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgRedditLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSlackLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 18,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.63 9.49a1.895 1.895 0 00-1.89 1.89v4.73a1.89 1.89 0 103.78 0v-4.73a1.895 1.895 0 00-1.89-1.89zM.01 11.38a1.89 1.89 0 103.78 0V9.49H1.91a1.897 1.897 0 00-1.9 1.89zM6.63 0a1.89 1.89 0 100 3.78h1.89v-1.9A1.886 1.886 0 006.63 0zM1.89 8.53h4.74a1.89 1.89 0 100-3.78H1.89a1.89 1.89 0 000 3.78zm14.2-3.79a1.895 1.895 0 00-1.89 1.89v1.89h1.89a1.89 1.89 0 100-3.78zM9.48 1.89v4.74a1.89 1.89 0 103.78 0V1.89a1.89 1.89 0 10-3.78 0zm3.78 14.22a1.895 1.895 0 00-1.89-1.89H9.48v1.89a1.89 1.89 0 103.78 0zm2.85-6.62h-4.74a1.89 1.89 0 100 3.78h4.74a1.89 1.89 0 100-3.78z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSlackLogo;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgStackoverflowLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 19,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.527 17.27V12.19h1.685v6.764H0v-6.763h1.685v5.078h11.842z\",\n fill: \"currentColor\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.546 11.71l8.274 1.73.35-1.664-8.274-1.73-.35 1.664zM4.64 7.77l7.661 3.568.7-1.532-7.66-3.59-.7 1.554zm2.123-3.765l6.501 5.407 1.073-1.292-6.501-5.406-1.073 1.291zM10.966 0L9.609 1.007l5.034 6.785L16 6.785 10.966 0zM3.37 15.562h8.448v-1.685H3.371v1.685z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgStackoverflowLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgTwitterLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 17,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.29 16.25A11.59 11.59 0 0018 4.58v-.53a8.3 8.3 0 002-2.13 8.36 8.36 0 01-2.36.65A4.16 4.16 0 0019.45.3a8.19 8.19 0 01-2.61 1 4.11 4.11 0 00-7 3.75A11.7 11.7 0 011.39.75a4.11 4.11 0 001.27 5.48A4.06 4.06 0 01.8 5.71a4.11 4.11 0 003.29 4 4.13 4.13 0 01-1.85.07 4.12 4.12 0 003.83 2.85A8.25 8.25 0 011 14.47a7.94 7.94 0 01-1-.06 11.69 11.69 0 006.29 1.84z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgTwitterLogo;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgYoutubeLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M21.005 5.617c.43.633.702 1.36.795 2.119.124 1.146.191 2.299.2 3.452v1.618a34.375 34.375 0 01-.2 3.454 4.808 4.808 0 01-.795 2.116 2.772 2.772 0 01-2.003.904c-2.8.215-7.002.222-7.002.222s-5.2-.05-6.8-.214a3.27 3.27 0 01-2.205-.912 4.8 4.8 0 01-.795-2.117 34.354 34.354 0 01-.2-3.453v-1.618c.009-1.154.075-2.306.2-3.452.093-.76.365-1.486.795-2.12a2.76 2.76 0 012.003-.901c2.799-.217 6.997-.217 6.997-.217h.01s4.198 0 6.997.217a2.76 2.76 0 012.003.902zM15.755 12L9.501 8.249v7.502L15.754 12z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgYoutubeLogo;","import { FC } from 'react';\nimport githubLogo from './svg/github-logo.svg';\nimport redditLogo from './svg/reddit-logo.svg';\nimport slackLogo from './svg/slack-logo.svg';\nimport stackoverflowLogo from './svg/stackoverflow-logo.svg';\nimport twitterLogo from './svg/twitter-logo.svg';\nimport youtubeLogo from './svg/youtube-logo.svg';\n\nexport interface SocialNetworkData {\n url: string;\n title: string;\n logoAlt: string;\n icon: FC;\n}\n\nexport const socialList: SocialNetworkData[] = [\n {\n url: 'https://github.com/JetBrains/kotlin',\n title: 'Kotlin on GitHub',\n logoAlt: 'GitHub logo',\n icon: githubLogo,\n },\n {\n url: 'https://twitter.com/kotlin',\n title: 'Kotlin on Twitter',\n logoAlt: 'Twitter logo',\n icon: twitterLogo,\n },\n {\n url: 'https://surveys.jetbrains.com/s3/kotlin-slack-sign-up',\n title: 'Kotlin Slack',\n logoAlt: 'Slack logo',\n icon: slackLogo,\n },\n {\n url: 'https://www.reddit.com/r/Kotlin/',\n title: 'Kotlin on Reddit',\n logoAlt: 'Reddit logo',\n icon: redditLogo,\n },\n {\n url: 'https://stackoverflow.com/questions/tagged/kotlin',\n title: 'Kotlin on Stack Overflow',\n logoAlt: 'Stack Overflow logo',\n icon: stackoverflowLogo,\n },\n {\n url: 'https://www.youtube.com/channel/UCP7uiEZIqci43m22KDl0sNw',\n title: 'Kotlin on YouTube',\n logoAlt: 'YouTube logo',\n icon: youtubeLogo,\n },\n];\n","import { FC } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport classNames from 'classnames';\nimport { SocialNetworkData } from '../social-data';\nimport * as styles from './social-item.module.pcss';\n\ninterface SocialItemProps {\n socialNetwork: SocialNetworkData;\n}\n\nexport const SocialItem: FC<SocialItemProps> = ({ socialNetwork }) => {\n const SocialIcon = socialNetwork.icon;\n const theme = useTheme();\n\n return (\n <a\n target=\"_blank\"\n className={classNames(styles.socialItem, {\n [styles.socialItemDarkTheme]: theme === 'dark',\n })}\n href={socialNetwork.url}\n title={socialNetwork.title}\n >\n <SocialIcon />\n </a>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const socialItem = \"ktl-social-item-module_social-item_altig\";\nexport const socialItemDarkTheme = \"ktl-social-item-module_social-item-dark-theme_4WGX5\";","import { FC } from 'react';\nimport * as styles from './social-list.module.pcss';\nimport { socialList } from './social-data';\nimport { SocialItem } from './social-item/social-item';\n\nexport const SocialList: FC = () => (\n <div className={styles.socialList}>\n {socialList.map((socialNetwork) => (\n <SocialItem key={socialNetwork.url} socialNetwork={socialNetwork} />\n ))}\n </div>\n);\n","// extracted by mini-css-extract-plugin\nexport const socialList = \"ktl-social-list-module_social-list_InQY0\";","export interface NavData {\n url: string;\n title: string;\n isTargetBlank?: boolean;\n}\n\nexport const navList: NavData[] = [\n {\n url: 'https://kotlinlang.org/docs/contribute.html',\n title: 'Contributing to Kotlin',\n },\n {\n url: 'https://kotlinlang.org/docs/releases.html',\n title: 'Releases',\n },\n {\n url: 'https://kotlinlang.org/assets/kotlin-media-kit.pdf',\n title: 'Press Kit',\n },\n {\n url: 'https://kotlinlang.org/docs/security.html',\n title: 'Security',\n },\n {\n url: 'https://blog.jetbrains.com/kotlin/',\n title: 'Blog',\n isTargetBlank: true,\n },\n {\n url: 'https://youtrack.jetbrains.com/issues/KT',\n title: 'Issue Tracker',\n isTargetBlank: true,\n },\n {\n url: 'https://resources.jetbrains.com/storage/products/kotlin/docs/kotlin_logos.zip',\n title: 'Brand assets',\n isTargetBlank: true,\n },\n {\n url: 'https://www.jetbrains.com/careers/jobs/?team=Kotlin',\n title: 'Careers',\n isTargetBlank: true,\n },\n];\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/typography\");","import { FC } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport classNames from 'classnames';\nimport { NavData } from './nav-data';\nimport * as styles from './nav-item.module.pcss';\nimport { useTextStyles } from '@rescui/typography';\n\ninterface NavItemProps {\n data: NavData;\n}\n\nexport const NavItem: FC<NavItemProps> = ({ data }) => {\n const textCn = useTextStyles();\n const theme = useTheme();\n\n return (\n <li\n className={classNames(styles.navItem, {\n [styles.navItemDarkTheme]: theme == 'dark',\n })}\n >\n <a\n target={data.isTargetBlank ? '_blank' : undefined}\n href={data.url}\n title={data.title}\n className={classNames(\n textCn('rs-text-2'),\n textCn('rs-link', { hardness: 'average', mode: 'nude' })\n )}\n >\n {data.title}\n </a>\n </li>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const navItem = \"ktl-nav-item-module_nav-item_4o3J-\";\nexport const navItemDarkTheme = \"ktl-nav-item-module_nav-item-dark-theme_3EbRM\";","import { FC } from 'react';\nimport * as styles from './nav-list.module.pcss';\nimport { navList } from './nav-data';\nimport { NavItem } from './nav-item';\n\nexport const NavList: FC<{ className?: string }> = (props) => (\n <nav className={props.className}>\n <ul className={styles.navList}>\n {navList.map((value) => (\n <NavItem key={value.url} data={value} />\n ))}\n </ul>\n </nav>\n);\n","// extracted by mini-css-extract-plugin\nexport const navList = \"ktl-nav-list-module_nav-list_cEUsm\";","var _path, _path2, _path3;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgJetbrainsLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 60 60\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60 0H0v60h60V0z\",\n fill: \"#000\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M27.648 48.706H5.178v3.765h22.47v-3.765zM4.941 15.765l1.765-1.647c.47.588.941.941 1.53.941.705 0 1.058-.47 1.058-1.412V7.412H12v6.235c0 1.177-.353 2.118-.94 2.706-.59.588-1.53.941-2.707.941-1.765.118-2.706-.588-3.412-1.529zM12.586 7.53h7.883v2.235h-5.177v1.529h4.706v2.118h-4.706v1.53h5.294v2.352h-7.882l-.118-9.765zM24 9.882h-2.941V7.53h8.588v2.353h-2.941v7.412H24V9.882zM5.177 19.53h5.06c1.175 0 2.117.352 2.705.823.353.353.588.941.588 1.647 0 1.177-.588 1.765-1.53 2.235 1.177.353 1.883 1.06 1.883 2.353 0 1.647-1.412 2.706-3.647 2.706H5.177V19.53zm5.647 3.058c0-.588-.47-.823-1.176-.823H7.883v1.764H9.53c.824-.117 1.294-.352 1.294-.94zm-.94 2.824H7.764v1.765h2.118c.824 0 1.294-.353 1.294-.942 0-.588-.47-.823-1.294-.823zM14.352 19.53h4.588c1.53 0 2.471.352 3.177 1.058.588.589.823 1.294.823 2.236 0 1.53-.823 2.47-2 3.058l2.353 3.412h-3.058l-2-2.94h-1.177v2.94h-2.706V19.53zm4.47 4.705c.942 0 1.413-.47 1.413-1.176 0-.824-.589-1.177-1.412-1.177h-1.765v2.353h1.765z\",\n fill: \"#fff\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.119 19.53h2.588l4.117 9.882h-2.94l-.707-1.765h-3.764l-.706 1.765h-2.824l4.236-9.883zm2.352 5.882l-1.058-2.706-1.06 2.706h2.118zM33.177 19.53h2.706v9.764h-2.706V19.53zM36.588 19.53h2.471l4 5.176v-5.177h2.706v9.765h-2.353L39.294 24v5.412h-2.706v-9.883zM46 27.883l1.529-1.765c.941.824 2 1.177 3.176 1.177.706 0 1.177-.236 1.177-.706s-.353-.588-1.647-.941c-2.118-.47-3.647-1.06-3.647-3.06 0-1.764 1.411-3.176 3.764-3.176 1.648 0 2.942.47 4 1.294l-1.411 1.883c-.942-.588-1.883-.941-2.706-.941-.706 0-.941.235-.941.588 0 .47.353.588 1.647.941 2.235.47 3.647 1.177 3.647 3.059 0 2-1.53 3.176-4 3.176-1.765.118-3.412-.47-4.589-1.53z\",\n fill: \"#fff\"\n })));\n}\n\nexport default SvgJetbrainsLogo;","// extracted by mini-css-extract-plugin\nexport const link = \"ktl-logo-module_link_Z7W49\";","import { FC } from 'react';\nimport classNames from 'classnames';\nimport JetBrainsLogo from './jetbrains-logo.svg';\nimport * as styles from './logo.module.pcss';\n\nexport const Logo: FC<{ className?: string }> = (props) => (\n <a\n href=\"https://jetbrains.com\"\n target=\"_blank\"\n className={classNames(props.className, styles.link)}\n >\n <JetBrainsLogo />\n </a>\n);\n","// extracted by mini-css-extract-plugin\nexport const footer = \"ktl-footer-module_footer_YYHJn\";\nexport const footerDarkTheme = \"ktl-footer-module_footer-dark-theme_GiAQp\";\nexport const underlinedLink = \"ktl-footer-module_underlined-link_mhvsS\";\nexport const socialListArea = \"ktl-footer-module_social-list-area_4hUNp\";\nexport const socialListTitle = \"ktl-footer-module_social-list-title_KkSwg\";\nexport const navListArea = \"ktl-footer-module_nav-list-area_QH4VT\";\nexport const textArea = \"ktl-footer-module_text-area_H3lZP\";\nexport const logoArea = \"ktl-footer-module_logo-area_-cPlN\";\nexport const copyright = \"ktl-footer-module_copyright_eGK3c\";\nexport const motto = \"ktl-footer-module_motto_JKLSs\";","import { Footer } from './footer';\nexport default Footer;\n","import { FC, ForwardedRef } from 'react';\nimport { useTheme } from '@rescui/ui-contexts';\nimport { SocialList } from './social-list/social-list';\nimport { NavList } from './nav/nav-list';\nimport { Logo } from './logo/logo';\nimport classNames from 'classnames';\nimport * as styles from './footer.module.pcss';\nimport { useTextStyles } from '@rescui/typography';\n\nexport interface FooterProps {\n forwardedRef?: ForwardedRef<HTMLDivElement>;\n className?: string;\n}\n\nexport const Footer: FC<FooterProps> = ({ forwardedRef , className}) => {\n const textCn = useTextStyles();\n const theme = useTheme();\n const linkClass = textCn('rs-link', { hardness: 'pale', mode: 'nude' });\n\n return (\n <footer\n className={classNames(styles.footer, className, {\n [styles.footerDarkTheme]: theme === 'dark',\n })}\n ref={forwardedRef}\n >\n <div className={styles.socialListArea}>\n <div className={classNames(textCn('rs-h4'), styles.socialListTitle)}>\n Stay in touch:\n </div>\n\n <SocialList />\n </div>\n\n <NavList className={styles.navListArea} />\n\n <div\n className={classNames(\n textCn('rs-text-3', { hardness: 'pale' }),\n styles.textArea\n )}\n >\n <div className={styles.copyright}>\n Kotlin&trade; is&nbsp;protected under the{' '}\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n href=\"https://kotlinlang.org/foundation/kotlin-foundation.html\"\n >\n Kotlin&nbsp;Foundation\n </a>{' '}\n and licensed under the{' '}\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n target=\"_blank\"\n href=\"https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE\"\n >\n Apache 2&nbsp;license\n </a>\n .\n </div>{' '}\n <div className={styles.motto}>\n Supported and developed by&nbsp;\n <a\n className={classNames(linkClass, styles.underlinedLink)}\n href=\"https://www.jetbrains.com/\"\n target=\"_blank\"\n >\n JetBrains\n </a>\n </div>\n </div>\n\n <Logo className={styles.logoArea} />\n </footer>\n );\n};\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","f","g","Symbol","for","h","m","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","n","p","ref","__self","__source","q","c","a","k","b","d","e","l","defaultProps","$$typeof","type","props","_owner","current","jsx","jsxs","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getter","__esModule","definition","o","defineProperty","enumerable","get","obj","prop","r","toStringTag","value","_path","_path2","_extends","assign","target","source","this","socialList","url","title","logoAlt","icon","width","height","fill","xmlns","fillRule","clipRule","SocialItem","socialNetwork","SocialIcon","theme","useTheme","className","href","SocialList","navList","isTargetBlank","NavItem","data","textCn","useTextStyles","hardness","mode","NavList","_path3","viewBox","Logo","underlinedLink","forwardedRef","linkClass","styles"],"sourceRoot":""}
package/dist/header.css CHANGED
@@ -1,2 +1,2 @@
1
- @-webkit-keyframes ktl-horizontal-menu-module_fade-in_Q2pCx{0%{opacity:0}to{opacity:1}}@keyframes ktl-horizontal-menu-module_fade-in_Q2pCx{0%{opacity:0}to{opacity:1}}.ktl-logo-large-module_container_\+5pgf{flex-grow:1;display:flex;align-items:flex-start}.ktl-logo-large-module_link_iZIEJ{display:block;width:100px;height:24px;text-decoration:none;margin-left:-4px;cursor:pointer}.ktl-logo-large-module_version-tag_fiNIk{line-height:16px;text-decoration:none;color:rgba(255,255,255,.75)}.ktl-logo-large-module_version-tag_fiNIk:hover{color:#fff}:root{--ktl-light-grey:#f4f4f4;--ktl-dark-100:rgba(39, 40, 44, 1);--ktl-dark-bg-hard:rgba(27, 27, 27, 1);--ktl-icon-color-dark:rgba(39, 40, 44, 0.75);--ktl-color-white-light:rgba(255, 255, 255, 0.75);--ktl-transition-xfast:100ms;--ktl-transition-fast:300ms;--ktl-color-primary-light-theme:#7f52ff;--ktl-color-dark-40:rgba(39, 40, 44, 0.4);--ktl-light-text-hard:rgba(39, 40, 44, 1);--ktl-light-dark-20:rgba(39, 40, 44, 0.2);--ktl-overlay-z-index:900;--ktl-top-menu-z-index:905;--ktl-header-z-index:906;--ktl-header-height-mobile:48px;--ktl-font-family-inter:Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;--rs-font-family-ui:var(--ktl-font-family-inter)}.ktl-header-module_header-menu_E3vzo{position:relative;padding:0 32px;background:var(--ktl-dark-100);display:flex;align-items:center;height:64px;justify-content:space-between;z-index:var(--ktl-header-z-index)}.ktl-header-module_border_smGpe{box-shadow:inset 0 -1px rgba(255,255,255,.2)}@media (max-width:640px){.ktl-header-module_header-menu_E3vzo{padding:0 16px;height:var(--ktl-header-height-mobile)}.ktl-header-module_header-menu_E3vzo:not(.ktl-header-module_with-menu-popup_DcoOT){box-shadow:none}.ktl-header-module_logo-hide_uBrPV{display:none!important}}.ktl-horizontal-menu-module_nav_xYv4i{display:block}.ktl-horizontal-menu-module_menu-list_7oi3W{display:grid;grid-auto-flow:column;gap:32px;list-style:none;margin:0;padding:0}.ktl-horizontal-menu-module_menu-item-wrap_dnVf-{position:relative}.ktl-horizontal-menu-module_menu-item_Z\+YKZ{display:block;line-height:60px!important;color:rgba(255,255,255,.75);border-top:2px solid transparent;border-bottom:2px solid transparent;text-decoration:none;cursor:pointer}.ktl-horizontal-menu-module_menu-item_Z\+YKZ.ktl-horizontal-menu-module_expanded_thibK,.ktl-horizontal-menu-module_menu-item_Z\+YKZ:hover{color:#fff;border-bottom-color:rgba(255,255,255,.4);text-decoration:none}.ktl-horizontal-menu-module_menu-item_Z\+YKZ.ktl-horizontal-menu-module_item-active_\+iyf-{color:#fff;border-bottom-color:inherit}.ktl-horizontal-menu-module_dropdown-menu_dVOw-{display:none;position:absolute;top:100%;min-width:260px;margin:8px 0 0;list-style:none;padding:8px 0;white-space:nowrap;background:#fff;border:1px solid rgba(39,40,44,.7);-webkit-animation:ktl-horizontal-menu-module_fade-in_Q2pCx ease-out var(--ktl-transition-fast) forwards;animation:ktl-horizontal-menu-module_fade-in_Q2pCx ease-out var(--ktl-transition-fast) forwards}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw-{background:var(--ktl-dark-100);border-color:rgba(255,255,255,.2)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN{color:var(--ktl-color-white-light)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN:hover{color:#fff;background:rgba(255,255,255,.1)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN.ktl-horizontal-menu-module_active_azHwP{color:var(--ktl-dark-100);background:#fff}.ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy{display:block}.ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO{right:0}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN{display:block;text-decoration:none;padding:8px 16px;color:var(--ktl-dark-100);transition:color var(--ktl-transition-fast),background var(--ktl-transition-fast)}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN:hover{color:var(--ktl-dark-100);background:rgba(39,40,44,.1);text-decoration:none}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN.ktl-horizontal-menu-module_active_azHwP{color:#fff;background:var(--ktl-dark-100);cursor:default}@media (max-width:640px){.ktl-horizontal-menu-module_nav_xYv4i{display:none}}.ktl-search-button_button_JUyxv{display:flex;visibility:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0 transparent;outline:0 transparent;cursor:pointer;background:0 0;padding:0;margin:0 0 0 32px;width:24px;height:24px;align-items:center;justify-content:center;transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast);color:var(--ktl-color-white-light)}.ktl-search-button_button_JUyxv.ktl-search-button_active_G-dk1{visibility:visible}.ktl-search-button_button_JUyxv :focus,.ktl-search-button_button_JUyxv:hover{color:#fff}@media (max-width:640px){.ktl-search-button_button_JUyxv{display:none;margin:0 16px 0 0}.ktl-search-button_button_JUyxv.ktl-search-button_active_G-dk1{display:flex}}.ktl-menu-popup-module_menu-popup_Yqtnq{display:none;padding:8px 0;background:var(--ktl-dark-100);position:fixed;top:var(--ktl-header-height-mobile);bottom:0;left:0;right:0;overflow:auto;z-index:var(--ktl-top-menu-z-index)}.ktl-menu-popup-module_menu-item_f6wvh{--level:0;display:flex;align-items:center;font-size:16px;line-height:24px;font-weight:400;color:rgba(255,255,255,.75);text-decoration:none;padding:8px 16px 8px calc(16px + (var(--level)*24px));transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast)}.ktl-menu-popup-module_menu-item_f6wvh:hover{color:#fff;background:rgba(255,255,255,.1);text-decoration:none}.ktl-menu-popup-module_menu-item_f6wvh.ktl-menu-popup-module_active_DrZav{color:var(--ktl-light-text-hard);background:#fff;cursor:default;text-decoration:none}.ktl-menu-popup-module_menu-item_f6wvh.ktl-menu-popup-module_active-with-child_BDnrW{background:0 0;color:#fff}.ktl-menu-popup-module_menu-item-root_C-hkN{font-size:20px;line-height:32px;font-weight:600}@media (max-width:640px){.ktl-menu-popup-module_menu-popup-expanded_FlujR{display:block}}.ktl-menu-button_button_InVin{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0 transparent;outline:0 transparent;cursor:pointer;background:0 0;padding:0;margin:0;width:24px;height:24px;align-items:center;justify-content:center;transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast);color:var(--ktl-color-white-light)}.ktl-menu-button_button_InVin :focus,.ktl-menu-button_button_InVin:hover{color:#fff}@media (max-width:640px){.ktl-menu-button_button_InVin{display:flex}}.ktl-logo-small-module_logo-small_7ddNl{display:none}.ktl-logo-small-module_link_6gruv{color:#fff;text-decoration:none}.ktl-logo-small-module_icon-wrap_BFVBd{text-decoration:none;display:flex;align-items:center;justify-items:center;height:100%;margin-right:16px;padding-right:16px;border-right:1px solid rgba(255,255,255,.2)}.ktl-logo-small-module_icon_JM\+yC{width:24px;height:24px;margin-left:-4px}@media (max-width:640px){.ktl-logo-small-module_logo-small_7ddNl{flex-grow:1;display:flex;align-items:center;height:100%}}
1
+ @-webkit-keyframes ktl-horizontal-menu-module_fade-in_Q2pCx{0%{opacity:0}to{opacity:1}}@keyframes ktl-horizontal-menu-module_fade-in_Q2pCx{0%{opacity:0}to{opacity:1}}.ktl-logo-large-module_container_\+5pgf{flex-grow:1;display:flex;align-items:flex-start}.ktl-logo-large-module_link_iZIEJ{display:block;width:100px;height:24px;text-decoration:none;margin-left:-4px;cursor:pointer}.ktl-logo-large-module_version-tag_fiNIk{line-height:16px;text-decoration:none;color:rgba(255,255,255,.75)}.ktl-logo-large-module_version-tag_fiNIk:hover{color:#fff}:root{--ktl-light-grey:#f4f4f4;--ktl-dark-100:rgba(39, 40, 44, 1);--ktl-dark-bg-hard:rgba(27, 27, 27, 1);--ktl-icon-color-dark:rgba(39, 40, 44, 0.75);--ktl-color-white-light:rgba(255, 255, 255, 0.75);--ktl-transition-xfast:100ms;--ktl-transition-fast:300ms;--ktl-color-primary-light-theme:#7f52ff;--ktl-color-dark-40:rgba(39, 40, 44, 0.4);--ktl-light-text-hard:rgba(39, 40, 44, 1);--ktl-light-dark-20:rgba(39, 40, 44, 0.2);--ktl-overlay-z-index:900;--ktl-top-menu-z-index:905;--ktl-header-z-index:906;--ktl-header-height-mobile:48px;--ktl-font-family-inter:Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;--rs-font-family-ui:var(--ktl-font-family-inter)}.ktl-header-module_header-menu_E3vzo{position:relative;padding:0 32px;background:var(--ktl-dark-100);display:flex;align-items:center;height:64px;justify-content:space-between;z-index:var(--ktl-header-z-index)}.ktl-header-module_border_smGpe{box-shadow:inset 0 -1px rgba(255,255,255,.2)}@media (max-width:640px){.ktl-header-module_header-menu_E3vzo{padding:0 16px;height:var(--ktl-header-height-mobile)}.ktl-header-module_header-menu_E3vzo:not(.ktl-header-module_with-menu-popup_DcoOT){box-shadow:none}}.ktl-horizontal-menu-module_nav_xYv4i{display:block}.ktl-horizontal-menu-module_menu-list_7oi3W{display:grid;grid-auto-flow:column;gap:32px;list-style:none;margin:0;padding:0}.ktl-horizontal-menu-module_menu-item-wrap_dnVf-{position:relative}.ktl-horizontal-menu-module_menu-item_Z\+YKZ{display:block;line-height:60px!important;color:rgba(255,255,255,.75);border-top:2px solid transparent;border-bottom:2px solid transparent;text-decoration:none;cursor:pointer}.ktl-horizontal-menu-module_menu-item_Z\+YKZ.ktl-horizontal-menu-module_expanded_thibK,.ktl-horizontal-menu-module_menu-item_Z\+YKZ:hover{color:#fff;border-bottom-color:rgba(255,255,255,.4);text-decoration:none}.ktl-horizontal-menu-module_menu-item_Z\+YKZ.ktl-horizontal-menu-module_item-active_\+iyf-{color:#fff;border-bottom-color:inherit}.ktl-horizontal-menu-module_dropdown-menu_dVOw-{display:none;position:absolute;top:100%;min-width:260px;margin:8px 0 0;list-style:none;padding:8px 0;white-space:nowrap;background:#fff;border:1px solid rgba(39,40,44,.7);-webkit-animation:ktl-horizontal-menu-module_fade-in_Q2pCx ease-out var(--ktl-transition-fast) forwards;animation:ktl-horizontal-menu-module_fade-in_Q2pCx ease-out var(--ktl-transition-fast) forwards}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw-{background:var(--ktl-dark-100);border-color:rgba(255,255,255,.2)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN{color:var(--ktl-color-white-light)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN:hover{color:#fff;background:rgba(255,255,255,.1)}.ktl-horizontal-menu-module_dark-theme_Lp065 .ktl-horizontal-menu-module_dropdown-menu_dVOw- .ktl-horizontal-menu-module_dropdown-menu-item_wRlcN.ktl-horizontal-menu-module_active_azHwP{color:var(--ktl-dark-100);background:#fff}.ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy{display:block}.ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO{right:0}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN{display:block;text-decoration:none;padding:8px 16px;color:var(--ktl-dark-100);transition:color var(--ktl-transition-fast),background var(--ktl-transition-fast)}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN:hover{color:var(--ktl-dark-100);background:rgba(39,40,44,.1);text-decoration:none}.ktl-horizontal-menu-module_dropdown-menu-item_wRlcN.ktl-horizontal-menu-module_active_azHwP{color:#fff;background:var(--ktl-dark-100);cursor:default}.ktl-search-button_button_JUyxv{display:flex;visibility:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0 transparent;outline:0 transparent;cursor:pointer;background:0 0;padding:0;margin:0 0 0 32px;width:24px;height:24px;align-items:center;justify-content:center;transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast);color:var(--ktl-color-white-light)}.ktl-search-button_button_JUyxv.ktl-search-button_active_G-dk1{visibility:visible}.ktl-search-button_button_JUyxv :focus,.ktl-search-button_button_JUyxv:hover{color:#fff}@media (max-width:640px){.ktl-search-button_button_JUyxv{display:none;margin:0 16px 0 0}.ktl-search-button_button_JUyxv.ktl-search-button_active_G-dk1{display:flex}}.ktl-menu-popup-module_menu-popup_Yqtnq{display:none;padding:8px 0;background:var(--ktl-dark-100);position:fixed;top:var(--ktl-header-height-mobile);bottom:0;left:0;right:0;overflow:auto;z-index:var(--ktl-top-menu-z-index)}.ktl-menu-popup-module_menu-item_f6wvh{--level:0;display:flex;align-items:center;font-size:16px;line-height:24px;font-weight:400;color:rgba(255,255,255,.75);text-decoration:none;padding:8px 16px 8px calc(16px + (var(--level)*24px));transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast)}.ktl-menu-popup-module_menu-item_f6wvh:hover{color:#fff;background:rgba(255,255,255,.1);text-decoration:none}.ktl-menu-popup-module_menu-item_f6wvh.ktl-menu-popup-module_active_DrZav{color:var(--ktl-light-text-hard);background:#fff;cursor:default;text-decoration:none}.ktl-menu-popup-module_menu-item_f6wvh.ktl-menu-popup-module_active-with-child_BDnrW{background:0 0;color:#fff}.ktl-menu-popup-module_menu-item-root_C-hkN{font-size:20px;line-height:32px;font-weight:600}.ktl-menu-popup-module_menu-popup-expanded_FlujR{display:block}.ktl-menu-button_button_InVin{display:flex;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0 transparent;outline:0 transparent;cursor:pointer;background:0 0;padding:0;margin:0;width:24px;height:24px;align-items:center;justify-content:center;transition:color var(--ktl-transition-xfast),background-color var(--ktl-transition-xfast);color:var(--ktl-color-white-light)}.ktl-menu-button_button_InVin :focus,.ktl-menu-button_button_InVin:hover{color:#fff}.ktl-logo-small-module_logo-small_7ddNl{flex-grow:1;display:flex;align-items:center;height:100%}.ktl-logo-small-module_link_6gruv{color:#fff;text-decoration:none}.ktl-logo-small-module_icon-wrap_BFVBd{text-decoration:none;display:flex;align-items:center;justify-items:center;height:100%;margin-right:16px;padding-right:16px;border-right:1px solid rgba(255,255,255,.2)}.ktl-logo-small-module_icon_JM\+yC{width:24px;height:24px;margin-left:-4px}
2
2
  /*# sourceMappingURL=header.css.map*/
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/vars.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/header.css","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.module.pcss"],"names":[],"mappings":"4DA8GE,E,CACE,S,CAGF,E,CACE,W,oDALF,E,CACE,S,CAGF,E,CACE,WCnHJ,uC,CACE,W,CACA,Y,CACA,sB,CAGF,iC,CACE,a,CACA,W,CACA,W,CACA,oB,CACA,gB,CACA,c,CAGF,wC,CACE,gB,CACA,oB,CACA,2B,CAEA,8C,CACE,U,CCrBJ,K,CACE,wB,CACA,kC,CACA,sC,CACA,4C,CACA,iD,CACA,4B,CACA,2B,CACA,uC,CACA,yC,CACA,yC,CACA,yC,CACA,yB,CACA,0B,CACA,wB,CACA,+B,CACA,6K,CACA,gD,CCfF,oC,CACE,iB,CACA,c,CACA,8B,CACA,Y,CACA,kB,CACA,W,CACA,6B,CACA,iC,CAGF,+B,CACE,4C,CAGF,yBACE,oC,CACE,c,CACA,sC,CAGF,kF,CACE,e,CAGF,kC,CACE,wBH1BJ,qC,CACE,a,CAGF,2C,CACE,Y,CACA,qB,CACA,Q,CACA,e,CACA,Q,CACA,S,CAGF,gD,CACE,iB,CAGF,4C,CACE,a,CACA,0B,CACA,2B,CACA,gC,CACA,mC,CACA,oB,CACA,c,CI4EA,sF,CJ1EA,kD,CAEE,U,CACA,wC,CACA,oB,CAGF,0F,CACE,U,CACA,2B,CAIJ,+C,CACE,Y,CACA,iB,CACA,Q,CACA,e,CACA,c,CACA,e,CACA,a,CACA,kB,CACA,e,CACA,kC,CACA,uG,CAAA,+F,CAGF,4F,CACE,8B,CACA,iC,CAEA,iJ,CACE,kC,CAEA,uJ,CACE,U,CACA,+B,CAGF,yL,CACE,yB,CACA,e,CAKN,wD,CACE,a,CAGF,2D,CACE,O,CAGF,oD,CACE,a,CACA,oB,CACA,gB,CACA,yB,CACA,iF,CAGA,0D,CACE,yB,CACA,4B,CACA,oB,CAGF,4F,CACE,U,CACA,8B,CACA,c,CAIJ,yBACE,qC,CACE,cKvGJ,+B,CACE,Y,CACA,iB,CACA,uB,CAAA,oB,CAAA,e,CACA,oB,CACA,qB,CACA,c,CACA,c,CACA,S,CACA,iB,CACA,U,CACA,W,CACA,kB,CACA,sB,CACA,yF,CAEA,kC,CAEA,8D,CACE,kB,CD+MF,sC,CC5MA,qC,CAEE,U,CAIJ,yBACE,+B,CACE,Y,CACA,iB,CAEA,8D,CACE,cClCN,uC,CACE,Y,CACA,a,CACA,8B,CACA,c,CACA,mC,CACA,Q,CACA,M,CACA,O,CACA,a,CACA,mC,CAGF,sC,CACE,S,CACA,Y,CACA,kB,CACA,c,CACA,gB,CACA,e,CACA,2B,CACA,oB,CACA,qD,CACA,yF,CAGA,4C,CACE,U,CACA,+B,CACA,oB,CAGF,yE,CACE,gC,CACA,e,CACA,c,CACA,oB,CAGF,oF,CACE,c,CACA,U,CAIJ,2C,CACE,c,CACA,gB,CACA,e,CAGF,yBACE,gD,CACE,eCvDJ,6B,CACE,Y,CACA,uB,CAAA,oB,CAAA,e,CACA,oB,CACA,qB,CACA,c,CACA,c,CACA,S,CACA,Q,CACA,U,CACA,W,CACA,kB,CACA,sB,CACA,yF,CAEA,kC,CHkTA,oC,CGhTA,mC,CAEE,U,CAIJ,yBACE,6B,CACE,cCzBJ,uC,CACE,Y,CAGF,iC,CACE,U,CACA,oB,CAGF,sC,CACE,oB,CACA,Y,CACA,kB,CACA,oB,CACA,W,CACA,iB,CACA,kB,CACA,2C,CAGF,kC,CACE,U,CACA,W,CACA,gB,CAGF,yBACE,uC,CACE,W,CACA,Y,CACA,kB,CACA","file":"header.css","sourcesContent":["@import 'src/vars.pcss';\n\n.nav {\n display: block;\n}\n\n.menu-list {\n display: grid;\n grid-auto-flow: column;\n gap: 32px;\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n.menu-item-wrap {\n position: relative;\n}\n\n.menu-item {\n display: block;\n line-height: 60px !important;\n color: rgba(255, 255, 255, 0.75);\n border-top: 2px solid transparent;\n border-bottom: 2px solid transparent;\n text-decoration: none;\n cursor: pointer;\n\n &:hover,\n &.expanded {\n color: #ffffff;\n border-bottom-color: rgba(255, 255, 255, 0.4);\n text-decoration: none;\n }\n\n &.item-active {\n color: #ffffff;\n border-bottom-color: inherit;\n }\n}\n\n.dropdown-menu {\n display: none;\n position: absolute;\n top: 100%;\n min-width: 260px;\n margin: 8px 0 0 0;\n list-style: none;\n padding: 8px 0;\n white-space: nowrap;\n background: rgba(255, 255, 255, 1);\n border: 1px solid rgba(39, 40, 44, 0.7);\n animation: fade-in ease-out var(--ktl-transition-fast) forwards;\n}\n\n.dark-theme .dropdown-menu {\n background: var(--ktl-dark-100);\n border-color: rgba(255, 255, 255, 0.2);\n\n .dropdown-menu-item {\n color: var(--ktl-color-white-light);\n\n &:hover {\n color: rgba(255, 255, 255, 1);\n background: rgba(255, 255, 255, 0.1);\n }\n\n &.active {\n color: var(--ktl-dark-100);\n background: rgba(255, 255, 255, 1);\n }\n }\n}\n\n.dropdown-menu-expanded {\n display: block;\n}\n\n.dropdown-menu-align-right {\n right: 0;\n}\n\n.dropdown-menu-item {\n display: block;\n text-decoration: none;\n padding: 8px 16px;\n color: var(--ktl-dark-100);\n transition: color var(--ktl-transition-fast),\n background var(--ktl-transition-fast);\n\n &:hover {\n color: var(--ktl-dark-100);\n background: rgba(39, 40, 44, 0.1);\n text-decoration: none;\n }\n\n &.active {\n color: rgba(255, 255, 255, 1);\n background: var(--ktl-dark-100);\n cursor: default;\n }\n}\n\n@media (max-width: 640px) {\n .nav {\n display: none;\n }\n}\n\n@keyframes fade-in {\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n",".container {\n flex-grow: 1;\n display: flex;\n align-items: flex-start;\n}\n\n.link {\n display: block;\n width: 100px;\n height: 24px;\n text-decoration: none;\n margin-left: -4px;\n cursor: pointer;\n}\n\n.version-tag {\n line-height: 16px;\n text-decoration: none;\n color: rgba(255, 255, 255, 0.75);\n\n &:hover {\n color: #ffffff;\n }\n}\n",":root {\n --ktl-light-grey: #f4f4f4;\n --ktl-dark-100: rgba(39, 40, 44, 1);\n --ktl-dark-bg-hard: rgba(27, 27, 27, 1);\n --ktl-icon-color-dark: rgba(39, 40, 44, 0.75);\n --ktl-color-white-light: rgba(255, 255, 255, 0.75);\n --ktl-transition-xfast: 100ms;\n --ktl-transition-fast: 300ms;\n --ktl-color-primary-light-theme: #7f52ff;\n --ktl-color-dark-40: rgba(39, 40, 44, 0.4);\n --ktl-light-text-hard: rgba(39, 40, 44, 1);\n --ktl-light-dark-20: rgba(39, 40, 44, 0.2);\n --ktl-overlay-z-index: 900;\n --ktl-top-menu-z-index: 905;\n --ktl-header-z-index: 906;\n --ktl-header-height-mobile: 48px;\n --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;\n --rs-font-family-ui: var(--ktl-font-family-inter);\n}","@import 'src/vars.pcss';\n\n.header-menu {\n position: relative;\n padding: 0 32px;\n background: var(--ktl-dark-100);\n display: flex;\n align-items: center;\n height: 64px;\n justify-content: space-between;\n z-index: var(--ktl-header-z-index);\n}\n\n.border {\n box-shadow: inset 0 -1px rgba(255, 255, 255, 0.2);\n}\n\n@media (max-width: 640px) {\n .header-menu {\n padding: 0 16px;\n height: var(--ktl-header-height-mobile);\n }\n\n .header-menu:not(.with-menu-popup) {\n box-shadow: none;\n }\n\n .logo-hide {\n display: none !important;\n }\n}\n",null,"@import 'src/vars.pcss';\n\n.button {\n display: flex;\n visibility: hidden;\n appearance: none;\n border: 0 none transparent;\n outline: 0 none transparent;\n cursor: pointer;\n background: none;\n padding: 0;\n margin: 0 0 0 32px;\n width: 24px;\n height: 24px;\n align-items: center;\n justify-content: center;\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n color: var(--ktl-color-white-light);\n\n &.active {\n visibility: visible;\n }\n\n &:hover,\n :focus {\n color: #ffffff;\n }\n}\n\n@media (max-width: 640px) {\n .button {\n display: none;\n margin: 0 16px 0 0;\n\n &.active {\n display: flex;\n }\n }\n}\n","@import 'src/vars.pcss';\n\n.menu-popup {\n display: none;\n padding: 8px 0;\n background: var(--ktl-dark-100);\n position: fixed;\n top: var(--ktl-header-height-mobile);\n bottom: 0;\n left: 0;\n right: 0;\n overflow: auto;\n z-index: var(--ktl-top-menu-z-index);\n}\n\n.menu-item {\n --level: 0;\n display: flex;\n align-items: center;\n font-size: 16px;\n line-height: 24px;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.75);\n text-decoration: none;\n padding: 8px 16px 8px calc(16px + (var(--level) * 24px));\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n\n &:hover {\n color: rgba(255, 255, 255, 1);\n background: rgba(255, 255, 255, 0.1);\n text-decoration: none;\n }\n\n &.active {\n color: var(--ktl-light-text-hard);\n background: rgba(255, 255, 255, 1);\n cursor: default;\n text-decoration: none;\n }\n\n &.active-with-child {\n background: none;\n color: rgba(255, 255, 255, 1);\n }\n}\n\n.menu-item-root {\n font-size: 20px;\n line-height: 32px;\n font-weight: 600;\n}\n\n@media (max-width: 640px) {\n .menu-popup-expanded {\n display: block;\n }\n}\n",".button {\n display: none;\n appearance: none;\n border: 0 none transparent;\n outline: 0 none transparent;\n cursor: pointer;\n background: none;\n padding: 0;\n margin: 0;\n width: 24px;\n height: 24px;\n align-items: center;\n justify-content: center;\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n color: var(--ktl-color-white-light);\n\n &:hover,\n :focus {\n color: #ffffff;\n }\n}\n\n@media (max-width: 640px) {\n .button {\n display: flex;\n }\n}\n",".logo-small {\n display: none;\n}\n\n.link {\n color: rgba(255, 255, 255, 1);\n text-decoration: none;\n}\n\n.icon-wrap {\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-items: center;\n height: 100%;\n margin-right: 16px;\n padding-right: 16px;\n border-right: 1px solid rgba(255, 255, 255, 0.2);\n}\n\n.icon {\n width: 24px;\n height: 24px;\n margin-left: -4px;\n}\n\n@media (max-width: 640px) {\n .logo-small {\n flex-grow: 1;\n display: flex;\n align-items: center;\n height: 100%;\n }\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/vars.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/header.css","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.module.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.pcss","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.module.pcss"],"names":[],"mappings":"4DAwGE,E,CACE,S,CAGF,E,CACE,W,oDALF,E,CACE,S,CAGF,E,CACE,WC7GJ,uC,CACE,W,CACA,Y,CACA,sB,CAGF,iC,CACE,a,CACA,W,CACA,W,CACA,oB,CACA,gB,CACA,c,CAGF,wC,CACE,gB,CACA,oB,CACA,2B,CAEA,8C,CACE,U,CCrBJ,K,CACE,wB,CACA,kC,CACA,sC,CACA,4C,CACA,iD,CACA,4B,CACA,2B,CACA,uC,CACA,yC,CACA,yC,CACA,yC,CACA,yB,CACA,0B,CACA,wB,CACA,+B,CACA,6K,CACA,gD,CCfF,oC,CACE,iB,CACA,c,CACA,8B,CACA,Y,CACA,kB,CACA,W,CACA,6B,CACA,iC,CAGF,+B,CACE,4C,CAGF,yBACE,oC,CACE,c,CACA,sC,CAGF,kF,CACE,iBHtBJ,qC,CACE,a,CAGF,2C,CACE,Y,CACA,qB,CACA,Q,CACA,e,CACA,Q,CACA,S,CAGF,gD,CACE,iB,CAGF,4C,CACE,a,CACA,0B,CACA,2B,CACA,gC,CACA,mC,CACA,oB,CACA,c,CIwEA,sF,CJtEA,kD,CAEE,U,CACA,wC,CACA,oB,CAGF,0F,CACE,U,CACA,2B,CAIJ,+C,CACE,Y,CACA,iB,CACA,Q,CACA,e,CACA,c,CACA,e,CACA,a,CACA,kB,CACA,e,CACA,kC,CACA,uG,CAAA,+F,CAGF,4F,CACE,8B,CACA,iC,CAEA,iJ,CACE,kC,CAEA,uJ,CACE,U,CACA,+B,CAGF,yL,CACE,yB,CACA,e,CAKN,wD,CACE,a,CAGF,2D,CACE,O,CAGF,oD,CACE,a,CACA,oB,CACA,gB,CACA,yB,CACA,iF,CAGA,0D,CACE,yB,CACA,4B,CACA,oB,CAGF,4F,CACE,U,CACA,8B,CACA,c,CKjGJ,+B,CACE,Y,CACA,iB,CACA,uB,CAAA,oB,CAAA,e,CACA,oB,CACA,qB,CACA,c,CACA,c,CACA,S,CACA,iB,CACA,U,CACA,W,CACA,kB,CACA,sB,CACA,yF,CAEA,kC,CAEA,8D,CACE,kB,CDqMF,sC,CClMA,qC,CAEE,U,CAIJ,yBACE,+B,CACE,Y,CACA,iB,CAEA,8D,CACE,cClCN,uC,CACE,Y,CACA,a,CACA,8B,CACA,c,CACA,mC,CACA,Q,CACA,M,CACA,O,CACA,a,CACA,mC,CAGF,sC,CACE,S,CACA,Y,CACA,kB,CACA,c,CACA,gB,CACA,e,CACA,2B,CACA,oB,CACA,qD,CACA,yF,CAGA,4C,CACE,U,CACA,+B,CACA,oB,CAGF,yE,CACE,gC,CACA,e,CACA,c,CACA,oB,CAGF,oF,CACE,c,CACA,U,CAIJ,2C,CACE,c,CACA,gB,CACA,e,CAGF,gD,CACE,a,CCtDF,6B,CACE,Y,CACA,uB,CAAA,oB,CAAA,e,CACA,oB,CACA,qB,CACA,c,CACA,c,CACA,S,CACA,Q,CACA,U,CACA,W,CACA,kB,CACA,sB,CACA,yF,CAEA,kC,CHsSA,oC,CGpSA,mC,CAEE,U,CCnBJ,uC,CACE,W,CACA,Y,CACA,kB,CACA,W,CAGF,iC,CACE,U,CACA,oB,CAGF,sC,CACE,oB,CACA,Y,CACA,kB,CACA,oB,CACA,W,CACA,iB,CACA,kB,CACA,2C,CAGF,kC,CACE,U,CACA,W,CACA,gB","file":"header.css","sourcesContent":["@import 'src/vars.pcss';\n\n.nav {\n display: block;\n}\n\n.menu-list {\n display: grid;\n grid-auto-flow: column;\n gap: 32px;\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n.menu-item-wrap {\n position: relative;\n}\n\n.menu-item {\n display: block;\n line-height: 60px !important;\n color: rgba(255, 255, 255, 0.75);\n border-top: 2px solid transparent;\n border-bottom: 2px solid transparent;\n text-decoration: none;\n cursor: pointer;\n\n &:hover,\n &.expanded {\n color: #ffffff;\n border-bottom-color: rgba(255, 255, 255, 0.4);\n text-decoration: none;\n }\n\n &.item-active {\n color: #ffffff;\n border-bottom-color: inherit;\n }\n}\n\n.dropdown-menu {\n display: none;\n position: absolute;\n top: 100%;\n min-width: 260px;\n margin: 8px 0 0 0;\n list-style: none;\n padding: 8px 0;\n white-space: nowrap;\n background: rgba(255, 255, 255, 1);\n border: 1px solid rgba(39, 40, 44, 0.7);\n animation: fade-in ease-out var(--ktl-transition-fast) forwards;\n}\n\n.dark-theme .dropdown-menu {\n background: var(--ktl-dark-100);\n border-color: rgba(255, 255, 255, 0.2);\n\n .dropdown-menu-item {\n color: var(--ktl-color-white-light);\n\n &:hover {\n color: rgba(255, 255, 255, 1);\n background: rgba(255, 255, 255, 0.1);\n }\n\n &.active {\n color: var(--ktl-dark-100);\n background: rgba(255, 255, 255, 1);\n }\n }\n}\n\n.dropdown-menu-expanded {\n display: block;\n}\n\n.dropdown-menu-align-right {\n right: 0;\n}\n\n.dropdown-menu-item {\n display: block;\n text-decoration: none;\n padding: 8px 16px;\n color: var(--ktl-dark-100);\n transition: color var(--ktl-transition-fast),\n background var(--ktl-transition-fast);\n\n &:hover {\n color: var(--ktl-dark-100);\n background: rgba(39, 40, 44, 0.1);\n text-decoration: none;\n }\n\n &.active {\n color: rgba(255, 255, 255, 1);\n background: var(--ktl-dark-100);\n cursor: default;\n }\n}\n\n@keyframes fade-in {\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n",".container {\n flex-grow: 1;\n display: flex;\n align-items: flex-start;\n}\n\n.link {\n display: block;\n width: 100px;\n height: 24px;\n text-decoration: none;\n margin-left: -4px;\n cursor: pointer;\n}\n\n.version-tag {\n line-height: 16px;\n text-decoration: none;\n color: rgba(255, 255, 255, 0.75);\n\n &:hover {\n color: #ffffff;\n }\n}\n",":root {\n --ktl-light-grey: #f4f4f4;\n --ktl-dark-100: rgba(39, 40, 44, 1);\n --ktl-dark-bg-hard: rgba(27, 27, 27, 1);\n --ktl-icon-color-dark: rgba(39, 40, 44, 0.75);\n --ktl-color-white-light: rgba(255, 255, 255, 0.75);\n --ktl-transition-xfast: 100ms;\n --ktl-transition-fast: 300ms;\n --ktl-color-primary-light-theme: #7f52ff;\n --ktl-color-dark-40: rgba(39, 40, 44, 0.4);\n --ktl-light-text-hard: rgba(39, 40, 44, 1);\n --ktl-light-dark-20: rgba(39, 40, 44, 0.2);\n --ktl-overlay-z-index: 900;\n --ktl-top-menu-z-index: 905;\n --ktl-header-z-index: 906;\n --ktl-header-height-mobile: 48px;\n --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;\n --rs-font-family-ui: var(--ktl-font-family-inter);\n}","@import 'src/vars.pcss';\n\n.header-menu {\n position: relative;\n padding: 0 32px;\n background: var(--ktl-dark-100);\n display: flex;\n align-items: center;\n height: 64px;\n justify-content: space-between;\n z-index: var(--ktl-header-z-index);\n}\n\n.border {\n box-shadow: inset 0 -1px rgba(255, 255, 255, 0.2);\n}\n\n@media (max-width: 640px) {\n .header-menu {\n padding: 0 16px;\n height: var(--ktl-header-height-mobile);\n }\n\n .header-menu:not(.with-menu-popup) {\n box-shadow: none;\n }\n}\n",null,"@import 'src/vars.pcss';\n\n.button {\n display: flex;\n visibility: hidden;\n appearance: none;\n border: 0 none transparent;\n outline: 0 none transparent;\n cursor: pointer;\n background: none;\n padding: 0;\n margin: 0 0 0 32px;\n width: 24px;\n height: 24px;\n align-items: center;\n justify-content: center;\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n color: var(--ktl-color-white-light);\n\n &.active {\n visibility: visible;\n }\n\n &:hover,\n :focus {\n color: #ffffff;\n }\n}\n\n@media (max-width: 640px) {\n .button {\n display: none;\n margin: 0 16px 0 0;\n\n &.active {\n display: flex;\n }\n }\n}\n","@import 'src/vars.pcss';\n\n.menu-popup {\n display: none;\n padding: 8px 0;\n background: var(--ktl-dark-100);\n position: fixed;\n top: var(--ktl-header-height-mobile);\n bottom: 0;\n left: 0;\n right: 0;\n overflow: auto;\n z-index: var(--ktl-top-menu-z-index);\n}\n\n.menu-item {\n --level: 0;\n display: flex;\n align-items: center;\n font-size: 16px;\n line-height: 24px;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.75);\n text-decoration: none;\n padding: 8px 16px 8px calc(16px + (var(--level) * 24px));\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n\n &:hover {\n color: rgba(255, 255, 255, 1);\n background: rgba(255, 255, 255, 0.1);\n text-decoration: none;\n }\n\n &.active {\n color: var(--ktl-light-text-hard);\n background: rgba(255, 255, 255, 1);\n cursor: default;\n text-decoration: none;\n }\n\n &.active-with-child {\n background: none;\n color: rgba(255, 255, 255, 1);\n }\n}\n\n.menu-item-root {\n font-size: 20px;\n line-height: 32px;\n font-weight: 600;\n}\n\n.menu-popup-expanded {\n display: block;\n}\n",".button {\n display: flex;\n appearance: none;\n border: 0 none transparent;\n outline: 0 none transparent;\n cursor: pointer;\n background: none;\n padding: 0;\n margin: 0;\n width: 24px;\n height: 24px;\n align-items: center;\n justify-content: center;\n transition: color var(--ktl-transition-xfast),\n background-color var(--ktl-transition-xfast);\n color: var(--ktl-color-white-light);\n\n &:hover,\n :focus {\n color: #ffffff;\n }\n}\n",".logo-small {\n flex-grow: 1;\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.link {\n color: rgba(255, 255, 255, 1);\n text-decoration: none;\n}\n\n.icon-wrap {\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-items: center;\n height: 100%;\n margin-right: 16px;\n padding-right: 16px;\n border-right: 1px solid rgba(255, 255, 255, 0.2);\n}\n\n.icon {\n width: 24px;\n height: 24px;\n margin-left: -4px;\n}\n"],"sourceRoot":""}
package/dist/header.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see header.js.LICENSE.txt */
2
- !function(){var e={4184:function(e,t){var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var l=typeof n;if("string"===l||"number"===l)e.push(n);else if(Array.isArray(n)){if(n.length){var i=o.apply(null,n);i&&e.push(i)}}else if("object"===l)if(n.toString===Object.prototype.toString)for(var a in n)r.call(n,a)&&n[a]&&e.push(a);else e.push(n.toString())}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},5251:function(e,t,n){"use strict";var r=n(3910),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var l=Symbol.for;o=l("react.element"),t.Fragment=l("react.fragment")}var i=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a=Object.prototype.hasOwnProperty,u={key:!0,ref:!0,__self:!0,__source:!0};function s(e,t,n){var r,l={},s=null,c=null;for(r in void 0!==n&&(s=""+n),void 0!==t.key&&(s=""+t.key),void 0!==t.ref&&(c=t.ref),t)a.call(t,r)&&!u.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===l[r]&&(l[r]=t[r]);return{$$typeof:o,type:e,key:s,ref:c,props:l,_owner:i.current}}t.jsx=s,t.jsxs=s},5893:function(e,t,n){"use strict";e.exports=n(5251)},3910:function(e){"use strict";e.exports=require("react")}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var l=t[r]={exports:{}};return e[r](l,l.exports,n),l.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};!function(){"use strict";n.r(r),n.d(r,{ANDROID_TITLE:function(){return L},ANDROID_URL:function(){return b},COMMUNITY_TITLE:function(){return S},COMMUNITY_URL:function(){return N},DATA_SCIENCE_TITLE:function(){return k},DATA_SCIENCE_URL:function(){return T},DOCS_TITLE:function(){return O},DOCS_URL:function(){return j},KMM_DOCS_TITLE:function(){return F},KMM_DOCS_URL:function(){return K},KOTLIN_DOCS_TITLE:function(){return Y},KOTLIN_DOCS_URL:function(){return W},MULTIPLATFORM_MOBILE_TITLE:function(){return _},MULTIPLATFORM_MOBILE_URL:function(){return g},PLAY_EXAMPLES_TITLE:function(){return H},PLAY_EXAMPLES_URL:function(){return z},PLAY_HANDSON_TITLE:function(){return U},PLAY_HANDSON_URL:function(){return P},PLAY_KOANS_TITLE:function(){return B},PLAY_KOANS_URL:function(){return D},PLAY_TITLE:function(){return M},PLAY_TITLE_FULL:function(){return I},PLAY_URL:function(){return C},SERVER_SIDE_TITLE:function(){return E},SERVER_SIDE_URL:function(){return y},SOLUTIONS_TITLE:function(){return p},TEACH_TITLE:function(){return R},TEACH_URL:function(){return A},WEB_FRONTEND_TITLE:function(){return x},WEB_FRONTEND_URL:function(){return w},default:function(){return Ae},getNavScheme:function(){return q}});var e=n(3910),t=require("@rescui/ui-contexts");var o,l,i;function a(){return a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},a.apply(this,arguments)}var u=function(t){return e.createElement("svg",a({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 24"},t),o||(o=e.createElement("radialGradient",{id:"kotlin-logo-large_svg__a",cx:22.432,cy:3.493,r:21.679,gradientTransform:"translate(-.19 .042) scale(.9998)",gradientUnits:"userSpaceOnUse"},e.createElement("stop",{offset:.003,stopColor:"#e44857"}),e.createElement("stop",{offset:.469,stopColor:"#c711e1"}),e.createElement("stop",{offset:1,stopColor:"#7f52ff"}))),l||(l=e.createElement("path",{fill:"url(#kotlin-logo-large_svg__a)",d:"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z"})),i||(i=e.createElement("g",{fill:"#fff"},e.createElement("path",{d:"M45.69 2.73h-3.76l-8.18 8.73v-8.7h-3.02v18.92h3.02v-9.17l8.21 9.17h3.89l-8.75-9.79z"}),e.createElement("path",{d:"M55.93 8.44c-1.07-.62-2.28-.93-3.64-.93-1.38 0-2.61.31-3.7.93a6.63 6.63 0 00-2.55 2.57c-.61 1.1-.91 2.35-.91 3.74 0 1.4.3 2.64.91 3.74a6.45 6.45 0 002.53 2.57c1.09.62 2.32.93 3.7.93 1.36 0 2.58-.31 3.66-.93a6.53 6.53 0 002.51-2.57c.6-1.1.9-2.35.9-3.74 0-1.4-.3-2.64-.9-3.74-.6-1.1-1.43-1.95-2.51-2.57zm-.19 8.7c-.33.69-.8 1.23-1.4 1.61-.6.39-1.3.58-2.08.58-.79 0-1.49-.19-2.11-.58-.61-.39-1.09-.93-1.43-1.61-.34-.69-.51-1.48-.51-2.38 0-.9.17-1.7.51-2.39.34-.69.82-1.23 1.43-1.61.61-.39 1.32-.58 2.12-.58.77 0 1.46.19 2.07.58.6.39 1.07.93 1.4 1.61.33.69.49 1.48.49 2.39.01.9-.15 1.69-.49 2.38zm9.75-12.76h-2.92v2.35c0 .37-.09.65-.27.83-.18.18-.46.28-.84.28h-1.43v2.49h2.49v7.45c0 .77.16 1.46.47 2.05.31.59.76 1.05 1.34 1.37.58.32 1.27.49 2.06.49h2.23V19.1h-1.68c-.43 0-.78-.15-1.06-.45-.27-.3-.4-.7-.4-1.2v-7.11h3.22v-2.5h-3.22V4.38zM71.03 2H74v19.68h-2.97zm6.32.03h3v3.05h-3zm0 5.81h2.97v13.84h-2.97zm18.08 2.28a4.694 4.694 0 00-1.77-1.92c-.76-.46-1.65-.69-2.67-.69-1.08 0-2.03.26-2.84.79-.65.42-1.17.98-1.58 1.68l-.02-2.14H83.7v13.84h2.97v-7.74c0-.75.14-1.41.43-1.99.28-.58.68-1.03 1.2-1.35.52-.32 1.12-.48 1.82-.48.62 0 1.16.13 1.6.39.45.26.78.64 1.01 1.12.23.49.34 1.07.34 1.74v8.31h2.97v-8.73c.02-1.07-.2-2.01-.61-2.83z"}))))},s=n(4184),c=n.n(s),d=require("@rescui/typography");const m="https://kotlinlang.org";var f=n(5893);const v=e=>{let{productWebUrl:t,className:n}=e;const r=t?function(e){const t=/v?\d+\.\d+\.\d+$/.exec(e);return t?t[0]:null}(t):null,o=(0,d.useTextStyles)();return(0,f.jsxs)("div",{className:c()("ktl-logo-large-module_container_+5pgf",n,o("rs-text-3",{hardness:"average"})),children:[(0,f.jsx)("a",{className:"ktl-logo-large-module_link_iZIEJ",href:m,"aria-label":"Kotlin Home Page",children:(0,f.jsx)(u,{})}),r&&(0,f.jsx)("a",{className:c()("ktl-logo-large-module_version-tag_fiNIk"),href:t,target:"_blank",children:r})]})};const h="ktl-header-module_logo-hide_uBrPV",p="Solutions",_="Multiplatform Mobile",g="/lp/mobile/",E="Server-side",y="/lp/server-side/",x="Web frontend",w="/docs/js-overview.html",k="Data science",T="/docs/data-science-overview.html",L="Android",b="/docs/android-overview.html",O="Docs",j="/docs/home.html",S="Community",N="/community/",R="Teach",A="/education/",M="Play",I="Playground",C="https://play.kotlinlang.org/",P="".concat(C,"hands-on"),U="Hands-on",z="".concat(C,"byExample"),H="Examples",D="".concat(C,"koans"),B="Koans",Y="Kotlin",W="/docs/home.html",F="KMM",K="/docs/mobile/home.html",V=[{title:p,url:null,items:[{title:_,url:g},{title:E,url:y},{title:x,url:w},{title:k,url:T},{title:L,url:b}]},{title:O,url:W},{title:S,url:N},{title:R,url:A},{title:M,url:null,items:[{title:I,url:C},{title:U,url:P},{title:H,url:z},{title:B,url:D}]}];function q(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(e,t)=>e===t,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return V.map((r=>{var o;let{title:l,url:i,items:a}=r;i&&t&&(i=G(i,t,!!n));const u={title:l,url:i};let s=e(i,t);return u.items=null!==(o=null==a?void 0:a.map((r=>{let{title:o,url:l}=r;l&&t&&(l=G(l,t,!!n));let i=e(l,t);return i&&(s=i),{title:o,url:l,isActive:i}})))&&void 0!==o?o:[],u.isActive=s,u}))}function G(e,t,n){return n?e.startsWith(C)?e.replace(C,"/"):"".concat(m).concat(e):e}const Z=e=>{let{items:t,isExpanded:n,alignRight:r,linkHandler:o}=e;const l=(0,d.useTextStyles)();return(0,f.jsx)("ul",{className:c()("ktl-horizontal-menu-module_dropdown-menu_dVOw-",l("rs-text-2"),{"ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy":n,"ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO":r}),children:t.map(((e,t)=>{const n=!e.isActive&&e.url?"a":"span";return(0,f.jsx)("li",{children:(0,f.jsx)(n,{className:c()("ktl-horizontal-menu-module_dropdown-menu-item_wRlcN",{"ktl-horizontal-menu-module_active_azHwP":e.isActive}),...e.url?{href:e.url,onClick:o?t=>e.url&&o(t,e.url):void 0}:{},children:e.title})},t)}))})},J=t=>{var n,r;let{item:o,onMouseEnter:l,onMouseLeave:i,isExpanded:a,isLast:u,linkHandler:s}=t;const m=o.isActive||!o.url?"span":"a",v=(0,d.useTextStyles)();return(0,f.jsxs)("li",{className:"ktl-horizontal-menu-module_menu-item-wrap_dnVf-",onMouseEnter:()=>l(o),onMouseLeave:i,children:[(0,e.createElement)(m,{...o.url?{href:o.url,onClick:s?e=>o.url&&s(e,o.url):void 0}:{},key:o.title,className:c()("ktl-horizontal-menu-module_menu-item_Z+YKZ",v("rs-text-2"),{"ktl-horizontal-menu-module_item-active_+iyf-":o.isActive,"ktl-horizontal-menu-module_expanded_thibK":a&&!(null===(n=o.items)||void 0===n||!n.length)})},o.title),!(null===(r=o.items)||void 0===r||!r.length)&&(0,f.jsx)(Z,{items:o.items,isExpanded:a,alignRight:u,linkHandler:s})]})},$=t=>{let{items:n,theme:r,linkHandler:o}=t;const[l,i]=(0,e.useState)(-1),[a,u]=(0,e.useState)(l);(0,e.useEffect)((()=>{const e=setTimeout((()=>u(l)),-1!==l?200:400);return()=>clearTimeout(e)}),[l]);const s=e=>i(n.findIndex((t=>t===e))),d=()=>i(-1);return(0,f.jsx)("nav",{className:c()("ktl-horizontal-menu-module_nav_xYv4i",{"ktl-horizontal-menu-module_dark-theme_Lp065":"dark"===r}),children:(0,f.jsx)("ul",{className:"ktl-horizontal-menu-module_menu-list_7oi3W",children:n.map(((e,t)=>(0,f.jsx)(J,{item:e,onMouseEnter:s,onMouseLeave:d,isExpanded:t===a,isLast:t===n.length-1,linkHandler:o},t)))})})};var X;function Q(){return Q=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Q.apply(this,arguments)}var ee=function(t){return e.createElement("svg",Q({width:24,height:24,xmlns:"http://www.w3.org/2000/svg"},t),X||(X=e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.847 6.861A6.99 6.99 0 009.587 3a6.997 6.997 0 104.186 12.601l6.106 6.106 1.414-1.414-6.107-6.106a6.99 6.99 0 00.66-7.326zM14.587 10a5 5 0 11-10.001 0 5 5 0 0110 0z",fill:"currentColor"})))};const te=e=>{let{onClick:t,isActive:n}=e;return(0,f.jsx)("button",{type:"button",className:c()("ktl-search-button_button_JUyxv",{"ktl-search-button_active_G-dk1":n}),"aria-label":"Search",onClick:t,children:(0,f.jsx)(ee,{})})};var ne;function re(){return re=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},re.apply(this,arguments)}var oe,le=function(t){return e.createElement("svg",re({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),ne||(ne=e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4 5h16v2H4V5zm0 6h16v2H4v-2zm16 6H4v2h16v-2z",fill:"currentColor"})))};function ie(){return ie=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ie.apply(this,arguments)}var ae=function(t){return e.createElement("svg",ie({width:16,height:16,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),oe||(oe=e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.707 1.707L14.293.293 8 6.586 1.707.293.293 1.707 6.586 8 .293 14.293l1.414 1.414L8 9.414l6.293 6.293 1.414-1.414L9.414 8l6.293-6.293z",fill:"currentColor"})))};const ue=e=>{let{onClick:t,isExpanded:n}=e;return(0,f.jsx)("button",{type:"button",className:c()("ktl-menu-button_button_InVin"),"aria-haspopup":"true","aria-label":"Open the navigation",onClick:t,children:n?(0,f.jsx)(ae,{}):(0,f.jsx)(le,{})})};function se(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var ce=!1;if("undefined"!=typeof window){var de={get passive(){ce=!0}};window.addEventListener("testPassive",null,de),window.removeEventListener("testPassive",null,de)}var me="undefined"!=typeof window&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||"MacIntel"===window.navigator.platform&&window.navigator.maxTouchPoints>1),fe=[],ve=!1,he=-1,pe=void 0,_e=void 0,ge=function(e){return fe.some((function(t){return!(!t.options.allowTouchMove||!t.options.allowTouchMove(e))}))},Ee=function(e){var t=e||window.event;return!!ge(t.target)||(t.touches.length>1||(t.preventDefault&&t.preventDefault(),!1))},ye=function(){setTimeout((function(){void 0!==_e&&(document.body.style.paddingRight=_e,_e=void 0),void 0!==pe&&(document.body.style.overflow=pe,pe=void 0)}))},xe=function(e,t){if(me){if(!e)return void console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");if(e&&!fe.some((function(t){return t.targetElement===e}))){var n={targetElement:e,options:t||{}};fe=[].concat(se(fe),[n]),e.ontouchstart=function(e){1===e.targetTouches.length&&(he=e.targetTouches[0].clientY)},e.ontouchmove=function(t){1===t.targetTouches.length&&function(e,t){var n=e.targetTouches[0].clientY-he;!ge(e.target)&&(t&&0===t.scrollTop&&n>0||function(e){return!!e&&e.scrollHeight-e.scrollTop<=e.clientHeight}(t)&&n<0?Ee(e):e.stopPropagation())}(t,e)},ve||(document.addEventListener("touchmove",Ee,ce?{passive:!1}:void 0),ve=!0)}}else{!function(e){if(void 0===_e){var t=!!e&&!0===e.reserveScrollBarGap,n=window.innerWidth-document.documentElement.clientWidth;t&&n>0&&(_e=document.body.style.paddingRight,document.body.style.paddingRight=n+"px")}void 0===pe&&(pe=document.body.style.overflow,setTimeout((function(){document.body.style.overflow="hidden"})))}(t);var r={targetElement:e,options:t||{}};fe=[].concat(se(fe),[r])}},we=function(){me?(fe.forEach((function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null})),ve&&(document.removeEventListener("touchmove",Ee,ce?{passive:!1}:void 0),ve=!1),fe=[],he=-1):(ye(),fe=[])};const ke=e=>{let{item:t,level:n,linkHandler:r}=e;const o=t.url?"a":"span",l={"--level":n};return(0,f.jsx)(o,{...t.url?{href:t.url,onClick:r?e=>t.url&&r(e,t.url):void 0}:{},className:c()("ktl-menu-popup-module_menu-item_f6wvh",{"ktl-menu-popup-module_menu-item-root_C-hkN":0===n,"ktl-menu-popup-module_active_DrZav":t.isActive,"ktl-menu-popup-module_active-with-child_BDnrW":t.items&&t.items.length}),style:l,children:t.title})},Te=t=>{let{items:n,level:r,linkHandler:o}=t;return(0,f.jsx)(f.Fragment,{children:n.map(((t,n)=>(0,f.jsxs)(e.Fragment,{children:[(0,f.jsx)(ke,{item:t,level:r,linkHandler:o}),t.items&&t.items.length>0&&(0,f.jsx)(Te,{items:t.items,level:r+1,linkHandler:o})]},n)))})},Le=t=>{let{items:n,isExpanded:r,setExpand:o,headerRef:l,linkHandler:i}=t;const a=(0,e.useRef)(null),u=(0,d.useTextStyles)(),[s,m]=(0,e.useState)({});(0,e.useEffect)((()=>{const e=()=>{window.innerWidth>640&&(o(!1),we())};return window.addEventListener("resize",e),()=>{we(),window.removeEventListener("resize",e)}}),[]),(0,e.useLayoutEffect)((()=>{l.current&&m({top:l.current.getBoundingClientRect().bottom})}),[r,l]);const v=(0,e.useCallback)((()=>{a.current&&(r?function(e){if(me){if(!e)return void console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");e.ontouchstart=null,e.ontouchmove=null,fe=fe.filter((function(t){return t.targetElement!==e})),ve&&0===fe.length&&(document.removeEventListener("touchmove",Ee,ce?{passive:!1}:void 0),ve=!1)}else(fe=fe.filter((function(t){return t.targetElement!==e}))).length||ye()}(a.current):xe(a.current)),o(!r)}),[r,a]);return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(ue,{onClick:v,isExpanded:r}),(0,f.jsx)("nav",{style:s,ref:a,className:c()("ktl-menu-popup-module_menu-popup_Yqtnq",u("rs-text-2"),{"ktl-menu-popup-module_menu-popup-expanded_FlujR":r}),children:(0,f.jsx)(Te,{items:n,level:0,linkHandler:i})})]})};var be,Oe;function je(){return je=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},je.apply(this,arguments)}var Se=function(t){return e.createElement("svg",je({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},t),be||(be=e.createElement("radialGradient",{id:"kotlin-logo-small_svg__a",cx:22.432,cy:3.493,r:21.679,gradientTransform:"translate(-.19 .042) scale(.9998)",gradientUnits:"userSpaceOnUse"},e.createElement("stop",{offset:.003,stopColor:"#e44857"}),e.createElement("stop",{offset:.469,stopColor:"#c711e1"}),e.createElement("stop",{offset:1,stopColor:"#7f52ff"}))),Oe||(Oe=e.createElement("path",{fill:"url(#kotlin-logo-small_svg__a)",d:"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z"})))};const Ne=e=>{let{homeTitle:t,homeUrl:n,className:r}=e;const o=(0,d.useTextStyles)();return(0,f.jsxs)("div",{className:c()("ktl-logo-small-module_logo-small_7ddNl",r),children:[(0,f.jsx)("a",{href:m,className:"ktl-logo-small-module_icon-wrap_BFVBd",children:(0,f.jsx)(Se,{className:"ktl-logo-small-module_icon_JM+yC"})}),(0,f.jsx)("a",{href:n,className:c()("ktl-logo-small-module_link_6gruv",o("rs-h3")),children:t})]})},Re=(0,e.forwardRef)(((n,r)=>{let{productWebUrl:o,hasSearch:l=!1,onSearchClick:i,currentUrl:a,currentTitle:u,className:s,hasBorder:d=!0,dropdownTheme:m="dark",linkHandler:p,isPlayground:_,isUrlActive:g}=n;const[E,y]=(0,e.useState)(!1),x=(0,e.useMemo)((()=>q(g,a,_)),[g,a,_]),w=(0,e.useRef)(null);return(0,e.useImperativeHandle)(r,(()=>w.current)),(0,f.jsx)(t.ThemeProvider,{theme:"dark",children:(0,f.jsxs)("header",{ref:w,className:c()("ktl-header-module_header-menu_E3vzo",s,{"ktl-header-module_with-menu-popup_DcoOT":E,"ktl-header-module_border_smGpe":d}),children:[(0,f.jsx)(v,{productWebUrl:o,className:u&&a&&!E?h:null}),!!u&&!!a&&(0,f.jsx)(Ne,{homeTitle:u,homeUrl:a,className:E?h:null}),(0,f.jsx)($,{items:x,theme:m,linkHandler:p}),(0,f.jsx)(te,{onClick:i,isActive:l&&!!i}),(0,f.jsx)(Le,{items:x,setExpand:y,isExpanded:E,headerRef:w,linkHandler:p})]})})}));var Ae=Re}(),module.exports=r}();
2
+ !function(){var e={4184:function(e,t){var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var i=typeof n;if("string"===i||"number"===i)e.push(n);else if(Array.isArray(n)){if(n.length){var l=o.apply(null,n);l&&e.push(l)}}else if("object"===i)if(n.toString===Object.prototype.toString)for(var s in n)r.call(n,s)&&n[s]&&e.push(s);else e.push(n.toString())}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},5251:function(e,t,n){"use strict";var r=n(3910),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var i=Symbol.for;o=i("react.element"),t.Fragment=i("react.fragment")}var l=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s=Object.prototype.hasOwnProperty,a={key:!0,ref:!0,__self:!0,__source:!0};function u(e,t,n){var r,i={},u=null,c=null;for(r in void 0!==n&&(u=""+n),void 0!==t.key&&(u=""+t.key),void 0!==t.ref&&(c=t.ref),t)s.call(t,r)&&!a.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===i[r]&&(i[r]=t[r]);return{$$typeof:o,type:e,key:u,ref:c,props:i,_owner:l.current}}t.jsx=u,t.jsxs=u},5893:function(e,t,n){"use strict";e.exports=n(5251)},3910:function(e){"use strict";e.exports=require("react")}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};!function(){"use strict";n.r(r),n.d(r,{ANDROID_TITLE:function(){return Ee},ANDROID_URL:function(){return _e},COMMUNITY_TITLE:function(){return xe},COMMUNITY_URL:function(){return Te},DATA_SCIENCE_TITLE:function(){return ge},DATA_SCIENCE_URL:function(){return be},DOCS_TITLE:function(){return we},DOCS_URL:function(){return ye},KMM_DOCS_TITLE:function(){return Pe},KMM_DOCS_URL:function(){return De},KOTLIN_DOCS_TITLE:function(){return Be},KOTLIN_DOCS_URL:function(){return Ie},MULTIPLATFORM_MOBILE_TITLE:function(){return de},MULTIPLATFORM_MOBILE_URL:function(){return fe},PLAY_EXAMPLES_TITLE:function(){return Ce},PLAY_EXAMPLES_URL:function(){return je},PLAY_HANDSON_TITLE:function(){return Ne},PLAY_HANDSON_URL:function(){return ze},PLAY_KOANS_TITLE:function(){return Me},PLAY_KOANS_URL:function(){return Ae},PLAY_TITLE:function(){return Oe},PLAY_TITLE_FULL:function(){return Le},PLAY_URL:function(){return Re},SERVER_SIDE_TITLE:function(){return he},SERVER_SIDE_URL:function(){return ve},SOLUTIONS_TITLE:function(){return ce},TEACH_TITLE:function(){return ke},TEACH_URL:function(){return Se},WEB_FRONTEND_TITLE:function(){return pe},WEB_FRONTEND_URL:function(){return me},default:function(){return kt},getNavScheme:function(){return He}});var e,t=n(3910),o=n.n(t),i=require("@rescui/ui-contexts"),l=[],s="ResizeObserver loop completed with undelivered notifications.";!function(e){e.BORDER_BOX="border-box",e.CONTENT_BOX="content-box",e.DEVICE_PIXEL_CONTENT_BOX="device-pixel-content-box"}(e||(e={}));var a,u=function(e){return Object.freeze(e)},c=function(e,t){this.inlineSize=e,this.blockSize=t,u(this)},d=function(){function e(e,t,n,r){return this.x=e,this.y=t,this.width=n,this.height=r,this.top=this.y,this.left=this.x,this.bottom=this.top+this.height,this.right=this.left+this.width,u(this)}return e.prototype.toJSON=function(){var e=this;return{x:e.x,y:e.y,top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}},e.fromRect=function(t){return new e(t.x,t.y,t.width,t.height)},e}(),f=function(e){return e instanceof SVGElement&&"getBBox"in e},h=function(e){if(f(e)){var t=e.getBBox(),n=t.width,r=t.height;return!n&&!r}var o=e,i=o.offsetWidth,l=o.offsetHeight;return!(i||l||e.getClientRects().length)},v=function(e){var t,n;if(e instanceof Element)return!0;var r=null===(n=null===(t=e)||void 0===t?void 0:t.ownerDocument)||void 0===n?void 0:n.defaultView;return!!(r&&e instanceof r.Element)},p="undefined"!=typeof window?window:{},m=new WeakMap,g=/auto|scroll/,b=/^tb|vertical/,E=/msie|trident/i.test(p.navigator&&p.navigator.userAgent),_=function(e){return parseFloat(e||"0")},w=function(e,t,n){return void 0===e&&(e=0),void 0===t&&(t=0),void 0===n&&(n=!1),new c((n?t:e)||0,(n?e:t)||0)},y=u({devicePixelContentBoxSize:w(),borderBoxSize:w(),contentBoxSize:w(),contentRect:new d(0,0,0,0)}),x=function(e,t){if(void 0===t&&(t=!1),m.has(e)&&!t)return m.get(e);if(h(e))return m.set(e,y),y;var n=getComputedStyle(e),r=f(e)&&e.ownerSVGElement&&e.getBBox(),o=!E&&"border-box"===n.boxSizing,i=b.test(n.writingMode||""),l=!r&&g.test(n.overflowY||""),s=!r&&g.test(n.overflowX||""),a=r?0:_(n.paddingTop),c=r?0:_(n.paddingRight),v=r?0:_(n.paddingBottom),p=r?0:_(n.paddingLeft),x=r?0:_(n.borderTopWidth),T=r?0:_(n.borderRightWidth),k=r?0:_(n.borderBottomWidth),S=p+c,O=a+v,L=(r?0:_(n.borderLeftWidth))+T,R=x+k,z=s?e.offsetHeight-R-e.clientHeight:0,N=l?e.offsetWidth-L-e.clientWidth:0,j=o?S+L:0,C=o?O+R:0,A=r?r.width:_(n.width)-j-N,M=r?r.height:_(n.height)-C-z,B=A+S+N+L,I=M+O+z+R,P=u({devicePixelContentBoxSize:w(Math.round(A*devicePixelRatio),Math.round(M*devicePixelRatio),i),borderBoxSize:w(B,I,i),contentBoxSize:w(A,M,i),contentRect:new d(p,a,A,M)});return m.set(e,P),P},T=function(t,n,r){var o=x(t,r),i=o.borderBoxSize,l=o.contentBoxSize,s=o.devicePixelContentBoxSize;switch(n){case e.DEVICE_PIXEL_CONTENT_BOX:return s;case e.BORDER_BOX:return i;default:return l}},k=function(e){var t=x(e);this.target=e,this.contentRect=t.contentRect,this.borderBoxSize=u([t.borderBoxSize]),this.contentBoxSize=u([t.contentBoxSize]),this.devicePixelContentBoxSize=u([t.devicePixelContentBoxSize])},S=function(e){if(h(e))return 1/0;for(var t=0,n=e.parentNode;n;)t+=1,n=n.parentNode;return t},O=function(){var e=1/0,t=[];l.forEach((function(n){if(0!==n.activeTargets.length){var r=[];n.activeTargets.forEach((function(t){var n=new k(t.target),o=S(t.target);r.push(n),t.lastReportedSize=T(t.target,t.observedBox),o<e&&(e=o)})),t.push((function(){n.callback.call(n.observer,r,n.observer)})),n.activeTargets.splice(0,n.activeTargets.length)}}));for(var n=0,r=t;n<r.length;n++){(0,r[n])()}return e},L=function(e){l.forEach((function(t){t.activeTargets.splice(0,t.activeTargets.length),t.skippedTargets.splice(0,t.skippedTargets.length),t.observationTargets.forEach((function(n){n.isActive()&&(S(n.target)>e?t.activeTargets.push(n):t.skippedTargets.push(n))}))}))},R=function(){var e,t=0;for(L(t);l.some((function(e){return e.activeTargets.length>0}));)t=O(),L(t);return l.some((function(e){return e.skippedTargets.length>0}))&&("function"==typeof ErrorEvent?e=new ErrorEvent("error",{message:s}):((e=document.createEvent("Event")).initEvent("error",!1,!1),e.message=s),window.dispatchEvent(e)),t>0},z=[],N=function(e){if(!a){var t=0,n=document.createTextNode("");new MutationObserver((function(){return z.splice(0).forEach((function(e){return e()}))})).observe(n,{characterData:!0}),a=function(){n.textContent=""+(t?t--:t++)}}z.push(e),a()},j=0,C={attributes:!0,characterData:!0,childList:!0,subtree:!0},A=["resize","load","transitionend","animationend","animationstart","animationiteration","keyup","keydown","mouseup","mousedown","mouseover","mouseout","blur","focus"],M=function(e){return void 0===e&&(e=0),Date.now()+e},B=!1,I=new(function(){function e(){var e=this;this.stopped=!0,this.listener=function(){return e.schedule()}}return e.prototype.run=function(e){var t=this;if(void 0===e&&(e=250),!B){B=!0;var n,r=M(e);n=function(){var n=!1;try{n=R()}finally{if(B=!1,e=r-M(),!j)return;n?t.run(1e3):e>0?t.run(e):t.start()}},N((function(){requestAnimationFrame(n)}))}},e.prototype.schedule=function(){this.stop(),this.run()},e.prototype.observe=function(){var e=this,t=function(){return e.observer&&e.observer.observe(document.body,C)};document.body?t():p.addEventListener("DOMContentLoaded",t)},e.prototype.start=function(){var e=this;this.stopped&&(this.stopped=!1,this.observer=new MutationObserver(this.listener),this.observe(),A.forEach((function(t){return p.addEventListener(t,e.listener,!0)})))},e.prototype.stop=function(){var e=this;this.stopped||(this.observer&&this.observer.disconnect(),A.forEach((function(t){return p.removeEventListener(t,e.listener,!0)})),this.stopped=!0)},e}()),P=function(e){!j&&e>0&&I.start(),!(j+=e)&&I.stop()},D=function(){function t(t,n){this.target=t,this.observedBox=n||e.CONTENT_BOX,this.lastReportedSize={inlineSize:0,blockSize:0}}return t.prototype.isActive=function(){var e,t=T(this.target,this.observedBox,!0);return e=this.target,f(e)||function(e){switch(e.tagName){case"INPUT":if("image"!==e.type)break;case"VIDEO":case"AUDIO":case"EMBED":case"OBJECT":case"CANVAS":case"IFRAME":case"IMG":return!0}return!1}(e)||"inline"!==getComputedStyle(e).display||(this.lastReportedSize=t),this.lastReportedSize.inlineSize!==t.inlineSize||this.lastReportedSize.blockSize!==t.blockSize},t}(),U=function(e,t){this.activeTargets=[],this.skippedTargets=[],this.observationTargets=[],this.observer=e,this.callback=t},H=new WeakMap,F=function(e,t){for(var n=0;n<e.length;n+=1)if(e[n].target===t)return n;return-1},W=function(){function e(){}return e.connect=function(e,t){var n=new U(e,t);H.set(e,n)},e.observe=function(e,t,n){var r=H.get(e),o=0===r.observationTargets.length;F(r.observationTargets,t)<0&&(o&&l.push(r),r.observationTargets.push(new D(t,n&&n.box)),P(1),I.schedule())},e.unobserve=function(e,t){var n=H.get(e),r=F(n.observationTargets,t),o=1===n.observationTargets.length;r>=0&&(o&&l.splice(l.indexOf(n),1),n.observationTargets.splice(r,1),P(-1))},e.disconnect=function(e){var t=this,n=H.get(e);n.observationTargets.slice().forEach((function(n){return t.unobserve(e,n.target)})),n.activeTargets.splice(0,n.activeTargets.length)},e}(),V=function(){function e(e){if(0===arguments.length)throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");if("function"!=typeof e)throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");W.connect(this,e)}return e.prototype.observe=function(e,t){if(0===arguments.length)throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!v(e))throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");W.observe(this,e,t)},e.prototype.unobserve=function(e){if(0===arguments.length)throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!v(e))throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");W.unobserve(this,e)},e.prototype.disconnect=function(){W.disconnect(this)},e.toString=function(){return"function ResizeObserver () { [polyfill code] }"},e}();var Y=o()["undefined"!=typeof document&&void 0!==document.createElement?"useLayoutEffect":"useEffect"];var K=e=>{const n=t.useRef(e);return t.useEffect((()=>{n.current=e})),n},X=function(e){var t=[],n=null,r=function(){for(var r=arguments.length,o=new Array(r),i=0;i<r;i++)o[i]=arguments[i];t=o,n||(n=requestAnimationFrame((function(){n=null,e.apply(void 0,t)})))};return r.cancel=function(){n&&(cancelAnimationFrame(n),n=null)},r};const q="undefined"!=typeof window&&"ResizeObserver"in window?window.ResizeObserver:V;function G(){}let J;const Z=()=>J||(J=function(){const e=new Map,t=new q(X(((t,n)=>{for(let r=0;r<t.length;r++){const o=e.get(t[r].target);null==o||o.forEach((e=>e(t[r],n)))}})));return{observer:t,subscribe(n,r){var o;t.observe(n);const i=null!==(o=e.get(n))&&void 0!==o?o:[];i.push(r),e.set(n,i)},unsubscribe(n,r){var o;const i=null!==(o=e.get(n))&&void 0!==o?o:[];if(1===i.length)return t.unobserve(n),void e.delete(n);const l=i.indexOf(r);-1!==l&&i.splice(l,1),e.set(n,i)}}}());var $=function(e,t){const n=Z(),r=K(t);return Y((()=>{let t=!1;const o=e&&"current"in e?e.current:e;if(!o)return G;function i(e,n){t||r.current(e,n)}return n.subscribe(o,i),()=>{t=!0,n.unsubscribe(o,i)}}),[e,n,r]),n.observer};var Q,ee,te;function ne(){return ne=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ne.apply(this,arguments)}var re=function(e){return t.createElement("svg",ne({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 24"},e),Q||(Q=t.createElement("radialGradient",{id:"kotlin-logo-large_svg__a",cx:22.432,cy:3.493,r:21.679,gradientTransform:"translate(-.19 .042) scale(.9998)",gradientUnits:"userSpaceOnUse"},t.createElement("stop",{offset:.003,stopColor:"#e44857"}),t.createElement("stop",{offset:.469,stopColor:"#c711e1"}),t.createElement("stop",{offset:1,stopColor:"#7f52ff"}))),ee||(ee=t.createElement("path",{fill:"url(#kotlin-logo-large_svg__a)",d:"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z"})),te||(te=t.createElement("g",{fill:"#fff"},t.createElement("path",{d:"M45.69 2.73h-3.76l-8.18 8.73v-8.7h-3.02v18.92h3.02v-9.17l8.21 9.17h3.89l-8.75-9.79z"}),t.createElement("path",{d:"M55.93 8.44c-1.07-.62-2.28-.93-3.64-.93-1.38 0-2.61.31-3.7.93a6.63 6.63 0 00-2.55 2.57c-.61 1.1-.91 2.35-.91 3.74 0 1.4.3 2.64.91 3.74a6.45 6.45 0 002.53 2.57c1.09.62 2.32.93 3.7.93 1.36 0 2.58-.31 3.66-.93a6.53 6.53 0 002.51-2.57c.6-1.1.9-2.35.9-3.74 0-1.4-.3-2.64-.9-3.74-.6-1.1-1.43-1.95-2.51-2.57zm-.19 8.7c-.33.69-.8 1.23-1.4 1.61-.6.39-1.3.58-2.08.58-.79 0-1.49-.19-2.11-.58-.61-.39-1.09-.93-1.43-1.61-.34-.69-.51-1.48-.51-2.38 0-.9.17-1.7.51-2.39.34-.69.82-1.23 1.43-1.61.61-.39 1.32-.58 2.12-.58.77 0 1.46.19 2.07.58.6.39 1.07.93 1.4 1.61.33.69.49 1.48.49 2.39.01.9-.15 1.69-.49 2.38zm9.75-12.76h-2.92v2.35c0 .37-.09.65-.27.83-.18.18-.46.28-.84.28h-1.43v2.49h2.49v7.45c0 .77.16 1.46.47 2.05.31.59.76 1.05 1.34 1.37.58.32 1.27.49 2.06.49h2.23V19.1h-1.68c-.43 0-.78-.15-1.06-.45-.27-.3-.4-.7-.4-1.2v-7.11h3.22v-2.5h-3.22V4.38zM71.03 2H74v19.68h-2.97zm6.32.03h3v3.05h-3zm0 5.81h2.97v13.84h-2.97zm18.08 2.28a4.694 4.694 0 00-1.77-1.92c-.76-.46-1.65-.69-2.67-.69-1.08 0-2.03.26-2.84.79-.65.42-1.17.98-1.58 1.68l-.02-2.14H83.7v13.84h2.97v-7.74c0-.75.14-1.41.43-1.99.28-.58.68-1.03 1.2-1.35.52-.32 1.12-.48 1.82-.48.62 0 1.16.13 1.6.39.45.26.78.64 1.01 1.12.23.49.34 1.07.34 1.74v8.31h2.97v-8.73c.02-1.07-.2-2.01-.61-2.83z"}))))},oe=n(4184),ie=n.n(oe),le=require("@rescui/typography");const se="https://kotlinlang.org";var ae=n(5893);const ue=e=>{let{productWebUrl:t,className:n}=e;const r=t?function(e){const t=/v?\d+\.\d+\.\d+$/.exec(e);return t?t[0]:null}(t):null,o=(0,le.useTextStyles)();return(0,ae.jsxs)("div",{className:ie()("ktl-logo-large-module_container_+5pgf",n,o("rs-text-3",{hardness:"average"})),children:[(0,ae.jsx)("a",{className:"ktl-logo-large-module_link_iZIEJ",href:se,"aria-label":"Kotlin Home Page",children:(0,ae.jsx)(re,{})}),r&&(0,ae.jsx)("a",{className:ie()("ktl-logo-large-module_version-tag_fiNIk"),href:t,target:"_blank",children:r})]})};const ce="Solutions",de="Multiplatform Mobile",fe="/lp/mobile/",he="Server-side",ve="/lp/server-side/",pe="Web frontend",me="/docs/js-overview.html",ge="Data science",be="/docs/data-science-overview.html",Ee="Android",_e="/docs/android-overview.html",we="Docs",ye="/docs/home.html",xe="Community",Te="/community/",ke="Teach",Se="/education/",Oe="Play",Le="Playground",Re="https://play.kotlinlang.org/",ze="".concat(Re,"hands-on"),Ne="Hands-on",je="".concat(Re,"byExample"),Ce="Examples",Ae="".concat(Re,"koans"),Me="Koans",Be="Kotlin",Ie="/docs/home.html",Pe="KMM",De="/docs/mobile/home.html",Ue=[{title:ce,url:null,items:[{title:de,url:fe},{title:he,url:ve},{title:pe,url:me},{title:ge,url:be},{title:Ee,url:_e}]},{title:we,url:Ie},{title:xe,url:Te},{title:ke,url:Se},{title:Oe,url:null,items:[{title:Le,url:Re},{title:Ne,url:ze},{title:Ce,url:je},{title:Me,url:Ae}]}];function He(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(e,t)=>e===t,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return Ue.map((r=>{var o;let{title:i,url:l,items:s}=r;l&&t&&(l=Fe(l,t,!!n));const a={title:i,url:l};let u=e(l,t);return a.items=null!==(o=null==s?void 0:s.map((r=>{let{title:o,url:i}=r;i&&t&&(i=Fe(i,t,!!n));let l=e(i,t);return l&&(u=l),{title:o,url:i,isActive:l}})))&&void 0!==o?o:[],a.isActive=u,a}))}function Fe(e,t,n){return n?e.startsWith(Re)?e.replace(Re,"/"):"".concat(se).concat(e):e}const We=e=>{let{items:t,isExpanded:n,alignRight:r,linkHandler:o}=e;const i=(0,le.useTextStyles)();return(0,ae.jsx)("ul",{className:ie()("ktl-horizontal-menu-module_dropdown-menu_dVOw-",i("rs-text-2"),{"ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy":n,"ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO":r}),children:t.map(((e,t)=>{const n=!e.isActive&&e.url?"a":"span";return(0,ae.jsx)("li",{children:(0,ae.jsx)(n,{className:ie()("ktl-horizontal-menu-module_dropdown-menu-item_wRlcN",{"ktl-horizontal-menu-module_active_azHwP":e.isActive}),...e.url?{href:e.url,onClick:o?t=>e.url&&o(t,e.url):void 0}:{},children:e.title})},t)}))})},Ve=e=>{var n,r;let{item:o,onMouseEnter:i,onMouseLeave:l,isExpanded:s,isLast:a,linkHandler:u}=e;const c=o.isActive||!o.url?"span":"a",d=(0,le.useTextStyles)();return(0,ae.jsxs)("li",{className:"ktl-horizontal-menu-module_menu-item-wrap_dnVf-",onMouseEnter:()=>i(o),onMouseLeave:l,children:[(0,t.createElement)(c,{...o.url?{href:o.url,onClick:u?e=>o.url&&u(e,o.url):void 0}:{},key:o.title,className:ie()("ktl-horizontal-menu-module_menu-item_Z+YKZ",d("rs-text-2"),{"ktl-horizontal-menu-module_item-active_+iyf-":o.isActive,"ktl-horizontal-menu-module_expanded_thibK":s&&!(null===(n=o.items)||void 0===n||!n.length)})},o.title),!(null===(r=o.items)||void 0===r||!r.length)&&(0,ae.jsx)(We,{items:o.items,isExpanded:s,alignRight:a,linkHandler:u})]})},Ye=e=>{let{items:n,theme:r,linkHandler:o}=e;const[i,l]=(0,t.useState)(-1),[s,a]=(0,t.useState)(i);(0,t.useEffect)((()=>{const e=setTimeout((()=>a(i)),-1!==i?200:400);return()=>clearTimeout(e)}),[i]);const u=e=>l(n.findIndex((t=>t===e))),c=()=>l(-1);return(0,ae.jsx)("nav",{className:ie()("ktl-horizontal-menu-module_nav_xYv4i",{"ktl-horizontal-menu-module_dark-theme_Lp065":"dark"===r}),children:(0,ae.jsx)("ul",{className:"ktl-horizontal-menu-module_menu-list_7oi3W",children:n.map(((e,t)=>(0,ae.jsx)(Ve,{item:e,onMouseEnter:u,onMouseLeave:c,isExpanded:t===s,isLast:t===n.length-1,linkHandler:o},t)))})})};var Ke;function Xe(){return Xe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Xe.apply(this,arguments)}var qe=function(e){return t.createElement("svg",Xe({width:24,height:24,xmlns:"http://www.w3.org/2000/svg"},e),Ke||(Ke=t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.847 6.861A6.99 6.99 0 009.587 3a6.997 6.997 0 104.186 12.601l6.106 6.106 1.414-1.414-6.107-6.106a6.99 6.99 0 00.66-7.326zM14.587 10a5 5 0 11-10.001 0 5 5 0 0110 0z",fill:"currentColor"})))};const Ge=e=>{let{onClick:t,isActive:n}=e;return(0,ae.jsx)("button",{type:"button",className:ie()("ktl-search-button_button_JUyxv",{"ktl-search-button_active_G-dk1":n}),"aria-label":"Search",onClick:t,children:(0,ae.jsx)(qe,{})})};var Je;function Ze(){return Ze=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ze.apply(this,arguments)}var $e,Qe=function(e){return t.createElement("svg",Ze({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),Je||(Je=t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4 5h16v2H4V5zm0 6h16v2H4v-2zm16 6H4v2h16v-2z",fill:"currentColor"})))};function et(){return et=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},et.apply(this,arguments)}var tt=function(e){return t.createElement("svg",et({width:16,height:16,fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),$e||($e=t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.707 1.707L14.293.293 8 6.586 1.707.293.293 1.707 6.586 8 .293 14.293l1.414 1.414L8 9.414l6.293 6.293 1.414-1.414L9.414 8l6.293-6.293z",fill:"currentColor"})))};const nt=e=>{let{onClick:t,isExpanded:n}=e;return(0,ae.jsx)("button",{type:"button",className:ie()("ktl-menu-button_button_InVin"),"aria-haspopup":"true","aria-label":"Open the navigation",onClick:t,children:n?(0,ae.jsx)(tt,{}):(0,ae.jsx)(Qe,{})})};function rt(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var ot=!1;if("undefined"!=typeof window){var it={get passive(){ot=!0}};window.addEventListener("testPassive",null,it),window.removeEventListener("testPassive",null,it)}var lt="undefined"!=typeof window&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||"MacIntel"===window.navigator.platform&&window.navigator.maxTouchPoints>1),st=[],at=!1,ut=-1,ct=void 0,dt=void 0,ft=function(e){return st.some((function(t){return!(!t.options.allowTouchMove||!t.options.allowTouchMove(e))}))},ht=function(e){var t=e||window.event;return!!ft(t.target)||(t.touches.length>1||(t.preventDefault&&t.preventDefault(),!1))},vt=function(){setTimeout((function(){void 0!==dt&&(document.body.style.paddingRight=dt,dt=void 0),void 0!==ct&&(document.body.style.overflow=ct,ct=void 0)}))},pt=function(e,t){if(lt){if(!e)return void console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");if(e&&!st.some((function(t){return t.targetElement===e}))){var n={targetElement:e,options:t||{}};st=[].concat(rt(st),[n]),e.ontouchstart=function(e){1===e.targetTouches.length&&(ut=e.targetTouches[0].clientY)},e.ontouchmove=function(t){1===t.targetTouches.length&&function(e,t){var n=e.targetTouches[0].clientY-ut;!ft(e.target)&&(t&&0===t.scrollTop&&n>0||function(e){return!!e&&e.scrollHeight-e.scrollTop<=e.clientHeight}(t)&&n<0?ht(e):e.stopPropagation())}(t,e)},at||(document.addEventListener("touchmove",ht,ot?{passive:!1}:void 0),at=!0)}}else{!function(e){if(void 0===dt){var t=!!e&&!0===e.reserveScrollBarGap,n=window.innerWidth-document.documentElement.clientWidth;t&&n>0&&(dt=document.body.style.paddingRight,document.body.style.paddingRight=n+"px")}void 0===ct&&(ct=document.body.style.overflow,setTimeout((function(){document.body.style.overflow="hidden"})))}(t);var r={targetElement:e,options:t||{}};st=[].concat(rt(st),[r])}};const mt=e=>{let{item:n,level:r,linkHandler:o}=e;const i=n.url?"a":"span",l={"--level":r},s=(0,t.useCallback)((e=>o&&n.url&&o(e,n.url)),[]);return(0,ae.jsx)(i,{...n.url?{href:n.url,onClick:s}:{},className:ie()("ktl-menu-popup-module_menu-item_f6wvh",{"ktl-menu-popup-module_menu-item-root_C-hkN":0===r,"ktl-menu-popup-module_active_DrZav":n.isActive,"ktl-menu-popup-module_active-with-child_BDnrW":n.items&&n.items.length}),style:l,children:n.title})},gt=e=>{let{items:n,level:r,linkHandler:o}=e;return(0,ae.jsx)(ae.Fragment,{children:n.map(((e,n)=>(0,ae.jsxs)(t.Fragment,{children:[(0,ae.jsx)(mt,{item:e,level:r,linkHandler:o}),e.items&&e.items.length>0&&(0,ae.jsx)(gt,{items:e.items,level:r+1,linkHandler:o})]},n)))})},bt=e=>{let{items:n,isExpanded:r,setExpand:o,headerRef:i,linkHandler:l}=e;const s=(0,t.useRef)(null),a=(0,le.useTextStyles)(),[u,c]=(0,t.useState)({});(0,t.useEffect)((()=>()=>{o(!1),lt?(st.forEach((function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null})),at&&(document.removeEventListener("touchmove",ht,ot?{passive:!1}:void 0),at=!1),st=[],ut=-1):(vt(),st=[])}),[]),(0,t.useLayoutEffect)((()=>{i.current&&c({top:i.current.getBoundingClientRect().bottom})}),[r,i]);const d=(0,t.useCallback)((()=>{s.current&&(r?function(e){if(lt){if(!e)return void console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");e.ontouchstart=null,e.ontouchmove=null,st=st.filter((function(t){return t.targetElement!==e})),at&&0===st.length&&(document.removeEventListener("touchmove",ht,ot?{passive:!1}:void 0),at=!1)}else(st=st.filter((function(t){return t.targetElement!==e}))).length||vt()}(s.current):pt(s.current)),o(!r)}),[r,s]);return(0,ae.jsxs)(ae.Fragment,{children:[(0,ae.jsx)(nt,{onClick:d,isExpanded:r}),(0,ae.jsx)("nav",{style:u,ref:s,className:ie()("ktl-menu-popup-module_menu-popup_Yqtnq",a("rs-text-2"),{"ktl-menu-popup-module_menu-popup-expanded_FlujR":r}),children:(0,ae.jsx)(gt,{items:n,level:0,linkHandler:l})})]})};var Et,_t;function wt(){return wt=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},wt.apply(this,arguments)}var yt=function(e){return t.createElement("svg",wt({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e),Et||(Et=t.createElement("radialGradient",{id:"kotlin-logo-small_svg__a",cx:22.432,cy:3.493,r:21.679,gradientTransform:"translate(-.19 .042) scale(.9998)",gradientUnits:"userSpaceOnUse"},t.createElement("stop",{offset:.003,stopColor:"#e44857"}),t.createElement("stop",{offset:.469,stopColor:"#c711e1"}),t.createElement("stop",{offset:1,stopColor:"#7f52ff"}))),_t||(_t=t.createElement("path",{fill:"url(#kotlin-logo-small_svg__a)",d:"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z"})))};const xt=e=>{let{homeTitle:t,homeUrl:n,className:r}=e;const o=(0,le.useTextStyles)();return(0,ae.jsxs)("div",{className:ie()("ktl-logo-small-module_logo-small_7ddNl",r),children:[(0,ae.jsx)("a",{href:se,className:"ktl-logo-small-module_icon-wrap_BFVBd",children:(0,ae.jsx)(yt,{className:"ktl-logo-small-module_icon_JM+yC"})}),(0,ae.jsx)("a",{href:n,className:ie()("ktl-logo-small-module_link_6gruv",o("rs-h3")),children:t})]})},Tt=(0,t.forwardRef)(((e,n)=>{let{productWebUrl:r,hasSearch:o=!1,onSearchClick:l,currentUrl:s,currentTitle:a,className:u,hasBorder:c=!0,dropdownTheme:d="dark",linkHandler:f,isPlayground:h,isUrlActive:v}=e;const[p,m]=(0,t.useState)(!1),[g,b]=(0,t.useState)(!1),E=(0,t.useMemo)((()=>He(v,s,h)),[v,s,h]),_=(0,t.useRef)(null);return(0,t.useImperativeHandle)(n,(()=>_.current)),(0,t.useLayoutEffect)((()=>{var e,t,n;b((null!==(e=null===(t=_.current)||void 0===t||null===(n=t.getBoundingClientRect)||void 0===n?void 0:n.call(t).width)&&void 0!==e?e:0)<=640)}),[_]),$(_,(e=>b(e.contentRect.width<=640))),(0,ae.jsx)(i.ThemeProvider,{theme:"dark",children:(0,ae.jsxs)("header",{ref:_,className:ie()("ktl-header-module_header-menu_E3vzo",u,{"ktl-header-module_with-menu-popup_DcoOT":p,"ktl-header-module_border_smGpe":c}),children:[a&&s&&(g&&!p?(0,ae.jsx)(xt,{homeTitle:a,homeUrl:s}):(0,ae.jsx)(ue,{productWebUrl:r})),!g&&(0,ae.jsx)(Ye,{items:E,theme:d,linkHandler:f}),(0,ae.jsx)(Ge,{onClick:l,isActive:o&&!!l}),g&&(0,ae.jsx)(bt,{items:E,setExpand:m,isExpanded:p,headerRef:_,linkHandler:f})]})})}));var kt=Tt}(),module.exports=r}();
3
3
  //# sourceMappingURL=header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","mappings":"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","sources":["webpack://@jetbrains/kotlin-web-site-ui/./node_modules/classnames/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/cjs/react-jsx-runtime.production.min.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/jsx-runtime.js","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs2\":\"react\",\"commonjs\":\"react\"}","webpack://@jetbrains/kotlin-web-site-ui/webpack/bootstrap","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/compat get default export","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/define property getters","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/hasOwnProperty shorthand","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/make namespace object","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/ui-contexts\",\"commonjs2\":\"@rescui/ui-contexts\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/kotlin-logo-large.svg","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/typography\",\"commonjs2\":\"@rescui/typography\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/consts.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.module.pcss?d1a2","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.module.pcss?b1da","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/nav-scheme.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.module.pcss?7d3a","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.pcss?7314","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/hamburger-icon.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/close-icon.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.pcss?e10c","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.module.pcss?1dec","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/kotlin-logo-small.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.module.pcss?0b31","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/index.ts"],"sourcesContent":["/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/** @license React v16.14.0\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/ui-contexts\");","var _radialGradient, _path, _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgKotlinLogoLarge(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 100 24\"\n }, props), _radialGradient || (_radialGradient = /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"kotlin-logo-large_svg__a\",\n cx: 22.432,\n cy: 3.493,\n r: 21.679,\n gradientTransform: \"translate(-.19 .042) scale(.9998)\",\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.003,\n stopColor: \"#e44857\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.469,\n stopColor: \"#c711e1\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#7f52ff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"url(#kotlin-logo-large_svg__a)\",\n d: \"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#fff\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.69 2.73h-3.76l-8.18 8.73v-8.7h-3.02v18.92h3.02v-9.17l8.21 9.17h3.89l-8.75-9.79z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55.93 8.44c-1.07-.62-2.28-.93-3.64-.93-1.38 0-2.61.31-3.7.93a6.63 6.63 0 00-2.55 2.57c-.61 1.1-.91 2.35-.91 3.74 0 1.4.3 2.64.91 3.74a6.45 6.45 0 002.53 2.57c1.09.62 2.32.93 3.7.93 1.36 0 2.58-.31 3.66-.93a6.53 6.53 0 002.51-2.57c.6-1.1.9-2.35.9-3.74 0-1.4-.3-2.64-.9-3.74-.6-1.1-1.43-1.95-2.51-2.57zm-.19 8.7c-.33.69-.8 1.23-1.4 1.61-.6.39-1.3.58-2.08.58-.79 0-1.49-.19-2.11-.58-.61-.39-1.09-.93-1.43-1.61-.34-.69-.51-1.48-.51-2.38 0-.9.17-1.7.51-2.39.34-.69.82-1.23 1.43-1.61.61-.39 1.32-.58 2.12-.58.77 0 1.46.19 2.07.58.6.39 1.07.93 1.4 1.61.33.69.49 1.48.49 2.39.01.9-.15 1.69-.49 2.38zm9.75-12.76h-2.92v2.35c0 .37-.09.65-.27.83-.18.18-.46.28-.84.28h-1.43v2.49h2.49v7.45c0 .77.16 1.46.47 2.05.31.59.76 1.05 1.34 1.37.58.32 1.27.49 2.06.49h2.23V19.1h-1.68c-.43 0-.78-.15-1.06-.45-.27-.3-.4-.7-.4-1.2v-7.11h3.22v-2.5h-3.22V4.38zM71.03 2H74v19.68h-2.97zm6.32.03h3v3.05h-3zm0 5.81h2.97v13.84h-2.97zm18.08 2.28a4.694 4.694 0 00-1.77-1.92c-.76-.46-1.65-.69-2.67-.69-1.08 0-2.03.26-2.84.79-.65.42-1.17.98-1.58 1.68l-.02-2.14H83.7v13.84h2.97v-7.74c0-.75.14-1.41.43-1.99.28-.58.68-1.03 1.2-1.35.52-.32 1.12-.48 1.82-.48.62 0 1.16.13 1.6.39.45.26.78.64 1.01 1.12.23.49.34 1.07.34 1.74v8.31h2.97v-8.73c.02-1.07-.2-2.01-.61-2.83z\"\n }))));\n}\n\nexport default SvgKotlinLogoLarge;","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/typography\");","export const KOTLINLANG_URL = 'https://kotlinlang.org';\nexport const PLAYGROUND_URL = 'https://play.kotlinlang.org/';","import React, { FC } from 'react';\nimport * as styles from './logo-large.module.pcss';\nimport KotlinLogoFull from './kotlin-logo-large.svg';\nimport classNames from 'classnames';\nimport { useTextStyles } from '@rescui/typography';\nimport { KOTLINLANG_URL } from 'src/consts';\n\ninterface LogoProps {\n productWebUrl?: string;\n className?: string;\n}\n\nexport const LogoLarge: FC<LogoProps> = ({ productWebUrl, className }) => {\n const version: null | string = productWebUrl\n ? getProductVersion(productWebUrl)\n : null;\n const textCn = useTextStyles();\n\n return (\n <div\n className={classNames(\n styles.container,\n className,\n textCn('rs-text-3', { hardness: 'average' })\n )}\n >\n <a\n className={styles.link}\n href={KOTLINLANG_URL}\n aria-label=\"Kotlin Home Page\"\n >\n <KotlinLogoFull />\n </a>\n {version && (\n <a\n className={classNames(styles.versionTag)}\n href={productWebUrl}\n target=\"_blank\"\n >\n {version}\n </a>\n )}\n </div>\n );\n};\n\nfunction getProductVersion(productWebUrl: string): null | string {\n const match = /v?\\d+\\.\\d+\\.\\d+$/.exec(productWebUrl);\n return match ? match[0] : null;\n}\n","// extracted by mini-css-extract-plugin\nexport const container = \"ktl-logo-large-module_container_+5pgf\";\nexport const link = \"ktl-logo-large-module_link_iZIEJ\";\nexport const versionTag = \"ktl-logo-large-module_version-tag_fiNIk\";","// extracted by mini-css-extract-plugin\nexport const headerMenu = \"ktl-header-module_header-menu_E3vzo\";\nexport const border = \"ktl-header-module_border_smGpe\";\nexport const withMenuPopup = \"ktl-header-module_with-menu-popup_DcoOT\";\nexport const logoHide = \"ktl-header-module_logo-hide_uBrPV\";","import { KOTLINLANG_URL, PLAYGROUND_URL } from 'src/consts';\nimport { IsUrlActive } from 'src/helper/is-url-active';\n\nexport interface MenuItem {\n title: string;\n url: null | string;\n isActive?: boolean;\n items?: MenuItem[];\n}\n\nexport const SOLUTIONS_TITLE = 'Solutions';\nexport const MULTIPLATFORM_MOBILE_TITLE = 'Multiplatform Mobile';\nexport const MULTIPLATFORM_MOBILE_URL = `/lp/mobile/`;\nexport const SERVER_SIDE_TITLE = 'Server-side';\nexport const SERVER_SIDE_URL = `/lp/server-side/`;\nexport const WEB_FRONTEND_TITLE = 'Web frontend';\nexport const WEB_FRONTEND_URL = `/docs/js-overview.html`;\nexport const DATA_SCIENCE_TITLE = 'Data science';\nexport const DATA_SCIENCE_URL = `/docs/data-science-overview.html`;\nexport const ANDROID_TITLE = 'Android';\nexport const ANDROID_URL = `/docs/android-overview.html`;\nexport const DOCS_TITLE = 'Docs';\nexport const DOCS_URL = `/docs/home.html`;\nexport const COMMUNITY_TITLE = 'Community';\nexport const COMMUNITY_URL = `/community/`;\nexport const TEACH_TITLE = 'Teach';\nexport const TEACH_URL = `/education/`;\nexport const PLAY_TITLE = 'Play';\nexport const PLAY_TITLE_FULL = 'Playground';\nexport const PLAY_URL = PLAYGROUND_URL;\nexport const PLAY_HANDSON_URL = `${PLAY_URL}hands-on`;\nexport const PLAY_HANDSON_TITLE = 'Hands-on';\nexport const PLAY_EXAMPLES_URL = `${PLAY_URL}byExample`;\nexport const PLAY_EXAMPLES_TITLE = 'Examples';\nexport const PLAY_KOANS_URL = `${PLAY_URL}koans`;\nexport const PLAY_KOANS_TITLE = 'Koans';\nexport const KOTLIN_DOCS_TITLE = 'Kotlin';\nexport const KOTLIN_DOCS_URL = `/docs/home.html`;\nexport const KMM_DOCS_TITLE = 'KMM';\nexport const KMM_DOCS_URL = `/docs/mobile/home.html`;\n\nconst navScheme: MenuItem[] = [\n {\n title: SOLUTIONS_TITLE,\n url: null,\n items: [\n {\n title: MULTIPLATFORM_MOBILE_TITLE,\n url: MULTIPLATFORM_MOBILE_URL,\n },\n {\n title: SERVER_SIDE_TITLE,\n url: SERVER_SIDE_URL,\n },\n {\n title: WEB_FRONTEND_TITLE,\n url: WEB_FRONTEND_URL,\n },\n {\n title: DATA_SCIENCE_TITLE,\n url: DATA_SCIENCE_URL,\n },\n {\n title: ANDROID_TITLE,\n url: ANDROID_URL,\n },\n ],\n },\n {\n title: DOCS_TITLE,\n url: KOTLIN_DOCS_URL,\n },\n {\n title: COMMUNITY_TITLE,\n url: COMMUNITY_URL,\n },\n {\n title: TEACH_TITLE,\n url: TEACH_URL,\n },\n {\n title: PLAY_TITLE,\n url: null,\n items: [\n {\n title: PLAY_TITLE_FULL,\n url: PLAY_URL,\n },\n {\n title: PLAY_HANDSON_TITLE,\n url: PLAY_HANDSON_URL,\n },\n {\n title: PLAY_EXAMPLES_TITLE,\n url: PLAY_EXAMPLES_URL,\n },\n {\n title: PLAY_KOANS_TITLE,\n url: PLAY_KOANS_URL,\n },\n ],\n },\n];\n\nexport function getNavScheme(\n isUrlActive: IsUrlActive = (url, currentUrl) => url === currentUrl,\n currentUrl?: string,\n isPlayground?: boolean\n): MenuItem[] {\n return navScheme.map(({ title, url, items }) => {\n if (url && currentUrl) {\n url = makeExternalUrl(url, currentUrl, !!isPlayground);\n }\n\n const item: MenuItem = {\n title,\n url,\n };\n let isActive = isUrlActive(url, currentUrl);\n\n item.items =\n items?.map(({ title, url: childUrl }) => {\n if (childUrl && currentUrl) {\n childUrl = makeExternalUrl(childUrl, currentUrl, !!isPlayground);\n }\n\n let childActive = isUrlActive(childUrl, currentUrl);\n\n if (childActive) {\n isActive = childActive;\n }\n\n return {\n title,\n url: childUrl,\n isActive: childActive,\n };\n }) ?? [];\n\n item.isActive = isActive;\n\n return item;\n });\n}\n\nfunction makeExternalUrl(\n url: string,\n currentUrl: string,\n isPlayground: boolean\n): string {\n if (isPlayground) {\n if (url.startsWith(PLAY_URL)) {\n return url.replace(PLAY_URL, '/');\n } else {\n return `${KOTLINLANG_URL}${url}`;\n }\n } else {\n return url;\n }\n}\n","// extracted by mini-css-extract-plugin\nexport const nav = \"ktl-horizontal-menu-module_nav_xYv4i\";\nexport const menuList = \"ktl-horizontal-menu-module_menu-list_7oi3W\";\nexport const menuItemWrap = \"ktl-horizontal-menu-module_menu-item-wrap_dnVf-\";\nexport const menuItem = \"ktl-horizontal-menu-module_menu-item_Z+YKZ\";\nexport const expanded = \"ktl-horizontal-menu-module_expanded_thibK\";\nexport const itemActive = \"ktl-horizontal-menu-module_item-active_+iyf-\";\nexport const dropdownMenu = \"ktl-horizontal-menu-module_dropdown-menu_dVOw-\";\nexport const fadeIn = \"ktl-horizontal-menu-module_fade-in_Q2pCx\";\nexport const darkTheme = \"ktl-horizontal-menu-module_dark-theme_Lp065\";\nexport const dropdownMenuItem = \"ktl-horizontal-menu-module_dropdown-menu-item_wRlcN\";\nexport const active = \"ktl-horizontal-menu-module_active_azHwP\";\nexport const dropdownMenuExpanded = \"ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy\";\nexport const dropdownMenuAlignRight = \"ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO\";","import classNames from 'classnames';\nimport React, { FC, useEffect, useState } from 'react';\nimport { Theme } from '@rescui/ui-contexts/lib/parts/theme-context';\nimport * as styles from './horizontal-menu.module.pcss';\nimport { MenuItem } from '../nav-scheme';\nimport { useTextStyles } from '@rescui/typography';\nimport { LinkHandler } from 'src/helper/link-handler';\n\ninterface DropdownMenuProps {\n items: MenuItem[];\n isExpanded: boolean;\n alignRight: boolean;\n linkHandler?: LinkHandler;\n}\n\nconst DropdownMenu: FC<DropdownMenuProps> = ({\n items,\n isExpanded,\n alignRight,\n linkHandler,\n}) => {\n const textCn = useTextStyles();\n\n return (\n <ul\n className={classNames(styles.dropdownMenu, textCn('rs-text-2'), {\n [styles.dropdownMenuExpanded]: isExpanded,\n [styles.dropdownMenuAlignRight]: alignRight,\n })}\n >\n {items.map((item, key) => {\n const Tag = !item.isActive && item.url ? 'a' : 'span';\n\n return (\n <li key={key}>\n <Tag\n className={classNames(styles.dropdownMenuItem, {\n [styles.active]: item.isActive,\n })}\n {...(item.url\n ? {\n href: item.url,\n onClick: linkHandler\n ? (event) => item.url && linkHandler(event, item.url)\n : undefined,\n }\n : {})}\n >\n {item.title}\n </Tag>\n </li>\n );\n })}\n </ul>\n );\n};\n\ninterface HorizontalMenuItemProps {\n item: MenuItem;\n onMouseEnter: (item: MenuItem) => void;\n onMouseLeave: () => void;\n isExpanded: boolean;\n isLast: boolean;\n linkHandler?: LinkHandler;\n}\n\nconst HorizontalMenuItem: FC<HorizontalMenuItemProps> = ({\n item,\n onMouseEnter,\n onMouseLeave,\n isExpanded,\n isLast,\n linkHandler,\n}) => {\n const Tag = item.isActive || !item.url ? 'span' : 'a';\n const textCn = useTextStyles();\n const handleEnter = () => onMouseEnter(item);\n\n return (\n <li\n className={styles.menuItemWrap}\n onMouseEnter={handleEnter}\n onMouseLeave={onMouseLeave}\n >\n <Tag\n {...(item.url\n ? {\n href: item.url,\n onClick: linkHandler\n ? (event) => item.url && linkHandler(event, item.url)\n : undefined,\n }\n : {})}\n key={item.title}\n className={classNames(styles.menuItem, textCn('rs-text-2'), {\n [styles.itemActive]: item.isActive,\n [styles.expanded]: isExpanded && !!item.items?.length,\n })}\n >\n {item.title}\n </Tag>\n {!!item.items?.length && (\n <DropdownMenu\n items={item.items}\n isExpanded={isExpanded}\n alignRight={isLast}\n linkHandler={linkHandler}\n />\n )}\n </li>\n );\n};\n\ninterface HorizontalMenuProps {\n items: MenuItem[];\n theme: Theme;\n linkHandler?: LinkHandler;\n}\n\nexport const HorizontalMenu: FC<HorizontalMenuProps> = ({\n items,\n theme,\n linkHandler,\n}) => {\n const [activeIndex, setActiveIndex] = useState(-1);\n const [debouncedActiveIndex, setDebouncedActiveIndex] = useState(activeIndex);\n\n useEffect(() => {\n const handler = setTimeout(\n () => setDebouncedActiveIndex(activeIndex),\n activeIndex !== -1 ? 200 : 400\n );\n return () => clearTimeout(handler);\n }, [activeIndex]);\n\n const handleEnter = (item: MenuItem) =>\n setActiveIndex(items.findIndex((val) => val === item));\n const handleLeave = () => setActiveIndex(-1);\n\n return (\n <nav\n className={classNames(styles.nav, {\n [styles.darkTheme]: theme === 'dark',\n })}\n >\n <ul className={styles.menuList}>\n {items.map((item, index) => (\n <HorizontalMenuItem\n item={item}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n isExpanded={index === debouncedActiveIndex}\n isLast={index === items.length - 1}\n key={index}\n linkHandler={linkHandler}\n />\n ))}\n </ul>\n </nav>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.847 6.861A6.99 6.99 0 009.587 3a6.997 6.997 0 104.186 12.601l6.106 6.106 1.414-1.414-6.107-6.106a6.99 6.99 0 00.66-7.326zM14.587 10a5 5 0 11-10.001 0 5 5 0 0110 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSearch;","import React, { FC } from 'react';\nimport * as styles from './search-button.pcss';\nimport classNames from 'classnames';\nimport SearchIcon from './search.svg';\n\ninterface SearchButtonProps {\n onClick?: () => void;\n isActive: boolean;\n}\nexport const SearchButton: FC<SearchButtonProps> = ({ onClick, isActive }) => {\n return (\n <button\n type=\"button\"\n className={classNames(styles.button, {\n [styles.active]: isActive,\n })}\n aria-label=\"Search\"\n onClick={onClick}\n >\n <SearchIcon />\n </button>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const button = \"ktl-search-button_button_JUyxv\";\nexport const active = \"ktl-search-button_active_G-dk1\";","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgHamburgerIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M4 5h16v2H4V5zm0 6h16v2H4v-2zm16 6H4v2h16v-2z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgHamburgerIcon;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCloseIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 16,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.707 1.707L14.293.293 8 6.586 1.707.293.293 1.707 6.586 8 .293 14.293l1.414 1.414L8 9.414l6.293 6.293 1.414-1.414L9.414 8l6.293-6.293z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgCloseIcon;","import React, { FC } from 'react';\nimport * as styles from './menu-button.pcss';\nimport classNames from 'classnames';\nimport HamburgerIcon from './hamburger-icon.svg';\nimport CloseIcon from './close-icon.svg';\n\ninterface MenuButtonProps {\n onClick: () => void;\n isExpanded: boolean;\n}\n\nexport const MenuButton: FC<MenuButtonProps> = ({ onClick, isExpanded }) => {\n return (\n <button\n type=\"button\"\n className={classNames(styles.button)}\n aria-haspopup=\"true\"\n aria-label=\"Open the navigation\"\n onClick={onClick}\n >\n {isExpanded ? <CloseIcon /> : <HamburgerIcon />}\n </button>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const button = \"ktl-menu-button_button_InVin\";","function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n// Older browsers don't support event options, feature detect it.\n\n// Adopted and modified solution from Bohdan Didukh (2017)\n// https://stackoverflow.com/questions/41594997/ios-10-safari-prevent-scrolling-behind-a-fixed-overlay-and-maintain-scroll-posi\n\nvar hasPassiveEvents = false;\nif (typeof window !== 'undefined') {\n var passiveTestOptions = {\n get passive() {\n hasPassiveEvents = true;\n return undefined;\n }\n };\n window.addEventListener('testPassive', null, passiveTestOptions);\n window.removeEventListener('testPassive', null, passiveTestOptions);\n}\n\nvar isIosDevice = typeof window !== 'undefined' && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === 'MacIntel' && window.navigator.maxTouchPoints > 1);\n\n\nvar locks = [];\nvar documentListenerAdded = false;\nvar initialClientY = -1;\nvar previousBodyOverflowSetting = void 0;\nvar previousBodyPaddingRight = void 0;\n\n// returns true if `el` should be allowed to receive touchmove events.\nvar allowTouchMove = function allowTouchMove(el) {\n return locks.some(function (lock) {\n if (lock.options.allowTouchMove && lock.options.allowTouchMove(el)) {\n return true;\n }\n\n return false;\n });\n};\n\nvar preventDefault = function preventDefault(rawEvent) {\n var e = rawEvent || window.event;\n\n // For the case whereby consumers adds a touchmove event listener to document.\n // Recall that we do document.addEventListener('touchmove', preventDefault, { passive: false })\n // in disableBodyScroll - so if we provide this opportunity to allowTouchMove, then\n // the touchmove event on document will break.\n if (allowTouchMove(e.target)) {\n return true;\n }\n\n // Do not prevent if the event has more than one touch (usually meaning this is a multi touch gesture like pinch to zoom).\n if (e.touches.length > 1) return true;\n\n if (e.preventDefault) e.preventDefault();\n\n return false;\n};\n\nvar setOverflowHidden = function setOverflowHidden(options) {\n // If previousBodyPaddingRight is already set, don't set it again.\n if (previousBodyPaddingRight === undefined) {\n var _reserveScrollBarGap = !!options && options.reserveScrollBarGap === true;\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n\n if (_reserveScrollBarGap && scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = scrollBarGap + 'px';\n }\n }\n\n // If previousBodyOverflowSetting is already set, don't set it again.\n if (previousBodyOverflowSetting === undefined) {\n previousBodyOverflowSetting = document.body.style.overflow;\n // Setting overflow on body/documentElement synchronously in Desktop Safari slows down\n // the responsiveness for some reason. Setting within a setTimeout fixes this.\n setTimeout(function () {\n document.body.style.overflow = 'hidden';\n });\n }\n};\n\nvar restoreOverflowSetting = function restoreOverflowSetting() {\n // Setting overflow on body/documentElement synchronously in Desktop Safari slows down\n // the responsiveness for some reason. Setting within a setTimeout fixes this.\n setTimeout(function () {\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n\n // Restore previousBodyPaddingRight to undefined so setOverflowHidden knows it\n // can be set again.\n previousBodyPaddingRight = undefined;\n }\n\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n\n // Restore previousBodyOverflowSetting to undefined\n // so setOverflowHidden knows it can be set again.\n previousBodyOverflowSetting = undefined;\n }\n });\n};\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions\nvar isTargetElementTotallyScrolled = function isTargetElementTotallyScrolled(targetElement) {\n return targetElement ? targetElement.scrollHeight - targetElement.scrollTop <= targetElement.clientHeight : false;\n};\n\nvar handleScroll = function handleScroll(event, targetElement) {\n var clientY = event.targetTouches[0].clientY - initialClientY;\n\n if (allowTouchMove(event.target)) {\n return false;\n }\n\n if (targetElement && targetElement.scrollTop === 0 && clientY > 0) {\n // element is at the top of its scroll.\n return preventDefault(event);\n }\n\n if (isTargetElementTotallyScrolled(targetElement) && clientY < 0) {\n // element is at the bottom of its scroll.\n return preventDefault(event);\n }\n\n event.stopPropagation();\n return true;\n};\n\nexport var disableBodyScroll = function disableBodyScroll(targetElement, options) {\n if (isIosDevice) {\n // targetElement must be provided, and disableBodyScroll must not have been\n // called on this targetElement before.\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.');\n return;\n }\n\n if (targetElement && !locks.some(function (lock) {\n return lock.targetElement === targetElement;\n })) {\n var lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [lock]);\n\n targetElement.ontouchstart = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n initialClientY = event.targetTouches[0].clientY;\n }\n };\n targetElement.ontouchmove = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n handleScroll(event, targetElement);\n }\n };\n\n if (!documentListenerAdded) {\n document.addEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = true;\n }\n }\n } else {\n setOverflowHidden(options);\n var _lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [_lock]);\n }\n};\n\nexport var clearAllBodyScrollLocks = function clearAllBodyScrollLocks() {\n if (isIosDevice) {\n // Clear all locks ontouchstart/ontouchmove handlers, and the references.\n locks.forEach(function (lock) {\n lock.targetElement.ontouchstart = null;\n lock.targetElement.ontouchmove = null;\n });\n\n if (documentListenerAdded) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n\n locks = [];\n\n // Reset initial clientY.\n initialClientY = -1;\n } else {\n restoreOverflowSetting();\n locks = [];\n }\n};\n\nexport var enableBodyScroll = function enableBodyScroll(targetElement) {\n if (isIosDevice) {\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.');\n return;\n }\n\n targetElement.ontouchstart = null;\n targetElement.ontouchmove = null;\n\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n\n if (documentListenerAdded && locks.length === 0) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n\n documentListenerAdded = false;\n }\n } else {\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n if (!locks.length) {\n restoreOverflowSetting();\n }\n }\n};\n\n","import React, {\n CSSProperties,\n FC,\n Fragment,\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport * as styles from './menu-popup.module.pcss';\nimport { MenuItem } from '../nav-scheme';\nimport classNames from 'classnames';\nimport { MenuButton } from './menu-button/menu-button';\nimport { useTextStyles } from '@rescui/typography';\nimport { LinkHandler } from 'src/helper/link-handler';\nimport {\n disableBodyScroll,\n enableBodyScroll,\n clearAllBodyScrollLocks,\n} from 'body-scroll-lock';\n\ninterface MenuItemProps {\n item: MenuItem;\n level: number;\n linkHandler?: LinkHandler;\n}\n\ninterface MenuItemStyle extends CSSProperties {\n '--level': number;\n}\n\nconst MenuListItem: FC<MenuItemProps> = ({ item, level, linkHandler }) => {\n const Tag = item.url ? 'a' : 'span';\n const style: MenuItemStyle = {\n '--level': level,\n };\n\n return (\n <Tag\n {...(item.url\n ? {\n href: item.url,\n onClick: linkHandler\n ? (event) => item.url && linkHandler(event, item.url)\n : undefined,\n }\n : {})}\n className={classNames(styles.menuItem, {\n [styles.menuItemRoot]: level === 0,\n [styles.active]: item.isActive,\n [styles.activeWithChild]: item.items && item.items.length,\n })}\n style={style}\n >\n {item.title}\n </Tag>\n );\n};\n\ninterface MenuListProps {\n items: MenuItem[];\n level: number;\n linkHandler?: LinkHandler;\n}\n\nconst MenuList: FC<MenuListProps> = ({ items, level, linkHandler }) => {\n return (\n <>\n {items.map((item, i) => (\n <Fragment key={i}>\n <MenuListItem item={item} level={level} linkHandler={linkHandler} />\n {item.items && item.items.length > 0 && (\n <MenuList\n items={item.items}\n level={level + 1}\n linkHandler={linkHandler}\n />\n )}\n </Fragment>\n ))}\n </>\n );\n};\n\ninterface MenuPopupProps {\n items: MenuItem[];\n isExpanded: boolean;\n setExpand: React.Dispatch<React.SetStateAction<boolean>>;\n headerRef: React.RefObject<HTMLElement>;\n linkHandler?: LinkHandler;\n}\n\ninterface NavStyles {\n top?: number;\n}\n\nexport const MenuPopup: FC<MenuPopupProps> = ({\n items,\n isExpanded,\n setExpand,\n headerRef,\n linkHandler,\n}) => {\n const navRef = useRef<null | HTMLElement>(null);\n const textCn = useTextStyles();\n const [navStyle, setNavStyle] = useState<NavStyles>({});\n\n useEffect(() => {\n const onResize = () => {\n if (window.innerWidth > 640) {\n setExpand(false);\n clearAllBodyScrollLocks();\n }\n };\n\n window.addEventListener('resize', onResize);\n\n return () => {\n clearAllBodyScrollLocks();\n window.removeEventListener('resize', onResize);\n };\n }, []);\n\n useLayoutEffect(() => {\n if (headerRef.current) {\n setNavStyle({ top: headerRef.current.getBoundingClientRect().bottom });\n }\n }, [isExpanded, headerRef]);\n\n const handleClick = useCallback(() => {\n if (navRef.current) {\n isExpanded\n ? enableBodyScroll(navRef.current)\n : disableBodyScroll(navRef.current);\n }\n setExpand(!isExpanded);\n }, [isExpanded, navRef]);\n\n return (\n <>\n <MenuButton onClick={handleClick} isExpanded={isExpanded} />\n\n <nav\n style={navStyle}\n ref={navRef}\n className={classNames(styles.menuPopup, textCn('rs-text-2'), {\n [styles.menuPopupExpanded]: isExpanded,\n })}\n >\n <MenuList items={items} level={0} linkHandler={linkHandler} />\n </nav>\n </>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const menuPopup = \"ktl-menu-popup-module_menu-popup_Yqtnq\";\nexport const menuItem = \"ktl-menu-popup-module_menu-item_f6wvh\";\nexport const active = \"ktl-menu-popup-module_active_DrZav\";\nexport const activeWithChild = \"ktl-menu-popup-module_active-with-child_BDnrW\";\nexport const menuItemRoot = \"ktl-menu-popup-module_menu-item-root_C-hkN\";\nexport const menuPopupExpanded = \"ktl-menu-popup-module_menu-popup-expanded_FlujR\";","var _radialGradient, _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgKotlinLogoSmall(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\"\n }, props), _radialGradient || (_radialGradient = /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"kotlin-logo-small_svg__a\",\n cx: 22.432,\n cy: 3.493,\n r: 21.679,\n gradientTransform: \"translate(-.19 .042) scale(.9998)\",\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.003,\n stopColor: \"#e44857\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.469,\n stopColor: \"#c711e1\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#7f52ff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"url(#kotlin-logo-small_svg__a)\",\n d: \"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z\"\n })));\n}\n\nexport default SvgKotlinLogoSmall;","// extracted by mini-css-extract-plugin\nexport const logoSmall = \"ktl-logo-small-module_logo-small_7ddNl\";\nexport const link = \"ktl-logo-small-module_link_6gruv\";\nexport const iconWrap = \"ktl-logo-small-module_icon-wrap_BFVBd\";\nexport const icon = \"ktl-logo-small-module_icon_JM+yC\";","import React, { FC } from 'react';\nimport KotlinLogoSmall from './kotlin-logo-small.svg';\nimport * as styles from './logo-small.module.pcss';\nimport classNames from 'classnames';\nimport { useTextStyles } from '@rescui/typography';\nimport { KOTLINLANG_URL } from 'src/consts';\n\ninterface LogoSmallProps {\n homeUrl: string;\n homeTitle: string;\n className?: string;\n}\n\nexport const LogoSmall: FC<LogoSmallProps> = ({\n homeTitle,\n homeUrl,\n className,\n}) => {\n const textCn = useTextStyles();\n\n return (\n <div className={classNames(styles.logoSmall, className)}>\n <a href={KOTLINLANG_URL} className={styles.iconWrap}>\n <KotlinLogoSmall className={styles.icon} />\n </a>\n <a href={homeUrl} className={classNames(styles.link, textCn('rs-h3'))}>\n {homeTitle}\n </a>\n </div>\n );\n};\n","import React, {\n FC,\n ForwardedRef,\n forwardRef,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { ThemeProvider } from '@rescui/ui-contexts';\nimport { Theme } from '@rescui/ui-contexts/lib/parts/theme-context';\nimport { LogoLarge } from './logo-large/logo-large';\nimport * as styles from './header.module.pcss';\nimport { getNavScheme } from './nav-scheme';\nimport { HorizontalMenu } from './horizontal-menu/horizontal-menu';\nimport { SearchButton } from './search-button/search-button';\nimport { MenuPopup } from './menu-popup/menu-popup';\nimport { LogoSmall } from './logo-small/logo-small';\nimport classNames from 'classnames';\nimport { LinkHandler } from 'src/helper/link-handler';\nimport { IsUrlActive } from 'src/helper/is-url-active';\n\nexport interface HeaderProps {\n currentUrl?: string;\n currentTitle?: string;\n productWebUrl?: string;\n hasSearch?: boolean;\n onSearchClick?: () => void;\n className?: string;\n hasBorder?: boolean;\n dropdownTheme?: Theme;\n linkHandler?: LinkHandler;\n isPlayground?: boolean;\n isUrlActive?: IsUrlActive;\n}\n\nexport const Header: FC<HeaderProps> = forwardRef(\n (\n {\n productWebUrl,\n hasSearch = false,\n onSearchClick,\n currentUrl,\n currentTitle,\n className,\n hasBorder = true,\n dropdownTheme = 'dark',\n linkHandler,\n isPlayground,\n isUrlActive,\n },\n forwardedRef?: ForwardedRef<null | HTMLElement>\n ) => {\n const [menuPopupExpanded, setMenuPopupExpanded] = useState(false);\n const items = useMemo(\n () => getNavScheme(isUrlActive, currentUrl, isPlayground),\n [isUrlActive, currentUrl, isPlayground]\n );\n const headerRef = useRef<null | HTMLElement>(null);\n useImperativeHandle<null | HTMLElement, null | HTMLElement>(\n forwardedRef,\n () => headerRef.current\n );\n\n return (\n <ThemeProvider theme={'dark'}>\n <header\n ref={headerRef}\n className={classNames(styles.headerMenu, className, {\n [styles.withMenuPopup]: menuPopupExpanded,\n [styles.border]: hasBorder,\n })}\n >\n <LogoLarge\n productWebUrl={productWebUrl}\n className={\n !!currentTitle && !!currentUrl && !menuPopupExpanded\n ? styles.logoHide\n : null\n }\n />\n {!!currentTitle && !!currentUrl && (\n <LogoSmall\n homeTitle={currentTitle}\n homeUrl={currentUrl}\n className={menuPopupExpanded ? styles.logoHide : null}\n />\n )}\n\n <HorizontalMenu\n items={items}\n theme={dropdownTheme}\n linkHandler={linkHandler}\n />\n\n {\n <SearchButton\n onClick={onSearchClick}\n isActive={hasSearch && !!onSearchClick}\n />\n }\n\n <MenuPopup\n items={items}\n setExpand={setMenuPopupExpanded}\n isExpanded={menuPopupExpanded}\n headerRef={headerRef}\n linkHandler={linkHandler}\n />\n </header>\n </ThemeProvider>\n );\n }\n);\n","import { Header } from './header';\nexport default Header;\n\nexport * from './nav-scheme';\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","f","g","Fragment","Symbol","for","h","m","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","n","p","ref","__self","__source","q","c","a","k","b","d","e","l","defaultProps","$$typeof","type","props","_owner","current","jsx","jsxs","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getter","__esModule","definition","o","defineProperty","enumerable","get","obj","prop","r","toStringTag","value","_radialGradient","_path","_g","_extends","assign","target","source","this","xmlns","viewBox","id","cx","cy","gradientTransform","gradientUnits","offset","stopColor","fill","KOTLINLANG_URL","LogoLarge","productWebUrl","className","version","match","exec","getProductVersion","textCn","useTextStyles","hardness","href","logoHide","SOLUTIONS_TITLE","MULTIPLATFORM_MOBILE_TITLE","MULTIPLATFORM_MOBILE_URL","SERVER_SIDE_TITLE","SERVER_SIDE_URL","WEB_FRONTEND_TITLE","WEB_FRONTEND_URL","DATA_SCIENCE_TITLE","DATA_SCIENCE_URL","ANDROID_TITLE","ANDROID_URL","DOCS_TITLE","DOCS_URL","COMMUNITY_TITLE","COMMUNITY_URL","TEACH_TITLE","TEACH_URL","PLAY_TITLE","PLAY_TITLE_FULL","PLAY_URL","PLAY_HANDSON_URL","PLAY_HANDSON_TITLE","PLAY_EXAMPLES_URL","PLAY_EXAMPLES_TITLE","PLAY_KOANS_URL","PLAY_KOANS_TITLE","KOTLIN_DOCS_TITLE","KOTLIN_DOCS_URL","KMM_DOCS_TITLE","KMM_DOCS_URL","navScheme","title","url","items","getNavScheme","isUrlActive","currentUrl","isPlayground","map","makeExternalUrl","item","isActive","childUrl","childActive","startsWith","replace","DropdownMenu","isExpanded","alignRight","linkHandler","Tag","onClick","event","HorizontalMenuItem","onMouseEnter","onMouseLeave","isLast","HorizontalMenu","theme","activeIndex","setActiveIndex","useState","debouncedActiveIndex","setDebouncedActiveIndex","useEffect","handler","setTimeout","clearTimeout","handleEnter","findIndex","val","handleLeave","index","width","height","fillRule","clipRule","SearchButton","MenuButton","_toConsumableArray","arr","arr2","from","hasPassiveEvents","window","passiveTestOptions","passive","addEventListener","removeEventListener","isIosDevice","navigator","platform","test","maxTouchPoints","locks","documentListenerAdded","initialClientY","previousBodyOverflowSetting","previousBodyPaddingRight","allowTouchMove","el","some","lock","options","preventDefault","rawEvent","touches","restoreOverflowSetting","document","body","style","paddingRight","overflow","disableBodyScroll","targetElement","console","error","concat","ontouchstart","targetTouches","clientY","ontouchmove","scrollTop","scrollHeight","clientHeight","isTargetElementTotallyScrolled","stopPropagation","handleScroll","_reserveScrollBarGap","reserveScrollBarGap","scrollBarGap","innerWidth","documentElement","clientWidth","setOverflowHidden","_lock","clearAllBodyScrollLocks","forEach","MenuListItem","level","MenuList","MenuPopup","setExpand","headerRef","navRef","useRef","navStyle","setNavStyle","onResize","useLayoutEffect","top","getBoundingClientRect","bottom","handleClick","useCallback","filter","enableBodyScroll","LogoSmall","homeTitle","homeUrl","Header","forwardRef","forwardedRef","hasSearch","onSearchClick","currentTitle","hasBorder","dropdownTheme","menuPopupExpanded","setMenuPopupExpanded","useMemo","useImperativeHandle","ThemeProvider","styles"],"sourceRoot":""}
1
+ {"version":3,"file":"header.js","mappings":"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","sources":["webpack://@jetbrains/kotlin-web-site-ui/./node_modules/classnames/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/cjs/react-jsx-runtime.production.min.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/react/jsx-runtime.js","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs2\":\"react\",\"commonjs\":\"react\"}","webpack://@jetbrains/kotlin-web-site-ui/webpack/bootstrap","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/compat get default export","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/define property getters","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/hasOwnProperty shorthand","webpack://@jetbrains/kotlin-web-site-ui/webpack/runtime/make namespace object","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserverBoxOptions.js","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/ui-contexts\",\"commonjs2\":\"@rescui/ui-contexts\"}","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/resizeObservers.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/deliverResizeLoopError.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/freeze.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/queueMicroTask.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserverSize.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/DOMRectReadOnly.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/element.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/global.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/calculateBoxSize.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserverEntry.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/calculateDepthForNode.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/broadcastActiveObservations.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/gatherActiveObservationsAtDepth.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/process.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/hasActiveObservations.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/algorithms/hasSkippedObservations.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/scheduler.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/utils/queueResizeObserver.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObservation.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserverDetail.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserverController.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@juggle/resize-observer/lib/ResizeObserver.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@react-hook/passive-layout-effect/dist/module/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@react-hook/latest/dist/module/index.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/raf-schd/dist/raf-schd.esm.js","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/@react-hook/resize-observer/dist/module/index.js","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/kotlin-logo-large.svg","webpack://@jetbrains/kotlin-web-site-ui/external commonjs2 {\"commonjs\":\"@rescui/typography\",\"commonjs2\":\"@rescui/typography\"}","webpack://@jetbrains/kotlin-web-site-ui/./src/consts.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-large/logo-large.module.pcss?d1a2","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.module.pcss?b1da","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/nav-scheme.ts","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.module.pcss?7d3a","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/horizontal-menu/horizontal-menu.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/search-button/search-button.pcss?7314","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/hamburger-icon.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/close-icon.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-button/menu-button.pcss?e10c","webpack://@jetbrains/kotlin-web-site-ui/./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/menu-popup/menu-popup.module.pcss?1dec","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/kotlin-logo-small.svg","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.module.pcss?0b31","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/logo-small/logo-small.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/header.tsx","webpack://@jetbrains/kotlin-web-site-ui/./src/components/header/index.ts"],"sourcesContent":["/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/** @license React v16.14.0\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var ResizeObserverBoxOptions;\n(function (ResizeObserverBoxOptions) {\n ResizeObserverBoxOptions[\"BORDER_BOX\"] = \"border-box\";\n ResizeObserverBoxOptions[\"CONTENT_BOX\"] = \"content-box\";\n ResizeObserverBoxOptions[\"DEVICE_PIXEL_CONTENT_BOX\"] = \"device-pixel-content-box\";\n})(ResizeObserverBoxOptions || (ResizeObserverBoxOptions = {}));\nexport { ResizeObserverBoxOptions };\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/ui-contexts\");","var resizeObservers = [];\nexport { resizeObservers };\n","var msg = 'ResizeObserver loop completed with undelivered notifications.';\nvar deliverResizeLoopError = function () {\n var event;\n if (typeof ErrorEvent === 'function') {\n event = new ErrorEvent('error', {\n message: msg\n });\n }\n else {\n event = document.createEvent('Event');\n event.initEvent('error', false, false);\n event.message = msg;\n }\n window.dispatchEvent(event);\n};\nexport { deliverResizeLoopError };\n","export var freeze = function (obj) { return Object.freeze(obj); };\n","var trigger;\nvar callbacks = [];\nvar notify = function () { return callbacks.splice(0).forEach(function (cb) { return cb(); }); };\nvar queueMicroTask = function (callback) {\n if (!trigger) {\n var toggle_1 = 0;\n var el_1 = document.createTextNode('');\n var config = { characterData: true };\n new MutationObserver(function () { return notify(); }).observe(el_1, config);\n trigger = function () { el_1.textContent = \"\" + (toggle_1 ? toggle_1-- : toggle_1++); };\n }\n callbacks.push(callback);\n trigger();\n};\nexport { queueMicroTask };\n","import { freeze } from './utils/freeze';\nvar ResizeObserverSize = (function () {\n function ResizeObserverSize(inlineSize, blockSize) {\n this.inlineSize = inlineSize;\n this.blockSize = blockSize;\n freeze(this);\n }\n return ResizeObserverSize;\n}());\nexport { ResizeObserverSize };\n","import { freeze } from './utils/freeze';\nvar DOMRectReadOnly = (function () {\n function DOMRectReadOnly(x, y, width, height) {\n this.x = x;\n this.y = y;\n this.width = width;\n this.height = height;\n this.top = this.y;\n this.left = this.x;\n this.bottom = this.top + this.height;\n this.right = this.left + this.width;\n return freeze(this);\n }\n DOMRectReadOnly.prototype.toJSON = function () {\n var _a = this, x = _a.x, y = _a.y, top = _a.top, right = _a.right, bottom = _a.bottom, left = _a.left, width = _a.width, height = _a.height;\n return { x: x, y: y, top: top, right: right, bottom: bottom, left: left, width: width, height: height };\n };\n DOMRectReadOnly.fromRect = function (rectangle) {\n return new DOMRectReadOnly(rectangle.x, rectangle.y, rectangle.width, rectangle.height);\n };\n return DOMRectReadOnly;\n}());\nexport { DOMRectReadOnly };\n","var isSVG = function (target) { return target instanceof SVGElement && 'getBBox' in target; };\nvar isHidden = function (target) {\n if (isSVG(target)) {\n var _a = target.getBBox(), width = _a.width, height = _a.height;\n return !width && !height;\n }\n var _b = target, offsetWidth = _b.offsetWidth, offsetHeight = _b.offsetHeight;\n return !(offsetWidth || offsetHeight || target.getClientRects().length);\n};\nvar isElement = function (obj) {\n var _a, _b;\n if (obj instanceof Element) {\n return true;\n }\n var scope = (_b = (_a = obj) === null || _a === void 0 ? void 0 : _a.ownerDocument) === null || _b === void 0 ? void 0 : _b.defaultView;\n return !!(scope && obj instanceof scope.Element);\n};\nvar isReplacedElement = function (target) {\n switch (target.tagName) {\n case 'INPUT':\n if (target.type !== 'image') {\n break;\n }\n case 'VIDEO':\n case 'AUDIO':\n case 'EMBED':\n case 'OBJECT':\n case 'CANVAS':\n case 'IFRAME':\n case 'IMG':\n return true;\n }\n return false;\n};\nexport { isSVG, isHidden, isElement, isReplacedElement };\n","export var global = typeof window !== 'undefined' ? window : {};\n","import { ResizeObserverBoxOptions } from '../ResizeObserverBoxOptions';\nimport { ResizeObserverSize } from '../ResizeObserverSize';\nimport { DOMRectReadOnly } from '../DOMRectReadOnly';\nimport { isSVG, isHidden } from '../utils/element';\nimport { freeze } from '../utils/freeze';\nimport { global } from '../utils/global';\nvar cache = new WeakMap();\nvar scrollRegexp = /auto|scroll/;\nvar verticalRegexp = /^tb|vertical/;\nvar IE = (/msie|trident/i).test(global.navigator && global.navigator.userAgent);\nvar parseDimension = function (pixel) { return parseFloat(pixel || '0'); };\nvar size = function (inlineSize, blockSize, switchSizes) {\n if (inlineSize === void 0) { inlineSize = 0; }\n if (blockSize === void 0) { blockSize = 0; }\n if (switchSizes === void 0) { switchSizes = false; }\n return new ResizeObserverSize((switchSizes ? blockSize : inlineSize) || 0, (switchSizes ? inlineSize : blockSize) || 0);\n};\nvar zeroBoxes = freeze({\n devicePixelContentBoxSize: size(),\n borderBoxSize: size(),\n contentBoxSize: size(),\n contentRect: new DOMRectReadOnly(0, 0, 0, 0)\n});\nvar calculateBoxSizes = function (target, forceRecalculation) {\n if (forceRecalculation === void 0) { forceRecalculation = false; }\n if (cache.has(target) && !forceRecalculation) {\n return cache.get(target);\n }\n if (isHidden(target)) {\n cache.set(target, zeroBoxes);\n return zeroBoxes;\n }\n var cs = getComputedStyle(target);\n var svg = isSVG(target) && target.ownerSVGElement && target.getBBox();\n var removePadding = !IE && cs.boxSizing === 'border-box';\n var switchSizes = verticalRegexp.test(cs.writingMode || '');\n var canScrollVertically = !svg && scrollRegexp.test(cs.overflowY || '');\n var canScrollHorizontally = !svg && scrollRegexp.test(cs.overflowX || '');\n var paddingTop = svg ? 0 : parseDimension(cs.paddingTop);\n var paddingRight = svg ? 0 : parseDimension(cs.paddingRight);\n var paddingBottom = svg ? 0 : parseDimension(cs.paddingBottom);\n var paddingLeft = svg ? 0 : parseDimension(cs.paddingLeft);\n var borderTop = svg ? 0 : parseDimension(cs.borderTopWidth);\n var borderRight = svg ? 0 : parseDimension(cs.borderRightWidth);\n var borderBottom = svg ? 0 : parseDimension(cs.borderBottomWidth);\n var borderLeft = svg ? 0 : parseDimension(cs.borderLeftWidth);\n var horizontalPadding = paddingLeft + paddingRight;\n var verticalPadding = paddingTop + paddingBottom;\n var horizontalBorderArea = borderLeft + borderRight;\n var verticalBorderArea = borderTop + borderBottom;\n var horizontalScrollbarThickness = !canScrollHorizontally ? 0 : target.offsetHeight - verticalBorderArea - target.clientHeight;\n var verticalScrollbarThickness = !canScrollVertically ? 0 : target.offsetWidth - horizontalBorderArea - target.clientWidth;\n var widthReduction = removePadding ? horizontalPadding + horizontalBorderArea : 0;\n var heightReduction = removePadding ? verticalPadding + verticalBorderArea : 0;\n var contentWidth = svg ? svg.width : parseDimension(cs.width) - widthReduction - verticalScrollbarThickness;\n var contentHeight = svg ? svg.height : parseDimension(cs.height) - heightReduction - horizontalScrollbarThickness;\n var borderBoxWidth = contentWidth + horizontalPadding + verticalScrollbarThickness + horizontalBorderArea;\n var borderBoxHeight = contentHeight + verticalPadding + horizontalScrollbarThickness + verticalBorderArea;\n var boxes = freeze({\n devicePixelContentBoxSize: size(Math.round(contentWidth * devicePixelRatio), Math.round(contentHeight * devicePixelRatio), switchSizes),\n borderBoxSize: size(borderBoxWidth, borderBoxHeight, switchSizes),\n contentBoxSize: size(contentWidth, contentHeight, switchSizes),\n contentRect: new DOMRectReadOnly(paddingLeft, paddingTop, contentWidth, contentHeight)\n });\n cache.set(target, boxes);\n return boxes;\n};\nvar calculateBoxSize = function (target, observedBox, forceRecalculation) {\n var _a = calculateBoxSizes(target, forceRecalculation), borderBoxSize = _a.borderBoxSize, contentBoxSize = _a.contentBoxSize, devicePixelContentBoxSize = _a.devicePixelContentBoxSize;\n switch (observedBox) {\n case ResizeObserverBoxOptions.DEVICE_PIXEL_CONTENT_BOX:\n return devicePixelContentBoxSize;\n case ResizeObserverBoxOptions.BORDER_BOX:\n return borderBoxSize;\n default:\n return contentBoxSize;\n }\n};\nexport { calculateBoxSize, calculateBoxSizes };\n","import { calculateBoxSizes } from './algorithms/calculateBoxSize';\nimport { freeze } from './utils/freeze';\nvar ResizeObserverEntry = (function () {\n function ResizeObserverEntry(target) {\n var boxes = calculateBoxSizes(target);\n this.target = target;\n this.contentRect = boxes.contentRect;\n this.borderBoxSize = freeze([boxes.borderBoxSize]);\n this.contentBoxSize = freeze([boxes.contentBoxSize]);\n this.devicePixelContentBoxSize = freeze([boxes.devicePixelContentBoxSize]);\n }\n return ResizeObserverEntry;\n}());\nexport { ResizeObserverEntry };\n","import { isHidden } from '../utils/element';\nvar calculateDepthForNode = function (node) {\n if (isHidden(node)) {\n return Infinity;\n }\n var depth = 0;\n var parent = node.parentNode;\n while (parent) {\n depth += 1;\n parent = parent.parentNode;\n }\n return depth;\n};\nexport { calculateDepthForNode };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { ResizeObserverEntry } from '../ResizeObserverEntry';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nimport { calculateBoxSize } from './calculateBoxSize';\nvar broadcastActiveObservations = function () {\n var shallowestDepth = Infinity;\n var callbacks = [];\n resizeObservers.forEach(function processObserver(ro) {\n if (ro.activeTargets.length === 0) {\n return;\n }\n var entries = [];\n ro.activeTargets.forEach(function processTarget(ot) {\n var entry = new ResizeObserverEntry(ot.target);\n var targetDepth = calculateDepthForNode(ot.target);\n entries.push(entry);\n ot.lastReportedSize = calculateBoxSize(ot.target, ot.observedBox);\n if (targetDepth < shallowestDepth) {\n shallowestDepth = targetDepth;\n }\n });\n callbacks.push(function resizeObserverCallback() {\n ro.callback.call(ro.observer, entries, ro.observer);\n });\n ro.activeTargets.splice(0, ro.activeTargets.length);\n });\n for (var _i = 0, callbacks_1 = callbacks; _i < callbacks_1.length; _i++) {\n var callback = callbacks_1[_i];\n callback();\n }\n return shallowestDepth;\n};\nexport { broadcastActiveObservations };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nvar gatherActiveObservationsAtDepth = function (depth) {\n resizeObservers.forEach(function processObserver(ro) {\n ro.activeTargets.splice(0, ro.activeTargets.length);\n ro.skippedTargets.splice(0, ro.skippedTargets.length);\n ro.observationTargets.forEach(function processTarget(ot) {\n if (ot.isActive()) {\n if (calculateDepthForNode(ot.target) > depth) {\n ro.activeTargets.push(ot);\n }\n else {\n ro.skippedTargets.push(ot);\n }\n }\n });\n });\n};\nexport { gatherActiveObservationsAtDepth };\n","import { hasActiveObservations } from '../algorithms/hasActiveObservations';\nimport { hasSkippedObservations } from '../algorithms/hasSkippedObservations';\nimport { deliverResizeLoopError } from '../algorithms/deliverResizeLoopError';\nimport { broadcastActiveObservations } from '../algorithms/broadcastActiveObservations';\nimport { gatherActiveObservationsAtDepth } from '../algorithms/gatherActiveObservationsAtDepth';\nvar process = function () {\n var depth = 0;\n gatherActiveObservationsAtDepth(depth);\n while (hasActiveObservations()) {\n depth = broadcastActiveObservations();\n gatherActiveObservationsAtDepth(depth);\n }\n if (hasSkippedObservations()) {\n deliverResizeLoopError();\n }\n return depth > 0;\n};\nexport { process };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasActiveObservations = function () {\n return resizeObservers.some(function (ro) { return ro.activeTargets.length > 0; });\n};\nexport { hasActiveObservations };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasSkippedObservations = function () {\n return resizeObservers.some(function (ro) { return ro.skippedTargets.length > 0; });\n};\nexport { hasSkippedObservations };\n","import { process } from './process';\nimport { global } from './global';\nimport { queueResizeObserver } from './queueResizeObserver';\nvar watching = 0;\nvar isWatching = function () { return !!watching; };\nvar CATCH_PERIOD = 250;\nvar observerConfig = { attributes: true, characterData: true, childList: true, subtree: true };\nvar events = [\n 'resize',\n 'load',\n 'transitionend',\n 'animationend',\n 'animationstart',\n 'animationiteration',\n 'keyup',\n 'keydown',\n 'mouseup',\n 'mousedown',\n 'mouseover',\n 'mouseout',\n 'blur',\n 'focus'\n];\nvar time = function (timeout) {\n if (timeout === void 0) { timeout = 0; }\n return Date.now() + timeout;\n};\nvar scheduled = false;\nvar Scheduler = (function () {\n function Scheduler() {\n var _this = this;\n this.stopped = true;\n this.listener = function () { return _this.schedule(); };\n }\n Scheduler.prototype.run = function (timeout) {\n var _this = this;\n if (timeout === void 0) { timeout = CATCH_PERIOD; }\n if (scheduled) {\n return;\n }\n scheduled = true;\n var until = time(timeout);\n queueResizeObserver(function () {\n var elementsHaveResized = false;\n try {\n elementsHaveResized = process();\n }\n finally {\n scheduled = false;\n timeout = until - time();\n if (!isWatching()) {\n return;\n }\n if (elementsHaveResized) {\n _this.run(1000);\n }\n else if (timeout > 0) {\n _this.run(timeout);\n }\n else {\n _this.start();\n }\n }\n });\n };\n Scheduler.prototype.schedule = function () {\n this.stop();\n this.run();\n };\n Scheduler.prototype.observe = function () {\n var _this = this;\n var cb = function () { return _this.observer && _this.observer.observe(document.body, observerConfig); };\n document.body ? cb() : global.addEventListener('DOMContentLoaded', cb);\n };\n Scheduler.prototype.start = function () {\n var _this = this;\n if (this.stopped) {\n this.stopped = false;\n this.observer = new MutationObserver(this.listener);\n this.observe();\n events.forEach(function (name) { return global.addEventListener(name, _this.listener, true); });\n }\n };\n Scheduler.prototype.stop = function () {\n var _this = this;\n if (!this.stopped) {\n this.observer && this.observer.disconnect();\n events.forEach(function (name) { return global.removeEventListener(name, _this.listener, true); });\n this.stopped = true;\n }\n };\n return Scheduler;\n}());\nvar scheduler = new Scheduler();\nvar updateCount = function (n) {\n !watching && n > 0 && scheduler.start();\n watching += n;\n !watching && scheduler.stop();\n};\nexport { scheduler, updateCount };\n","import { queueMicroTask } from './queueMicroTask';\nvar queueResizeObserver = function (cb) {\n queueMicroTask(function ResizeObserver() {\n requestAnimationFrame(cb);\n });\n};\nexport { queueResizeObserver };\n","import { ResizeObserverBoxOptions } from './ResizeObserverBoxOptions';\nimport { calculateBoxSize } from './algorithms/calculateBoxSize';\nimport { isSVG, isReplacedElement } from './utils/element';\nvar skipNotifyOnElement = function (target) {\n return !isSVG(target)\n && !isReplacedElement(target)\n && getComputedStyle(target).display === 'inline';\n};\nvar ResizeObservation = (function () {\n function ResizeObservation(target, observedBox) {\n this.target = target;\n this.observedBox = observedBox || ResizeObserverBoxOptions.CONTENT_BOX;\n this.lastReportedSize = {\n inlineSize: 0,\n blockSize: 0\n };\n }\n ResizeObservation.prototype.isActive = function () {\n var size = calculateBoxSize(this.target, this.observedBox, true);\n if (skipNotifyOnElement(this.target)) {\n this.lastReportedSize = size;\n }\n if (this.lastReportedSize.inlineSize !== size.inlineSize\n || this.lastReportedSize.blockSize !== size.blockSize) {\n return true;\n }\n return false;\n };\n return ResizeObservation;\n}());\nexport { ResizeObservation };\n","var ResizeObserverDetail = (function () {\n function ResizeObserverDetail(resizeObserver, callback) {\n this.activeTargets = [];\n this.skippedTargets = [];\n this.observationTargets = [];\n this.observer = resizeObserver;\n this.callback = callback;\n }\n return ResizeObserverDetail;\n}());\nexport { ResizeObserverDetail };\n","import { scheduler, updateCount } from './utils/scheduler';\nimport { ResizeObservation } from './ResizeObservation';\nimport { ResizeObserverDetail } from './ResizeObserverDetail';\nimport { resizeObservers } from './utils/resizeObservers';\nvar observerMap = new WeakMap();\nvar getObservationIndex = function (observationTargets, target) {\n for (var i = 0; i < observationTargets.length; i += 1) {\n if (observationTargets[i].target === target) {\n return i;\n }\n }\n return -1;\n};\nvar ResizeObserverController = (function () {\n function ResizeObserverController() {\n }\n ResizeObserverController.connect = function (resizeObserver, callback) {\n var detail = new ResizeObserverDetail(resizeObserver, callback);\n observerMap.set(resizeObserver, detail);\n };\n ResizeObserverController.observe = function (resizeObserver, target, options) {\n var detail = observerMap.get(resizeObserver);\n var firstObservation = detail.observationTargets.length === 0;\n if (getObservationIndex(detail.observationTargets, target) < 0) {\n firstObservation && resizeObservers.push(detail);\n detail.observationTargets.push(new ResizeObservation(target, options && options.box));\n updateCount(1);\n scheduler.schedule();\n }\n };\n ResizeObserverController.unobserve = function (resizeObserver, target) {\n var detail = observerMap.get(resizeObserver);\n var index = getObservationIndex(detail.observationTargets, target);\n var lastObservation = detail.observationTargets.length === 1;\n if (index >= 0) {\n lastObservation && resizeObservers.splice(resizeObservers.indexOf(detail), 1);\n detail.observationTargets.splice(index, 1);\n updateCount(-1);\n }\n };\n ResizeObserverController.disconnect = function (resizeObserver) {\n var _this = this;\n var detail = observerMap.get(resizeObserver);\n detail.observationTargets.slice().forEach(function (ot) { return _this.unobserve(resizeObserver, ot.target); });\n detail.activeTargets.splice(0, detail.activeTargets.length);\n };\n return ResizeObserverController;\n}());\nexport { ResizeObserverController };\n","import { ResizeObserverController } from './ResizeObserverController';\nimport { isElement } from './utils/element';\nvar ResizeObserver = (function () {\n function ResizeObserver(callback) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (typeof callback !== 'function') {\n throw new TypeError(\"Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.\");\n }\n ResizeObserverController.connect(this, callback);\n }\n ResizeObserver.prototype.observe = function (target, options) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.observe(this, target, options);\n };\n ResizeObserver.prototype.unobserve = function (target) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.unobserve(this, target);\n };\n ResizeObserver.prototype.disconnect = function () {\n ResizeObserverController.disconnect(this);\n };\n ResizeObserver.toString = function () {\n return 'function ResizeObserver () { [polyfill code] }';\n };\n return ResizeObserver;\n}());\nexport { ResizeObserver };\n","import React from 'react';\nconst usePassiveLayoutEffect = React[typeof document !== 'undefined' && document.createElement !== void 0 ? 'useLayoutEffect' : 'useEffect'];\nexport default usePassiveLayoutEffect;","import * as React from 'react';\n\nconst useLatest = current => {\n const storedValue = React.useRef(current);\n React.useEffect(() => {\n storedValue.current = current;\n });\n return storedValue;\n};\n\nexport default useLatest;","var rafSchd = function rafSchd(fn) {\n var lastArgs = [];\n var frameId = null;\n\n var wrapperFn = function wrapperFn() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n lastArgs = args;\n\n if (frameId) {\n return;\n }\n\n frameId = requestAnimationFrame(function () {\n frameId = null;\n fn.apply(void 0, lastArgs);\n });\n };\n\n wrapperFn.cancel = function () {\n if (!frameId) {\n return;\n }\n\n cancelAnimationFrame(frameId);\n frameId = null;\n };\n\n return wrapperFn;\n};\n\nexport default rafSchd;\n","/* eslint-disable no-return-assign */\n\n/* eslint-disable no-underscore-dangle */\nimport { ResizeObserver as Polyfill } from '@juggle/resize-observer';\nimport useLayoutEffect from '@react-hook/passive-layout-effect';\nimport useLatest from '@react-hook/latest';\nimport rafSchd from 'raf-schd';\nconst ResizeObserver = typeof window !== 'undefined' && 'ResizeObserver' in window ? // @ts-ignore\nwindow.ResizeObserver : Polyfill;\n/**\n * A React hook that fires a callback whenever ResizeObserver detects a change to its size\n *\n * @param target A React ref created by `useRef()` or an HTML element\n * @param callback Invoked with a single `ResizeObserverEntry` any time\n * the `target` resizes\n */\n\nfunction _ref() {}\n\nfunction useResizeObserver(target, callback) {\n const resizeObserver = getResizeObserver();\n const storedCallback = useLatest(callback);\n useLayoutEffect(() => {\n let didUnsubscribe = false;\n const targetEl = target && 'current' in target ? target.current : target;\n if (!targetEl) return _ref;\n\n function cb(entry, observer) {\n if (didUnsubscribe) return;\n storedCallback.current(entry, observer);\n }\n\n resizeObserver.subscribe(targetEl, cb);\n return () => {\n didUnsubscribe = true;\n resizeObserver.unsubscribe(targetEl, cb);\n };\n }, [target, resizeObserver, storedCallback]);\n return resizeObserver.observer;\n}\n\nfunction createResizeObserver() {\n const callbacks = new Map();\n const observer = new ResizeObserver(rafSchd((entries, obs) => {\n for (let i = 0; i < entries.length; i++) {\n const cbs = callbacks.get(entries[i].target);\n cbs === null || cbs === void 0 ? void 0 : cbs.forEach(cb => cb(entries[i], obs));\n }\n }));\n return {\n observer,\n\n subscribe(target, callback) {\n var _callbacks$get;\n\n observer.observe(target);\n const cbs = (_callbacks$get = callbacks.get(target)) !== null && _callbacks$get !== void 0 ? _callbacks$get : [];\n cbs.push(callback);\n callbacks.set(target, cbs);\n },\n\n unsubscribe(target, callback) {\n var _callbacks$get2;\n\n const cbs = (_callbacks$get2 = callbacks.get(target)) !== null && _callbacks$get2 !== void 0 ? _callbacks$get2 : [];\n\n if (cbs.length === 1) {\n observer.unobserve(target);\n callbacks.delete(target);\n return;\n }\n\n const cbIndex = cbs.indexOf(callback);\n if (cbIndex !== -1) cbs.splice(cbIndex, 1);\n callbacks.set(target, cbs);\n }\n\n };\n}\n\nlet _resizeObserver;\n\nconst getResizeObserver = () => !_resizeObserver ? _resizeObserver = createResizeObserver() : _resizeObserver;\n\nexport default useResizeObserver;","var _radialGradient, _path, _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgKotlinLogoLarge(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 100 24\"\n }, props), _radialGradient || (_radialGradient = /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"kotlin-logo-large_svg__a\",\n cx: 22.432,\n cy: 3.493,\n r: 21.679,\n gradientTransform: \"translate(-.19 .042) scale(.9998)\",\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.003,\n stopColor: \"#e44857\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.469,\n stopColor: \"#c711e1\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#7f52ff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"url(#kotlin-logo-large_svg__a)\",\n d: \"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#fff\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.69 2.73h-3.76l-8.18 8.73v-8.7h-3.02v18.92h3.02v-9.17l8.21 9.17h3.89l-8.75-9.79z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55.93 8.44c-1.07-.62-2.28-.93-3.64-.93-1.38 0-2.61.31-3.7.93a6.63 6.63 0 00-2.55 2.57c-.61 1.1-.91 2.35-.91 3.74 0 1.4.3 2.64.91 3.74a6.45 6.45 0 002.53 2.57c1.09.62 2.32.93 3.7.93 1.36 0 2.58-.31 3.66-.93a6.53 6.53 0 002.51-2.57c.6-1.1.9-2.35.9-3.74 0-1.4-.3-2.64-.9-3.74-.6-1.1-1.43-1.95-2.51-2.57zm-.19 8.7c-.33.69-.8 1.23-1.4 1.61-.6.39-1.3.58-2.08.58-.79 0-1.49-.19-2.11-.58-.61-.39-1.09-.93-1.43-1.61-.34-.69-.51-1.48-.51-2.38 0-.9.17-1.7.51-2.39.34-.69.82-1.23 1.43-1.61.61-.39 1.32-.58 2.12-.58.77 0 1.46.19 2.07.58.6.39 1.07.93 1.4 1.61.33.69.49 1.48.49 2.39.01.9-.15 1.69-.49 2.38zm9.75-12.76h-2.92v2.35c0 .37-.09.65-.27.83-.18.18-.46.28-.84.28h-1.43v2.49h2.49v7.45c0 .77.16 1.46.47 2.05.31.59.76 1.05 1.34 1.37.58.32 1.27.49 2.06.49h2.23V19.1h-1.68c-.43 0-.78-.15-1.06-.45-.27-.3-.4-.7-.4-1.2v-7.11h3.22v-2.5h-3.22V4.38zM71.03 2H74v19.68h-2.97zm6.32.03h3v3.05h-3zm0 5.81h2.97v13.84h-2.97zm18.08 2.28a4.694 4.694 0 00-1.77-1.92c-.76-.46-1.65-.69-2.67-.69-1.08 0-2.03.26-2.84.79-.65.42-1.17.98-1.58 1.68l-.02-2.14H83.7v13.84h2.97v-7.74c0-.75.14-1.41.43-1.99.28-.58.68-1.03 1.2-1.35.52-.32 1.12-.48 1.82-.48.62 0 1.16.13 1.6.39.45.26.78.64 1.01 1.12.23.49.34 1.07.34 1.74v8.31h2.97v-8.73c.02-1.07-.2-2.01-.61-2.83z\"\n }))));\n}\n\nexport default SvgKotlinLogoLarge;","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@rescui/typography\");","export const KOTLINLANG_URL = 'https://kotlinlang.org';\nexport const PLAYGROUND_URL = 'https://play.kotlinlang.org/';","import React, { FC } from 'react';\nimport * as styles from './logo-large.module.pcss';\nimport KotlinLogoFull from './kotlin-logo-large.svg';\nimport classNames from 'classnames';\nimport { useTextStyles } from '@rescui/typography';\nimport { KOTLINLANG_URL } from 'src/consts';\n\ninterface LogoProps {\n productWebUrl?: string;\n className?: string;\n}\n\nexport const LogoLarge: FC<LogoProps> = ({ productWebUrl, className }) => {\n const version: null | string = productWebUrl\n ? getProductVersion(productWebUrl)\n : null;\n const textCn = useTextStyles();\n\n return (\n <div\n className={classNames(\n styles.container,\n className,\n textCn('rs-text-3', { hardness: 'average' })\n )}\n >\n <a\n className={styles.link}\n href={KOTLINLANG_URL}\n aria-label=\"Kotlin Home Page\"\n >\n <KotlinLogoFull />\n </a>\n {version && (\n <a\n className={classNames(styles.versionTag)}\n href={productWebUrl}\n target=\"_blank\"\n >\n {version}\n </a>\n )}\n </div>\n );\n};\n\nfunction getProductVersion(productWebUrl: string): null | string {\n const match = /v?\\d+\\.\\d+\\.\\d+$/.exec(productWebUrl);\n return match ? match[0] : null;\n}\n","// extracted by mini-css-extract-plugin\nexport const container = \"ktl-logo-large-module_container_+5pgf\";\nexport const link = \"ktl-logo-large-module_link_iZIEJ\";\nexport const versionTag = \"ktl-logo-large-module_version-tag_fiNIk\";","// extracted by mini-css-extract-plugin\nexport const headerMenu = \"ktl-header-module_header-menu_E3vzo\";\nexport const border = \"ktl-header-module_border_smGpe\";\nexport const withMenuPopup = \"ktl-header-module_with-menu-popup_DcoOT\";","import { KOTLINLANG_URL, PLAYGROUND_URL } from 'src/consts';\nimport { IsUrlActive } from 'src/helper/is-url-active';\n\nexport interface MenuItem {\n title: string;\n url: null | string;\n isActive?: boolean;\n items?: MenuItem[];\n}\n\nexport const SOLUTIONS_TITLE = 'Solutions';\nexport const MULTIPLATFORM_MOBILE_TITLE = 'Multiplatform Mobile';\nexport const MULTIPLATFORM_MOBILE_URL = `/lp/mobile/`;\nexport const SERVER_SIDE_TITLE = 'Server-side';\nexport const SERVER_SIDE_URL = `/lp/server-side/`;\nexport const WEB_FRONTEND_TITLE = 'Web frontend';\nexport const WEB_FRONTEND_URL = `/docs/js-overview.html`;\nexport const DATA_SCIENCE_TITLE = 'Data science';\nexport const DATA_SCIENCE_URL = `/docs/data-science-overview.html`;\nexport const ANDROID_TITLE = 'Android';\nexport const ANDROID_URL = `/docs/android-overview.html`;\nexport const DOCS_TITLE = 'Docs';\nexport const DOCS_URL = `/docs/home.html`;\nexport const COMMUNITY_TITLE = 'Community';\nexport const COMMUNITY_URL = `/community/`;\nexport const TEACH_TITLE = 'Teach';\nexport const TEACH_URL = `/education/`;\nexport const PLAY_TITLE = 'Play';\nexport const PLAY_TITLE_FULL = 'Playground';\nexport const PLAY_URL = PLAYGROUND_URL;\nexport const PLAY_HANDSON_URL = `${PLAY_URL}hands-on`;\nexport const PLAY_HANDSON_TITLE = 'Hands-on';\nexport const PLAY_EXAMPLES_URL = `${PLAY_URL}byExample`;\nexport const PLAY_EXAMPLES_TITLE = 'Examples';\nexport const PLAY_KOANS_URL = `${PLAY_URL}koans`;\nexport const PLAY_KOANS_TITLE = 'Koans';\nexport const KOTLIN_DOCS_TITLE = 'Kotlin';\nexport const KOTLIN_DOCS_URL = `/docs/home.html`;\nexport const KMM_DOCS_TITLE = 'KMM';\nexport const KMM_DOCS_URL = `/docs/mobile/home.html`;\n\nconst navScheme: MenuItem[] = [\n {\n title: SOLUTIONS_TITLE,\n url: null,\n items: [\n {\n title: MULTIPLATFORM_MOBILE_TITLE,\n url: MULTIPLATFORM_MOBILE_URL,\n },\n {\n title: SERVER_SIDE_TITLE,\n url: SERVER_SIDE_URL,\n },\n {\n title: WEB_FRONTEND_TITLE,\n url: WEB_FRONTEND_URL,\n },\n {\n title: DATA_SCIENCE_TITLE,\n url: DATA_SCIENCE_URL,\n },\n {\n title: ANDROID_TITLE,\n url: ANDROID_URL,\n },\n ],\n },\n {\n title: DOCS_TITLE,\n url: KOTLIN_DOCS_URL,\n },\n {\n title: COMMUNITY_TITLE,\n url: COMMUNITY_URL,\n },\n {\n title: TEACH_TITLE,\n url: TEACH_URL,\n },\n {\n title: PLAY_TITLE,\n url: null,\n items: [\n {\n title: PLAY_TITLE_FULL,\n url: PLAY_URL,\n },\n {\n title: PLAY_HANDSON_TITLE,\n url: PLAY_HANDSON_URL,\n },\n {\n title: PLAY_EXAMPLES_TITLE,\n url: PLAY_EXAMPLES_URL,\n },\n {\n title: PLAY_KOANS_TITLE,\n url: PLAY_KOANS_URL,\n },\n ],\n },\n];\n\nexport function getNavScheme(\n isUrlActive: IsUrlActive = (url, currentUrl) => url === currentUrl,\n currentUrl?: string,\n isPlayground?: boolean\n): MenuItem[] {\n return navScheme.map(({ title, url, items }) => {\n if (url && currentUrl) {\n url = makeExternalUrl(url, currentUrl, !!isPlayground);\n }\n\n const item: MenuItem = {\n title,\n url,\n };\n let isActive = isUrlActive(url, currentUrl);\n\n item.items =\n items?.map(({ title, url: childUrl }) => {\n if (childUrl && currentUrl) {\n childUrl = makeExternalUrl(childUrl, currentUrl, !!isPlayground);\n }\n\n let childActive = isUrlActive(childUrl, currentUrl);\n\n if (childActive) {\n isActive = childActive;\n }\n\n return {\n title,\n url: childUrl,\n isActive: childActive,\n };\n }) ?? [];\n\n item.isActive = isActive;\n\n return item;\n });\n}\n\nfunction makeExternalUrl(\n url: string,\n currentUrl: string,\n isPlayground: boolean\n): string {\n if (isPlayground) {\n if (url.startsWith(PLAY_URL)) {\n return url.replace(PLAY_URL, '/');\n } else {\n return `${KOTLINLANG_URL}${url}`;\n }\n }\n\n return url;\n}\n","// extracted by mini-css-extract-plugin\nexport const nav = \"ktl-horizontal-menu-module_nav_xYv4i\";\nexport const menuList = \"ktl-horizontal-menu-module_menu-list_7oi3W\";\nexport const menuItemWrap = \"ktl-horizontal-menu-module_menu-item-wrap_dnVf-\";\nexport const menuItem = \"ktl-horizontal-menu-module_menu-item_Z+YKZ\";\nexport const expanded = \"ktl-horizontal-menu-module_expanded_thibK\";\nexport const itemActive = \"ktl-horizontal-menu-module_item-active_+iyf-\";\nexport const dropdownMenu = \"ktl-horizontal-menu-module_dropdown-menu_dVOw-\";\nexport const fadeIn = \"ktl-horizontal-menu-module_fade-in_Q2pCx\";\nexport const darkTheme = \"ktl-horizontal-menu-module_dark-theme_Lp065\";\nexport const dropdownMenuItem = \"ktl-horizontal-menu-module_dropdown-menu-item_wRlcN\";\nexport const active = \"ktl-horizontal-menu-module_active_azHwP\";\nexport const dropdownMenuExpanded = \"ktl-horizontal-menu-module_dropdown-menu-expanded_L0RWy\";\nexport const dropdownMenuAlignRight = \"ktl-horizontal-menu-module_dropdown-menu-align-right_HS-oO\";","import classNames from 'classnames';\nimport React, { FC, useEffect, useState } from 'react';\nimport { Theme } from '@rescui/ui-contexts/lib/parts/theme-context';\nimport * as styles from './horizontal-menu.module.pcss';\nimport { MenuItem } from '../nav-scheme';\nimport { useTextStyles } from '@rescui/typography';\nimport { LinkHandler } from 'src/helper/link-handler';\n\ninterface DropdownMenuProps {\n items: MenuItem[];\n isExpanded: boolean;\n alignRight: boolean;\n linkHandler?: LinkHandler;\n}\n\nconst DropdownMenu: FC<DropdownMenuProps> = ({\n items,\n isExpanded,\n alignRight,\n linkHandler,\n}) => {\n const textCn = useTextStyles();\n\n return (\n <ul\n className={classNames(styles.dropdownMenu, textCn('rs-text-2'), {\n [styles.dropdownMenuExpanded]: isExpanded,\n [styles.dropdownMenuAlignRight]: alignRight,\n })}\n >\n {items.map((item, key) => {\n const Tag = !item.isActive && item.url ? 'a' : 'span';\n\n return (\n <li key={key}>\n <Tag\n className={classNames(styles.dropdownMenuItem, {\n [styles.active]: item.isActive,\n })}\n {...(item.url\n ? {\n href: item.url,\n onClick: linkHandler\n ? (event) => item.url && linkHandler(event, item.url)\n : undefined,\n }\n : {})}\n >\n {item.title}\n </Tag>\n </li>\n );\n })}\n </ul>\n );\n};\n\ninterface HorizontalMenuItemProps {\n item: MenuItem;\n onMouseEnter: (item: MenuItem) => void;\n onMouseLeave: () => void;\n isExpanded: boolean;\n isLast: boolean;\n linkHandler?: LinkHandler;\n}\n\nconst HorizontalMenuItem: FC<HorizontalMenuItemProps> = ({\n item,\n onMouseEnter,\n onMouseLeave,\n isExpanded,\n isLast,\n linkHandler,\n}) => {\n const Tag = item.isActive || !item.url ? 'span' : 'a';\n const textCn = useTextStyles();\n const handleEnter = () => onMouseEnter(item);\n\n return (\n <li\n className={styles.menuItemWrap}\n onMouseEnter={handleEnter}\n onMouseLeave={onMouseLeave}\n >\n <Tag\n {...(item.url\n ? {\n href: item.url,\n onClick: linkHandler\n ? (event) => item.url && linkHandler(event, item.url)\n : undefined,\n }\n : {})}\n key={item.title}\n className={classNames(styles.menuItem, textCn('rs-text-2'), {\n [styles.itemActive]: item.isActive,\n [styles.expanded]: isExpanded && !!item.items?.length,\n })}\n >\n {item.title}\n </Tag>\n {!!item.items?.length && (\n <DropdownMenu\n items={item.items}\n isExpanded={isExpanded}\n alignRight={isLast}\n linkHandler={linkHandler}\n />\n )}\n </li>\n );\n};\n\ninterface HorizontalMenuProps {\n items: MenuItem[];\n theme: Theme;\n linkHandler?: LinkHandler;\n}\n\nexport const HorizontalMenu: FC<HorizontalMenuProps> = ({\n items,\n theme,\n linkHandler,\n}) => {\n const [activeIndex, setActiveIndex] = useState(-1);\n const [debouncedActiveIndex, setDebouncedActiveIndex] = useState(activeIndex);\n\n useEffect(() => {\n const handler = setTimeout(\n () => setDebouncedActiveIndex(activeIndex),\n activeIndex !== -1 ? 200 : 400\n );\n return () => clearTimeout(handler);\n }, [activeIndex]);\n\n const handleEnter = (item: MenuItem) =>\n setActiveIndex(items.findIndex((val) => val === item));\n const handleLeave = () => setActiveIndex(-1);\n\n return (\n <nav\n className={classNames(styles.nav, {\n [styles.darkTheme]: theme === 'dark',\n })}\n >\n <ul className={styles.menuList}>\n {items.map((item, index) => (\n <HorizontalMenuItem\n item={item}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n isExpanded={index === debouncedActiveIndex}\n isLast={index === items.length - 1}\n key={index}\n linkHandler={linkHandler}\n />\n ))}\n </ul>\n </nav>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.847 6.861A6.99 6.99 0 009.587 3a6.997 6.997 0 104.186 12.601l6.106 6.106 1.414-1.414-6.107-6.106a6.99 6.99 0 00.66-7.326zM14.587 10a5 5 0 11-10.001 0 5 5 0 0110 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSearch;","import React, { FC } from 'react';\nimport * as styles from './search-button.pcss';\nimport classNames from 'classnames';\nimport SearchIcon from './search.svg';\n\ninterface SearchButtonProps {\n onClick?: () => void;\n isActive: boolean;\n}\nexport const SearchButton: FC<SearchButtonProps> = ({ onClick, isActive }) => {\n return (\n <button\n type=\"button\"\n className={classNames(styles.button, {\n [styles.active]: isActive,\n })}\n aria-label=\"Search\"\n onClick={onClick}\n >\n <SearchIcon />\n </button>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const button = \"ktl-search-button_button_JUyxv\";\nexport const active = \"ktl-search-button_active_G-dk1\";","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgHamburgerIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M4 5h16v2H4V5zm0 6h16v2H4v-2zm16 6H4v2h16v-2z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgHamburgerIcon;","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCloseIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 16,\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.707 1.707L14.293.293 8 6.586 1.707.293.293 1.707 6.586 8 .293 14.293l1.414 1.414L8 9.414l6.293 6.293 1.414-1.414L9.414 8l6.293-6.293z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgCloseIcon;","import React, { FC } from 'react';\nimport * as styles from './menu-button.pcss';\nimport classNames from 'classnames';\nimport HamburgerIcon from './hamburger-icon.svg';\nimport CloseIcon from './close-icon.svg';\n\ninterface MenuButtonProps {\n onClick: () => void;\n isExpanded: boolean;\n}\n\nexport const MenuButton: FC<MenuButtonProps> = ({ onClick, isExpanded }) => {\n return (\n <button\n type=\"button\"\n className={classNames(styles.button)}\n aria-haspopup=\"true\"\n aria-label=\"Open the navigation\"\n onClick={onClick}\n >\n {isExpanded ? <CloseIcon /> : <HamburgerIcon />}\n </button>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const button = \"ktl-menu-button_button_InVin\";","function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n// Older browsers don't support event options, feature detect it.\n\n// Adopted and modified solution from Bohdan Didukh (2017)\n// https://stackoverflow.com/questions/41594997/ios-10-safari-prevent-scrolling-behind-a-fixed-overlay-and-maintain-scroll-posi\n\nvar hasPassiveEvents = false;\nif (typeof window !== 'undefined') {\n var passiveTestOptions = {\n get passive() {\n hasPassiveEvents = true;\n return undefined;\n }\n };\n window.addEventListener('testPassive', null, passiveTestOptions);\n window.removeEventListener('testPassive', null, passiveTestOptions);\n}\n\nvar isIosDevice = typeof window !== 'undefined' && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === 'MacIntel' && window.navigator.maxTouchPoints > 1);\n\n\nvar locks = [];\nvar documentListenerAdded = false;\nvar initialClientY = -1;\nvar previousBodyOverflowSetting = void 0;\nvar previousBodyPaddingRight = void 0;\n\n// returns true if `el` should be allowed to receive touchmove events.\nvar allowTouchMove = function allowTouchMove(el) {\n return locks.some(function (lock) {\n if (lock.options.allowTouchMove && lock.options.allowTouchMove(el)) {\n return true;\n }\n\n return false;\n });\n};\n\nvar preventDefault = function preventDefault(rawEvent) {\n var e = rawEvent || window.event;\n\n // For the case whereby consumers adds a touchmove event listener to document.\n // Recall that we do document.addEventListener('touchmove', preventDefault, { passive: false })\n // in disableBodyScroll - so if we provide this opportunity to allowTouchMove, then\n // the touchmove event on document will break.\n if (allowTouchMove(e.target)) {\n return true;\n }\n\n // Do not prevent if the event has more than one touch (usually meaning this is a multi touch gesture like pinch to zoom).\n if (e.touches.length > 1) return true;\n\n if (e.preventDefault) e.preventDefault();\n\n return false;\n};\n\nvar setOverflowHidden = function setOverflowHidden(options) {\n // If previousBodyPaddingRight is already set, don't set it again.\n if (previousBodyPaddingRight === undefined) {\n var _reserveScrollBarGap = !!options && options.reserveScrollBarGap === true;\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n\n if (_reserveScrollBarGap && scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = scrollBarGap + 'px';\n }\n }\n\n // If previousBodyOverflowSetting is already set, don't set it again.\n if (previousBodyOverflowSetting === undefined) {\n previousBodyOverflowSetting = document.body.style.overflow;\n // Setting overflow on body/documentElement synchronously in Desktop Safari slows down\n // the responsiveness for some reason. Setting within a setTimeout fixes this.\n setTimeout(function () {\n document.body.style.overflow = 'hidden';\n });\n }\n};\n\nvar restoreOverflowSetting = function restoreOverflowSetting() {\n // Setting overflow on body/documentElement synchronously in Desktop Safari slows down\n // the responsiveness for some reason. Setting within a setTimeout fixes this.\n setTimeout(function () {\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n\n // Restore previousBodyPaddingRight to undefined so setOverflowHidden knows it\n // can be set again.\n previousBodyPaddingRight = undefined;\n }\n\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n\n // Restore previousBodyOverflowSetting to undefined\n // so setOverflowHidden knows it can be set again.\n previousBodyOverflowSetting = undefined;\n }\n });\n};\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions\nvar isTargetElementTotallyScrolled = function isTargetElementTotallyScrolled(targetElement) {\n return targetElement ? targetElement.scrollHeight - targetElement.scrollTop <= targetElement.clientHeight : false;\n};\n\nvar handleScroll = function handleScroll(event, targetElement) {\n var clientY = event.targetTouches[0].clientY - initialClientY;\n\n if (allowTouchMove(event.target)) {\n return false;\n }\n\n if (targetElement && targetElement.scrollTop === 0 && clientY > 0) {\n // element is at the top of its scroll.\n return preventDefault(event);\n }\n\n if (isTargetElementTotallyScrolled(targetElement) && clientY < 0) {\n // element is at the bottom of its scroll.\n return preventDefault(event);\n }\n\n event.stopPropagation();\n return true;\n};\n\nexport var disableBodyScroll = function disableBodyScroll(targetElement, options) {\n if (isIosDevice) {\n // targetElement must be provided, and disableBodyScroll must not have been\n // called on this targetElement before.\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.');\n return;\n }\n\n if (targetElement && !locks.some(function (lock) {\n return lock.targetElement === targetElement;\n })) {\n var lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [lock]);\n\n targetElement.ontouchstart = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n initialClientY = event.targetTouches[0].clientY;\n }\n };\n targetElement.ontouchmove = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n handleScroll(event, targetElement);\n }\n };\n\n if (!documentListenerAdded) {\n document.addEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = true;\n }\n }\n } else {\n setOverflowHidden(options);\n var _lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [_lock]);\n }\n};\n\nexport var clearAllBodyScrollLocks = function clearAllBodyScrollLocks() {\n if (isIosDevice) {\n // Clear all locks ontouchstart/ontouchmove handlers, and the references.\n locks.forEach(function (lock) {\n lock.targetElement.ontouchstart = null;\n lock.targetElement.ontouchmove = null;\n });\n\n if (documentListenerAdded) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n\n locks = [];\n\n // Reset initial clientY.\n initialClientY = -1;\n } else {\n restoreOverflowSetting();\n locks = [];\n }\n};\n\nexport var enableBodyScroll = function enableBodyScroll(targetElement) {\n if (isIosDevice) {\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.');\n return;\n }\n\n targetElement.ontouchstart = null;\n targetElement.ontouchmove = null;\n\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n\n if (documentListenerAdded && locks.length === 0) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n\n documentListenerAdded = false;\n }\n } else {\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n if (!locks.length) {\n restoreOverflowSetting();\n }\n }\n};\n\n","import React, {\n CSSProperties,\n FC,\n Fragment,\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport * as styles from './menu-popup.module.pcss';\nimport { MenuItem } from '../nav-scheme';\nimport classNames from 'classnames';\nimport { MenuButton } from './menu-button/menu-button';\nimport { useTextStyles } from '@rescui/typography';\nimport { LinkHandler } from 'src/helper/link-handler';\nimport {\n disableBodyScroll,\n enableBodyScroll,\n clearAllBodyScrollLocks,\n} from 'body-scroll-lock';\n\ninterface MenuItemProps {\n item: MenuItem;\n level: number;\n linkHandler?: LinkHandler;\n}\n\ninterface MenuItemStyle extends CSSProperties {\n '--level': number;\n}\n\nconst MenuListItem: FC<MenuItemProps> = ({ item, level, linkHandler }) => {\n const Tag = item.url ? 'a' : 'span';\n const style: MenuItemStyle = {\n '--level': level,\n };\n const handleClick = useCallback(\n (event) => linkHandler && item.url && linkHandler(event, item.url),\n []\n );\n\n return (\n <Tag\n {...(item.url\n ? {\n href: item.url,\n onClick: handleClick,\n }\n : {})}\n className={classNames(styles.menuItem, {\n [styles.menuItemRoot]: level === 0,\n [styles.active]: item.isActive,\n [styles.activeWithChild]: item.items && item.items.length,\n })}\n style={style}\n >\n {item.title}\n </Tag>\n );\n};\n\ninterface MenuListProps {\n items: MenuItem[];\n level: number;\n linkHandler?: LinkHandler;\n}\n\nconst MenuList: FC<MenuListProps> = ({ items, level, linkHandler }) => {\n return (\n <>\n {items.map((item, i) => (\n <Fragment key={i}>\n <MenuListItem item={item} level={level} linkHandler={linkHandler} />\n {item.items && item.items.length > 0 && (\n <MenuList\n items={item.items}\n level={level + 1}\n linkHandler={linkHandler}\n />\n )}\n </Fragment>\n ))}\n </>\n );\n};\n\ninterface MenuPopupProps {\n items: MenuItem[];\n isExpanded: boolean;\n setExpand: React.Dispatch<React.SetStateAction<boolean>>;\n headerRef: React.RefObject<HTMLElement>;\n linkHandler?: LinkHandler;\n}\n\ninterface NavStyles {\n top?: number;\n}\n\nexport const MenuPopup: FC<MenuPopupProps> = ({\n items,\n isExpanded,\n setExpand,\n headerRef,\n linkHandler,\n}) => {\n const navRef = useRef<null | HTMLElement>(null);\n const textCn = useTextStyles();\n const [navStyle, setNavStyle] = useState<NavStyles>({});\n\n useEffect(() => {\n return () => {\n setExpand(false);\n clearAllBodyScrollLocks();\n };\n }, []);\n\n useLayoutEffect(() => {\n if (headerRef.current) {\n setNavStyle({ top: headerRef.current.getBoundingClientRect().bottom });\n }\n }, [isExpanded, headerRef]);\n\n const handleClick = useCallback(() => {\n if (navRef.current) {\n isExpanded\n ? enableBodyScroll(navRef.current)\n : disableBodyScroll(navRef.current);\n }\n setExpand(!isExpanded);\n }, [isExpanded, navRef]);\n\n return (\n <>\n <MenuButton onClick={handleClick} isExpanded={isExpanded} />\n\n <nav\n style={navStyle}\n ref={navRef}\n className={classNames(styles.menuPopup, textCn('rs-text-2'), {\n [styles.menuPopupExpanded]: isExpanded,\n })}\n >\n <MenuList items={items} level={0} linkHandler={linkHandler} />\n </nav>\n </>\n );\n};\n","// extracted by mini-css-extract-plugin\nexport const menuPopup = \"ktl-menu-popup-module_menu-popup_Yqtnq\";\nexport const menuItem = \"ktl-menu-popup-module_menu-item_f6wvh\";\nexport const active = \"ktl-menu-popup-module_active_DrZav\";\nexport const activeWithChild = \"ktl-menu-popup-module_active-with-child_BDnrW\";\nexport const menuItemRoot = \"ktl-menu-popup-module_menu-item-root_C-hkN\";\nexport const menuPopupExpanded = \"ktl-menu-popup-module_menu-popup-expanded_FlujR\";","var _radialGradient, _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgKotlinLogoSmall(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\"\n }, props), _radialGradient || (_radialGradient = /*#__PURE__*/React.createElement(\"radialGradient\", {\n id: \"kotlin-logo-small_svg__a\",\n cx: 22.432,\n cy: 3.493,\n r: 21.679,\n gradientTransform: \"translate(-.19 .042) scale(.9998)\",\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.003,\n stopColor: \"#e44857\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.469,\n stopColor: \"#c711e1\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#7f52ff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"url(#kotlin-logo-small_svg__a)\",\n d: \"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z\"\n })));\n}\n\nexport default SvgKotlinLogoSmall;","// extracted by mini-css-extract-plugin\nexport const logoSmall = \"ktl-logo-small-module_logo-small_7ddNl\";\nexport const link = \"ktl-logo-small-module_link_6gruv\";\nexport const iconWrap = \"ktl-logo-small-module_icon-wrap_BFVBd\";\nexport const icon = \"ktl-logo-small-module_icon_JM+yC\";","import React, { FC } from 'react';\nimport KotlinLogoSmall from './kotlin-logo-small.svg';\nimport * as styles from './logo-small.module.pcss';\nimport classNames from 'classnames';\nimport { useTextStyles } from '@rescui/typography';\nimport { KOTLINLANG_URL } from 'src/consts';\n\ninterface LogoSmallProps {\n homeUrl: string;\n homeTitle: string;\n className?: string;\n}\n\nexport const LogoSmall: FC<LogoSmallProps> = ({\n homeTitle,\n homeUrl,\n className,\n}) => {\n const textCn = useTextStyles();\n\n return (\n <div className={classNames(styles.logoSmall, className)}>\n <a href={KOTLINLANG_URL} className={styles.iconWrap}>\n <KotlinLogoSmall className={styles.icon} />\n </a>\n <a href={homeUrl} className={classNames(styles.link, textCn('rs-h3'))}>\n {homeTitle}\n </a>\n </div>\n );\n};\n","import React, {\n FC,\n ForwardedRef,\n forwardRef,\n useImperativeHandle,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { ThemeProvider } from '@rescui/ui-contexts';\nimport { Theme } from '@rescui/ui-contexts/lib/parts/theme-context';\nimport useResizeObserver from '@react-hook/resize-observer';\nimport { LogoLarge } from './logo-large/logo-large';\nimport * as styles from './header.module.pcss';\nimport { getNavScheme } from './nav-scheme';\nimport { HorizontalMenu } from './horizontal-menu/horizontal-menu';\nimport { SearchButton } from './search-button/search-button';\nimport { MenuPopup } from './menu-popup/menu-popup';\nimport { LogoSmall } from './logo-small/logo-small';\nimport classNames from 'classnames';\nimport { LinkHandler } from 'src/helper/link-handler';\nimport { IsUrlActive } from 'src/helper/is-url-active';\n\nexport interface HeaderProps {\n currentUrl?: string;\n currentTitle?: string;\n productWebUrl?: string;\n hasSearch?: boolean;\n onSearchClick?: () => void;\n className?: string;\n hasBorder?: boolean;\n dropdownTheme?: Theme;\n linkHandler?: LinkHandler;\n isPlayground?: boolean;\n isUrlActive?: IsUrlActive;\n}\n\nconst MENU_POPUP_BREAKPOINT = 640;\n\nexport const Header: FC<HeaderProps> = forwardRef(\n (\n {\n productWebUrl,\n hasSearch = false,\n onSearchClick,\n currentUrl,\n currentTitle,\n className,\n hasBorder = true,\n dropdownTheme = 'dark',\n linkHandler,\n isPlayground,\n isUrlActive,\n },\n forwardedRef?: ForwardedRef<null | HTMLElement>\n ) => {\n const [menuPopupExpanded, setMenuPopupExpanded] = useState(false);\n const [isMenuPopupVisible, setIsMenuPopupVisible] = useState(false);\n const items = useMemo(\n () => getNavScheme(isUrlActive, currentUrl, isPlayground),\n [isUrlActive, currentUrl, isPlayground]\n );\n const headerRef = useRef<null | HTMLElement>(null);\n useImperativeHandle<null | HTMLElement, null | HTMLElement>(\n forwardedRef,\n () => headerRef.current\n );\n\n useLayoutEffect(() => {\n setIsMenuPopupVisible(\n (headerRef.current?.getBoundingClientRect?.().width ?? 0) <=\n MENU_POPUP_BREAKPOINT\n );\n }, [headerRef]);\n\n useResizeObserver(headerRef, (entry) =>\n setIsMenuPopupVisible(entry.contentRect.width <= MENU_POPUP_BREAKPOINT)\n );\n\n return (\n <ThemeProvider theme={'dark'}>\n <header\n ref={headerRef}\n className={classNames(styles.headerMenu, className, {\n [styles.withMenuPopup]: menuPopupExpanded,\n [styles.border]: hasBorder,\n })}\n >\n {currentTitle &&\n currentUrl &&\n (isMenuPopupVisible && !menuPopupExpanded ? (\n <LogoSmall homeTitle={currentTitle} homeUrl={currentUrl} />\n ) : (\n <LogoLarge productWebUrl={productWebUrl} />\n ))}\n\n {!isMenuPopupVisible && (\n <HorizontalMenu\n items={items}\n theme={dropdownTheme}\n linkHandler={linkHandler}\n />\n )}\n\n <SearchButton\n onClick={onSearchClick}\n isActive={hasSearch && !!onSearchClick}\n />\n\n {isMenuPopupVisible && (\n <MenuPopup\n items={items}\n setExpand={setMenuPopupExpanded}\n isExpanded={menuPopupExpanded}\n headerRef={headerRef}\n linkHandler={linkHandler}\n />\n )}\n </header>\n </ThemeProvider>\n );\n }\n);\n","import { Header } from './header';\nexport default Header;\n\nexport * from './nav-scheme';\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","f","g","Fragment","Symbol","for","h","m","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","n","p","ref","__self","__source","q","c","a","k","b","d","e","l","defaultProps","$$typeof","type","props","_owner","current","jsx","jsxs","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getter","__esModule","definition","o","defineProperty","enumerable","get","obj","prop","r","toStringTag","value","ResizeObserverBoxOptions","resizeObservers","msg","trigger","freeze","ResizeObserverSize","inlineSize","blockSize","this","DOMRectReadOnly","x","y","width","height","top","left","bottom","right","toJSON","_a","fromRect","rectangle","isSVG","target","SVGElement","isHidden","getBBox","_b","offsetWidth","offsetHeight","getClientRects","isElement","Element","scope","ownerDocument","defaultView","global","window","cache","WeakMap","scrollRegexp","verticalRegexp","IE","test","navigator","userAgent","parseDimension","pixel","parseFloat","size","switchSizes","zeroBoxes","devicePixelContentBoxSize","borderBoxSize","contentBoxSize","contentRect","calculateBoxSizes","forceRecalculation","has","set","cs","getComputedStyle","svg","ownerSVGElement","removePadding","boxSizing","writingMode","canScrollVertically","overflowY","canScrollHorizontally","overflowX","paddingTop","paddingRight","paddingBottom","paddingLeft","borderTop","borderTopWidth","borderRight","borderRightWidth","borderBottom","borderBottomWidth","horizontalPadding","verticalPadding","horizontalBorderArea","borderLeftWidth","verticalBorderArea","horizontalScrollbarThickness","clientHeight","verticalScrollbarThickness","clientWidth","widthReduction","heightReduction","contentWidth","contentHeight","borderBoxWidth","borderBoxHeight","boxes","Math","round","devicePixelRatio","calculateBoxSize","observedBox","DEVICE_PIXEL_CONTENT_BOX","BORDER_BOX","ResizeObserverEntry","calculateDepthForNode","node","Infinity","depth","parent","parentNode","broadcastActiveObservations","shallowestDepth","callbacks","forEach","ro","activeTargets","entries","ot","entry","targetDepth","lastReportedSize","callback","observer","splice","_i","callbacks_1","gatherActiveObservationsAtDepth","skippedTargets","observationTargets","isActive","process","event","some","ErrorEvent","message","document","createEvent","initEvent","dispatchEvent","queueMicroTask","toggle_1","el_1","createTextNode","MutationObserver","cb","observe","characterData","textContent","watching","observerConfig","attributes","childList","subtree","events","time","timeout","Date","now","scheduled","scheduler","Scheduler","_this","stopped","listener","schedule","run","until","elementsHaveResized","start","requestAnimationFrame","stop","body","addEventListener","name","disconnect","removeEventListener","updateCount","ResizeObservation","CONTENT_BOX","tagName","isReplacedElement","display","ResizeObserverDetail","resizeObserver","observerMap","getObservationIndex","ResizeObserverController","connect","detail","options","firstObservation","box","unobserve","index","lastObservation","indexOf","slice","ResizeObserver","TypeError","createElement","storedValue","fn","lastArgs","frameId","wrapperFn","_len","args","_key","cancel","cancelAnimationFrame","_ref","_resizeObserver","getResizeObserver","Map","obs","cbs","subscribe","_callbacks$get","unsubscribe","_callbacks$get2","delete","cbIndex","createResizeObserver","storedCallback","didUnsubscribe","targetEl","_radialGradient","_path","_g","_extends","assign","source","xmlns","viewBox","id","cx","cy","gradientTransform","gradientUnits","offset","stopColor","fill","KOTLINLANG_URL","LogoLarge","productWebUrl","className","version","match","exec","getProductVersion","textCn","useTextStyles","hardness","href","SOLUTIONS_TITLE","MULTIPLATFORM_MOBILE_TITLE","MULTIPLATFORM_MOBILE_URL","SERVER_SIDE_TITLE","SERVER_SIDE_URL","WEB_FRONTEND_TITLE","WEB_FRONTEND_URL","DATA_SCIENCE_TITLE","DATA_SCIENCE_URL","ANDROID_TITLE","ANDROID_URL","DOCS_TITLE","DOCS_URL","COMMUNITY_TITLE","COMMUNITY_URL","TEACH_TITLE","TEACH_URL","PLAY_TITLE","PLAY_TITLE_FULL","PLAY_URL","PLAY_HANDSON_URL","PLAY_HANDSON_TITLE","PLAY_EXAMPLES_URL","PLAY_EXAMPLES_TITLE","PLAY_KOANS_URL","PLAY_KOANS_TITLE","KOTLIN_DOCS_TITLE","KOTLIN_DOCS_URL","KMM_DOCS_TITLE","KMM_DOCS_URL","navScheme","title","url","items","getNavScheme","isUrlActive","currentUrl","isPlayground","map","makeExternalUrl","item","childUrl","childActive","startsWith","replace","DropdownMenu","isExpanded","alignRight","linkHandler","Tag","onClick","HorizontalMenuItem","onMouseEnter","onMouseLeave","isLast","HorizontalMenu","theme","activeIndex","setActiveIndex","useState","debouncedActiveIndex","setDebouncedActiveIndex","useEffect","handler","setTimeout","clearTimeout","handleEnter","findIndex","val","handleLeave","fillRule","clipRule","SearchButton","MenuButton","_toConsumableArray","arr","arr2","from","hasPassiveEvents","passiveTestOptions","passive","isIosDevice","platform","maxTouchPoints","locks","documentListenerAdded","initialClientY","previousBodyOverflowSetting","previousBodyPaddingRight","allowTouchMove","el","lock","preventDefault","rawEvent","touches","restoreOverflowSetting","style","overflow","disableBodyScroll","targetElement","console","error","concat","ontouchstart","targetTouches","clientY","ontouchmove","scrollTop","scrollHeight","isTargetElementTotallyScrolled","stopPropagation","handleScroll","_reserveScrollBarGap","reserveScrollBarGap","scrollBarGap","innerWidth","documentElement","setOverflowHidden","_lock","MenuListItem","level","handleClick","useCallback","MenuList","MenuPopup","setExpand","headerRef","navRef","useRef","navStyle","setNavStyle","useLayoutEffect","getBoundingClientRect","filter","enableBodyScroll","LogoSmall","homeTitle","homeUrl","Header","forwardRef","forwardedRef","hasSearch","onSearchClick","currentTitle","hasBorder","dropdownTheme","menuPopupExpanded","setMenuPopupExpanded","isMenuPopupVisible","setIsMenuPopupVisible","useMemo","useImperativeHandle","useResizeObserver","ThemeProvider"],"sourceRoot":""}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jetbrains/kotlin-web-site-ui",
3
3
  "description": "UI components for Kotlin web sites development",
4
- "version": "2.9.0-alpha.4",
4
+ "version": "2.9.0",
5
5
  "license": "Apache-2.0",
6
6
  "author": "JetBrains",
7
7
  "files": [
@@ -38,6 +38,7 @@
38
38
  "@babel/preset-react": "^7.13.13",
39
39
  "@babel/preset-typescript": "^7.13.0",
40
40
  "@babel/register": "^7.11.5",
41
+ "@react-hook/resize-observer": "^1.2.5",
41
42
  "@rescui/button": "^0.2.1",
42
43
  "@rescui/checkbox": "^0.1.0",
43
44
  "@rescui/icons": "^0.2.0",