https://truelementsjewelry.com/cdn/shop/t/119/compiled_assets/snip…?v=132966592949182063101790561182
1(function(){var __snippets__={};(function(){for(var element=document.getElementById("snippets-script"),attribute=element?element.getAttribute("data-snippets"):"",snippets=attribute.split(",").filter(Boolean),i=0;i<snippets.length;i++)__snippets__[snippets[i]]=!0})(),(function(){if(!(!__snippets__["business-day-calendar"]&&!Shopify.designMode))try{customElements.get("business-day-calendar")||customElements.define("business-day-calendar",class extends HTMLElement{connectedCallback(){if(this.initialized)return;this.initialized=!0,this.monthLabel=this.querySelector(".business-day-calendar__month"),this.body=this.querySelector("tbody"),this.nextButton=this.querySelector(".business-day-calendar__next"),this.additionalClosedDates=this.readAdditionalClosedDates();const minimumYear=Number(this.dataset.minYear),minimumMonth=Number(this.dataset.minMonth),now=new Date,japanNow=new Date(now.toLocaleString("en-US",{timeZone:"Asia/Tokyo"})),currentValue=japanNow.getFullYear()*12+japanNow.getMonth(),minimumValue=minimumYear*12+minimumMonth,initialValue=Math.max(currentValue,minimumValue);this.year=Math.floor(initialValue/12),this.month=initialValue%12,this.nextButton.addEventListener("click",()=>{this.month+=1,this.month>11&&(this.month=0,this.year+=1),this.render()}),this.render()}readAdditionalClosedDates(){const source=this.querySelector("[data-additional-closed-dates]");if(!source)return new Set;let value="";try{value=JSON.parse(source.textContent)}catch{value=""}return new Set(String(value).split(/[\s,]+/).filter(entry=>/^\d{4}-\d{2}-\d{2}$/.test(entry)).filter(entry=>{const date=new Date(`${entry}T00:00:00Z`);return!Number.isNaN(date.getTime())&&this.dateKey(date)===entry}))}dateKey(date){const year=date.getUTCFullYear(),month=String(date.getUTCMonth()+1).padStart(2,"0"),day=String(date.getUTCDate()).padStart(2,"0");return`${year}-${month}-${day}`}nthMonday(year,month,occurrence){return 1+(8-new Date(Date.UTC(year,month,1)).getUTCDay())%7+(occurrence-1)*7}vernalEquinoxDay(year){const base=year<=2099?20.8431:21.851;return Math.floor(base+.242194*(year-1980)-Math.floor((year-1980)/4))}autumnalEquinoxDay(year){const base=year<=2099?23.2488:24.2488;return Math.floor(base+.242194*(year-1980)-Math.floor((year-1980)/4))}japaneseHolidays(year){const holidays=new Set,add=(month,day)=>holidays.add(this.dateKey(new Date(Date.UTC(year,month,day))));add(0,1),add(0,this.nthMonday(year,0,2)),add(1,11),add(1,23),add(2,this.vernalEquinoxDay(year)),add(3,29),add(4,3),add(4,4),add(4,5),add(6,this.nthMonday(year,6,3)),add(7,11),add(8,this.nthMonday(year,8,3)),add(8,this.autumnalEquinoxDay(year)),add(9,this.nthMonday(year,9,2)),add(10,3),add(10,23);for(let month=0;month<12;month+=1){const lastDay=new Date(Date.UTC(year,month+1,0)).getUTCDate();for(let day=2;day<lastDay;day+=1){const current=new Date(Date.UTC(year,month,day)),previous=new Date(Date.UTC(year,month,day-1)),next=new Date(Date.UTC(year,month,day+1)),key=this.dateKey(current);!holidays.has(key)&&holidays.has(this.dateKey(previous))&&holidays.has(this.dateKey(next))&&holidays.add(key)}}
1return Array.from(holidays).forEach(key=>{const holiday=new Date(`${key}T00:00:00Z`);if(holiday.getUTCDay()!==0)return;const substitute=new Date(holiday);do substitute.setUTCDate(substitute.getUTCDate()+1);while(holidays.has(this.dateKey(substitute)));holidays.add(this.dateKey(substitute))}),holidays}render(){const firstDay=new Date(Date.UTC(this.year,this.month,1)),daysInMonth=new Date(Date.UTC(this.year,this.month+1,0)).getUTCDate(),holidays=this.japaneseHolidays(this.year),cells=[];for(let index=0;index<firstDay.getUTCDay();index+=1)cells.push(null);for(let day=1;day<=daysInMonth;day+=1)cells.push(day);for(;cells.length%7!==0;)cells.push(null);this.monthLabel.textContent=new Intl.DateTimeFormat("ja-JP",{year:"numeric",month:"long",timeZone:"UTC"}).format(firstDay),this.body.replaceChildren();for(let rowIndex=0;rowIndex<cells.length;rowIndex+=7){const row=document.createElement("tr");cells.slice(rowIndex,rowIndex+7).forEach((day,columnIndex)=>{const cell=document.createElement("td");if(day===null)cell.className="is-empty",cell.setAttribute("aria-hidden","true");else{const date=new Date(Date.UTC(this.year,this.month,day)),key=this.dateKey(date),isClosed=columnIndex===0||columnIndex===6||holidays.has(key)||this.additionalClosedDates.has(key);cell.textContent=String(day),cell.setAttribute("aria-label",`${this.year}\u5E74${this.month+1}\u6708${day}\u65E5${isClosed?" \u4F11\u696D\u65E5":""}`),isClosed&&cell.classList.add("is-closed")}row.appendChild(cell)}),this.body.appendChild(row)}}})}catch(e){console.error(e)}})(),(function(){if(!(!__snippets__["te-line-context"]&&!Shopify.designMode))try{(()=>{const key="te_line_product_v1";function validate(value,now){return!value||typeof value.path!="string"||!Number.isFinite(value.at)||now<value.at||now-value.at>864e5||!/^\/(?:[a-z]{2}(?:-[a-z]{2})?\/)?products\/[a-zA-Z0-9_-]+$/.test(value.path)||typeof value.variant!="string"||!/^\d+$/.test(value.variant)?null:value}function read(){try{return validate(JSON.parse(localStorage.getItem(key)),Date.now())}catch{return null}}document.addEventListener("click",event=>{const link=event.target.closest?.(".te-line-return__link");if(!link)return;const panel=link.closest("te-line-return"),variant=document.getElementById(panel?.dataset.form)?.querySelector('[name="id"]')?.value,entry=validate({path:location.pathname.replace(/\/collections\/[^/]+(?=\/products\/)/,""),variant,at:Date.now()},Date.now());try{entry?localStorage.setItem(key,JSON.stringify(entry)):localStorage.removeItem(key)}catch{}},!0);const bridge=document.querySelector("[data-te-line-bridge]");if(bridge&&bridge.dataset.editor!=="true"){const entry=read();if(entry){const target=new URL(entry.path,location.origin);target.searchParams.set("variant",entry.variant),target.searchParams.set("te_line_resume","1");const preview=new URL(location.href).searchParams.get("preview_theme_id");preview&&/^\d+$/.test(preview)&&target.searchParams.set("preview_theme_id",preview);const link=bridge.querySelector("[data-te-line-continue]");link.href=target.pathname+target.search,link.hidden=!1,bridge.querySelector("[data-te-line-missing]").hidden=!0,location.replace(link.href)}}const current=new URL(location.href);current.searchParams.get("te_line_resume")==="1"&&(current.searchParams.delete("te_line_resume"),history.replaceState(history.state,"",current.pathname+current.search+current.hash))})()}catch(e){console.error(e)}})(),(function(){if(!(!__snippets__["te-line-return"]&&!Shopify.designMode))try{document.addEventListener("click",function(event){const link=event.target.closest?.(".te-line-return__link");if(!link||!link.href.startsWith("https://liff.line.me/2011459855-bnUbHmj7"))return;const panel=link.closest("te-line-return"),variant=document.getElementById(panel.dataset.form)?.querySelector('[name="id"]')?.value;if(variant&&/^\d+$/.test(variant)){const target=new URL(link.href);target.searchParams.set("variant",variant),link.href=target.href}},!0)}catch(e){console.error(e)}})()})(); 2//# sourceMappingURL=/cdn/shop/t/119/compiled_assets/snippet-scripts.js.map?v=132966592949182063101790561182
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.