@trilogy-ds/vanilla 0.0.1-beta.9 → 0.0.4-beta-v4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,11 @@
1
- (function(A){typeof define=="function"&&define.amd?define(A):A()})(function(){"use strict";const A=()=>{let c=document.querySelectorAll("[data-modal-context]");for(let s=0;s<c.length;s++){let e=c[s],n=e.querySelectorAll("[data-modal-open]"),a=e.querySelector("[data-modal]"),u=e.querySelectorAll("[data-modal-close]"),d=e.querySelectorAll('iframe[src*="www.youtube.com"], iframe[src*="player.vimeo.com"], video');for(let o=0;o<n.length;o++){let f=n[o],m=d[o];f.addEventListener("click",function(){if(i(a),m){if(m.tagName.toLowerCase()==="video"){m.play();return}m.src=m.src+(m.src.indexOf("?")<0?"?":"&")+"autoplay=1"}else return})}for(let o=0;o<u.length;o++)u[o].addEventListener("click",function(){l(a)});t(a);const r=e.querySelector(".modal-background");r&&(r.onclick=function(){l(a)}),e.setAttribute("data-modal-initialized","true")}function t(s){document.addEventListener("keyup",function(e){e=e||window.event;var n=!1;"key"in e?n=e.key==="Escape"||e.key==="Esc":n=e.keyCode===27,n&&l(s)}),document.addEventListener("click",function(e){const n=e.target;let a=n.closest("[data-modal-content]"),u=n.classList.contains("modal");a===null&&u==!0&&l(s)})}const i=s=>{s.classList.add("is-active"),document.body.style.overflow="hidden"},l=s=>{let e=s.querySelector('iframe[src*="youtube"], iframe[src*="vimeo"], video');if(e){if(e.tagName.toLowerCase()==="video"){e.pause();return}e.src=e.src.replace("&autoplay=1","").replace("?autoplay=1","")}s.classList.remove("is-active"),document.body.style.overflow=null}},E=()=>{let c=document.querySelectorAll('[data-variant="auto"]');const t=function(i){let l=0,s=i.length,e=0;if(s>0)for(;e<s;)l=(l<<5)-l+i.charCodeAt(e++)|0;return l};for(let i=0;i<c.length;i++){let l=c[i];const s=l.textContent,e=["b","g","o","q"],n=[];if(s.toLowerCase().split("").map((a,u)=>(e.indexOf(a)>-1&&n.push(u),a)),n.length){const a=t(s),u=Math.abs(a%n.length),d=s.charAt(n[u]),r=s.substring(0,n[u]),o=s.substring(n[u]+1);l.innerHTML=`${r}<span class="has-variant">${d}</span>${o}`}l.setAttribute("data-fontVariant-initialized","true")}},k=()=>{document.querySelectorAll("[data-countdown]").forEach(t=>{let n=t,a=new Date(n.dataset.date).getTime(),u=n.querySelector("[data-days]"),d=n.querySelector("[data-hours]"),r=n.querySelector("[data-minutes]"),o=n.querySelector("[data-seconds]"),f=setInterval(()=>{let m=new Date().getTime(),p=0;a-m>0&&(p=a-m),p<=0&&clearInterval(f),u.innerText=Math.floor(p/864e5).toString(),d.innerText=Math.floor(p%864e5/36e5).toString(),r.innerText=Math.floor(p%36e5/6e4).toString(),o.innerText=Math.floor(p%6e4/1e3).toString()},1e3);n.setAttribute("data-countdown-initialized","true")})},H=c=>{c.length&&c.forEach(t=>{const i=t.querySelector("button.toggle");t.classList.remove("is-active"),i.setAttribute("aria-expanded","false")})},W=c=>{const t=c.querySelectorAll("[data-accordion-context]");t.forEach(i=>{const l=i.querySelector("[data-accordion-toggle]"),s=i.querySelector("button.toggle");l.addEventListener("click",()=>{i.classList.contains("is-disabled")||(i.classList.contains("is-active")?(i.classList.remove("is-active"),s.setAttribute("aria-expanded","false")):(H(t),i.classList.toggle("is-active"),s.setAttribute("aria-expanded","true")))})}),c.setAttribute("data-accordion-initialized","true")},z=()=>{document.querySelectorAll("[data-accordion], .accordions").forEach(t=>{W(t)})},I=()=>{let c=document.querySelectorAll("[data-expandable-row]");for(let t=0;t<c.length;t++){let i=c[t];i.querySelector("[data-expandable-trigger]").addEventListener("click",function(){i.classList.toggle("is-expanded")}),i.setAttribute("data-tableexpansion-initialized","true")}},N=()=>{const c=document.querySelectorAll("[data-tabs-context]"),t=`right: 0;padding-left: 16px;width: 4.5rem !important;background: linear-gradient(90deg, rgba(256,256,256, 0) -25%, white 30%);
1
+ (function(A){typeof define=="function"&&define.amd?define(A):A()})(function(){"use strict";const A=()=>{let c=document.querySelectorAll("[data-modal-context]");for(let n=0;n<c.length;n++){let e=c[n],s=e.querySelectorAll("[data-modal-open]"),t=e.querySelector("[data-modal]"),d=e.querySelectorAll("[data-modal-close]"),u=e.querySelectorAll('iframe[src*="www.youtube.com"], iframe[src*="player.vimeo.com"], video');for(let r=0;r<s.length;r++){let f=s[r],g=u[r];f.addEventListener("click",function(){if(i(t),g){if(g.tagName.toLowerCase()==="video"){g.play();return}g.src=g.src+(g.src.indexOf("?")<0?"?":"&")+"autoplay=1"}else return})}for(let r=0;r<d.length;r++)d[r].addEventListener("click",function(){l(t)});a(t);const o=e.querySelector(".modal-background");o&&(o.onclick=function(){l(t)}),e.setAttribute("data-modal-initialized","true")}function a(n){document.addEventListener("keyup",function(e){e=e||window.event;var s=!1;"key"in e?s=e.key==="Escape"||e.key==="Esc":s=e.keyCode===27,s&&l(n)}),document.addEventListener("click",function(e){const s=e.target;let t=s.closest("[data-modal-content]"),d=s.classList.contains("modal");t===null&&d==!0&&l(n)})}const i=n=>{n.classList.add("is-active"),document.body.style.overflow="hidden"},l=n=>{let e=n.querySelector('iframe[src*="youtube"], iframe[src*="vimeo"], video');if(e){if(e.tagName.toLowerCase()==="video"){e.pause();return}e.src=e.src.replace("&autoplay=1","").replace("?autoplay=1","")}n.classList.remove("is-active"),document.body.style.overflow=null}},k=()=>{let c=document.querySelectorAll('[data-variant="auto"]');const a=function(i){let l=0,n=i.length,e=0;if(n>0)for(;e<n;)l=(l<<5)-l+i.charCodeAt(e++)|0;return l};for(let i=0;i<c.length;i++){let l=c[i];const n=l.textContent,e=["b","g","o","q"],s=[];if(n.toLowerCase().split("").map((t,d)=>(e.indexOf(t)>-1&&s.push(d),t)),s.length){const t=a(n),d=Math.abs(t%s.length),u=n.charAt(s[d]),o=n.substring(0,s[d]),r=n.substring(s[d]+1);l.innerHTML=`${o}<span class="has-variant">${u}</span>${r}`}l.setAttribute("data-fontVariant-initialized","true")}},E=()=>{document.querySelectorAll("[data-countdown]").forEach(a=>{let s=a,t=new Date(s.dataset.date).getTime(),d=s.querySelector("[data-days]"),u=s.querySelector("[data-hours]"),o=s.querySelector("[data-minutes]"),r=s.querySelector("[data-seconds]"),f=setInterval(()=>{let g=new Date().getTime(),p=0;t-g>0&&(p=t-g),p<=0&&clearInterval(f),d.innerText=Math.floor(p/864e5).toString(),u.innerText=Math.floor(p%864e5/36e5).toString(),o.innerText=Math.floor(p%36e5/6e4).toString(),r.innerText=Math.floor(p%6e4/1e3).toString()},1e3);s.setAttribute("data-countdown-initialized","true")})},z=()=>{let c=document.querySelectorAll("[data-expandable-row]");for(let a=0;a<c.length;a++){let i=c[a];i.querySelector("[data-expandable-trigger]").addEventListener("click",function(){i.classList.toggle("is-expanded")}),i.setAttribute("data-tableexpansion-initialized","true")}},I=()=>{const c=document.querySelectorAll("[data-tabs-context]"),a=`right: 0;padding-left: 16px;width: 4.5rem !important;background: linear-gradient(90deg, rgba(256,256,256, 0) -25%, white 30%);
2
2
  background-attachment: local, local, scroll, scroll;`,i=`
3
3
  .tabs {
4
4
  padding-right: 2rem;
5
5
  }
6
- `,l=document.createElement("style");l.innerText=i,c.forEach(e=>{const n=e.clientWidth;let a=e.querySelector(".tabs");if(a||(a=e.querySelector('[data-real-class*="tabs"]')),a.scrollWidth>n&&!a.innerHTML.includes("icon is-small is-absolute")){const d=`<span class="icon is-small is-absolute" style="${t}"><i class="tri-arrow-right" aria-hidden='true'></i></span>`;a.innerHTML+=d,a.appendChild(l)}});let s=document.querySelectorAll("[data-tabs-context]");for(let e=0;e<s.length;e++){let n=s[e],a=n.querySelectorAll("[data-tab-navigation]"),u=n.querySelectorAll("[data-tab-content]");for(let o=0;o<a.length;o++){let f=a[o],m=u[o];f.addEventListener("click",function(){r(f,m)}),f.addEventListener("keyup",p=>{switch(p.preventDefault(),p.keyCode){case 35:r(a[a.length-1],u[a.length-1]);break;case 36:r(a[0],u[0]);break;case 37:let h=(o-1)%a.length;r(a[h],u[h]);break;case 39:let v=(o+1)%a.length;r(a[v],u[v]);break}})}const d=()=>{for(let o=0;o<a.length;o++)a[o].classList.remove("is-active"),a[o].setAttribute("aria-selected","false"),a[o].setAttribute("tabindex","-1");for(let o=0;o<u.length;o++)u[o].classList.remove("is-active"),u[o].setAttribute("aria-expanded","false")},r=(o,f)=>{d(),o.classList.add("is-active"),o.setAttribute("aria-selected","true"),o.setAttribute("tabindex","0"),o.focus(),f.classList.add("is-active"),f.setAttribute("aria-expanded","true")};n.setAttribute("data-tab-initialized","true")}},O=()=>{document.querySelectorAll("[data-autocomplete-context]").forEach(t=>{const i=t.querySelector("[data-autocomplete-input]"),l=t.querySelector("[data-autocomplete-menu]"),s=l.querySelectorAll(".autocomplete-item");let e=-1,n="";const a=()=>{e=-1,document.body.classList.remove("autocomplete-close"),t.classList.remove("is-active"),i.blur(),s.forEach(d=>{d.removeAttribute("data-autocomplete-item-hover")})};l.querySelectorAll(".autocomplete-item").forEach((d,r)=>{d.setAttribute("data-autocomplete-item-index",String(r))}),i.addEventListener("focus",d=>{d.stopPropagation(),t.closest(".is-autocomplete").classList.add("is-active"),document.body.classList.add("autocomplete-close");const r=[];s.forEach(o=>{o.textContent.trim().toLocaleLowerCase().includes(i.value.trim().toLocaleLowerCase())?(o.style.display="block",r.push(o)):o.style.display="none",o.removeAttribute("data-autocomplete-item-index")}),r.forEach((o,f)=>{o.setAttribute("data-autocomplete-item-index",String(f))})}),s.forEach(d=>{d.addEventListener("mousemove",()=>{s.forEach(o=>{o.removeAttribute("data-autocomplete-item-hover")});const r=d.getAttribute("data-autocomplete-item-index");e=Number(r),d.setAttribute("data-autocomplete-item-hover","true"),n=""}),d.addEventListener("mouseout",()=>{d.removeAttribute("data-autocomplete-item-hover")}),d.addEventListener("click",r=>{const o=r.target;i.value=o.textContent,a()})}),i.addEventListener("input",d=>{const r=d.target;e!==-1&&(e=-1);const o=[];s.forEach(f=>{f.textContent.trim().toLocaleLowerCase().includes(r.value.trim().toLocaleLowerCase())?(f.style.display="block",o.push(f)):f.style.display="none",f.removeAttribute("data-autocomplete-item-index"),f.removeAttribute("data-autocomplete-item-hover")}),o.forEach((f,m)=>{f.setAttribute("data-autocomplete-item-index",String(m))})}),i.addEventListener("keydown",d=>{const r=l.querySelectorAll("[data-autocomplete-item-index]");d.key==="ArrowDown"&&(e=e+1,e===r.length&&(e=0)),d.key==="ArrowUp"&&(e=e-1,e<0&&(e=r.length-1)),["ArrowDown","ArrowUp"].includes(d.key)&&(r.forEach(o=>{o.removeAttribute("data-autocomplete-item-hover")}),r[e].setAttribute("data-autocomplete-item-hover","true"),n=r[e].textContent),d.key==="Enter"&&n.trim().length>0&&(i.value=n,a())}),i.addEventListener("blur",()=>{setTimeout(()=>a(),100)}),t.setAttribute("data-autocomplete-initialized","true")})},M=()=>{document.querySelectorAll(".segmented-control-item").forEach(t=>{t.addEventListener("click",function(){this.parentElement.querySelector(".is-active").classList.remove("is-active"),t.classList.contains("is-active")||t.classList.add("is-active")}),t.setAttribute("data-segmentedControl-initialized","true")})},$=()=>{document.querySelectorAll(".textarea-wrapper").forEach(t=>{if(!t.getAttribute("data-textarea-initialized")){const s=t.querySelector("textarea.textarea"),e=s.getAttribute("maxlength");if(e){var l=0;const n=document.createElement("div");n.classList.add("counter"),n.innerHTML=`${l}/${e}`,t.appendChild(n),s.addEventListener("input",function(a){l=this.value.length,n.innerHTML=`${l}/${e}`,l===10&&a.preventDefault()})}t.setAttribute("data-textarea-initialized","true")}})},F=c=>{c.forEach(t=>{t.classList.remove("is-active")})},T=()=>{document.querySelectorAll(".chips-list").forEach(t=>{if(!t.getAttribute("data-chips-initialized")){const l=t.querySelectorAll(".chips"),s=t.classList.contains("is-multiple");l.forEach(e=>{e.classList.contains("is-disabled")||e.addEventListener("click",function(){s||F(l),e.classList.toggle("is-active")})}),t.setAttribute("data-chips-initialized","true")}})},R=c=>{if(!c.getAttribute("data-progress-radial-initialized")){let i=Number(c.getAttribute("data-progress-radial-first-value")),l=Number(c.getAttribute("data-progress-radial-second-value")),s="",e=0,n=0;if(l===0){const a=setInterval(()=>{e!==i?e+=1:clearInterval(a),s=`radial-gradient(white 58%, transparent 51%),
6
+ `,l=document.createElement("style");l.innerText=i,c.forEach(e=>{const s=e.clientWidth;let t=e.querySelector(".tabs");if(t||(t=e.querySelector('[data-real-class*="tabs"]')),t.scrollWidth>s&&!t.innerHTML.includes("icon is-small is-absolute")){const u=`<span class="icon is-small is-absolute" style="${a}"><i class="tri-arrow-right" aria-hidden='true'></i></span>`;t.innerHTML+=u,t.appendChild(l)}});let n=document.querySelectorAll("[data-tabs-context]");for(let e=0;e<n.length;e++){let s=n[e],t=s.querySelectorAll("[data-tab-navigation]"),d=s.querySelectorAll("[data-tab-content]");for(let r=0;r<t.length;r++){let f=t[r],g=d[r];f.addEventListener("click",function(){o(f,g)}),f.addEventListener("keyup",p=>{switch(p.preventDefault(),p.keyCode){case 35:o(t[t.length-1],d[t.length-1]);break;case 36:o(t[0],d[0]);break;case 37:let h=(r-1)%t.length;o(t[h],d[h]);break;case 39:let v=(r+1)%t.length;o(t[v],d[v]);break}})}const u=()=>{for(let r=0;r<t.length;r++)t[r].classList.remove("is-active"),t[r].setAttribute("aria-selected","false"),t[r].setAttribute("tabindex","-1");for(let r=0;r<d.length;r++)d[r].classList.remove("is-active"),d[r].setAttribute("aria-expanded","false")},o=(r,f)=>{u(),r.classList.add("is-active"),r.setAttribute("aria-selected","true"),r.setAttribute("tabindex","0"),r.focus(),f.classList.add("is-active"),f.setAttribute("aria-expanded","true")};s.setAttribute("data-tab-initialized","true")}},N=()=>{document.querySelectorAll("[data-autocomplete-context]").forEach(a=>{const i=a.querySelector("[data-autocomplete-input]"),l=a.querySelector("[data-autocomplete-menu]"),n=l.querySelectorAll(".autocomplete-item");let e=-1,s="";const t=()=>{e=-1,document.body.classList.remove("autocomplete-close"),a.classList.remove("is-active"),i.blur(),n.forEach(u=>{u.removeAttribute("data-autocomplete-item-hover")})};l.querySelectorAll(".autocomplete-item").forEach((u,o)=>{u.setAttribute("data-autocomplete-item-index",String(o))}),i.addEventListener("focus",u=>{u.stopPropagation(),a.closest(".is-autocomplete").classList.add("is-active"),document.body.classList.add("autocomplete-close");const o=[];n.forEach(r=>{r.textContent.trim().toLocaleLowerCase().includes(i.value.trim().toLocaleLowerCase())?(r.style.display="block",o.push(r)):r.style.display="none",r.removeAttribute("data-autocomplete-item-index")}),o.forEach((r,f)=>{r.setAttribute("data-autocomplete-item-index",String(f))})}),n.forEach(u=>{u.addEventListener("mousemove",()=>{n.forEach(r=>{r.removeAttribute("data-autocomplete-item-hover")});const o=u.getAttribute("data-autocomplete-item-index");e=Number(o),u.setAttribute("data-autocomplete-item-hover","true"),s=""}),u.addEventListener("mouseout",()=>{u.removeAttribute("data-autocomplete-item-hover")}),u.addEventListener("click",o=>{const r=o.target;i.value=r.textContent,t()})}),i.addEventListener("input",u=>{const o=u.target;e!==-1&&(e=-1);const r=[];n.forEach(f=>{f.textContent.trim().toLocaleLowerCase().includes(o.value.trim().toLocaleLowerCase())?(f.style.display="block",r.push(f)):f.style.display="none",f.removeAttribute("data-autocomplete-item-index"),f.removeAttribute("data-autocomplete-item-hover")}),r.forEach((f,g)=>{f.setAttribute("data-autocomplete-item-index",String(g))})}),i.addEventListener("keydown",u=>{const o=l.querySelectorAll("[data-autocomplete-item-index]");u.key==="ArrowDown"&&(e=e+1,e===o.length&&(e=0)),u.key==="ArrowUp"&&(e=e-1,e<0&&(e=o.length-1)),["ArrowDown","ArrowUp"].includes(u.key)&&(o.forEach(r=>{r.removeAttribute("data-autocomplete-item-hover")}),o[e].setAttribute("data-autocomplete-item-hover","true"),s=o[e].textContent),u.key==="Enter"&&s.trim().length>0&&(i.value=s,t())}),i.addEventListener("blur",()=>{setTimeout(()=>t(),100)}),a.setAttribute("data-autocomplete-initialized","true")})},O=()=>{document.querySelectorAll(".segmented-control-item").forEach(a=>{a.addEventListener("click",function(){this.parentElement.querySelector(".is-active").classList.remove("is-active"),a.classList.contains("is-active")||a.classList.add("is-active")}),a.setAttribute("data-segmentedControl-initialized","true")})},M=()=>{document.querySelectorAll(".textarea-wrapper").forEach(a=>{if(!a.getAttribute("data-textarea-initialized")){const n=a.querySelector("textarea.textarea"),e=n.getAttribute("maxlength");if(e){var l=0;const s=document.createElement("div");s.classList.add("counter"),s.innerHTML=`${l}/${e}`,a.appendChild(s),n.addEventListener("input",function(t){l=this.value.length,s.innerHTML=`${l}/${e}`,l===10&&t.preventDefault()})}a.setAttribute("data-textarea-initialized","true")}})},P=c=>{c.forEach(a=>{a.classList.remove("is-active")})},$=()=>{document.querySelectorAll(".chips-list").forEach(a=>{if(!a.getAttribute("data-chips-initialized")){const l=a.querySelectorAll(".chips"),n=a.classList.contains("is-multiple");l.forEach(e=>{e.classList.contains("is-disabled")||e.addEventListener("click",function(){n||P(l),e.classList.toggle("is-active")})}),a.setAttribute("data-chips-initialized","true")}})},H=c=>{if(!c.getAttribute("data-progress-radial-initialized")){let i=Number(c.getAttribute("data-progress-radial-first-value")),l=Number(c.getAttribute("data-progress-radial-second-value")),n="",e=0,s=0;if(l===0){const t=setInterval(()=>{e!==i?e+=1:clearInterval(t),n=`radial-gradient(white 58%, transparent 51%),
7
7
  conic-gradient(#0C7B91 0deg ${360*(e/100)}deg,
8
- gainsboro ${360*(e/100)}deg 360deg)`,c.style.background=s},13)}else{l+=i;const a=setInterval(()=>{e<i&&(e+=1),n<l?n+=1:clearInterval(a),s=`radial-gradient(white 58%, transparent 51%),
8
+ gainsboro ${360*(e/100)}deg 360deg)`,c.style.background=n},13)}else{l+=i;const t=setInterval(()=>{e<i&&(e+=1),s<l?s+=1:clearInterval(t),n=`radial-gradient(white 58%, transparent 51%),
9
9
  conic-gradient(#0C7B91 0deg ${360*(e/100)}deg,
10
- #25465f ${360*(e/100)}deg ${360*(n/100)}deg,
11
- gainsboro ${360*(n/100)}deg 360deg)`,c.style.background=s},13)}c.setAttribute("data-progress-radial-initialized","true")}},_=c=>{let t=c.querySelector(".range-cursor-min"),i=c.querySelector(".range-cursor-max"),l=c.querySelector(".range-track"),s=c.querySelector(".range-value-min"),e=c.querySelector(".range-value-max"),n=t.max,a=0;const u=()=>{let d=Number(t.value)/Number(n)*100,r=Number(i.value)/Number(n)*100;l.style.background=`linear-gradient(to right, #E1E1E1 ${d}% , #0C7B91 ${d}% , #0C7B91 ${r}%, #E1E1E1 ${r}%) `};u(),t.addEventListener("input",d=>{const r=d.target;Number(r.value)<Number(i.value)-a?t.value=r.value:t.value=String(Number(i.value)-a),s.textContent=r.value,u()}),i.addEventListener("input",d=>{const r=d.target;Number(r.value)>Number(t.value)+a?i.value=r.value:i.value=String(Number(t.value)+a),e.textContent=r.value,u()}),c.setAttribute("data-ranges-initialized","true")},G=(c,t)=>{new IntersectionObserver(l=>{l.forEach(s=>{s.isIntersecting&&t(s.target)})}).observe(c)},V=()=>{const c=document.querySelectorAll("[data-select-name]");c&&c.forEach(t=>{const i=t.querySelector("label");if(!t.classList.contains("select-disabled")){const l=t.parentNode;let s=l.querySelector("[data-is-open-options]");t.addEventListener("click",()=>{const n=s.getAttribute("data-is-open-options");n==="true"&&s.setAttribute("data-is-open-options","false"),n==="false"&&s.setAttribute("data-is-open-options","true")}),t.addEventListener("blur",()=>{s.setAttribute("data-is-open-options","false")});const e=s.querySelectorAll("[data-option-name]");e.forEach(n=>{n.classList.contains("select-options-option-disabled")||n.addEventListener("mousedown",()=>{e.forEach(u=>u.classList.remove("select-options-option-activated")),n.classList.add("select-options-option-activated");let a=t.querySelector("[data-option-selected]");a||(a=document.createElement("span"),a.classList.add("select-value"),(!i||i===null)&&a.classList.add("no-label"),t.appendChild(a)),t.setAttribute("data-option-selected",n.getAttribute("data-option-name")),a.setAttribute("data-option-selected",n.getAttribute("data-option-name")),a.textContent=n.getAttribute("data-option-name"),l.classList.add("has-dynamic-placeholder")})})}t.setAttribute("data-selects-initialized","true")})},B=()=>{const c=document.querySelectorAll("[data-has-gauge]");c&&c.forEach(t=>{var S,x;const i="#007B52",l="#707070",s="#D42D02",e="#FFBB33",n=t.querySelector("input"),a=t.querySelector("[data-gauge]"),u=(S=t.querySelector("[data-length-min]"))==null?void 0:S.getAttribute("data-length-min"),d=(x=t.querySelector("[data-length-max]"))==null?void 0:x.getAttribute("data-length-max"),r={},o={fn:g=>d&&!u?g.length>0&&g.length<=Number(d):u&&!d?g.length>=Number(u):d&&u?g.length>=Number(u)&&g.length<=Number(d):!1,ref:t.querySelector("[data-security-length]")},f={fn:g=>/[^\w\*]/.test(g),ref:t.querySelector("[data-security-special-chars]")},m={fn:g=>/[0-9]/.test(g),ref:t.querySelector("[data-security-number]")},p={fn:g=>/[A-Z]/.test(g),ref:t.querySelector("[data-security-uppercase]")},h={fn:g=>/[a-z]/.test(g),ref:t.querySelector("[data-security-lowercase]")};m.ref&&Object.assign(r,{numberVerify:m}),o.ref&&Object.assign(r,{lengthVerify:o}),h.ref&&Object.assign(r,{lowercaseVerify:h}),p.ref&&Object.assign(r,{uppercaseVerify:p}),f.ref&&Object.assign(r,{specialCharsverify:f}),Object.keys(r).length;const v=g=>{const b=[];return Object.keys(r).map(y=>{const C=r[y].fn(g),L=r[y].ref.querySelector("[data-icon-securities]").querySelector("i");b.push(C),C?(L.classList.remove("tri-times-circle"),L.classList.add("tri-check-circle","is-success")):(L.classList.remove("tri-check-circle","is-success"),L.classList.add("tri-times-circle"))}),b.filter(y=>y).length},q=g=>{const b=Number((g/Object.keys(r).length*100).toFixed(0));b<=50&&b>0?(a.style.width="50%",a.style.backgroundColor=s):b<=99&&b>50?(a.style.width="75%",a.style.backgroundColor=e):b===100?(a.style.width="100%",a.style.backgroundColor=i):(a.style.width="0%",a.style.backgroundColor=l)},w=g=>{const b=g.target.value,y=v(b);q(y)};n.addEventListener("input",w),t.setAttribute("data-gauges-initialized","true")})},j=()=>{const c=document.querySelectorAll("[data-show-pwd]");c&&c.forEach(t=>{const i=e=>{e.classList.contains("tri-eye")?(e.classList.remove("tri-eye"),e.classList.add("tri-eye-slash")):(e.classList.remove("tri-eye-slash"),e.classList.add("tri-eye"))},l=e=>{const n=e.parentNode.parentNode;let a=n.querySelector("input");a||(a=n.parentNode.querySelector("input")),a.type==="password"?a.type="text":a.type="password"},s=e=>{const n=e.target;i(n),l(n)};t.addEventListener("click",s),t.setAttribute("data-iconsShowPwd-initialized","true")})},D=()=>{N(),A(),E(),k(),I(),z(),O(),M(),$(),T(),V(),B(),j()};let P=!1;P||document.addEventListener("DOMContentLoaded",function(){D(),P=!0;const c={attributes:!0,childList:!0,subtree:!0};new MutationObserver(function(i){i.forEach(function(l){const s=l.target;if(s){const e=s.querySelectorAll("[data-modal-context]"),n=s.querySelectorAll(".accordions"),a=s.querySelectorAll(".countdown"),u=s.querySelectorAll("[data-tabs-context]"),d=s.querySelectorAll("[data-autocomplete-context]"),r=s.querySelectorAll('[data-variant="auto"]'),o=s.querySelectorAll(".segmented-control-item"),f=document.querySelectorAll(".textarea"),m=document.querySelectorAll(".progress-radial"),p=document.querySelectorAll(".range-container"),h=document.querySelectorAll(".chips-list"),v=s.querySelectorAll("[data-select-name]"),q=document.querySelectorAll("[data-has-gauge]"),w=document.querySelectorAll("[data-show-pwd]"),S=s.querySelectorAll("[data-expandable-row]");[{modal:e},{accordion:n},{tab:u},{countdown:a},{autocomplete:d},{fontVariant:r},{segmentedControl:o},{textareas:f},{ranges:p},{progressRadials:m},{chips:h},{selects:v},{gauges:q},{iconsShowPwd:w},{tableexpansion:S}].forEach(g=>{const b=Object.keys(g)[0];g[b].length&&g[b].forEach(y=>{if(y.getAttribute(`data-${b}-initialized`)!=="true")switch(y.setAttribute(`data-${b}-initialized`,"true"),b){case"modal":return A();case"tab":return N();case"accordion":return z();case"countdown":return k();case"autocomplete":return O();case"fontVariant":return E();case"segmentedControl":return M();case"textareas":return $();case"chips":return T();case"selects":return V();case"ranges":return _(y);case"progressRadials":return G(y,R);case"gauges":return B();case"iconsShowPwd":return j();case"tableexpansion":return I();default:return D()}})})}})}).observe(document.documentElement,c)})});
10
+ #25465f ${360*(e/100)}deg ${360*(s/100)}deg,
11
+ gainsboro ${360*(s/100)}deg 360deg)`,c.style.background=n},13)}c.setAttribute("data-progress-radial-initialized","true")}},W=c=>{let a=c.querySelector(".range-cursor-min"),i=c.querySelector(".range-cursor-max"),l=c.querySelector(".range-track"),n=c.querySelector(".range-value-min"),e=c.querySelector(".range-value-max"),s=a.max,t=0;const d=()=>{let u=Number(a.value)/Number(s)*100,o=Number(i.value)/Number(s)*100;l.style.background=`linear-gradient(to right, #E1E1E1 ${u}% , #0C7B91 ${u}% , #0C7B91 ${o}%, #E1E1E1 ${o}%) `};d(),a.addEventListener("input",u=>{const o=u.target;Number(o.value)<Number(i.value)-t?a.value=o.value:a.value=String(Number(i.value)-t),n.textContent=o.value,d()}),i.addEventListener("input",u=>{const o=u.target;Number(o.value)>Number(a.value)+t?i.value=o.value:i.value=String(Number(a.value)+t),e.textContent=o.value,d()}),c.setAttribute("data-ranges-initialized","true")},F=(c,a)=>{new IntersectionObserver(l=>{l.forEach(n=>{n.isIntersecting&&a(n.target)})}).observe(c)},T=()=>{const c=document.querySelectorAll("[data-select-name]");c&&c.forEach(a=>{const i=a.querySelector("label");if(!a.classList.contains("select-disabled")){const l=a.parentNode;let n=l.querySelector("[data-is-open-options]");a.addEventListener("click",()=>{const s=n.getAttribute("data-is-open-options");s==="true"&&n.setAttribute("data-is-open-options","false"),s==="false"&&n.setAttribute("data-is-open-options","true")}),a.addEventListener("blur",()=>{n.setAttribute("data-is-open-options","false")});const e=n.querySelectorAll("[data-option-name]");e.forEach(s=>{s.classList.contains("select-options-option-disabled")||s.addEventListener("mousedown",()=>{e.forEach(d=>d.classList.remove("select-options-option-activated")),s.classList.add("select-options-option-activated");let t=a.querySelector("[data-option-selected]");t||(t=document.createElement("span"),t.classList.add("select-value"),(!i||i===null)&&t.classList.add("no-label"),a.appendChild(t)),a.setAttribute("data-option-selected",s.getAttribute("data-option-name")),t.setAttribute("data-option-selected",s.getAttribute("data-option-name")),t.textContent=s.getAttribute("data-option-name"),l.classList.add("has-dynamic-placeholder")})})}a.setAttribute("data-selects-initialized","true")})},V=()=>{const c=document.querySelectorAll("[data-has-gauge]");c&&c.forEach(a=>{var S,q;const i="#007B52",l="#707070",n="#D42D02",e="#FFBB33",s=a.querySelector("input"),t=a.querySelector("[data-gauge]"),d=(S=a.querySelector("[data-length-min]"))==null?void 0:S.getAttribute("data-length-min"),u=(q=a.querySelector("[data-length-max]"))==null?void 0:q.getAttribute("data-length-max"),o={},r={fn:m=>u&&!d?m.length>0&&m.length<=Number(u):d&&!u?m.length>=Number(d):u&&d?m.length>=Number(d)&&m.length<=Number(u):!1,ref:a.querySelector("[data-security-length]")},f={fn:m=>/[^\w\*]/.test(m),ref:a.querySelector("[data-security-special-chars]")},g={fn:m=>/[0-9]/.test(m),ref:a.querySelector("[data-security-number]")},p={fn:m=>/[A-Z]/.test(m),ref:a.querySelector("[data-security-uppercase]")},h={fn:m=>/[a-z]/.test(m),ref:a.querySelector("[data-security-lowercase]")};g.ref&&Object.assign(o,{numberVerify:g}),r.ref&&Object.assign(o,{lengthVerify:r}),h.ref&&Object.assign(o,{lowercaseVerify:h}),p.ref&&Object.assign(o,{uppercaseVerify:p}),f.ref&&Object.assign(o,{specialCharsverify:f}),Object.keys(o).length;const v=m=>{const b=[];return Object.keys(o).map(y=>{const C=o[y].fn(m),L=o[y].ref.querySelector("[data-icon-securities]").querySelector("i");b.push(C),C?(L.classList.remove("tri-times-circle"),L.classList.add("tri-check-circle","is-success")):(L.classList.remove("tri-check-circle","is-success"),L.classList.add("tri-times-circle"))}),b.filter(y=>y).length},w=m=>{const b=Number((m/Object.keys(o).length*100).toFixed(0));b<=50&&b>0?(t.style.width="50%",t.style.backgroundColor=n):b<=99&&b>50?(t.style.width="75%",t.style.backgroundColor=e):b===100?(t.style.width="100%",t.style.backgroundColor=i):(t.style.width="0%",t.style.backgroundColor=l)},x=m=>{const b=m.target.value,y=v(b);w(y)};s.addEventListener("input",x),a.setAttribute("data-gauges-initialized","true")})},B=()=>{const c=document.querySelectorAll("[data-show-pwd]");c&&c.forEach(a=>{const i=e=>{e.classList.contains("tri-eye")?(e.classList.remove("tri-eye"),e.classList.add("tri-eye-slash")):(e.classList.remove("tri-eye-slash"),e.classList.add("tri-eye"))},l=e=>{const s=e.parentNode.parentNode;let t=s.querySelector("input");t||(t=s.parentNode.querySelector("input")),t.type==="password"?t.type="text":t.type="password"},n=e=>{const s=e.target;i(s),l(s)};a.addEventListener("click",n),a.setAttribute("data-iconsShowPwd-initialized","true")})},j=()=>{I(),A(),k(),E(),z(),N(),O(),M(),$(),T(),V(),B()};let D=!1;D||document.addEventListener("DOMContentLoaded",function(){j(),D=!0;const c={attributes:!0,childList:!0,subtree:!0};new MutationObserver(function(i){i.forEach(function(l){const n=l.target;if(n){const e=n.querySelectorAll("[data-modal-context]"),s=n.querySelectorAll(".accordions"),t=n.querySelectorAll(".countdown"),d=n.querySelectorAll("[data-tabs-context]"),u=n.querySelectorAll("[data-autocomplete-context]"),o=n.querySelectorAll('[data-variant="auto"]'),r=n.querySelectorAll(".segmented-control-item"),f=document.querySelectorAll(".textarea"),g=document.querySelectorAll(".progress-radial"),p=document.querySelectorAll(".range-container"),h=document.querySelectorAll(".chips-list"),v=n.querySelectorAll("[data-select-name]"),w=document.querySelectorAll("[data-has-gauge]"),x=document.querySelectorAll("[data-show-pwd]"),S=n.querySelectorAll("[data-expandable-row]");[{modal:e},{accordion:s},{tab:d},{countdown:t},{autocomplete:u},{fontVariant:o},{segmentedControl:r},{textareas:f},{ranges:p},{progressRadials:g},{chips:h},{selects:v},{gauges:w},{iconsShowPwd:x},{tableexpansion:S}].forEach(m=>{const b=Object.keys(m)[0];m[b].length&&m[b].forEach(y=>{if(y.getAttribute(`data-${b}-initialized`)!=="true")switch(y.setAttribute(`data-${b}-initialized`,"true"),b){case"modal":return A();case"tab":return I();case"countdown":return E();case"autocomplete":return N();case"fontVariant":return k();case"segmentedControl":return O();case"textareas":return M();case"chips":return $();case"selects":return T();case"ranges":return W(y);case"progressRadials":return F(y,H);case"gauges":return V();case"iconsShowPwd":return B();case"tableexpansion":return z();default:return j()}})})}})}).observe(document.documentElement,c)})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trilogy-ds/vanilla",
3
- "version": "0.0.1-beta.9",
3
+ "version": "0.0.4-beta-v4",
4
4
  "author": "Bouygues Telecom",
5
5
  "main": "lib/trilogy-ds-vanilla.js",
6
6
  "scripts": {
@@ -12,11 +12,12 @@
12
12
  },
13
13
  "license": "ISC",
14
14
  "dependencies": {
15
- "eslint": "4.19.1",
16
- "typescript": "^4.1.5",
15
+ "@storybook/builder-webpack5": "8.1.10",
16
+ "eslint": "^9.5.0",
17
+ "fork-ts-checker-webpack-plugin": "^6.1.0",
17
18
  "rimraf": "^3.0.2",
18
19
  "ts-loader": "^8.0.17",
19
- "fork-ts-checker-webpack-plugin": "^6.1.0",
20
+ "typescript": "^4.1.5",
20
21
  "vite": "^4.5.2",
21
22
  "vite-tsconfig-paths": "^4.3.1"
22
23
  }
package/src/app.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { initModals } from './components/modal'
2
2
  import { initVariant } from './components/font-variant'
3
3
  import { initCountdowns } from './components/countdown'
4
- import { initAccordions } from './components/accordion'
5
4
  import { initTableExpansion } from './components/table-expansion'
6
5
  import { initTabs } from './components/tabs'
7
6
  import { initAutocomplete } from './components/autocomplete'
@@ -21,7 +20,6 @@ const loadVanilla = () => {
21
20
  initVariant()
22
21
  initCountdowns()
23
22
  initTableExpansion()
24
- initAccordions()
25
23
  initAutocomplete()
26
24
  initSegmentedControl()
27
25
  initTextarea()
@@ -100,8 +98,6 @@ if (!isInitialized) {
100
98
  return initModals()
101
99
  case 'tab':
102
100
  return initTabs()
103
- case 'accordion':
104
- return initAccordions()
105
101
  case 'countdown':
106
102
  return initCountdowns()
107
103
  case 'autocomplete':
@@ -1,37 +0,0 @@
1
- const _closeAccordionContexts = (accordionsContexts: NodeListOf<HTMLElement>) => {
2
- if (accordionsContexts.length) {
3
- accordionsContexts.forEach((accordionContext: HTMLElement) => {
4
- const accordionButton = accordionContext.querySelector('button.toggle')
5
- accordionContext.classList.remove('is-active')
6
- accordionButton.setAttribute('aria-expanded', 'false')
7
- })
8
- }
9
- }
10
-
11
- const _loadAccordion = (accordion: HTMLElement) => {
12
- const accordionsContexts: NodeListOf<HTMLElement> = accordion.querySelectorAll('[data-accordion-context]')
13
- accordionsContexts.forEach((context) => {
14
- const toggle = context.querySelector('[data-accordion-toggle]')
15
- const accordionButton = context.querySelector('button.toggle')
16
- toggle.addEventListener('click', () => {
17
- if (!context.classList.contains('is-disabled')) {
18
- if (context.classList.contains('is-active')) {
19
- context.classList.remove('is-active')
20
- accordionButton.setAttribute('aria-expanded', 'false')
21
- } else {
22
- _closeAccordionContexts(accordionsContexts)
23
- context.classList.toggle('is-active')
24
- accordionButton.setAttribute('aria-expanded', 'true')
25
- }
26
- }
27
- })
28
- })
29
- accordion.setAttribute('data-accordion-initialized', 'true')
30
- }
31
-
32
- export const initAccordions = () => {
33
- const allAccordions = document.querySelectorAll('[data-accordion], .accordions')
34
- allAccordions.forEach((accordion: HTMLElement) => {
35
- _loadAccordion(accordion)
36
- })
37
- }