xv-webcomponents 1.17.1-staging.0 → 1.17.3-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/{xv-accordion-v2_45.cjs.entry.js → xv-accordion-v2_47.cjs.entry.js} +402 -67
  3. package/dist/cjs/xv-header-next.cjs.entry.js +1 -1
  4. package/dist/cjs/xv-mega-menu-next.cjs.entry.js +2 -2
  5. package/dist/cjs/xv-webcomponents.cjs.js +1 -1
  6. package/dist/collection/collection-manifest.json +2 -0
  7. package/dist/collection/components/xv-content-switcher/_vars.js +14 -0
  8. package/dist/collection/components/xv-content-switcher/xv-content-switcher-item/xv-content-switcher-item.css +134 -0
  9. package/dist/collection/components/xv-content-switcher/xv-content-switcher-item/xv-content-switcher-item.js +118 -0
  10. package/dist/collection/components/xv-content-switcher/xv-content-switcher.css +275 -0
  11. package/dist/collection/components/xv-content-switcher/xv-content-switcher.js +310 -0
  12. package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.js +1 -1
  13. package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.js +1 -1
  14. package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.js +2 -2
  15. package/dist/collection/components/xv-data-table/xv-data-table.js +1 -1
  16. package/dist/collection/components/xv-datepicker/xv-datepicker.css +4 -4
  17. package/dist/collection/components/xv-datepicker/xv-datepicker.js +2 -2
  18. package/dist/collection/components/xv-dropdown/xv-dropdown-item/xv-dropdown-item.js +1 -1
  19. package/dist/collection/components/xv-dropdown/xv-dropdown.css +23 -6
  20. package/dist/collection/components/xv-dropdown/xv-dropdown.js +205 -4
  21. package/dist/collection/components/xv-file-uploader/xv-file-uploader.js +1 -1
  22. package/dist/collection/components/xv-footer/xv-footer.js +1 -1
  23. package/dist/collection/components/xv-header/xv-header.js +1 -1
  24. package/dist/collection/components/xv-header-next/xv-header-next.js +1 -1
  25. package/dist/collection/components/xv-image-viewer/xv-image-viewer.js +1 -1
  26. package/dist/collection/components/xv-link/xv-link.js +1 -1
  27. package/dist/collection/components/xv-mega-menu/xv-mega-menu.js +2 -2
  28. package/dist/collection/components/xv-mega-menu-next/xv-mega-menu-next.js +2 -2
  29. package/dist/collection/components/xv-modal/xv-modal.js +1 -1
  30. package/dist/collection/components/xv-notification/xv-notification.js +1 -1
  31. package/dist/collection/components/xv-number-input/xv-number-input.css +6 -3
  32. package/dist/collection/components/xv-number-input/xv-number-input.js +2 -2
  33. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu-item/xv-overflow-menu-item.js +1 -1
  34. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu.js +2 -2
  35. package/dist/collection/components/xv-pagination/xv-pagination.js +1 -1
  36. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator-item/xv-progress-indicator-item.js +1 -1
  37. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.js +1 -1
  38. package/dist/collection/components/xv-radio/xv-radio.css +2 -2
  39. package/dist/collection/components/xv-radio/xv-radio.js +2 -2
  40. package/dist/collection/components/xv-slider/xv-slider.css +2 -2
  41. package/dist/collection/components/xv-slider/xv-slider.js +1 -1
  42. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js +1 -1
  43. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js +1 -1
  44. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js +1 -1
  45. package/dist/collection/components/xv-table/xv-table.js +1 -1
  46. package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js +1 -1
  47. package/dist/collection/components/xv-tag/xv-tag.js +1 -1
  48. package/dist/collection/components/xv-tag-combobox/xv-tag-combobox.css +2 -2
  49. package/dist/collection/components/xv-tag-combobox/xv-tag-combobox.js +2 -2
  50. package/dist/collection/components/xv-text-input/xv-text-input.css +1 -1
  51. package/dist/collection/components/xv-text-input/xv-text-input.js +2 -2
  52. package/dist/collection/components/xv-textarea/xv-textarea.css +2 -2
  53. package/dist/collection/components/xv-textarea/xv-textarea.js +2 -2
  54. package/dist/collection/components/xv-tile/xv-tile.js +2 -2
  55. package/dist/collection/components/xv-toggle/xv-toggle.js +1 -1
  56. package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.js +1 -1
  57. package/dist/collection/components/xv-tooltip/xv-tooltip.js +2 -2
  58. package/dist/esm/loader.js +1 -1
  59. package/dist/esm/{xv-accordion-v2_45.entry.js → xv-accordion-v2_47.entry.js} +401 -68
  60. package/dist/esm/xv-header-next.entry.js +1 -1
  61. package/dist/esm/xv-mega-menu-next.entry.js +2 -2
  62. package/dist/esm/xv-webcomponents.js +1 -1
  63. package/dist/types/components/xv-content-switcher/_vars.d.ts +13 -0
  64. package/dist/types/components/xv-content-switcher/xv-content-switcher-item/xv-content-switcher-item.d.ts +32 -0
  65. package/dist/types/components/xv-content-switcher/xv-content-switcher.d.ts +78 -0
  66. package/dist/types/components/xv-dropdown/xv-dropdown.d.ts +24 -1
  67. package/dist/types/components.d.ts +249 -0
  68. package/dist/xv-webcomponents/{p-1b5a4f4c.entry.js → p-1cb6cc34.entry.js} +1 -1
  69. package/dist/xv-webcomponents/p-422065b1.entry.js +8 -0
  70. package/dist/xv-webcomponents/{p-50f8cd72.entry.js → p-dc64e134.entry.js} +1 -1
  71. package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
  72. package/package.json +1 -1
  73. package/dist/xv-webcomponents/p-593183a5.entry.js +0 -8
@@ -1 +1 @@
1
- import{r as t,c as e,h as r,F as a,H as n,a as o}from"./p-Cv2gugMt.js";import{a as i}from"./p-OqHMuwQF.js";const p=class{constructor(r){t(this,r),this.openChange=e(this,"openChange",7),this.mobileSize=991,this.open=!1,this.menuItems=[],this.applicationContext="Xv",this.menuLoading=!1}handleClickOutside(t){this.open&&!this.el.contains(t.target)&&this.handleClose()}handleClose(){this.open=!1,this.activeItem=this.activeGroup=void 0,this.openChange.emit(this.open)}get isMobile(){return window.outerWidth<=this.mobileSize}setActiveItem(t){var e,r,a,n,o;this.activeItem=(null===(e=this.activeItem)||void 0===e?void 0:e.id)===(null==t?void 0:t.id)?void 0:t,this.isMobile&&1!==((null===(a=null===(r=this.activeItem)||void 0===r?void 0:r.groups)||void 0===a?void 0:a.length)||0)||this.setActiveGroup(null===(o=null===(n=this.activeItem)||void 0===n?void 0:n.groups)||void 0===o?void 0:o[0]),this.isMobile||(this.open=!!this.activeItem,!this.open&&this.handleClose())}setActiveGroup(t){var e;this.activeGroup=this.isMobile&&(null===(e=this.activeGroup)||void 0===e?void 0:e.id)===(null==t?void 0:t.id)?void 0:t}navActionClick(t){window.location.href=t.url}parseMenuData(t){if(!t)return null;if(Array.isArray(t))return t;try{const e=JSON.parse(t);return Array.isArray(e)?e:null}catch(t){return console.warn("xv-mega-menu-next: invalid menu-data JSON",t),null}}async fetchMenuData(){try{this.menuItems=await i.get("/api-fd/v1/home/menu",{awaitWl:!0,credentials:"include"}).then((({data:t,meta:e})=>(this.applicationContext=e.applicationContext,t||[])))}catch(t){console.error("fetchMenuData error",t),this.menuItems=[]}}onMenuDataChange(t){const e=this.parseMenuData(t);e&&(this.menuItems=e)}componentWillLoad(){const t=this.parseMenuData(this.menuData);t?this.menuItems=t:this.fetchMenuData()}render(){return r(n,{key:"965990cf42dca77d9c87ea5d9f1af1765bd51305"},r("nav",{key:"1effa8fd4a5a36e29735b5b705e4de153e742942",class:{"xv-menu":!0,open:this.open}},this.menuLoading&&r("div",{key:"f2777eb6501f5de71be497e02148ea0e9a226e25",class:{"xv-menu-loader":!0,open:this.open}},r("xv-loader-v2",{key:"10a1559021022dcdf669ee7b1e4ac8bd4e6d2dad"})),r("ul",{key:"5f61b88c3813b76ae9d4d49ec7b589666486ea6b",class:{menu:!0,open:this.open}},this.menuItems.map((t=>{var e,n;return r("li",{class:{"menu-item":!0,active:t.id===(null===(e=this.activeItem)||void 0===e?void 0:e.id)}},t.route?r("xv-link-v2",{variant:"ghost",href:t.route.route},r("p",{class:"menu-item-label"},null===(n=t.route)||void 0===n?void 0:n.label)):r(a,null,r("p",{class:"menu-item-label",onClick:()=>this.setActiveItem(t)},null==t?void 0:t.label),r("ul",{class:"menu-item-groups"},t.groups.map((e=>{var a;return r("li",{class:{group:!0,active:(null===(a=this.activeGroup)||void 0===a?void 0:a.id)===e.id}},e.label&&t.groups.length>1&&r("div",{class:"group-label",onClick:()=>this.setActiveGroup(e)},r("span",{class:"group-label-text"},e.label),r("span",{class:"group-label-icon"})),r("div",{class:"group-container"},r("div",{class:{"group-container-absolute":!0,noLabel:!(e.label&&t.groups.length>1)}},r("div",{class:"group-menus"},r("ul",{class:{"group-menus-categories":!0,inline:"inline"===e.layout}},e.categories.map((t=>r("li",{class:"category"},r("p",{class:"category-label"},t.label),r("ul",{class:"category-routes"},t.routes.map((t=>r("li",{class:"route"},r("xv-link-v2",{size:"lg",variant:"ghost",href:t.route||"#"},t.label),t.tag&&r("xv-tag-v2",{class:"route-tag",size:"sm",color:"#161616",bg:"#E0E0E0"},t.tag))))))))),r("ul",{class:"group-menus-actions"},e.actions.map((t=>r("li",{class:"action"},"link"===t.type&&r("xv-link-v2",{variant:"standalone",href:null==t?void 0:t.url},t.label,r("span",{class:"link-chevron",slot:"icon-right"},"→")),"button"===t.type&&r("xv-button-v2",{onClick:()=>this.navActionClick(t),block:!0,variant:"tertiary"},t.label)))))),(null==e?void 0:e.card)&&r("div",{class:"group-card"},r("xv-card-v2",{media:"Komsa"!==this.applicationContext?e.card.image:void 0,variant:this.isMobile?"horizontal":"vertical"},r("h5",{slot:"header",class:"group-card-title"},e.card.title),r("p",{slot:"body",class:"group-card-desc"},e.card.description),e.card.linkLabel&&r("xv-link-v2",{slot:"footer",variant:"standalone",href:e.card.linkUrl||"#"},e.card.linkLabel,r("span",{class:"link-chevron",slot:"icon-right"},"→")))))))})))))})),r("li",{key:"9ca18d5cdfb37a82e050751542b18eba7b98b158",class:"menu--right"},r("slot",{key:"a82d9e4fb0a0d2e482f97a51b66e0e974db2c6f5",name:"menu-right"})),this.open&&r("li",{key:"0d4ef64ba1f80209cc3a77c602a52e39e5cde885",class:"menu--backdrop",onClick:()=>this.handleClose()}))))}get el(){return o(this)}static get watchers(){return{menuData:[{onMenuDataChange:0}]}}};p.style='.xv-container{width:100%;max-width:1170px;margin-inline:auto}@media (min-width: 576px){.xv-container{max-width:540px}}@media (min-width: 768px){.xv-container{max-width:720px}}@media (min-width: 992px){.xv-container{max-width:960px;padding-inline:var(--bs-gutter-x, 0.75rem)}}@media (min-width: 1200px){.xv-container{max-width:1140px}}@media (min-width: 1400px){.xv-container{max-width:1320px}}.xv-tooltip[role=tooltip]{position:absolute;background-color:var(--background-inverse, #333333);color:var(--text-on-color);padding:var(--spacing-03) var(--spacing-04);border-radius:3px;font-size:var(--fz-sm);z-index:999;min-width:min(150px, 90vw);max-width:min(400px, 90vw)}.xv-tooltip[role=tooltip]::after{content:"";position:absolute;width:0;height:0;border-style:solid}.xv-tooltip[role=tooltip][data-popper-placement=top]::after{bottom:-5px;left:50%;transform:translateX(-50%);border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-start]::after{bottom:-5px;left:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-end]::after{bottom:-5px;right:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom]::after{top:-5px;left:50%;transform:translateX(-50%);border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-start]::after{top:-5px;left:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-end]::after{top:-5px;right:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=left]::after{top:50%;right:-5px;transform:translateY(-50%);border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-start]::after{top:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-end]::after{bottom:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=right]::after{top:50%;left:-5px;transform:translateY(-50%);border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-start]::after{top:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-end]::after{bottom:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-container{width:100%;max-width:1170px;margin-inline:auto}@media (min-width: 576px){.xv-container{max-width:540px}}@media (min-width: 768px){.xv-container{max-width:720px}}@media (min-width: 992px){.xv-container{max-width:960px;padding-inline:var(--bs-gutter-x, 0.75rem)}}@media (min-width: 1200px){.xv-container{max-width:1140px}}@media (min-width: 1400px){.xv-container{max-width:1320px}}.xv-tooltip[role=tooltip]{position:absolute;background-color:var(--background-inverse, #333333);color:var(--text-on-color);padding:var(--spacing-03) var(--spacing-04);border-radius:3px;font-size:var(--fz-sm);z-index:999;min-width:min(150px, 90vw);max-width:min(400px, 90vw)}.xv-tooltip[role=tooltip]::after{content:"";position:absolute;width:0;height:0;border-style:solid}.xv-tooltip[role=tooltip][data-popper-placement=top]::after{bottom:-5px;left:50%;transform:translateX(-50%);border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-start]::after{bottom:-5px;left:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-end]::after{bottom:-5px;right:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom]::after{top:-5px;left:50%;transform:translateX(-50%);border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-start]::after{top:-5px;left:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-end]::after{top:-5px;right:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=left]::after{top:50%;right:-5px;transform:translateY(-50%);border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-start]::after{top:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-end]::after{bottom:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=right]::after{top:50%;left:-5px;transform:translateY(-50%);border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-start]::after{top:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-end]::after{bottom:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}:host{--menu-group-width:244px;--menu-group-height:454px;--link-visited:var(--link-primary)}.xv-menu{background:inherit;position:relative;font-family:var(--ff-work-sans), sans-serif}@media (min-width: 992px){.xv-menu{min-height:55px}}.xv-menu-loader{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;background-color:rgba(255, 255, 255, 0.7);display:flex;align-items:center;justify-content:center}@media (max-width: 991px){.xv-menu-loader:not(.open){display:none}}@media (max-width: 991px){.xv-menu.open{padding-bottom:env(safe-area-inset-bottom);max-height:calc(100vh - 120px);overflow:auto;overscroll-behavior:contain}}.xv-menu_mobile{position:relative;display:none}@media (max-width: 991px){.xv-menu_mobile{display:inline-flex}}.xv-menu ul{margin:0;padding:0;list-style:none}.xv-menu .link-chevron{display:inline-block;margin-inline-start:var(--spacing-01)}.xv-menu .menu{overflow-x:auto;display:flex;justify-content:flex-start;column-gap:var(--spacing-08)}@media (max-width: 991px){.xv-menu .menu{flex-direction:column;display:none}}.xv-menu .menu--right{margin-left:auto;display:flex;align-items:center;align-self:center}@media (max-width: 991px){.xv-menu .menu--right{margin-left:unset;padding-block:var(--spacing-05)}}.xv-menu .menu--backdrop{z-index:-1;background-color:rgba(0, 0, 0, 0.3);position:fixed;top:0;left:0;width:100%;height:100%}@media (max-width: 991px){.xv-menu .menu.open{display:flex}}.xv-menu .menu-item:hover .menu-item-label{border-bottom-color:var(--interactive-02)}.xv-menu .menu-item.active .menu-item-groups{z-index:990;display:flex}.xv-menu .menu-item.active .menu-item-label{border-bottom-color:var(--interactive-02)}@media (max-width: 991px){.xv-menu .menu-item.active{border-bottom:1px solid #E1E4ED}}.xv-menu .menu-item-label{margin:0;padding-block:var(--spacing-05, 16px);color:inherit;font-size:16px;line-height:24px;font-family:var(--ff-body), sans-serif;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:250ms ease-in-out border-bottom-color;user-select:none;white-space:nowrap}@media (max-width: 991px){.xv-menu .menu-item-label{border-bottom:1px solid #E1E4ED}}.xv-menu .menu-item-groups{z-index:-1;position:absolute;left:0;top:100%;width:100%;background-color:var(--background, #fff);display:none;flex-direction:column;border:1px solid var(--border-subtle-01);row-gap:var(--spacing-05);padding-block:var(--spacing-08) var(--spacing-06);min-height:var(--menu-group-height);border-radius:0 0 8px 8px;overflow:hidden;color:var(--interactive-01, #273435)}@media (max-width: 991px){.xv-menu .menu-item-groups{min-height:unset;padding-block:unset;position:relative;row-gap:unset;border:none}}.xv-menu .menu .group{display:flex;align-items:flex-start}@media (max-width: 991px){.xv-menu .menu .group{flex-direction:column;align-items:stretch}}.xv-menu .menu .group-label{user-select:none;min-width:var(--menu-group-width);max-width:var(--menu-group-width);color:var(--text-primary, #333);font-size:16px;font-style:normal;font-weight:400;line-height:137.5%;display:flex;column-gap:var(--spacing-04);text-align:right;justify-content:flex-end;cursor:pointer}.xv-menu .menu .group-label-text{text-overflow:ellipsis;overflow:hidden}.xv-menu .menu .group-label-icon{width:8px;height:8px;border-bottom:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(-45deg);transform-origin:bottom;align-self:center}@media (max-width: 991px){.xv-menu .menu .group-label{max-width:unset;min-width:unset;align-items:stretch;justify-content:flex-start;padding-block:var(--spacing-05)}}.xv-menu .menu .group-container{flex:1;display:none}.xv-menu .menu .group-container-absolute{position:absolute;top:0;right:0;width:calc(100% - (var(--menu-group-width) + var(--spacing-06) + var(--spacing-09) + var(--spacing-05)));min-height:calc(100% - (var(--spacing-08) + var(--spacing-06)));padding:var(--spacing-08) var(--spacing-06) var(--spacing-06) var(--spacing-09);display:flex;background-color:var(--layer-01, #F7F7F7)}@media (max-width: 991px){.xv-menu .menu .group-container-absolute{position:unset;flex-direction:column;width:100%;flex:1;padding:var(--spacing-06) 0;background-color:var(--background)}}.xv-menu .menu .group-container-absolute.noLabel{left:0;width:calc(100% - (var(--spacing-06) + var(--spacing-09)))}.xv-menu .menu .group.active .group-label{font-weight:600}@media (max-width: 991px){.xv-menu .menu .group.active .group-label-icon{transform-origin:center;transform:rotate(45deg)}}.xv-menu .menu .group.active .group-container{display:flex}.xv-menu .menu .group-menus{flex:1;display:flex;flex-direction:column;row-gap:var(--spacing-06)}.xv-menu .menu .group-menus-categories{display:flex;row-gap:var(--spacing-07);column-gap:var(--spacing-05);flex:1}@media (max-width: 991px){.xv-menu .menu .group-menus-categories{flex-direction:column;gap:var(--spacing-07)}}.xv-menu .menu .group-menus-categories.inline{flex-direction:column;flex-wrap:wrap;max-height:365px}@media (max-width: 991px){.xv-menu .menu .group-menus-categories.inline{max-height:unset}}.xv-menu .menu .group-menus-categories.inline .category{flex:none}.xv-menu .menu .group-menus-actions{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-05)}@media (max-width: 991px){.xv-menu .menu .group-menus-actions{flex-direction:column;justify-content:stretch;align-items:stretch;text-align:center}}.xv-menu .menu .group-card{box-sizing:content-box;max-width:228px;min-width:200px;padding-left:var(--spacing-06);border-left:1px solid var(--border-subtle-01)}@media (min-width: 992px) and (max-width: 1199px){.xv-menu .menu .group-card{display:none}}@media (max-width: 991px){.xv-menu .menu .group-card{margin-block-start:var(--spacing-06);border-left:none;padding-left:0;max-width:unset;min-width:unset}}.xv-menu .menu .group-card .xv-card{box-shadow:none;background-color:var(--background, #fff)}@media (max-width: 991px){.xv-menu .menu .group-card .xv-card{width:unset}}.xv-menu .menu .group-card-title,.xv-menu .menu .group-card-desc{font-size:var(--fz-md, 14px);font-style:normal;line-height:18px;letter-spacing:0.16px}.xv-menu .menu .group-card .xv-link_standalone,.xv-menu .menu .group-card-title,.xv-menu .menu .group-card-desc{font-family:var(--ff-work-sans), sans-serif}.xv-menu .menu .group-card-title{color:var(--text-primary, #333);font-weight:600}.xv-menu .menu .group-card-desc{color:var(--text-secondary, #515151);font-weight:400;padding-top:var(--spacing-03);display:-webkit-box;-webkit-line-clamp:11;-webkit-box-orient:vertical;overflow:hidden}.xv-menu .menu .category{flex:1;display:flex;flex-direction:column;row-gap:var(--spacing-05)}@media (max-width: 991px){.xv-menu .menu .category{flex:0}.xv-menu .menu .category:not(:last-child){border-bottom:1px solid var(--border-subtle-01);padding-bottom:var(--spacing-04)}}.xv-menu .menu .category-label{margin:0;font-size:var(--fz-md, 14px);color:var(--text-secondary)}.xv-menu .menu .category-routes{display:flex;flex-direction:column;row-gap:var(--spacing-05)}.xv-menu .menu .route{display:inline-flex;align-items:center;column-gap:var(--spacing-03);position:relative;font-size:var(--fz-lg, 16px)}.xv-menu .menu .route .xv-link_ghost{font-family:var(--ff-work-sans), sans-serif}.xv-menu .menu .route .xv-link_ghost:hover{color:var(--link-primary)}@media (max-width: 991px){.xv-menu .menu .route{white-space:nowrap}}.xv-menu .menu .route .route-tag{font-size:9px}';export{p as xv_mega_menu_next}
1
+ import{r as t,c as e,h as r,F as a,H as n,a as o}from"./p-Cv2gugMt.js";import{a as i}from"./p-OqHMuwQF.js";const p=class{constructor(r){t(this,r),this.openChange=e(this,"openChange",7),this.mobileSize=991,this.open=!1,this.menuItems=[],this.applicationContext="Xv",this.menuLoading=!1}handleClickOutside(t){this.open&&!this.el.contains(t.target)&&this.handleClose()}handleClose(){this.open=!1,this.activeItem=this.activeGroup=void 0,this.openChange.emit(this.open)}get isMobile(){return window.outerWidth<=this.mobileSize}setActiveItem(t){var e,r,a,n,o;this.activeItem=(null===(e=this.activeItem)||void 0===e?void 0:e.id)===(null==t?void 0:t.id)?void 0:t,this.isMobile&&1!==((null===(a=null===(r=this.activeItem)||void 0===r?void 0:r.groups)||void 0===a?void 0:a.length)||0)||this.setActiveGroup(null===(o=null===(n=this.activeItem)||void 0===n?void 0:n.groups)||void 0===o?void 0:o[0]),this.isMobile||(this.open=!!this.activeItem,!this.open&&this.handleClose())}setActiveGroup(t){var e;this.activeGroup=this.isMobile&&(null===(e=this.activeGroup)||void 0===e?void 0:e.id)===(null==t?void 0:t.id)?void 0:t}navActionClick(t){window.location.href=t.url}parseMenuData(t){if(!t)return null;if(Array.isArray(t))return t;try{const e=JSON.parse(t);return Array.isArray(e)?e:null}catch(t){return console.warn("xv-mega-menu-next: invalid menu-data JSON",t),null}}async fetchMenuData(){try{this.menuItems=await i.get("/api-fd/v1/home/menu",{awaitWl:!0,credentials:"include"}).then((({data:t,meta:e})=>(this.applicationContext=e.applicationContext,t||[])))}catch(t){console.error("fetchMenuData error",t),this.menuItems=[]}}onMenuDataChange(t){const e=this.parseMenuData(t);e&&(this.menuItems=e)}componentWillLoad(){const t=this.parseMenuData(this.menuData);t?this.menuItems=t:this.fetchMenuData()}render(){return r(n,{key:"d73cfabbc7e69a974abd5c1c219544c2b9c5345e"},r("nav",{key:"6d2f78e2be424e7aaa8c1f1ee03430a800c14dcc",class:{"xv-menu":!0,open:this.open}},this.menuLoading&&r("div",{key:"0481d8317f0a0cd58a10114898ab1b60574bfced",class:{"xv-menu-loader":!0,open:this.open}},r("xv-loader-v2",{key:"f4104fbbf285165932c092423fe2eb431e6d7496"})),r("ul",{key:"e28819ff9c5bcebb32518831faf843085add3601",class:{menu:!0,open:this.open}},this.menuItems.map((t=>{var e,n;return r("li",{class:{"menu-item":!0,active:t.id===(null===(e=this.activeItem)||void 0===e?void 0:e.id)}},t.route?r("xv-link-v2",{variant:"ghost",href:t.route.route},r("p",{class:"menu-item-label"},null===(n=t.route)||void 0===n?void 0:n.label)):r(a,null,r("p",{class:"menu-item-label",onClick:()=>this.setActiveItem(t)},null==t?void 0:t.label),r("ul",{class:"menu-item-groups"},t.groups.map((e=>{var a;return r("li",{class:{group:!0,active:(null===(a=this.activeGroup)||void 0===a?void 0:a.id)===e.id}},e.label&&t.groups.length>1&&r("div",{class:"group-label",onClick:()=>this.setActiveGroup(e)},r("span",{class:"group-label-text"},e.label),r("span",{class:"group-label-icon"})),r("div",{class:"group-container"},r("div",{class:{"group-container-absolute":!0,noLabel:!(e.label&&t.groups.length>1)}},r("div",{class:"group-menus"},r("ul",{class:{"group-menus-categories":!0,inline:"inline"===e.layout}},e.categories.map((t=>r("li",{class:"category"},r("p",{class:"category-label"},t.label),r("ul",{class:"category-routes"},t.routes.map((t=>r("li",{class:"route"},r("xv-link-v2",{size:"lg",variant:"ghost",href:t.route||"#"},t.label),t.tag&&r("xv-tag-v2",{class:"route-tag",size:"sm",color:"#161616",bg:"#E0E0E0"},t.tag))))))))),r("ul",{class:"group-menus-actions"},e.actions.map((t=>r("li",{class:"action"},"link"===t.type&&r("xv-link-v2",{variant:"standalone",href:null==t?void 0:t.url},t.label,r("span",{class:"link-chevron",slot:"icon-right"},"→")),"button"===t.type&&r("xv-button-v2",{onClick:()=>this.navActionClick(t),block:!0,variant:"tertiary"},t.label)))))),(null==e?void 0:e.card)&&r("div",{class:"group-card"},r("xv-card-v2",{media:"Komsa"!==this.applicationContext?e.card.image:void 0,variant:this.isMobile?"horizontal":"vertical"},r("h5",{slot:"header",class:"group-card-title"},e.card.title),r("p",{slot:"body",class:"group-card-desc"},e.card.description),e.card.linkLabel&&r("xv-link-v2",{slot:"footer",variant:"standalone",href:e.card.linkUrl||"#"},e.card.linkLabel,r("span",{class:"link-chevron",slot:"icon-right"},"→")))))))})))))})),r("li",{key:"fbdfe095e7fb1988754c9d2d705128cae8d233f8",class:"menu--right"},r("slot",{key:"7de3bb434a940b67265b2b4e191f7a02a20f8404",name:"menu-right"})),this.open&&r("li",{key:"a35128e640465fec15c990e46fc778602238d2a5",class:"menu--backdrop",onClick:()=>this.handleClose()}))))}get el(){return o(this)}static get watchers(){return{menuData:[{onMenuDataChange:0}]}}};p.style='.xv-container{width:100%;max-width:1170px;margin-inline:auto}@media (min-width: 576px){.xv-container{max-width:540px}}@media (min-width: 768px){.xv-container{max-width:720px}}@media (min-width: 992px){.xv-container{max-width:960px;padding-inline:var(--bs-gutter-x, 0.75rem)}}@media (min-width: 1200px){.xv-container{max-width:1140px}}@media (min-width: 1400px){.xv-container{max-width:1320px}}.xv-tooltip[role=tooltip]{position:absolute;background-color:var(--background-inverse, #333333);color:var(--text-on-color);padding:var(--spacing-03) var(--spacing-04);border-radius:3px;font-size:var(--fz-sm);z-index:999;min-width:min(150px, 90vw);max-width:min(400px, 90vw)}.xv-tooltip[role=tooltip]::after{content:"";position:absolute;width:0;height:0;border-style:solid}.xv-tooltip[role=tooltip][data-popper-placement=top]::after{bottom:-5px;left:50%;transform:translateX(-50%);border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-start]::after{bottom:-5px;left:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-end]::after{bottom:-5px;right:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom]::after{top:-5px;left:50%;transform:translateX(-50%);border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-start]::after{top:-5px;left:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-end]::after{top:-5px;right:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=left]::after{top:50%;right:-5px;transform:translateY(-50%);border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-start]::after{top:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-end]::after{bottom:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=right]::after{top:50%;left:-5px;transform:translateY(-50%);border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-start]::after{top:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-end]::after{bottom:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-container{width:100%;max-width:1170px;margin-inline:auto}@media (min-width: 576px){.xv-container{max-width:540px}}@media (min-width: 768px){.xv-container{max-width:720px}}@media (min-width: 992px){.xv-container{max-width:960px;padding-inline:var(--bs-gutter-x, 0.75rem)}}@media (min-width: 1200px){.xv-container{max-width:1140px}}@media (min-width: 1400px){.xv-container{max-width:1320px}}.xv-tooltip[role=tooltip]{position:absolute;background-color:var(--background-inverse, #333333);color:var(--text-on-color);padding:var(--spacing-03) var(--spacing-04);border-radius:3px;font-size:var(--fz-sm);z-index:999;min-width:min(150px, 90vw);max-width:min(400px, 90vw)}.xv-tooltip[role=tooltip]::after{content:"";position:absolute;width:0;height:0;border-style:solid}.xv-tooltip[role=tooltip][data-popper-placement=top]::after{bottom:-5px;left:50%;transform:translateX(-50%);border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-start]::after{bottom:-5px;left:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=top-end]::after{bottom:-5px;right:12px;border-width:5px 5px 0 5px;border-color:var(--background-inverse, black) transparent transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom]::after{top:-5px;left:50%;transform:translateX(-50%);border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-start]::after{top:-5px;left:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=bottom-end]::after{top:-5px;right:12px;border-width:0 5px 5px 5px;border-color:transparent transparent var(--background-inverse, black) transparent}.xv-tooltip[role=tooltip][data-popper-placement=left]::after{top:50%;right:-5px;transform:translateY(-50%);border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-start]::after{top:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=left-end]::after{bottom:12px;right:-5px;border-width:5px 0 5px 5px;border-color:transparent transparent transparent var(--background-inverse, black)}.xv-tooltip[role=tooltip][data-popper-placement=right]::after{top:50%;left:-5px;transform:translateY(-50%);border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-start]::after{top:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}.xv-tooltip[role=tooltip][data-popper-placement=right-end]::after{bottom:12px;left:-5px;border-width:5px 5px 5px 0;border-color:transparent var(--background-inverse, black) transparent transparent}:host{--menu-group-width:244px;--menu-group-height:454px;--link-visited:var(--link-primary)}.xv-menu{background:inherit;position:relative;font-family:var(--ff-work-sans), sans-serif}@media (min-width: 992px){.xv-menu{min-height:55px}}.xv-menu-loader{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;background-color:rgba(255, 255, 255, 0.7);display:flex;align-items:center;justify-content:center}@media (max-width: 991px){.xv-menu-loader:not(.open){display:none}}@media (max-width: 991px){.xv-menu.open{padding-bottom:env(safe-area-inset-bottom);max-height:calc(100vh - 120px);overflow:auto;overscroll-behavior:contain}}.xv-menu_mobile{position:relative;display:none}@media (max-width: 991px){.xv-menu_mobile{display:inline-flex}}.xv-menu ul{margin:0;padding:0;list-style:none}.xv-menu .link-chevron{display:inline-block;margin-inline-start:var(--spacing-01)}.xv-menu .menu{overflow-x:auto;display:flex;justify-content:flex-start;column-gap:var(--spacing-08)}@media (max-width: 991px){.xv-menu .menu{flex-direction:column;display:none}}.xv-menu .menu--right{margin-left:auto;display:flex;align-items:center;align-self:center}@media (max-width: 991px){.xv-menu .menu--right{margin-left:unset;padding-block:var(--spacing-05)}}.xv-menu .menu--backdrop{z-index:-1;background-color:rgba(0, 0, 0, 0.3);position:fixed;top:0;left:0;width:100%;height:100%}@media (max-width: 991px){.xv-menu .menu.open{display:flex}}.xv-menu .menu-item:hover .menu-item-label{border-bottom-color:var(--interactive-02)}.xv-menu .menu-item.active .menu-item-groups{z-index:990;display:flex}.xv-menu .menu-item.active .menu-item-label{border-bottom-color:var(--interactive-02)}@media (max-width: 991px){.xv-menu .menu-item.active{border-bottom:1px solid #E1E4ED}}.xv-menu .menu-item-label{margin:0;padding-block:var(--spacing-05, 16px);color:inherit;font-size:16px;line-height:24px;font-family:var(--ff-body), sans-serif;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:250ms ease-in-out border-bottom-color;user-select:none;white-space:nowrap}@media (max-width: 991px){.xv-menu .menu-item-label{border-bottom:1px solid #E1E4ED}}.xv-menu .menu-item-groups{z-index:-1;position:absolute;left:0;top:100%;width:100%;background-color:var(--background, #fff);display:none;flex-direction:column;border:1px solid var(--border-subtle-01);row-gap:var(--spacing-05);padding-block:var(--spacing-08) var(--spacing-06);min-height:var(--menu-group-height);border-radius:0 0 8px 8px;overflow:hidden;color:var(--interactive-01, #273435)}@media (max-width: 991px){.xv-menu .menu-item-groups{min-height:unset;padding-block:unset;position:relative;row-gap:unset;border:none}}.xv-menu .menu .group{display:flex;align-items:flex-start}@media (max-width: 991px){.xv-menu .menu .group{flex-direction:column;align-items:stretch}}.xv-menu .menu .group-label{user-select:none;min-width:var(--menu-group-width);max-width:var(--menu-group-width);color:var(--text-primary, #333);font-size:16px;font-style:normal;font-weight:400;line-height:137.5%;display:flex;column-gap:var(--spacing-04);text-align:right;justify-content:flex-end;cursor:pointer}.xv-menu .menu .group-label-text{text-overflow:ellipsis;overflow:hidden}.xv-menu .menu .group-label-icon{width:8px;height:8px;border-bottom:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(-45deg);transform-origin:bottom;align-self:center}@media (max-width: 991px){.xv-menu .menu .group-label{max-width:unset;min-width:unset;align-items:stretch;justify-content:flex-start;padding-block:var(--spacing-05)}}.xv-menu .menu .group-container{flex:1;display:none}.xv-menu .menu .group-container-absolute{position:absolute;top:0;right:0;width:calc(100% - (var(--menu-group-width) + var(--spacing-06) + var(--spacing-09) + var(--spacing-05)));min-height:calc(100% - (var(--spacing-08) + var(--spacing-06)));padding:var(--spacing-08) var(--spacing-06) var(--spacing-06) var(--spacing-09);display:flex;background-color:var(--layer-01, #F7F7F7)}@media (max-width: 991px){.xv-menu .menu .group-container-absolute{position:unset;flex-direction:column;width:100%;flex:1;padding:var(--spacing-06) 0;background-color:var(--background)}}.xv-menu .menu .group-container-absolute.noLabel{left:0;width:calc(100% - (var(--spacing-06) + var(--spacing-09)))}.xv-menu .menu .group.active .group-label{font-weight:600}@media (max-width: 991px){.xv-menu .menu .group.active .group-label-icon{transform-origin:center;transform:rotate(45deg)}}.xv-menu .menu .group.active .group-container{display:flex}.xv-menu .menu .group-menus{flex:1;display:flex;flex-direction:column;row-gap:var(--spacing-06)}.xv-menu .menu .group-menus-categories{display:flex;row-gap:var(--spacing-07);column-gap:var(--spacing-05);flex:1}@media (max-width: 991px){.xv-menu .menu .group-menus-categories{flex-direction:column;gap:var(--spacing-07)}}.xv-menu .menu .group-menus-categories.inline{flex-direction:column;flex-wrap:wrap;max-height:365px}@media (max-width: 991px){.xv-menu .menu .group-menus-categories.inline{max-height:unset}}.xv-menu .menu .group-menus-categories.inline .category{flex:none}.xv-menu .menu .group-menus-actions{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-05)}@media (max-width: 991px){.xv-menu .menu .group-menus-actions{flex-direction:column;justify-content:stretch;align-items:stretch;text-align:center}}.xv-menu .menu .group-card{box-sizing:content-box;max-width:228px;min-width:200px;padding-left:var(--spacing-06);border-left:1px solid var(--border-subtle-01)}@media (min-width: 992px) and (max-width: 1199px){.xv-menu .menu .group-card{display:none}}@media (max-width: 991px){.xv-menu .menu .group-card{margin-block-start:var(--spacing-06);border-left:none;padding-left:0;max-width:unset;min-width:unset}}.xv-menu .menu .group-card .xv-card{box-shadow:none;background-color:var(--background, #fff)}@media (max-width: 991px){.xv-menu .menu .group-card .xv-card{width:unset}}.xv-menu .menu .group-card-title,.xv-menu .menu .group-card-desc{font-size:var(--fz-md, 14px);font-style:normal;line-height:18px;letter-spacing:0.16px}.xv-menu .menu .group-card .xv-link_standalone,.xv-menu .menu .group-card-title,.xv-menu .menu .group-card-desc{font-family:var(--ff-work-sans), sans-serif}.xv-menu .menu .group-card-title{color:var(--text-primary, #333);font-weight:600}.xv-menu .menu .group-card-desc{color:var(--text-secondary, #515151);font-weight:400;padding-top:var(--spacing-03);display:-webkit-box;-webkit-line-clamp:11;-webkit-box-orient:vertical;overflow:hidden}.xv-menu .menu .category{flex:1;display:flex;flex-direction:column;row-gap:var(--spacing-05)}@media (max-width: 991px){.xv-menu .menu .category{flex:0}.xv-menu .menu .category:not(:last-child){border-bottom:1px solid var(--border-subtle-01);padding-bottom:var(--spacing-04)}}.xv-menu .menu .category-label{margin:0;font-size:var(--fz-md, 14px);color:var(--text-secondary)}.xv-menu .menu .category-routes{display:flex;flex-direction:column;row-gap:var(--spacing-05)}.xv-menu .menu .route{display:inline-flex;align-items:center;column-gap:var(--spacing-03);position:relative;font-size:var(--fz-lg, 16px)}.xv-menu .menu .route .xv-link_ghost{font-family:var(--ff-work-sans), sans-serif}.xv-menu .menu .route .xv-link_ghost:hover{color:var(--link-primary)}@media (max-width: 991px){.xv-menu .menu .route{white-space:nowrap}}.xv-menu .menu .route .route-tag{font-size:9px}';export{p as xv_mega_menu_next}