(()=>{const t=window.jQuery,i={rankingNavigationSelector:".ranking_navigation",rankingUnitBtnSelector:".ranking_unit_btn",navOnClassName:"nav_on",rankingUnitSelectSelector:".ranking_unit_select",listWrapSelector:".ajax_itemlist_box",listSelector:".slider_box, .itemlist_box",itemListLinkSelector:".item_list_link",invisibleClassName:""};class n{constructor(n,e){this.$wrapElement=t(n),this.options={...i,...e}}init(){if(this.validate()&&(this.setupChangeUnitEvent(),"/"===location.pathname||"/phone/"===location.pathname)){const t=this.$wrapElement.find(this.options.listWrapSelector).children(this.options.listSelector),i=t.first();this.hide(t),this.show(i)}}validate(){return this.$wrapElement.find(this.options.rankingNavigationSelector).length>0}setupChangeUnitEvent(){this.$wrapElement.find(this.options.rankingUnitBtnSelector).click((i=>{i.preventDefault();const n=t(i.currentTarget).data("ranking-unit");this.changeUnit(n)})),this.$wrapElement.find(this.options.rankingUnitSelectSelector).change((i=>{const n=t(i.currentTarget);this.changeUnit(n.first().val())}))}changeUnit(t){const i=this.$wrapElement.find(this.options.rankingUnitBtnSelector),n=i.filter(`[data-ranking-unit=${t}]`),e=this.$wrapElement.find(this.options.rankingUnitSelectSelector),s=this.$wrapElement.find(this.options.listWrapSelector).children(this.options.listSelector),a=this.$wrapElement.find(this.options.listWrapSelector).children(`[data-ranking-unit=${t}]`),o=this.$wrapElement.find(this.options.itemListLinkSelector);i.removeClass(this.options.navOnClassName),n.addClass(this.options.navOnClassName),e.val()!==t&&e.val(t),this.hide(s),this.show(a);const l=/[?].*/;o.attr("href",((i,n)=>{const e=l.exec(n);return"0"!==t?e?n.replace(l,`?unit=${t}`):`${n}?unit=${t}`:e?n.replace(l,""):void 0}))}show(t){""!==this.options.invisibleClassName?t.removeClass(this.options.invisibleClassName):t.show()}hide(t){""!==this.options.invisibleClassName?t.addClass(this.options.invisibleClassName):t.hide()}}window.initRankingTab=function(i,e=[]){t(i).each(((t,i)=>{new n(i,e).init()}))}})();