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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/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-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-popup-module_no-scrollable_vFAwD{overflow:hidden}}.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-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%}}
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,CCbF,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,CI0EA,sF,CJxEA,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,CD6MF,sC,CC1MA,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,a,CAGF,0C,CACE,iBC3DJ,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,CHoTA,oC,CGlTA,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}","@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 .no-scrollable {\n overflow: hidden;\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":"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,CCbF,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,CI0EA,sF,CJxEA,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,CD6MF,sC,CC1MA,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,CHgTA,oC,CG9SA,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}","@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":""}
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 l(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var o=typeof n;if("string"===o||"number"===o)e.push(n);else if(Array.isArray(n)){if(n.length){var i=l.apply(null,n);i&&e.push(i)}}else if("object"===o)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?(l.default=l,e.exports=l):void 0===(n=function(){return l}.apply(t,[]))||(e.exports=n)}()},5251:function(e,t,n){"use strict";var r=n(3910),l=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var o=Symbol.for;l=o("react.element"),t.Fragment=o("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,o={},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)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===o[r]&&(o[r]=t[r]);return{$$typeof:l,type:e,key:s,ref:c,props:o,_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 l=t[r];if(void 0!==l)return l.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.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 O},ANDROID_URL:function(){return j},COMMUNITY_TITLE:function(){return S},COMMUNITY_URL:function(){return N},DATA_SCIENCE_TITLE:function(){return T},DATA_SCIENCE_URL:function(){return L},DOCS_TITLE:function(){return w},DOCS_URL:function(){return b},KMM_DOCS_TITLE:function(){return K},KMM_DOCS_URL:function(){return V},KOTLIN_DOCS_TITLE:function(){return F},KOTLIN_DOCS_URL:function(){return B},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 Y},PLAY_KOANS_URL:function(){return D},PLAY_TITLE:function(){return C},PLAY_TITLE_FULL:function(){return M},PLAY_URL:function(){return I},SERVER_SIDE_TITLE:function(){return x},SERVER_SIDE_URL:function(){return E},SOLUTIONS_TITLE:function(){return v},TEACH_TITLE:function(){return R},TEACH_URL:function(){return A},WEB_FRONTEND_TITLE:function(){return k},WEB_FRONTEND_URL:function(){return y},default:function(){return ge},getNavScheme:function(){return q}});var e=n(3910),t=require("@rescui/ui-contexts");var l,o,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),l||(l=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"}))),o||(o=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 p=n(5893);const f=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,l=(0,d.useTextStyles)();return(0,p.jsxs)("div",{className:c()("ktl-logo-large-module_container_+5pgf",n,l("rs-text-3",{hardness:"average"})),children:[(0,p.jsx)("a",{className:"ktl-logo-large-module_link_iZIEJ",href:m,"aria-label":"Kotlin Home Page",children:(0,p.jsx)(u,{})}),r&&(0,p.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",v="Solutions",_="Multiplatform Mobile",g="/lp/mobile/",x="Server-side",E="/lp/server-side/",k="Web frontend",y="/docs/js-overview.html",T="Data science",L="/docs/data-science-overview.html",O="Android",j="/docs/android-overview.html",w="Docs",b="/docs/home.html",S="Community",N="/community/",R="Teach",A="/education/",C="Play",M="Playground",I="https://play.kotlinlang.org/",P="".concat(I,"hands-on"),U="Hands-on",z="".concat(I,"byExample"),H="Examples",D="".concat(I,"koans"),Y="Koans",F="Kotlin",B="/docs/home.html",K="KMM",V="/docs/mobile/home.html",W=[{title:v,url:null,items:[{title:_,url:g},{title:x,url:E},{title:k,url:y},{title:T,url:L},{title:O,url:j}]},{title:w,url:B},{title:S,url:N},{title:R,url:A},{title:C,url:null,items:[{title:M,url:I},{title:U,url:P},{title:H,url:z},{title:Y,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 W.map((r=>{var l;let{title:o,url:i,items:a}=r;i&&t&&(i=G(i,t,!!n));const u={title:o,url:i};let s=e(i,t);return u.items=null!==(l=null==a?void 0:a.map((r=>{let{title:l,url:o}=r;o&&t&&(o=G(o,t,!!n));let i=e(o,t);return i&&(s=i),{title:l,url:o,isActive:i}})))&&void 0!==l?l:[],u.isActive=s,u}))}function G(e,t,n){return n?e.startsWith(I)?e.replace(I,"/"):"".concat(m).concat(e):e}const Z=e=>{let{items:t,isExpanded:n,alignRight:r,linkHandler:l}=e;const o=(0,d.useTextStyles)();return(0,p.jsx)("ul",{className:c()("ktl-horizontal-menu-module_dropdown-menu_dVOw-",o("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,p.jsx)("li",{children:(0,p.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:l?t=>e.url&&l(t,e.url):void 0}:{},children:e.title})},t)}))})},J=t=>{var n,r;let{item:l,onMouseEnter:o,onMouseLeave:i,isExpanded:a,isLast:u,linkHandler:s}=t;const m=l.isActive||!l.url?"span":"a",f=(0,d.useTextStyles)();return(0,p.jsxs)("li",{className:"ktl-horizontal-menu-module_menu-item-wrap_dnVf-",onMouseEnter:()=>o(l),onMouseLeave:i,children:[(0,e.createElement)(m,{...l.url?{href:l.url,onClick:s?e=>l.url&&s(e,l.url):void 0}:{},key:l.title,className:c()("ktl-horizontal-menu-module_menu-item_Z+YKZ",f("rs-text-2"),{"ktl-horizontal-menu-module_item-active_+iyf-":l.isActive,"ktl-horizontal-menu-module_expanded_thibK":a&&!(null===(n=l.items)||void 0===n||!n.length)})},l.title),!(null===(r=l.items)||void 0===r||!r.length)&&(0,p.jsx)(Z,{items:l.items,isExpanded:a,alignRight:u,linkHandler:s})]})},$=t=>{let{items:n,theme:r,linkHandler:l}=t;const[o,i]=(0,e.useState)(-1),[a,u]=(0,e.useState)(o);(0,e.useEffect)((()=>{const e=setTimeout((()=>u(o)),-1!==o?200:400);return()=>clearTimeout(e)}),[o]);const s=e=>i(n.findIndex((t=>t===e))),d=()=>i(-1);return(0,p.jsx)("nav",{className:c()("ktl-horizontal-menu-module_nav_xYv4i",{"ktl-horizontal-menu-module_dark-theme_Lp065":"dark"===r}),children:(0,p.jsx)("ul",{className:"ktl-horizontal-menu-module_menu-list_7oi3W",children:n.map(((e,t)=>(0,p.jsx)(J,{item:e,onMouseEnter:s,onMouseLeave:d,isExpanded:t===a,isLast:t===n.length-1,linkHandler:l},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,p.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,p.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 le,oe=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),le||(le=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,p.jsx)("button",{type:"button",className:c()("ktl-menu-button_button_InVin"),"aria-haspopup":"true","aria-label":"Open the navigation",onClick:t,children:n?(0,p.jsx)(ae,{}):(0,p.jsx)(oe,{})})},se=e=>{let{item:t,level:n,linkHandler:r}=e;const l=t.url?"a":"span",o={"--level":n};return(0,p.jsx)(l,{...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:o,children:t.title})},ce=t=>{let{items:n,level:r,linkHandler:l}=t;return(0,p.jsx)(p.Fragment,{children:n.map(((t,n)=>(0,p.jsxs)(e.Fragment,{children:[(0,p.jsx)(se,{item:t,level:r,linkHandler:l}),t.items&&t.items.length>0&&(0,p.jsx)(ce,{items:t.items,level:r+1,linkHandler:l})]},n)))})},de=t=>{let{items:n,isExpanded:r,setExpand:l,headerRef:o,linkHandler:i}=t;const a=(0,d.useTextStyles)(),[u,s]=(0,e.useState)({});(0,e.useLayoutEffect)((()=>{o.current&&s({top:o.current.getBoundingClientRect().bottom})}),[r]);const m=(0,e.useCallback)((()=>{"undefined"!=typeof document&&document.body.classList.toggle("ktl-menu-popup-module_no-scrollable_vFAwD",!r),l(!r)}),[r]);return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(ue,{onClick:m,isExpanded:r}),(0,p.jsx)("nav",{style:u,className:c()("ktl-menu-popup-module_menu-popup_Yqtnq",a("rs-text-2"),{"ktl-menu-popup-module_menu-popup-expanded_FlujR":r}),children:(0,p.jsx)(ce,{items:n,level:0,linkHandler:i})})]})};var me,pe;function fe(){return fe=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},fe.apply(this,arguments)}var he=function(t){return e.createElement("svg",fe({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},t),me||(me=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"}))),pe||(pe=e.createElement("path",{fill:"url(#kotlin-logo-small_svg__a)",d:"M22.87 21.68H3.94V2.76h18.93l-9.66 9.32z"})))};const ve=e=>{let{homeTitle:t,homeUrl:n,className:r}=e;const l=(0,d.useTextStyles)();return(0,p.jsxs)("div",{className:c()("ktl-logo-small-module_logo-small_7ddNl",r),children:[(0,p.jsx)("a",{href:m,className:"ktl-logo-small-module_icon-wrap_BFVBd",children:(0,p.jsx)(he,{className:"ktl-logo-small-module_icon_JM+yC"})}),(0,p.jsx)("a",{href:n,className:c()("ktl-logo-small-module_link_6gruv",l("rs-h3")),children:t})]})},_e=(0,e.forwardRef)(((n,r)=>{let{productWebUrl:l,hasSearch:o=!1,onSearchClick:i,currentUrl:a,currentTitle:u,className:s,hasBorder:d=!0,dropdownTheme:m="dark",linkHandler:v,isPlayground:_,isUrlActive:g}=n;const[x,E]=(0,e.useState)(!1),k=(0,e.useMemo)((()=>q(g,a,_)),[g,a,_]),y=(0,e.useRef)(null);return(0,e.useImperativeHandle)(r,(()=>y.current)),(0,p.jsx)(t.ThemeProvider,{theme:"dark",children:(0,p.jsxs)("header",{ref:y,className:c()("ktl-header-module_header-menu_E3vzo",s,{"ktl-header-module_with-menu-popup_DcoOT":x,"ktl-header-module_border_smGpe":d}),children:[(0,p.jsx)(f,{productWebUrl:l,className:u&&a&&!x?h:null}),!!u&&!!a&&(0,p.jsx)(ve,{homeTitle:u,homeUrl:a,className:x?h:null}),(0,p.jsx)($,{items:k,theme:m,linkHandler:v}),(0,p.jsx)(te,{onClick:i,isActive:o&&!!i}),(0,p.jsx)(de,{items:k,setExpand:E,isExpanded:x,headerRef:y,linkHandler:v})]})})}));var ge=_e}(),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 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}();
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/./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\";","import React, {\n CSSProperties,\n FC,\n Fragment,\n useCallback,\n useLayoutEffect,\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';\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 items={item.items} level={level + 1} linkHandler={linkHandler} />\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 textCn = useTextStyles();\n const [navStyle, setNavStyle] = useState<NavStyles>({});\n\n useLayoutEffect(() => {\n if (headerRef.current) {\n setNavStyle({ top: headerRef.current.getBoundingClientRect().bottom });\n }\n }, [isExpanded]);\n\n const handleClick = useCallback(() => {\n if (typeof document !== `undefined`) {\n document.body.classList.toggle(styles.noScrollable, !isExpanded);\n }\n setExpand(!isExpanded);\n }, [isExpanded]);\n\n return (\n <>\n <MenuButton onClick={handleClick} isExpanded={isExpanded} />\n\n <nav\n style={navStyle}\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\";\nexport const noScrollable = \"ktl-menu-popup-module_no-scrollable_vFAwD\";","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","MenuListItem","level","style","MenuList","MenuPopup","setExpand","headerRef","navStyle","setNavStyle","useLayoutEffect","top","getBoundingClientRect","bottom","handleClick","useCallback","document","body","classList","toggle","LogoSmall","homeTitle","homeUrl","Header","forwardRef","forwardedRef","hasSearch","onSearchClick","currentTitle","hasBorder","dropdownTheme","menuPopupExpanded","setMenuPopupExpanded","useMemo","useRef","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/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":""}
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.1",
4
+ "version": "2.9.0-alpha.2",
5
5
  "license": "Apache-2.0",
6
6
  "author": "JetBrains",
7
7
  "files": [
@@ -23,11 +23,11 @@
23
23
  },
24
24
  "peerDependencies": {
25
25
  "@rescui/checkbox": "^0.1.0",
26
+ "@rescui/icons": "^0.2.0",
26
27
  "@rescui/input": "^0.1.2",
27
28
  "@rescui/tooltip": "^0.1.2",
28
29
  "@rescui/typography": "0.0.1",
29
30
  "@rescui/ui-contexts": "0.0.2",
30
- "@rescui/icons": "^0.2.0",
31
31
  "formik": "^2.2.9",
32
32
  "react": ">= 16.8.6 < 18",
33
33
  "react-dom": ">= 16.8.6 < 18"
@@ -51,6 +51,7 @@
51
51
  "@storybook/builder-webpack5": "^6.3.0-alpha.13",
52
52
  "@storybook/react": "^6.2.8",
53
53
  "@svgr/webpack": "^5.5.0",
54
+ "@types/body-scroll-lock": "^3.1.0",
54
55
  "@types/react": "^17.0.0",
55
56
  "@types/react-dom": "^17.0.0",
56
57
  "@types/react-swipeable-views": "^0.13.1",
@@ -61,6 +62,7 @@
61
62
  "babel-loader": "^8.2.2",
62
63
  "babel-plugin-module-resolver": "^4.1.0",
63
64
  "bem-cn-fast": "^1.0.2",
65
+ "body-scroll-lock": "3.1.3",
64
66
  "classnames": "^2.3.1",
65
67
  "cookie": "^0.4.1",
66
68
  "copy-webpack-plugin": "^8.1.1",