ユメギワユイ/大谷萌/sanoha/鈴木千絵

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/18sat、5月のお誕生日をお祝い ユメギワユイ/大谷萌 […]

¥3000

野崎万葉

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/19sun昼、野崎万葉🐶ひろはっぴーぷちわんまん!vol […]

¥3000

@ろくたん/胡桃沢はな/ARK

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/19sun、シャクヤク @ろくたん/胡桃沢はな/ARK […]

はらあやの / 花桐はづき

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/25sat夜、ayano & Partenair […]

小松みゆ/大谷萌/藤本あかり

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/26sun、オリーブ 小松みゆ/大谷萌/藤本あかり OP […]

高尾彩佳/Moelys/younA

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/27mon、Music Park #74 高尾彩佳/Mo […]

百山月花/おおきあさみ/乙羽ゆか

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/28tue夜、御茶ノ水最高裁判所 5 (20) MC:百 […]

¥3000

實石亜也子/牧野くみ/そたか

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

5/30thu、Music Park #76 實石亜也子/牧 […]

きぬか/実歩/彩未凛/幻奏法師

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/1sat、カスミソウ きぬか/実歩/彩未凛/幻奏法師 O […]

柊弥。/森田竜也/飛遥/dual6

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/5wed、Music Park #77 柊弥。/森田竜也 […]

せりかな/清原ありさ/marina

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/8sat、ジャスミン せりかな/清原ありさ/marina […]

SAEKA/tami/成田あより/mibuki

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/8sat、パルトネール×mibuki presents. […]

¥3000

宮本沙也佳/藤本あかり/清野あやね

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/14fri、シモツケ 宮本沙也佳/藤本あかり/清野あやね […]

¥3000

佑月/凪波/蜜城結々/そたか

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/16sun、ベロニカ 佑月/凪波/蜜城結々/そたか OP […]

¥3000

春歌/大希幸子/佐々木かの

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/17mon、Music Park #79 春歌/大希幸子 […]

冴夜 / 大谷萌 / 野崎万葉

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/22sat昼、スイカズラ 冴夜 / 大谷萌 / 野崎万葉 […]

純美音

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/22sat、純美音&Partenaire pre […]

はらあやの/sanoha

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/23sun、ayano & Partenaire […]

百山月花/しおたん

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/25tue夜、御茶ノ水最高裁判所 6 (21) MC:百 […]

椎名涼花/mona/Kyon/千葉沙織

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/28fri、ゼラニウム 椎名涼花/mona/Kyon/千 […]

¥3000

つみキャロ/@ろくたん/柊弥。

御茶ノ水パルトネール 千代田区神田駿河台3-1大雅ビル3F 東京都 日本

6/30sun、ブーゲンビリア つみキャロ/@ろくたん/柊弥 […]

`,props)} var external_wp_i18n_=__webpack_require__("l3Sj");function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})),keys.push.apply(keys,symbols)}return keys} function _objectSpread(target){for(var i=1;i{if(timerElement.dataset.token&&timerElement.dataset.postId&&timerElement.dataset.redirectUrl){token=timerElement.dataset.token;postId=timerElement.dataset.postId;redirectUrl=timerElement.dataset.redirectUrl;return!0} return!1});if(!(token&&postId&&redirectUrl)){return null} return{token,postId,redirectUrl}} function setTimerTimeLeft(timerElement,minutes,seconds){timerElement.classList.remove(hiddenClassName);const minutesElement=timerElement.querySelector('.tec-tickets-seating__time-minutes');const secondsElement=timerElement.querySelector('.tec-tickets-seating__time-seconds');if(!minutesElement||!secondsElement){return} minutesElement.innerText=minutes;secondsElement.innerText=String(seconds).padStart(2,'0')} function fetchInterruptModalData(){return _fetchInterruptModalData.apply(this,arguments)} function _fetchInterruptModalData(){_fetchInterruptModalData=asyncToGenerator_default()(function*(){const{postId,token}=findTimerData();const requestUrl=new URL(ajaxUrl);requestUrl.searchParams.set('_ajaxNonce',ajaxNonce);requestUrl.searchParams.set('action',ACTION_INTERRUPT_GET_DATA);requestUrl.searchParams.set('postId',postId);requestUrl.searchParams.set('token',token);const response=yield fetch(requestUrl.toString(),{method:'GET'});const defaultData={title:Object(external_wp_i18n_._x)('Time limit expired','Seat selection expired timer title','event-tickets'),content:Object(external_wp_i18n_._x)('Your seat selections are no longer reserved, but tickets are still available.','Seat selection expired timer content','event-tickets'),buttonLabel:Object(external_wp_i18n_._x)('Find Seats','Seat selection expired timer button label','event-tickets'),redirectUrl:window.location.href};if(!response.ok){console.error('Failed to fetch interrupt modal data');return defaultData} const responseJson=yield response.json();if(!(responseJson.success&&responseJson.data)){console.error('Failed to fetch interrupt modal data');return defaultData} return{title:responseJson.data.title||defaultData.title,content:responseJson.data.content||defaultData.content,buttonLabel:responseJson.data.buttonLabel||defaultData.buttonLabel,redirectUrl:responseJson.data.redirectUrl||defaultData.redirectUrl}});return _fetchInterruptModalData.apply(this,arguments)} function getInterruptDialogElement(){return _getInterruptDialogElement.apply(this,arguments)} function _getInterruptDialogElement(){_getInterruptDialogElement=asyncToGenerator_default()(function*(){var _getTimerElements;const firstTimerElement=(_getTimerElements=getTimerElements())===null||_getTimerElements===void 0?void 0:_getTimerElements[0];if(!firstTimerElement){console.warn('No timer element found');return null} const dialogDataJSAttribute='dialog-content-tec-tickets-seating-timer-interrupt';const{title,content,buttonLabel,redirectUrl}=yield fetchInterruptModalData();firstTimerElement.dataset.content=dialogDataJSAttribute;let appendTarget='.tec-tickets-seating__timer';const dialogParent=firstTimerElement.closest('.tribe-dialog');if(dialogParent){appendTarget='.tribe-tickets__tickets-form, .tec-tickets-seating__tickets-block'} if(!interruptDialogElement){var _targetDom$querySelec;interruptDialogElement=InterruptDialogComponent({dataJs:dialogDataJSAttribute,title,content,buttonLabel,redirectUrl});(_targetDom$querySelec=targetDom.querySelector(appendTarget))===null||_targetDom$querySelec===void 0?void 0:_targetDom$querySelec.appendChild(interruptDialogElement)} return new A11yDialog({trigger:'.tec-tickets-seating__timer',appendTarget,wrapperClasses:'tribe-dialog',overlayClasses:'tribe-dialog__overlay tribe-modal__overlay',contentClasses:'tribe-dialog__wrapper tribe-tickets-seating__interrupt-wrapper',overlayClickCloses:!1})});return _getInterruptDialogElement.apply(this,arguments)} function interrupt(){return _interrupt.apply(this,arguments)} function _interrupt(){_interrupt=asyncToGenerator_default()(function*(){if(!isInterruptable()){return} setIsInterruptable(!0);getTimerElements().forEach(timerElement=>{setTimerTimeLeft(timerElement,0,0)});setIsExpired(!0);clearTimeout(countdownTimeoutId);countdownTimeoutId=null;clearTimeout(healthCheckTimeoutId);healthCheckTimeoutId=null;const interruptDialog=yield getInterruptDialogElement();Object(external_wp_hooks_.doAction)('tec.tickets.seating.timer_interrupt');if(interruptDialog){interruptDialog.show();interruptDialog.shown=!1} setIsInterruptable(!1)});return _interrupt.apply(this,arguments)} function beaconInterrupt(){if(!isInterruptable()){return} const{postId,token}=findTimerData();const requestUrl=new URL(ajaxUrl);requestUrl.searchParams.set('_ajaxNonce',ajaxNonce);requestUrl.searchParams.set('action',ACTION_INTERRUPT_GET_DATA);requestUrl.searchParams.set('postId',postId);requestUrl.searchParams.set('token',token);window.navigator.sendBeacon(requestUrl.toString())} function startCountdownLoop(secondsLeft){if(!isInterruptable()){return} if(secondsLeft<=0){interrupt();return} setIsStarted(!0);countdownTimeoutId=setTimeout(()=>{secondsLeft-=1;getTimerElements().forEach(timerElement=>{setTimerTimeLeft(timerElement,Math.floor(secondsLeft/60),secondsLeft%60)});if(!isExpired()){startCountdownLoop(secondsLeft)}},1000)} function startHealthCheckLoop(){if(isExpired()||!isInterruptable()){return} healthCheckTimeoutId=setTimeout(asyncToGenerator_default()(function*(){yield syncWithBackend();startHealthCheckLoop()}),3*1000)} function syncWithBackend(){return _syncWithBackend.apply(this,arguments)} function _syncWithBackend(){_syncWithBackend=asyncToGenerator_default()(function*(){if(isExpired()||getTimerElements().length===0||!isInterruptable()){return} const secondsLeft=yield requestToBackend(ACTION_SYNC);if(secondsLeft<=0){interrupt();return} if(countdownTimeoutId){clearTimeout(countdownTimeoutId);countdownTimeoutId=null} startCountdownLoop(secondsLeft);if(!healthCheckTimeoutId){startHealthCheckLoop()}});return _syncWithBackend.apply(this,arguments)} function requestToBackend(_x2){return _requestToBackend.apply(this,arguments)} function _requestToBackend(){_requestToBackend=asyncToGenerator_default()(function*(action){const timerData=findTimerData();if(timerData===null){return!1} if([ACTION_START,ACTION_SYNC].indexOf(action)===-1){return!1} const requestUrl=new URL(ajaxUrl);requestUrl.searchParams.set('_ajaxNonce',ajaxNonce);requestUrl.searchParams.set('action',action);requestUrl.searchParams.set('token',timerData.token);requestUrl.searchParams.set('postId',timerData.postId);const response=yield fetch(requestUrl.toString(),{method:'POST'});if(!response.ok){return!1} const responseJson=yield response.json();if(!(responseJson.success&&responseJson.data.secondsLeft&&responseJson.data.timestamp)){console.error('Failed to communicate with the backend');return!1} const startTimerResponse=responseJson.data;return startTimerResponse.secondsLeft-Math.max(0,Math.floor(startTimerResponse.timestamp-Date.now()/1000))});return _requestToBackend.apply(this,arguments)} function start(){return _start.apply(this,arguments)} function _start(){_start=asyncToGenerator_default()(function*(){if(setIsStarted()||getTimerElements().length===0){return} const secondsLeft=yield requestToBackend(ACTION_START);const{postId,token}=findTimerData();if(!(secondsLeft&&postId&&token)){interrupt();return} const minutes=Math.floor(secondsLeft/60);const seconds=secondsLeft%60;getTimerElements().forEach(timerElement=>{setTimerTimeLeft(timerElement,minutes,seconds)});setIsStarted(!0);startCountdownLoop(secondsLeft);startHealthCheckLoop()});return _start.apply(this,arguments)} function session_reset(){if(countdownTimeoutId){clearTimeout(countdownTimeoutId)} if(healthCheckTimeoutId){clearTimeout(healthCheckTimeoutId)} if(resumeTimeoutId){clearTimeout(resumeTimeoutId)} started=!1;expired=!1;healthCheckTimeoutId=null;countdownTimeoutId=null;resumeTimeoutId=null;interruptable=!0;stopWatchingCheckoutControls()} function pause(){setIsInterruptable(!1);if(healthCheckTimeoutId){clearTimeout(healthCheckTimeoutId);healthCheckTimeoutId=null} if(countdownTimeoutId){clearTimeout(countdownTimeoutId);countdownTimeoutId=null} resumeTimeoutId=setTimeout(resume,30000)} function resume(){return _resume.apply(this,arguments)} function _resume(){_resume=asyncToGenerator_default()(function*(){if(resumeTimeoutId){clearTimeout(resumeTimeoutId);resumeTimeoutId=null} setIsInterruptable(!0);yield syncWithBackend()});return _resume.apply(this,arguments)} function setTargetDom(targetDocument){targetDom=targetDocument||document} function syncOnLoad(){return _syncOnLoad.apply(this,arguments)} function _syncOnLoad(){_syncOnLoad=asyncToGenerator_default()(function*(){const syncTimerElements=Array.from(getTimerElements()).filter(syncTimerElement=>{return'syncOnLoad' in syncTimerElement.dataset});if(syncTimerElements.length===0){return} setIsInterruptable(!0);window.addEventListener('beforeunload',beaconInterrupt);yield syncWithBackend()});return _syncOnLoad.apply(this,arguments)} function watchCheckoutControls(){const filteredCheckoutControls=Object(external_wp_hooks_.applyFilters)('tec.tickets.seating.frontend.session.checkoutControls',checkoutControlsSelectors);const checkoutControlElements=targetDom.querySelectorAll(filteredCheckoutControls);checkoutControlElements.forEach(checkoutControlElement=>{watchedCheckoutControls.push(checkoutControlElement);checkoutControlElement.addEventListener('click',pause);checkoutControlElement.addEventListener('submit',pause)})} function stopWatchingCheckoutControls(){watchedCheckoutControls.forEach(checkoutControlElement=>{checkoutControlElement.removeEventListener('click',pause);checkoutControlElement.removeEventListener('submit',pause)});watchedCheckoutControls=[]} function getWatchedCheckoutControls(){return watchedCheckoutControls} function setHealthcheckLoopId(id){healthCheckTimeoutId=id;return healthCheckTimeoutId} function getHealthcheckTimeoutId(){return healthCheckTimeoutId} function getCountdownTimeoutId(){return countdownTimeoutId} function getResumeTimeoutId(){return resumeTimeoutId} Object(external_tec_tickets_seating_utils_.onReady)(()=>syncOnLoad());Object(external_tec_tickets_seating_utils_.onReady)(()=>watchCheckoutControls());window.tec=window.tec||{};window.tec.tickets=window.tec.tickets||{};window.tec.tickets.seating=window.tec.tickets.seating||{};window.tec.tickets.seating.frontend=window.tec.tickets.seating.frontend||{};window.tec.tickets.seating.frontend.session=_objectSpread(_objectSpread({},window.tec.tickets.seating.frontend.session||{}),{},{start,reset:session_reset,syncOnLoad,interrupt,setIsInterruptable})}),"MsaN":(function(module,exports){module.exports=tec.tickets.seating.utils}),"g56x":(function(module,exports){module.exports=wp.hooks}),"l3Sj":(function(module,exports){module.exports=wp.i18n}),"lo4d":(function(module,exports,__webpack_require__){})})