-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathp-ca37935f.entry.js
5 lines (5 loc) · 3.39 KB
/
p-ca37935f.entry.js
1
2
3
4
5
/*!
* Built by BASIS
* Copyright BASIS International Ltd.
*/
import{r as t,c as i,h as s,H as e,g as n}from"./p-0f27354a.js";import{D as o}from"./p-835abc59.js";import{h as a}from"./p-3e9fe89f.js";const h=class{constructor(s){t(this,s),this.modifiedEvent=i(this,"dwc-modified",7),this.spinedEvent=i(this,"dwc-spun",7),this.disabled=!1,this.readonly=!1,this.max=-1,this.min=-1,this.field="DAY"}connectedCallback(){this.handleSlotChange=this.handleSlotChange.bind(this)}handleSpinedUp(){this.doSpin("up")}handleSpinedDown(){this.doSpin("down")}handleRequiredPropsChanged(t){t.stopPropagation();const{disabled:i,readonly:s,min:e,max:n}=t.detail;this.disabled=i,this.readonly=s,this.min=e,this.max=n}async setFocus(){await this.$inputd.setFocus()}async removeFocus(){await this.$inputd.removeFocus()}async spin(t){this.doSpin(t?"up":"down",!1)}async getNextDate(){const t=this.modifyDate("up");return-1===t?-1:o.toJulian(t)}async getPreviousDate(){const t=this.modifyDate("down");return-1===t?-1:o.toJulian(t)}doSpin(t,i=!0){if(!this.$inputd)return;if((this.readonly||this.disabled)&&1==i)return;const s=this.$inputd,e=s.mask,n=this.modifyDate(t);-1!==n&&(s.value=o.format(n,e)),i&&this.fireModifiedEvent(),this.fireSpinedEvent()}modifyDate(t){const i=o.parse(this.$inputd.value,this.$inputd.mask);if(!i)return-1;const s=this.field,e=new Date(i.valueOf());switch(e.setHours(12),s){case"DAY":e.setDate("up"===t?i.getDate()+1:i.getDate()-1);break;case"MONTH":e.setMonth("up"===t?i.getMonth()+1:i.getMonth()-1);break;case"WEEK":e.setDate("up"===t?i.getDate()+7:i.getDate()-7);break;case"YEAR":e.setFullYear("up"===t?i.getFullYear()+1:i.getFullYear()-1)}if("up"===t){if(-1!==this.max){const t=0===this.max?new Date:o.fromJulian(this.max);if(t.setHours(12),e.getTime()>t.getTime())return i}}else if(-1!==this.min){const t=0===this.min?new Date:o.fromJulian(this.min);if(t.setHours(12),e.getTime()<t.getTime())return i}return e}fireSpinedEvent(){if(this.readonly||this.disabled)return;let t=-1;const i=this.$inputd,s=o.parse(i.value,i.mask);s&&(t=o.toJulian(s)),this.spinedEvent.emit(t)}fireModifiedEvent(){this.readonly||this.disabled||this.modifiedEvent.emit(this.$inputd.value)}handleSlotChange(){this.$inputd=this.el.querySelector("dwc-datefield"),this.$inputd&&(this.$inputd.showSpinners=!0,this.$inputd.spinnable=!0,this.disabled=this.$inputd.disabled,this.readonly=this.$inputd.readonly,this.min=this.$inputd.min,this.max=this.$inputd.max)}render(){return s(e,{key:"3825e71081e4e1bf3760f842195525dd46c111b1",class:a({BBjControl:!0,BBjSpinner:!0,BBjInputDSpinner:!0,"bbj-disabled":this.disabled,"bbj-readonly":this.readonly})},s("slot",{key:"dc1e05f5b94cf6adcd0c0d2b6e6ae5b4402d01f9",onSlotchange:this.handleSlotChange}))}get el(){return n(this)}};h.style="@media (prefers-reduced-motion: reduce){*,::before,::after{animation-delay:-1ms !important;animation-duration:1ms !important;animation-iteration-count:1 !important;background-attachment:initial !important;scroll-behavior:auto !important;transition-delay:0s !important;transition-duration:0s !important}}:host{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;-webkit-tap-highlight-color:transparent;text-size-adjust:100%}:host *,:host *::before,:host *::after{box-sizing:inherit}:host{cursor:pointer;display:inline-block}:host(:focus),:host(:active){outline:none}:host ::slotted(dwc-datefield){height:100%;width:100%}";export{h as dwc_datefield_spinner}