website-utilities 1.0.418 → 1.0.420

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.
@@ -1 +1 @@
1
- :root{--w-default-space:20px;--w-extra-extra-small-width:360px;--w-extra-small-width:500px;--w-small-width:768px;--w-medium-width:992px;--w-large-width:1200px;--w-theme-background:#fff;--w-theme-primary:#76b82a;--w-theme-on-primary:#f0f6fc;--w-theme-secondary:#238636;--w-theme-on-secondary:#d6e9da;--w-theme-error:#723637;--w-theme-on-error:#fff;--w-theme-surface:#21262d;--w-theme-on-surface:#bbc2ca;--w-typography-font-family:Open Sans,open-sans,sans-serif;--w-typography-font-family-headline:Open Sans Condensed,open-sans-condensed,sans-serif}website-utilities{font-family:var(--w-typography-font-family,"Open Sans",open-sans,sans-serif);font-size:14px}website-utilities h1,website-utilities h2,website-utilities h3,website-utilities h4,website-utilities h5,website-utilities h6{font-family:var(--w-typography-font-family,"Open Sans",open-sans,sans-serif);line-height:1.1}website-utilities h1,website-utilities h2{font-family:var(--w-typography-font-family-headline,"Open Sans Condensed",open-sans-condensed,sans-serif);font-weight:400;font-size:3em}website-utilities h2{font-size:2em}website-utilities a,website-utilities a:focus,website-utilities a:hover,website-utilities a:visited{outline:none;-webkit-text-decoration:none;text-decoration:none}website-utilities .wu-action{cursor:pointer}website-utilities .wu-disable-scrolling{height:100%!important;overflow:hidden!important}website-utilities .wu-section-active{display:block}website-utilities .wu-section-inactive{display:none}website-utilities .wu-select{position:relative}website-utilities .wu-select__arrow{position:absolute;top:3px;right:15px;pointer-events:none}website-utilities .wu-select__arrow span{vertical-align:bottom;font-size:10px}website-utilities .wu-select select{position:static!important;padding-left:7px!important;padding-right:25px!important}website-utilities .wu-select select::-ms-expand{display:none}website-utilities .wu-checkbox{margin-top:2px;padding-top:3px}website-utilities .wu-checkbox label{padding-left:40px}website-utilities .wu-checkbox label .wu-checkbox__wrapper{margin-top:-2px;margin-left:-40px;position:absolute}website-utilities .wu-checkbox label .wu-checkbox__wrapper .wu-checkbox__wrapper__styled{border-radius:4px;border:2px solid var(--w-theme-primary,#76b82a);cursor:pointer;float:right;height:25px;padding:0;width:25px}website-utilities .wu-checkbox label .wu-checkbox__wrapper .wu-checkbox__wrapper__styled .wu-checkbox__wrapper__styled__checked{background:transparent;border:3px solid var(--w-theme-on-primary,#f0f6fc);border-top:none;border-right:none;height:8px;left:4px;opacity:0;position:absolute;top:5px;transform:rotate(-45deg);width:13px}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]{display:none}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]:checked~.wu-checkbox-styled>.wu-checkbox-styled-checked{opacity:1}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]:disabled~.wu-checkbox-styled{background-color:var(--w-theme-surface,#21262d)}website-utilities .wu-scroll-to-top{display:block;transition-property:bottom,opacity;transition-duration:.5s;position:fixed;right:var(--w-default-space,20px)}website-utilities .wu-scroll-to-top.wu-scroll-up{bottom:calc(var(--w-default-space, 20px)*3);opacity:0}website-utilities .wu-scroll-to-top.wu-scroll-down{bottom:var(--w-default-space,20px);opacity:1}website-utilities .wu-scroll-to-top.wu-top-settled{display:none}website-utilities .wu-priority-navigation>ul{list-style:none}website-utilities .wu-priority-navigation>ul>li{display:inline-block;position:relative}website-utilities .wu-priority-navigation>ul>li.wu-priority-navigation__overflow{display:none}website-utilities .wu-priority-navigation a{-webkit-text-decoration:none;text-decoration:none;color:#fff;display:inline-block;padding:10px 15px}website-utilities .wu-priority-navigation a:after{content:" ";position:absolute;left:0;top:0;width:100%;height:100%;border:none;box-sizing:border-box}website-utilities .wu-priority-navigation.resizing{overflow:hidden}website-utilities .wu-priority-navigation__overflow__list{display:block;width:-moz-max-content;width:max-content;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.35);position:absolute;top:95%;right:-20px;opacity:0;visibility:hidden;padding:5px 0;list-style:none}website-utilities .wu-priority-navigation__overflow__list.wu-priority-navigation__overflow__list--show{opacity:1;visibility:visible}website-utilities .wu-priority-navigation__overflow__list>li>a{color:#000;display:block}website-utilities .wu-priority-navigation__overflow__title{cursor:pointer;text-align:center;border-radius:50%;font-size:10px;width:2em;height:2em;line-height:2.2em;vertical-align:top;display:inline-block}website-utilities .wu-priority-navigation__list__item--hide{display:none!important}website-utilities .wu-priority-navigation__overflow--inline-block{display:inline-block!important}.wu-window-loading-cover{background-color:var(--w-surface-color,#21262d);top:0;left:0;position:fixed;height:100%;width:100%;z-index:1002!important}.wu-window-loading-cover .loading-text{position:absolute;inset:0;margin:auto;text-align:center;width:100%;height:100px;line-height:100px}.wu-window-loading-cover .loading-text span{display:inline-block;margin:0 5px;color:var(--w-on-surface-color,#bbc2ca)}.wu-window-loading-cover .loading-text span:first-child{filter:blur(0);animation:blur-text 1.5s linear 0s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(2){filter:blur(0);animation:blur-text 1.5s linear .2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(3){filter:blur(0);animation:blur-text 1.5s linear .4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(4){filter:blur(0);animation:blur-text 1.5s linear .6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(5){filter:blur(0);animation:blur-text 1.5s linear .8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(6){filter:blur(0);animation:blur-text 1.5s linear 1s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(7){filter:blur(0);animation:blur-text 1.5s linear 1.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(8){filter:blur(0);animation:blur-text 1.5s linear 1.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(9){filter:blur(0);animation:blur-text 1.5s linear 1.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(10){filter:blur(0);animation:blur-text 1.5s linear 1.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(11){filter:blur(0);animation:blur-text 1.5s linear 2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(12){filter:blur(0);animation:blur-text 1.5s linear 2.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(13){filter:blur(0);animation:blur-text 1.5s linear 2.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(14){filter:blur(0);animation:blur-text 1.5s linear 2.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(15){filter:blur(0);animation:blur-text 1.5s linear 2.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(16){filter:blur(0);animation:blur-text 1.5s linear 3s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(17){filter:blur(0);animation:blur-text 1.5s linear 3.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(18){filter:blur(0);animation:blur-text 1.5s linear 3.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(19){filter:blur(0);animation:blur-text 1.5s linear 3.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(20){filter:blur(0);animation:blur-text 1.5s linear 3.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(21){filter:blur(0);animation:blur-text 1.5s linear 4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(22){filter:blur(0);animation:blur-text 1.5s linear 4.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(23){filter:blur(0);animation:blur-text 1.5s linear 4.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(24){filter:blur(0);animation:blur-text 1.5s linear 4.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(25){filter:blur(0);animation:blur-text 1.5s linear 4.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(26){filter:blur(0);animation:blur-text 1.5s linear 5s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(27){filter:blur(0);animation:blur-text 1.5s linear 5.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(28){filter:blur(0);animation:blur-text 1.5s linear 5.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(29){filter:blur(0);animation:blur-text 1.5s linear 5.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(30){filter:blur(0);animation:blur-text 1.5s linear 5.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(31){filter:blur(0);animation:blur-text 1.5s linear 6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(32){filter:blur(0);animation:blur-text 1.5s linear 6.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(33){filter:blur(0);animation:blur-text 1.5s linear 6.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(34){filter:blur(0);animation:blur-text 1.5s linear 6.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(35){filter:blur(0);animation:blur-text 1.5s linear 6.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(36){filter:blur(0);animation:blur-text 1.5s linear 7s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(37){filter:blur(0);animation:blur-text 1.5s linear 7.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(38){filter:blur(0);animation:blur-text 1.5s linear 7.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(39){filter:blur(0);animation:blur-text 1.5s linear 7.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(40){filter:blur(0);animation:blur-text 1.5s linear 7.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(41){filter:blur(0);animation:blur-text 1.5s linear 8s infinite alternate}::view-transition-old(wu-menu-highlight){height:100%}::view-transition-new(wu-menu-highlight){height:100%}@keyframes blur-text{0%{filter:blur(0)}to{filter:blur(4px)}}
1
+ :root{--w-default-space:20px;--w-extra-extra-small-width:360px;--w-extra-small-width:500px;--w-small-width:768px;--w-medium-width:992px;--w-large-width:1200px;--w-theme-background:#fff;--w-theme-primary:#76b82a;--w-theme-on-primary:#f0f6fc;--w-theme-secondary:#238636;--w-theme-on-secondary:#d6e9da;--w-theme-error:#723637;--w-theme-on-error:#fff;--w-theme-surface:#21262d;--w-theme-on-surface:#bbc2ca;--w-typography-font-family:Open Sans,open-sans,sans-serif;--w-typography-font-family-headline:Open Sans Condensed,open-sans-condensed,sans-serif}website-utilities{font-family:var(--w-typography-font-family,"Open Sans",open-sans,sans-serif);font-size:14px}website-utilities h1,website-utilities h2,website-utilities h3,website-utilities h4,website-utilities h5,website-utilities h6{font-family:var(--w-typography-font-family,"Open Sans",open-sans,sans-serif);line-height:1.1}website-utilities h1,website-utilities h2{font-family:var(--w-typography-font-family-headline,"Open Sans Condensed",open-sans-condensed,sans-serif);font-weight:400;font-size:3em}website-utilities h2{font-size:2em}website-utilities a,website-utilities a:focus,website-utilities a:hover,website-utilities a:visited{outline:none;-webkit-text-decoration:none;text-decoration:none}website-utilities .wu-action{cursor:pointer}website-utilities .wu-disable-scrolling{height:100%!important;overflow:hidden!important}website-utilities .wu-section-active{display:block}website-utilities .wu-section-inactive{display:none}website-utilities .wu-select{position:relative}website-utilities .wu-select__arrow{position:absolute;top:3px;right:15px;pointer-events:none}website-utilities .wu-select__arrow span{vertical-align:bottom;font-size:10px}website-utilities .wu-select select{position:static!important;padding-left:7px!important;padding-right:25px!important}website-utilities .wu-select select::-ms-expand{display:none}website-utilities .wu-checkbox{margin-top:2px;padding-top:3px}website-utilities .wu-checkbox label{padding-left:40px}website-utilities .wu-checkbox label .wu-checkbox__wrapper{margin-top:-2px;margin-left:-40px;position:absolute}website-utilities .wu-checkbox label .wu-checkbox__wrapper .wu-checkbox__wrapper__styled{border-radius:4px;border:2px solid var(--w-theme-primary,#76b82a);cursor:pointer;float:right;height:25px;padding:0;width:25px}website-utilities .wu-checkbox label .wu-checkbox__wrapper .wu-checkbox__wrapper__styled .wu-checkbox__wrapper__styled__checked{background:transparent;border:3px solid var(--w-theme-on-primary,#f0f6fc);border-top:none;border-right:none;height:8px;left:4px;opacity:0;position:absolute;top:5px;transform:rotate(-45deg);width:13px}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]{display:none}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]:checked~.wu-checkbox-styled>.wu-checkbox-styled-checked{opacity:1}website-utilities .wu-checkbox label .wu-checkbox__wrapper input[type=checkbox]:disabled~.wu-checkbox-styled{background-color:var(--w-theme-surface,#21262d)}website-utilities .wu-scroll-to-top{display:block;transition-property:bottom,opacity;transition-duration:.5s;position:fixed;right:var(--w-default-space,20px)}website-utilities .wu-scroll-to-top.wu-scroll-up{bottom:calc(var(--w-default-space, 20px)*3);opacity:0}website-utilities .wu-scroll-to-top.wu-scroll-down{bottom:var(--w-default-space,20px);opacity:1}website-utilities .wu-scroll-to-top.wu-top-settled{display:none}website-utilities .wu-priority-navigation{--animation-duration:0.25s;position:relative;overflow:visible}website-utilities .wu-priority-navigation.wu-priority-navigation--resizing{overflow:hidden}website-utilities .wu-priority-navigation .wu-priority-navigation__list{list-style:none}website-utilities .wu-priority-navigation .wu-priority-navigation__list li{display:inline-block;position:relative}website-utilities .wu-priority-navigation .wu-priority-navigation__list li.wu-priority-navigation__list__overflow-indicator{display:none}website-utilities .wu-priority-navigation .wu-priority-navigation__list a{-webkit-text-decoration:none;text-decoration:none;color:#fff;display:inline-block;padding:10px 15px}website-utilities .wu-priority-navigation .wu-priority-navigation__list a:after{content:" ";position:absolute;left:0;top:0;width:100%;height:100%;border:none;box-sizing:border-box}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator{cursor:pointer;width:2rem;height:2rem;position:absolute!important;padding-top:1rem}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title{transition:all var(--animation-duration);position:absolute;width:2rem;height:2rem}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon{background-color:#fff;transition:all var(--animation-duration);position:relative;transform:rotate(0deg);width:30px;height:1px}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:after,website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:before{position:absolute;transition:all var(--animation-duration);content:"";background-color:#fff;transform:rotate(0deg);width:30px;height:1px}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:before{top:-10px}website-utilities .wu-priority-navigation .wu-priority-navigation__list .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:after{top:10px}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__overflow-list{height:100%;max-height:400px}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon{transform:rotate(180deg);background-color:transparent}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:after,website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:before{top:0}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:before{transform:rotate(45deg)}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__list__overflow-indicator .wu-priority-navigation__list__overflow-indicator__title .wu-priority-navigation__list__overflow-indicator__title__icon:after{transform:rotate(-45deg)}website-utilities .wu-priority-navigation .wu-priority-navigation__overflow-list{transition:all var(--animation-duration);height:0;max-height:0;width:-moz-max-content;width:max-content;list-style:none;overflow:hidden}website-utilities .wu-priority-navigation .wu-priority-navigation__overflow-list ul{list-style:none;padding:0;letter-spacing:.4em}website-utilities .wu-priority-navigation .wu-priority-navigation__overflow-list li:first-child{margin-top:0}website-utilities .wu-priority-navigation .wu-priority-navigation__overflow-list li{transition:all var(--animation-duration);margin-top:20px;padding:5px 0;color:#fff}website-utilities .wu-priority-navigation .wu-priority-navigation__overflow-list a{padding:8px;cursor:pointer}website-utilities .wu-priority-navigation.wu-priority-navigation--overflow-open .wu-priority-navigation__overflow-list{width:100%}website-utilities .wu-priority-navigation .wu-priority-navigation__list__item--hide{display:none!important}website-utilities .wu-priority-navigation .wu-priority-navigation__list__overflow-indicator--show{display:inline-block!important}.wu-window-loading-cover{background-color:var(--w-surface-color,#21262d);top:0;left:0;position:fixed;height:100%;width:100%;z-index:1002!important}.wu-window-loading-cover .loading-text{position:absolute;inset:0;margin:auto;text-align:center;width:100%;height:100px;line-height:100px}.wu-window-loading-cover .loading-text span{display:inline-block;margin:0 5px;color:var(--w-on-surface-color,#bbc2ca)}.wu-window-loading-cover .loading-text span:first-child{filter:blur(0);animation:blur-text 1.5s linear 0s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(2){filter:blur(0);animation:blur-text 1.5s linear .2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(3){filter:blur(0);animation:blur-text 1.5s linear .4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(4){filter:blur(0);animation:blur-text 1.5s linear .6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(5){filter:blur(0);animation:blur-text 1.5s linear .8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(6){filter:blur(0);animation:blur-text 1.5s linear 1s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(7){filter:blur(0);animation:blur-text 1.5s linear 1.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(8){filter:blur(0);animation:blur-text 1.5s linear 1.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(9){filter:blur(0);animation:blur-text 1.5s linear 1.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(10){filter:blur(0);animation:blur-text 1.5s linear 1.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(11){filter:blur(0);animation:blur-text 1.5s linear 2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(12){filter:blur(0);animation:blur-text 1.5s linear 2.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(13){filter:blur(0);animation:blur-text 1.5s linear 2.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(14){filter:blur(0);animation:blur-text 1.5s linear 2.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(15){filter:blur(0);animation:blur-text 1.5s linear 2.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(16){filter:blur(0);animation:blur-text 1.5s linear 3s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(17){filter:blur(0);animation:blur-text 1.5s linear 3.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(18){filter:blur(0);animation:blur-text 1.5s linear 3.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(19){filter:blur(0);animation:blur-text 1.5s linear 3.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(20){filter:blur(0);animation:blur-text 1.5s linear 3.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(21){filter:blur(0);animation:blur-text 1.5s linear 4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(22){filter:blur(0);animation:blur-text 1.5s linear 4.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(23){filter:blur(0);animation:blur-text 1.5s linear 4.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(24){filter:blur(0);animation:blur-text 1.5s linear 4.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(25){filter:blur(0);animation:blur-text 1.5s linear 4.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(26){filter:blur(0);animation:blur-text 1.5s linear 5s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(27){filter:blur(0);animation:blur-text 1.5s linear 5.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(28){filter:blur(0);animation:blur-text 1.5s linear 5.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(29){filter:blur(0);animation:blur-text 1.5s linear 5.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(30){filter:blur(0);animation:blur-text 1.5s linear 5.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(31){filter:blur(0);animation:blur-text 1.5s linear 6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(32){filter:blur(0);animation:blur-text 1.5s linear 6.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(33){filter:blur(0);animation:blur-text 1.5s linear 6.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(34){filter:blur(0);animation:blur-text 1.5s linear 6.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(35){filter:blur(0);animation:blur-text 1.5s linear 6.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(36){filter:blur(0);animation:blur-text 1.5s linear 7s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(37){filter:blur(0);animation:blur-text 1.5s linear 7.2s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(38){filter:blur(0);animation:blur-text 1.5s linear 7.4s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(39){filter:blur(0);animation:blur-text 1.5s linear 7.6s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(40){filter:blur(0);animation:blur-text 1.5s linear 7.8s infinite alternate}.wu-window-loading-cover .loading-text span:nth-child(41){filter:blur(0);animation:blur-text 1.5s linear 8s infinite alternate}::view-transition-old(wu-menu-highlight){height:100%}::view-transition-new(wu-menu-highlight){height:100%}@keyframes blur-text{0%{filter:blur(0)}to{filter:blur(4px)}}
package/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";if("undefined"!=typeof module&&null!==module&&"undefined"!==eval("typeof require")&&null!==eval("require")&&"main"in eval("require")&&"undefined"!==eval("typeof require.main")&&null!==eval("require.main")){var ORIGINAL_MAIN_MODULE=module;module!==eval("require.main")&&"paths"in module&&"paths"in eval("require.main")&&"undefined"!=typeof __dirname&&null!==__dirname&&(module.paths=eval("require.main.paths").concat(module.paths.filter((function(path){return eval("require.main.paths").includes(path)}))))}if(null==window)var window="undefined"==typeof global||null===global?{}:global;!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("@babel/runtime/helpers/applyDecoratedDescriptor"),require("@babel/runtime/helpers/initializerDefineProperty"),require("@babel/runtime/helpers/initializerWarningHelper"),require("clientnode"),require("clientnode/property-types"),require("web-component-wrapper/Web"),require("web-component-wrapper/decorator"));else if("function"==typeof define&&define.amd)define(["@babel/runtime/helpers/applyDecoratedDescriptor","@babel/runtime/helpers/initializerDefineProperty","@babel/runtime/helpers/initializerWarningHelper","clientnode","clientnode/property-types","web-component-wrapper/Web","web-component-wrapper/decorator"],e);else{var o="object"==typeof exports?e(require("@babel/runtime/helpers/applyDecoratedDescriptor"),require("@babel/runtime/helpers/initializerDefineProperty"),require("@babel/runtime/helpers/initializerWarningHelper"),require("clientnode"),require("clientnode/property-types"),require("web-component-wrapper/Web"),require("web-component-wrapper/decorator")):e(t["@babel/runtime/helpers/applyDecoratedDescriptor"],t["@babel/runtime/helpers/initializerDefineProperty"],t["@babel/runtime/helpers/initializerWarningHelper"],t.clientnode,t["clientnode/property-types"],t["web-component-wrapper/Web"],t["web-component-wrapper/decorator"]);for(var i in o)("object"==typeof exports?exports:t)[i]=o[i]}}(this,((t,e,o,i,n,r,s)=>(()=>{var a=[,,,t=>{t.exports=e},e=>{e.exports=t},t=>{t.exports=o},t=>{t.exports=i},t=>{t.exports=n},t=>{t.exports=s},t=>{t.exports=r}],l={};function c(t){var e=l[t];if(void 0!==e)return e.exports;var o=l[t]={exports:{}};return a[t](o,o.exports,c),o.exports}c.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return c.d(e,{a:e}),e},c.d=(t,e)=>{for(var o in e)c.o(e,o)&&!c.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},c.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),c.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var u={};return(()=>{c.r(u),c.d(u,{WebsiteUtilities:()=>M,api:()=>P,default:()=>z,log:()=>E});var t,e,o,i,n,r,s,a,l,p,d,h,m,w,v,f,g,b,y,N,S,T,L,C,_=c(3),D=c.n(_),k=c(4),O=c.n(k),A=(c(5),c(6)),x=c(7),q=c(8),I=c(9);const E=new A.Logger({name:"website-utilities"});let M=(t=(0,q.property)({type:x.object}),e=(0,q.property)({type:x.func}),o=(0,q.property)({type:x.func}),i=(0,q.property)({type:x.func}),n=(0,q.property)({type:x.func}),r=(0,q.property)({type:x.func}),s=(0,q.property)({type:x.func}),a=(0,q.property)({type:x.func}),l=(0,q.property)({type:x.func}),p=(0,q.property)({type:x.func}),d=(0,q.property)({type:x.func}),C=class t extends I.Web{constructor(){super(),this.self=t,D()(this,"options",m,this),D()(this,"onStartUpAnimationComplete",w,this),D()(this,"onSwitchSection",v,this),D()(this,"onViewportMovesAwayFromTop",f,this),D()(this,"onViewportMovesToTop",g,this),D()(this,"onSwitchToManualScrollingIndicator",b,this),D()(this,"onLoaded",y,this),D()(this,"onButtonClick",N,this),D()(this,"onSectionSwitch",S,this),D()(this,"onLinkClick",T,this),D()(this,"onTrack",L,this),this.currentSectionName="",this.startUpAnimationIsComplete=!1,this.continueAutoScrolling=!1,this.viewportIsOnTop=void 0,this.observerDeregisters=[],this.windowLoadingCoverDomNode=null,this.topDomNode=null,this.priorityNavigationDomNodes=null,this.routerOutletDomNode=null,this.sectionDomNodes={},this.scrollToTopButtonDomNodes=null,this.defineGetterAndSetterInterface()}async onUpdateAttribute(t,e){await super.onUpdateAttribute(t,e),"options"===t&&this._extendOptions()}async render(t="unknown",e=!0){if(await super.render(t,!1),0===Object.keys(this.options).length&&this._extendOptions(),this.disableScrolling(),!this.self.windowLoaded){const t=()=>{this.self.windowLoaded||(this.self.windowLoaded=!0,this._removeLoadingCover().then((()=>{this.enableScrolling(),this._performStartUpEffects().then((()=>{this.addMenuHighlighterViewTransition()})),this.onLoaded()})))};(0,A.onDocumentReady)((()=>{(0,A.timeout)(t,this.options.windowLoadedTimeoutAfterDocLoadedInMSec)})),A.globalContext.window&&this.addSecureEventListener(A.globalContext.window,"load",t)}await this.waitForNestedComponentRendering(),this.grabDomNodes(),this._bindScrollEvents(),this._bindClickTracking(),await this._initializeRouting(),this.initializePriorityNavigation(),await this.resolveRenderingPromiseIfSet(t,e)}disconnectedCallback(){super.disconnectedCallback();for(const t of this.observerDeregisters)t()}grabDomNodes(){var t,e,o;this.topDomNode=this.hostDomNode.querySelector(this.options.selectors.top),this.scrollToTopButtonDomNodes=this.hostDomNode.querySelectorAll(this.options.selectors.scrollToTopButtons),this.priorityNavigationDomNodes=this.hostDomNode.querySelectorAll(this.options.selectors.priorityNavigation),this.routerOutletDomNode=this.hostDomNode.querySelector(this.options.selectors.routerOutlet);for(const t of null!==(i=this.routerOutletDomNode?.children)&&void 0!==i?i:[]){var i;const e=t.getAttribute("data-website-utilities-section");""===e?this.sectionDomNodes.default=t:e&&this.options.sectionNames.managed.includes(e)&&(this.sectionDomNodes[e]=t)}this.windowLoadingCoverDomNode=null!==(t=null!==(e=null!==(o=this.hostDomNode.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==o?o:this.hostDomNode.parentElement?.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==e?e:A.globalContext.document?.body.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==t?t:null}interruptableScrollToTop(){const t=window.pageYOffset,e=performance.now();this.continueAutoScrolling=!0;const o=i=>{if(!this.continueAutoScrolling)return;const n=i-e,r=Math.min(n/500,1),s=r*(2-r);window.scrollTo(0,t*(1-s)),r<1?requestAnimationFrame(o):this.continueAutoScrolling=!1};requestAnimationFrame(o)}scrollToTop(){A.globalContext.document&&window.scrollTo({top:0,behavior:"smooth"})}disableScrolling(){this.hostDomNode.parentElement&&(this.hostDomNode.parentElement.classList.add("wu-disable-scrolling"),this.addSecureEventListener(this.hostDomNode.parentElement,"touchmove",A.preventDefault))}enableScrolling(){this.hostDomNode.parentElement&&(this.hostDomNode.parentElement.classList.remove("wu-disable-scrolling"),this.hostDomNode.parentElement.classList.remove("touchmove"),this.hostDomNode.parentElement.removeEventListener("touchmove",A.preventDefault))}async track(t){if(A.globalContext.window?.location&&this.options.tracking){const e={context:`${A.globalContext.window.location.pathname}#`+this.currentSectionName,...t};("number"!=typeof e.value||isNaN(e.value))&&(e.value=1),E.debug('Run tracking code: "event" with arguments:'),E.debug(e);try{await this._onTrack(e)}catch(t){E.warn(`Problem in tracking "${(0,A.represent)(e)}":`,(0,A.represent)(t))}}}initializePriorityNavigation(){if(0===this.priorityNavigationDomNodes?.length)return;for(const t of this.priorityNavigationDomNodes||[])for(const e of t.querySelectorAll(`[href="#${this.currentSectionName}"]`))e.classList.add(this.options.selectors.activeNavigationItemClassName);const t=()=>{for(const t of this.priorityNavigationDomNodes||[]){const e=t.querySelectorAll("ul > li"),o=Array.from(e).filter((t=>!t.classList.contains(this.options.selectors.priorityNavigationOverflowClassName))),i=t.querySelector("ul > li").offsetTop;let n=[];for(const t of o){t.offsetTop!==i&&n.push(t)}o.length-n.length<2&&(n=o.slice());const r=t.querySelector("."+this.options.selectors.priorityNavigationOverflowClassName);if(n.length){const e=n.map((t=>t.cloneNode(!0)));for(const t of n)t.classList.add(this.options.selectors.priorityNavigationListItemClassName);const o=t.querySelector(this.options.selectors.priorityNavigationOverflowList);if(o)for(const t of e)o.append(t);r&&r.classList.add(this.options.selectors.priorityNavigationOverflowVisibleClassName),t.style.overflow="visible"}else r&&r.classList.remove(this.options.selectors.priorityNavigationOverflowVisibleClassName)}};for(const t of this.hostDomNode.querySelectorAll(this.options.selectors.priorityNavigationOverflowTitle))this.addSecureEventListener(t,"click",(()=>{for(const t of this.hostDomNode.querySelectorAll(this.options.selectors.priorityNavigationOverflowList))t.classList.toggle("wu-priority-navigation__overflow__list--show")}));for(const e of this.priorityNavigationDomNodes||[]){const o=(0,A.trailingThrottle)((()=>{for(const t of e.querySelectorAll(this.options.selectors.priorityNavigationOverflowList))for(;t.firstChild;)t.removeChild(t.firstChild);for(const t of e.querySelectorAll("."+this.options.selectors.priorityNavigationOverflowClassName))t.classList.remove("wu-priority-navigation__overflow--show-inline-block");for(const t of e.querySelectorAll("ul > li"))t.classList.contains(this.options.selectors.priorityNavigationOverflowClassName)||t.classList.remove("wu-priority-navigation__list__item--hide");t(),e.classList.remove("wu-priority-navigation--resizing")}),20),i=new ResizeObserver((()=>{e.classList.add("wu-priority-navigation--resizing"),o()}));this.observerDeregisters.push((()=>{i.unobserve(e)})),i.observe(e)}t()}addMenuHighlighterViewTransition(){if(!A.globalContext.document)return;const t=document.createElement("style");t.type="text/css";t.appendChild(A.globalContext.document.createTextNode("\n a.wu-priority-navigation__link--active::after {\n view-transition-name: wu-menu-highlight;\n }\n ")),A.globalContext.document.getElementsByTagName("head")[0].appendChild(t)}activateNavigationItemHighlighters(t){const e=this.options.selectors.activeNavigationItemClassName;for(const o of this.priorityNavigationDomNodes||[]){for(const t of o.querySelectorAll(`.${e}`))t.classList.remove(e);for(const i of o.querySelectorAll(`[href="#${t}"]`))i.classList.add(e)}}triggerNavigationItemHighlighterSwitching(t){A.globalContext.document?.startViewTransition?A.globalContext.document.startViewTransition((()=>{this.activateNavigationItemHighlighters(t)})):this.activateNavigationItemHighlighters(t)}async _onButtonClick(t){if(!1===await this.onButtonClick(t))return;const e=t.target,o=(0,A.getText)(e).join(" ");this._onTrack({event:"buttonClick",eventType:"click",label:o,reference:e.getAttribute("action")||e.getAttribute("target")||e.getAttribute("type")||o,subject:"button",value:parseInt(e.getAttribute("website-analytics-value")||"1"),userInteraction:!0})}async _onSectionSwitch(t,e,o){!1!==await this.onSectionSwitch(t,e,o)&&A.globalContext.window?.location&&await this._onTrack({event:"sectionSwitch",eventType:"sectionSwitch",label:t,reference:`${A.globalContext.window.location.pathname}#${t}`,subject:"url",userInteraction:!1})}async _onLinkClick(t){if(!1===await this.onLinkClick(t))return;const e=t.target,o=(0,A.getText)(e).join(" ");this._onTrack({event:"linkClick",eventType:"click",label:o,reference:e.getAttribute("href")||e.getAttribute("action")||e.getAttribute("target")||e.getAttribute("type")||o,subject:"link",value:parseInt(e.getAttribute("website-analytics-value")||"1"),userInteraction:!0})}async _onTrack(t){!1!==await this.onTrack(t)&&this.options.tracking&&A.globalContext.dataLayer?.push(t)}_onViewportMovesToTop(){this._finishScrollToTopButtonTransition();for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;const o=()=>{e.removeEventListener("transitionend",i),e.removeEventListener("transitioncancel",o)},i=()=>{this.viewportIsOnTop&&e.classList.add("wu-top-settled"),o()};e.addEventListener("transitionend",i,{once:!0}),e.addEventListener("transitioncancel",o,{once:!0}),e.classList.add("wu-scroll-up")}}async _onViewportMovesAwayFromTop(){this._finishScrollToTopButtonTransition("wu-top-settled"),await(0,A.timeout)(),this._finishScrollToTopButtonTransition();for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;e.classList.add("wu-scroll-down")}}async switchSection(t,e){if(A.globalContext.window&&"location"in A.globalContext.window&&(""===t||this.options.sectionNames.managed.includes(t)||this.options.sectionNames.unmanaged.includes(t))){var o,i;const n=Object.prototype.hasOwnProperty.call(this.sectionDomNodes,this.currentSectionName)?this.sectionDomNodes[this.currentSectionName]:null!==(o=this.sectionDomNodes.default)&&void 0!==o?o:null,r=Object.prototype.hasOwnProperty.call(this.sectionDomNodes,t)?this.sectionDomNodes[t]:null!==(i=this.sectionDomNodes.default)&&void 0!==i?i:null;await this.self.switchSectionLock.acquire(),this.triggerNavigationItemHighlighterSwitching(t),E.debug(`Run section switch from "${this.currentSectionName}" to`,`"${t}".`),this.currentSectionName===t?(n&&(n.classList.remove("wu-section-active"),n.classList.add("wu-section-inactive")),r&&(r.classList.remove("wu-section-inactive"),r.classList.add("wu-section-active"))):this.options.sectionNames.unmanaged.includes(t)&&this.options.sectionNames.unmanaged.includes(this.currentSectionName)||(this.interruptableScrollToTop(),n&&(await(0,A.fadeOut)(n),n.classList.remove("wu-section-active"),n.classList.add("wu-section-inactive")),r&&(r.classList.remove("wu-section-inactive"),r.classList.add("wu-section-active"),await(0,A.fadeIn)(r)));const s=this.currentSectionName;this.currentSectionName=t;try{await this._onSectionSwitch(this.currentSectionName,s,e)}catch(t){E.warn("Problem due to call section switch callback on section",`"${this.currentSectionName}": ${(0,A.represent)(t)}`)}await this.self.switchSectionLock.release()}}_extendOptions(){this.setPropertyValue("options",(0,A.extend)(!0,{},this.self._defaultOptions,this.options))}_initializeRouting(){""===this.currentSectionName&&(this.currentSectionName=this.options.sectionNames.default),this._bindNavigationEvents();const t=A.globalContext.location?.hash&&A.globalContext.location.hash.substring(1);t&&(this.options.sectionNames.managed.includes(t)||this.options.sectionNames.unmanaged.includes(t))&&(this.currentSectionName=t);for(const t of Object.values(this.sectionDomNodes))t.classList.add("wu-section-inactive");return this.switchSection(t||this.currentSectionName)}_finishScrollToTopButtonTransition(t=["wu-scroll-down","wu-scroll-up"]){for(const o of null!==(e=this.scrollToTopButtonDomNodes)&&void 0!==e?e:[]){var e;o.classList.remove(...[].concat(t))}}_bindScrollEvents(){if(A.globalContext.document){for(const t of[A.globalContext.document.body,A.globalContext.document.querySelector("html"),A.globalContext.window])for(const e of this.options.knownScrollEventNames)t&&this.addSecureEventListener(t,e,(t=>{this.onSwitchToManualScrollingIndicator(t)&&(this.continueAutoScrolling=!1)}));if(A.globalContext.window&&this.addSecureEventListener(A.globalContext.window,"scroll",(t=>{A.globalContext.window?.scrollY?this.viewportIsOnTop&&(this.viewportIsOnTop=!1,this._onViewportMovesAwayFromTop().then(this.onViewportMovesAwayFromTop.bind(this,t))):this.viewportIsOnTop||(this.viewportIsOnTop=!0,this._onViewportMovesToTop(),this.onViewportMovesToTop(t))})),A.globalContext.window?.scrollY)this.viewportIsOnTop=!1,this._onViewportMovesAwayFromTop().then((()=>{this.onViewportMovesAwayFromTop()}));else{this.viewportIsOnTop=!0;for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;e.classList.add("wu-top-settled")}this._onViewportMovesToTop(),this.onViewportMovesToTop()}}}async _removeLoadingCover(){await(0,A.timeout)(this.options.additionalPageLoadingTimeInMilliseconds);for(const t of this.hostDomNode.querySelectorAll(`[class^="${this.options.selectors.startUpAnimationClassPrefix}"], [class*=" ${this.options.selectors.startUpAnimationClassPrefix}"]`))t.style.opacity="0";this.windowLoadingCoverDomNode&&await(0,A.fadeOut)(this.windowLoadingCoverDomNode)}async _performStartUpEffects(){const t=[];let e=1;for(;;){const o=this.hostDomNode.querySelectorAll("."+this.options.selectors.startUpAnimationClassPrefix+String(e));if(0===o.length){await Promise.all(t),this.startUpAnimationIsComplete=!0,this.onStartUpAnimationComplete();break}await(0,A.timeout)(this.options.startUpAnimationElementDelayInMilliseconds);for(const e of o)t.push((0,A.fadeIn)(e));e+=1}}_bindNavigationEvents(){A.globalContext.window&&this.addSecureEventListener(A.globalContext.window,"hashchange",(t=>{if(this.startUpAnimationIsComplete){const e=location.hash.substring(1);this.switchSection(e,t)}})),this._bindScrollToTopButton()}_bindScrollToTopButton(){for(const t of this.scrollToTopButtonDomNodes||[])this.addSecureEventListener(t,"click",(t=>{t.preventDefault(),this.interruptableScrollToTop()}))}_bindClickTracking(){if(this.options.tracking){for(const t of this.hostDomNode.querySelectorAll("a"))this.addSecureEventListener(t,"click",(t=>{this._onLinkClick(t)}));for(const t of this.hostDomNode.querySelectorAll("button"))this.addSecureEventListener(t,"click",(t=>{this._onButtonClick(t)}))}}},C._name="WebsiteUtilities",C._defaultOptions={additionalPageLoadingTimeInMilliseconds:0,startUpAnimationElementDelayInMilliseconds:100,windowLoadedTimeoutAfterDocLoadedInMSec:2e3,domain:"auto",knownScrollEventNames:["DOMMouseScroll","keyup","mousedown","mousewheel","scroll","touchmove","wheel"],sectionNames:{default:"",managed:["home"],unmanaged:[]},selectors:{windowLoadingCover:".wu-window-loading-cover",startUpAnimationClassPrefix:"wu-start-up-animation-number-",top:".wu-header",routerOutlet:".wu-router-outlet",scrollToTopButtons:".wu-scroll-to-top",activeNavigationItemClassName:"wu-priority-navigation__link--active",priorityNavigation:".wu-priority-navigation",priorityNavigationListItemClassName:"wu-priority-navigation__list__item--hide",priorityNavigationOverflowClassName:"wu-priority-navigation__overflow",priorityNavigationOverflowVisibleClassName:"wu-priority-navigation__overflow--inline-block",priorityNavigationOverflowTitle:".wu-priority-navigation__overflow__title",priorityNavigationOverflowList:".wu-priority-navigation__overflow__list"},tracking:!1},C.windowLoaded=!1,C.switchSectionLock=new A.Lock,h=C,m=O()(h.prototype,"options",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),w=O()(h.prototype,"onStartUpAnimationComplete",[e],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return A.NOOP}}),v=O()(h.prototype,"onSwitchSection",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return A.NOOP}}),f=O()(h.prototype,"onViewportMovesAwayFromTop",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return A.NOOP}}),g=O()(h.prototype,"onViewportMovesToTop",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return A.NOOP}}),b=O()(h.prototype,"onSwitchToManualScrollingIndicator",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return()=>!0}}),y=O()(h.prototype,"onLoaded",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return A.NOOP}}),N=O()(h.prototype,"onButtonClick",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),S=O()(h.prototype,"onSectionSwitch",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t,e,o){return Promise.resolve(void 0)}}}),T=O()(h.prototype,"onLinkClick",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),L=O()(h.prototype,"onTrack",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),h);const P={component:M,register:(t=(0,A.camelCaseToDelimited)(M._name))=>{customElements.define(t,M)}},z=M;A.globalContext.AUTO_DEFINE_WEBSITE_UTILITIES&&P.register()})(),u})()));
1
+ "use strict";if("undefined"!=typeof module&&null!==module&&"undefined"!==eval("typeof require")&&null!==eval("require")&&"main"in eval("require")&&"undefined"!==eval("typeof require.main")&&null!==eval("require.main")){var ORIGINAL_MAIN_MODULE=module;module!==eval("require.main")&&"paths"in module&&"paths"in eval("require.main")&&"undefined"!=typeof __dirname&&null!==__dirname&&(module.paths=eval("require.main.paths").concat(module.paths.filter((function(path){return eval("require.main.paths").includes(path)}))))}if(null==window)var window="undefined"==typeof global||null===global?{}:global;!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("@babel/runtime/helpers/applyDecoratedDescriptor"),require("@babel/runtime/helpers/initializerDefineProperty"),require("@babel/runtime/helpers/initializerWarningHelper"),require("clientnode"),require("clientnode/property-types"),require("web-component-wrapper/Web"),require("web-component-wrapper/decorator"));else if("function"==typeof define&&define.amd)define(["@babel/runtime/helpers/applyDecoratedDescriptor","@babel/runtime/helpers/initializerDefineProperty","@babel/runtime/helpers/initializerWarningHelper","clientnode","clientnode/property-types","web-component-wrapper/Web","web-component-wrapper/decorator"],e);else{var o="object"==typeof exports?e(require("@babel/runtime/helpers/applyDecoratedDescriptor"),require("@babel/runtime/helpers/initializerDefineProperty"),require("@babel/runtime/helpers/initializerWarningHelper"),require("clientnode"),require("clientnode/property-types"),require("web-component-wrapper/Web"),require("web-component-wrapper/decorator")):e(t["@babel/runtime/helpers/applyDecoratedDescriptor"],t["@babel/runtime/helpers/initializerDefineProperty"],t["@babel/runtime/helpers/initializerWarningHelper"],t.clientnode,t["clientnode/property-types"],t["web-component-wrapper/Web"],t["web-component-wrapper/decorator"]);for(var i in o)("object"==typeof exports?exports:t)[i]=o[i]}}(this,((t,e,o,i,n,r,s)=>(()=>{var a=[,,,t=>{t.exports=e},e=>{e.exports=t},t=>{t.exports=o},t=>{t.exports=i},t=>{t.exports=n},t=>{t.exports=s},t=>{t.exports=r}],l={};function c(t){var e=l[t];if(void 0!==e)return e.exports;var o=l[t]={exports:{}};return a[t](o,o.exports,c),o.exports}c.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return c.d(e,{a:e}),e},c.d=(t,e)=>{for(var o in e)c.o(e,o)&&!c.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},c.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),c.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var u={};return(()=>{c.r(u),c.d(u,{WebsiteUtilities:()=>M,api:()=>P,default:()=>z,log:()=>E});var t,e,o,i,n,r,s,a,l,p,d,h,m,w,f,v,g,b,y,N,S,T,C,L,D=c(3),_=c.n(D),O=c(4),k=c.n(O),x=(c(5),c(6)),A=c(7),I=c(8),q=c(9);const E=new x.Logger({name:"website-utilities"});let M=(t=(0,I.property)({type:A.object}),e=(0,I.property)({type:A.func}),o=(0,I.property)({type:A.func}),i=(0,I.property)({type:A.func}),n=(0,I.property)({type:A.func}),r=(0,I.property)({type:A.func}),s=(0,I.property)({type:A.func}),a=(0,I.property)({type:A.func}),l=(0,I.property)({type:A.func}),p=(0,I.property)({type:A.func}),d=(0,I.property)({type:A.func}),L=class t extends q.Web{constructor(){super(),this.self=t,_()(this,"options",m,this),_()(this,"onStartUpAnimationComplete",w,this),_()(this,"onSwitchSection",f,this),_()(this,"onViewportMovesAwayFromTop",v,this),_()(this,"onViewportMovesToTop",g,this),_()(this,"onSwitchToManualScrollingIndicator",b,this),_()(this,"onLoaded",y,this),_()(this,"onButtonClick",N,this),_()(this,"onSectionSwitch",S,this),_()(this,"onLinkClick",T,this),_()(this,"onTrack",C,this),this.currentSectionName="",this.startUpAnimationIsComplete=!1,this.continueAutoScrolling=!1,this.viewportIsOnTop=void 0,this.observerDeregisters=[],this.windowLoadingCoverDomNode=null,this.topDomNode=null,this.priorityNavigationDomNodes=null,this.routerOutletDomNode=null,this.sectionDomNodes={},this.scrollToTopButtonDomNodes=null,this.defineGetterAndSetterInterface()}async onUpdateAttribute(t,e){await super.onUpdateAttribute(t,e),"options"===t&&this._extendOptions()}async render(t="unknown",e=!0){if(await super.render(t,!1),0===Object.keys(this.options).length&&this._extendOptions(),this.disableScrolling(),!this.self.windowLoaded){const t=()=>{this.self.windowLoaded||(this.self.windowLoaded=!0,this._removeLoadingCover().then((()=>{this.enableScrolling(),this._performStartUpEffects().then((()=>{this.addMenuHighlighterViewTransition()})),this.onLoaded()})))};(0,x.onDocumentReady)((()=>{(0,x.timeout)(t,this.options.windowLoadedTimeoutAfterDocLoadedInMSec)})),x.globalContext.window&&this.addSecureEventListener(x.globalContext.window,"load",t)}await this.waitForNestedComponentRendering(),this.grabDomNodes(),this._bindScrollEvents(),this._bindClickTracking(),await this._initializeRouting(),this.initializePriorityNavigation(),await this.resolveRenderingPromiseIfSet(t,e)}disconnectedCallback(){super.disconnectedCallback();for(const t of this.observerDeregisters)t()}grabDomNodes(){var t,e,o;this.topDomNode=this.hostDomNode.querySelector(this.options.selectors.top),this.scrollToTopButtonDomNodes=this.hostDomNode.querySelectorAll(this.options.selectors.scrollToTopButtons),this.priorityNavigationDomNodes=this.hostDomNode.querySelectorAll(`.${this.options.selectors.priorityNavigationClassName}`),this.routerOutletDomNode=this.hostDomNode.querySelector(this.options.selectors.routerOutlet);for(const t of null!==(i=this.routerOutletDomNode?.children)&&void 0!==i?i:[]){var i;const e=t.getAttribute("data-website-utilities-section");""===e?this.sectionDomNodes.default=t:e&&this.options.sectionNames.managed.includes(e)&&(this.sectionDomNodes[e]=t)}this.windowLoadingCoverDomNode=null!==(t=null!==(e=null!==(o=this.hostDomNode.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==o?o:this.hostDomNode.parentElement?.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==e?e:x.globalContext.document?.body.querySelector(this.options.selectors.windowLoadingCover))&&void 0!==t?t:null}interruptableScrollToTop(){const t=window.pageYOffset,e=performance.now();this.continueAutoScrolling=!0;const o=i=>{if(!this.continueAutoScrolling)return;const n=i-e,r=Math.min(n/500,1),s=r*(2-r);window.scrollTo(0,t*(1-s)),r<1?requestAnimationFrame(o):this.continueAutoScrolling=!1};requestAnimationFrame(o)}scrollToTop(){x.globalContext.document&&window.scrollTo({top:0,behavior:"smooth"})}disableScrolling(){this.hostDomNode.parentElement&&(this.hostDomNode.parentElement.classList.add("wu-disable-scrolling"),this.addSecureEventListener(this.hostDomNode.parentElement,"touchmove",x.preventDefault))}enableScrolling(){this.hostDomNode.parentElement&&(this.hostDomNode.parentElement.classList.remove("wu-disable-scrolling"),this.hostDomNode.parentElement.classList.remove("touchmove"),this.hostDomNode.parentElement.removeEventListener("touchmove",x.preventDefault))}async track(t){if(x.globalContext.window?.location&&this.options.tracking){const e={context:`${x.globalContext.window.location.pathname}#`+this.currentSectionName,...t};("number"!=typeof e.value||isNaN(e.value))&&(e.value=1),E.debug('Run tracking code: "event" with arguments:'),E.debug(e);try{await this._onTrack(e)}catch(t){E.warn(`Problem in tracking "${(0,x.represent)(e)}":`,(0,x.represent)(t))}}}initializePriorityNavigation(){const{selectors:t}=this.options,e=t.priorityNavigationOverflowIndicatorClassName,o=t.priorityNavigationOverflowIndicatorShowClassName;if(0===this.priorityNavigationDomNodes?.length)return;for(const e of this.priorityNavigationDomNodes||[])for(const o of e.querySelectorAll(`[href="#${this.currentSectionName}"]`))o.classList.add(t.activeNavigationItemClassName);const i=()=>{for(const i of this.priorityNavigationDomNodes||[]){const n=i.querySelectorAll("ul > li"),r=Array.from(n).filter((t=>!t.classList.contains(e))),s=n[0].offsetTop;let a=[];for(const t of r){t.offsetTop!==s&&a.push(t)}r.length-a.length<this.options.minimumNumberOfMenuItems&&(a=r.slice());const l=i.querySelector(`.${e}`);if(a.length){const e=a.map((t=>t.cloneNode(!0)));for(const e of a)e.classList.add(t.priorityNavigationListItemHideClassName);const n=i.querySelector(t.priorityNavigationOverflowList);if(n)for(const t of e)n.append(t);l&&l.classList.add(o)}else l&&l.classList.remove(o)}};for(const o of this.hostDomNode.querySelectorAll(`.${e}`))this.addSecureEventListener(o,"click",(()=>{let e=null;for(const i of(0,x.getParents)(o))if("matches"in i&&i.matches(`.${t.priorityNavigationClassName}`)){e=i;break}e?.classList.toggle(t.priorityNavigationOverflowOpenClassName)}));for(const n of this.priorityNavigationDomNodes||[]){const r=(0,x.trailingThrottle)((()=>{if(!n.classList.contains(t.priorityNavigationOverflowOpenClassName)){n.classList.add(t.priorityNavigationOverflowResizingClassName);for(const e of n.querySelectorAll(t.priorityNavigationOverflowList))for(;e.firstChild;)e.removeChild(e.firstChild);for(const t of n.querySelectorAll(`.${e}`))t.classList.remove(o);for(const e of n.querySelectorAll("ul > li"))e.classList.contains(t.priorityNavigationOverflowIndicatorClassName)||e.classList.remove(t.priorityNavigationListItemHideClassName);i(),n.classList.remove(t.priorityNavigationOverflowResizingClassName)}}),20),s=new ResizeObserver(r);this.observerDeregisters.push((()=>{s.unobserve(n)})),s.observe(n)}i()}addMenuHighlighterViewTransition(){if(!x.globalContext.document)return;const t=document.createElement("style");t.type="text/css";t.appendChild(x.globalContext.document.createTextNode("\n .wu-priority-navigation__list\n a.wu-priority-navigation__link--active::after {\n view-transition-name: wu-menu-highlight;\n }\n ")),x.globalContext.document.getElementsByTagName("head")[0].appendChild(t)}activateNavigationItemHighlighters(t){const e=this.options.selectors.activeNavigationItemClassName;for(const o of this.priorityNavigationDomNodes||[]){for(const t of o.querySelectorAll(`.${e}`))t.classList.remove(e);for(const i of o.querySelectorAll(`[href="#${t}"]`))i.classList.add(e)}}triggerNavigationItemHighlighterSwitching(t){x.globalContext.document?.startViewTransition?x.globalContext.document.startViewTransition((()=>{this.activateNavigationItemHighlighters(t)})):this.activateNavigationItemHighlighters(t)}async _onButtonClick(t){if(!1===await this.onButtonClick(t))return;const e=t.target,o=(0,x.getText)(e).join(" ");this._onTrack({event:"buttonClick",eventType:"click",label:o,reference:e.getAttribute("action")||e.getAttribute("target")||e.getAttribute("type")||o,subject:"button",value:parseInt(e.getAttribute("website-analytics-value")||"1"),userInteraction:!0})}async _onSectionSwitch(t,e,o){!1!==await this.onSectionSwitch(t,e,o)&&x.globalContext.window?.location&&await this._onTrack({event:"sectionSwitch",eventType:"sectionSwitch",label:t,reference:`${x.globalContext.window.location.pathname}#${t}`,subject:"url",userInteraction:!1})}async _onLinkClick(t){if(!1===await this.onLinkClick(t))return;const e=t.target,o=(0,x.getText)(e).join(" ");this._onTrack({event:"linkClick",eventType:"click",label:o,reference:e.getAttribute("href")||e.getAttribute("action")||e.getAttribute("target")||e.getAttribute("type")||o,subject:"link",value:parseInt(e.getAttribute("website-analytics-value")||"1"),userInteraction:!0})}async _onTrack(t){!1!==await this.onTrack(t)&&this.options.tracking&&x.globalContext.dataLayer?.push(t)}_onViewportMovesToTop(){this._finishScrollToTopButtonTransition();for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;const o=()=>{e.removeEventListener("transitionend",i),e.removeEventListener("transitioncancel",o)},i=()=>{this.viewportIsOnTop&&e.classList.add("wu-top-settled"),o()};e.addEventListener("transitionend",i,{once:!0}),e.addEventListener("transitioncancel",o,{once:!0}),e.classList.add("wu-scroll-up")}}async _onViewportMovesAwayFromTop(){this._finishScrollToTopButtonTransition("wu-top-settled"),await(0,x.timeout)(),this._finishScrollToTopButtonTransition();for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;e.classList.add("wu-scroll-down")}}async switchSection(t,e){if(x.globalContext.window&&"location"in x.globalContext.window&&(""===t||this.options.sectionNames.managed.includes(t)||this.options.sectionNames.unmanaged.includes(t))){var o,i;const n=Object.prototype.hasOwnProperty.call(this.sectionDomNodes,this.currentSectionName)?this.sectionDomNodes[this.currentSectionName]:null!==(o=this.sectionDomNodes.default)&&void 0!==o?o:null,r=Object.prototype.hasOwnProperty.call(this.sectionDomNodes,t)?this.sectionDomNodes[t]:null!==(i=this.sectionDomNodes.default)&&void 0!==i?i:null;await this.self.switchSectionLock.acquire(),this.triggerNavigationItemHighlighterSwitching(t),E.debug(`Run section switch from "${this.currentSectionName}" to`,`"${t}".`),this.currentSectionName===t?(n&&(n.classList.remove("wu-section-active"),n.classList.add("wu-section-inactive")),r&&(r.classList.remove("wu-section-inactive"),r.classList.add("wu-section-active"))):this.options.sectionNames.unmanaged.includes(t)&&this.options.sectionNames.unmanaged.includes(this.currentSectionName)||(this.interruptableScrollToTop(),n&&(await(0,x.fadeOut)(n),n.classList.remove("wu-section-active"),n.classList.add("wu-section-inactive")),r&&(r.classList.remove("wu-section-inactive"),r.classList.add("wu-section-active"),await(0,x.fadeIn)(r)));const s=this.currentSectionName;this.currentSectionName=t;try{await this._onSectionSwitch(this.currentSectionName,s,e)}catch(t){E.warn("Problem due to call section switch callback on section",`"${this.currentSectionName}": ${(0,x.represent)(t)}`)}await this.self.switchSectionLock.release()}}_extendOptions(){this.setPropertyValue("options",(0,x.extend)(!0,{},this.self._defaultOptions,this.options))}_initializeRouting(){""===this.currentSectionName&&(this.currentSectionName=this.options.sectionNames.default),this._bindNavigationEvents();const t=x.globalContext.location?.hash&&x.globalContext.location.hash.substring(1);t&&(this.options.sectionNames.managed.includes(t)||this.options.sectionNames.unmanaged.includes(t))&&(this.currentSectionName=t);for(const t of Object.values(this.sectionDomNodes))t.classList.add("wu-section-inactive");return this.switchSection(t||this.currentSectionName)}_finishScrollToTopButtonTransition(t=["wu-scroll-down","wu-scroll-up"]){for(const o of null!==(e=this.scrollToTopButtonDomNodes)&&void 0!==e?e:[]){var e;o.classList.remove(...[].concat(t))}}_bindScrollEvents(){if(x.globalContext.document){for(const t of[x.globalContext.document.body,x.globalContext.document.querySelector("html"),x.globalContext.window])for(const e of this.options.knownScrollEventNames)t&&this.addSecureEventListener(t,e,(t=>{this.onSwitchToManualScrollingIndicator(t)&&(this.continueAutoScrolling=!1)}));if(x.globalContext.window&&this.addSecureEventListener(x.globalContext.window,"scroll",(t=>{x.globalContext.window?.scrollY?this.viewportIsOnTop&&(this.viewportIsOnTop=!1,this._onViewportMovesAwayFromTop().then(this.onViewportMovesAwayFromTop.bind(this,t))):this.viewportIsOnTop||(this.viewportIsOnTop=!0,this._onViewportMovesToTop(),this.onViewportMovesToTop(t))})),x.globalContext.window?.scrollY)this.viewportIsOnTop=!1,this._onViewportMovesAwayFromTop().then((()=>{this.onViewportMovesAwayFromTop()}));else{this.viewportIsOnTop=!0;for(const e of null!==(t=this.scrollToTopButtonDomNodes)&&void 0!==t?t:[]){var t;e.classList.add("wu-top-settled")}this._onViewportMovesToTop(),this.onViewportMovesToTop()}}}async _removeLoadingCover(){await(0,x.timeout)(this.options.additionalPageLoadingTimeInMilliseconds);for(const t of this.hostDomNode.querySelectorAll(`[class^="${this.options.selectors.startUpAnimationClassPrefix}"], [class*=" ${this.options.selectors.startUpAnimationClassPrefix}"]`))t.style.opacity="0";this.windowLoadingCoverDomNode&&await(0,x.fadeOut)(this.windowLoadingCoverDomNode)}async _performStartUpEffects(){const t=[];let e=1;for(;;){const o=this.hostDomNode.querySelectorAll("."+this.options.selectors.startUpAnimationClassPrefix+String(e));if(0===o.length){await Promise.all(t),this.startUpAnimationIsComplete=!0,this.onStartUpAnimationComplete();break}await(0,x.timeout)(this.options.startUpAnimationElementDelayInMilliseconds);for(const e of o)t.push((0,x.fadeIn)(e));e+=1}}_bindNavigationEvents(){x.globalContext.window&&this.addSecureEventListener(x.globalContext.window,"hashchange",(t=>{if(this.startUpAnimationIsComplete){const e=location.hash.substring(1);this.switchSection(e,t)}})),this._bindScrollToTopButton()}_bindScrollToTopButton(){for(const t of this.scrollToTopButtonDomNodes||[])this.addSecureEventListener(t,"click",(t=>{t.preventDefault(),this.interruptableScrollToTop()}))}_bindClickTracking(){if(this.options.tracking){for(const t of this.hostDomNode.querySelectorAll("a"))this.addSecureEventListener(t,"click",(t=>{this._onLinkClick(t)}));for(const t of this.hostDomNode.querySelectorAll("button"))this.addSecureEventListener(t,"click",(t=>{this._onButtonClick(t)}))}}},L._name="WebsiteUtilities",L._defaultOptions={additionalPageLoadingTimeInMilliseconds:0,startUpAnimationElementDelayInMilliseconds:100,windowLoadedTimeoutAfterDocLoadedInMSec:2e3,domain:"auto",knownScrollEventNames:["DOMMouseScroll","keyup","mousedown","mousewheel","scroll","touchmove","wheel"],sectionNames:{default:"",managed:["home"],unmanaged:[]},selectors:{windowLoadingCover:".wu-window-loading-cover",startUpAnimationClassPrefix:"wu-start-up-animation-number-",top:".wu-header",routerOutlet:".wu-router-outlet",scrollToTopButtons:".wu-scroll-to-top",priorityNavigationClassName:"wu-priority-navigation",priorityNavigationOverflowOpenClassName:"wu-priority-navigation--overflow-open",priorityNavigationOverflowResizingClassName:"wu-priority-navigation--resizing",activeNavigationItemClassName:"wu-priority-navigation__link--active",priorityNavigationListItemHideClassName:"wu-priority-navigation__list__item--hide",priorityNavigationOverflowIndicatorClassName:"wu-priority-navigation__list__overflow-indicator",priorityNavigationOverflowIndicatorShowClassName:"wu-priority-navigation__list__overflow-indicator--show",priorityNavigationOverflowList:".wu-priority-navigation__overflow-list"},minimumNumberOfMenuItems:3,tracking:!1},L.windowLoaded=!1,L.switchSectionLock=new x.Lock,h=L,m=k()(h.prototype,"options",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),w=k()(h.prototype,"onStartUpAnimationComplete",[e],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return x.NOOP}}),f=k()(h.prototype,"onSwitchSection",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return x.NOOP}}),v=k()(h.prototype,"onViewportMovesAwayFromTop",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return x.NOOP}}),g=k()(h.prototype,"onViewportMovesToTop",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return x.NOOP}}),b=k()(h.prototype,"onSwitchToManualScrollingIndicator",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return()=>!0}}),y=k()(h.prototype,"onLoaded",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return x.NOOP}}),N=k()(h.prototype,"onButtonClick",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),S=k()(h.prototype,"onSectionSwitch",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t,e,o){return Promise.resolve(void 0)}}}),T=k()(h.prototype,"onLinkClick",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),C=k()(h.prototype,"onTrack",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return function(t){return Promise.resolve(void 0)}}}),h);const P={component:M,register:(t=(0,x.camelCaseToDelimited)(M._name))=>{customElements.define(t,M)}},z=M;x.globalContext.AUTO_DEFINE_WEBSITE_UTILITIES&&P.register()})(),u})()));
package/index.scss CHANGED
@@ -218,93 +218,184 @@ website-utilities {
218
218
  /* endregion */
219
219
  /* region priority navigation */
220
220
  .wu-priority-navigation {
221
- > ul {
221
+ --animation-duration: 0.25s;
222
+
223
+ position: relative;
224
+
225
+ // NOTE: Important to detect item which where pushed below.
226
+ overflow: visible;
227
+
228
+ &.wu-priority-navigation--resizing {
229
+ overflow: hidden;
230
+ }
231
+
232
+ .wu-priority-navigation__list {
222
233
  list-style: none;
223
234
 
224
- > li {
235
+ li {
225
236
  display: inline-block;
226
237
  position: relative;
227
238
 
228
- &.wu-priority-navigation__overflow {
239
+ &.wu-priority-navigation__list__overflow-indicator {
229
240
  display: none;
230
241
  }
231
242
  }
232
- }
233
243
 
234
- a {
235
- text-decoration: none;
236
- color: white;
237
- display: inline-block;
238
- padding: 10px 15px;
239
- }
240
- /* region menu highlighter */
241
- a::after {
242
- content: " ";
243
- position: absolute;
244
- left: 0;
245
- top: 0;
246
- width: 100%;
247
- height: 100%;
248
- border: none;
249
- box-sizing: border-box;
244
+ a {
245
+ text-decoration: none;
246
+ color: white;
247
+ display: inline-block;
248
+ padding: 10px 15px;
249
+ }
250
+ /* region menu highlighter */
251
+ a::after {
252
+ content: " ";
253
+ position: absolute;
254
+ left: 0;
255
+ top: 0;
256
+ width: 100%;
257
+ height: 100%;
258
+ border: none;
259
+ box-sizing: border-box;
260
+ }
261
+ /*
262
+ NOTE: Will be set to when startup animations have been finished.
263
+
264
+ .wu-priority-navigation__list a.wu-priority-navigation__link--active::after {
265
+ view-transition-name: wu-menu-highlight;
266
+ }
267
+ */
268
+ /* endregion */
269
+
270
+ .wu-priority-navigation__list__overflow-indicator {
271
+ cursor: pointer;
272
+
273
+ width: 2rem;
274
+ height: 2rem;
275
+ position: absolute !important;
276
+ padding-top: 1rem;
277
+
278
+ .wu-priority-navigation__list__overflow-indicator__title {
279
+ transition: all var(--animation-duration);
280
+
281
+ position: absolute;
282
+
283
+ width: 2rem;
284
+ height: 2rem;
285
+
286
+ .wu-priority-navigation__list__overflow-indicator__title__icon {
287
+ background-color: white;
288
+
289
+ transition: all var(--animation-duration);
290
+
291
+ position: relative;
292
+ transform: rotate(0deg);
293
+
294
+ width: 30px;
295
+ height: 1px;
296
+
297
+ &::before,
298
+ &::after {
299
+ position: absolute;
300
+ transition: all var(--animation-duration);
301
+ content: '';
302
+
303
+ background-color: white;
304
+
305
+ transform: rotate(0deg);
306
+
307
+ width: 30px;
308
+ height: 1px;
309
+ }
310
+
311
+ &::before {
312
+ top: -10px;
313
+ }
314
+
315
+ &::after {
316
+ top: 10px;
317
+ }
318
+ }
319
+ }
320
+ }
250
321
  }
251
- /*
252
- NOTE: Will be set to when startup animations have been finished.
253
322
 
254
- a.wu-priority-navigation__link--active::after {
255
- view-transition-name: wu-menu-highlight;
323
+ &.wu-priority-navigation--overflow-open {
324
+ .wu-priority-navigation__overflow-list {
325
+ height: 100%;
326
+ /*
327
+ NOTE: Workaround to enable transition. This value should
328
+ represent an upper bound for the maximum overflow menu
329
+ height.
330
+ */
331
+ max-height: 400px;
256
332
  }
257
- */
258
- /* endregion */
259
333
 
260
- &.resizing {
261
- overflow: hidden;
262
- }
263
- }
334
+ .wu-priority-navigation__list__overflow-indicator
335
+ .wu-priority-navigation__list__overflow-indicator__title
336
+ .wu-priority-navigation__list__overflow-indicator__title__icon {
337
+ transform: rotate(180deg);
338
+ background-color: transparent;
264
339
 
265
- .wu-priority-navigation__overflow__list {
266
- display: block;
267
- width: max-content;
268
- background: white;
269
- box-shadow: 0 0 10px rgb(black, 0.35);
270
- position: absolute;
271
- top: 95%; // moves to 100% on hover generally
272
- right: -20px;
273
- opacity: 0;
274
- visibility: hidden;
275
- padding: 5px 0;
340
+ &::before,
341
+ &::after {
342
+ top: 0;
343
+ }
276
344
 
277
- list-style: none;
345
+ &::before {
346
+ transform: rotate(45deg);
347
+ }
278
348
 
279
- &.wu-priority-navigation__overflow__list--show {
280
- opacity: 1;
281
- visibility: visible;
349
+ &::after {
350
+ transform: rotate(-45deg);
351
+ }
352
+ }
282
353
  }
283
354
 
284
- > li > a {
285
- color: black;
286
- display: block;
355
+ .wu-priority-navigation__overflow-list {
356
+ transition: all var(--animation-duration);
357
+ height: 0;
358
+ max-height: 0;
359
+ width: max-content;
360
+
361
+ list-style: none;
362
+ overflow: hidden;
363
+
364
+ & ul {
365
+ list-style: none;
366
+ padding: 0;
367
+ letter-spacing: 0.4em;
368
+ }
369
+
370
+ & li:first-child {
371
+ margin-top: 0;
372
+ }
373
+
374
+ & li {
375
+ transition: all var(--animation-duration);
376
+ margin-top: 20px;
377
+ padding: 5px 0;
378
+ color: white;
379
+ }
380
+
381
+ & a {
382
+ padding: 8px;
383
+ cursor: pointer;
384
+ }
287
385
  }
288
- }
289
386
 
290
- .wu-priority-navigation__overflow__title {
291
- cursor: pointer;
292
- text-align: center;
293
- border-radius: 50%;
294
- font-size: 10px;
295
- width: 2em;
296
- height: 2em;
297
- line-height: 2.2em;
298
- vertical-align: top;
299
- display: inline-block;
300
- }
387
+ &.wu-priority-navigation--overflow-open
388
+ .wu-priority-navigation__overflow-list {
389
+ width: 100%;
390
+ }
301
391
 
302
- .wu-priority-navigation__list__item--hide {
303
- display: none !important;
304
- }
392
+ .wu-priority-navigation__list__item--hide {
393
+ display: none !important;
394
+ }
305
395
 
306
- .wu-priority-navigation__overflow--inline-block {
307
- display: inline-block !important;
396
+ .wu-priority-navigation__list__overflow-indicator--show {
397
+ display: inline-block !important;
398
+ }
308
399
  }
309
400
  /* endregion */
310
401
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "website-utilities",
3
- "version": "1.0.418",
3
+ "version": "1.0.420",
4
4
  "description": "extend your web app",
5
5
  "keywords": [
6
6
  "website",
@@ -68,22 +68,22 @@
68
68
  "@types/ejs": "^3.1.5",
69
69
  "@types/html-minifier": "^4.0.6",
70
70
  "@types/jsdom": "^28.0.3",
71
- "@types/node": "^25.8.0",
71
+ "@types/node": "^25.9.0",
72
72
  "@types/webpack-env": "^1.18.8",
73
- "@typescript-eslint/eslint-plugin": "^8.59.3",
74
- "@typescript-eslint/parser": "^8.59.3",
73
+ "@typescript-eslint/eslint-plugin": "^8.59.4",
74
+ "@typescript-eslint/parser": "^8.59.4",
75
75
  "@webcomponents/webcomponentsjs": "^2.8.0",
76
76
  "bootstrap-icons": "^1.13.1",
77
- "clientnode": "^4.0.1397",
77
+ "clientnode": "^4.0.1399",
78
78
  "css-loader": "^7.1.4",
79
79
  "cssnano": "^8.0.1",
80
80
  "eslint": "^10.4.0",
81
81
  "eslint-config-google": "^0.14.0",
82
82
  "eslint-plugin-jsdoc": "^62.9.0",
83
- "jest": "^30.3.0",
83
+ "jest": "^30.4.2",
84
84
  "jsdoc": "^4.0.5",
85
85
  "mini-css-extract-plugin": "^2.10.2",
86
- "postcss": "^8.5.14",
86
+ "postcss": "^8.5.15",
87
87
  "postcss-fontpath": "^1.0.0",
88
88
  "postcss-import": "^16.1.1",
89
89
  "postcss-loader": "^8.2.1",
@@ -97,10 +97,10 @@
97
97
  "style-loader": "^4.0.0",
98
98
  "stylelint": "^17.11.1",
99
99
  "stylelint-config-standard-scss": "^17.0.0",
100
- "typescript-eslint": "^8.59.3",
100
+ "typescript-eslint": "^8.59.4",
101
101
  "web-component-wrapper": "^0.0.591",
102
- "web-documentation": "^1.0.14",
103
- "weboptimizer": "^3.0.22",
102
+ "web-documentation": "^1.0.15",
103
+ "weboptimizer": "^3.0.24",
104
104
  "webpack-dev-server": "^5.2.4"
105
105
  },
106
106
  "peerDependencies": {
package/type.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { KnownEventName } from 'web-component-wrapper/type';
2
2
  export interface DefaultOptions {
3
3
  additionalPageLoadingTimeInMilliseconds: number;
4
+ startUpAnimationElementDelayInMilliseconds: number;
5
+ windowLoadedTimeoutAfterDocLoadedInMSec: number;
4
6
  domain: string;
5
7
  knownScrollEventNames: Array<KnownEventName>;
6
8
  sectionNames: {
@@ -14,17 +16,17 @@ export interface DefaultOptions {
14
16
  top: string;
15
17
  routerOutlet: string;
16
18
  scrollToTopButtons: string;
19
+ priorityNavigationClassName: string;
20
+ priorityNavigationOverflowOpenClassName: string;
21
+ priorityNavigationOverflowResizingClassName: string;
17
22
  activeNavigationItemClassName: string;
18
- priorityNavigation: string;
19
- priorityNavigationListItemClassName: string;
20
- priorityNavigationOverflowClassName: string;
21
- priorityNavigationOverflowVisibleClassName: string;
23
+ priorityNavigationListItemHideClassName: string;
24
+ priorityNavigationOverflowIndicatorClassName: string;
25
+ priorityNavigationOverflowIndicatorShowClassName: string;
22
26
  priorityNavigationOverflowList: string;
23
- priorityNavigationOverflowTitle: string;
24
27
  };
25
- startUpAnimationElementDelayInMilliseconds: number;
28
+ minimumNumberOfMenuItems: number;
26
29
  tracking: boolean;
27
- windowLoadedTimeoutAfterDocLoadedInMSec: number;
28
30
  }
29
31
  export type Options = DefaultOptions;
30
32
  export interface TrackingItem {