@watermarkinsights/ripple 3.36.0 → 3.36.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{chartFunctions-41c67866.js → chartFunctions-dcefe35e.js} +1 -1
- package/dist/cjs/{functions-45f36418.js → functions-b85d9b0c.js} +1 -1
- package/dist/cjs/{global-c795cff3.js → global-3efdaff1.js} +1 -1
- package/dist/cjs/{intl-a84cd5ef.js → intl-800e0638.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/priv-chart-popover.cjs.entry.js +1 -1
- package/dist/cjs/priv-datepicker.cjs.entry.js +1 -1
- package/dist/cjs/ripple.cjs.js +2 -2
- package/dist/cjs/wm-action-menu_2.cjs.entry.js +1 -1
- package/dist/cjs/wm-button.cjs.entry.js +9 -2
- package/dist/cjs/wm-chart.cjs.entry.js +3 -3
- package/dist/cjs/wm-datepicker.cjs.entry.js +1 -1
- package/dist/cjs/wm-file.cjs.entry.js +1 -1
- package/dist/cjs/wm-input.cjs.entry.js +2 -2
- package/dist/cjs/wm-line-chart.cjs.entry.js +3 -3
- package/dist/cjs/wm-modal-header.cjs.entry.js +2 -2
- package/dist/cjs/wm-modal.cjs.entry.js +1 -1
- package/dist/cjs/wm-navigation_3.cjs.entry.js +2 -2
- package/dist/cjs/wm-navigator.cjs.entry.js +1 -1
- package/dist/cjs/wm-network-uploader.cjs.entry.js +2 -2
- package/dist/cjs/wm-option_2.cjs.entry.js +2 -2
- package/dist/cjs/wm-pagination.cjs.entry.js +1 -1
- package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +2 -2
- package/dist/cjs/wm-search.cjs.entry.js +2 -2
- package/dist/cjs/wm-snackbar.cjs.entry.js +2 -2
- package/dist/cjs/wm-tab-item_3.cjs.entry.js +1 -1
- package/dist/cjs/wm-tag-input.cjs.entry.js +2 -2
- package/dist/cjs/wm-timepicker.cjs.entry.js +1 -1
- package/dist/cjs/wm-toggletip.cjs.entry.js +1 -1
- package/dist/cjs/wm-uploader.cjs.entry.js +2 -2
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/wm-button/wm-button.js +8 -1
- package/dist/collection/components/wm-button/wm-button.spec.js +6 -0
- package/dist/esm/{chartFunctions-e539d991.js → chartFunctions-38758d18.js} +1 -1
- package/dist/esm/{functions-7fc7cf30.js → functions-da3b00cf.js} +1 -1
- package/dist/esm/{global-1dca883b.js → global-0469a5f5.js} +1 -1
- package/dist/esm/{intl-f0475a8e.js → intl-3eb5074d.js} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/priv-chart-popover.entry.js +1 -1
- package/dist/esm/priv-datepicker.entry.js +1 -1
- package/dist/esm/ripple.js +2 -2
- package/dist/esm/wm-action-menu_2.entry.js +1 -1
- package/dist/esm/wm-button.entry.js +9 -2
- package/dist/esm/wm-chart.entry.js +3 -3
- package/dist/esm/wm-datepicker.entry.js +1 -1
- package/dist/esm/wm-file.entry.js +1 -1
- package/dist/esm/wm-input.entry.js +2 -2
- package/dist/esm/wm-line-chart.entry.js +3 -3
- package/dist/esm/wm-modal-header.entry.js +2 -2
- package/dist/esm/wm-modal.entry.js +1 -1
- package/dist/esm/wm-navigation_3.entry.js +2 -2
- package/dist/esm/wm-navigator.entry.js +1 -1
- package/dist/esm/wm-network-uploader.entry.js +2 -2
- package/dist/esm/wm-option_2.entry.js +2 -2
- package/dist/esm/wm-pagination.entry.js +1 -1
- package/dist/esm/wm-progress-indicator_3.entry.js +2 -2
- package/dist/esm/wm-search.entry.js +2 -2
- package/dist/esm/wm-snackbar.entry.js +2 -2
- package/dist/esm/wm-tab-item_3.entry.js +1 -1
- package/dist/esm/wm-tag-input.entry.js +2 -2
- package/dist/esm/wm-timepicker.entry.js +1 -1
- package/dist/esm/wm-toggletip.entry.js +1 -1
- package/dist/esm/wm-uploader.entry.js +2 -2
- package/dist/esm-es5/{chartFunctions-e539d991.js → chartFunctions-38758d18.js} +1 -1
- package/dist/esm-es5/{functions-7fc7cf30.js → functions-da3b00cf.js} +1 -1
- package/dist/esm-es5/{global-1dca883b.js → global-0469a5f5.js} +1 -1
- package/dist/esm-es5/{intl-f0475a8e.js → intl-3eb5074d.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
- package/dist/esm-es5/priv-datepicker.entry.js +1 -1
- package/dist/esm-es5/ripple.js +1 -1
- package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
- package/dist/esm-es5/wm-button.entry.js +1 -1
- package/dist/esm-es5/wm-chart.entry.js +1 -1
- package/dist/esm-es5/wm-datepicker.entry.js +1 -1
- package/dist/esm-es5/wm-file.entry.js +1 -1
- package/dist/esm-es5/wm-input.entry.js +1 -1
- package/dist/esm-es5/wm-line-chart.entry.js +1 -1
- package/dist/esm-es5/wm-modal-header.entry.js +1 -1
- package/dist/esm-es5/wm-modal.entry.js +1 -1
- package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
- package/dist/esm-es5/wm-navigator.entry.js +1 -1
- package/dist/esm-es5/wm-network-uploader.entry.js +1 -1
- package/dist/esm-es5/wm-option_2.entry.js +1 -1
- package/dist/esm-es5/wm-pagination.entry.js +1 -1
- package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
- package/dist/esm-es5/wm-search.entry.js +1 -1
- package/dist/esm-es5/wm-snackbar.entry.js +1 -1
- package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
- package/dist/esm-es5/wm-tag-input.entry.js +1 -1
- package/dist/esm-es5/wm-timepicker.entry.js +1 -1
- package/dist/esm-es5/wm-toggletip.entry.js +1 -1
- package/dist/esm-es5/wm-uploader.entry.js +1 -1
- package/dist/ripple/{p-1cb7bdc5.entry.js → p-14e956bd.entry.js} +1 -1
- package/dist/ripple/{p-5d78937a.entry.js → p-1678e4b5.entry.js} +1 -1
- package/dist/ripple/{p-4a58b0ff.system.entry.js → p-172fa114.system.entry.js} +1 -1
- package/dist/ripple/{p-a9012b82.system.entry.js → p-1984e1c7.system.entry.js} +1 -1
- package/dist/ripple/{p-2b378ac6.js → p-1eb5a93a.js} +1 -1
- package/dist/ripple/{p-6639cf6c.entry.js → p-203152e7.entry.js} +1 -1
- package/dist/ripple/{p-cabf1867.system.entry.js → p-249597a9.system.entry.js} +1 -1
- package/dist/ripple/{p-f3ff86da.entry.js → p-2683ea3a.entry.js} +1 -1
- package/dist/ripple/{p-56747d40.system.entry.js → p-2c049e82.system.entry.js} +1 -1
- package/dist/ripple/{p-0872dd92.entry.js → p-2c9fa4e1.entry.js} +1 -1
- package/dist/ripple/{p-936e078c.system.js → p-2e52e36f.system.js} +1 -1
- package/dist/ripple/{p-212d0c64.entry.js → p-32c8a588.entry.js} +1 -1
- package/dist/ripple/{p-24ac418e.system.entry.js → p-3642dff3.system.entry.js} +1 -1
- package/dist/ripple/{p-935eafa7.system.entry.js → p-3b138cf2.system.entry.js} +1 -1
- package/dist/ripple/{p-fd0fc5e1.system.entry.js → p-3cc86126.system.entry.js} +1 -1
- package/dist/ripple/{p-6628e036.system.entry.js → p-427747c5.system.entry.js} +1 -1
- package/dist/ripple/{p-5da6b9ff.system.entry.js → p-4891e621.system.entry.js} +1 -1
- package/dist/ripple/{p-6546dda7.entry.js → p-5c2d6dae.entry.js} +1 -1
- package/dist/ripple/{p-765b53d8.system.entry.js → p-63abf623.system.entry.js} +1 -1
- package/dist/ripple/{p-16708229.js → p-69092dc0.js} +1 -1
- package/dist/ripple/{p-74880dac.system.entry.js → p-6fb4eb05.system.entry.js} +1 -1
- package/dist/ripple/{p-08e0007e.system.entry.js → p-70bcec5b.system.entry.js} +1 -1
- package/dist/ripple/{p-d4ebbe84.system.js → p-7eb9bac9.system.js} +1 -1
- package/dist/ripple/{p-71ecba7e.system.entry.js → p-7f1c918f.system.entry.js} +1 -1
- package/dist/ripple/{p-0730d70d.system.entry.js → p-81c40ed3.system.entry.js} +1 -1
- package/dist/ripple/{p-a6317ac6.entry.js → p-81c52231.entry.js} +1 -1
- package/dist/ripple/{p-64abb6d9.system.entry.js → p-86878f67.system.entry.js} +1 -1
- package/dist/ripple/{p-e4f352fe.system.js → p-975c0d09.system.js} +1 -1
- package/dist/ripple/{p-766a4a70.system.entry.js → p-9be73edd.system.entry.js} +1 -1
- package/dist/ripple/{p-89bc016a.js → p-9f3a6192.js} +1 -1
- package/dist/ripple/{p-770f02d4.entry.js → p-a3ce6f93.entry.js} +1 -1
- package/dist/ripple/{p-00850d97.entry.js → p-a7dd417d.entry.js} +1 -1
- package/dist/ripple/{p-0a846e45.entry.js → p-aa3f9686.entry.js} +1 -1
- package/dist/ripple/{p-20495238.js → p-af1d2a68.js} +1 -1
- package/dist/ripple/{p-1a7b1578.system.js → p-b3c4e012.system.js} +1 -1
- package/dist/ripple/{p-4418858d.entry.js → p-bdce95d4.entry.js} +1 -1
- package/dist/ripple/{p-b22858cd.entry.js → p-be78d6db.entry.js} +1 -1
- package/dist/ripple/{p-4d5e075b.system.entry.js → p-bf85a915.system.entry.js} +1 -1
- package/dist/ripple/{p-29960160.system.entry.js → p-c1b36890.system.entry.js} +1 -1
- package/dist/ripple/{p-53b84f6d.entry.js → p-c44fb391.entry.js} +1 -1
- package/dist/ripple/{p-d9268ba1.system.entry.js → p-cd01caeb.system.entry.js} +1 -1
- package/dist/ripple/{p-b111bc7d.entry.js → p-d26d60fd.entry.js} +1 -1
- package/dist/ripple/{p-68f11410.entry.js → p-d3353dda.entry.js} +1 -1
- package/dist/ripple/{p-a7a9c931.entry.js → p-d3b54132.entry.js} +1 -1
- package/dist/ripple/{p-77ea81c7.system.entry.js → p-d3df5034.system.entry.js} +1 -1
- package/dist/ripple/{p-f1aed810.system.entry.js → p-da048416.system.entry.js} +1 -1
- package/dist/ripple/{p-23a5adae.entry.js → p-dea254a1.entry.js} +1 -1
- package/dist/ripple/{p-5e005259.system.entry.js → p-e527bff3.system.entry.js} +1 -1
- package/dist/ripple/p-e54add34.entry.js +1 -0
- package/dist/ripple/{p-7b91eba4.system.entry.js → p-e5e28616.system.entry.js} +1 -1
- package/dist/ripple/{p-2bbf689a.system.entry.js → p-e8732b27.system.entry.js} +1 -1
- package/dist/ripple/{p-8a38e526.system.js → p-ef635a54.system.js} +1 -1
- package/dist/ripple/{p-6f36e973.entry.js → p-f2f4b743.entry.js} +1 -1
- package/dist/ripple/{p-69c802aa.entry.js → p-f3184d03.entry.js} +1 -1
- package/dist/ripple/{p-cd67e184.entry.js → p-f7391b66.entry.js} +1 -1
- package/dist/ripple/{p-f9e942f6.entry.js → p-fbb44d4c.entry.js} +1 -1
- package/dist/ripple/{p-63466d04.entry.js → p-fcb4328c.entry.js} +1 -1
- package/dist/ripple/ripple.esm.js +1 -1
- package/dist/ripple/ripple.js +1 -1
- package/dist/types/components/wm-button/wm-button.d.ts +2 -0
- package/package.json +1 -1
- package/dist/ripple/p-dc069d46.entry.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as a,c as n,h as s,g as r}from"./p-11b416c7.js";import{g as t,s as i,h as o}from"./p-20495238.js";import{g as e}from"./p-2b378ac6.js";const c=class{constructor(s){a(this,s),this.wmSnackbarSnackFinished=n(this,"wmSnackbarSnackFinished",7),this.userFinishedSnack=n(this,"userFinishedSnack",7),this.wmSnackbarActionTriggered=n(this,"wmSnackbarActionTriggered",7),this.userTriggeredAction=n(this,"userTriggeredAction",7),this.parsedNotifications=[],this.uid=this.el.id?this.el.id:t(),this.focusOnDismiss=null,this.timers=[],this.notifications="[]",this.isTabbing=!1,this.announcement=""}updateSnacks(a){const n=this.parsedNotifications.length;if(this.parsedNotifications=[...JSON.parse(a)],n<this.parsedNotifications.length){const a=this.parsedNotifications[0],n=window.setTimeout((()=>this.snackExpired()),2e4);this.timers=[n,...this.timers],this.announce(`${a.message} ${this.isTabbing?"":a.link}`),this.isTabbing&&a.link&&(this.focusOnDismiss=document.activeElement?document.activeElement:null,this.stopTimer(a),window.requestAnimationFrame((()=>{this.el.shadowRoot.querySelector(`#action-${a.id}`).focus()})))}}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}checkForTabbing(a){"Tab"===a.key&&this.toggleTabbingOn()}handleMouse(){this.toggleTabbingOff()}snackDismissed(a){this.endSnack(a),a.link&&this.isTabbing&&this.focusOnDismiss&&(this.focusOnDismiss.focus(),this.focusOnDismiss=null)}snackExpired(){this.endSnack(this.parsedNotifications[this.parsedNotifications.length-1])}endSnack(a){this.stopTimer(a),this.wmSnackbarSnackFinished.emit({id:a.id,message:a.message,link:a.link,newWindow:a.newWindow}),this.userFinishedSnack.emit({id:a.id,message:a.message,link:a.link})}snackLinkClicked(a){this.stopTimer(a),this.wmSnackbarActionTriggered.emit({id:a.id,message:a.message,link:a.link,newWindow:a.newWindow}),this.userTriggeredAction.emit({id:a.id,message:a.message,link:a.link})}stopTimer(a){this.parsedNotifications.forEach(((n,s)=>{n.id===a.id&&(clearTimeout(this.timers[s]),this.timers=this.timers.filter(((a,n)=>{if(n!==s)return a})))}))}announce(a){this.liveRegionEl.textContent===a&&(a+=" "),this.announcement=a}renderSnackbars(){return this.parsedNotifications.map((a=>s("div",{class:"wm-snack-wrapper"},s("div",{id:`snack-${this.uid}`,class:"wm-snackbar active neutral"},s("div",{class:"sr-only",tabindex:a.link?0:-1,onFocus:()=>a.link&&this.snackDismissed(a)}),s("div",{class:"wm-snackbarmsg"},s("div",{class:"msgtext"},s("span",null,a.message),a.link&&s("a",{id:`action-${a.id}`,class:"link "+(a.newWindow?"new-window":""),"aria-label":`Click to ${a.link}...${a.newWindow?" "+e.newWindow:""}`,tabindex:0,onClick:()=>{this.snackLinkClicked(a)},onKeyDown:n=>"Enter"===n.key&&this.snackLinkClicked(a)},s("span",{"aria-hidden":"true"},a.link))),s("button",{id:`close-button-${a.id}`,"aria-label":"Close this notification",class:"closesnack",tabindex:a.link?0:-1,onClick:()=>this.snackDismissed(a),onMouseEnter:a=>i("bottom",a.target,e.close),onMouseLeave:()=>o(),onFocus:a=>this.isTabbing&&i("bottom",a.target,e.close),onBlur:()=>o()})),s("div",{class:"sr-only",tabindex:a.link?0:-1,onFocus:()=>a.link&&this.snackDismissed(a)})))))}render(){return s("div",{class:{"wm-snackbars":!0,empty:0===this.parsedNotifications.length,"user-is-tabbing":this.isTabbing}},s("div",{class:"sr-only","aria-live":"polite","aria-atomic":"false",id:`wm-live-region-${this.uid}`,ref:a=>this.liveRegionEl=a},this.announcement),this.renderSnackbars())}get el(){return r(this)}static get watchers(){return{notifications:["updateSnacks"]}}};c.style=':host{--wmcolor-snackbar-background:var(--wmcolor-background-dark);--wmcolor-snackbar-close-background-hover:var(--wmcolor-button-background-navigational-hover-ondark);--wmcolor-snackbar-close-background:var(--wmcolor-button-background-navigational-ondark);--wmcolor-snackbar-close-icon-hover:var(--wmcolor-button-icon-navigational-hover-ondark);--wmcolor-snackbar-close-icon:var(--wmcolor-button-icon-navigational-ondark);--wmcolor-snackbar-link-background:var(--wmcolor-background-transparent);--wmcolor-snackbar-link:var(--wmcolor-interactive-ondark);--wmcolor-snackbar-text:var(--wmcolor-text-ondark)}:host *{-webkit-box-sizing:border-box;box-sizing:border-box;margin:unset}:host .wm-snackbars{position:fixed;bottom:0;left:1.25rem;right:1.25rem;padding:0.25rem 0.625rem 1.875rem;z-index:2001;max-width:35.5rem;max-height:17.5rem;-webkit-overflow-scrolling:touch;overflow:auto}:host .wm-snackbars.empty{-ms-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-webkit-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-moz-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);padding-top:0;padding-bottom:0}:host .wm-snackbars .wm-snack-wrapper{width:100%;height:100%}:host .wm-snackbars .wm-snack-wrapper:not(:last-child){margin-bottom:1.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar{-webkit-box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-ms-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-webkit-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-moz-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);font-size:0.875rem;color:var(--wmcolor-snackbar-text);padding:0.9375rem 1.875rem;background:var(--wmcolor-snackbar-background);opacity:0;left:0;position:relative;font-family:inherit}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link{letter-spacing:0;text-transform:none;font-size:0.875rem;border:none;background:var(--wmcolor-snackbar-link-background);padding-left:0;padding-right:0;height:auto;border-radius:0;line-height:1;color:var(--wmcolor-snackbar-link);margin:0 3.125rem 0 0.625rem;text-decoration:none;font-weight:600;cursor:pointer}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link.new-window::after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline;content:"\\f137";margin-left:0.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link:hover{text-decoration:underline}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link:focus{outline:none;border:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link::-moz-focus-inner{border:0;outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar:not(:last-child){margin-bottom:1.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar.active:not(button){opacity:1}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;position:relative;padding:0}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .msgtext{width:100%}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;background-color:var(--wmcolor-snackbar-close-background);color:var(--wmcolor-snackbar-close-icon);cursor:pointer;border:none;font-size:1rem;padding:0;height:auto;line-height:1;min-width:2.75rem;min-height:2.75rem;text-align:center;letter-spacing:normal}@media screen and (min-width: 48rem){:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack{min-width:1.875rem;min-height:1.875rem}}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f156";font-size:1.12rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:hover{background-color:var(--wmcolor-snackbar-close-background-hover);color:var(--wmcolor-snackbar-close-icon-hover)}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus{outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack::-moz-focus-inner{border:0;outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:active{-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important;top:0;left:0}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important;top:0;left:0}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active){-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);outline:none}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active)>.tooltip{clip:auto;width:auto;height:auto;opacity:1;-webkit-transition:opacity 500ms 500ms;transition:opacity 500ms 500ms;padding:0.375rem;top:2.75rem;left:2.75rem;white-space:nowrap;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width: 48rem){.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active)>.tooltip{top:2.0625rem;left:auto}}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .link:focus:not(:active){outline:none;background:-webkit-gradient(linear, left top, right top, color-stop(66%, var(--wmcolor-snackbar-link)), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, var(--wmcolor-snackbar-link) 66%, transparent 0) repeat-x;background-size:0.375rem 0.1875rem;background-position:0 1em;border-radius:0;line-height:normal}';export{c as wm_snackbar}
|
|
1
|
+
import{r as a,c as n,h as s,g as r}from"./p-11b416c7.js";import{g as t,s as i,h as o}from"./p-af1d2a68.js";import{g as e}from"./p-1eb5a93a.js";const c=class{constructor(s){a(this,s),this.wmSnackbarSnackFinished=n(this,"wmSnackbarSnackFinished",7),this.userFinishedSnack=n(this,"userFinishedSnack",7),this.wmSnackbarActionTriggered=n(this,"wmSnackbarActionTriggered",7),this.userTriggeredAction=n(this,"userTriggeredAction",7),this.parsedNotifications=[],this.uid=this.el.id?this.el.id:t(),this.focusOnDismiss=null,this.timers=[],this.notifications="[]",this.isTabbing=!1,this.announcement=""}updateSnacks(a){const n=this.parsedNotifications.length;if(this.parsedNotifications=[...JSON.parse(a)],n<this.parsedNotifications.length){const a=this.parsedNotifications[0],n=window.setTimeout((()=>this.snackExpired()),2e4);this.timers=[n,...this.timers],this.announce(`${a.message} ${this.isTabbing?"":a.link}`),this.isTabbing&&a.link&&(this.focusOnDismiss=document.activeElement?document.activeElement:null,this.stopTimer(a),window.requestAnimationFrame((()=>{this.el.shadowRoot.querySelector(`#action-${a.id}`).focus()})))}}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}checkForTabbing(a){"Tab"===a.key&&this.toggleTabbingOn()}handleMouse(){this.toggleTabbingOff()}snackDismissed(a){this.endSnack(a),a.link&&this.isTabbing&&this.focusOnDismiss&&(this.focusOnDismiss.focus(),this.focusOnDismiss=null)}snackExpired(){this.endSnack(this.parsedNotifications[this.parsedNotifications.length-1])}endSnack(a){this.stopTimer(a),this.wmSnackbarSnackFinished.emit({id:a.id,message:a.message,link:a.link,newWindow:a.newWindow}),this.userFinishedSnack.emit({id:a.id,message:a.message,link:a.link})}snackLinkClicked(a){this.stopTimer(a),this.wmSnackbarActionTriggered.emit({id:a.id,message:a.message,link:a.link,newWindow:a.newWindow}),this.userTriggeredAction.emit({id:a.id,message:a.message,link:a.link})}stopTimer(a){this.parsedNotifications.forEach(((n,s)=>{n.id===a.id&&(clearTimeout(this.timers[s]),this.timers=this.timers.filter(((a,n)=>{if(n!==s)return a})))}))}announce(a){this.liveRegionEl.textContent===a&&(a+=" "),this.announcement=a}renderSnackbars(){return this.parsedNotifications.map((a=>s("div",{class:"wm-snack-wrapper"},s("div",{id:`snack-${this.uid}`,class:"wm-snackbar active neutral"},s("div",{class:"sr-only",tabindex:a.link?0:-1,onFocus:()=>a.link&&this.snackDismissed(a)}),s("div",{class:"wm-snackbarmsg"},s("div",{class:"msgtext"},s("span",null,a.message),a.link&&s("a",{id:`action-${a.id}`,class:"link "+(a.newWindow?"new-window":""),"aria-label":`Click to ${a.link}...${a.newWindow?" "+e.newWindow:""}`,tabindex:0,onClick:()=>{this.snackLinkClicked(a)},onKeyDown:n=>"Enter"===n.key&&this.snackLinkClicked(a)},s("span",{"aria-hidden":"true"},a.link))),s("button",{id:`close-button-${a.id}`,"aria-label":"Close this notification",class:"closesnack",tabindex:a.link?0:-1,onClick:()=>this.snackDismissed(a),onMouseEnter:a=>i("bottom",a.target,e.close),onMouseLeave:()=>o(),onFocus:a=>this.isTabbing&&i("bottom",a.target,e.close),onBlur:()=>o()})),s("div",{class:"sr-only",tabindex:a.link?0:-1,onFocus:()=>a.link&&this.snackDismissed(a)})))))}render(){return s("div",{class:{"wm-snackbars":!0,empty:0===this.parsedNotifications.length,"user-is-tabbing":this.isTabbing}},s("div",{class:"sr-only","aria-live":"polite","aria-atomic":"false",id:`wm-live-region-${this.uid}`,ref:a=>this.liveRegionEl=a},this.announcement),this.renderSnackbars())}get el(){return r(this)}static get watchers(){return{notifications:["updateSnacks"]}}};c.style=':host{--wmcolor-snackbar-background:var(--wmcolor-background-dark);--wmcolor-snackbar-close-background-hover:var(--wmcolor-button-background-navigational-hover-ondark);--wmcolor-snackbar-close-background:var(--wmcolor-button-background-navigational-ondark);--wmcolor-snackbar-close-icon-hover:var(--wmcolor-button-icon-navigational-hover-ondark);--wmcolor-snackbar-close-icon:var(--wmcolor-button-icon-navigational-ondark);--wmcolor-snackbar-link-background:var(--wmcolor-background-transparent);--wmcolor-snackbar-link:var(--wmcolor-interactive-ondark);--wmcolor-snackbar-text:var(--wmcolor-text-ondark)}:host *{-webkit-box-sizing:border-box;box-sizing:border-box;margin:unset}:host .wm-snackbars{position:fixed;bottom:0;left:1.25rem;right:1.25rem;padding:0.25rem 0.625rem 1.875rem;z-index:2001;max-width:35.5rem;max-height:17.5rem;-webkit-overflow-scrolling:touch;overflow:auto}:host .wm-snackbars.empty{-ms-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-webkit-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-moz-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);padding-top:0;padding-bottom:0}:host .wm-snackbars .wm-snack-wrapper{width:100%;height:100%}:host .wm-snackbars .wm-snack-wrapper:not(:last-child){margin-bottom:1.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar{-webkit-box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 3px rgba(0, 0, 0, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-ms-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-webkit-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);-moz-transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);transition:all 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);font-size:0.875rem;color:var(--wmcolor-snackbar-text);padding:0.9375rem 1.875rem;background:var(--wmcolor-snackbar-background);opacity:0;left:0;position:relative;font-family:inherit}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link{letter-spacing:0;text-transform:none;font-size:0.875rem;border:none;background:var(--wmcolor-snackbar-link-background);padding-left:0;padding-right:0;height:auto;border-radius:0;line-height:1;color:var(--wmcolor-snackbar-link);margin:0 3.125rem 0 0.625rem;text-decoration:none;font-weight:600;cursor:pointer}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link.new-window::after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline;content:"\\f137";margin-left:0.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link:hover{text-decoration:underline}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link:focus{outline:none;border:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .link::-moz-focus-inner{border:0;outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar:not(:last-child){margin-bottom:1.25rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar.active:not(button){opacity:1}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;position:relative;padding:0}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .msgtext{width:100%}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;background-color:var(--wmcolor-snackbar-close-background);color:var(--wmcolor-snackbar-close-icon);cursor:pointer;border:none;font-size:1rem;padding:0;height:auto;line-height:1;min-width:2.75rem;min-height:2.75rem;text-align:center;letter-spacing:normal}@media screen and (min-width: 48rem){:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack{min-width:1.875rem;min-height:1.875rem}}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f156";font-size:1.12rem}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:hover{background-color:var(--wmcolor-snackbar-close-background-hover);color:var(--wmcolor-snackbar-close-icon-hover)}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus{outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack::-moz-focus-inner{border:0;outline:none}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:active{-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}:host .wm-snackbars .wm-snack-wrapper .wm-snackbar .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important;top:0;left:0}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important;top:0;left:0}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active){-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus-ondark);outline:none}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active)>.tooltip{clip:auto;width:auto;height:auto;opacity:1;-webkit-transition:opacity 500ms 500ms;transition:opacity 500ms 500ms;padding:0.375rem;top:2.75rem;left:2.75rem;white-space:nowrap;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width: 48rem){.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .closesnack:focus:not(:active)>.tooltip{top:2.0625rem;left:auto}}.user-is-tabbing .wm-snack-wrapper .wm-snackbar .wm-snackbarmsg .link:focus:not(:active){outline:none;background:-webkit-gradient(linear, left top, right top, color-stop(66%, var(--wmcolor-snackbar-link)), color-stop(0, transparent)) repeat-x;background:linear-gradient(90deg, var(--wmcolor-snackbar-link) 66%, transparent 0) repeat-x;background-size:0.375rem 0.1875rem;background-position:0 1em;border-radius:0;line-height:normal}';export{c as wm_snackbar}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(t,e,i,n){function r(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,o){function a(t){try{l(n.next(t))}catch(t){o(t)}}function s(t){try{l(n["throw"](t))}catch(t){o(t)}}function l(t){t.done?i(t.value):r(t.value).then(a,s)}l((n=n.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,r,o,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(t){return function(e){return l([t,e])}}function l(s){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(i=0)),i)try{if(n=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:i.label++;return{value:s[1],done:false};case 5:i.label++;r=s[1];s=[0];continue;case 7:s=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){i=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(s[0]===6&&i.label<o[1]){i.label=o[1];o=s;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(s);break}if(o[2])i.ops.pop();i.trys.pop();continue}s=e.call(t,i)}catch(t){s=[6,t];r=0}finally{n=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};System.register(["./p-c467a1e1.system.js","./p-d4ebbe84.system.js","./p-e4f352fe.system.js","./p-936e078c.system.js"],(function(t){"use strict";var e,i,n,r,o,a,s,l,c,h,p,d,u,v,f,g;return{setters:[function(t){e=t.r;i=t.f;n=t.h;r=t.H;o=t.g},function(t){a=t.d;s=t.A;l=t.u;c=t.B;h=t.C;p=t.D},function(t){d=t.m;u=t.n},function(t){v=t.l;f=t.c;g=t.g}],execute:function(){var x=':host{--wmcolor-linechart-currentposition:var(--wmcolor-lavender);--wmcolor-linechart-delta-text-negative:var(--wmcolor-text-negative);--wmcolor-linechart-delta-text-positive:var(--wmcolor-text-positive);--wmcolor-linechart-gridline:var(--wmcolor-chart-gridline);--wmcolor-linechart-highlight-background:var(--wmcolor-background-highlight);--wmcolor-linechart-popover-background:var(--wmcolor-chart-popover-background);display:block;height:500px;width:100%;font-size:14px;overflow-y:visible;overflow-x:auto}:host .component-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:562px;width:100%;height:100%;outline:none}:host .icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;position:relative;color:var(--iconColor);-webkit-transform:var(--translation, unset);transform:var(--translation, unset)}:host .icon:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);padding:0 3px;z-index:1}:host .icon:after{color:white;position:absolute;left:3px;-webkit-transform:scale(180%);transform:scale(180%);display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);z-index:0}:host .legend{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px 16px;margin-top:4px;margin-bottom:16px}:host .legend .legend-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:default;font-weight:600}:host .legend .legend-label.faded{opacity:0.3}:host .legend .legend-label .icon{margin-right:4px}:host .legend .visibility-toggle{margin-left:4px}:host .chart-wrapper{position:relative;-ms-flex-positive:1;flex-grow:1;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:1fr auto auto;margin-right:16px}:host .chart-label{font-size:14px;font-weight:600}:host .chart-label.--y-axis{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:var(--labelWidth);align-self:center;margin-right:16px;grid-area:1/1/2/2;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}:host .chart-label.--x-axis{margin-top:16px;text-align:center;grid-area:3/3/4/4}:host .y-intervals{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;grid-area:1/2/2/3;margin-right:4px}:host .y-intervals .y-interval{text-align:right}:host .x-intervals{display:grid;grid-template-columns:var(--columns);grid-area:2/3/3/4;line-height:1;margin-top:4px}:host .x-intervals .x-interval{text-align:center}:host .x-intervals .x-interval:first-child{text-align:left}:host .x-intervals .x-interval:last-child{text-align:right}:host .x-intervals .x-interval.hidden{visibility:hidden}:host .plot-area{position:relative;grid-area:1/3/2/4;background-image:linear-gradient(90deg, var(--wmcolor-linechart-gridline) 1px, transparent 1px);border-bottom:1px solid var(--wmcolor-linechart-gridline);background-size:var(--backgroundSize)}:host .plot-area.right-border{border-right:1px solid var(--wmcolor-linechart-gridline)}:host .line{position:absolute;width:100%;height:100%}:host .line .icon{position:absolute;-webkit-transform:var(--translation);transform:var(--translation);left:var(--xPosition);top:var(--yPosition);z-index:1}:host .line .icon:focus{z-index:2;outline:none}:host .line .icon:focus:before{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border-radius:3px}:host .line .icon:focus:before::-moz-focus-inner{border:0}:host .line .line-svg{height:100%;width:100%}:host .line.faded{opacity:0.3}:host .line.focused{z-index:1}:host .line.hidden{visibility:hidden}:host .hover-area-wrapper{position:absolute;width:100%;height:100%;top:0;left:0;display:grid;grid-template-rows:1fr;grid-template-columns:var(--columns)}:host .hover-indicator{-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;height:100%;width:2px;border:1px solid var(--wmcolor-linechart-currentposition);-webkit-transform:translateX(-50%);transform:translateX(-50%);left:var(--xPosition);grid-column:3/4;grid-row:1/2;pointer-events:none}:host .popover{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:400px;background-color:var(--wmcolor-linechart-popover-background);position:absolute;top:var(--topPosition, 0);left:var(--leftPosition, unset);right:var(--rightPosition, unset);padding:16px;border-radius:5px;-webkit-box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);-webkit-transform:translateY(-50%);transform:translateY(-50%);line-height:1;z-index:3;grid-column:3/4;grid-row:1/2;pointer-events:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host .popover .title{font-size:16px;font-weight:600}:host .popover .comparison-title{font-style:italic;margin-top:4px}:host .popover .unit{font-size:12px;font-weight:600}:host .popover .unit.--x{margin-left:4px}:host .popover .popover-table{margin-top:16px}:host .popover .popover-table .popover-row{line-height:1}:host .popover .popover-table .popover-row:not(:last-child) td{padding-bottom:8px}:host .popover .popover-table .popover-row .row-label{font-weight:600;padding-right:16px;overflow-wrap:anywhere}:host .popover .popover-table .popover-row .row-label .icon{margin-right:4px}:host .popover .popover-table .popover-row .row-value,:host .popover .popover-table .popover-row .delta{text-align:right;white-space:nowrap}:host .popover .popover-table .popover-row .delta{padding-left:12px;font-weight:600}:host .popover .popover-table .popover-row .delta.--positive{color:var(--wmcolor-linechart-delta-text-positive)}:host .popover .popover-table .popover-row .delta.--negative{color:var(--wmcolor-linechart-delta-text-negative)}:host .highlight{position:absolute;height:100%;background-color:color-mix(in srgb, var(--wmcolor-linechart-highlight-background) 60%, transparent);left:var(--startPercentage);right:var(--endPercentage)}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';var b=t("wm_line_chart",function(){function t(t){var i=this;e(this,t);this.minTickWidth=120;this.popoverData=[];this.focusedDataPoint=[0,0];this.dataPointMatrix=[];this.xIntervals=[];this.displayedXIntervals=[];this.yIntervals=[];this.lineStyles=[{color:"#8b86ca",icon:"f536"},{color:"#2e1b46",icon:"f12f"},{color:"#0089e4",icon:"f763"},{color:"#088000",icon:"f4ce"},{color:"#ea8500",icon:"f70a"},{color:"#d54f41",icon:"f536"},{color:"#146ca9",icon:"f6ff"}];this.debouncedResize=a((function(){return __awaiter(i,void 0,void 0,(function(){return __generator(this,(function(t){this.displayedXIntervals=this.determineDisplayedXIntervals();return[2]}))}))}),100);this.label=undefined;this.description="";this.xAxisLabel=undefined;this.yAxisLabel=undefined;this.lineData=undefined;this.units="null,null";this.labelWidth="120px";this.highlightQualifier="highlighted";this.highlightStart=undefined;this.highlightEnd=undefined;this.visibilityToggles=false;this.showDeltas=false;this.yRange=undefined;this.parsedLineData={};this.displayedPopover=-1;this.focusedLine=-1;this.hiddenLines=[];this.isTabbing=false;this.intervalSkip=0;this.announcement=""}t.prototype.parseData=function(){var t=this;this.parsedLineData=JSON.parse(this.lineData);this.yIntervals=this.calcYIntervals().reverse();this.xIntervals=Object.keys(Object.values(this.parsedLineData)[0]);this.displayedXIntervals=this.determineDisplayedXIntervals();this.dataPointMatrix=Object.entries(this.parsedLineData).map((function(e){return t.buildLineDataPointDetails(e[0],e[1])}));this.popoverData=s(this.dataPointMatrix)};t.prototype.handleIntervalSkip=function(){this.parseData()};Object.defineProperty(t.prototype,"hasPartialInterval",{get:function(){return this.intervalSkip>0&&this.xIntervals.length%2===0},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"parsedUnits",{get:function(){return l(this.units).map((function(t){return t==="null"?null:t}))},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"visibilityToggleEls",{get:function(){return this.legendEl.querySelectorAll("wm-button")},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"lineEls",{get:function(){return this.plotAreaEl.querySelectorAll(".line")},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"firstVisibleLineIdx",{get:function(){var t=0;while(this.hiddenLines.includes(t)){t++}return t<this.dataPointMatrix.length?t:-1},enumerable:false,configurable:true});t.prototype.toggleTabbingOn=function(){this.isTabbing=true};t.prototype.toggleTabbingOff=function(){this.isTabbing=false};t.prototype.componentWillLoad=function(){this.parseData()};t.prototype.componentDidLoad=function(){var t=this;var e=new ResizeObserver((function(){return t.debouncedResize()}));e.observe(this.el)};t.prototype.handleVisibilityToggleKeydown=function(t,e){switch(t.key){case"Tab":if(!t.shiftKey&&this.firstVisibleLineIdx!==-1){t.preventDefault();this.announce(this.lineFocusMessage(this.firstVisibleLineIdx));this.focusDataPoint(this.firstVisibleLineIdx,0)}break;case"ArrowUp":case"ArrowLeft":t.preventDefault();var i=c(e,-1,this.dataPointMatrix.length-1);this.visibilityToggleEls[i].focus();break;case"ArrowDown":case"ArrowRight":t.preventDefault();var n=c(e,1,this.dataPointMatrix.length-1);this.visibilityToggleEls[n].focus();break}};t.prototype.handleDataPointKeydown=function(t){var e=this.focusedDataPoint,i=e[0],n=e[1];var r=this.lineEls[i].querySelectorAll(".point").length;var o=this.dataPointMatrix.length;switch(t.key){case"Tab":if(t.shiftKey&&this.visibilityToggles){t.preventDefault();this.visibilityToggleEls[0].focus()}break;case"ArrowUp":t.preventDefault();var a=i;do{a=c(a,-1,o-1)}while(this.hiddenLines.includes(a));this.announce(this.lineFocusMessage(a));this.focusDataPoint(a,n);break;case"ArrowDown":t.preventDefault();var s=i;do{s=c(s,1,o-1)}while(this.hiddenLines.includes(s));this.announce(this.lineFocusMessage(s));this.focusDataPoint(s,n);break;case"ArrowLeft":t.preventDefault();var l=c(n,-1,r-1);this.focusDataPoint(i,l);break;case"ArrowRight":t.preventDefault();var h=c(n,1,r-1);this.focusDataPoint(i,h);break}};t.prototype.announce=function(t){if(this.liveRegionEl.textContent===t){t+=" "}this.announcement=t};t.prototype.lineFocusMessage=function(t){var e=this.dataPointMatrix[t][0].lineLabel;var i=this.dataPointMatrix[t].filter((function(t){return t.yValue!==null})).length;return"".concat(e,", line ").concat(t+1," of ").concat(this.dataPointMatrix.length," with ").concat(i," data points")};t.prototype.focusDataPoint=function(t,e){var i=this.lineEls[t];var n=i.querySelectorAll(".point")[e];var r=this.plotAreaEl.querySelectorAll(".point");r.forEach((function(t){return t.tabIndex=-1}));n.tabIndex=0;n.focus();this.focusedDataPoint=[t,e]};t.prototype.focusDataPointByEl=function(t){var e=parseInt(t.dataset.lineidx);var i=Array.from(t.parentElement.querySelectorAll(".point")).indexOf(t);var n=this.plotAreaEl.querySelectorAll(".point");n.forEach((function(t){return t.tabIndex=-1}));t.tabIndex=0;t.focus();this.focusedDataPoint=[e,i]};t.prototype.calcYIntervals=function(){var t=[];if(this.yRange){t=l(this.yRange).map((function(t){return parseInt(t)}))}else{var e=[];var i=Object.values(this.parsedLineData).flat();i.forEach((function(t){return e.push.apply(e,Object.values(t))}));var n=e.filter((function(t){return t!==null}));var r=Math.min.apply(Math,n);var o=Math.max.apply(Math,n);var a=u(o-r,4);var s=a;while(r%a!==0&&s>0){r--;s--}a=u(o-r,4);var c=r;while(c<=o+a){t.push(c);c+=a}}return t};t.prototype.determineDisplayedXIntervals=function(){var t=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?Math.round(this.plotAreaEl.clientWidth/this.minTickWidth):this.xIntervals.length;var e=h(this.xIntervals,t),i=e.skipInterval,n=e.skippedList;this.intervalSkip=i;return n};t.prototype.buildLineDataPointDetails=function(t,e){var i=this;var n=[];var r=Object.entries(e);var o;r.forEach((function(e,a){var s=e[0],l=e[1];var c=100/(r.length-1)*a;var h=l===null?null:100-p(l,i.yIntervals[i.yIntervals.length-1],i.yIntervals[0]);if(a===0){c+=i.plotAreaEl&&i.plotAreaEl.clientWidth>0?8/i.plotAreaEl.clientWidth*100:1}if(s===i.highlightStart&&!o){o=true}n.push({lineLabel:t,xValue:s,yValue:l,xPositionPercent:c,yPositionPercent:h,highlighted:o});if(s===i.highlightEnd&&o){o=false}}));return n};t.prototype.toggleLineVisibility=function(t){if(this.hiddenLines.includes(t)){this.hiddenLines=this.hiddenLines.filter((function(e){return e!==t}))}else{this.hiddenLines.push(t)}i(this.el)};t.prototype.resetDataPointFocus=function(){this.displayedPopover=-1;var t=this.plotAreaEl.querySelectorAll(".point");t.forEach((function(t){return t.tabIndex=-1}));if(this.firstVisibleLineIdx!==-1){var e=this.lineEls[this.firstVisibleLineIdx];var i=e.querySelectorAll(".point")[0];i.tabIndex=0;this.focusedDataPoint=[this.firstVisibleLineIdx,0]}};t.prototype.calcDelta=function(t,e){var i;if(t.yValue===null||e.yValue===null){i=v.noData}else if(t.yValue==e.yValue){i="0%"}else if(e.yValue==0){i="-"}else{var n=(t.yValue-e.yValue)/e.yValue*100;var r=Math.round(n*100)/100;i="".concat(r>0?"+":"").concat(r,"%")}return i};t.prototype.renderLegend=function(){var t=this;var e=Object.keys(this.parsedLineData);return n("div",{ref:function(e){return t.legendEl=e},class:"legend"},e.map((function(e,i){var r=t.hiddenLines.includes(i);var o=t.focusedLine!==-1&&t.focusedLine!==i;return n("div",{id:"legend-label-".concat(i),class:"legend-label ".concat(o?"faded":""),onMouseEnter:function(){return t.focusedLine=r?-1:i},onMouseLeave:function(){return t.focusedLine=-1}},t.renderIcon(i),e,t.visibilityToggles&&t.renderVisibilityToggle(e,i,r))})))};t.prototype.renderVisibilityToggle=function(t,e,i){var r=this;return n("wm-button",{id:"visibility-button-".concat(e),class:"visibility-toggle","label-for-identical-buttons":"".concat(e===0?"Toggle line visibility list with ".concat(this.dataPointMatrix.length," items"):""," ").concat(i?g.show:g.hide," ").concat(t," toggle ").concat(i?"pressed":""),"button-type":"navigational",tooltip:i?g.show:g.hide,tooltipPosition:"bottom",icon:i?"f209":"f208",onClick:function(){return r.toggleLineVisibility(e)},onKeyDown:function(t){return r.handleVisibilityToggleKeydown(t,e)},onFocus:function(){return r.displayedPopover=-1}})};t.prototype.renderIcon=function(t){var e=this.lineStyles[t],i=e.color,r=e.icon;var o={"--iconColor":i,"--icon":'"\\'.concat(r,'"'),"--translation":t===5?"rotate(180deg)":"unset"};return n("span",{class:"icon",style:o})};t.prototype.renderXIntervals=function(){var t=this;var e={"--columns":".5fr repeat(".concat(this.xIntervals.length-2,", 1fr) .5fr")};return n("div",{class:"x-intervals",style:e},this.xIntervals.map((function(e){return n("span",{class:"x-interval ".concat(t.displayedXIntervals.includes(e)?"":"hidden")},e)})))};t.prototype.renderYIntervals=function(){var t=this;return n("div",{ref:function(e){return t.yIntervalsEl=e},class:"y-intervals"},this.yIntervals.map((function(t){return n("span",{class:"y-interval"},d(t))})))};t.prototype.renderData=function(){var t=this;return this.dataPointMatrix.map((function(e,i){var r=t.focusedLine===i?"focused":"faded";var o=t.hiddenLines.includes(i);return n("div",{class:"line ".concat(t.focusedLine!==-1?r:""," ").concat(o?"hidden":"")},t.renderLines(i),t.renderPoints(i))}))};t.prototype.renderPoints=function(t){var e=this;var i=this.dataPointMatrix[t];return n("div",{class:"line-icons"},i.map((function(r,o){var a=r.lineLabel,s=r.xValue,l=r.yValue,c=r.xPositionPercent,h=r.yPositionPercent,p=r.highlighted;if(l!==null){var d=e.lineStyles[t],u=d.color,f=d.icon;var g=t===0&&o===0?0:undefined;var x={"--icon":'"\\'.concat(f,'"'),"--iconColor":u,"--xPosition":c+"%","--yPosition":h+"%","--translation":t===5?"translate(-50%, -50%) rotate(180deg)":"translate(-50%, -50%)"};var b="".concat(a," ").concat(p?e.highlightQualifier:""," ").concat(e.xAxisLabel," ").concat(s+(e.parsedUnits[0]?e.parsedUnits[0]:""),", ").concat(e.yAxisLabel,": ").concat(l+(e.parsedUnits[1]?e.parsedUnits[1]:""));if(e.showDeltas&&o>0){var y=i[o-1];var m=v.getChangeSince(y.xValue);b+=", ".concat(m," ").concat(e.calcDelta(r,y))}return n("span",{id:"".concat(a,"-").concat(o),role:"img","aria-label":b,tabIndex:g,class:"point icon",style:x,"data-lineidx":t,"data-xvalue":s,onKeyDown:function(t){return e.handleDataPointKeydown(t)},onFocus:function(){return e.displayedPopover=o},onClick:function(t){return e.focusDataPointByEl(t.target)},onMouseEnter:function(){return e.displayedPopover=o}})}})))};t.prototype.renderLines=function(t){var e=this;var i=this.dataPointMatrix[t];return n("svg",{class:"line-svg"},i.map((function(r,o){var a=r.yValue!==null&&o!==i.length-1&&i[o+1].yValue!==null;if(a){var s=e.lineStyles[t].color;var l=r.xPositionPercent,c=r.yPositionPercent;var h=i[o+1],p=h.xPositionPercent,d=h.yPositionPercent;return n("line",{x1:l+"%",y1:c+"%",x2:p+"%",y2:d+"%",stroke:s,"stroke-width":"2px"})}})))};t.prototype.renderHoverAreas=function(){var t=this;var e={"--columns":".5fr repeat(".concat(this.xIntervals.length-2,", 1fr) .5fr")};return n("div",{class:"hover-area-wrapper",style:e,onMouseLeave:function(){return t.displayedPopover=-1}},this.xIntervals.map((function(e,i){return n("div",{onMouseEnter:function(){return t.displayedPopover=i}})})))};t.prototype.renderPopover=function(){var t=this;var e=this.popoverData[this.displayedPopover];var i=e[0].xPositionPercent;var r=e.map((function(t){return t.yPositionPercent})).filter((function(t){return t!==null}));var o=r.reduce((function(t,e){return t+e}),0)/r.length;var a=this.plotAreaEl.querySelector('.point[data-xvalue="'.concat(this.dataPointMatrix[0][this.displayedPopover].xValue,'"]'));var s=this.el.getBoundingClientRect();var l=a.getBoundingClientRect();var c=s.right-l.right;var h=l.left-s.left;var p=c>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400);var d=h>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400);var u=8/this.plotAreaEl.clientWidth*100;var f={"--leftPosition":p?i+u+"%":"unset","--rightPosition":d?100-i+u+"%":"unset","--topPosition":o+"%",transform:"translateY(-50%)"};if(!d&&!p){var g="0px - ".concat(this.labelWidth," - 20px - ").concat(this.yIntervalsEl.clientWidth+"px"," + ").concat(this.el.scrollLeft+"px"," + 2px");f={"--leftPosition":"0%","--topPosition":"0%",maxWidth:Math.min(this.el.clientWidth-2,400)+"px",transform:"translateX(calc(".concat(g,"))")}}return n("div",{ref:function(e){return t.popoverEl=e},class:"popover",style:f},n("div",{class:"title"},e[0].xValue,this.parsedUnits[0]&&n("span",{class:"unit --x"},"(",this.parsedUnits[0],")")),this.showDeltas&&this.displayedPopover>0&&n("div",{class:"comparison-title"},v.getChangeSince(this.popoverData[this.displayedPopover-1][0].xValue)),this.renderPopoverTable())};t.prototype.renderPopoverTable=function(){var t=this;var e=this.popoverData[this.displayedPopover];return n("table",{class:"popover-table"},e.map((function(e,i){if(!t.hiddenLines.includes(i)){var r=e.lineLabel,o=e.yValue;var a=t.displayedPopover>0?t.popoverData[t.displayedPopover-1][i]:null;var s=o!==null?(new Intl.NumberFormat).format(o):null;return n("tr",{class:"popover-row"},n("td",null,t.renderIcon(i)),n("td",{class:"row-label"},r),n("td",{class:"row-value"},o===null?v.noData:s,o!==null&&t.parsedUnits[1]&&n("span",{class:"unit --y"},t.parsedUnits[1])),t.showDeltas&&a&&t.renderDeltas(e,a))}})))};t.prototype.renderDeltas=function(t,e){var i=this.calcDelta(t,e);var r=i.toString()[0]=="+"||i=="-"?"positive":i.toString()[0]=="-"?"negative":"";return e&&n("td",{class:"delta --".concat(r)},i)};t.prototype.renderHoverIndicator=function(){var t=this.dataPointMatrix[0][this.displayedPopover].xPositionPercent;var e={"--xPosition":t+"%"};return n("div",{class:"hover-indicator",style:e})};t.prototype.renderHighlight=function(){var t=this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightStart)].xPositionPercent;var e=this.highlightEnd?100-this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightEnd)].xPositionPercent:0;var i={"--startPercentage":t+"%","--endPercentage":e+"%"};return n("div",{class:"highlight",style:i})};t.prototype.render=function(){var t=this;return n(r,{onBlur:function(){return t.resetDataPointFocus()},onMouseLeave:function(){return t.displayedPopover=-1}},n("div",{class:"component-wrapper",role:"application","aria-roledescription":f.interactiveChart,"aria-label":this.label,"aria-describedby":"chart-description"},this.renderLegend(),n("div",{class:"chart-wrapper"},n("div",{class:"chart-label --y-axis",style:{"--labelWidth":this.labelWidth}},this.yAxisLabel,this.parsedUnits[1]&&" (".concat(this.parsedUnits[1],")")),this.renderYIntervals(),n("div",{ref:function(e){return t.plotAreaEl=e},class:"plot-area ".concat(this.hasPartialInterval?"":"right-border"),style:{"--backgroundSize":"".concat(this.dataPointMatrix[0][this.xIntervals.indexOf(this.displayedXIntervals[1])].xPositionPercent,"%")}},this.highlightStart&&this.renderHighlight(),this.renderData(),this.renderHoverAreas()),this.displayedPopover!==-1&&this.renderHoverIndicator(),this.displayedPopover!==-1&&this.renderPopover(),this.renderXIntervals(),n("div",{class:"chart-label --x-axis"},this.xAxisLabel,this.parsedUnits[0]&&" (".concat(this.parsedUnits[0],")"))),n("div",{id:"chart-description",class:"sr-only"},"".concat(v.instructions," ").concat(this.description)),n("div",{ref:function(e){return t.liveRegionEl=e},"aria-live":"polite",class:"sr-only"},this.announcement)))};Object.defineProperty(t.prototype,"el",{get:function(){return o(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{lineData:["parseData"],intervalSkip:["handleIntervalSkip"]}},enumerable:false,configurable:true});return t}());b.style=x}}}));
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(t,e,i,n){function r(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,o){function a(t){try{l(n.next(t))}catch(t){o(t)}}function s(t){try{l(n["throw"](t))}catch(t){o(t)}}function l(t){t.done?i(t.value):r(t.value).then(a,s)}l((n=n.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,r,o,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(t){return function(e){return l([t,e])}}function l(s){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(i=0)),i)try{if(n=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:i.label++;return{value:s[1],done:false};case 5:i.label++;r=s[1];s=[0];continue;case 7:s=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){i=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(s[0]===6&&i.label<o[1]){i.label=o[1];o=s;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(s);break}if(o[2])i.ops.pop();i.trys.pop();continue}s=e.call(t,i)}catch(t){s=[6,t];r=0}finally{n=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};System.register(["./p-c467a1e1.system.js","./p-7eb9bac9.system.js","./p-975c0d09.system.js","./p-2e52e36f.system.js"],(function(t){"use strict";var e,i,n,r,o,a,s,l,c,h,p,d,u,v,f,g;return{setters:[function(t){e=t.r;i=t.f;n=t.h;r=t.H;o=t.g},function(t){a=t.d;s=t.A;l=t.u;c=t.B;h=t.C;p=t.D},function(t){d=t.m;u=t.n},function(t){v=t.l;f=t.c;g=t.g}],execute:function(){var x=':host{--wmcolor-linechart-currentposition:var(--wmcolor-lavender);--wmcolor-linechart-delta-text-negative:var(--wmcolor-text-negative);--wmcolor-linechart-delta-text-positive:var(--wmcolor-text-positive);--wmcolor-linechart-gridline:var(--wmcolor-chart-gridline);--wmcolor-linechart-highlight-background:var(--wmcolor-background-highlight);--wmcolor-linechart-popover-background:var(--wmcolor-chart-popover-background);display:block;height:500px;width:100%;font-size:14px;overflow-y:visible;overflow-x:auto}:host .component-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:562px;width:100%;height:100%;outline:none}:host .icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;position:relative;color:var(--iconColor);-webkit-transform:var(--translation, unset);transform:var(--translation, unset)}:host .icon:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);padding:0 3px;z-index:1}:host .icon:after{color:white;position:absolute;left:3px;-webkit-transform:scale(180%);transform:scale(180%);display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);z-index:0}:host .legend{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px 16px;margin-top:4px;margin-bottom:16px}:host .legend .legend-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:default;font-weight:600}:host .legend .legend-label.faded{opacity:0.3}:host .legend .legend-label .icon{margin-right:4px}:host .legend .visibility-toggle{margin-left:4px}:host .chart-wrapper{position:relative;-ms-flex-positive:1;flex-grow:1;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:1fr auto auto;margin-right:16px}:host .chart-label{font-size:14px;font-weight:600}:host .chart-label.--y-axis{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:var(--labelWidth);align-self:center;margin-right:16px;grid-area:1/1/2/2;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}:host .chart-label.--x-axis{margin-top:16px;text-align:center;grid-area:3/3/4/4}:host .y-intervals{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;grid-area:1/2/2/3;margin-right:4px}:host .y-intervals .y-interval{text-align:right}:host .x-intervals{display:grid;grid-template-columns:var(--columns);grid-area:2/3/3/4;line-height:1;margin-top:4px}:host .x-intervals .x-interval{text-align:center}:host .x-intervals .x-interval:first-child{text-align:left}:host .x-intervals .x-interval:last-child{text-align:right}:host .x-intervals .x-interval.hidden{visibility:hidden}:host .plot-area{position:relative;grid-area:1/3/2/4;background-image:linear-gradient(90deg, var(--wmcolor-linechart-gridline) 1px, transparent 1px);border-bottom:1px solid var(--wmcolor-linechart-gridline);background-size:var(--backgroundSize)}:host .plot-area.right-border{border-right:1px solid var(--wmcolor-linechart-gridline)}:host .line{position:absolute;width:100%;height:100%}:host .line .icon{position:absolute;-webkit-transform:var(--translation);transform:var(--translation);left:var(--xPosition);top:var(--yPosition);z-index:1}:host .line .icon:focus{z-index:2;outline:none}:host .line .icon:focus:before{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border-radius:3px}:host .line .icon:focus:before::-moz-focus-inner{border:0}:host .line .line-svg{height:100%;width:100%}:host .line.faded{opacity:0.3}:host .line.focused{z-index:1}:host .line.hidden{visibility:hidden}:host .hover-area-wrapper{position:absolute;width:100%;height:100%;top:0;left:0;display:grid;grid-template-rows:1fr;grid-template-columns:var(--columns)}:host .hover-indicator{-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;height:100%;width:2px;border:1px solid var(--wmcolor-linechart-currentposition);-webkit-transform:translateX(-50%);transform:translateX(-50%);left:var(--xPosition);grid-column:3/4;grid-row:1/2;pointer-events:none}:host .popover{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:400px;background-color:var(--wmcolor-linechart-popover-background);position:absolute;top:var(--topPosition, 0);left:var(--leftPosition, unset);right:var(--rightPosition, unset);padding:16px;border-radius:5px;-webkit-box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);-webkit-transform:translateY(-50%);transform:translateY(-50%);line-height:1;z-index:3;grid-column:3/4;grid-row:1/2;pointer-events:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host .popover .title{font-size:16px;font-weight:600}:host .popover .comparison-title{font-style:italic;margin-top:4px}:host .popover .unit{font-size:12px;font-weight:600}:host .popover .unit.--x{margin-left:4px}:host .popover .popover-table{margin-top:16px}:host .popover .popover-table .popover-row{line-height:1}:host .popover .popover-table .popover-row:not(:last-child) td{padding-bottom:8px}:host .popover .popover-table .popover-row .row-label{font-weight:600;padding-right:16px;overflow-wrap:anywhere}:host .popover .popover-table .popover-row .row-label .icon{margin-right:4px}:host .popover .popover-table .popover-row .row-value,:host .popover .popover-table .popover-row .delta{text-align:right;white-space:nowrap}:host .popover .popover-table .popover-row .delta{padding-left:12px;font-weight:600}:host .popover .popover-table .popover-row .delta.--positive{color:var(--wmcolor-linechart-delta-text-positive)}:host .popover .popover-table .popover-row .delta.--negative{color:var(--wmcolor-linechart-delta-text-negative)}:host .highlight{position:absolute;height:100%;background-color:color-mix(in srgb, var(--wmcolor-linechart-highlight-background) 60%, transparent);left:var(--startPercentage);right:var(--endPercentage)}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';var b=t("wm_line_chart",function(){function t(t){var i=this;e(this,t);this.minTickWidth=120;this.popoverData=[];this.focusedDataPoint=[0,0];this.dataPointMatrix=[];this.xIntervals=[];this.displayedXIntervals=[];this.yIntervals=[];this.lineStyles=[{color:"#8b86ca",icon:"f536"},{color:"#2e1b46",icon:"f12f"},{color:"#0089e4",icon:"f763"},{color:"#088000",icon:"f4ce"},{color:"#ea8500",icon:"f70a"},{color:"#d54f41",icon:"f536"},{color:"#146ca9",icon:"f6ff"}];this.debouncedResize=a((function(){return __awaiter(i,void 0,void 0,(function(){return __generator(this,(function(t){this.displayedXIntervals=this.determineDisplayedXIntervals();return[2]}))}))}),100);this.label=undefined;this.description="";this.xAxisLabel=undefined;this.yAxisLabel=undefined;this.lineData=undefined;this.units="null,null";this.labelWidth="120px";this.highlightQualifier="highlighted";this.highlightStart=undefined;this.highlightEnd=undefined;this.visibilityToggles=false;this.showDeltas=false;this.yRange=undefined;this.parsedLineData={};this.displayedPopover=-1;this.focusedLine=-1;this.hiddenLines=[];this.isTabbing=false;this.intervalSkip=0;this.announcement=""}t.prototype.parseData=function(){var t=this;this.parsedLineData=JSON.parse(this.lineData);this.yIntervals=this.calcYIntervals().reverse();this.xIntervals=Object.keys(Object.values(this.parsedLineData)[0]);this.displayedXIntervals=this.determineDisplayedXIntervals();this.dataPointMatrix=Object.entries(this.parsedLineData).map((function(e){return t.buildLineDataPointDetails(e[0],e[1])}));this.popoverData=s(this.dataPointMatrix)};t.prototype.handleIntervalSkip=function(){this.parseData()};Object.defineProperty(t.prototype,"hasPartialInterval",{get:function(){return this.intervalSkip>0&&this.xIntervals.length%2===0},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"parsedUnits",{get:function(){return l(this.units).map((function(t){return t==="null"?null:t}))},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"visibilityToggleEls",{get:function(){return this.legendEl.querySelectorAll("wm-button")},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"lineEls",{get:function(){return this.plotAreaEl.querySelectorAll(".line")},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"firstVisibleLineIdx",{get:function(){var t=0;while(this.hiddenLines.includes(t)){t++}return t<this.dataPointMatrix.length?t:-1},enumerable:false,configurable:true});t.prototype.toggleTabbingOn=function(){this.isTabbing=true};t.prototype.toggleTabbingOff=function(){this.isTabbing=false};t.prototype.componentWillLoad=function(){this.parseData()};t.prototype.componentDidLoad=function(){var t=this;var e=new ResizeObserver((function(){return t.debouncedResize()}));e.observe(this.el)};t.prototype.handleVisibilityToggleKeydown=function(t,e){switch(t.key){case"Tab":if(!t.shiftKey&&this.firstVisibleLineIdx!==-1){t.preventDefault();this.announce(this.lineFocusMessage(this.firstVisibleLineIdx));this.focusDataPoint(this.firstVisibleLineIdx,0)}break;case"ArrowUp":case"ArrowLeft":t.preventDefault();var i=c(e,-1,this.dataPointMatrix.length-1);this.visibilityToggleEls[i].focus();break;case"ArrowDown":case"ArrowRight":t.preventDefault();var n=c(e,1,this.dataPointMatrix.length-1);this.visibilityToggleEls[n].focus();break}};t.prototype.handleDataPointKeydown=function(t){var e=this.focusedDataPoint,i=e[0],n=e[1];var r=this.lineEls[i].querySelectorAll(".point").length;var o=this.dataPointMatrix.length;switch(t.key){case"Tab":if(t.shiftKey&&this.visibilityToggles){t.preventDefault();this.visibilityToggleEls[0].focus()}break;case"ArrowUp":t.preventDefault();var a=i;do{a=c(a,-1,o-1)}while(this.hiddenLines.includes(a));this.announce(this.lineFocusMessage(a));this.focusDataPoint(a,n);break;case"ArrowDown":t.preventDefault();var s=i;do{s=c(s,1,o-1)}while(this.hiddenLines.includes(s));this.announce(this.lineFocusMessage(s));this.focusDataPoint(s,n);break;case"ArrowLeft":t.preventDefault();var l=c(n,-1,r-1);this.focusDataPoint(i,l);break;case"ArrowRight":t.preventDefault();var h=c(n,1,r-1);this.focusDataPoint(i,h);break}};t.prototype.announce=function(t){if(this.liveRegionEl.textContent===t){t+=" "}this.announcement=t};t.prototype.lineFocusMessage=function(t){var e=this.dataPointMatrix[t][0].lineLabel;var i=this.dataPointMatrix[t].filter((function(t){return t.yValue!==null})).length;return"".concat(e,", line ").concat(t+1," of ").concat(this.dataPointMatrix.length," with ").concat(i," data points")};t.prototype.focusDataPoint=function(t,e){var i=this.lineEls[t];var n=i.querySelectorAll(".point")[e];var r=this.plotAreaEl.querySelectorAll(".point");r.forEach((function(t){return t.tabIndex=-1}));n.tabIndex=0;n.focus();this.focusedDataPoint=[t,e]};t.prototype.focusDataPointByEl=function(t){var e=parseInt(t.dataset.lineidx);var i=Array.from(t.parentElement.querySelectorAll(".point")).indexOf(t);var n=this.plotAreaEl.querySelectorAll(".point");n.forEach((function(t){return t.tabIndex=-1}));t.tabIndex=0;t.focus();this.focusedDataPoint=[e,i]};t.prototype.calcYIntervals=function(){var t=[];if(this.yRange){t=l(this.yRange).map((function(t){return parseInt(t)}))}else{var e=[];var i=Object.values(this.parsedLineData).flat();i.forEach((function(t){return e.push.apply(e,Object.values(t))}));var n=e.filter((function(t){return t!==null}));var r=Math.min.apply(Math,n);var o=Math.max.apply(Math,n);var a=u(o-r,4);var s=a;while(r%a!==0&&s>0){r--;s--}a=u(o-r,4);var c=r;while(c<=o+a){t.push(c);c+=a}}return t};t.prototype.determineDisplayedXIntervals=function(){var t=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?Math.round(this.plotAreaEl.clientWidth/this.minTickWidth):this.xIntervals.length;var e=h(this.xIntervals,t),i=e.skipInterval,n=e.skippedList;this.intervalSkip=i;return n};t.prototype.buildLineDataPointDetails=function(t,e){var i=this;var n=[];var r=Object.entries(e);var o;r.forEach((function(e,a){var s=e[0],l=e[1];var c=100/(r.length-1)*a;var h=l===null?null:100-p(l,i.yIntervals[i.yIntervals.length-1],i.yIntervals[0]);if(a===0){c+=i.plotAreaEl&&i.plotAreaEl.clientWidth>0?8/i.plotAreaEl.clientWidth*100:1}if(s===i.highlightStart&&!o){o=true}n.push({lineLabel:t,xValue:s,yValue:l,xPositionPercent:c,yPositionPercent:h,highlighted:o});if(s===i.highlightEnd&&o){o=false}}));return n};t.prototype.toggleLineVisibility=function(t){if(this.hiddenLines.includes(t)){this.hiddenLines=this.hiddenLines.filter((function(e){return e!==t}))}else{this.hiddenLines.push(t)}i(this.el)};t.prototype.resetDataPointFocus=function(){this.displayedPopover=-1;var t=this.plotAreaEl.querySelectorAll(".point");t.forEach((function(t){return t.tabIndex=-1}));if(this.firstVisibleLineIdx!==-1){var e=this.lineEls[this.firstVisibleLineIdx];var i=e.querySelectorAll(".point")[0];i.tabIndex=0;this.focusedDataPoint=[this.firstVisibleLineIdx,0]}};t.prototype.calcDelta=function(t,e){var i;if(t.yValue===null||e.yValue===null){i=v.noData}else if(t.yValue==e.yValue){i="0%"}else if(e.yValue==0){i="-"}else{var n=(t.yValue-e.yValue)/e.yValue*100;var r=Math.round(n*100)/100;i="".concat(r>0?"+":"").concat(r,"%")}return i};t.prototype.renderLegend=function(){var t=this;var e=Object.keys(this.parsedLineData);return n("div",{ref:function(e){return t.legendEl=e},class:"legend"},e.map((function(e,i){var r=t.hiddenLines.includes(i);var o=t.focusedLine!==-1&&t.focusedLine!==i;return n("div",{id:"legend-label-".concat(i),class:"legend-label ".concat(o?"faded":""),onMouseEnter:function(){return t.focusedLine=r?-1:i},onMouseLeave:function(){return t.focusedLine=-1}},t.renderIcon(i),e,t.visibilityToggles&&t.renderVisibilityToggle(e,i,r))})))};t.prototype.renderVisibilityToggle=function(t,e,i){var r=this;return n("wm-button",{id:"visibility-button-".concat(e),class:"visibility-toggle","label-for-identical-buttons":"".concat(e===0?"Toggle line visibility list with ".concat(this.dataPointMatrix.length," items"):""," ").concat(i?g.show:g.hide," ").concat(t," toggle ").concat(i?"pressed":""),"button-type":"navigational",tooltip:i?g.show:g.hide,tooltipPosition:"bottom",icon:i?"f209":"f208",onClick:function(){return r.toggleLineVisibility(e)},onKeyDown:function(t){return r.handleVisibilityToggleKeydown(t,e)},onFocus:function(){return r.displayedPopover=-1}})};t.prototype.renderIcon=function(t){var e=this.lineStyles[t],i=e.color,r=e.icon;var o={"--iconColor":i,"--icon":'"\\'.concat(r,'"'),"--translation":t===5?"rotate(180deg)":"unset"};return n("span",{class:"icon",style:o})};t.prototype.renderXIntervals=function(){var t=this;var e={"--columns":".5fr repeat(".concat(this.xIntervals.length-2,", 1fr) .5fr")};return n("div",{class:"x-intervals",style:e},this.xIntervals.map((function(e){return n("span",{class:"x-interval ".concat(t.displayedXIntervals.includes(e)?"":"hidden")},e)})))};t.prototype.renderYIntervals=function(){var t=this;return n("div",{ref:function(e){return t.yIntervalsEl=e},class:"y-intervals"},this.yIntervals.map((function(t){return n("span",{class:"y-interval"},d(t))})))};t.prototype.renderData=function(){var t=this;return this.dataPointMatrix.map((function(e,i){var r=t.focusedLine===i?"focused":"faded";var o=t.hiddenLines.includes(i);return n("div",{class:"line ".concat(t.focusedLine!==-1?r:""," ").concat(o?"hidden":"")},t.renderLines(i),t.renderPoints(i))}))};t.prototype.renderPoints=function(t){var e=this;var i=this.dataPointMatrix[t];return n("div",{class:"line-icons"},i.map((function(r,o){var a=r.lineLabel,s=r.xValue,l=r.yValue,c=r.xPositionPercent,h=r.yPositionPercent,p=r.highlighted;if(l!==null){var d=e.lineStyles[t],u=d.color,f=d.icon;var g=t===0&&o===0?0:undefined;var x={"--icon":'"\\'.concat(f,'"'),"--iconColor":u,"--xPosition":c+"%","--yPosition":h+"%","--translation":t===5?"translate(-50%, -50%) rotate(180deg)":"translate(-50%, -50%)"};var b="".concat(a," ").concat(p?e.highlightQualifier:""," ").concat(e.xAxisLabel," ").concat(s+(e.parsedUnits[0]?e.parsedUnits[0]:""),", ").concat(e.yAxisLabel,": ").concat(l+(e.parsedUnits[1]?e.parsedUnits[1]:""));if(e.showDeltas&&o>0){var y=i[o-1];var m=v.getChangeSince(y.xValue);b+=", ".concat(m," ").concat(e.calcDelta(r,y))}return n("span",{id:"".concat(a,"-").concat(o),role:"img","aria-label":b,tabIndex:g,class:"point icon",style:x,"data-lineidx":t,"data-xvalue":s,onKeyDown:function(t){return e.handleDataPointKeydown(t)},onFocus:function(){return e.displayedPopover=o},onClick:function(t){return e.focusDataPointByEl(t.target)},onMouseEnter:function(){return e.displayedPopover=o}})}})))};t.prototype.renderLines=function(t){var e=this;var i=this.dataPointMatrix[t];return n("svg",{class:"line-svg"},i.map((function(r,o){var a=r.yValue!==null&&o!==i.length-1&&i[o+1].yValue!==null;if(a){var s=e.lineStyles[t].color;var l=r.xPositionPercent,c=r.yPositionPercent;var h=i[o+1],p=h.xPositionPercent,d=h.yPositionPercent;return n("line",{x1:l+"%",y1:c+"%",x2:p+"%",y2:d+"%",stroke:s,"stroke-width":"2px"})}})))};t.prototype.renderHoverAreas=function(){var t=this;var e={"--columns":".5fr repeat(".concat(this.xIntervals.length-2,", 1fr) .5fr")};return n("div",{class:"hover-area-wrapper",style:e,onMouseLeave:function(){return t.displayedPopover=-1}},this.xIntervals.map((function(e,i){return n("div",{onMouseEnter:function(){return t.displayedPopover=i}})})))};t.prototype.renderPopover=function(){var t=this;var e=this.popoverData[this.displayedPopover];var i=e[0].xPositionPercent;var r=e.map((function(t){return t.yPositionPercent})).filter((function(t){return t!==null}));var o=r.reduce((function(t,e){return t+e}),0)/r.length;var a=this.plotAreaEl.querySelector('.point[data-xvalue="'.concat(this.dataPointMatrix[0][this.displayedPopover].xValue,'"]'));var s=this.el.getBoundingClientRect();var l=a.getBoundingClientRect();var c=s.right-l.right;var h=l.left-s.left;var p=c>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400);var d=h>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400);var u=8/this.plotAreaEl.clientWidth*100;var f={"--leftPosition":p?i+u+"%":"unset","--rightPosition":d?100-i+u+"%":"unset","--topPosition":o+"%",transform:"translateY(-50%)"};if(!d&&!p){var g="0px - ".concat(this.labelWidth," - 20px - ").concat(this.yIntervalsEl.clientWidth+"px"," + ").concat(this.el.scrollLeft+"px"," + 2px");f={"--leftPosition":"0%","--topPosition":"0%",maxWidth:Math.min(this.el.clientWidth-2,400)+"px",transform:"translateX(calc(".concat(g,"))")}}return n("div",{ref:function(e){return t.popoverEl=e},class:"popover",style:f},n("div",{class:"title"},e[0].xValue,this.parsedUnits[0]&&n("span",{class:"unit --x"},"(",this.parsedUnits[0],")")),this.showDeltas&&this.displayedPopover>0&&n("div",{class:"comparison-title"},v.getChangeSince(this.popoverData[this.displayedPopover-1][0].xValue)),this.renderPopoverTable())};t.prototype.renderPopoverTable=function(){var t=this;var e=this.popoverData[this.displayedPopover];return n("table",{class:"popover-table"},e.map((function(e,i){if(!t.hiddenLines.includes(i)){var r=e.lineLabel,o=e.yValue;var a=t.displayedPopover>0?t.popoverData[t.displayedPopover-1][i]:null;var s=o!==null?(new Intl.NumberFormat).format(o):null;return n("tr",{class:"popover-row"},n("td",null,t.renderIcon(i)),n("td",{class:"row-label"},r),n("td",{class:"row-value"},o===null?v.noData:s,o!==null&&t.parsedUnits[1]&&n("span",{class:"unit --y"},t.parsedUnits[1])),t.showDeltas&&a&&t.renderDeltas(e,a))}})))};t.prototype.renderDeltas=function(t,e){var i=this.calcDelta(t,e);var r=i.toString()[0]=="+"||i=="-"?"positive":i.toString()[0]=="-"?"negative":"";return e&&n("td",{class:"delta --".concat(r)},i)};t.prototype.renderHoverIndicator=function(){var t=this.dataPointMatrix[0][this.displayedPopover].xPositionPercent;var e={"--xPosition":t+"%"};return n("div",{class:"hover-indicator",style:e})};t.prototype.renderHighlight=function(){var t=this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightStart)].xPositionPercent;var e=this.highlightEnd?100-this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightEnd)].xPositionPercent:0;var i={"--startPercentage":t+"%","--endPercentage":e+"%"};return n("div",{class:"highlight",style:i})};t.prototype.render=function(){var t=this;return n(r,{onBlur:function(){return t.resetDataPointFocus()},onMouseLeave:function(){return t.displayedPopover=-1}},n("div",{class:"component-wrapper",role:"application","aria-roledescription":f.interactiveChart,"aria-label":this.label,"aria-describedby":"chart-description"},this.renderLegend(),n("div",{class:"chart-wrapper"},n("div",{class:"chart-label --y-axis",style:{"--labelWidth":this.labelWidth}},this.yAxisLabel,this.parsedUnits[1]&&" (".concat(this.parsedUnits[1],")")),this.renderYIntervals(),n("div",{ref:function(e){return t.plotAreaEl=e},class:"plot-area ".concat(this.hasPartialInterval?"":"right-border"),style:{"--backgroundSize":"".concat(this.dataPointMatrix[0][this.xIntervals.indexOf(this.displayedXIntervals[1])].xPositionPercent,"%")}},this.highlightStart&&this.renderHighlight(),this.renderData(),this.renderHoverAreas()),this.displayedPopover!==-1&&this.renderHoverIndicator(),this.displayedPopover!==-1&&this.renderPopover(),this.renderXIntervals(),n("div",{class:"chart-label --x-axis"},this.xAxisLabel,this.parsedUnits[0]&&" (".concat(this.parsedUnits[0],")"))),n("div",{id:"chart-description",class:"sr-only"},"".concat(v.instructions," ").concat(this.description)),n("div",{ref:function(e){return t.liveRegionEl=e},"aria-live":"polite",class:"sr-only"},this.announcement)))};Object.defineProperty(t.prototype,"el",{get:function(){return o(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{lineData:["parseData"],intervalSkip:["handleIntervalSkip"]}},enumerable:false,configurable:true});return t}());b.style=x}}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,f as s,g as o}from"./p-11b416c7.js";import{i as r,o as a,E as n}from"./p-20495238.js";const d=class{constructor(s){t(this,s),this.cellTriggered=e(this,"cellTriggered",7),this.toggleButtonClicked=e(this,"toggleButtonClicked",7),this.popupClosed=e(this,"popupClosed",7),this.popupBlurred=e(this,"popupBlurred",7),this.popupClicked=!0,this.buttonClicked=!0,this.prevClicked=!0,this.nextClicked=!0,this.openUp=!1,this.calendar_months=[r.formatMessage({id:"date.january",defaultMessage:"January",description:"Month of the year"}),r.formatMessage({id:"date.february",defaultMessage:"February",description:"Month of the year"}),r.formatMessage({id:"date.march",defaultMessage:"March",description:"Month of the year"}),r.formatMessage({id:"date.april",defaultMessage:"April",description:"Month of the year"}),r.formatMessage({id:"date.may",defaultMessage:"May",description:"Month of the year"}),r.formatMessage({id:"date.june",defaultMessage:"June",description:"Month of the year"}),r.formatMessage({id:"date.july",defaultMessage:"July",description:"Month of the year"}),r.formatMessage({id:"date.august",defaultMessage:"August",description:"Month of the year"}),r.formatMessage({id:"date.september",defaultMessage:"September",description:"Month of the year"}),r.formatMessage({id:"date.october",defaultMessage:"October",description:"Month of the year"}),r.formatMessage({id:"date.november",defaultMessage:"November",description:"Month of the year"}),r.formatMessage({id:"date.december",defaultMessage:"December",description:"Month of the year"})],this.weekdays=[r.formatMessage({id:"date.sunday",defaultMessage:"Sunday"}),r.formatMessage({id:"date.monday",defaultMessage:"Monday"}),r.formatMessage({id:"date.tuesday",defaultMessage:"Tuesday"}),r.formatMessage({id:"date.wednesday",defaultMessage:"Wednesday"}),r.formatMessage({id:"date.thursday",defaultMessage:"Thursday"}),r.formatMessage({id:"date.friday",defaultMessage:"Friday"}),r.formatMessage({id:"date.saturday",defaultMessage:"Saturday"})],this.renderCalendarDate=(t,e)=>{let s=this.removeZeroes(String(t[1])),o=this.removeZeroes(String(t[2])),a=s===this.monthInFocus?"current-month":"";const n=t[0]+t[1]+t[2],d=this.isDateToday(t);return i("div",{role:"gridcell",id:`cell-${n}-${this.parentId}`,class:`date-cell ${a}`,"aria-selected":!1,"aria-label":`${d?`${r.formatMessage({id:"date.today",defaultMessage:"today",description:"calendar button"})}, `:""}${this.weekdays[e]}, ${this.calendar_months[s-1]} ${o}, ${t[0]}`,onClick:t=>{this.handleTriggeredDate(t.target)},onKeyDown:t=>this.trapFocusEnd(t),"data-month":t[1],"data-year":t[0],onBlur:t=>t.stopPropagation()},o)},this.disabled=!1,this.isExpanded=!1,this.view="day",this.date=new Date,this.selectedYear=this.date.getUTCFullYear(),this.selectedMonth=this.date.getUTCMonth()+1,this.selectedDay=this.date.getUTCDate(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.monthNumInFocus=this.selectedMonth,this.parentId="",this.isTabbing=!1}handleKey(t){switch(this.prevClicked=!1,this.nextClicked=!1,t.key){case"Enter":t.preventDefault(),!t.target.id.includes("popup-title")&&t.target.click();break;case"Escape":t.preventDefault(),this.isExpanded&&(t.stopPropagation(),this.closePopup(!0));break;case"PageUp":t.preventDefault(),this.backOneMonth();break;case"PageDown":t.preventDefault(),this.forwardOneMonth();break;case"Home":t.preventDefault(),this.unfocusCell(),this.dayInFocus=1,s(this.el);break;case"End":t.preventDefault(),this.unfocusCell(),this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus),s(this.el);break;case"ArrowLeft":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),1===this.dayInFocus){const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year,this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus)}else this.dayInFocus-=1;else this.unfocusMonth(),0===this.monthNumInFocus?this.monthNumInFocus=11:this.monthNumInFocus-=1;break;case"ArrowRight":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),this.dayInFocus===this.getMonthDays(this.monthInFocus,this.yearInFocus)){const t=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year,this.dayInFocus=1}else this.dayInFocus+=1;else this.unfocusMonth(),11===this.monthNumInFocus?this.monthNumInFocus=0:this.monthNumInFocus+=1;break;case"ArrowUp":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),this.dayInFocus<8){const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=7-this.dayInFocus;this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus)-e}else this.dayInFocus-=7;else this.unfocusMonth(),this.monthNumInFocus<3?this.monthNumInFocus+=9:this.monthNumInFocus-=3;break;case"ArrowDown":if(t.preventDefault(),this.isExpanded)if("day"===this.view){if(!(document.activeElement.shadowRoot||document).activeElement.classList.contains("date-cell")){this.focusCell();break}this.unfocusCell();const t=this.getMonthDays(this.monthInFocus,this.yearInFocus)-7;if(this.dayInFocus>t){const e=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=e.month,this.yearInFocus=e.year,this.dayInFocus=this.dayInFocus-t}else this.dayInFocus+=7}else{const t=(document.activeElement.shadowRoot||document).activeElement;if("BUTTON"===t.tagName||t.id.includes("popup-title-year")){this.focusMonth();break}this.unfocusMonth(),this.monthNumInFocus>8?this.monthNumInFocus-=9:this.monthNumInFocus+=3}else this.openPopup()}}toggleTabbingOn(t){["Tab","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Enter"].includes(t.key)&&(this.isTabbing=!0)}toggleTabbingOff(){this.isTabbing=!1}blurHandler(t){this.popupClicked||this.buttonClicked||!this.isExpanded||(this.closePopup(),this.popupBlurred.emit({relatedTarget:t.target})),this.popupClicked=!1,this.buttonClicked=!1}handleBlurOnWindow(t){this.isExpanded&&(this.closePopup(),this.popupBlurred.emit({relatedTarget:t.target}))}componentDidUpdate(){this.handleSelectedDate(),this.isExpanded&&(this.prevClicked?this.prevButton.focus():this.nextClicked?this.nextButton.focus():"day"===this.view?this.focusCell():this.focusMonth())}componentDidLoad(){this.handleSelectedDate(),this.setDateValuesForView()}zeroPad(t,e){return String.prototype.padStart||(String.prototype.padStart=function(t,e){return(t-=this.length)>e.length&&(e+=e.repeat(t/e.length)),e.slice(0,t)+String(this)}),`${t.toString()}`.padStart(e,"0")}removeZeroes(t){return+t<10?+t.slice(1):+t}isDateToday(t){const e=new Date;return[e.getFullYear().toString(),(e.getMonth()+1).toString(),e.getDate().toString()].reduce(((e,i,s)=>e&&this.removeZeroes(t[s]).toString()===i),!0)}togglePopup(){this.isExpanded?this.closePopup():this.openPopup(),this.buttonClicked=!0}closePopup(t=!1){this.isExpanded=!1,this.popupEl.classList.remove("open"),window.setTimeout((()=>{this.popupEl.style.visibility="hidden"}),250),"day"===this.view&&this.unfocusCell(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.changeView("day"),t&&this.buttonEl.focus()}openPopup(){this.panelPosition(),this.setDateValuesForView(),this.prevClicked=!1,this.nextClicked=!1,this.popupEl.style.visibility="visible",window.requestAnimationFrame((()=>{this.popupEl.classList.add("open")})),this.isExpanded=!0,this.focusCell()}getMonthDays(t,e){return 2===t?e%4==0?29:28:[4,6,9,11].includes(t)?30:31}getMonthFirstDay(t,e){return+new Date(e,t-1,1,12,0,0).getDay()+1}getPreviousMonth(t,e){return{month:t>1?t-1:12,year:t>1?e:e-1}}getNextMonth(t,e){return{month:t<12?t+1:1,year:t<12?e:e+1}}getCalendarDates(t,e){const i=this.getMonthDays(t,e),s=this.getMonthFirstDay(t,e)-1;let o=42-(s+i);o=o>6?o-7:o;const{month:r,year:a}=this.getPreviousMonth(t,e),{month:n,year:d}=this.getNextMonth(t,e),h=this.getMonthDays(r,a);return[...[...new Array(s).fill("1")].map(((t,e)=>{const i=e+1+(h-s);return[a.toString(),this.zeroPad(r,2),this.zeroPad(i,2)]})),...[...new Array(i).fill("1")].map(((i,s)=>{const o=s+1;return[e.toString(),this.zeroPad(t,2),this.zeroPad(o,2)]})),...[...new Array(o).fill("1")].map(((t,e)=>{const i=e+1;return[d.toString(),this.zeroPad(n,2),this.zeroPad(i,2)]}))]}forwardOneMonth(){this.unfocusCell();const t=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus>this.getMonthDays(this.monthInFocus,this.yearInFocus)&&(this.dayInFocus=e),this.updateLiveRegion(`Displaying ${this.calendar_months[this.monthInFocus-1]}, ${this.yearInFocus}`)}backOneMonth(){this.unfocusCell();const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus>this.getMonthDays(this.monthInFocus,this.yearInFocus)&&(this.dayInFocus=e),this.updateLiveRegion(`Viewing ${this.calendar_months[this.monthInFocus-1]}, ${this.yearInFocus}`)}handleTriggeredDate(t){this.cellTriggered.emit(t),this.closePopup(!0)}handleSelectedDate(){this.selectedDate&&this.selectedDate.removeAttribute("aria-selected"),this.selectedDate=this.getCellById(this.selectedYear,this.selectedMonth,this.selectedDay),this.selectedDate&&this.selectedDate.setAttribute("aria-selected","true")}getCellById(t,e,i){const s=t+this.zeroPad(e,2)+this.zeroPad(i,2);return this.el.querySelector(`#cell-${s}-${this.parentId}`)}unfocusCell(){this.getCellById(this.yearInFocus,this.monthInFocus,this.dayInFocus).tabIndex=-1}focusCell(){const t=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus=this.dayInFocus>t?t:this.dayInFocus;const e=this.getCellById(this.yearInFocus,this.monthInFocus,this.dayInFocus);e&&(e.tabIndex=0,e.focus())}unfocusMonth(){this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`).tabIndex=-1}focusMonth(){const t=this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`);t.tabIndex=0,t.focus()}trapFocusLeft(t){t.shiftKey&&"Tab"===t.key&&(t.preventDefault(),this.focusCellInView())}trapFocusEnd(t){t.shiftKey||"Tab"!==t.key||(t.preventDefault(),this.prevButton.focus())}trapFocusRight(t){t.shiftKey||"Tab"!==t.key||(t.preventDefault(),this.focusCellInView())}focusCellInView(){"day"===this.view?this.focusCell():this.focusMonth()}toggleBusyAttribute(t){this.el.querySelector("#wm-container").setAttribute("aria-busy",t)}setDateValuesForView(){this.selectedYear=this.date.getUTCFullYear(),this.selectedMonth=this.date.getUTCMonth()+1,this.selectedDay=this.date.getUTCDate(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.monthNumInFocus=this.selectedMonth-1}updateLiveRegion(t){this.el.querySelector("#live-region").innerHTML=t}panelPosition(){let t=document.getElementById(this.parentId);const e=t.shadowRoot.querySelector(".label-wrapper").clientHeight;this.openUp=a(t,this.popupEl.clientHeight,e),n(t,336)?(this.popupEl.style.left="0",this.popupEl.style.right="auto"):(this.popupEl.style.right="0",this.popupEl.style.left="auto")}changeView(t){this.view=t,this.monthNumInFocus=this.monthInFocus-1}renderMonths(t,e){return i("div",{id:`month-${e}-${this.parentId}`,class:"month "+(this.selectedMonth-1===e?"selected":""),role:"gridcell",tabindex:e+1===this.monthInFocus?0:-1,onKeyDown:t=>this.trapFocusEnd(t),onBlur:t=>t.stopPropagation(),onClick:()=>{this.monthInFocus=e+1,this.changeView("day")}},t)}render(){const t=this.getCalendarDates(this.monthInFocus,this.yearInFocus);return i("div",{class:"container",id:"wm-container"},i("button",{disabled:this.disabled,onClick:this.togglePopup.bind(this),"aria-describedby":`date-input-${this.parentId}`,ref:t=>this.buttonEl=t,"aria-expanded":`${this.isExpanded}`,class:"toggle",id:`toggle-${this.parentId}`},i("span",{class:"calendar",title:r.formatMessage({id:"date.calendarView",defaultMessage:"Calendar View",description:"Calendar button"})})),i("div",{class:`popup ${this.view}-view ${this.openUp?"expand-upwards":""} ${this.isTabbing?"user-is-tabbing":""}`,id:`popup-${this.parentId}`,ref:t=>this.popupEl=t,onClick:()=>this.popupClicked=!0,role:"application","aria-describedby":"application"},"day"===this.view?i("div",{class:"day-view"},i("div",{class:"calendar-header"},i("button",{onClick:()=>{this.prevClicked=!0,this.popupClicked=!0,this.backOneMonth()},onKeyDown:t=>this.trapFocusLeft(t),ref:t=>this.prevButton=t,class:"arw-btn","aria-label":r.formatMessage({id:"date.selectPreviousMonth",defaultMessage:"Select previous month",description:"Calendar button"})},i("span",{class:"mdi"},"")),i("div",{id:`popup-title-month-${this.parentId}`,class:"title-box",tabindex:0,role:"button",onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.changeView("month"))},onClick:this.changeView.bind(this,"month"),"aria-label":`${r.formatMessage({id:"date.currentMonth",defaultMessage:"current month",description:"Calendar button"})}: ${this.calendar_months[this.monthInFocus-1]}\n ${this.yearInFocus}.`,"aria-describedby":"month-title"},i("span",{class:"title","aria-hidden":"true"},this.calendar_months[this.monthInFocus-1]," ",this.yearInFocus)),i("button",{onClick:()=>{this.nextClicked=!0,this.popupClicked=!0,this.forwardOneMonth()},onKeyDown:t=>this.trapFocusRight(t),"aria-label":r.formatMessage({id:"date.selectNextMonth",defaultMessage:"Select next month",description:"Calendar button"}),ref:t=>this.nextButton=t,class:"arw-btn"},i("span",{class:"mdi"},""))),i("div",{"aria-labelledby":`popup-title-month-${this.parentId}`,role:"grid",class:"date-grid"},i("div",{role:"rowgroup",class:"date-header"},i("div",{role:"row",class:"header-row"},i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.su",defaultMessage:"Su",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.mo",defaultMessage:"Mo",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.tu",defaultMessage:"Tu",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.we",defaultMessage:"We",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.th",defaultMessage:"Th",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.fr",defaultMessage:"Fr",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.sa",defaultMessage:"Sa",description:"Abbreviated day of the week"}))))),i("div",{role:"rowgroup"},i("div",{role:"row",class:"date-row"},t.slice(0,7).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(7,14).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(14,21).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(21,28).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(28,35).map(((t,e)=>this.renderCalendarDate(t,e)))),t.length>35?i("div",{role:"row"},t.slice(35).map(((t,e)=>this.renderCalendarDate(t,e)))):""))):i("div",{class:"month-view"},i("div",{class:"calendar-header"},i("button",{onClick:()=>{this.prevClicked=!0,this.popupClicked=!0,this.yearInFocus-=1,this.updateLiveRegion(`${this.yearInFocus} selected.`)},onKeyDown:t=>this.trapFocusLeft(t),"aria-label":r.formatMessage({id:"date.selectPreviousYear",defaultMessage:"Select previous year",description:"Calendar button"}),ref:t=>this.prevButton=t,class:"arw-btn"},i("span",{class:"mdi"},"")),i("div",{id:`popup-title-year-${this.parentId}`,tabindex:0,class:"title-box year",role:"button",onClick:this.changeView.bind(this,"day"),onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.changeView("day"))},"aria-labelledby":"year-title"},i("span",{class:"title"},this.yearInFocus)),i("button",{onClick:()=>{this.nextClicked=!0,this.popupClicked=!0,this.yearInFocus+=1,this.updateLiveRegion(`${this.yearInFocus} selected.`)},"aria-label":r.formatMessage({id:"date.selectNextYear",defaultMessage:"Select next year",description:"Calendar button"}),onKeyDown:t=>this.trapFocusRight(t),ref:t=>this.nextButton=t,class:"arw-btn"},i("span",{class:"mdi"},""))),i("div",{"aria-labelledby":`popup-title-year-${this.parentId}`,role:"grid",class:"months"},i("div",{role:"row",class:"month-row"},this.calendar_months.slice(0,3).map(((t,e)=>this.renderMonths(t,e)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(3,6).map(((t,e)=>this.renderMonths(t,e+3)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(6,9).map(((t,e)=>this.renderMonths(t,e+6)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(9).map(((t,e)=>this.renderMonths(t,e+9))))))),this.isExpanded&&i("div",{id:"live-region","aria-live":"polite","aria-relevant":"text",class:"sr-only"}),i("div",{id:"month-title",class:"sr-only"},r.formatMessage({id:"date.selectMonth",defaultMessage:"Activate to select a month.",description:"Calendar button"})),i("div",{id:"year-title",class:"sr-only"},r.formatMessage({id:"date.selectYear",defaultMessage:"Activate to select a year.",description:"Calendar button"})),i("div",{id:"application",class:"sr-only"},r.formatMessage({id:"date.instructions",defaultMessage:"Use arrows to select a date in the table. Tab left or right to buttons for selecting previous month, next month, or the month selection table."})))}get el(){return o(this)}};d.style='.toggle{all:unset;cursor:pointer;padding:0 0.375rem;height:2.375rem;background-color:var(--wmcolor-datepicker-toggle-background);border:none;-moz-border-top-right-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-bottom-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.toggle span::after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f0ed";font-size:1.5rem;color:var(--wmcolor-datepicker-toggle-icon);padding:0;line-height:2.5rem}.toggle:hover{-webkit-box-shadow:none;box-shadow:none;background:var(--wmcolor-datepicker-toggle-background-hover)}.toggle:disabled{pointer-events:none;-webkit-box-shadow:none;box-shadow:none;background-color:var(--wmcolor-datepicker-toggle-background-disabled)}.toggle:disabled .calendar::after{color:var(--wmcolor-datepicker-toggle-icon-disabled)}[dir=RTL] .toggle{right:auto;left:0}.toggle:focus{outline:none}.toggle::-moz-focus-inner{border:0}.user-is-tabbing .toggle:focus{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus)}.user-is-tabbing .toggle:focus::-moz-focus-inner{border:0}.popup{visibility:hidden;font-family:inherit;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0px 4px 15px 0px rgba(0, 0, 0, 0.2);box-shadow:0px 4px 15px 0px rgba(0, 0, 0, 0.2);width:21rem;z-index:10;position:absolute;left:0;top:40px;min-height:21.0625rem;-webkit-transition:-webkit-transform 0.25s ease;transition:-webkit-transform 0.25s ease;transition:transform 0.25s ease;transition:transform 0.25s ease, -webkit-transform 0.25s ease;-webkit-transform-origin:center top;transform-origin:center top;-webkit-transform:scale(1, 0);transform:scale(1, 0);background-color:var(--wmcolor-datepicker-background)}.popup.open{-webkit-transform:scale(1, 1);transform:scale(1, 1)}.popup.expand-upwards{top:auto;bottom:2.375rem;-webkit-transform-origin:center bottom;transform-origin:center bottom}.popup .calendar-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;position:relative;padding:0.9375rem 0.25rem}.popup .calendar-header .title-box{height:2.625rem;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;border:1px solid;font-weight:500;font-size:0.875rem;background:var(--wmcolor-datepicker-selector-background);cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:0 0.375rem 0 0.75rem;border-color:var(--wmcolor-datepicker-selector-border);color:var(--wmcolor-datepicker-selector-text)}.popup .calendar-header .title-box:after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f140";padding-left:0.75rem;font-size:1.12rem}.popup .calendar-header .title-box.year:after{content:"\\f143"}.popup .calendar-header .title-box::-moz-focus-inner{border:0}.popup .calendar-header .title-box:focus{outline:none}.popup .calendar-header .arw-btn{cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;width:2.75rem;height:2.75rem;border:none;color:var(--wmcolor-datepicker-navigation-text);background:var(--wmcolor-datepicker-navigation-background);padding:0;-webkit-box-shadow:none;box-shadow:none;line-height:2.75rem}.popup .calendar-header .arw-btn .mdi{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1.5rem;font-weight:normal;line-height:2.75rem}.popup .calendar-header .arw-btn:hover{background-color:var(--wmcolor-datepicker-navigation-background-hover)}.popup .calendar-header .arw-btn:focus{outline:none}.popup .calendar-header .arw-btn:active{-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}.popup .day-view{min-width:100%}.popup .day-view .date-grid{width:100%;text-align:center;border-collapse:collapse;margin-bottom:0.4375rem;color:var(--wmcolor-datepicker-day-text-outside)}.popup .day-view .date-grid .date-row:first-child .date-cell{margin-top:0.125rem}.popup .day-view .date-grid .date-header{background-color:var(--wmcolor-datepicker-weekdays-background)}.popup .day-view .date-grid .header-cell{height:2.0625rem;line-height:2.0625rem;width:2.75rem;margin:0 calc((14.28% - 44px) / 2);padding:0;display:inline-block;font-size:0.8125rem;font-weight:bold;color:var(--wmcolor-datepicker-weekdays-text);border:none}.popup .day-view .date-grid .date-cell{cursor:pointer;display:inline-block;padding:0;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;height:2.75rem;width:2.75rem;margin:0 calc((14.28% - 44px) / 2);font-size:0.875rem;font-weight:500;line-height:2.75rem}.popup .day-view .date-grid .date-cell:focus{outline:none}.popup .day-view .date-grid .date-cell:hover{background-color:var(--wmcolor-datepicker-day-background-hover)}.popup .day-view .date-grid .date-cell.current-month{color:var(--wmcolor-datepicker-day-text)}.popup .day-view .date-grid .date-cell.current-month[aria-selected=true]{background-color:var(--wmcolor-datepicker-day-background-selected);color:var(--wmcolor-datepicker-day-text-selected)}.popup .day-view .date-grid .date-cell:active{background-color:var(--wmcolor-datepicker-day-background-selected);color:var(--wmcolor-datepicker-day-text-selected)}.popup .month-view .months{border-top:2px solid;border-top-color:var(--wmcolor-datepicker-month-border);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.popup .month-view .month-row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;width:100%;border-bottom:2px solid;border-bottom-color:var(--wmcolor-datepicker-month-border)}.popup .month-view .month{cursor:pointer;text-align:center;width:100%;height:4rem;line-height:4rem;font-weight:500;color:var(--wmcolor-datepicker-month-text)}.popup .month-view .month:not(:last-child){border-right:2px solid;border-right-color:var(--wmcolor-datepicker-month-border)}.popup .month-view .month:focus{outline:none}.popup .month-view .month:hover{border-right-color:transparent;background-color:var(--wmcolor-datepicker-month-background-hover)}.popup .month-view .month:active,.popup .month-view .month.selected{background-color:var(--wmcolor-datepicker-month-background-selected);color:var(--wmcolor-datepicker-month-text-selected)}.popup.user-is-tabbing button:focus,.popup.user-is-tabbing .title-box:focus,.popup.user-is-tabbing .date-cell:focus,.popup.user-is-tabbing .month:focus{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border:none;z-index:11}.popup.user-is-tabbing button:focus::-moz-focus-inner,.popup.user-is-tabbing .title-box:focus::-moz-focus-inner,.popup.user-is-tabbing .date-cell:focus::-moz-focus-inner,.popup.user-is-tabbing .month:focus::-moz-focus-inner{border:0}.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';export{d as priv_datepicker}
|
|
1
|
+
import{r as t,c as e,h as i,f as s,g as o}from"./p-11b416c7.js";import{i as r,o as a,E as n}from"./p-af1d2a68.js";const d=class{constructor(s){t(this,s),this.cellTriggered=e(this,"cellTriggered",7),this.toggleButtonClicked=e(this,"toggleButtonClicked",7),this.popupClosed=e(this,"popupClosed",7),this.popupBlurred=e(this,"popupBlurred",7),this.popupClicked=!0,this.buttonClicked=!0,this.prevClicked=!0,this.nextClicked=!0,this.openUp=!1,this.calendar_months=[r.formatMessage({id:"date.january",defaultMessage:"January",description:"Month of the year"}),r.formatMessage({id:"date.february",defaultMessage:"February",description:"Month of the year"}),r.formatMessage({id:"date.march",defaultMessage:"March",description:"Month of the year"}),r.formatMessage({id:"date.april",defaultMessage:"April",description:"Month of the year"}),r.formatMessage({id:"date.may",defaultMessage:"May",description:"Month of the year"}),r.formatMessage({id:"date.june",defaultMessage:"June",description:"Month of the year"}),r.formatMessage({id:"date.july",defaultMessage:"July",description:"Month of the year"}),r.formatMessage({id:"date.august",defaultMessage:"August",description:"Month of the year"}),r.formatMessage({id:"date.september",defaultMessage:"September",description:"Month of the year"}),r.formatMessage({id:"date.october",defaultMessage:"October",description:"Month of the year"}),r.formatMessage({id:"date.november",defaultMessage:"November",description:"Month of the year"}),r.formatMessage({id:"date.december",defaultMessage:"December",description:"Month of the year"})],this.weekdays=[r.formatMessage({id:"date.sunday",defaultMessage:"Sunday"}),r.formatMessage({id:"date.monday",defaultMessage:"Monday"}),r.formatMessage({id:"date.tuesday",defaultMessage:"Tuesday"}),r.formatMessage({id:"date.wednesday",defaultMessage:"Wednesday"}),r.formatMessage({id:"date.thursday",defaultMessage:"Thursday"}),r.formatMessage({id:"date.friday",defaultMessage:"Friday"}),r.formatMessage({id:"date.saturday",defaultMessage:"Saturday"})],this.renderCalendarDate=(t,e)=>{let s=this.removeZeroes(String(t[1])),o=this.removeZeroes(String(t[2])),a=s===this.monthInFocus?"current-month":"";const n=t[0]+t[1]+t[2],d=this.isDateToday(t);return i("div",{role:"gridcell",id:`cell-${n}-${this.parentId}`,class:`date-cell ${a}`,"aria-selected":!1,"aria-label":`${d?`${r.formatMessage({id:"date.today",defaultMessage:"today",description:"calendar button"})}, `:""}${this.weekdays[e]}, ${this.calendar_months[s-1]} ${o}, ${t[0]}`,onClick:t=>{this.handleTriggeredDate(t.target)},onKeyDown:t=>this.trapFocusEnd(t),"data-month":t[1],"data-year":t[0],onBlur:t=>t.stopPropagation()},o)},this.disabled=!1,this.isExpanded=!1,this.view="day",this.date=new Date,this.selectedYear=this.date.getUTCFullYear(),this.selectedMonth=this.date.getUTCMonth()+1,this.selectedDay=this.date.getUTCDate(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.monthNumInFocus=this.selectedMonth,this.parentId="",this.isTabbing=!1}handleKey(t){switch(this.prevClicked=!1,this.nextClicked=!1,t.key){case"Enter":t.preventDefault(),!t.target.id.includes("popup-title")&&t.target.click();break;case"Escape":t.preventDefault(),this.isExpanded&&(t.stopPropagation(),this.closePopup(!0));break;case"PageUp":t.preventDefault(),this.backOneMonth();break;case"PageDown":t.preventDefault(),this.forwardOneMonth();break;case"Home":t.preventDefault(),this.unfocusCell(),this.dayInFocus=1,s(this.el);break;case"End":t.preventDefault(),this.unfocusCell(),this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus),s(this.el);break;case"ArrowLeft":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),1===this.dayInFocus){const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year,this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus)}else this.dayInFocus-=1;else this.unfocusMonth(),0===this.monthNumInFocus?this.monthNumInFocus=11:this.monthNumInFocus-=1;break;case"ArrowRight":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),this.dayInFocus===this.getMonthDays(this.monthInFocus,this.yearInFocus)){const t=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year,this.dayInFocus=1}else this.dayInFocus+=1;else this.unfocusMonth(),11===this.monthNumInFocus?this.monthNumInFocus=0:this.monthNumInFocus+=1;break;case"ArrowUp":if(t.preventDefault(),"day"===this.view)if(this.unfocusCell(),this.dayInFocus<8){const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=7-this.dayInFocus;this.dayInFocus=this.getMonthDays(this.monthInFocus,this.yearInFocus)-e}else this.dayInFocus-=7;else this.unfocusMonth(),this.monthNumInFocus<3?this.monthNumInFocus+=9:this.monthNumInFocus-=3;break;case"ArrowDown":if(t.preventDefault(),this.isExpanded)if("day"===this.view){if(!(document.activeElement.shadowRoot||document).activeElement.classList.contains("date-cell")){this.focusCell();break}this.unfocusCell();const t=this.getMonthDays(this.monthInFocus,this.yearInFocus)-7;if(this.dayInFocus>t){const e=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=e.month,this.yearInFocus=e.year,this.dayInFocus=this.dayInFocus-t}else this.dayInFocus+=7}else{const t=(document.activeElement.shadowRoot||document).activeElement;if("BUTTON"===t.tagName||t.id.includes("popup-title-year")){this.focusMonth();break}this.unfocusMonth(),this.monthNumInFocus>8?this.monthNumInFocus-=9:this.monthNumInFocus+=3}else this.openPopup()}}toggleTabbingOn(t){["Tab","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Enter"].includes(t.key)&&(this.isTabbing=!0)}toggleTabbingOff(){this.isTabbing=!1}blurHandler(t){this.popupClicked||this.buttonClicked||!this.isExpanded||(this.closePopup(),this.popupBlurred.emit({relatedTarget:t.target})),this.popupClicked=!1,this.buttonClicked=!1}handleBlurOnWindow(t){this.isExpanded&&(this.closePopup(),this.popupBlurred.emit({relatedTarget:t.target}))}componentDidUpdate(){this.handleSelectedDate(),this.isExpanded&&(this.prevClicked?this.prevButton.focus():this.nextClicked?this.nextButton.focus():"day"===this.view?this.focusCell():this.focusMonth())}componentDidLoad(){this.handleSelectedDate(),this.setDateValuesForView()}zeroPad(t,e){return String.prototype.padStart||(String.prototype.padStart=function(t,e){return(t-=this.length)>e.length&&(e+=e.repeat(t/e.length)),e.slice(0,t)+String(this)}),`${t.toString()}`.padStart(e,"0")}removeZeroes(t){return+t<10?+t.slice(1):+t}isDateToday(t){const e=new Date;return[e.getFullYear().toString(),(e.getMonth()+1).toString(),e.getDate().toString()].reduce(((e,i,s)=>e&&this.removeZeroes(t[s]).toString()===i),!0)}togglePopup(){this.isExpanded?this.closePopup():this.openPopup(),this.buttonClicked=!0}closePopup(t=!1){this.isExpanded=!1,this.popupEl.classList.remove("open"),window.setTimeout((()=>{this.popupEl.style.visibility="hidden"}),250),"day"===this.view&&this.unfocusCell(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.changeView("day"),t&&this.buttonEl.focus()}openPopup(){this.panelPosition(),this.setDateValuesForView(),this.prevClicked=!1,this.nextClicked=!1,this.popupEl.style.visibility="visible",window.requestAnimationFrame((()=>{this.popupEl.classList.add("open")})),this.isExpanded=!0,this.focusCell()}getMonthDays(t,e){return 2===t?e%4==0?29:28:[4,6,9,11].includes(t)?30:31}getMonthFirstDay(t,e){return+new Date(e,t-1,1,12,0,0).getDay()+1}getPreviousMonth(t,e){return{month:t>1?t-1:12,year:t>1?e:e-1}}getNextMonth(t,e){return{month:t<12?t+1:1,year:t<12?e:e+1}}getCalendarDates(t,e){const i=this.getMonthDays(t,e),s=this.getMonthFirstDay(t,e)-1;let o=42-(s+i);o=o>6?o-7:o;const{month:r,year:a}=this.getPreviousMonth(t,e),{month:n,year:d}=this.getNextMonth(t,e),h=this.getMonthDays(r,a);return[...[...new Array(s).fill("1")].map(((t,e)=>{const i=e+1+(h-s);return[a.toString(),this.zeroPad(r,2),this.zeroPad(i,2)]})),...[...new Array(i).fill("1")].map(((i,s)=>{const o=s+1;return[e.toString(),this.zeroPad(t,2),this.zeroPad(o,2)]})),...[...new Array(o).fill("1")].map(((t,e)=>{const i=e+1;return[d.toString(),this.zeroPad(n,2),this.zeroPad(i,2)]}))]}forwardOneMonth(){this.unfocusCell();const t=this.getNextMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus>this.getMonthDays(this.monthInFocus,this.yearInFocus)&&(this.dayInFocus=e),this.updateLiveRegion(`Displaying ${this.calendar_months[this.monthInFocus-1]}, ${this.yearInFocus}`)}backOneMonth(){this.unfocusCell();const t=this.getPreviousMonth(this.monthInFocus,this.yearInFocus);this.monthInFocus=t.month,this.yearInFocus=t.year;const e=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus>this.getMonthDays(this.monthInFocus,this.yearInFocus)&&(this.dayInFocus=e),this.updateLiveRegion(`Viewing ${this.calendar_months[this.monthInFocus-1]}, ${this.yearInFocus}`)}handleTriggeredDate(t){this.cellTriggered.emit(t),this.closePopup(!0)}handleSelectedDate(){this.selectedDate&&this.selectedDate.removeAttribute("aria-selected"),this.selectedDate=this.getCellById(this.selectedYear,this.selectedMonth,this.selectedDay),this.selectedDate&&this.selectedDate.setAttribute("aria-selected","true")}getCellById(t,e,i){const s=t+this.zeroPad(e,2)+this.zeroPad(i,2);return this.el.querySelector(`#cell-${s}-${this.parentId}`)}unfocusCell(){this.getCellById(this.yearInFocus,this.monthInFocus,this.dayInFocus).tabIndex=-1}focusCell(){const t=this.getMonthDays(this.monthInFocus,this.yearInFocus);this.dayInFocus=this.dayInFocus>t?t:this.dayInFocus;const e=this.getCellById(this.yearInFocus,this.monthInFocus,this.dayInFocus);e&&(e.tabIndex=0,e.focus())}unfocusMonth(){this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`).tabIndex=-1}focusMonth(){const t=this.el.querySelector(`#month-${this.monthNumInFocus}-${this.parentId}`);t.tabIndex=0,t.focus()}trapFocusLeft(t){t.shiftKey&&"Tab"===t.key&&(t.preventDefault(),this.focusCellInView())}trapFocusEnd(t){t.shiftKey||"Tab"!==t.key||(t.preventDefault(),this.prevButton.focus())}trapFocusRight(t){t.shiftKey||"Tab"!==t.key||(t.preventDefault(),this.focusCellInView())}focusCellInView(){"day"===this.view?this.focusCell():this.focusMonth()}toggleBusyAttribute(t){this.el.querySelector("#wm-container").setAttribute("aria-busy",t)}setDateValuesForView(){this.selectedYear=this.date.getUTCFullYear(),this.selectedMonth=this.date.getUTCMonth()+1,this.selectedDay=this.date.getUTCDate(),this.monthInFocus=this.selectedMonth,this.yearInFocus=this.selectedYear,this.dayInFocus=this.selectedDay,this.monthNumInFocus=this.selectedMonth-1}updateLiveRegion(t){this.el.querySelector("#live-region").innerHTML=t}panelPosition(){let t=document.getElementById(this.parentId);const e=t.shadowRoot.querySelector(".label-wrapper").clientHeight;this.openUp=a(t,this.popupEl.clientHeight,e),n(t,336)?(this.popupEl.style.left="0",this.popupEl.style.right="auto"):(this.popupEl.style.right="0",this.popupEl.style.left="auto")}changeView(t){this.view=t,this.monthNumInFocus=this.monthInFocus-1}renderMonths(t,e){return i("div",{id:`month-${e}-${this.parentId}`,class:"month "+(this.selectedMonth-1===e?"selected":""),role:"gridcell",tabindex:e+1===this.monthInFocus?0:-1,onKeyDown:t=>this.trapFocusEnd(t),onBlur:t=>t.stopPropagation(),onClick:()=>{this.monthInFocus=e+1,this.changeView("day")}},t)}render(){const t=this.getCalendarDates(this.monthInFocus,this.yearInFocus);return i("div",{class:"container",id:"wm-container"},i("button",{disabled:this.disabled,onClick:this.togglePopup.bind(this),"aria-describedby":`date-input-${this.parentId}`,ref:t=>this.buttonEl=t,"aria-expanded":`${this.isExpanded}`,class:"toggle",id:`toggle-${this.parentId}`},i("span",{class:"calendar",title:r.formatMessage({id:"date.calendarView",defaultMessage:"Calendar View",description:"Calendar button"})})),i("div",{class:`popup ${this.view}-view ${this.openUp?"expand-upwards":""} ${this.isTabbing?"user-is-tabbing":""}`,id:`popup-${this.parentId}`,ref:t=>this.popupEl=t,onClick:()=>this.popupClicked=!0,role:"application","aria-describedby":"application"},"day"===this.view?i("div",{class:"day-view"},i("div",{class:"calendar-header"},i("button",{onClick:()=>{this.prevClicked=!0,this.popupClicked=!0,this.backOneMonth()},onKeyDown:t=>this.trapFocusLeft(t),ref:t=>this.prevButton=t,class:"arw-btn","aria-label":r.formatMessage({id:"date.selectPreviousMonth",defaultMessage:"Select previous month",description:"Calendar button"})},i("span",{class:"mdi"},"")),i("div",{id:`popup-title-month-${this.parentId}`,class:"title-box",tabindex:0,role:"button",onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.changeView("month"))},onClick:this.changeView.bind(this,"month"),"aria-label":`${r.formatMessage({id:"date.currentMonth",defaultMessage:"current month",description:"Calendar button"})}: ${this.calendar_months[this.monthInFocus-1]}\n ${this.yearInFocus}.`,"aria-describedby":"month-title"},i("span",{class:"title","aria-hidden":"true"},this.calendar_months[this.monthInFocus-1]," ",this.yearInFocus)),i("button",{onClick:()=>{this.nextClicked=!0,this.popupClicked=!0,this.forwardOneMonth()},onKeyDown:t=>this.trapFocusRight(t),"aria-label":r.formatMessage({id:"date.selectNextMonth",defaultMessage:"Select next month",description:"Calendar button"}),ref:t=>this.nextButton=t,class:"arw-btn"},i("span",{class:"mdi"},""))),i("div",{"aria-labelledby":`popup-title-month-${this.parentId}`,role:"grid",class:"date-grid"},i("div",{role:"rowgroup",class:"date-header"},i("div",{role:"row",class:"header-row"},i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.su",defaultMessage:"Su",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.mo",defaultMessage:"Mo",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.tu",defaultMessage:"Tu",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.we",defaultMessage:"We",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.th",defaultMessage:"Th",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.fr",defaultMessage:"Fr",description:"Abbreviated day of the week"}))),i("div",{role:"columnheader",class:"header-cell"},i("span",null,r.formatMessage({id:"date.sa",defaultMessage:"Sa",description:"Abbreviated day of the week"}))))),i("div",{role:"rowgroup"},i("div",{role:"row",class:"date-row"},t.slice(0,7).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(7,14).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(14,21).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(21,28).map(((t,e)=>this.renderCalendarDate(t,e)))),i("div",{role:"row"},t.slice(28,35).map(((t,e)=>this.renderCalendarDate(t,e)))),t.length>35?i("div",{role:"row"},t.slice(35).map(((t,e)=>this.renderCalendarDate(t,e)))):""))):i("div",{class:"month-view"},i("div",{class:"calendar-header"},i("button",{onClick:()=>{this.prevClicked=!0,this.popupClicked=!0,this.yearInFocus-=1,this.updateLiveRegion(`${this.yearInFocus} selected.`)},onKeyDown:t=>this.trapFocusLeft(t),"aria-label":r.formatMessage({id:"date.selectPreviousYear",defaultMessage:"Select previous year",description:"Calendar button"}),ref:t=>this.prevButton=t,class:"arw-btn"},i("span",{class:"mdi"},"")),i("div",{id:`popup-title-year-${this.parentId}`,tabindex:0,class:"title-box year",role:"button",onClick:this.changeView.bind(this,"day"),onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.changeView("day"))},"aria-labelledby":"year-title"},i("span",{class:"title"},this.yearInFocus)),i("button",{onClick:()=>{this.nextClicked=!0,this.popupClicked=!0,this.yearInFocus+=1,this.updateLiveRegion(`${this.yearInFocus} selected.`)},"aria-label":r.formatMessage({id:"date.selectNextYear",defaultMessage:"Select next year",description:"Calendar button"}),onKeyDown:t=>this.trapFocusRight(t),ref:t=>this.nextButton=t,class:"arw-btn"},i("span",{class:"mdi"},""))),i("div",{"aria-labelledby":`popup-title-year-${this.parentId}`,role:"grid",class:"months"},i("div",{role:"row",class:"month-row"},this.calendar_months.slice(0,3).map(((t,e)=>this.renderMonths(t,e)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(3,6).map(((t,e)=>this.renderMonths(t,e+3)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(6,9).map(((t,e)=>this.renderMonths(t,e+6)))),i("div",{role:"row",class:"month-row"},this.calendar_months.slice(9).map(((t,e)=>this.renderMonths(t,e+9))))))),this.isExpanded&&i("div",{id:"live-region","aria-live":"polite","aria-relevant":"text",class:"sr-only"}),i("div",{id:"month-title",class:"sr-only"},r.formatMessage({id:"date.selectMonth",defaultMessage:"Activate to select a month.",description:"Calendar button"})),i("div",{id:"year-title",class:"sr-only"},r.formatMessage({id:"date.selectYear",defaultMessage:"Activate to select a year.",description:"Calendar button"})),i("div",{id:"application",class:"sr-only"},r.formatMessage({id:"date.instructions",defaultMessage:"Use arrows to select a date in the table. Tab left or right to buttons for selecting previous month, next month, or the month selection table."})))}get el(){return o(this)}};d.style='.toggle{all:unset;cursor:pointer;padding:0 0.375rem;height:2.375rem;background-color:var(--wmcolor-datepicker-toggle-background);border:none;-moz-border-top-right-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-bottom-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.toggle span::after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f0ed";font-size:1.5rem;color:var(--wmcolor-datepicker-toggle-icon);padding:0;line-height:2.5rem}.toggle:hover{-webkit-box-shadow:none;box-shadow:none;background:var(--wmcolor-datepicker-toggle-background-hover)}.toggle:disabled{pointer-events:none;-webkit-box-shadow:none;box-shadow:none;background-color:var(--wmcolor-datepicker-toggle-background-disabled)}.toggle:disabled .calendar::after{color:var(--wmcolor-datepicker-toggle-icon-disabled)}[dir=RTL] .toggle{right:auto;left:0}.toggle:focus{outline:none}.toggle::-moz-focus-inner{border:0}.user-is-tabbing .toggle:focus{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus)}.user-is-tabbing .toggle:focus::-moz-focus-inner{border:0}.popup{visibility:hidden;font-family:inherit;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0px 4px 15px 0px rgba(0, 0, 0, 0.2);box-shadow:0px 4px 15px 0px rgba(0, 0, 0, 0.2);width:21rem;z-index:10;position:absolute;left:0;top:40px;min-height:21.0625rem;-webkit-transition:-webkit-transform 0.25s ease;transition:-webkit-transform 0.25s ease;transition:transform 0.25s ease;transition:transform 0.25s ease, -webkit-transform 0.25s ease;-webkit-transform-origin:center top;transform-origin:center top;-webkit-transform:scale(1, 0);transform:scale(1, 0);background-color:var(--wmcolor-datepicker-background)}.popup.open{-webkit-transform:scale(1, 1);transform:scale(1, 1)}.popup.expand-upwards{top:auto;bottom:2.375rem;-webkit-transform-origin:center bottom;transform-origin:center bottom}.popup .calendar-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;position:relative;padding:0.9375rem 0.25rem}.popup .calendar-header .title-box{height:2.625rem;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;border:1px solid;font-weight:500;font-size:0.875rem;background:var(--wmcolor-datepicker-selector-background);cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:0 0.375rem 0 0.75rem;border-color:var(--wmcolor-datepicker-selector-border);color:var(--wmcolor-datepicker-selector-text)}.popup .calendar-header .title-box:after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f140";padding-left:0.75rem;font-size:1.12rem}.popup .calendar-header .title-box.year:after{content:"\\f143"}.popup .calendar-header .title-box::-moz-focus-inner{border:0}.popup .calendar-header .title-box:focus{outline:none}.popup .calendar-header .arw-btn{cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;width:2.75rem;height:2.75rem;border:none;color:var(--wmcolor-datepicker-navigation-text);background:var(--wmcolor-datepicker-navigation-background);padding:0;-webkit-box-shadow:none;box-shadow:none;line-height:2.75rem}.popup .calendar-header .arw-btn .mdi{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1.5rem;font-weight:normal;line-height:2.75rem}.popup .calendar-header .arw-btn:hover{background-color:var(--wmcolor-datepicker-navigation-background-hover)}.popup .calendar-header .arw-btn:focus{outline:none}.popup .calendar-header .arw-btn:active{-ms-transform:scale(0.9, 0.9);-webkit-transform:scale(0.9, 0.9);-moz-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}.popup .day-view{min-width:100%}.popup .day-view .date-grid{width:100%;text-align:center;border-collapse:collapse;margin-bottom:0.4375rem;color:var(--wmcolor-datepicker-day-text-outside)}.popup .day-view .date-grid .date-row:first-child .date-cell{margin-top:0.125rem}.popup .day-view .date-grid .date-header{background-color:var(--wmcolor-datepicker-weekdays-background)}.popup .day-view .date-grid .header-cell{height:2.0625rem;line-height:2.0625rem;width:2.75rem;margin:0 calc((14.28% - 44px) / 2);padding:0;display:inline-block;font-size:0.8125rem;font-weight:bold;color:var(--wmcolor-datepicker-weekdays-text);border:none}.popup .day-view .date-grid .date-cell{cursor:pointer;display:inline-block;padding:0;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;height:2.75rem;width:2.75rem;margin:0 calc((14.28% - 44px) / 2);font-size:0.875rem;font-weight:500;line-height:2.75rem}.popup .day-view .date-grid .date-cell:focus{outline:none}.popup .day-view .date-grid .date-cell:hover{background-color:var(--wmcolor-datepicker-day-background-hover)}.popup .day-view .date-grid .date-cell.current-month{color:var(--wmcolor-datepicker-day-text)}.popup .day-view .date-grid .date-cell.current-month[aria-selected=true]{background-color:var(--wmcolor-datepicker-day-background-selected);color:var(--wmcolor-datepicker-day-text-selected)}.popup .day-view .date-grid .date-cell:active{background-color:var(--wmcolor-datepicker-day-background-selected);color:var(--wmcolor-datepicker-day-text-selected)}.popup .month-view .months{border-top:2px solid;border-top-color:var(--wmcolor-datepicker-month-border);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.popup .month-view .month-row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;width:100%;border-bottom:2px solid;border-bottom-color:var(--wmcolor-datepicker-month-border)}.popup .month-view .month{cursor:pointer;text-align:center;width:100%;height:4rem;line-height:4rem;font-weight:500;color:var(--wmcolor-datepicker-month-text)}.popup .month-view .month:not(:last-child){border-right:2px solid;border-right-color:var(--wmcolor-datepicker-month-border)}.popup .month-view .month:focus{outline:none}.popup .month-view .month:hover{border-right-color:transparent;background-color:var(--wmcolor-datepicker-month-background-hover)}.popup .month-view .month:active,.popup .month-view .month.selected{background-color:var(--wmcolor-datepicker-month-background-selected);color:var(--wmcolor-datepicker-month-text-selected)}.popup.user-is-tabbing button:focus,.popup.user-is-tabbing .title-box:focus,.popup.user-is-tabbing .date-cell:focus,.popup.user-is-tabbing .month:focus{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border:none;z-index:11}.popup.user-is-tabbing button:focus::-moz-focus-inner,.popup.user-is-tabbing .title-box:focus::-moz-focus-inner,.popup.user-is-tabbing .date-cell:focus::-moz-focus-inner,.popup.user-is-tabbing .month:focus::-moz-focus-inner{border:0}.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';export{d as priv_datepicker}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,f as i,h as e,H as o,g as s}from"./p-11b416c7.js";import{d as r,A as n,u as a,B as l,C as h,D as p}from"./p-20495238.js";import{m as c,n as d}from"./p-89bc016a.js";import{l as g,c as v,g as x}from"./p-2b378ac6.js";const b=class{constructor(i){t(this,i),this.minTickWidth=120,this.popoverData=[],this.focusedDataPoint=[0,0],this.dataPointMatrix=[],this.xIntervals=[],this.displayedXIntervals=[],this.yIntervals=[],this.lineStyles=[{color:"#8b86ca",icon:"f536"},{color:"#2e1b46",icon:"f12f"},{color:"#0089e4",icon:"f763"},{color:"#088000",icon:"f4ce"},{color:"#ea8500",icon:"f70a"},{color:"#d54f41",icon:"f536"},{color:"#146ca9",icon:"f6ff"}],this.debouncedResize=r((async()=>{this.displayedXIntervals=this.determineDisplayedXIntervals()}),100),this.label=void 0,this.description="",this.xAxisLabel=void 0,this.yAxisLabel=void 0,this.lineData=void 0,this.units="null,null",this.labelWidth="120px",this.highlightQualifier="highlighted",this.highlightStart=void 0,this.highlightEnd=void 0,this.visibilityToggles=!1,this.showDeltas=!1,this.yRange=void 0,this.parsedLineData={},this.displayedPopover=-1,this.focusedLine=-1,this.hiddenLines=[],this.isTabbing=!1,this.intervalSkip=0,this.announcement=""}parseData(){this.parsedLineData=JSON.parse(this.lineData),this.yIntervals=this.calcYIntervals().reverse(),this.xIntervals=Object.keys(Object.values(this.parsedLineData)[0]),this.displayedXIntervals=this.determineDisplayedXIntervals(),this.dataPointMatrix=Object.entries(this.parsedLineData).map((t=>this.buildLineDataPointDetails(t[0],t[1]))),this.popoverData=n(this.dataPointMatrix)}handleIntervalSkip(){this.parseData()}get hasPartialInterval(){return this.intervalSkip>0&&this.xIntervals.length%2==0}get parsedUnits(){return a(this.units).map((t=>"null"===t?null:t))}get visibilityToggleEls(){return this.legendEl.querySelectorAll("wm-button")}get lineEls(){return this.plotAreaEl.querySelectorAll(".line")}get firstVisibleLineIdx(){let t=0;for(;this.hiddenLines.includes(t);)t++;return t<this.dataPointMatrix.length?t:-1}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}componentWillLoad(){this.parseData()}componentDidLoad(){new ResizeObserver((()=>this.debouncedResize())).observe(this.el)}handleVisibilityToggleKeydown(t,i){switch(t.key){case"Tab":t.shiftKey||-1===this.firstVisibleLineIdx||(t.preventDefault(),this.announce(this.lineFocusMessage(this.firstVisibleLineIdx)),this.focusDataPoint(this.firstVisibleLineIdx,0));break;case"ArrowUp":case"ArrowLeft":t.preventDefault();const e=l(i,-1,this.dataPointMatrix.length-1);this.visibilityToggleEls[e].focus();break;case"ArrowDown":case"ArrowRight":t.preventDefault();const o=l(i,1,this.dataPointMatrix.length-1);this.visibilityToggleEls[o].focus()}}handleDataPointKeydown(t){const[i,e]=this.focusedDataPoint,o=this.lineEls[i].querySelectorAll(".point").length,s=this.dataPointMatrix.length;switch(t.key){case"Tab":t.shiftKey&&this.visibilityToggles&&(t.preventDefault(),this.visibilityToggleEls[0].focus());break;case"ArrowUp":t.preventDefault();let r=i;do{r=l(r,-1,s-1)}while(this.hiddenLines.includes(r));this.announce(this.lineFocusMessage(r)),this.focusDataPoint(r,e);break;case"ArrowDown":t.preventDefault();let n=i;do{n=l(n,1,s-1)}while(this.hiddenLines.includes(n));this.announce(this.lineFocusMessage(n)),this.focusDataPoint(n,e);break;case"ArrowLeft":t.preventDefault();const a=l(e,-1,o-1);this.focusDataPoint(i,a);break;case"ArrowRight":t.preventDefault();const h=l(e,1,o-1);this.focusDataPoint(i,h)}}announce(t){this.liveRegionEl.textContent===t&&(t+=" "),this.announcement=t}lineFocusMessage(t){const i=this.dataPointMatrix[t][0].lineLabel,e=this.dataPointMatrix[t].filter((t=>null!==t.yValue)).length;return`${i}, line ${t+1} of ${this.dataPointMatrix.length} with ${e} data points`}focusDataPoint(t,i){const e=this.lineEls[t].querySelectorAll(".point")[i];this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),e.tabIndex=0,e.focus(),this.focusedDataPoint=[t,i]}focusDataPointByEl(t){const i=parseInt(t.dataset.lineidx),e=Array.from(t.parentElement.querySelectorAll(".point")).indexOf(t);this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),t.tabIndex=0,t.focus(),this.focusedDataPoint=[i,e]}calcYIntervals(){let t=[];if(this.yRange)t=a(this.yRange).map((t=>parseInt(t)));else{let i=[];Object.values(this.parsedLineData).flat().forEach((t=>i.push(...Object.values(t))));const e=i.filter((t=>null!==t));let o=Math.min(...e);const s=Math.max(...e);let r=d(s-o,4),n=r;for(;o%r!=0&&n>0;)o--,n--;r=d(s-o,4);let a=o;for(;a<=s+r;)t.push(a),a+=r}return t}determineDisplayedXIntervals(){const t=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?Math.round(this.plotAreaEl.clientWidth/this.minTickWidth):this.xIntervals.length,{skipInterval:i,skippedList:e}=h(this.xIntervals,t);return this.intervalSkip=i,e}buildLineDataPointDetails(t,i){let e=[];const o=Object.entries(i);let s;return o.forEach(((i,r)=>{const[n,a]=i;let l=100/(o.length-1)*r;const h=null===a?null:100-p(a,this.yIntervals[this.yIntervals.length-1],this.yIntervals[0]);0===r&&(l+=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?8/this.plotAreaEl.clientWidth*100:1),n!==this.highlightStart||s||(s=!0),e.push({lineLabel:t,xValue:n,yValue:a,xPositionPercent:l,yPositionPercent:h,highlighted:s}),n===this.highlightEnd&&s&&(s=!1)})),e}toggleLineVisibility(t){this.hiddenLines.includes(t)?this.hiddenLines=this.hiddenLines.filter((i=>i!==t)):this.hiddenLines.push(t),i(this.el)}resetDataPointFocus(){this.displayedPopover=-1,this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),-1!==this.firstVisibleLineIdx&&(this.lineEls[this.firstVisibleLineIdx].querySelectorAll(".point")[0].tabIndex=0,this.focusedDataPoint=[this.firstVisibleLineIdx,0])}calcDelta(t,i){let e;if(null===t.yValue||null===i.yValue)e=g.noData;else if(t.yValue==i.yValue)e="0%";else if(0==i.yValue)e="-";else{const o=Math.round((t.yValue-i.yValue)/i.yValue*100*100)/100;e=`${o>0?"+":""}${o}%`}return e}renderLegend(){const t=Object.keys(this.parsedLineData);return e("div",{ref:t=>this.legendEl=t,class:"legend"},t.map(((t,i)=>{const o=this.hiddenLines.includes(i);return e("div",{id:`legend-label-${i}`,class:"legend-label "+(-1!==this.focusedLine&&this.focusedLine!==i?"faded":""),onMouseEnter:()=>this.focusedLine=o?-1:i,onMouseLeave:()=>this.focusedLine=-1},this.renderIcon(i),t,this.visibilityToggles&&this.renderVisibilityToggle(t,i,o))})))}renderVisibilityToggle(t,i,o){return e("wm-button",{id:`visibility-button-${i}`,class:"visibility-toggle","label-for-identical-buttons":`${0===i?`Toggle line visibility list with ${this.dataPointMatrix.length} items`:""} ${o?x.show:x.hide} ${t} toggle ${o?"pressed":""}`,"button-type":"navigational",tooltip:o?x.show:x.hide,tooltipPosition:"bottom",icon:o?"f209":"f208",onClick:()=>this.toggleLineVisibility(i),onKeyDown:t=>this.handleVisibilityToggleKeydown(t,i),onFocus:()=>this.displayedPopover=-1})}renderIcon(t){const{color:i,icon:o}=this.lineStyles[t];return e("span",{class:"icon",style:{"--iconColor":i,"--icon":`"\\${o}"`,"--translation":5===t?"rotate(180deg)":"unset"}})}renderXIntervals(){return e("div",{class:"x-intervals",style:{"--columns":`.5fr repeat(${this.xIntervals.length-2}, 1fr) .5fr`}},this.xIntervals.map((t=>e("span",{class:"x-interval "+(this.displayedXIntervals.includes(t)?"":"hidden")},t))))}renderYIntervals(){return e("div",{ref:t=>this.yIntervalsEl=t,class:"y-intervals"},this.yIntervals.map((t=>e("span",{class:"y-interval"},c(t)))))}renderData(){return this.dataPointMatrix.map(((t,i)=>{let o=this.focusedLine===i?"focused":"faded";const s=this.hiddenLines.includes(i);return e("div",{class:`line ${-1!==this.focusedLine?o:""} ${s?"hidden":""}`},this.renderLines(i),this.renderPoints(i))}))}renderPoints(t){const i=this.dataPointMatrix[t];return e("div",{class:"line-icons"},i.map(((o,s)=>{const{lineLabel:r,xValue:n,yValue:a,xPositionPercent:l,yPositionPercent:h,highlighted:p}=o;if(null!==a){const{color:c,icon:d}=this.lineStyles[t],v=0===t&&0===s?0:void 0,x={"--icon":`"\\${d}"`,"--iconColor":c,"--xPosition":l+"%","--yPosition":h+"%","--translation":5===t?"translate(-50%, -50%) rotate(180deg)":"translate(-50%, -50%)"};let b=`${r} ${p?this.highlightQualifier:""} ${this.xAxisLabel} ${n+(this.parsedUnits[0]?this.parsedUnits[0]:"")}, ${this.yAxisLabel}: ${a+(this.parsedUnits[1]?this.parsedUnits[1]:"")}`;if(this.showDeltas&&s>0){const t=i[s-1];b+=`, ${g.getChangeSince(t.xValue)} ${this.calcDelta(o,t)}`}return e("span",{id:`${r}-${s}`,role:"img","aria-label":b,tabIndex:v,class:"point icon",style:x,"data-lineidx":t,"data-xvalue":n,onKeyDown:t=>this.handleDataPointKeydown(t),onFocus:()=>this.displayedPopover=s,onClick:t=>this.focusDataPointByEl(t.target),onMouseEnter:()=>this.displayedPopover=s})}})))}renderLines(t){const i=this.dataPointMatrix[t];return e("svg",{class:"line-svg"},i.map(((o,s)=>{if(null!==o.yValue&&s!==i.length-1&&null!==i[s+1].yValue){const{color:r}=this.lineStyles[t],{xPositionPercent:n,yPositionPercent:a}=o,{xPositionPercent:l,yPositionPercent:h}=i[s+1];return e("line",{x1:n+"%",y1:a+"%",x2:l+"%",y2:h+"%",stroke:r,"stroke-width":"2px"})}})))}renderHoverAreas(){return e("div",{class:"hover-area-wrapper",style:{"--columns":`.5fr repeat(${this.xIntervals.length-2}, 1fr) .5fr`},onMouseLeave:()=>this.displayedPopover=-1},this.xIntervals.map(((t,i)=>e("div",{onMouseEnter:()=>this.displayedPopover=i}))))}renderPopover(){const t=this.popoverData[this.displayedPopover],i=t[0].xPositionPercent,o=t.map((t=>t.yPositionPercent)).filter((t=>null!==t)),s=o.reduce(((t,i)=>t+i),0)/o.length,r=this.plotAreaEl.querySelector(`.point[data-xvalue="${this.dataPointMatrix[0][this.displayedPopover].xValue}"]`),n=this.el.getBoundingClientRect(),a=r.getBoundingClientRect(),l=a.left-n.left,h=n.right-a.right>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400),p=l>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400),c=8/this.plotAreaEl.clientWidth*100;let d={"--leftPosition":h?i+c+"%":"unset","--rightPosition":p?100-i+c+"%":"unset","--topPosition":s+"%",transform:"translateY(-50%)"};if(!p&&!h){const t=`0px - ${this.labelWidth} - 20px - ${this.yIntervalsEl.clientWidth+"px"} + ${this.el.scrollLeft+"px"} + 2px`;d={"--leftPosition":"0%","--topPosition":"0%",maxWidth:Math.min(this.el.clientWidth-2,400)+"px",transform:`translateX(calc(${t}))`}}return e("div",{ref:t=>this.popoverEl=t,class:"popover",style:d},e("div",{class:"title"},t[0].xValue,this.parsedUnits[0]&&e("span",{class:"unit --x"},"(",this.parsedUnits[0],")")),this.showDeltas&&this.displayedPopover>0&&e("div",{class:"comparison-title"},g.getChangeSince(this.popoverData[this.displayedPopover-1][0].xValue)),this.renderPopoverTable())}renderPopoverTable(){return e("table",{class:"popover-table"},this.popoverData[this.displayedPopover].map(((t,i)=>{if(!this.hiddenLines.includes(i)){const{lineLabel:o,yValue:s}=t,r=this.displayedPopover>0?this.popoverData[this.displayedPopover-1][i]:null,n=null!==s?(new Intl.NumberFormat).format(s):null;return e("tr",{class:"popover-row"},e("td",null,this.renderIcon(i)),e("td",{class:"row-label"},o),e("td",{class:"row-value"},null===s?g.noData:n,null!==s&&this.parsedUnits[1]&&e("span",{class:"unit --y"},this.parsedUnits[1])),this.showDeltas&&r&&this.renderDeltas(t,r))}})))}renderDeltas(t,i){const o=this.calcDelta(t,i),s="+"==o.toString()[0]||"-"==o?"positive":"-"==o.toString()[0]?"negative":"";return i&&e("td",{class:`delta --${s}`},o)}renderHoverIndicator(){return e("div",{class:"hover-indicator",style:{"--xPosition":this.dataPointMatrix[0][this.displayedPopover].xPositionPercent+"%"}})}renderHighlight(){const t=this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightStart)].xPositionPercent,i=this.highlightEnd?100-this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightEnd)].xPositionPercent:0;return e("div",{class:"highlight",style:{"--startPercentage":t+"%","--endPercentage":i+"%"}})}render(){return e(o,{onBlur:()=>this.resetDataPointFocus(),onMouseLeave:()=>this.displayedPopover=-1},e("div",{class:"component-wrapper",role:"application","aria-roledescription":v.interactiveChart,"aria-label":this.label,"aria-describedby":"chart-description"},this.renderLegend(),e("div",{class:"chart-wrapper"},e("div",{class:"chart-label --y-axis",style:{"--labelWidth":this.labelWidth}},this.yAxisLabel,this.parsedUnits[1]&&` (${this.parsedUnits[1]})`),this.renderYIntervals(),e("div",{ref:t=>this.plotAreaEl=t,class:"plot-area "+(this.hasPartialInterval?"":"right-border"),style:{"--backgroundSize":`${this.dataPointMatrix[0][this.xIntervals.indexOf(this.displayedXIntervals[1])].xPositionPercent}%`}},this.highlightStart&&this.renderHighlight(),this.renderData(),this.renderHoverAreas()),-1!==this.displayedPopover&&this.renderHoverIndicator(),-1!==this.displayedPopover&&this.renderPopover(),this.renderXIntervals(),e("div",{class:"chart-label --x-axis"},this.xAxisLabel,this.parsedUnits[0]&&` (${this.parsedUnits[0]})`)),e("div",{id:"chart-description",class:"sr-only"},`${g.instructions} ${this.description}`),e("div",{ref:t=>this.liveRegionEl=t,"aria-live":"polite",class:"sr-only"},this.announcement)))}get el(){return s(this)}static get watchers(){return{lineData:["parseData"],intervalSkip:["handleIntervalSkip"]}}};b.style=':host{--wmcolor-linechart-currentposition:var(--wmcolor-lavender);--wmcolor-linechart-delta-text-negative:var(--wmcolor-text-negative);--wmcolor-linechart-delta-text-positive:var(--wmcolor-text-positive);--wmcolor-linechart-gridline:var(--wmcolor-chart-gridline);--wmcolor-linechart-highlight-background:var(--wmcolor-background-highlight);--wmcolor-linechart-popover-background:var(--wmcolor-chart-popover-background);display:block;height:500px;width:100%;font-size:14px;overflow-y:visible;overflow-x:auto}:host .component-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:562px;width:100%;height:100%;outline:none}:host .icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;position:relative;color:var(--iconColor);-webkit-transform:var(--translation, unset);transform:var(--translation, unset)}:host .icon:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);padding:0 3px;z-index:1}:host .icon:after{color:white;position:absolute;left:3px;-webkit-transform:scale(180%);transform:scale(180%);display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);z-index:0}:host .legend{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px 16px;margin-top:4px;margin-bottom:16px}:host .legend .legend-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:default;font-weight:600}:host .legend .legend-label.faded{opacity:0.3}:host .legend .legend-label .icon{margin-right:4px}:host .legend .visibility-toggle{margin-left:4px}:host .chart-wrapper{position:relative;-ms-flex-positive:1;flex-grow:1;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:1fr auto auto;margin-right:16px}:host .chart-label{font-size:14px;font-weight:600}:host .chart-label.--y-axis{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:var(--labelWidth);align-self:center;margin-right:16px;grid-area:1/1/2/2;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}:host .chart-label.--x-axis{margin-top:16px;text-align:center;grid-area:3/3/4/4}:host .y-intervals{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;grid-area:1/2/2/3;margin-right:4px}:host .y-intervals .y-interval{text-align:right}:host .x-intervals{display:grid;grid-template-columns:var(--columns);grid-area:2/3/3/4;line-height:1;margin-top:4px}:host .x-intervals .x-interval{text-align:center}:host .x-intervals .x-interval:first-child{text-align:left}:host .x-intervals .x-interval:last-child{text-align:right}:host .x-intervals .x-interval.hidden{visibility:hidden}:host .plot-area{position:relative;grid-area:1/3/2/4;background-image:linear-gradient(90deg, var(--wmcolor-linechart-gridline) 1px, transparent 1px);border-bottom:1px solid var(--wmcolor-linechart-gridline);background-size:var(--backgroundSize)}:host .plot-area.right-border{border-right:1px solid var(--wmcolor-linechart-gridline)}:host .line{position:absolute;width:100%;height:100%}:host .line .icon{position:absolute;-webkit-transform:var(--translation);transform:var(--translation);left:var(--xPosition);top:var(--yPosition);z-index:1}:host .line .icon:focus{z-index:2;outline:none}:host .line .icon:focus:before{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border-radius:3px}:host .line .icon:focus:before::-moz-focus-inner{border:0}:host .line .line-svg{height:100%;width:100%}:host .line.faded{opacity:0.3}:host .line.focused{z-index:1}:host .line.hidden{visibility:hidden}:host .hover-area-wrapper{position:absolute;width:100%;height:100%;top:0;left:0;display:grid;grid-template-rows:1fr;grid-template-columns:var(--columns)}:host .hover-indicator{-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;height:100%;width:2px;border:1px solid var(--wmcolor-linechart-currentposition);-webkit-transform:translateX(-50%);transform:translateX(-50%);left:var(--xPosition);grid-column:3/4;grid-row:1/2;pointer-events:none}:host .popover{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:400px;background-color:var(--wmcolor-linechart-popover-background);position:absolute;top:var(--topPosition, 0);left:var(--leftPosition, unset);right:var(--rightPosition, unset);padding:16px;border-radius:5px;-webkit-box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);-webkit-transform:translateY(-50%);transform:translateY(-50%);line-height:1;z-index:3;grid-column:3/4;grid-row:1/2;pointer-events:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host .popover .title{font-size:16px;font-weight:600}:host .popover .comparison-title{font-style:italic;margin-top:4px}:host .popover .unit{font-size:12px;font-weight:600}:host .popover .unit.--x{margin-left:4px}:host .popover .popover-table{margin-top:16px}:host .popover .popover-table .popover-row{line-height:1}:host .popover .popover-table .popover-row:not(:last-child) td{padding-bottom:8px}:host .popover .popover-table .popover-row .row-label{font-weight:600;padding-right:16px;overflow-wrap:anywhere}:host .popover .popover-table .popover-row .row-label .icon{margin-right:4px}:host .popover .popover-table .popover-row .row-value,:host .popover .popover-table .popover-row .delta{text-align:right;white-space:nowrap}:host .popover .popover-table .popover-row .delta{padding-left:12px;font-weight:600}:host .popover .popover-table .popover-row .delta.--positive{color:var(--wmcolor-linechart-delta-text-positive)}:host .popover .popover-table .popover-row .delta.--negative{color:var(--wmcolor-linechart-delta-text-negative)}:host .highlight{position:absolute;height:100%;background-color:color-mix(in srgb, var(--wmcolor-linechart-highlight-background) 60%, transparent);left:var(--startPercentage);right:var(--endPercentage)}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';export{b as wm_line_chart}
|
|
1
|
+
import{r as t,f as i,h as e,H as o,g as s}from"./p-11b416c7.js";import{d as r,A as n,u as a,B as l,C as h,D as p}from"./p-af1d2a68.js";import{m as c,n as d}from"./p-9f3a6192.js";import{l as g,c as v,g as x}from"./p-1eb5a93a.js";const b=class{constructor(i){t(this,i),this.minTickWidth=120,this.popoverData=[],this.focusedDataPoint=[0,0],this.dataPointMatrix=[],this.xIntervals=[],this.displayedXIntervals=[],this.yIntervals=[],this.lineStyles=[{color:"#8b86ca",icon:"f536"},{color:"#2e1b46",icon:"f12f"},{color:"#0089e4",icon:"f763"},{color:"#088000",icon:"f4ce"},{color:"#ea8500",icon:"f70a"},{color:"#d54f41",icon:"f536"},{color:"#146ca9",icon:"f6ff"}],this.debouncedResize=r((async()=>{this.displayedXIntervals=this.determineDisplayedXIntervals()}),100),this.label=void 0,this.description="",this.xAxisLabel=void 0,this.yAxisLabel=void 0,this.lineData=void 0,this.units="null,null",this.labelWidth="120px",this.highlightQualifier="highlighted",this.highlightStart=void 0,this.highlightEnd=void 0,this.visibilityToggles=!1,this.showDeltas=!1,this.yRange=void 0,this.parsedLineData={},this.displayedPopover=-1,this.focusedLine=-1,this.hiddenLines=[],this.isTabbing=!1,this.intervalSkip=0,this.announcement=""}parseData(){this.parsedLineData=JSON.parse(this.lineData),this.yIntervals=this.calcYIntervals().reverse(),this.xIntervals=Object.keys(Object.values(this.parsedLineData)[0]),this.displayedXIntervals=this.determineDisplayedXIntervals(),this.dataPointMatrix=Object.entries(this.parsedLineData).map((t=>this.buildLineDataPointDetails(t[0],t[1]))),this.popoverData=n(this.dataPointMatrix)}handleIntervalSkip(){this.parseData()}get hasPartialInterval(){return this.intervalSkip>0&&this.xIntervals.length%2==0}get parsedUnits(){return a(this.units).map((t=>"null"===t?null:t))}get visibilityToggleEls(){return this.legendEl.querySelectorAll("wm-button")}get lineEls(){return this.plotAreaEl.querySelectorAll(".line")}get firstVisibleLineIdx(){let t=0;for(;this.hiddenLines.includes(t);)t++;return t<this.dataPointMatrix.length?t:-1}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}componentWillLoad(){this.parseData()}componentDidLoad(){new ResizeObserver((()=>this.debouncedResize())).observe(this.el)}handleVisibilityToggleKeydown(t,i){switch(t.key){case"Tab":t.shiftKey||-1===this.firstVisibleLineIdx||(t.preventDefault(),this.announce(this.lineFocusMessage(this.firstVisibleLineIdx)),this.focusDataPoint(this.firstVisibleLineIdx,0));break;case"ArrowUp":case"ArrowLeft":t.preventDefault();const e=l(i,-1,this.dataPointMatrix.length-1);this.visibilityToggleEls[e].focus();break;case"ArrowDown":case"ArrowRight":t.preventDefault();const o=l(i,1,this.dataPointMatrix.length-1);this.visibilityToggleEls[o].focus()}}handleDataPointKeydown(t){const[i,e]=this.focusedDataPoint,o=this.lineEls[i].querySelectorAll(".point").length,s=this.dataPointMatrix.length;switch(t.key){case"Tab":t.shiftKey&&this.visibilityToggles&&(t.preventDefault(),this.visibilityToggleEls[0].focus());break;case"ArrowUp":t.preventDefault();let r=i;do{r=l(r,-1,s-1)}while(this.hiddenLines.includes(r));this.announce(this.lineFocusMessage(r)),this.focusDataPoint(r,e);break;case"ArrowDown":t.preventDefault();let n=i;do{n=l(n,1,s-1)}while(this.hiddenLines.includes(n));this.announce(this.lineFocusMessage(n)),this.focusDataPoint(n,e);break;case"ArrowLeft":t.preventDefault();const a=l(e,-1,o-1);this.focusDataPoint(i,a);break;case"ArrowRight":t.preventDefault();const h=l(e,1,o-1);this.focusDataPoint(i,h)}}announce(t){this.liveRegionEl.textContent===t&&(t+=" "),this.announcement=t}lineFocusMessage(t){const i=this.dataPointMatrix[t][0].lineLabel,e=this.dataPointMatrix[t].filter((t=>null!==t.yValue)).length;return`${i}, line ${t+1} of ${this.dataPointMatrix.length} with ${e} data points`}focusDataPoint(t,i){const e=this.lineEls[t].querySelectorAll(".point")[i];this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),e.tabIndex=0,e.focus(),this.focusedDataPoint=[t,i]}focusDataPointByEl(t){const i=parseInt(t.dataset.lineidx),e=Array.from(t.parentElement.querySelectorAll(".point")).indexOf(t);this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),t.tabIndex=0,t.focus(),this.focusedDataPoint=[i,e]}calcYIntervals(){let t=[];if(this.yRange)t=a(this.yRange).map((t=>parseInt(t)));else{let i=[];Object.values(this.parsedLineData).flat().forEach((t=>i.push(...Object.values(t))));const e=i.filter((t=>null!==t));let o=Math.min(...e);const s=Math.max(...e);let r=d(s-o,4),n=r;for(;o%r!=0&&n>0;)o--,n--;r=d(s-o,4);let a=o;for(;a<=s+r;)t.push(a),a+=r}return t}determineDisplayedXIntervals(){const t=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?Math.round(this.plotAreaEl.clientWidth/this.minTickWidth):this.xIntervals.length,{skipInterval:i,skippedList:e}=h(this.xIntervals,t);return this.intervalSkip=i,e}buildLineDataPointDetails(t,i){let e=[];const o=Object.entries(i);let s;return o.forEach(((i,r)=>{const[n,a]=i;let l=100/(o.length-1)*r;const h=null===a?null:100-p(a,this.yIntervals[this.yIntervals.length-1],this.yIntervals[0]);0===r&&(l+=this.plotAreaEl&&this.plotAreaEl.clientWidth>0?8/this.plotAreaEl.clientWidth*100:1),n!==this.highlightStart||s||(s=!0),e.push({lineLabel:t,xValue:n,yValue:a,xPositionPercent:l,yPositionPercent:h,highlighted:s}),n===this.highlightEnd&&s&&(s=!1)})),e}toggleLineVisibility(t){this.hiddenLines.includes(t)?this.hiddenLines=this.hiddenLines.filter((i=>i!==t)):this.hiddenLines.push(t),i(this.el)}resetDataPointFocus(){this.displayedPopover=-1,this.plotAreaEl.querySelectorAll(".point").forEach((t=>t.tabIndex=-1)),-1!==this.firstVisibleLineIdx&&(this.lineEls[this.firstVisibleLineIdx].querySelectorAll(".point")[0].tabIndex=0,this.focusedDataPoint=[this.firstVisibleLineIdx,0])}calcDelta(t,i){let e;if(null===t.yValue||null===i.yValue)e=g.noData;else if(t.yValue==i.yValue)e="0%";else if(0==i.yValue)e="-";else{const o=Math.round((t.yValue-i.yValue)/i.yValue*100*100)/100;e=`${o>0?"+":""}${o}%`}return e}renderLegend(){const t=Object.keys(this.parsedLineData);return e("div",{ref:t=>this.legendEl=t,class:"legend"},t.map(((t,i)=>{const o=this.hiddenLines.includes(i);return e("div",{id:`legend-label-${i}`,class:"legend-label "+(-1!==this.focusedLine&&this.focusedLine!==i?"faded":""),onMouseEnter:()=>this.focusedLine=o?-1:i,onMouseLeave:()=>this.focusedLine=-1},this.renderIcon(i),t,this.visibilityToggles&&this.renderVisibilityToggle(t,i,o))})))}renderVisibilityToggle(t,i,o){return e("wm-button",{id:`visibility-button-${i}`,class:"visibility-toggle","label-for-identical-buttons":`${0===i?`Toggle line visibility list with ${this.dataPointMatrix.length} items`:""} ${o?x.show:x.hide} ${t} toggle ${o?"pressed":""}`,"button-type":"navigational",tooltip:o?x.show:x.hide,tooltipPosition:"bottom",icon:o?"f209":"f208",onClick:()=>this.toggleLineVisibility(i),onKeyDown:t=>this.handleVisibilityToggleKeydown(t,i),onFocus:()=>this.displayedPopover=-1})}renderIcon(t){const{color:i,icon:o}=this.lineStyles[t];return e("span",{class:"icon",style:{"--iconColor":i,"--icon":`"\\${o}"`,"--translation":5===t?"rotate(180deg)":"unset"}})}renderXIntervals(){return e("div",{class:"x-intervals",style:{"--columns":`.5fr repeat(${this.xIntervals.length-2}, 1fr) .5fr`}},this.xIntervals.map((t=>e("span",{class:"x-interval "+(this.displayedXIntervals.includes(t)?"":"hidden")},t))))}renderYIntervals(){return e("div",{ref:t=>this.yIntervalsEl=t,class:"y-intervals"},this.yIntervals.map((t=>e("span",{class:"y-interval"},c(t)))))}renderData(){return this.dataPointMatrix.map(((t,i)=>{let o=this.focusedLine===i?"focused":"faded";const s=this.hiddenLines.includes(i);return e("div",{class:`line ${-1!==this.focusedLine?o:""} ${s?"hidden":""}`},this.renderLines(i),this.renderPoints(i))}))}renderPoints(t){const i=this.dataPointMatrix[t];return e("div",{class:"line-icons"},i.map(((o,s)=>{const{lineLabel:r,xValue:n,yValue:a,xPositionPercent:l,yPositionPercent:h,highlighted:p}=o;if(null!==a){const{color:c,icon:d}=this.lineStyles[t],v=0===t&&0===s?0:void 0,x={"--icon":`"\\${d}"`,"--iconColor":c,"--xPosition":l+"%","--yPosition":h+"%","--translation":5===t?"translate(-50%, -50%) rotate(180deg)":"translate(-50%, -50%)"};let b=`${r} ${p?this.highlightQualifier:""} ${this.xAxisLabel} ${n+(this.parsedUnits[0]?this.parsedUnits[0]:"")}, ${this.yAxisLabel}: ${a+(this.parsedUnits[1]?this.parsedUnits[1]:"")}`;if(this.showDeltas&&s>0){const t=i[s-1];b+=`, ${g.getChangeSince(t.xValue)} ${this.calcDelta(o,t)}`}return e("span",{id:`${r}-${s}`,role:"img","aria-label":b,tabIndex:v,class:"point icon",style:x,"data-lineidx":t,"data-xvalue":n,onKeyDown:t=>this.handleDataPointKeydown(t),onFocus:()=>this.displayedPopover=s,onClick:t=>this.focusDataPointByEl(t.target),onMouseEnter:()=>this.displayedPopover=s})}})))}renderLines(t){const i=this.dataPointMatrix[t];return e("svg",{class:"line-svg"},i.map(((o,s)=>{if(null!==o.yValue&&s!==i.length-1&&null!==i[s+1].yValue){const{color:r}=this.lineStyles[t],{xPositionPercent:n,yPositionPercent:a}=o,{xPositionPercent:l,yPositionPercent:h}=i[s+1];return e("line",{x1:n+"%",y1:a+"%",x2:l+"%",y2:h+"%",stroke:r,"stroke-width":"2px"})}})))}renderHoverAreas(){return e("div",{class:"hover-area-wrapper",style:{"--columns":`.5fr repeat(${this.xIntervals.length-2}, 1fr) .5fr`},onMouseLeave:()=>this.displayedPopover=-1},this.xIntervals.map(((t,i)=>e("div",{onMouseEnter:()=>this.displayedPopover=i}))))}renderPopover(){const t=this.popoverData[this.displayedPopover],i=t[0].xPositionPercent,o=t.map((t=>t.yPositionPercent)).filter((t=>null!==t)),s=o.reduce(((t,i)=>t+i),0)/o.length,r=this.plotAreaEl.querySelector(`.point[data-xvalue="${this.dataPointMatrix[0][this.displayedPopover].xValue}"]`),n=this.el.getBoundingClientRect(),a=r.getBoundingClientRect(),l=a.left-n.left,h=n.right-a.right>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400),p=l>=(this.popoverEl?Math.min(this.popoverEl.clientWidth,400):400),c=8/this.plotAreaEl.clientWidth*100;let d={"--leftPosition":h?i+c+"%":"unset","--rightPosition":p?100-i+c+"%":"unset","--topPosition":s+"%",transform:"translateY(-50%)"};if(!p&&!h){const t=`0px - ${this.labelWidth} - 20px - ${this.yIntervalsEl.clientWidth+"px"} + ${this.el.scrollLeft+"px"} + 2px`;d={"--leftPosition":"0%","--topPosition":"0%",maxWidth:Math.min(this.el.clientWidth-2,400)+"px",transform:`translateX(calc(${t}))`}}return e("div",{ref:t=>this.popoverEl=t,class:"popover",style:d},e("div",{class:"title"},t[0].xValue,this.parsedUnits[0]&&e("span",{class:"unit --x"},"(",this.parsedUnits[0],")")),this.showDeltas&&this.displayedPopover>0&&e("div",{class:"comparison-title"},g.getChangeSince(this.popoverData[this.displayedPopover-1][0].xValue)),this.renderPopoverTable())}renderPopoverTable(){return e("table",{class:"popover-table"},this.popoverData[this.displayedPopover].map(((t,i)=>{if(!this.hiddenLines.includes(i)){const{lineLabel:o,yValue:s}=t,r=this.displayedPopover>0?this.popoverData[this.displayedPopover-1][i]:null,n=null!==s?(new Intl.NumberFormat).format(s):null;return e("tr",{class:"popover-row"},e("td",null,this.renderIcon(i)),e("td",{class:"row-label"},o),e("td",{class:"row-value"},null===s?g.noData:n,null!==s&&this.parsedUnits[1]&&e("span",{class:"unit --y"},this.parsedUnits[1])),this.showDeltas&&r&&this.renderDeltas(t,r))}})))}renderDeltas(t,i){const o=this.calcDelta(t,i),s="+"==o.toString()[0]||"-"==o?"positive":"-"==o.toString()[0]?"negative":"";return i&&e("td",{class:`delta --${s}`},o)}renderHoverIndicator(){return e("div",{class:"hover-indicator",style:{"--xPosition":this.dataPointMatrix[0][this.displayedPopover].xPositionPercent+"%"}})}renderHighlight(){const t=this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightStart)].xPositionPercent,i=this.highlightEnd?100-this.dataPointMatrix[0][this.xIntervals.indexOf(this.highlightEnd)].xPositionPercent:0;return e("div",{class:"highlight",style:{"--startPercentage":t+"%","--endPercentage":i+"%"}})}render(){return e(o,{onBlur:()=>this.resetDataPointFocus(),onMouseLeave:()=>this.displayedPopover=-1},e("div",{class:"component-wrapper",role:"application","aria-roledescription":v.interactiveChart,"aria-label":this.label,"aria-describedby":"chart-description"},this.renderLegend(),e("div",{class:"chart-wrapper"},e("div",{class:"chart-label --y-axis",style:{"--labelWidth":this.labelWidth}},this.yAxisLabel,this.parsedUnits[1]&&` (${this.parsedUnits[1]})`),this.renderYIntervals(),e("div",{ref:t=>this.plotAreaEl=t,class:"plot-area "+(this.hasPartialInterval?"":"right-border"),style:{"--backgroundSize":`${this.dataPointMatrix[0][this.xIntervals.indexOf(this.displayedXIntervals[1])].xPositionPercent}%`}},this.highlightStart&&this.renderHighlight(),this.renderData(),this.renderHoverAreas()),-1!==this.displayedPopover&&this.renderHoverIndicator(),-1!==this.displayedPopover&&this.renderPopover(),this.renderXIntervals(),e("div",{class:"chart-label --x-axis"},this.xAxisLabel,this.parsedUnits[0]&&` (${this.parsedUnits[0]})`)),e("div",{id:"chart-description",class:"sr-only"},`${g.instructions} ${this.description}`),e("div",{ref:t=>this.liveRegionEl=t,"aria-live":"polite",class:"sr-only"},this.announcement)))}get el(){return s(this)}static get watchers(){return{lineData:["parseData"],intervalSkip:["handleIntervalSkip"]}}};b.style=':host{--wmcolor-linechart-currentposition:var(--wmcolor-lavender);--wmcolor-linechart-delta-text-negative:var(--wmcolor-text-negative);--wmcolor-linechart-delta-text-positive:var(--wmcolor-text-positive);--wmcolor-linechart-gridline:var(--wmcolor-chart-gridline);--wmcolor-linechart-highlight-background:var(--wmcolor-background-highlight);--wmcolor-linechart-popover-background:var(--wmcolor-chart-popover-background);display:block;height:500px;width:100%;font-size:14px;overflow-y:visible;overflow-x:auto}:host .component-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:562px;width:100%;height:100%;outline:none}:host .icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;position:relative;color:var(--iconColor);-webkit-transform:var(--translation, unset);transform:var(--translation, unset)}:host .icon:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);padding:0 3px;z-index:1}:host .icon:after{color:white;position:absolute;left:3px;-webkit-transform:scale(180%);transform:scale(180%);display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:var(--icon);z-index:0}:host .legend{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px 16px;margin-top:4px;margin-bottom:16px}:host .legend .legend-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:default;font-weight:600}:host .legend .legend-label.faded{opacity:0.3}:host .legend .legend-label .icon{margin-right:4px}:host .legend .visibility-toggle{margin-left:4px}:host .chart-wrapper{position:relative;-ms-flex-positive:1;flex-grow:1;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:1fr auto auto;margin-right:16px}:host .chart-label{font-size:14px;font-weight:600}:host .chart-label.--y-axis{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:var(--labelWidth);align-self:center;margin-right:16px;grid-area:1/1/2/2;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}:host .chart-label.--x-axis{margin-top:16px;text-align:center;grid-area:3/3/4/4}:host .y-intervals{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;grid-area:1/2/2/3;margin-right:4px}:host .y-intervals .y-interval{text-align:right}:host .x-intervals{display:grid;grid-template-columns:var(--columns);grid-area:2/3/3/4;line-height:1;margin-top:4px}:host .x-intervals .x-interval{text-align:center}:host .x-intervals .x-interval:first-child{text-align:left}:host .x-intervals .x-interval:last-child{text-align:right}:host .x-intervals .x-interval.hidden{visibility:hidden}:host .plot-area{position:relative;grid-area:1/3/2/4;background-image:linear-gradient(90deg, var(--wmcolor-linechart-gridline) 1px, transparent 1px);border-bottom:1px solid var(--wmcolor-linechart-gridline);background-size:var(--backgroundSize)}:host .plot-area.right-border{border-right:1px solid var(--wmcolor-linechart-gridline)}:host .line{position:absolute;width:100%;height:100%}:host .line .icon{position:absolute;-webkit-transform:var(--translation);transform:var(--translation);left:var(--xPosition);top:var(--yPosition);z-index:1}:host .line .icon:focus{z-index:2;outline:none}:host .line .icon:focus:before{-webkit-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);-moz-box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);box-shadow:0 2px 2px 0 rgba(244, 243, 246, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.1), 0 0 4px 3px var(--wmcolor-interactive-focus);border-radius:3px}:host .line .icon:focus:before::-moz-focus-inner{border:0}:host .line .line-svg{height:100%;width:100%}:host .line.faded{opacity:0.3}:host .line.focused{z-index:1}:host .line.hidden{visibility:hidden}:host .hover-area-wrapper{position:absolute;width:100%;height:100%;top:0;left:0;display:grid;grid-template-rows:1fr;grid-template-columns:var(--columns)}:host .hover-indicator{-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;height:100%;width:2px;border:1px solid var(--wmcolor-linechart-currentposition);-webkit-transform:translateX(-50%);transform:translateX(-50%);left:var(--xPosition);grid-column:3/4;grid-row:1/2;pointer-events:none}:host .popover{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:400px;background-color:var(--wmcolor-linechart-popover-background);position:absolute;top:var(--topPosition, 0);left:var(--leftPosition, unset);right:var(--rightPosition, unset);padding:16px;border-radius:5px;-webkit-box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);box-shadow:0px 2px 10px 0px rgba(0, 0, 0, 0.09);-webkit-transform:translateY(-50%);transform:translateY(-50%);line-height:1;z-index:3;grid-column:3/4;grid-row:1/2;pointer-events:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host .popover .title{font-size:16px;font-weight:600}:host .popover .comparison-title{font-style:italic;margin-top:4px}:host .popover .unit{font-size:12px;font-weight:600}:host .popover .unit.--x{margin-left:4px}:host .popover .popover-table{margin-top:16px}:host .popover .popover-table .popover-row{line-height:1}:host .popover .popover-table .popover-row:not(:last-child) td{padding-bottom:8px}:host .popover .popover-table .popover-row .row-label{font-weight:600;padding-right:16px;overflow-wrap:anywhere}:host .popover .popover-table .popover-row .row-label .icon{margin-right:4px}:host .popover .popover-table .popover-row .row-value,:host .popover .popover-table .popover-row .delta{text-align:right;white-space:nowrap}:host .popover .popover-table .popover-row .delta{padding-left:12px;font-weight:600}:host .popover .popover-table .popover-row .delta.--positive{color:var(--wmcolor-linechart-delta-text-positive)}:host .popover .popover-table .popover-row .delta.--negative{color:var(--wmcolor-linechart-delta-text-negative)}:host .highlight{position:absolute;height:100%;background-color:color-mix(in srgb, var(--wmcolor-linechart-highlight-background) 60%, transparent);left:var(--startPercentage);right:var(--endPercentage)}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}';export{b as wm_line_chart}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as e,h as r,H as i,g as o}from"./p-11b416c7.js";import{i as a,t as s,a as d,j as l,k as n,g as c}from"./p-20495238.js";const h=class{constructor(r){t(this,r),this.wmDatepickerNewValidValue=e(this,"wmDatepickerNewValidValue",7),this.lastCommittedValue=this.value,this.parsableEntry=/^(\d{1}|\d{2}|\d{4})[\-\.\/]\d{1,2}[\-\.\/](\d{1}|\d{2}|\d{4})$/,this.isoEntry=/^\d\d\d\d[-]\d\d[-]\d\d$/,this.eightDigitsEntry=/^\d{8}$/,this.dateFormats={US:a.formatMessage({id:"date.formatUS",defaultMessage:"mm/dd/yyyy"}),INT:a.formatMessage({id:"date.formatINT",defaultMessage:"dd/mm/yyyy"}),ISO:a.formatMessage({id:"date.formatISO",defaultMessage:"yyyy/mm/dd"})},this.value="",this.disabled=!1,this.dateFormat="US",this.errorMessage="",this.labelPosition="top",this.label="",this.requiredField=!1,this.requiredFieldMessage=void 0,this.preventValidation=void 0,this.displayError=""}get isDisabled(){return s(this.disabled)}handleTabbingOn(){this.dpWrapper&&this.dpWrapper.classList.add("user-is-tabbing")}handleTabbingOff(){this.dpWrapper&&this.dpWrapper.classList.remove("user-is-tabbing")}handleError(){this.errorMessage?this.generateError():(this.clearError(),this.processInput())}handleDisabledChange(){d(this.el,this.isDisabled)}handleInput(t){this.value=t.target.value}handleBlur(t){this.preventValidation&&l(t,this.preventValidation)||this.processInput(),this.dpWrapper.classList.remove("focus")}focusHandler(){this.dpWrapper.classList.add("focus")}handlePopupBlurred(t){if(t.detail.relatedTarget!==this.el){const e=new CustomEvent("blur");e.relatedTarget=t.detail.relatedTarget,this.el.dispatchEvent(e)}}getActiveElement(){return n(document.activeElement)}handleCellTriggered(t){let e=t.detail,r=e.getAttribute("data-year")+"-"+e.getAttribute("data-month")+"-"+e.textContent;this.inputEl.value=this.reformatDate(this.dateFormat,r),this.processInput();const i=new CustomEvent("input");this.el.dispatchEvent(i)}processInput(t){const e=!t&&this.requiredField;let r=this.inputEl.value;if(this.eightDigitsEntry.test(this.inputEl.value)&&(this.inputEl.value=this.addSlashes(this.inputEl.value)),this.parsableEntry.test(this.inputEl.value)?(r=this.reformatDate("ISO",this.inputEl.value),this.inputEl.value=this.reformatDate(this.dateFormat,r),this.isValidDate(r)?this.errorMessage?this.generateError():this.clearError():this.inputEl.value.length&&this.generateError()):this.inputEl.value.length||e||this.errorMessage?this.generateError():this.inputEl.value.length||e||this.clearError(),this.value=r,r!==this.lastCommittedValue){const t=new CustomEvent("change");this.el.dispatchEvent(t),this.lastCommittedValue=this.value}this.isValidDate(r)&&r!==this.lastValidValue&&(this.wmDatepickerNewValidValue.emit(),this.lastValidValue=r)}reformatDate(t,e){if(!e)return"";if(!this.parsableEntry.test(e))return e;{let r=e.replace(/[\-\.]/gi,"/").split("/");switch(t){case"US":case this.dateFormats.US:return r[1].padStart(2,"0")+"/"+r[2].padStart(2,"0")+"/"+r[0].padStart(4,"20");case"INT":case this.dateFormats.INT:return r[2].padStart(2,"0")+"/"+r[1].padStart(2,"0")+"/"+r[0].padStart(4,"20");case"ISO":case this.dateFormats.ISO:if("US"===this.dateFormat||this.dateFormat===this.dateFormats.US)return r[2].padStart(4,"20")+"-"+r[0].padStart(2,"0")+"-"+r[1].padStart(2,"0");if("INT"===this.dateFormat||this.dateFormat===this.dateFormats.INT)return r[2].padStart(4,"20")+"-"+r[1].padStart(2,"0")+"-"+r[0].padStart(2,"0");if("ISO"===this.dateFormat||this.dateFormat===this.dateFormats.ISO)return r[0].padStart(4,"20")+"-"+r[1].padStart(2,"0")+"-"+r[2].padStart(2,"0");default:return r.join("/")}}}isValidDate(t){if(t&&this.isoEntry.test(t)){let e=t.split("-"),r=parseInt(e[2],10),i=parseInt(e[1],10),o=parseInt(e[0],10);if(o<1e3||o>3e3||0==i||i>12)return!1;let a=[31,28,31,30,31,30,31,31,30,31,30,31];return(o%400==0||o%100!=0&&o%4==0)&&(a[1]=29),r>0&&r<=a[i-1]}return!1}generateError(){const t=this.requiredFieldMessage||a.formatMessage({id:"date.requiredDateError",defaultMessage:"A date is required."}),e=a.formatMessage({id:"date.invalidDate",defaultMessage:"Please enter a valid date in the format {dateFormat, select, us {mm/dd/yyyy} int {dd/mm/yyyy} other {yyyy/mm/dd}}."},{dateFormat:this.dateFormat.toLowerCase()});this.errorMessage?this.displayError=this.errorMessage:this.inputEl.value.length?this.displayError=e:!this.inputEl.value.length&&this.requiredField&&(this.displayError=t)}clearError(){this.displayError=""}addSlashes(t){return"ISO"===this.dateFormat||this.dateFormat===this.dateFormats.ISO?t.substring(0,4)+"/"+t.substring(4,6)+"/"+t.substring(6):t.substring(0,2)+"/"+t.substring(2,4)+"/"+t.substring(4)}componentWillLoad(){""===this.label&&console.error("You must include a label prop for the datepicker input (for accessibility reasons), even if the label position is none."),this.errorMessage&&this.generateError(),this.uid=this.el.id?this.el.id:c(),this.value&&this.isValidDate(this.value)&&(this.lastValidValue=this.value),d(this.el,this.isDisabled)}componentDidLoad(){this.inputEl.value=this.reformatDate(this.dateFormat,this.value),this.processInput(!0)}render(){const t=a.formatMessage({id:"date.format",defaultMessage:"{dateFormat, select, us {mm/dd/yyyy} int {dd/mm/yyyy} other {yyyy/mm/dd}}"},{dateFormat:this.dateFormat.toLowerCase()});return r(i,{id:this.uid,"aria-busy":"false",class:this.displayError?"invalid":"",invalid:this.displayError?"true":null},r("div",{ref:t=>this.dpWrapper=t,class:`wrapper label-${this.labelPosition} ${this.displayError?"invalid":""}`},r("div",{class:"label-wrapper"},"none"!==this.labelPosition&&r("label",{id:`datepickerLabel-${this.uid}`,htmlFor:`date-input-${this.uid}`,class:"label",title:`${this.label} (${t})`},this.label,this.requiredField&&r("span",{"aria-hidden":"true",class:"required"},"*"))),r("div",null,r("div",{class:"inner-wrapper"},r("input",{disabled:this.isDisabled,type:"text",id:`date-input-${this.uid}`,class:"date-input",name:"date",placeholder:t,onFocus:this.focusHandler.bind(this),onInput:t=>this.handleInput(t),onBlur:t=>this.handleBlur(t),ref:t=>this.inputEl=t,"aria-describedby":`error-${this.uid}`,"aria-controls":`popup-${this.uid}`,"aria-label":this.label,"aria-required":this.requiredField?"true":null}),r("priv-datepicker",{disabled:this.isDisabled,date:this.lastValidValue?new Date(this.lastValidValue):new Date,parentId:this.uid})),r("div",{id:`error-${this.uid}`,class:"error","aria-live":"assertive","aria-atomic":"true"},this.displayError))))}static get delegatesFocus(){return!0}get el(){return o(this)}static get watchers(){return{errorMessage:["handleError"],disabled:["handleDisabledChange"]}}};h.style=':host{--wmcolor-datepicker-background:var(--wmcolor-background);--wmcolor-datepicker-day-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-day-background-selected:var(--wmcolor-interactive);--wmcolor-datepicker-day-text-outside:var(--wmcolor-interactive-disabled);--wmcolor-datepicker-day-text-selected:var(--wmcolor-interactive-text-selected);--wmcolor-datepicker-day-text:var(--wmcolor-text);--wmcolor-datepicker-input-background-disabled:var(--wmcolor-input-background-disabled);--wmcolor-datepicker-input-background:var(--wmcolor-input-background);--wmcolor-datepicker-input-border:var(--wmcolor-input-border);--wmcolor-datepicker-input-text-disabled:var(--wmcolor-input-text-disabled);--wmcolor-datepicker-input-text:var(--wmcolor-input-text);--wmcolor-datepicker-month-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-month-background-selected:var(--wmcolor-interactive);--wmcolor-datepicker-month-background:var(--wmcolor-text);--wmcolor-datepicker-month-border:var(--wmcolor-border-light);--wmcolor-datepicker-month-text-selected:var(--wmcolor-text-ondark);--wmcolor-datepicker-month-text:var(--wmcolor-interactive);--wmcolor-datepicker-navigation-background-hover:var(--wmcolor-button-background-navigational-hover);--wmcolor-datepicker-navigation-background:var(--wmcolor-button-background-navigational);--wmcolor-datepicker-navigation-text:var(--wmcolor-button-icon-navigational);--wmcolor-datepicker-selector-background:var(--wmcolor-button-background-secondary);--wmcolor-datepicker-selector-border:var(--wmcolor-button-border-secondary);--wmcolor-datepicker-selector-text:var(--wmcolor-button-text-secondary);--wmcolor-datepicker-toggle-background-disabled:var(--wmcolor-input-background-disabled);--wmcolor-datepicker-toggle-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-toggle-background:var(--wmcolor-input-background);--wmcolor-datepicker-toggle-icon-disabled:var(--wmcolor-interactive-disabled);--wmcolor-datepicker-toggle-icon:var(--wmcolor-interactive);--wmcolor-datepicker-weekdays-background:var(--wmcolor-table-header-background);--wmcolor-datepicker-weekdays-text:var(--wmcolor-text);font-family:inherit}:host *{-webkit-box-sizing:border-box;box-sizing:border-box}:host .wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:0.875rem}:host .wrapper .label{display:block;line-height:normal;font-weight:600;white-space:nowrap;margin-bottom:0.25rem}:host .wrapper .label .required{color:var(--wmcolor-text-required)}:host .wrapper.label-left{-ms-flex-direction:row;flex-direction:row}:host .wrapper.label-left .label-wrapper{line-height:2.5rem}:host .wrapper.label-left .label-wrapper .label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:2.5rem;white-space:normal;margin-bottom:0;margin-right:0.75rem}:host .wrapper.label-none label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}:host .wrapper.invalid .label{color:var(--wmcolor-text-error)}:host .wrapper.invalid .label:after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f026";margin-left:0.3125rem}[dir=RTL] :host .wrapper.invalid .label:after{margin-left:0;margin-right:0.3125rem}:host .wrapper.rtl.label-left .label{margin-right:0;margin-left:0.75rem}:host .wrapper{position:relative}:host .wrapper .inner-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:2.5rem;border:1px solid;border-color:var(--wmcolor-datepicker-input-border);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;max-width:236px;-ms-flex-pack:justify;justify-content:space-between;position:relative}:host .wrapper .inner-wrapper .date-input{-moz-border-top-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-bottom-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border:none;color:var(--wmcolor-datepicker-input-text);font-size:0.875rem;padding:0.625rem 0.9375rem 0.5rem;min-width:0;height:100%;-ms-flex:1;flex:1;margin:0;background-color:var(--wmcolor-datepicker-input-background)}:host .wrapper .inner-wrapper .date-input:disabled{background-color:var(--wmcolor-datepicker-input-background-disabled);color:var(--wmcolor-datepicker-input-text-disabled)}:host .wrapper .inner-wrapper .date-input:focus{outline:none}:host .wrapper.invalid .inner-wrapper{-webkit-box-shadow:0 0 0 1px var(--wmcolor-input-border-error);-moz-box-shadow:0 0 0 1px var(--wmcolor-input-border-error);box-shadow:0 0 0 1px var(--wmcolor-input-border-error);border-color:var(--wmcolor-input-border-error)}:host .wrapper.invalid .error{display:block;font-style:italic;color:var(--wmcolor-text-error);font-size:0.875rem;margin-top:0.25rem;margin-bottom:4px;top:100%;left:0}:host .wrapper.focus .inner-wrapper{-webkit-box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);-moz-box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);outline:none;border-color:var(--wmcolor-input-border-focus)}:host .user-is-tabbing .toggle:focus:not(:active){border:none;z-index:11}';export{h as wm_datepicker}
|
|
1
|
+
import{r as t,c as e,h as r,H as i,g as o}from"./p-11b416c7.js";import{i as a,t as s,a as d,j as l,k as n,g as c}from"./p-af1d2a68.js";const h=class{constructor(r){t(this,r),this.wmDatepickerNewValidValue=e(this,"wmDatepickerNewValidValue",7),this.lastCommittedValue=this.value,this.parsableEntry=/^(\d{1}|\d{2}|\d{4})[\-\.\/]\d{1,2}[\-\.\/](\d{1}|\d{2}|\d{4})$/,this.isoEntry=/^\d\d\d\d[-]\d\d[-]\d\d$/,this.eightDigitsEntry=/^\d{8}$/,this.dateFormats={US:a.formatMessage({id:"date.formatUS",defaultMessage:"mm/dd/yyyy"}),INT:a.formatMessage({id:"date.formatINT",defaultMessage:"dd/mm/yyyy"}),ISO:a.formatMessage({id:"date.formatISO",defaultMessage:"yyyy/mm/dd"})},this.value="",this.disabled=!1,this.dateFormat="US",this.errorMessage="",this.labelPosition="top",this.label="",this.requiredField=!1,this.requiredFieldMessage=void 0,this.preventValidation=void 0,this.displayError=""}get isDisabled(){return s(this.disabled)}handleTabbingOn(){this.dpWrapper&&this.dpWrapper.classList.add("user-is-tabbing")}handleTabbingOff(){this.dpWrapper&&this.dpWrapper.classList.remove("user-is-tabbing")}handleError(){this.errorMessage?this.generateError():(this.clearError(),this.processInput())}handleDisabledChange(){d(this.el,this.isDisabled)}handleInput(t){this.value=t.target.value}handleBlur(t){this.preventValidation&&l(t,this.preventValidation)||this.processInput(),this.dpWrapper.classList.remove("focus")}focusHandler(){this.dpWrapper.classList.add("focus")}handlePopupBlurred(t){if(t.detail.relatedTarget!==this.el){const e=new CustomEvent("blur");e.relatedTarget=t.detail.relatedTarget,this.el.dispatchEvent(e)}}getActiveElement(){return n(document.activeElement)}handleCellTriggered(t){let e=t.detail,r=e.getAttribute("data-year")+"-"+e.getAttribute("data-month")+"-"+e.textContent;this.inputEl.value=this.reformatDate(this.dateFormat,r),this.processInput();const i=new CustomEvent("input");this.el.dispatchEvent(i)}processInput(t){const e=!t&&this.requiredField;let r=this.inputEl.value;if(this.eightDigitsEntry.test(this.inputEl.value)&&(this.inputEl.value=this.addSlashes(this.inputEl.value)),this.parsableEntry.test(this.inputEl.value)?(r=this.reformatDate("ISO",this.inputEl.value),this.inputEl.value=this.reformatDate(this.dateFormat,r),this.isValidDate(r)?this.errorMessage?this.generateError():this.clearError():this.inputEl.value.length&&this.generateError()):this.inputEl.value.length||e||this.errorMessage?this.generateError():this.inputEl.value.length||e||this.clearError(),this.value=r,r!==this.lastCommittedValue){const t=new CustomEvent("change");this.el.dispatchEvent(t),this.lastCommittedValue=this.value}this.isValidDate(r)&&r!==this.lastValidValue&&(this.wmDatepickerNewValidValue.emit(),this.lastValidValue=r)}reformatDate(t,e){if(!e)return"";if(!this.parsableEntry.test(e))return e;{let r=e.replace(/[\-\.]/gi,"/").split("/");switch(t){case"US":case this.dateFormats.US:return r[1].padStart(2,"0")+"/"+r[2].padStart(2,"0")+"/"+r[0].padStart(4,"20");case"INT":case this.dateFormats.INT:return r[2].padStart(2,"0")+"/"+r[1].padStart(2,"0")+"/"+r[0].padStart(4,"20");case"ISO":case this.dateFormats.ISO:if("US"===this.dateFormat||this.dateFormat===this.dateFormats.US)return r[2].padStart(4,"20")+"-"+r[0].padStart(2,"0")+"-"+r[1].padStart(2,"0");if("INT"===this.dateFormat||this.dateFormat===this.dateFormats.INT)return r[2].padStart(4,"20")+"-"+r[1].padStart(2,"0")+"-"+r[0].padStart(2,"0");if("ISO"===this.dateFormat||this.dateFormat===this.dateFormats.ISO)return r[0].padStart(4,"20")+"-"+r[1].padStart(2,"0")+"-"+r[2].padStart(2,"0");default:return r.join("/")}}}isValidDate(t){if(t&&this.isoEntry.test(t)){let e=t.split("-"),r=parseInt(e[2],10),i=parseInt(e[1],10),o=parseInt(e[0],10);if(o<1e3||o>3e3||0==i||i>12)return!1;let a=[31,28,31,30,31,30,31,31,30,31,30,31];return(o%400==0||o%100!=0&&o%4==0)&&(a[1]=29),r>0&&r<=a[i-1]}return!1}generateError(){const t=this.requiredFieldMessage||a.formatMessage({id:"date.requiredDateError",defaultMessage:"A date is required."}),e=a.formatMessage({id:"date.invalidDate",defaultMessage:"Please enter a valid date in the format {dateFormat, select, us {mm/dd/yyyy} int {dd/mm/yyyy} other {yyyy/mm/dd}}."},{dateFormat:this.dateFormat.toLowerCase()});this.errorMessage?this.displayError=this.errorMessage:this.inputEl.value.length?this.displayError=e:!this.inputEl.value.length&&this.requiredField&&(this.displayError=t)}clearError(){this.displayError=""}addSlashes(t){return"ISO"===this.dateFormat||this.dateFormat===this.dateFormats.ISO?t.substring(0,4)+"/"+t.substring(4,6)+"/"+t.substring(6):t.substring(0,2)+"/"+t.substring(2,4)+"/"+t.substring(4)}componentWillLoad(){""===this.label&&console.error("You must include a label prop for the datepicker input (for accessibility reasons), even if the label position is none."),this.errorMessage&&this.generateError(),this.uid=this.el.id?this.el.id:c(),this.value&&this.isValidDate(this.value)&&(this.lastValidValue=this.value),d(this.el,this.isDisabled)}componentDidLoad(){this.inputEl.value=this.reformatDate(this.dateFormat,this.value),this.processInput(!0)}render(){const t=a.formatMessage({id:"date.format",defaultMessage:"{dateFormat, select, us {mm/dd/yyyy} int {dd/mm/yyyy} other {yyyy/mm/dd}}"},{dateFormat:this.dateFormat.toLowerCase()});return r(i,{id:this.uid,"aria-busy":"false",class:this.displayError?"invalid":"",invalid:this.displayError?"true":null},r("div",{ref:t=>this.dpWrapper=t,class:`wrapper label-${this.labelPosition} ${this.displayError?"invalid":""}`},r("div",{class:"label-wrapper"},"none"!==this.labelPosition&&r("label",{id:`datepickerLabel-${this.uid}`,htmlFor:`date-input-${this.uid}`,class:"label",title:`${this.label} (${t})`},this.label,this.requiredField&&r("span",{"aria-hidden":"true",class:"required"},"*"))),r("div",null,r("div",{class:"inner-wrapper"},r("input",{disabled:this.isDisabled,type:"text",id:`date-input-${this.uid}`,class:"date-input",name:"date",placeholder:t,onFocus:this.focusHandler.bind(this),onInput:t=>this.handleInput(t),onBlur:t=>this.handleBlur(t),ref:t=>this.inputEl=t,"aria-describedby":`error-${this.uid}`,"aria-controls":`popup-${this.uid}`,"aria-label":this.label,"aria-required":this.requiredField?"true":null}),r("priv-datepicker",{disabled:this.isDisabled,date:this.lastValidValue?new Date(this.lastValidValue):new Date,parentId:this.uid})),r("div",{id:`error-${this.uid}`,class:"error","aria-live":"assertive","aria-atomic":"true"},this.displayError))))}static get delegatesFocus(){return!0}get el(){return o(this)}static get watchers(){return{errorMessage:["handleError"],disabled:["handleDisabledChange"]}}};h.style=':host{--wmcolor-datepicker-background:var(--wmcolor-background);--wmcolor-datepicker-day-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-day-background-selected:var(--wmcolor-interactive);--wmcolor-datepicker-day-text-outside:var(--wmcolor-interactive-disabled);--wmcolor-datepicker-day-text-selected:var(--wmcolor-interactive-text-selected);--wmcolor-datepicker-day-text:var(--wmcolor-text);--wmcolor-datepicker-input-background-disabled:var(--wmcolor-input-background-disabled);--wmcolor-datepicker-input-background:var(--wmcolor-input-background);--wmcolor-datepicker-input-border:var(--wmcolor-input-border);--wmcolor-datepicker-input-text-disabled:var(--wmcolor-input-text-disabled);--wmcolor-datepicker-input-text:var(--wmcolor-input-text);--wmcolor-datepicker-month-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-month-background-selected:var(--wmcolor-interactive);--wmcolor-datepicker-month-background:var(--wmcolor-text);--wmcolor-datepicker-month-border:var(--wmcolor-border-light);--wmcolor-datepicker-month-text-selected:var(--wmcolor-text-ondark);--wmcolor-datepicker-month-text:var(--wmcolor-interactive);--wmcolor-datepicker-navigation-background-hover:var(--wmcolor-button-background-navigational-hover);--wmcolor-datepicker-navigation-background:var(--wmcolor-button-background-navigational);--wmcolor-datepicker-navigation-text:var(--wmcolor-button-icon-navigational);--wmcolor-datepicker-selector-background:var(--wmcolor-button-background-secondary);--wmcolor-datepicker-selector-border:var(--wmcolor-button-border-secondary);--wmcolor-datepicker-selector-text:var(--wmcolor-button-text-secondary);--wmcolor-datepicker-toggle-background-disabled:var(--wmcolor-input-background-disabled);--wmcolor-datepicker-toggle-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-datepicker-toggle-background:var(--wmcolor-input-background);--wmcolor-datepicker-toggle-icon-disabled:var(--wmcolor-interactive-disabled);--wmcolor-datepicker-toggle-icon:var(--wmcolor-interactive);--wmcolor-datepicker-weekdays-background:var(--wmcolor-table-header-background);--wmcolor-datepicker-weekdays-text:var(--wmcolor-text);font-family:inherit}:host *{-webkit-box-sizing:border-box;box-sizing:border-box}:host .wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:0.875rem}:host .wrapper .label{display:block;line-height:normal;font-weight:600;white-space:nowrap;margin-bottom:0.25rem}:host .wrapper .label .required{color:var(--wmcolor-text-required)}:host .wrapper.label-left{-ms-flex-direction:row;flex-direction:row}:host .wrapper.label-left .label-wrapper{line-height:2.5rem}:host .wrapper.label-left .label-wrapper .label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:2.5rem;white-space:normal;margin-bottom:0;margin-right:0.75rem}:host .wrapper.label-none label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}:host .wrapper.invalid .label{color:var(--wmcolor-text-error)}:host .wrapper.invalid .label:after{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\\f026";margin-left:0.3125rem}[dir=RTL] :host .wrapper.invalid .label:after{margin-left:0;margin-right:0.3125rem}:host .wrapper.rtl.label-left .label{margin-right:0;margin-left:0.75rem}:host .wrapper{position:relative}:host .wrapper .inner-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:2.5rem;border:1px solid;border-color:var(--wmcolor-datepicker-input-border);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;max-width:236px;-ms-flex-pack:justify;justify-content:space-between;position:relative}:host .wrapper .inner-wrapper .date-input{-moz-border-top-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-bottom-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border:none;color:var(--wmcolor-datepicker-input-text);font-size:0.875rem;padding:0.625rem 0.9375rem 0.5rem;min-width:0;height:100%;-ms-flex:1;flex:1;margin:0;background-color:var(--wmcolor-datepicker-input-background)}:host .wrapper .inner-wrapper .date-input:disabled{background-color:var(--wmcolor-datepicker-input-background-disabled);color:var(--wmcolor-datepicker-input-text-disabled)}:host .wrapper .inner-wrapper .date-input:focus{outline:none}:host .wrapper.invalid .inner-wrapper{-webkit-box-shadow:0 0 0 1px var(--wmcolor-input-border-error);-moz-box-shadow:0 0 0 1px var(--wmcolor-input-border-error);box-shadow:0 0 0 1px var(--wmcolor-input-border-error);border-color:var(--wmcolor-input-border-error)}:host .wrapper.invalid .error{display:block;font-style:italic;color:var(--wmcolor-text-error);font-size:0.875rem;margin-top:0.25rem;margin-bottom:4px;top:100%;left:0}:host .wrapper.focus .inner-wrapper{-webkit-box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);-moz-box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);box-shadow:0 0 0 1px var(--wmcolor-input-border-focus);outline:none;border-color:var(--wmcolor-input-border-focus)}:host .user-is-tabbing .toggle:focus:not(:active){border:none;z-index:11}';export{h as wm_datepicker}
|