@aquera/nile-elements 1.3.4-beta-1.4 → 1.3.4-beta-1.5

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/demo/index.html CHANGED
@@ -60,9 +60,11 @@ Do we need the option to select the to and from date? Like to comes first and fr
60
60
 
61
61
 
62
62
  <nile-date-picker
63
- jumpToTypedDate
64
- inputFormat="DD.MM.YYYY"
65
63
  range
64
+ syncDatePicker
65
+ dateFormat="DD.MM.YYYY"
66
+ rangeSeparator=" to "
67
+
66
68
  >
67
69
  <nile-input
68
70
  slot="trigger"
package/dist/index.js CHANGED
@@ -6392,7 +6392,7 @@ box-shadow: none;
6392
6392
  display:block;
6393
6393
  width: 100%;
6394
6394
  }
6395
- `;function hn(e,t){if(!e)return null;const i=t.match(/[^A-Z]/i);if(!i)return null;const M=i[0];if(!e.includes(M))return null;const n=e.split(M),o=t.split(M);let r=null,s=null,a=null;for(let e=0;e<o.length;e++){const t=o[e],i=n[e];if(!i)return null;if("DD"===t){if(2!==i.length)return null;r=Number(i)}if("MM"===t){if(2!==i.length)return null;s=Number(i)-1}if("YYYY"===t){if(4!==i.length)return null;a=Number(i)}}if(null==r||null==s||null==a)return null;const l=new Date(a,s,r);return l.getFullYear()!==a||l.getMonth()!==s||l.getDate()!==r?null:l}function Tn(e,t){if(!e)return"";const i=String(e.getDate()).padStart(2,"0"),M=String(e.getMonth()+1).padStart(2,"0"),n=e.getFullYear();switch(t){case"DD/MM/YYYY":default:return`${i}/${M}/${n}`;case"MM/DD/YYYY":return`${M}/${i}/${n}`;case"YYYY/MM/DD":return`${n}/${M}/${i}`;case"YYYY.MM.DD":return`${n}.${M}.${i}`;case"DD.MM.YYYY":return`${i}.${M}.${n}`}}let yn=class extends Re{constructor(){super(...arguments),this.range=!1,this.hideTypes=!1,this.doubleClickUnselect=!1,this.allowClear=!1,this.open=!1,this.hideTimeZone=!1,this.type="absolute",this.showManualInputs=!1,this.hideDurationFields=[],this.allowedDates="{}",this.syncDatePicker=!1,this.dateFormat="DD/MM/YYYY"}static get styles(){return[dn]}firstUpdated(){if(super.firstUpdated?.(new Map),!this.syncDatePicker)return;const e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",(e=>{const t=e.detail.value,{first:i,second:M}=function(e,t,i){if(!i)return{first:hn(e,t),second:null};if(!e.includes(" - "))return{first:hn(e,t),second:null};const[M,n]=e.split(" - "),o=hn(M,t);let r=null;return n&&n.length>=10&&(r=hn(n,t)),{first:o,second:r}}(t,this.dateFormat,this.range);if(this.range){if(i&&!M&&(this.jumpTo(i),this.syncRangeCalendar(i,null)),i&&M){const[e,t]=function(e,t){return e&&t&&e.getTime()>t.getTime()?[t,e]:[e,t]}(i,M);t&&this.jumpTo(t),this.syncRangeCalendar(e,t)}}else i&&this.jumpTo(i)}))}jumpTo(e){this.open=!0;const t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString())}syncRangeCalendar(e,t){const i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t))}render(){return R`
6395
+ `;function hn(e,t){if(!e)return null;const i=t.match(/[^A-Z]/i);if(!i)return null;const M=i[0];if(!e.includes(M))return null;const n=e.split(M),o=t.split(M);let r=null,s=null,a=null;for(let e=0;e<o.length;e++){const t=o[e],i=n[e];if(!i)return null;if("DD"===t){if(2!==i.length)return null;r=Number(i)}if("MM"===t){if(2!==i.length)return null;s=Number(i)-1}if("YYYY"===t){if(4!==i.length)return null;a=Number(i)}}if(null==r||null==s||null==a)return null;const l=new Date(a,s,r);return l.getFullYear()!==a||l.getMonth()!==s||l.getDate()!==r?null:l}function Tn(e,t){if(!e)return"";const i=String(e.getDate()).padStart(2,"0"),M=String(e.getMonth()+1).padStart(2,"0"),n=e.getFullYear();switch(t){case"DD/MM/YYYY":default:return`${i}/${M}/${n}`;case"MM/DD/YYYY":return`${M}/${i}/${n}`;case"YYYY/MM/DD":return`${n}/${M}/${i}`;case"YYYY.MM.DD":return`${n}.${M}.${i}`;case"DD.MM.YYYY":return`${i}.${M}.${n}`}}let yn=class extends Re{constructor(){super(...arguments),this.range=!1,this.hideTypes=!1,this.doubleClickUnselect=!1,this.allowClear=!1,this.open=!1,this.hideTimeZone=!1,this.type="absolute",this.showManualInputs=!1,this.hideDurationFields=[],this.allowedDates="{}",this.syncDatePicker=!1,this.dateFormat="DD/MM/YYYY",this.rangeSeparator=" - "}static get styles(){return[dn]}firstUpdated(){if(super.firstUpdated?.(new Map),!this.syncDatePicker)return;const e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",(e=>{const t=e.detail.value,{first:i,second:M}=function(e,t,i,M){if(!i)return{first:hn(e,t),second:null};if(!e.includes(M))return{first:hn(e,t),second:null};const[n,o]=e.split(M);return{first:hn(n,t),second:o?hn(o,t):null}}(t,this.dateFormat,this.range,this.rangeSeparator);if(this.range){if(i&&!M&&(this.jumpTo(i),this.syncRangeCalendar(i,null)),i&&M){const[e,t]=function(e,t){return e&&t&&e.getTime()>t.getTime()?[t,e]:[e,t]}(i,M);t&&this.jumpTo(t),this.syncRangeCalendar(e,t)}}else i&&this.jumpTo(i)}))}jumpTo(e){this.open=!0;const t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString())}syncRangeCalendar(e,t){const i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t))}render(){return R`
6396
6396
  <nile-dropdown .open="${this.open}" part="dd-base" .hoist="${!0}" distance="6" exportparts="base">
6397
6397
  <slot slot="trigger" part="trigger" name="trigger"></slot>
6398
6398
 
@@ -6419,7 +6419,7 @@ box-shadow: none;
6419
6419
  .allowClear="${this.allowClear}"
6420
6420
  ></nile-calendar>
6421
6421
  </nile-dropdown>
6422
- `}handleChanged(e){e.stopPropagation();const t=e.detail,i=this.querySelector("nile-input");if(!this.range){const e=t.value;return e&&i&&(i.value=Tn(new Date(e),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void this.dropdown?.hide()}const M=t.startDate,n=t.endDate;if(i){let e="";M&&(e+=Tn(new Date(M),this.dateFormat)),M&&n&&(e+=" - "+Tn(new Date(n),this.dateFormat)),i.value=e,i.emit("nile-input",{value:e})}this.emit("nile-changed",t),this.emit("nile-change",t),this.dropdown?.hide()}connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}};e([ce({type:Boolean})],yn.prototype,"range",void 0),e([ce({type:Boolean})],yn.prototype,"hideTypes",void 0),e([ce({type:Boolean,reflect:!0})],yn.prototype,"doubleClickUnselect",void 0),e([ce({type:Boolean,reflect:!0})],yn.prototype,"allowClear",void 0),e([ce({type:Boolean})],yn.prototype,"open",void 0),e([ce({type:Boolean,attribute:"hide-time-zone"})],yn.prototype,"hideTimeZone",void 0),e([ce({type:String,reflect:!0})],yn.prototype,"type",void 0),e([ce({type:Boolean,attribute:"showManualInputs"})],yn.prototype,"showManualInputs",void 0),e([ce()],yn.prototype,"value",void 0),e([ce({type:Array,attribute:"hide-duration-fields"})],yn.prototype,"hideDurationFields",void 0),e([ce({attribute:"allowedDates"})],yn.prototype,"allowedDates",void 0),e([ce({type:Boolean,attribute:!0,reflect:!0})],yn.prototype,"syncDatePicker",void 0),e([ce({type:String,attribute:!0,reflect:!0})],yn.prototype,"dateFormat",void 0),e([Ie("nile-dropdown")],yn.prototype,"dropdown",void 0),yn=e([Ne("nile-date-picker")],yn);const An=r`
6422
+ `}handleChanged(e){e.stopPropagation();const t=e.detail,i=this.querySelector("nile-input");if(!this.range){const e=t.value;return e&&i&&(i.value=Tn(new Date(e),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void this.dropdown?.hide()}const M=t.startDate,n=t.endDate;if(i){let e="";M&&(e+=Tn(new Date(M),this.dateFormat)),M&&n&&(e+=" - "+Tn(new Date(n),this.dateFormat)),i.value=e,i.emit("nile-input",{value:e})}this.emit("nile-changed",t),this.emit("nile-change",t),this.dropdown?.hide()}connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}};e([ce({type:Boolean})],yn.prototype,"range",void 0),e([ce({type:Boolean})],yn.prototype,"hideTypes",void 0),e([ce({type:Boolean,reflect:!0})],yn.prototype,"doubleClickUnselect",void 0),e([ce({type:Boolean,reflect:!0})],yn.prototype,"allowClear",void 0),e([ce({type:Boolean})],yn.prototype,"open",void 0),e([ce({type:Boolean,attribute:"hide-time-zone"})],yn.prototype,"hideTimeZone",void 0),e([ce({type:String,reflect:!0})],yn.prototype,"type",void 0),e([ce({type:Boolean,attribute:"showManualInputs"})],yn.prototype,"showManualInputs",void 0),e([ce()],yn.prototype,"value",void 0),e([ce({type:Array,attribute:"hide-duration-fields"})],yn.prototype,"hideDurationFields",void 0),e([ce({attribute:"allowedDates"})],yn.prototype,"allowedDates",void 0),e([ce({type:Boolean,attribute:!0,reflect:!0})],yn.prototype,"syncDatePicker",void 0),e([ce({type:String,attribute:!0,reflect:!0})],yn.prototype,"dateFormat",void 0),e([ce({type:String,attribute:!0,reflect:!0})],yn.prototype,"rangeSeparator",void 0),e([Ie("nile-dropdown")],yn.prototype,"dropdown",void 0),yn=e([Ne("nile-date-picker")],yn);const An=r`
6423
6423
  :host {
6424
6424
  -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));
6425
6425
  -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));
@@ -14709,7 +14709,7 @@ nile-rte-toolbar-item nile-button[data-active]::part(base):hover {
14709
14709
 
14710
14710
 
14711
14711
 
14712
- `,vS={bold:"format_bold",italic:"format_italic",underline:"format_underline",link:"link_2",left:"format_align_left",center:"format_align_middle",right:"format_align_right",justify:"format_align_justify",ul:"format_list_bulleted",ol:"format_list_numbered",clear:"format_clear"};let US=class extends ae{constructor(){super(...arguments),this.value="",this.noStyles=!1,this.singleLineEditor=!1,this.placeholder="",this.mentions={},this.content="",this.previewEl=null,this.toolbarEl=null,this.lastRange=null,this.buttonMap=new Map,this.headingSelect=null,this.fontSelect=null,this.colorInput=null,this.bgColorInput=null,this.colorSwatchEl=null,this.bgSwatchEl=null,this.containerEl=null,this.mentionsEl=null,this.onEditorKeydown=e=>{if(this.singleLineEditor&&"Enter"===e.key&&e.shiftKey)return void e.preventDefault();if(e.ctrlKey&&"i"===e.key.toLowerCase()&&(e.preventDefault(),SS(this.editorEl,"em"),this.updateContent(),this.updateToolbarState()),this.singleLineEditor&&"Enter"===e.key)return void e.preventDefault();if("Tab"!==e.key)return;e.preventDefault(),this.focusAndRestore();const t=window.getSelection();if(!t||0===t.rangeCount)return;const i=t.getRangeAt(0);if(e.shiftKey){if(i.collapsed&&i.startContainer.nodeType===Node.TEXT_NODE){const e=i.startContainer,M=i.startOffset,n=e.data.slice(0,M),o=n.replace(/(\t|[ \u00a0]{2})$/,"");if(o.length!==n.length){e.data=o+e.data.slice(M);const i=document.createRange();i.setStart(e,o.length),i.collapse(!0),t.removeAllRanges(),t.addRange(i),this.updateContent(),this.updateToolbarState()}}return}i.deleteContents();const M=document.createTextNode("\t");i.insertNode(M);const n=document.createRange();n.setStartAfter(M),n.collapse(!0),t.removeAllRanges(),t.addRange(n),this.updateContent(),this.updateToolbarState()},this.onSelectionChange=()=>{if(!this.editorEl)return;const e=document.getSelection();if(!e||0===e.rangeCount)return;const t=e.getRangeAt(0);this.editorEl.contains(t.commonAncestorContainer)&&(this.lastRange=t.cloneRange(),this.updateToolbarState())}}createRenderRoot(){return this}injectCss(e){if(this.querySelector("style[data-rte-style]"))return;const t=document.createElement("style");t.setAttribute("data-rte-style","true"),t.textContent=e,this.insertBefore(t,this.firstChild)}connectedCallback(){super.connectedCallback(),this.injectCss(fS.cssText),this.ensureStructure(),this.placeholder&&this.editorEl&&(this.editorEl.dataset.placeholder=this.placeholder),this.value&&!this.editorEl.innerHTML.trim()&&(this.editorEl.innerHTML=this.value),this.content=this.editorEl.innerHTML,this.toolbarEl&&this.wireAuthoredToolbar(this.toolbarEl),this.mentionsEl=this.querySelector("nile-rte-mentions"),this.mentionsEl&&(this.mentionsEl.attach?.(this.editorEl,this),this.mentionsEl.setExternalConfig?.(this.mentions)),this.wireEditor(),document.addEventListener("selectionchange",this.onSelectionChange,{passive:!0}),this.updateToolbarState(),this.syncPreview()}ensureStructure(){this.toolbarEl=this.querySelector("nile-rte-toolbar"),this.previewEl=this.querySelector("nile-rte-preview"),this.containerEl=this.querySelector(".rte-container"),this.containerEl||(this.containerEl=document.createElement("div"),this.containerEl.className="rte-container",this.appendChild(this.containerEl)),this.ensureEditor(),this.toolbarEl&&this.toolbarEl.parentElement!==this.containerEl&&this.containerEl.appendChild(this.toolbarEl),this.editorEl.parentElement!==this.containerEl&&this.containerEl.appendChild(this.editorEl),this.previewEl&&(this.previewEl.parentElement!==this&&this.appendChild(this.previewEl),this.previewEl.previousElementSibling!==this.containerEl&&this.insertBefore(this.previewEl,this.containerEl.nextSibling))}updateContentWithMention(e){this.updateContent(),this.dispatchEvent(new CustomEvent("nile-change",{detail:{content:this.content,mention:e},bubbles:!0,composed:!0}))}disconnectedCallback(){document.removeEventListener("selectionchange",this.onSelectionChange),this.mentionsEl&&this.mentionsEl.detach&&this.mentionsEl.detach(),super.disconnectedCallback()}updated(e){e.has("value")&&this.editorEl&&this.value!==this.editorEl.innerHTML&&(this.editorEl.innerHTML=this.value||"<p><br></p>",this.content=this.editorEl.innerHTML,this.syncPreview()),e.has("singleLineEditor")&&(this.editorEl&&this.editorEl.classList.toggle("single-line",this.singleLineEditor),this.previewEl&&this.previewEl.classList.toggle("single-line",this.singleLineEditor))}ensureEditor(){if(this.editorEl=this.querySelector(".editor"),!this.editorEl){const e=document.createElement("article");e.className="editor",e.setAttribute("contenteditable","true"),this.editorEl=e}this.placeholder&&(this.editorEl.dataset.placeholder=this.placeholder),this.editorEl.innerHTML.trim()||(this.editorEl.innerHTML="<p><br></p>")}unwrapMention(e,t=!0){const i=e.parentNode;if(!i)return;const M=t?(e.textContent??"").replace(/\u200B/g,""):"",n=document.createTextNode(M);i.insertBefore(n,e),i.removeChild(e);const o=document.createRange();o.setStartAfter(n),o.collapse(!0);const r=window.getSelection();r?.removeAllRanges(),r?.addRange(o)}scrubBrokenMentions(){if(!this.editorEl)return;this.editorEl.querySelectorAll("span.mention").forEach((e=>{const t=e,i=t.getAttribute("data-mention-key"),M=t.getAttribute("data-mention-label"),n=t.getAttribute("data-mention-trigger")||"",o=(t.textContent??"").replace(/\u200B/g,"").trim(),r=!!i&&!!M&&o.length>0&&o.startsWith(n)&&o.includes(M);o&&r||this.unwrapMention(t,!0)}))}wireEditor(){this.editorEl.addEventListener("input",(()=>{this.ensureAtLeastOneParagraph(),this.scrubBrokenMentions(),this.updateContent(),this.updateToolbarState()})),this.editorEl.addEventListener("mouseup",(()=>{this.saveSelection(),this.updateToolbarState()})),this.editorEl.addEventListener("keyup",(e=>{this.saveSelection(),["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(e.key)&&this.updateToolbarState()})),this.editorEl.addEventListener("keydown",this.onEditorKeydown)}wireAuthoredToolbar(e){this.buttonMap.clear(),this.headingSelect=null,this.fontSelect=null,this.colorInput=null,Array.from(e.children).forEach((e=>{const t=e.tagName.toLowerCase();if("nile-rte-select"!==t||"align"!==e.getAttribute("type")){if("nile-rte-link"===t)return e.editorEl=this.editorEl,void e.addEventListener("link-changed",(()=>{this.updateContent(),this.updateToolbarState()}));if("nile-rte-toolbar-item"===t){let t=e.querySelector(":scope > nile-button");const i=e.getAttribute("name")||"",M=e.getAttribute("label")||i,n=e.getAttribute("icon"),o=e.innerHTML.trim().length>0;if(t||(t=document.createElement("nile-button"),t.variant="tertiary",t.size="small"),n)t.innerHTML=`<nile-icon name="${n}" aria-label="${M}"></nile-icon>`,e.innerHTML="";else if(o)t.innerHTML=e.innerHTML,e.innerHTML="";else{const n=vS[i];n?t.innerHTML=`<nile-icon name="${n}" size="20" color="black" aria-label="${M}"></nile-icon>`:t.textContent=M||i,e.innerHTML=""}if(!t.isConnected){const i=document.createElement("nile-tooltip");i.setAttribute("content",M),i.appendChild(t),e.appendChild(i)}t.setAttribute("aria-label",M),t.addEventListener("mousedown",(e=>e.preventDefault())),t.addEventListener("click",(()=>this.onToolbarCommand(i)));const r=this.buttonMap.get(i)??[];return r.push(t),void this.buttonMap.set(i,r)}if("nile-rte-select"!==t)"nile-rte-color"!==t||e.addEventListener("change",(e=>{this.focusAndRestore();const{mode:t,value:i}=e.detail;"backColor"===t?QS(this.editorEl,"backgroundColor",i,"data-rte-bg"):function(e,t){QS(e,"color",t,"data-rte-color")}(this.editorEl,i),this.updateContent(),this.updateToolbarState()}));else{const t=e.getAttribute("type")||"";e.addEventListener("change",(e=>{this.focusAndRestore();const i=e.detail;"heading"===t?function(e,t){const i=document.getSelection();if(!i||0===i.rangeCount)return;const M=xS(i.getRangeAt(0).startContainer,e);if(!M)return;if(M.tagName.toLowerCase()===t)return;const n=document.createElement(t);for(;M.firstChild;)n.appendChild(M.firstChild);M.replaceWith(n);const o=document.createRange();o.selectNodeContents(n),o.collapse(!0),i.removeAllRanges(),i.addRange(o)}(this.editorEl,i):"font"===t&&ES(this.editorEl,i),this.updateContent(),this.updateToolbarState()}))}}else e.addEventListener("change",(e=>{this.focusAndRestore();const t=e.detail;LS(this.editorEl,t),this.updateContent(),this.updateToolbarState()}))}))}saveSelection(){const e=window.getSelection();e&&e.rangeCount&&(this.lastRange=e.getRangeAt(0).cloneRange())}restoreSelection(){if(!this.lastRange)return;const e=document.getSelection();e&&(e.removeAllRanges(),e.addRange(this.lastRange))}focusAndRestore(){this.editorEl?.focus(),this.restoreSelection()}getCleanContent(){const e=this.editorEl.cloneNode(!0);return e.querySelectorAll("*").forEach((e=>{e.removeAttribute("style")})),e.innerHTML}insertList(e){if(this.restoreSelection(),!this.lastRange)return;const t=document.createElement(e),i=this.lastRange.extractContents(),M=document.createElement("div");M.appendChild(i),Array.from(M.childNodes).forEach((e=>{if(e.nodeType===Node.TEXT_NODE&&!e.textContent?.trim())return;const i=document.createElement("li");i.appendChild(e),t.appendChild(i)})),this.lastRange.insertNode(t),this.afterListEdit(t)}afterListEdit(e){const t=document.createRange();t.setStartAfter(e),t.collapse(!0);const i=window.getSelection();i?.removeAllRanges(),i?.addRange(t),this.saveSelection(),this.updateContent(),this.updateToolbarState()}ensureAtLeastOneParagraph(){const e=this.editorEl;if(!e)return;const t=""===(e.textContent??"").replace(/\u200B/g,"").trim();if(0===e.childNodes.length||t)return void(e.innerHTML="<p><br></p>");if(!e.querySelector("p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre")){const t=document.createElement("p");for(;e.firstChild;)t.appendChild(e.firstChild);return t.hasChildNodes()||t.appendChild(document.createElement("br")),void e.appendChild(t)}e.querySelectorAll("p").forEach((e=>{""===(e.textContent??"").replace(/\u200B/g,"")&&(e.innerHTML.toLowerCase().includes("<br")||(e.innerHTML="<br>"))}))}onToolbarCommand(e){switch(this.focusAndRestore(),e){case"bold":SS(this.editorEl,"strong");break;case"italic":SS(this.editorEl,"em");break;case"underline":SS(this.editorEl,"u");break;case"left":LS(this.editorEl,"left");break;case"center":LS(this.editorEl,"center");break;case"right":LS(this.editorEl,"right");break;case"justify":LS(this.editorEl,"justify");break;case"ul":bS(this.editorEl,"ul"),this.updateContent(),this.updateToolbarState();break;case"ol":bS(this.editorEl,"ol"),this.updateContent(),this.updateToolbarState();break;case"link":break;case"clear":const e=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),t=[];for(;e.nextNode();){const i=e.currentNode;i.removeAttribute("style"),["B","STRONG","I","EM","U","SPAN","FONT"].includes(i.tagName)&&t.push(i)}for(const e of t){for(;e.firstChild;)e.parentNode?.insertBefore(e.firstChild,e);e.remove()}this.ensureAtLeastOneParagraph()}this.updateContent(),this.updateToolbarState()}setBtnActive(e,t){const i=this.buttonMap.get(e);if(i)for(const e of i)e.toggleAttribute("data-active",!!t)}updateToolbarState(){if(!this.editorEl)return;const e=document.getSelection();if(!e||0===e.rangeCount)return;const t=e.getRangeAt(0);if(!this.editorEl.contains(t.commonAncestorContainer))return;const i=function(e){for(;e&&!(e instanceof HTMLElement);)e=e.parentNode;return e}(t.startContainer)||this.editorEl,M=getComputedStyle(i),n=xS(t.startContainer,this.editorEl)||this.editorEl,o=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=e.tagName.toLowerCase();if("strong"===t||"b"===t)return!0;const i=getComputedStyle(e).fontWeight;if(parseInt(i,10)>=600)return!0}e=e.parentNode}return!1})(),r=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=e.tagName.toLowerCase();if("em"===t||"i"===t)return!0;if("italic"===getComputedStyle(e).fontStyle)return!0}e=e.parentNode}return!1})(),s=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=getComputedStyle(e).textDecorationLine;if(t&&t.includes("underline"))return!0;if("u"===e.tagName.toLowerCase())return!0}e=e.parentNode}return!1})(),a=!!i.closest("a"),l=n.style.textAlign||getComputedStyle(n).textAlign||"start",N="start"===l?"left":l,g=!!i.closest("li")&&i.closest("ul,ol")?.tagName.toLowerCase()||"";if(this.setBtnActive("bold",o),this.setBtnActive("italic",r),this.setBtnActive("underline",s),this.setBtnActive("link",a),this.setBtnActive("left","left"===N&&!["center","right","justify"].includes(N)),this.setBtnActive("center","center"===N),this.setBtnActive("right","right"===N),this.setBtnActive("justify","justify"===N),this.setBtnActive("ul","ul"===g),this.setBtnActive("ol","ol"===g),this.headingSelect){const e=n.tagName.toLowerCase(),t=["h1","h2","h3"].includes(e)?e:"p";this.headingSelect.value!==t&&(this.headingSelect.value=t)}if(this.fontSelect){const e=(M.fontFamily||"").replace(/["']/g,"").split(",")[0].trim().toLowerCase();if(e)for(const t of Array.from(this.fontSelect.options))if(t.value.toLowerCase()===e){this.fontSelect.value=t.value;break}}if(this.colorInput){const e=mS(M.color);e&&this.colorInput.value.toLowerCase()!==e.toLowerCase()&&(this.colorInput.value=e),this.colorSwatchEl&&(this.colorSwatchEl.style.backgroundColor=this.colorInput.value)}if(this.bgColorInput){const e=getComputedStyle(i).backgroundColor;if(e&&!/transparent|rgba\(\s*0\s*,\s*0\s*,\s*0\s*,\s*0\s*\)/i.test(e)){const t=mS(e);t&&this.bgColorInput.value.toLowerCase()!==t.toLowerCase()&&(this.bgColorInput.value=t)}this.bgSwatchEl&&(this.bgSwatchEl.style.backgroundColor=this.bgColorInput.value)}}syncPreview(){this.updateContent()}updateContent(){if(!this.editorEl)return;this.ensureAtLeastOneParagraph();const e=""===(this.editorEl.textContent??"").trim();this.editorEl.classList.toggle("empty",e);const t=this.editorEl.cloneNode(!0);if(this.noStyles)t.querySelectorAll("[style]").forEach((e=>e.removeAttribute("style")));else{const e=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),i=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT),M=["font-weight","font-style","text-decoration","color","background-color","font-size","font-family","text-align","line-height","letter-spacing","white-space","vertical-align","list-style-position","padding-inline-start"];for(;e.nextNode()&&i.nextNode();){const t=e.currentNode,n=i.currentNode,o=window.getComputedStyle(t),r=M.map((e=>`${e}:${o.getPropertyValue(e)}`)).join(";");r.trim()&&n.setAttribute("style",r)}}this.content=t.innerHTML,this.previewEl&&(this.previewEl.innerHTML=this.content),this.dispatchEvent(new CustomEvent("nile-change",{detail:{content:this.content},bubbles:!0,composed:!0}))}};e([ce({type:String,attribute:!0,reflect:!0})],US.prototype,"value",void 0),e([ce({type:Boolean,attribute:!0,reflect:!0})],US.prototype,"noStyles",void 0),e([ce({type:Boolean,attribute:"singlelineeditor",reflect:!0})],US.prototype,"singleLineEditor",void 0),e([ce({type:String})],US.prototype,"placeholder",void 0),e([ce({attribute:"mentions",reflect:!0,converter:{fromAttribute:e=>{try{const t=JSON.parse(e),i={};for(const e of Object.keys(t)){const M=t[e];Array.isArray(M)&&(i[e]=M.filter((e=>e&&"string"==typeof e.key&&"string"==typeof e.label)).map((e=>({key:e.key,label:e.label}))))}return i}catch{return{}}},toAttribute:e=>JSON.stringify(e)}})],US.prototype,"mentions",void 0),e([De()],US.prototype,"content",void 0),US=e([Ne("nile-rich-text-editor")],US);"undefined"!=typeof window&&(window.nileElementsVersion='"1.3.4-beta-1.4"',window.nileVersion="__NILE_VERSION__",window.process=window.process||{env:{NODE_ENV:"production"}});const YS=r`
14712
+ `,vS={bold:"format_bold",italic:"format_italic",underline:"format_underline",link:"link_2",left:"format_align_left",center:"format_align_middle",right:"format_align_right",justify:"format_align_justify",ul:"format_list_bulleted",ol:"format_list_numbered",clear:"format_clear"};let US=class extends ae{constructor(){super(...arguments),this.value="",this.noStyles=!1,this.singleLineEditor=!1,this.placeholder="",this.mentions={},this.content="",this.previewEl=null,this.toolbarEl=null,this.lastRange=null,this.buttonMap=new Map,this.headingSelect=null,this.fontSelect=null,this.colorInput=null,this.bgColorInput=null,this.colorSwatchEl=null,this.bgSwatchEl=null,this.containerEl=null,this.mentionsEl=null,this.onEditorKeydown=e=>{if(this.singleLineEditor&&"Enter"===e.key&&e.shiftKey)return void e.preventDefault();if(e.ctrlKey&&"i"===e.key.toLowerCase()&&(e.preventDefault(),SS(this.editorEl,"em"),this.updateContent(),this.updateToolbarState()),this.singleLineEditor&&"Enter"===e.key)return void e.preventDefault();if("Tab"!==e.key)return;e.preventDefault(),this.focusAndRestore();const t=window.getSelection();if(!t||0===t.rangeCount)return;const i=t.getRangeAt(0);if(e.shiftKey){if(i.collapsed&&i.startContainer.nodeType===Node.TEXT_NODE){const e=i.startContainer,M=i.startOffset,n=e.data.slice(0,M),o=n.replace(/(\t|[ \u00a0]{2})$/,"");if(o.length!==n.length){e.data=o+e.data.slice(M);const i=document.createRange();i.setStart(e,o.length),i.collapse(!0),t.removeAllRanges(),t.addRange(i),this.updateContent(),this.updateToolbarState()}}return}i.deleteContents();const M=document.createTextNode("\t");i.insertNode(M);const n=document.createRange();n.setStartAfter(M),n.collapse(!0),t.removeAllRanges(),t.addRange(n),this.updateContent(),this.updateToolbarState()},this.onSelectionChange=()=>{if(!this.editorEl)return;const e=document.getSelection();if(!e||0===e.rangeCount)return;const t=e.getRangeAt(0);this.editorEl.contains(t.commonAncestorContainer)&&(this.lastRange=t.cloneRange(),this.updateToolbarState())}}createRenderRoot(){return this}injectCss(e){if(this.querySelector("style[data-rte-style]"))return;const t=document.createElement("style");t.setAttribute("data-rte-style","true"),t.textContent=e,this.insertBefore(t,this.firstChild)}connectedCallback(){super.connectedCallback(),this.injectCss(fS.cssText),this.ensureStructure(),this.placeholder&&this.editorEl&&(this.editorEl.dataset.placeholder=this.placeholder),this.value&&!this.editorEl.innerHTML.trim()&&(this.editorEl.innerHTML=this.value),this.content=this.editorEl.innerHTML,this.toolbarEl&&this.wireAuthoredToolbar(this.toolbarEl),this.mentionsEl=this.querySelector("nile-rte-mentions"),this.mentionsEl&&(this.mentionsEl.attach?.(this.editorEl,this),this.mentionsEl.setExternalConfig?.(this.mentions)),this.wireEditor(),document.addEventListener("selectionchange",this.onSelectionChange,{passive:!0}),this.updateToolbarState(),this.syncPreview()}ensureStructure(){this.toolbarEl=this.querySelector("nile-rte-toolbar"),this.previewEl=this.querySelector("nile-rte-preview"),this.containerEl=this.querySelector(".rte-container"),this.containerEl||(this.containerEl=document.createElement("div"),this.containerEl.className="rte-container",this.appendChild(this.containerEl)),this.ensureEditor(),this.toolbarEl&&this.toolbarEl.parentElement!==this.containerEl&&this.containerEl.appendChild(this.toolbarEl),this.editorEl.parentElement!==this.containerEl&&this.containerEl.appendChild(this.editorEl),this.previewEl&&(this.previewEl.parentElement!==this&&this.appendChild(this.previewEl),this.previewEl.previousElementSibling!==this.containerEl&&this.insertBefore(this.previewEl,this.containerEl.nextSibling))}updateContentWithMention(e){this.updateContent(),this.dispatchEvent(new CustomEvent("nile-change",{detail:{content:this.content,mention:e},bubbles:!0,composed:!0}))}disconnectedCallback(){document.removeEventListener("selectionchange",this.onSelectionChange),this.mentionsEl&&this.mentionsEl.detach&&this.mentionsEl.detach(),super.disconnectedCallback()}updated(e){e.has("value")&&this.editorEl&&this.value!==this.editorEl.innerHTML&&(this.editorEl.innerHTML=this.value||"<p><br></p>",this.content=this.editorEl.innerHTML,this.syncPreview()),e.has("singleLineEditor")&&(this.editorEl&&this.editorEl.classList.toggle("single-line",this.singleLineEditor),this.previewEl&&this.previewEl.classList.toggle("single-line",this.singleLineEditor))}ensureEditor(){if(this.editorEl=this.querySelector(".editor"),!this.editorEl){const e=document.createElement("article");e.className="editor",e.setAttribute("contenteditable","true"),this.editorEl=e}this.placeholder&&(this.editorEl.dataset.placeholder=this.placeholder),this.editorEl.innerHTML.trim()||(this.editorEl.innerHTML="<p><br></p>")}unwrapMention(e,t=!0){const i=e.parentNode;if(!i)return;const M=t?(e.textContent??"").replace(/\u200B/g,""):"",n=document.createTextNode(M);i.insertBefore(n,e),i.removeChild(e);const o=document.createRange();o.setStartAfter(n),o.collapse(!0);const r=window.getSelection();r?.removeAllRanges(),r?.addRange(o)}scrubBrokenMentions(){if(!this.editorEl)return;this.editorEl.querySelectorAll("span.mention").forEach((e=>{const t=e,i=t.getAttribute("data-mention-key"),M=t.getAttribute("data-mention-label"),n=t.getAttribute("data-mention-trigger")||"",o=(t.textContent??"").replace(/\u200B/g,"").trim(),r=!!i&&!!M&&o.length>0&&o.startsWith(n)&&o.includes(M);o&&r||this.unwrapMention(t,!0)}))}wireEditor(){this.editorEl.addEventListener("input",(()=>{this.ensureAtLeastOneParagraph(),this.scrubBrokenMentions(),this.updateContent(),this.updateToolbarState()})),this.editorEl.addEventListener("mouseup",(()=>{this.saveSelection(),this.updateToolbarState()})),this.editorEl.addEventListener("keyup",(e=>{this.saveSelection(),["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(e.key)&&this.updateToolbarState()})),this.editorEl.addEventListener("keydown",this.onEditorKeydown)}wireAuthoredToolbar(e){this.buttonMap.clear(),this.headingSelect=null,this.fontSelect=null,this.colorInput=null,Array.from(e.children).forEach((e=>{const t=e.tagName.toLowerCase();if("nile-rte-select"!==t||"align"!==e.getAttribute("type")){if("nile-rte-link"===t)return e.editorEl=this.editorEl,void e.addEventListener("link-changed",(()=>{this.updateContent(),this.updateToolbarState()}));if("nile-rte-toolbar-item"===t){let t=e.querySelector(":scope > nile-button");const i=e.getAttribute("name")||"",M=e.getAttribute("label")||i,n=e.getAttribute("icon"),o=e.innerHTML.trim().length>0;if(t||(t=document.createElement("nile-button"),t.variant="tertiary",t.size="small"),n)t.innerHTML=`<nile-icon name="${n}" aria-label="${M}"></nile-icon>`,e.innerHTML="";else if(o)t.innerHTML=e.innerHTML,e.innerHTML="";else{const n=vS[i];n?t.innerHTML=`<nile-icon name="${n}" size="20" color="black" aria-label="${M}"></nile-icon>`:t.textContent=M||i,e.innerHTML=""}if(!t.isConnected){const i=document.createElement("nile-tooltip");i.setAttribute("content",M),i.appendChild(t),e.appendChild(i)}t.setAttribute("aria-label",M),t.addEventListener("mousedown",(e=>e.preventDefault())),t.addEventListener("click",(()=>this.onToolbarCommand(i)));const r=this.buttonMap.get(i)??[];return r.push(t),void this.buttonMap.set(i,r)}if("nile-rte-select"!==t)"nile-rte-color"!==t||e.addEventListener("change",(e=>{this.focusAndRestore();const{mode:t,value:i}=e.detail;"backColor"===t?QS(this.editorEl,"backgroundColor",i,"data-rte-bg"):function(e,t){QS(e,"color",t,"data-rte-color")}(this.editorEl,i),this.updateContent(),this.updateToolbarState()}));else{const t=e.getAttribute("type")||"";e.addEventListener("change",(e=>{this.focusAndRestore();const i=e.detail;"heading"===t?function(e,t){const i=document.getSelection();if(!i||0===i.rangeCount)return;const M=xS(i.getRangeAt(0).startContainer,e);if(!M)return;if(M.tagName.toLowerCase()===t)return;const n=document.createElement(t);for(;M.firstChild;)n.appendChild(M.firstChild);M.replaceWith(n);const o=document.createRange();o.selectNodeContents(n),o.collapse(!0),i.removeAllRanges(),i.addRange(o)}(this.editorEl,i):"font"===t&&ES(this.editorEl,i),this.updateContent(),this.updateToolbarState()}))}}else e.addEventListener("change",(e=>{this.focusAndRestore();const t=e.detail;LS(this.editorEl,t),this.updateContent(),this.updateToolbarState()}))}))}saveSelection(){const e=window.getSelection();e&&e.rangeCount&&(this.lastRange=e.getRangeAt(0).cloneRange())}restoreSelection(){if(!this.lastRange)return;const e=document.getSelection();e&&(e.removeAllRanges(),e.addRange(this.lastRange))}focusAndRestore(){this.editorEl?.focus(),this.restoreSelection()}getCleanContent(){const e=this.editorEl.cloneNode(!0);return e.querySelectorAll("*").forEach((e=>{e.removeAttribute("style")})),e.innerHTML}insertList(e){if(this.restoreSelection(),!this.lastRange)return;const t=document.createElement(e),i=this.lastRange.extractContents(),M=document.createElement("div");M.appendChild(i),Array.from(M.childNodes).forEach((e=>{if(e.nodeType===Node.TEXT_NODE&&!e.textContent?.trim())return;const i=document.createElement("li");i.appendChild(e),t.appendChild(i)})),this.lastRange.insertNode(t),this.afterListEdit(t)}afterListEdit(e){const t=document.createRange();t.setStartAfter(e),t.collapse(!0);const i=window.getSelection();i?.removeAllRanges(),i?.addRange(t),this.saveSelection(),this.updateContent(),this.updateToolbarState()}ensureAtLeastOneParagraph(){const e=this.editorEl;if(!e)return;const t=""===(e.textContent??"").replace(/\u200B/g,"").trim();if(0===e.childNodes.length||t)return void(e.innerHTML="<p><br></p>");if(!e.querySelector("p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre")){const t=document.createElement("p");for(;e.firstChild;)t.appendChild(e.firstChild);return t.hasChildNodes()||t.appendChild(document.createElement("br")),void e.appendChild(t)}e.querySelectorAll("p").forEach((e=>{""===(e.textContent??"").replace(/\u200B/g,"")&&(e.innerHTML.toLowerCase().includes("<br")||(e.innerHTML="<br>"))}))}onToolbarCommand(e){switch(this.focusAndRestore(),e){case"bold":SS(this.editorEl,"strong");break;case"italic":SS(this.editorEl,"em");break;case"underline":SS(this.editorEl,"u");break;case"left":LS(this.editorEl,"left");break;case"center":LS(this.editorEl,"center");break;case"right":LS(this.editorEl,"right");break;case"justify":LS(this.editorEl,"justify");break;case"ul":bS(this.editorEl,"ul"),this.updateContent(),this.updateToolbarState();break;case"ol":bS(this.editorEl,"ol"),this.updateContent(),this.updateToolbarState();break;case"link":break;case"clear":const e=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),t=[];for(;e.nextNode();){const i=e.currentNode;i.removeAttribute("style"),["B","STRONG","I","EM","U","SPAN","FONT"].includes(i.tagName)&&t.push(i)}for(const e of t){for(;e.firstChild;)e.parentNode?.insertBefore(e.firstChild,e);e.remove()}this.ensureAtLeastOneParagraph()}this.updateContent(),this.updateToolbarState()}setBtnActive(e,t){const i=this.buttonMap.get(e);if(i)for(const e of i)e.toggleAttribute("data-active",!!t)}updateToolbarState(){if(!this.editorEl)return;const e=document.getSelection();if(!e||0===e.rangeCount)return;const t=e.getRangeAt(0);if(!this.editorEl.contains(t.commonAncestorContainer))return;const i=function(e){for(;e&&!(e instanceof HTMLElement);)e=e.parentNode;return e}(t.startContainer)||this.editorEl,M=getComputedStyle(i),n=xS(t.startContainer,this.editorEl)||this.editorEl,o=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=e.tagName.toLowerCase();if("strong"===t||"b"===t)return!0;const i=getComputedStyle(e).fontWeight;if(parseInt(i,10)>=600)return!0}e=e.parentNode}return!1})(),r=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=e.tagName.toLowerCase();if("em"===t||"i"===t)return!0;if("italic"===getComputedStyle(e).fontStyle)return!0}e=e.parentNode}return!1})(),s=(()=>{let e=i;for(;e&&e!==this.editorEl;){if(e instanceof HTMLElement){const t=getComputedStyle(e).textDecorationLine;if(t&&t.includes("underline"))return!0;if("u"===e.tagName.toLowerCase())return!0}e=e.parentNode}return!1})(),a=!!i.closest("a"),l=n.style.textAlign||getComputedStyle(n).textAlign||"start",N="start"===l?"left":l,g=!!i.closest("li")&&i.closest("ul,ol")?.tagName.toLowerCase()||"";if(this.setBtnActive("bold",o),this.setBtnActive("italic",r),this.setBtnActive("underline",s),this.setBtnActive("link",a),this.setBtnActive("left","left"===N&&!["center","right","justify"].includes(N)),this.setBtnActive("center","center"===N),this.setBtnActive("right","right"===N),this.setBtnActive("justify","justify"===N),this.setBtnActive("ul","ul"===g),this.setBtnActive("ol","ol"===g),this.headingSelect){const e=n.tagName.toLowerCase(),t=["h1","h2","h3"].includes(e)?e:"p";this.headingSelect.value!==t&&(this.headingSelect.value=t)}if(this.fontSelect){const e=(M.fontFamily||"").replace(/["']/g,"").split(",")[0].trim().toLowerCase();if(e)for(const t of Array.from(this.fontSelect.options))if(t.value.toLowerCase()===e){this.fontSelect.value=t.value;break}}if(this.colorInput){const e=mS(M.color);e&&this.colorInput.value.toLowerCase()!==e.toLowerCase()&&(this.colorInput.value=e),this.colorSwatchEl&&(this.colorSwatchEl.style.backgroundColor=this.colorInput.value)}if(this.bgColorInput){const e=getComputedStyle(i).backgroundColor;if(e&&!/transparent|rgba\(\s*0\s*,\s*0\s*,\s*0\s*,\s*0\s*\)/i.test(e)){const t=mS(e);t&&this.bgColorInput.value.toLowerCase()!==t.toLowerCase()&&(this.bgColorInput.value=t)}this.bgSwatchEl&&(this.bgSwatchEl.style.backgroundColor=this.bgColorInput.value)}}syncPreview(){this.updateContent()}updateContent(){if(!this.editorEl)return;this.ensureAtLeastOneParagraph();const e=""===(this.editorEl.textContent??"").trim();this.editorEl.classList.toggle("empty",e);const t=this.editorEl.cloneNode(!0);if(this.noStyles)t.querySelectorAll("[style]").forEach((e=>e.removeAttribute("style")));else{const e=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),i=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT),M=["font-weight","font-style","text-decoration","color","background-color","font-size","font-family","text-align","line-height","letter-spacing","white-space","vertical-align","list-style-position","padding-inline-start"];for(;e.nextNode()&&i.nextNode();){const t=e.currentNode,n=i.currentNode,o=window.getComputedStyle(t),r=M.map((e=>`${e}:${o.getPropertyValue(e)}`)).join(";");r.trim()&&n.setAttribute("style",r)}}this.content=t.innerHTML,this.previewEl&&(this.previewEl.innerHTML=this.content),this.dispatchEvent(new CustomEvent("nile-change",{detail:{content:this.content},bubbles:!0,composed:!0}))}};e([ce({type:String,attribute:!0,reflect:!0})],US.prototype,"value",void 0),e([ce({type:Boolean,attribute:!0,reflect:!0})],US.prototype,"noStyles",void 0),e([ce({type:Boolean,attribute:"singlelineeditor",reflect:!0})],US.prototype,"singleLineEditor",void 0),e([ce({type:String})],US.prototype,"placeholder",void 0),e([ce({attribute:"mentions",reflect:!0,converter:{fromAttribute:e=>{try{const t=JSON.parse(e),i={};for(const e of Object.keys(t)){const M=t[e];Array.isArray(M)&&(i[e]=M.filter((e=>e&&"string"==typeof e.key&&"string"==typeof e.label)).map((e=>({key:e.key,label:e.label}))))}return i}catch{return{}}},toAttribute:e=>JSON.stringify(e)}})],US.prototype,"mentions",void 0),e([De()],US.prototype,"content",void 0),US=e([Ne("nile-rich-text-editor")],US);"undefined"!=typeof window&&(window.nileElementsVersion='"1.3.4-beta-1.5"',window.nileVersion="__NILE_VERSION__",window.process=window.process||{env:{NODE_ENV:"production"}});const YS=r`
14713
14713
  :host {
14714
14714
  --sidebar-width: 240px;
14715
14715
  --sidebar-collapsed-width: 70px;
@@ -1,2 +1,2 @@
1
- System.register([],function(_export,_context){"use strict";function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function n(n,r){if(!n)return null;var u=r.match(/[^A-Z]/i);if(!u)return null;var t=u[0];if(!n.includes(t))return null;var l=n.split(t),e=r.split(t);var i=null,f=null,Y=null;for(var _n=0;_n<e.length;_n++){var _r=e[_n],_u=l[_n];if(!_u)return null;if("DD"===_r){if(2!==_u.length)return null;i=Number(_u);}if("MM"===_r){if(2!==_u.length)return null;f=Number(_u)-1;}if("YYYY"===_r){if(4!==_u.length)return null;Y=Number(_u);}}if(null==i||null==f||null==Y)return null;var s=new Date(Y,f,i);return s.getFullYear()!==Y||s.getMonth()!==f||s.getDate()!==i?null:s;}function r(n,r){if(!n)return"";var u=String(n.getDate()).padStart(2,"0"),t=String(n.getMonth()+1).padStart(2,"0"),l=n.getFullYear();switch(r){case"DD/MM/YYYY":default:return"".concat(u,"/").concat(t,"/").concat(l);case"MM/DD/YYYY":return"".concat(t,"/").concat(u,"/").concat(l);case"YYYY/MM/DD":return"".concat(l,"/").concat(t,"/").concat(u);case"YYYY.MM.DD":return"".concat(l,".").concat(t,".").concat(u);case"DD.MM.YYYY":return"".concat(u,".").concat(t,".").concat(l);}}function u(r,u,t){if(!t)return{first:n(r,u),second:null};if(!r.includes(" - "))return{first:n(r,u),second:null};var _r$split=r.split(" - "),_r$split2=_slicedToArray(_r$split,2),l=_r$split2[0],e=_r$split2[1],i=n(l,u);var f=null;return e&&e.length>=10&&(f=n(e,u)),{first:i,second:f};}function t(n,r){return n&&r&&n.getTime()>r.getTime()?[r,n]:[n,r];}_export({f:r,n:t,p:u});return{setters:[],execute:function execute(){}};});
1
+ System.register([],function(_export,_context){"use strict";function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function n(n,r){if(!n)return null;var u=r.match(/[^A-Z]/i);if(!u)return null;var t=u[0];if(!n.includes(t))return null;var l=n.split(t),e=r.split(t);var i=null,f=null,Y=null;for(var _n=0;_n<e.length;_n++){var _r=e[_n],_u=l[_n];if(!_u)return null;if("DD"===_r){if(2!==_u.length)return null;i=Number(_u);}if("MM"===_r){if(2!==_u.length)return null;f=Number(_u)-1;}if("YYYY"===_r){if(4!==_u.length)return null;Y=Number(_u);}}if(null==i||null==f||null==Y)return null;var s=new Date(Y,f,i);return s.getFullYear()!==Y||s.getMonth()!==f||s.getDate()!==i?null:s;}function r(n,r){if(!n)return"";var u=String(n.getDate()).padStart(2,"0"),t=String(n.getMonth()+1).padStart(2,"0"),l=n.getFullYear();switch(r){case"DD/MM/YYYY":default:return"".concat(u,"/").concat(t,"/").concat(l);case"MM/DD/YYYY":return"".concat(t,"/").concat(u,"/").concat(l);case"YYYY/MM/DD":return"".concat(l,"/").concat(t,"/").concat(u);case"YYYY.MM.DD":return"".concat(l,".").concat(t,".").concat(u);case"DD.MM.YYYY":return"".concat(u,".").concat(t,".").concat(l);}}function u(r,u,t,l){if(!t)return{first:n(r,u),second:null};if(!r.includes(l))return{first:n(r,u),second:null};var _r$split=r.split(l),_r$split2=_slicedToArray(_r$split,2),e=_r$split2[0],i=_r$split2[1];return{first:n(e,u),second:i?n(i,u):null};}function t(n,r){return n&&r&&n.getTime()>r.getTime()?[r,n]:[n,r];}_export({f:r,n:t,p:u});return{setters:[],execute:function execute(){}};});
2
2
  //# sourceMappingURL=nile-date-picker-utils.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-date-picker-utils.cjs.js","sources":["../../../src/nile-date-picker/nile-date-picker-utils.ts"],"sourcesContent":["export function parseDateFromFormat(str: string, format: string): Date | null {\n if (!str) return null;\n \n const sepMatch = format.match(/[^A-Z]/i);\n if (!sepMatch) return null;\n const sep = sepMatch[0];\n \n if (!str.includes(sep)) return null;\n \n const parts = str.split(sep);\n const fmtParts = format.split(sep);\n \n let day: number | null = null;\n let month: number | null = null;\n let year: number | null = null;\n \n for (let i = 0; i < fmtParts.length; i++) {\n const f = fmtParts[i];\n const v = parts[i];\n if (!v) return null;\n \n if (f === \"DD\") {\n if (v.length !== 2) return null;\n day = Number(v);\n }\n \n if (f === \"MM\") {\n if (v.length !== 2) return null;\n month = Number(v) - 1;\n }\n \n if (f === \"YYYY\") {\n if (v.length !== 4) return null;\n year = Number(v);\n }\n }\n \n if (day == null || month == null || year == null) return null;\n \n const d = new Date(year, month, day);\n if (\n d.getFullYear() !== year ||\n d.getMonth() !== month ||\n d.getDate() !== day\n ) return null;\n \n return d;\n }\n\n export function formatDateToFormat(date: Date, format: string): string {\n if (!date) return \"\";\n \n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n \n switch (format) {\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n default:\n return `${day}/${month}/${year}`;\n }\n }\n\n export function parseRangeFromFormat(\n input: string,\n format: string,\n isRange: boolean\n ) {\n if (!isRange) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const RANGE_SEP = \" - \";\n \n if (!input.includes(RANGE_SEP)) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const [firstRaw, secondRaw] = input.split(RANGE_SEP);\n \n const first = parseDateFromFormat(firstRaw, format);\n let second = null;\n \n if (secondRaw && secondRaw.length >= 10) {\n second = parseDateFromFormat(secondRaw, format);\n }\n \n return { first, second };\n }\n \n export function normalizeDateRange(\n first: Date | null,\n second: Date | null\n ): [Date | null, Date | null] {\n if (first && second && first.getTime() > second.getTime()) {\n return [second, first];\n }\n return [first, second];\n }\n "],"names":["parseDateFromFormat","str","format","sepMatch","match","sep","includes","parts","split","fmtParts","day","month","year","i","length","f","v","Number","d","Date","getFullYear","getMonth","getDate","formatDateToFormat","date","String","padStart","concat","parseRangeFromFormat","input","isRange","first","second","_r$split","firstRaw","secondRaw","normalizeDateRange","getTime","_export"],"mappings":"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"}
1
+ {"version":3,"file":"nile-date-picker-utils.cjs.js","sources":["../../../src/nile-date-picker/nile-date-picker-utils.ts"],"sourcesContent":["export function parseDateFromFormat(str: string, format: string): Date | null {\n if (!str) return null;\n \n const sepMatch = format.match(/[^A-Z]/i);\n if (!sepMatch) return null;\n const sep = sepMatch[0];\n \n if (!str.includes(sep)) return null;\n \n const parts = str.split(sep);\n const fmtParts = format.split(sep);\n \n let day: number | null = null;\n let month: number | null = null;\n let year: number | null = null;\n \n for (let i = 0; i < fmtParts.length; i++) {\n const f = fmtParts[i];\n const v = parts[i];\n if (!v) return null;\n \n if (f === \"DD\") {\n if (v.length !== 2) return null;\n day = Number(v);\n }\n \n if (f === \"MM\") {\n if (v.length !== 2) return null;\n month = Number(v) - 1;\n }\n \n if (f === \"YYYY\") {\n if (v.length !== 4) return null;\n year = Number(v);\n }\n }\n \n if (day == null || month == null || year == null) return null;\n \n const d = new Date(year, month, day);\n if (\n d.getFullYear() !== year ||\n d.getMonth() !== month ||\n d.getDate() !== day\n ) return null;\n \n return d;\n }\n\n export function formatDateToFormat(date: Date, format: string): string {\n if (!date) return \"\";\n \n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n \n switch (format) {\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n default:\n return `${day}/${month}/${year}`;\n }\n }\n\n export function parseRangeFromFormat(\n input: string,\n format: string,\n isRange: boolean,\n separator: string\n ) {\n if (!isRange) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n if (!input.includes(separator)) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const [firstRaw, secondRaw] = input.split(separator);\n \n const first = parseDateFromFormat(firstRaw, format);\n const second = secondRaw ? parseDateFromFormat(secondRaw, format) : null;\n \n return { first, second };\n }\n \n \n export function normalizeDateRange(\n first: Date | null,\n second: Date | null\n ): [Date | null, Date | null] {\n if (first && second && first.getTime() > second.getTime()) {\n return [second, first];\n }\n return [first, second];\n }\n "],"names":["parseDateFromFormat","str","format","sepMatch","match","sep","includes","parts","split","fmtParts","day","month","year","i","length","f","v","Number","d","Date","getFullYear","getMonth","getDate","formatDateToFormat","date","String","padStart","concat","parseRangeFromFormat","input","isRange","separator","first","second","_r$split","firstRaw","secondRaw","normalizeDateRange","getTime","_export"],"mappings":"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"}
@@ -1 +1 @@
1
- function n(n,r){if(!n)return null;const u=r.match(/[^A-Z]/i);if(!u)return null;const t=u[0];if(!n.includes(t))return null;const l=n.split(t),e=r.split(t);let i=null,f=null,Y=null;for(let n=0;n<e.length;n++){const r=e[n],u=l[n];if(!u)return null;if("DD"===r){if(2!==u.length)return null;i=Number(u)}if("MM"===r){if(2!==u.length)return null;f=Number(u)-1}if("YYYY"===r){if(4!==u.length)return null;Y=Number(u)}}if(null==i||null==f||null==Y)return null;const s=new Date(Y,f,i);return s.getFullYear()!==Y||s.getMonth()!==f||s.getDate()!==i?null:s}function r(n,r){if(!n)return"";const u=String(n.getDate()).padStart(2,"0"),t=String(n.getMonth()+1).padStart(2,"0"),l=n.getFullYear();switch(r){case"DD/MM/YYYY":default:return`${u}/${t}/${l}`;case"MM/DD/YYYY":return`${t}/${u}/${l}`;case"YYYY/MM/DD":return`${l}/${t}/${u}`;case"YYYY.MM.DD":return`${l}.${t}.${u}`;case"DD.MM.YYYY":return`${u}.${t}.${l}`}}function u(r,u,t){if(!t)return{first:n(r,u),second:null};if(!r.includes(" - "))return{first:n(r,u),second:null};const[l,e]=r.split(" - "),i=n(l,u);let f=null;return e&&e.length>=10&&(f=n(e,u)),{first:i,second:f}}function t(n,r){return n&&r&&n.getTime()>r.getTime()?[r,n]:[n,r]}export{r as f,t as n,u as p};
1
+ function n(n,r){if(!n)return null;const u=r.match(/[^A-Z]/i);if(!u)return null;const t=u[0];if(!n.includes(t))return null;const l=n.split(t),e=r.split(t);let i=null,f=null,Y=null;for(let n=0;n<e.length;n++){const r=e[n],u=l[n];if(!u)return null;if("DD"===r){if(2!==u.length)return null;i=Number(u)}if("MM"===r){if(2!==u.length)return null;f=Number(u)-1}if("YYYY"===r){if(4!==u.length)return null;Y=Number(u)}}if(null==i||null==f||null==Y)return null;const s=new Date(Y,f,i);return s.getFullYear()!==Y||s.getMonth()!==f||s.getDate()!==i?null:s}function r(n,r){if(!n)return"";const u=String(n.getDate()).padStart(2,"0"),t=String(n.getMonth()+1).padStart(2,"0"),l=n.getFullYear();switch(r){case"DD/MM/YYYY":default:return`${u}/${t}/${l}`;case"MM/DD/YYYY":return`${t}/${u}/${l}`;case"YYYY/MM/DD":return`${l}/${t}/${u}`;case"YYYY.MM.DD":return`${l}.${t}.${u}`;case"DD.MM.YYYY":return`${u}.${t}.${l}`}}function u(r,u,t,l){if(!t)return{first:n(r,u),second:null};if(!r.includes(l))return{first:n(r,u),second:null};const[e,i]=r.split(l);return{first:n(e,u),second:i?n(i,u):null}}function t(n,r){return n&&r&&n.getTime()>r.getTime()?[r,n]:[n,r]}export{r as f,t as n,u as p};
@@ -1,2 +1,2 @@
1
- function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register(["tslib","lit","lit/decorators.js","./nile-date-picker.css.cjs.js","../internal/nile-element.cjs.js","./nile-date-picker-utils.cjs.js"],function(_export,_context){"use strict";var e,t,i,s,n,l,a,o,r,h,_templateObject,d;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _superPropGet(t,o,e,r){var p=_get(_getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t);}:p;}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=_superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value;}},_get.apply(null,arguments);}function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=_getPrototypeOf(t)););return t;}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}return{setters:[function(_tslib){e=_tslib.__decorate;},function(_lit){t=_lit.html;},function(_litDecoratorsJs){i=_litDecoratorsJs.property;s=_litDecoratorsJs.query;n=_litDecoratorsJs.customElement;},function(_nileDatePickerCssCjsJs){l=_nileDatePickerCssCjsJs.s;},function(_internalNileElementCjsJs){a=_internalNileElementCjsJs.N;},function(_nileDatePickerUtilsCjsJs){o=_nileDatePickerUtilsCjsJs.p;r=_nileDatePickerUtilsCjsJs.n;h=_nileDatePickerUtilsCjsJs.f;}],execute:function execute(){_export("N",d=/*#__PURE__*/function(_a){function d(){var _this;_classCallCheck(this,d);_this=_callSuper(this,d,arguments),_this.range=!1,_this.hideTypes=!1,_this.doubleClickUnselect=!1,_this.allowClear=!1,_this.open=!1,_this.hideTimeZone=!1,_this.type="absolute",_this.showManualInputs=!1,_this.hideDurationFields=[],_this.allowedDates="{}",_this.syncDatePicker=!1,_this.dateFormat="DD/MM/YYYY";return _this;}_inherits(d,_a);return _createClass(d,[{key:"firstUpdated",value:function firstUpdated(){var _superPropGet2,_this2=this;if((_superPropGet2=_superPropGet(d,"firstUpdated",this,3))!==null&&_superPropGet2!==void 0&&_superPropGet2([new Map()]),!this.syncDatePicker)return;var e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",function(e){var t=e.detail.value,_o=o(t,_this2.dateFormat,_this2.range),i=_o.first,s=_o.second;if(_this2.range){if(i&&!s&&(_this2.jumpTo(i),_this2.syncRangeCalendar(i,null)),i&&s){var _r=r(i,s),_r2=_slicedToArray(_r,2),_e=_r2[0],_t=_r2[1];_t&&_this2.jumpTo(_t),_this2.syncRangeCalendar(_e,_t);}}else i&&_this2.jumpTo(i);});}},{key:"jumpTo",value:function jumpTo(e){this.open=!0;var t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString());}},{key:"syncRangeCalendar",value:function syncRangeCalendar(e,t){var i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t));}},{key:"render",value:function render(){var _this3=this;return t(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n <nile-dropdown .open=\"","\" part=\"dd-base\" .hoist=\"","\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"","\"\n .type=\"","\"\n value=\"","\"\n .range=\"","\"\n\n @nile-init=\"","\"\n @nile-destroy=\"","\"\n @nile-changed=\"","\"\n\n @nile-change=\"","\"\n\n .allowedDates=\"","\"\n\n @nile-type-change=\"","\"\n @nile-clear=\"","\"\n\n .hideDurationFields=\"","\"\n .showManualInputs=\"","\"\n .doubleClickUnselect=\"","\"\n .allowClear=\"","\"\n ></nile-calendar>\n </nile-dropdown>\n "])),this.open,!0,this.hideTypes,this.type,this.value,this.range,function(e){return e.stopPropagation();},function(e){return e.stopPropagation();},function(e){return e.stopPropagation();},this.handleChanged,this.allowedDates,function(e){e.stopPropagation(),_this3.emit("nile-type-change",e.detail);},function(e){e.stopPropagation(),_this3.emit("nile-clear");},this.hideDurationFields,this.showManualInputs,this.doubleClickUnselect,this.allowClear);}},{key:"handleChanged",value:function handleChanged(e){var _this$dropdown2;e.stopPropagation();var t=e.detail,i=this.querySelector("nile-input");if(!this.range){var _this$dropdown;var _e2=t.value;return _e2&&i&&(i.value=h(new Date(_e2),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void((_this$dropdown=this.dropdown)===null||_this$dropdown===void 0?void 0:_this$dropdown.hide());}var s=t.startDate,n=t.endDate;if(i){var _e3="";s&&(_e3+=h(new Date(s),this.dateFormat)),s&&n&&(_e3+=" - "+h(new Date(n),this.dateFormat)),i.value=_e3,i.emit("nile-input",{value:_e3});}this.emit("nile-changed",t),this.emit("nile-change",t),(_this$dropdown2=this.dropdown)===null||_this$dropdown2===void 0?void 0:_this$dropdown2.hide();}},{key:"connectedCallback",value:function connectedCallback(){_superPropGet(d,"connectedCallback",this,3)([]),this.emit("nile-init");}},{key:"disconnectedCallback",value:function disconnectedCallback(){_superPropGet(d,"disconnectedCallback",this,3)([]),this.emit("nile-destroy");}}],[{key:"styles",get:function get(){return[l];}}]);}(a));e([i({type:Boolean})],d.prototype,"range",void 0),e([i({type:Boolean})],d.prototype,"hideTypes",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"doubleClickUnselect",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"allowClear",void 0),e([i({type:Boolean})],d.prototype,"open",void 0),e([i({type:Boolean,attribute:"hide-time-zone"})],d.prototype,"hideTimeZone",void 0),e([i({type:String,reflect:!0})],d.prototype,"type",void 0),e([i({type:Boolean,attribute:"showManualInputs"})],d.prototype,"showManualInputs",void 0),e([i()],d.prototype,"value",void 0),e([i({type:Array,attribute:"hide-duration-fields"})],d.prototype,"hideDurationFields",void 0),e([i({attribute:"allowedDates"})],d.prototype,"allowedDates",void 0),e([i({type:Boolean,attribute:!0,reflect:!0})],d.prototype,"syncDatePicker",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"dateFormat",void 0),e([s("nile-dropdown")],d.prototype,"dropdown",void 0),_export("N",d=e([n("nile-date-picker")],d));}};});
1
+ function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register(["tslib","lit","lit/decorators.js","./nile-date-picker.css.cjs.js","../internal/nile-element.cjs.js","./nile-date-picker-utils.cjs.js"],function(_export,_context){"use strict";var e,t,i,s,n,l,a,o,r,h,_templateObject,d;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _superPropGet(t,o,e,r){var p=_get(_getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t);}:p;}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=_superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value;}},_get.apply(null,arguments);}function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=_getPrototypeOf(t)););return t;}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}return{setters:[function(_tslib){e=_tslib.__decorate;},function(_lit){t=_lit.html;},function(_litDecoratorsJs){i=_litDecoratorsJs.property;s=_litDecoratorsJs.query;n=_litDecoratorsJs.customElement;},function(_nileDatePickerCssCjsJs){l=_nileDatePickerCssCjsJs.s;},function(_internalNileElementCjsJs){a=_internalNileElementCjsJs.N;},function(_nileDatePickerUtilsCjsJs){o=_nileDatePickerUtilsCjsJs.p;r=_nileDatePickerUtilsCjsJs.n;h=_nileDatePickerUtilsCjsJs.f;}],execute:function execute(){_export("N",d=/*#__PURE__*/function(_a){function d(){var _this;_classCallCheck(this,d);_this=_callSuper(this,d,arguments),_this.range=!1,_this.hideTypes=!1,_this.doubleClickUnselect=!1,_this.allowClear=!1,_this.open=!1,_this.hideTimeZone=!1,_this.type="absolute",_this.showManualInputs=!1,_this.hideDurationFields=[],_this.allowedDates="{}",_this.syncDatePicker=!1,_this.dateFormat="DD/MM/YYYY",_this.rangeSeparator=" - ";return _this;}_inherits(d,_a);return _createClass(d,[{key:"firstUpdated",value:function firstUpdated(){var _superPropGet2,_this2=this;if((_superPropGet2=_superPropGet(d,"firstUpdated",this,3))!==null&&_superPropGet2!==void 0&&_superPropGet2([new Map()]),!this.syncDatePicker)return;var e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",function(e){var t=e.detail.value,_o=o(t,_this2.dateFormat,_this2.range,_this2.rangeSeparator),i=_o.first,s=_o.second;if(_this2.range){if(i&&!s&&(_this2.jumpTo(i),_this2.syncRangeCalendar(i,null)),i&&s){var _r=r(i,s),_r2=_slicedToArray(_r,2),_e=_r2[0],_t=_r2[1];_t&&_this2.jumpTo(_t),_this2.syncRangeCalendar(_e,_t);}}else i&&_this2.jumpTo(i);});}},{key:"jumpTo",value:function jumpTo(e){this.open=!0;var t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString());}},{key:"syncRangeCalendar",value:function syncRangeCalendar(e,t){var i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t));}},{key:"render",value:function render(){var _this3=this;return t(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n <nile-dropdown .open=\"","\" part=\"dd-base\" .hoist=\"","\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"","\"\n .type=\"","\"\n value=\"","\"\n .range=\"","\"\n\n @nile-init=\"","\"\n @nile-destroy=\"","\"\n @nile-changed=\"","\"\n\n @nile-change=\"","\"\n\n .allowedDates=\"","\"\n\n @nile-type-change=\"","\"\n @nile-clear=\"","\"\n\n .hideDurationFields=\"","\"\n .showManualInputs=\"","\"\n .doubleClickUnselect=\"","\"\n .allowClear=\"","\"\n ></nile-calendar>\n </nile-dropdown>\n "])),this.open,!0,this.hideTypes,this.type,this.value,this.range,function(e){return e.stopPropagation();},function(e){return e.stopPropagation();},function(e){return e.stopPropagation();},this.handleChanged,this.allowedDates,function(e){e.stopPropagation(),_this3.emit("nile-type-change",e.detail);},function(e){e.stopPropagation(),_this3.emit("nile-clear");},this.hideDurationFields,this.showManualInputs,this.doubleClickUnselect,this.allowClear);}},{key:"handleChanged",value:function handleChanged(e){var _this$dropdown2;e.stopPropagation();var t=e.detail,i=this.querySelector("nile-input");if(!this.range){var _this$dropdown;var _e2=t.value;return _e2&&i&&(i.value=h(new Date(_e2),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void((_this$dropdown=this.dropdown)===null||_this$dropdown===void 0?void 0:_this$dropdown.hide());}var s=t.startDate,n=t.endDate;if(i){var _e3="";s&&(_e3+=h(new Date(s),this.dateFormat)),s&&n&&(_e3+=" - "+h(new Date(n),this.dateFormat)),i.value=_e3,i.emit("nile-input",{value:_e3});}this.emit("nile-changed",t),this.emit("nile-change",t),(_this$dropdown2=this.dropdown)===null||_this$dropdown2===void 0?void 0:_this$dropdown2.hide();}},{key:"connectedCallback",value:function connectedCallback(){_superPropGet(d,"connectedCallback",this,3)([]),this.emit("nile-init");}},{key:"disconnectedCallback",value:function disconnectedCallback(){_superPropGet(d,"disconnectedCallback",this,3)([]),this.emit("nile-destroy");}}],[{key:"styles",get:function get(){return[l];}}]);}(a));e([i({type:Boolean})],d.prototype,"range",void 0),e([i({type:Boolean})],d.prototype,"hideTypes",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"doubleClickUnselect",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"allowClear",void 0),e([i({type:Boolean})],d.prototype,"open",void 0),e([i({type:Boolean,attribute:"hide-time-zone"})],d.prototype,"hideTimeZone",void 0),e([i({type:String,reflect:!0})],d.prototype,"type",void 0),e([i({type:Boolean,attribute:"showManualInputs"})],d.prototype,"showManualInputs",void 0),e([i()],d.prototype,"value",void 0),e([i({type:Array,attribute:"hide-duration-fields"})],d.prototype,"hideDurationFields",void 0),e([i({attribute:"allowedDates"})],d.prototype,"allowedDates",void 0),e([i({type:Boolean,attribute:!0,reflect:!0})],d.prototype,"syncDatePicker",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"dateFormat",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"rangeSeparator",void 0),e([s("nile-dropdown")],d.prototype,"dropdown",void 0),_export("N",d=e([n("nile-date-picker")],d));}};});
2
2
  //# sourceMappingURL=nile-date-picker.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-date-picker.cjs.js","sources":["../../../src/nile-date-picker/nile-date-picker.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-date-picker.css';\nimport NileElement from '../internal/nile-element';\nimport { NileDropdown } from '../nile-dropdown';\n\nimport {\n parseDateFromFormat,\n formatDateToFormat,\n parseRangeFromFormat,\n normalizeDateRange\n} from './nile-date-picker-utils';\n\n\n@customElement('nile-date-picker')\nexport class NileDatePicker extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: Boolean }) range = false;\n @property({ type: Boolean }) hideTypes = false;\n @property({ type: Boolean, reflect: true }) doubleClickUnselect = false;\n @property({ type: Boolean, reflect: true }) allowClear = false;\n @property({ type: Boolean }) open = false;\n @property({ type: Boolean, attribute: 'hide-time-zone' }) hideTimeZone = false;\n @property({ type: String, reflect: true }) type: 'absolute' | 'relative' = 'absolute';\n @property({ type: Boolean, attribute: 'showManualInputs' }) showManualInputs = false;\n\n @property() value: any;\n @property({ type: Array, attribute: 'hide-duration-fields' }) hideDurationFields: any = [];\n @property({ attribute: 'allowedDates' }) allowedDates: any = '{}';\n\n @property({ type: Boolean, attribute: true, reflect: true }) syncDatePicker = false;\n @property({ type: String, attribute: true, reflect: true }) dateFormat = \"DD/MM/YYYY\";\n\n @query('nile-dropdown') dropdown: NileDropdown;\n\n firstUpdated() {\n super.firstUpdated?.(new Map());\n\n if (!this.syncDatePicker) return;\n\n const input = this.querySelector(\"nile-input\");\n if (!input) return;\n\n input.addEventListener(\"nile-input\", (e: any) => {\n const text = e.detail.value;\n const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range);\n\n if (!this.range) {\n if (first) this.jumpTo(first);\n return;\n }\n\n if (first && !second) {\n this.jumpTo(first);\n this.syncRangeCalendar(first, null);\n }\n\n if (first && second) {\n const [start, end] = normalizeDateRange(first, second);\n if (end) this.jumpTo(end);\n this.syncRangeCalendar(start, end);\n }\n });\n }\n\n private jumpTo(date: Date) {\n this.open = true;\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n cal.currentYear = date.getFullYear();\n cal.currentMonth = date.getMonth();\n cal.value = date;\n cal.valueAttribute = date.toISOString();\n }\n\n\n private syncRangeCalendar(first: Date | null, second: Date | null) {\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n if (!this.range) return;\n\n if (first) cal.startDate = first;\n if (second) cal.endDate = second;\n }\n\n render(): TemplateResult {\n return html`\n <nile-dropdown .open=\"${this.open}\" part=\"dd-base\" .hoist=\"${true}\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"${this.hideTypes}\"\n .type=\"${this.type}\"\n value=\"${this.value}\"\n .range=\"${this.range}\"\n\n @nile-init=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-destroy=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-changed=\"${(e: CustomEvent) => e.stopPropagation()}\"\n\n @nile-change=\"${this.handleChanged}\"\n\n .allowedDates=\"${this.allowedDates}\"\n\n @nile-type-change=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-type-change', e.detail); }}\"\n @nile-clear=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-clear'); }}\"\n\n .hideDurationFields=\"${this.hideDurationFields}\"\n .showManualInputs=\"${this.showManualInputs}\"\n .doubleClickUnselect=\"${this.doubleClickUnselect}\"\n .allowClear=\"${this.allowClear}\"\n ></nile-calendar>\n </nile-dropdown>\n `;\n }\n\n\n handleChanged(event: CustomEvent) {\n event.stopPropagation();\n\n const detail = event.detail;\n const triggerInput = this.querySelector(\"nile-input\");\n\n if (!this.range) {\n const picked = detail.value;\n\n if (picked && triggerInput) {\n triggerInput.value = formatDateToFormat(new Date(picked), this.dateFormat);\n triggerInput.emit(\"nile-input\", { value: triggerInput.value });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n return;\n }\n\n const start = detail.startDate;\n const end = detail.endDate;\n\n if (triggerInput) {\n let text = \"\";\n if (start) text += formatDateToFormat(new Date(start), this.dateFormat);\n if (start && end) text += \" - \" + formatDateToFormat(new Date(end), this.dateFormat);\n\n triggerInput.value = text;\n triggerInput.emit(\"nile-input\", { value: text });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n}\n\nexport default NileDatePicker;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-date-picker': NileDatePicker;\n }\n}\n"],"names":["NileDatePicker","d","this","range","hideTypes","doubleClickUnselect","allowClear","open","hideTimeZone","type","showManualInputs","hideDurationFields","allowedDates","syncDatePicker","dateFormat","_this","_inherits","_a","_createClass","key","value","firstUpdated","super","Map","input","querySelector","addEventListener","e","text","detail","first","parseRangeFromFormat","second","jumpTo","syncRangeCalendar","_r","normalizeDateRange","start","end","date","cal","shadowRoot","currentYear","getFullYear","currentMonth","getMonth","valueAttribute","toISOString","startDate","endDate","render","_this3","html","_templateObject","_taggedTemplateLiteral","stopPropagation","handleChanged","emit","event","triggerInput","_this$dropdown","picked","formatDateToFormat","Date","dropdown","hide","connectedCallback","disconnectedCallback","get","styles","NileElement","__decorate","property","Boolean","prototype","reflect","attribute","String","Array","query","_export","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"nile-date-picker.cjs.js","sources":["../../../src/nile-date-picker/nile-date-picker.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-date-picker.css';\nimport NileElement from '../internal/nile-element';\nimport { NileDropdown } from '../nile-dropdown';\n\nimport {\n parseDateFromFormat,\n formatDateToFormat,\n parseRangeFromFormat,\n normalizeDateRange\n} from './nile-date-picker-utils';\n\n\n@customElement('nile-date-picker')\nexport class NileDatePicker extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: Boolean }) range = false;\n @property({ type: Boolean }) hideTypes = false;\n @property({ type: Boolean, reflect: true }) doubleClickUnselect = false;\n @property({ type: Boolean, reflect: true }) allowClear = false;\n @property({ type: Boolean }) open = false;\n @property({ type: Boolean, attribute: 'hide-time-zone' }) hideTimeZone = false;\n @property({ type: String, reflect: true }) type: 'absolute' | 'relative' = 'absolute';\n @property({ type: Boolean, attribute: 'showManualInputs' }) showManualInputs = false;\n\n @property() value: any;\n @property({ type: Array, attribute: 'hide-duration-fields' }) hideDurationFields: any = [];\n @property({ attribute: 'allowedDates' }) allowedDates: any = '{}';\n\n @property({ type: Boolean, attribute: true, reflect: true }) syncDatePicker = false;\n @property({ type: String, attribute: true, reflect: true }) dateFormat = \"DD/MM/YYYY\"; \n@property({ type: String, attribute: true, reflect: true }) rangeSeparator = \" - \";\n\n\n @query('nile-dropdown') dropdown: NileDropdown;\n\n firstUpdated() {\n super.firstUpdated?.(new Map());\n\n if (!this.syncDatePicker) return;\n\n const input = this.querySelector(\"nile-input\");\n if (!input) return;\n\n input.addEventListener(\"nile-input\", (e: any) => {\n const text = e.detail.value;\n const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range, this.rangeSeparator);\n\n if (!this.range) {\n if (first) this.jumpTo(first);\n return;\n }\n\n if (first && !second) {\n this.jumpTo(first);\n this.syncRangeCalendar(first, null);\n }\n\n if (first && second) {\n const [start, end] = normalizeDateRange(first, second);\n if (end) this.jumpTo(end);\n this.syncRangeCalendar(start, end);\n }\n });\n }\n\n private jumpTo(date: Date) {\n this.open = true;\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n cal.currentYear = date.getFullYear();\n cal.currentMonth = date.getMonth();\n cal.value = date;\n cal.valueAttribute = date.toISOString();\n }\n\n\n private syncRangeCalendar(first: Date | null, second: Date | null) {\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n if (!this.range) return;\n\n if (first) cal.startDate = first;\n if (second) cal.endDate = second;\n }\n\n render(): TemplateResult {\n return html`\n <nile-dropdown .open=\"${this.open}\" part=\"dd-base\" .hoist=\"${true}\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"${this.hideTypes}\"\n .type=\"${this.type}\"\n value=\"${this.value}\"\n .range=\"${this.range}\"\n\n @nile-init=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-destroy=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-changed=\"${(e: CustomEvent) => e.stopPropagation()}\"\n\n @nile-change=\"${this.handleChanged}\"\n\n .allowedDates=\"${this.allowedDates}\"\n\n @nile-type-change=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-type-change', e.detail); }}\"\n @nile-clear=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-clear'); }}\"\n\n .hideDurationFields=\"${this.hideDurationFields}\"\n .showManualInputs=\"${this.showManualInputs}\"\n .doubleClickUnselect=\"${this.doubleClickUnselect}\"\n .allowClear=\"${this.allowClear}\"\n ></nile-calendar>\n </nile-dropdown>\n `;\n }\n\n\n handleChanged(event: CustomEvent) {\n event.stopPropagation();\n\n const detail = event.detail;\n const triggerInput = this.querySelector(\"nile-input\");\n\n if (!this.range) {\n const picked = detail.value;\n\n if (picked && triggerInput) {\n triggerInput.value = formatDateToFormat(new Date(picked), this.dateFormat);\n triggerInput.emit(\"nile-input\", { value: triggerInput.value });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n return;\n }\n\n const start = detail.startDate;\n const end = detail.endDate;\n\n if (triggerInput) {\n let text = \"\";\n if (start) text += formatDateToFormat(new Date(start), this.dateFormat);\n if (start && end) text += \" - \" + formatDateToFormat(new Date(end), this.dateFormat);\n\n triggerInput.value = text;\n triggerInput.emit(\"nile-input\", { value: text });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n}\n\nexport default NileDatePicker;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-date-picker': NileDatePicker;\n }\n}\n"],"names":["NileDatePicker","d","constructor","this","range","hideTypes","doubleClickUnselect","allowClear","open","hideTimeZone","type","showManualInputs","hideDurationFields","allowedDates","syncDatePicker","dateFormat","rangeSeparator","_this","_inherits","_a","_createClass","key","value","firstUpdated","super","Map","input","querySelector","addEventListener","e","text","detail","parseRangeFromFormat","first","second","jumpTo","syncRangeCalendar","_r","normalizeDateRange","end","start","date","cal","shadowRoot","currentYear","getFullYear","currentMonth","getMonth","valueAttribute","toISOString","startDate","endDate","render","_this3","html","_templateObject","_taggedTemplateLiteral","stopPropagation","handleChanged","emit","event","triggerInput","_this$dropdown","picked","formatDateToFormat","Date","dropdown","hide","connectedCallback","disconnectedCallback","get","styles","NileElement","__decorate","property","Boolean","prototype","reflect","attribute","String","Array","query","customElement"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import{__decorate as e}from"tslib";import{html as t}from"lit";import{property as i,query as s,customElement as n}from"lit/decorators.js";import{s as l}from"./nile-date-picker.css.esm.js";import{N as a}from"../internal/nile-element.esm.js";import{p as o,n as r,f as h}from"./nile-date-picker-utils.esm.js";let d=class extends a{constructor(){super(...arguments),this.range=!1,this.hideTypes=!1,this.doubleClickUnselect=!1,this.allowClear=!1,this.open=!1,this.hideTimeZone=!1,this.type="absolute",this.showManualInputs=!1,this.hideDurationFields=[],this.allowedDates="{}",this.syncDatePicker=!1,this.dateFormat="DD/MM/YYYY"}static get styles(){return[l]}firstUpdated(){if(super.firstUpdated?.(new Map),!this.syncDatePicker)return;const e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",(e=>{const t=e.detail.value,{first:i,second:s}=o(t,this.dateFormat,this.range);if(this.range){if(i&&!s&&(this.jumpTo(i),this.syncRangeCalendar(i,null)),i&&s){const[e,t]=r(i,s);t&&this.jumpTo(t),this.syncRangeCalendar(e,t)}}else i&&this.jumpTo(i)}))}jumpTo(e){this.open=!0;const t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString())}syncRangeCalendar(e,t){const i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t))}render(){return t`
1
+ import{__decorate as e}from"tslib";import{html as t}from"lit";import{property as i,query as s,customElement as n}from"lit/decorators.js";import{s as l}from"./nile-date-picker.css.esm.js";import{N as a}from"../internal/nile-element.esm.js";import{p as o,n as r,f as h}from"./nile-date-picker-utils.esm.js";let d=class extends a{constructor(){super(...arguments),this.range=!1,this.hideTypes=!1,this.doubleClickUnselect=!1,this.allowClear=!1,this.open=!1,this.hideTimeZone=!1,this.type="absolute",this.showManualInputs=!1,this.hideDurationFields=[],this.allowedDates="{}",this.syncDatePicker=!1,this.dateFormat="DD/MM/YYYY",this.rangeSeparator=" - "}static get styles(){return[l]}firstUpdated(){if(super.firstUpdated?.(new Map),!this.syncDatePicker)return;const e=this.querySelector("nile-input");e&&e.addEventListener("nile-input",(e=>{const t=e.detail.value,{first:i,second:s}=o(t,this.dateFormat,this.range,this.rangeSeparator);if(this.range){if(i&&!s&&(this.jumpTo(i),this.syncRangeCalendar(i,null)),i&&s){const[e,t]=r(i,s);t&&this.jumpTo(t),this.syncRangeCalendar(e,t)}}else i&&this.jumpTo(i)}))}jumpTo(e){this.open=!0;const t=this.shadowRoot.querySelector("nile-calendar");t&&(t.currentYear=e.getFullYear(),t.currentMonth=e.getMonth(),t.value=e,t.valueAttribute=e.toISOString())}syncRangeCalendar(e,t){const i=this.shadowRoot.querySelector("nile-calendar");i&&this.range&&(e&&(i.startDate=e),t&&(i.endDate=t))}render(){return t`
2
2
  <nile-dropdown .open="${this.open}" part="dd-base" .hoist="${!0}" distance="6" exportparts="base">
3
3
  <slot slot="trigger" part="trigger" name="trigger"></slot>
4
4
 
@@ -25,4 +25,4 @@ import{__decorate as e}from"tslib";import{html as t}from"lit";import{property as
25
25
  .allowClear="${this.allowClear}"
26
26
  ></nile-calendar>
27
27
  </nile-dropdown>
28
- `}handleChanged(e){e.stopPropagation();const t=e.detail,i=this.querySelector("nile-input");if(!this.range){const e=t.value;return e&&i&&(i.value=h(new Date(e),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void this.dropdown?.hide()}const s=t.startDate,n=t.endDate;if(i){let e="";s&&(e+=h(new Date(s),this.dateFormat)),s&&n&&(e+=" - "+h(new Date(n),this.dateFormat)),i.value=e,i.emit("nile-input",{value:e})}this.emit("nile-changed",t),this.emit("nile-change",t),this.dropdown?.hide()}connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}};e([i({type:Boolean})],d.prototype,"range",void 0),e([i({type:Boolean})],d.prototype,"hideTypes",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"doubleClickUnselect",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"allowClear",void 0),e([i({type:Boolean})],d.prototype,"open",void 0),e([i({type:Boolean,attribute:"hide-time-zone"})],d.prototype,"hideTimeZone",void 0),e([i({type:String,reflect:!0})],d.prototype,"type",void 0),e([i({type:Boolean,attribute:"showManualInputs"})],d.prototype,"showManualInputs",void 0),e([i()],d.prototype,"value",void 0),e([i({type:Array,attribute:"hide-duration-fields"})],d.prototype,"hideDurationFields",void 0),e([i({attribute:"allowedDates"})],d.prototype,"allowedDates",void 0),e([i({type:Boolean,attribute:!0,reflect:!0})],d.prototype,"syncDatePicker",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"dateFormat",void 0),e([s("nile-dropdown")],d.prototype,"dropdown",void 0),d=e([n("nile-date-picker")],d);export{d as N};
28
+ `}handleChanged(e){e.stopPropagation();const t=e.detail,i=this.querySelector("nile-input");if(!this.range){const e=t.value;return e&&i&&(i.value=h(new Date(e),this.dateFormat),i.emit("nile-input",{value:i.value})),this.emit("nile-changed",t),this.emit("nile-change",t),void this.dropdown?.hide()}const s=t.startDate,n=t.endDate;if(i){let e="";s&&(e+=h(new Date(s),this.dateFormat)),s&&n&&(e+=" - "+h(new Date(n),this.dateFormat)),i.value=e,i.emit("nile-input",{value:e})}this.emit("nile-changed",t),this.emit("nile-change",t),this.dropdown?.hide()}connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}};e([i({type:Boolean})],d.prototype,"range",void 0),e([i({type:Boolean})],d.prototype,"hideTypes",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"doubleClickUnselect",void 0),e([i({type:Boolean,reflect:!0})],d.prototype,"allowClear",void 0),e([i({type:Boolean})],d.prototype,"open",void 0),e([i({type:Boolean,attribute:"hide-time-zone"})],d.prototype,"hideTimeZone",void 0),e([i({type:String,reflect:!0})],d.prototype,"type",void 0),e([i({type:Boolean,attribute:"showManualInputs"})],d.prototype,"showManualInputs",void 0),e([i()],d.prototype,"value",void 0),e([i({type:Array,attribute:"hide-duration-fields"})],d.prototype,"hideDurationFields",void 0),e([i({attribute:"allowedDates"})],d.prototype,"allowedDates",void 0),e([i({type:Boolean,attribute:!0,reflect:!0})],d.prototype,"syncDatePicker",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"dateFormat",void 0),e([i({type:String,attribute:!0,reflect:!0})],d.prototype,"rangeSeparator",void 0),e([s("nile-dropdown")],d.prototype,"dropdown",void 0),d=e([n("nile-date-picker")],d);export{d as N};
@@ -1,6 +1,6 @@
1
1
  export declare function parseDateFromFormat(str: string, format: string): Date | null;
2
2
  export declare function formatDateToFormat(date: Date, format: string): string;
3
- export declare function parseRangeFromFormat(input: string, format: string, isRange: boolean): {
3
+ export declare function parseRangeFromFormat(input: string, format: string, isRange: boolean, separator: string): {
4
4
  first: Date | null;
5
5
  second: Date | null;
6
6
  };
@@ -63,20 +63,16 @@ export function formatDateToFormat(date, format) {
63
63
  return `${day}/${month}/${year}`;
64
64
  }
65
65
  }
66
- export function parseRangeFromFormat(input, format, isRange) {
66
+ export function parseRangeFromFormat(input, format, isRange, separator) {
67
67
  if (!isRange) {
68
68
  return { first: parseDateFromFormat(input, format), second: null };
69
69
  }
70
- const RANGE_SEP = " - ";
71
- if (!input.includes(RANGE_SEP)) {
70
+ if (!input.includes(separator)) {
72
71
  return { first: parseDateFromFormat(input, format), second: null };
73
72
  }
74
- const [firstRaw, secondRaw] = input.split(RANGE_SEP);
73
+ const [firstRaw, secondRaw] = input.split(separator);
75
74
  const first = parseDateFromFormat(firstRaw, format);
76
- let second = null;
77
- if (secondRaw && secondRaw.length >= 10) {
78
- second = parseDateFromFormat(secondRaw, format);
79
- }
75
+ const second = secondRaw ? parseDateFromFormat(secondRaw, format) : null;
80
76
  return { first, second };
81
77
  }
82
78
  export function normalizeDateRange(first, second) {
@@ -1 +1 @@
1
- {"version":3,"file":"nile-date-picker-utils.js","sourceRoot":"","sources":["../../../src/nile-date-picker/nile-date-picker-utils.ts"],"names":[],"mappings":"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","sourcesContent":["export function parseDateFromFormat(str: string, format: string): Date | null {\n if (!str) return null;\n \n const sepMatch = format.match(/[^A-Z]/i);\n if (!sepMatch) return null;\n const sep = sepMatch[0];\n \n if (!str.includes(sep)) return null;\n \n const parts = str.split(sep);\n const fmtParts = format.split(sep);\n \n let day: number | null = null;\n let month: number | null = null;\n let year: number | null = null;\n \n for (let i = 0; i < fmtParts.length; i++) {\n const f = fmtParts[i];\n const v = parts[i];\n if (!v) return null;\n \n if (f === \"DD\") {\n if (v.length !== 2) return null;\n day = Number(v);\n }\n \n if (f === \"MM\") {\n if (v.length !== 2) return null;\n month = Number(v) - 1;\n }\n \n if (f === \"YYYY\") {\n if (v.length !== 4) return null;\n year = Number(v);\n }\n }\n \n if (day == null || month == null || year == null) return null;\n \n const d = new Date(year, month, day);\n if (\n d.getFullYear() !== year ||\n d.getMonth() !== month ||\n d.getDate() !== day\n ) return null;\n \n return d;\n }\n\n export function formatDateToFormat(date: Date, format: string): string {\n if (!date) return \"\";\n \n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n \n switch (format) {\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n default:\n return `${day}/${month}/${year}`;\n }\n }\n\n export function parseRangeFromFormat(\n input: string,\n format: string,\n isRange: boolean\n ) {\n if (!isRange) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const RANGE_SEP = \" - \";\n \n if (!input.includes(RANGE_SEP)) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const [firstRaw, secondRaw] = input.split(RANGE_SEP);\n \n const first = parseDateFromFormat(firstRaw, format);\n let second = null;\n \n if (secondRaw && secondRaw.length >= 10) {\n second = parseDateFromFormat(secondRaw, format);\n }\n \n return { first, second };\n }\n \n export function normalizeDateRange(\n first: Date | null,\n second: Date | null\n ): [Date | null, Date | null] {\n if (first && second && first.getTime() > second.getTime()) {\n return [second, first];\n }\n return [first, second];\n }\n "]}
1
+ {"version":3,"file":"nile-date-picker-utils.js","sourceRoot":"","sources":["../../../src/nile-date-picker/nile-date-picker-utils.ts"],"names":[],"mappings":"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","sourcesContent":["export function parseDateFromFormat(str: string, format: string): Date | null {\n if (!str) return null;\n \n const sepMatch = format.match(/[^A-Z]/i);\n if (!sepMatch) return null;\n const sep = sepMatch[0];\n \n if (!str.includes(sep)) return null;\n \n const parts = str.split(sep);\n const fmtParts = format.split(sep);\n \n let day: number | null = null;\n let month: number | null = null;\n let year: number | null = null;\n \n for (let i = 0; i < fmtParts.length; i++) {\n const f = fmtParts[i];\n const v = parts[i];\n if (!v) return null;\n \n if (f === \"DD\") {\n if (v.length !== 2) return null;\n day = Number(v);\n }\n \n if (f === \"MM\") {\n if (v.length !== 2) return null;\n month = Number(v) - 1;\n }\n \n if (f === \"YYYY\") {\n if (v.length !== 4) return null;\n year = Number(v);\n }\n }\n \n if (day == null || month == null || year == null) return null;\n \n const d = new Date(year, month, day);\n if (\n d.getFullYear() !== year ||\n d.getMonth() !== month ||\n d.getDate() !== day\n ) return null;\n \n return d;\n }\n\n export function formatDateToFormat(date: Date, format: string): string {\n if (!date) return \"\";\n \n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n \n switch (format) {\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n default:\n return `${day}/${month}/${year}`;\n }\n }\n\n export function parseRangeFromFormat(\n input: string,\n format: string,\n isRange: boolean,\n separator: string\n ) {\n if (!isRange) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n if (!input.includes(separator)) {\n return { first: parseDateFromFormat(input, format), second: null };\n }\n \n const [firstRaw, secondRaw] = input.split(separator);\n \n const first = parseDateFromFormat(firstRaw, format);\n const second = secondRaw ? parseDateFromFormat(secondRaw, format) : null;\n \n return { first, second };\n }\n \n \n export function normalizeDateRange(\n first: Date | null,\n second: Date | null\n ): [Date | null, Date | null] {\n if (first && second && first.getTime() > second.getTime()) {\n return [second, first];\n }\n return [first, second];\n }\n "]}
@@ -22,6 +22,7 @@ export declare class NileDatePicker extends NileElement {
22
22
  allowedDates: any;
23
23
  syncDatePicker: boolean;
24
24
  dateFormat: string;
25
+ rangeSeparator: string;
25
26
  dropdown: NileDropdown;
26
27
  firstUpdated(): void;
27
28
  private jumpTo;
@@ -25,6 +25,7 @@ let NileDatePicker = class NileDatePicker extends NileElement {
25
25
  this.allowedDates = '{}';
26
26
  this.syncDatePicker = false;
27
27
  this.dateFormat = "DD/MM/YYYY";
28
+ this.rangeSeparator = " - ";
28
29
  }
29
30
  static get styles() {
30
31
  return [styles];
@@ -38,7 +39,7 @@ let NileDatePicker = class NileDatePicker extends NileElement {
38
39
  return;
39
40
  input.addEventListener("nile-input", (e) => {
40
41
  const text = e.detail.value;
41
- const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range);
42
+ const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range, this.rangeSeparator);
42
43
  if (!this.range) {
43
44
  if (first)
44
45
  this.jumpTo(first);
@@ -185,6 +186,9 @@ __decorate([
185
186
  __decorate([
186
187
  property({ type: String, attribute: true, reflect: true })
187
188
  ], NileDatePicker.prototype, "dateFormat", void 0);
189
+ __decorate([
190
+ property({ type: String, attribute: true, reflect: true })
191
+ ], NileDatePicker.prototype, "rangeSeparator", void 0);
188
192
  __decorate([
189
193
  query('nile-dropdown')
190
194
  ], NileDatePicker.prototype, "dropdown", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-date-picker.js","sourceRoot":"","sources":["../../../src/nile-date-picker/nile-date-picker.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-date-picker.css';\nimport NileElement from '../internal/nile-element';\nimport { NileDropdown } from '../nile-dropdown';\n\nimport {\n parseDateFromFormat,\n formatDateToFormat,\n parseRangeFromFormat,\n normalizeDateRange\n} from './nile-date-picker-utils';\n\n\n@customElement('nile-date-picker')\nexport class NileDatePicker extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: Boolean }) range = false;\n @property({ type: Boolean }) hideTypes = false;\n @property({ type: Boolean, reflect: true }) doubleClickUnselect = false;\n @property({ type: Boolean, reflect: true }) allowClear = false;\n @property({ type: Boolean }) open = false;\n @property({ type: Boolean, attribute: 'hide-time-zone' }) hideTimeZone = false;\n @property({ type: String, reflect: true }) type: 'absolute' | 'relative' = 'absolute';\n @property({ type: Boolean, attribute: 'showManualInputs' }) showManualInputs = false;\n\n @property() value: any;\n @property({ type: Array, attribute: 'hide-duration-fields' }) hideDurationFields: any = [];\n @property({ attribute: 'allowedDates' }) allowedDates: any = '{}';\n\n @property({ type: Boolean, attribute: true, reflect: true }) syncDatePicker = false;\n @property({ type: String, attribute: true, reflect: true }) dateFormat = \"DD/MM/YYYY\";\n\n @query('nile-dropdown') dropdown: NileDropdown;\n\n firstUpdated() {\n super.firstUpdated?.(new Map());\n\n if (!this.syncDatePicker) return;\n\n const input = this.querySelector(\"nile-input\");\n if (!input) return;\n\n input.addEventListener(\"nile-input\", (e: any) => {\n const text = e.detail.value;\n const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range);\n\n if (!this.range) {\n if (first) this.jumpTo(first);\n return;\n }\n\n if (first && !second) {\n this.jumpTo(first);\n this.syncRangeCalendar(first, null);\n }\n\n if (first && second) {\n const [start, end] = normalizeDateRange(first, second);\n if (end) this.jumpTo(end);\n this.syncRangeCalendar(start, end);\n }\n });\n }\n\n private jumpTo(date: Date) {\n this.open = true;\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n cal.currentYear = date.getFullYear();\n cal.currentMonth = date.getMonth();\n cal.value = date;\n cal.valueAttribute = date.toISOString();\n }\n\n\n private syncRangeCalendar(first: Date | null, second: Date | null) {\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n if (!this.range) return;\n\n if (first) cal.startDate = first;\n if (second) cal.endDate = second;\n }\n\n render(): TemplateResult {\n return html`\n <nile-dropdown .open=\"${this.open}\" part=\"dd-base\" .hoist=\"${true}\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"${this.hideTypes}\"\n .type=\"${this.type}\"\n value=\"${this.value}\"\n .range=\"${this.range}\"\n\n @nile-init=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-destroy=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-changed=\"${(e: CustomEvent) => e.stopPropagation()}\"\n\n @nile-change=\"${this.handleChanged}\"\n\n .allowedDates=\"${this.allowedDates}\"\n\n @nile-type-change=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-type-change', e.detail); }}\"\n @nile-clear=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-clear'); }}\"\n\n .hideDurationFields=\"${this.hideDurationFields}\"\n .showManualInputs=\"${this.showManualInputs}\"\n .doubleClickUnselect=\"${this.doubleClickUnselect}\"\n .allowClear=\"${this.allowClear}\"\n ></nile-calendar>\n </nile-dropdown>\n `;\n }\n\n\n handleChanged(event: CustomEvent) {\n event.stopPropagation();\n\n const detail = event.detail;\n const triggerInput = this.querySelector(\"nile-input\");\n\n if (!this.range) {\n const picked = detail.value;\n\n if (picked && triggerInput) {\n triggerInput.value = formatDateToFormat(new Date(picked), this.dateFormat);\n triggerInput.emit(\"nile-input\", { value: triggerInput.value });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n return;\n }\n\n const start = detail.startDate;\n const end = detail.endDate;\n\n if (triggerInput) {\n let text = \"\";\n if (start) text += formatDateToFormat(new Date(start), this.dateFormat);\n if (start && end) text += \" - \" + formatDateToFormat(new Date(end), this.dateFormat);\n\n triggerInput.value = text;\n triggerInput.emit(\"nile-input\", { value: text });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n}\n\nexport default NileDatePicker;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-date-picker': NileDatePicker;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-date-picker.js","sourceRoot":"","sources":["../../../src/nile-date-picker/nile-date-picker.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-date-picker.css';\nimport NileElement from '../internal/nile-element';\nimport { NileDropdown } from '../nile-dropdown';\n\nimport {\n parseDateFromFormat,\n formatDateToFormat,\n parseRangeFromFormat,\n normalizeDateRange\n} from './nile-date-picker-utils';\n\n\n@customElement('nile-date-picker')\nexport class NileDatePicker extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: Boolean }) range = false;\n @property({ type: Boolean }) hideTypes = false;\n @property({ type: Boolean, reflect: true }) doubleClickUnselect = false;\n @property({ type: Boolean, reflect: true }) allowClear = false;\n @property({ type: Boolean }) open = false;\n @property({ type: Boolean, attribute: 'hide-time-zone' }) hideTimeZone = false;\n @property({ type: String, reflect: true }) type: 'absolute' | 'relative' = 'absolute';\n @property({ type: Boolean, attribute: 'showManualInputs' }) showManualInputs = false;\n\n @property() value: any;\n @property({ type: Array, attribute: 'hide-duration-fields' }) hideDurationFields: any = [];\n @property({ attribute: 'allowedDates' }) allowedDates: any = '{}';\n\n @property({ type: Boolean, attribute: true, reflect: true }) syncDatePicker = false;\n @property({ type: String, attribute: true, reflect: true }) dateFormat = \"DD/MM/YYYY\"; \n@property({ type: String, attribute: true, reflect: true }) rangeSeparator = \" - \";\n\n\n @query('nile-dropdown') dropdown: NileDropdown;\n\n firstUpdated() {\n super.firstUpdated?.(new Map());\n\n if (!this.syncDatePicker) return;\n\n const input = this.querySelector(\"nile-input\");\n if (!input) return;\n\n input.addEventListener(\"nile-input\", (e: any) => {\n const text = e.detail.value;\n const { first, second } = parseRangeFromFormat(text, this.dateFormat, this.range, this.rangeSeparator);\n\n if (!this.range) {\n if (first) this.jumpTo(first);\n return;\n }\n\n if (first && !second) {\n this.jumpTo(first);\n this.syncRangeCalendar(first, null);\n }\n\n if (first && second) {\n const [start, end] = normalizeDateRange(first, second);\n if (end) this.jumpTo(end);\n this.syncRangeCalendar(start, end);\n }\n });\n }\n\n private jumpTo(date: Date) {\n this.open = true;\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n cal.currentYear = date.getFullYear();\n cal.currentMonth = date.getMonth();\n cal.value = date;\n cal.valueAttribute = date.toISOString();\n }\n\n\n private syncRangeCalendar(first: Date | null, second: Date | null) {\n const cal = this.shadowRoot!.querySelector(\"nile-calendar\") as any;\n if (!cal) return;\n\n if (!this.range) return;\n\n if (first) cal.startDate = first;\n if (second) cal.endDate = second;\n }\n\n render(): TemplateResult {\n return html`\n <nile-dropdown .open=\"${this.open}\" part=\"dd-base\" .hoist=\"${true}\" distance=\"6\" exportparts=\"base\">\n <slot slot=\"trigger\" part=\"trigger\" name=\"trigger\"></slot>\n\n <nile-calendar\n .hideTypes=\"${this.hideTypes}\"\n .type=\"${this.type}\"\n value=\"${this.value}\"\n .range=\"${this.range}\"\n\n @nile-init=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-destroy=\"${(e: CustomEvent) => e.stopPropagation()}\"\n @nile-changed=\"${(e: CustomEvent) => e.stopPropagation()}\"\n\n @nile-change=\"${this.handleChanged}\"\n\n .allowedDates=\"${this.allowedDates}\"\n\n @nile-type-change=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-type-change', e.detail); }}\"\n @nile-clear=\"${(e: CustomEvent) => { e.stopPropagation(); this.emit('nile-clear'); }}\"\n\n .hideDurationFields=\"${this.hideDurationFields}\"\n .showManualInputs=\"${this.showManualInputs}\"\n .doubleClickUnselect=\"${this.doubleClickUnselect}\"\n .allowClear=\"${this.allowClear}\"\n ></nile-calendar>\n </nile-dropdown>\n `;\n }\n\n\n handleChanged(event: CustomEvent) {\n event.stopPropagation();\n\n const detail = event.detail;\n const triggerInput = this.querySelector(\"nile-input\");\n\n if (!this.range) {\n const picked = detail.value;\n\n if (picked && triggerInput) {\n triggerInput.value = formatDateToFormat(new Date(picked), this.dateFormat);\n triggerInput.emit(\"nile-input\", { value: triggerInput.value });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n return;\n }\n\n const start = detail.startDate;\n const end = detail.endDate;\n\n if (triggerInput) {\n let text = \"\";\n if (start) text += formatDateToFormat(new Date(start), this.dateFormat);\n if (start && end) text += \" - \" + formatDateToFormat(new Date(end), this.dateFormat);\n\n triggerInput.value = text;\n triggerInput.emit(\"nile-input\", { value: text });\n }\n\n this.emit(\"nile-changed\", detail);\n this.emit(\"nile-change\", detail);\n\n this.dropdown?.hide();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n}\n\nexport default NileDatePicker;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-date-picker': NileDatePicker;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  // Version utility - placeholders will be replaced during build
2
- export const NILE_ELEMENTS_VERSION = '1.3.4-beta-1.4';
2
+ export const NILE_ELEMENTS_VERSION = '1.3.4-beta-1.5';
3
3
  export const NILE_VERSION = '1.1.1';
4
4
  // Set global versions for runtime access
5
5
  if (typeof window !== 'undefined') {
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,MAAM,CAAC,MAAM,qBAAqB,GAAG,2BAA2B,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE/C,yCAAyC;AACzC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACjC,MAAc,CAAC,mBAAmB,GAAG,qBAAqB,CAAC;IAC3D,MAAc,CAAC,WAAW,GAAG,YAAY,CAAC;IAC3C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAC;AACzE,CAAC","sourcesContent":["// Version utility - placeholders will be replaced during build\nexport const NILE_ELEMENTS_VERSION = '1.3.4-beta-1.4';\nexport const NILE_VERSION = '1.1.1';\n\n// Set global versions for runtime access\nif (typeof window !== 'undefined') {\n (window as any).nileElementsVersion = NILE_ELEMENTS_VERSION;\n (window as any).nileVersion = NILE_VERSION;\n window.process = window.process || { env: { NODE_ENV: 'production' } };\n}\n"]}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,MAAM,CAAC,MAAM,qBAAqB,GAAG,2BAA2B,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE/C,yCAAyC;AACzC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACjC,MAAc,CAAC,mBAAmB,GAAG,qBAAqB,CAAC;IAC3D,MAAc,CAAC,WAAW,GAAG,YAAY,CAAC;IAC3C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAC;AACzE,CAAC","sourcesContent":["// Version utility - placeholders will be replaced during build\nexport const NILE_ELEMENTS_VERSION = '1.3.4-beta-1.5';\nexport const NILE_VERSION = '1.1.1';\n\n// Set global versions for runtime access\nif (typeof window !== 'undefined') {\n (window as any).nileElementsVersion = NILE_ELEMENTS_VERSION;\n (window as any).nileVersion = NILE_VERSION;\n window.process = window.process || { env: { NODE_ENV: 'production' } };\n}\n"]}