(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[508],{2741:(e,a,l)=>{Promise.resolve().then(l.bind(l,1694)),Promise.resolve().then(l.bind(l,9564)),Promise.resolve().then(l.bind(l,2934)),Promise.resolve().then(l.bind(l,899))},2934:(e,a,l)=>{"use strict";l.d(a,{SearchType:()=>i});var r=l(5462),t=l(5952),s=l(7290),n=l(6074);let i=()=>{let e=(0,s.c3)("DentalClinic"),{searchState:a,setSearchType:l}=(0,n.S)();return(0,r.jsx)("div",{className:"max-w-[340px] w-full",children:(0,r.jsx)(t.Iz,{onChange:e=>l(e),options:[{label:e("search.area.title"),value:"area"},{label:e("search.name.title"),value:"name"}],value:a.searchType})})}},4389:(e,a,l)=>{"use strict";l.d(a,{S:()=>n});var r=l(932),t=l(678);let s={AREA:"area"},n=()=>{let e=(0,r.useRouter)(),a=(0,r.useSearchParams)(),l=(0,t.useMemo)(()=>{let e=a.get("type")||s.AREA,l=parseInt(a.get("page")||"1",10),r={};if("area"===e){let e=a.get("pref")||"",l=a.get("city")||"",t=a.get("area")||"";e&&(r.area={pref:e,city:l,area:t})}else if("name"===e){let e=a.get("name")||"";e&&(r.name=e)}return{filters:r,page:l,searchType:e}},[a]),n=(0,t.useCallback)(l=>{let r=new URLSearchParams(a);Object.entries(l).forEach(e=>{let[a,l]=e;void 0===l||""===l?r.delete(a):r.set(a,l)}),e.push("?".concat(r.toString()),{scroll:!1})},[e,a]),i=(0,t.useCallback)(e=>{let a={page:"1"};if("area"===l.searchType){var r,t,s;a.pref=(null==(r=e.area)?void 0:r.pref)||void 0,a.city=(null==(t=e.area)?void 0:t.city)||void 0,a.area=(null==(s=e.area)?void 0:s.area)||void 0,a.name=void 0}else"name"===l.searchType&&(a.name=e.name||void 0,a.pref=void 0,a.city=void 0,a.area=void 0);n(a)},[l.searchType,n]);return{searchState:l,setFilters:i,setPage:(0,t.useCallback)(e=>{n({page:e.toString()})},[n]),setSearchType:(0,t.useCallback)(e=>{let a={type:e,page:"1"};"area"===e?a.name=void 0:"name"===e&&(a.pref=void 0,a.city=void 0),n(a)},[n])}}},6074:(e,a,l)=>{"use strict";l.d(a,{S:()=>r.S});var r=l(4389)},9564:(e,a,l)=>{"use strict";l.d(a,{Search:()=>y});var r=l(5462),t=l(7290),s=l(6732),n=l(4808),i=l(6290),c=l(6074),o=l(5952),d=l(2161),u=l(4389);let m=()=>{var e;let a=(0,t.c3)("DentalClinic"),{searchState:l,setFilters:s}=(0,u.S)(),{pref:n,city:i,area:c}=(null==(e=l.filters)?void 0:e.area)||{},m=(0,d.$U)(),h=n?(0,d.i6)(n):[],v=n&&i?(0,d.j8)(n,i):[];return(0,r.jsxs)("div",{className:"w-full md:w-[280px] flex flex-col gap-[8px] justify-center",children:[(0,r.jsx)(o.l6,{name:"pref",value:n||"",onChange:e=>s({area:{pref:e.target.value,city:"",area:""}}),options:[{label:a("search.area.pref"),value:""},...m.map(e=>({label:e,value:e}))]}),n&&h.length>0&&(0,r.jsx)(o.l6,{name:"city",value:i||"",onChange:e=>{s({area:{pref:n,city:e.target.value,area:""}})},options:[{label:a("search.area.city"),value:""},...h.map(e=>({label:e,value:e}))||[]]}),n&&i&&v.length>0&&(0,r.jsx)(o.l6,{name:"area",value:c||"",onChange:e=>{s({area:{pref:n,city:i,area:e.target.value}})},options:[{label:a("search.area.area"),value:""},...v.map(e=>({label:e,value:e}))||[]]})]})};var h=l(678);let v=()=>{let e=(0,t.c3)(),{searchState:a,setFilters:l}=(0,c.S)(),[s,n]=(0,h.useState)(a.filters.name||"");return(0,r.jsxs)("div",{className:"w-full flex gap-[8px] justify-center",children:[(0,r.jsx)(o.pd,{className:"w-full md:w-[280px]",placeholder:e("DentalClinic.search.name.placeholder"),value:s,onChange:e=>n(e.target.value)}),(0,r.jsx)(o.$n,{variant:"secondary",size:"sm",onClick:()=>l({name:s}),className:"min-w-[96px]",children:e("Common.search.submit")})]})};var p=l(8097);let x=e=>{let{name:a,address:l,publishedAt:t,url:s}=e,n=t&&Date.now()-new Date(t).getTime()<3456e5;return(0,r.jsxs)("div",{className:"w-full p-[8px]",children:[(0,r.jsxs)("div",{className:"flex items-center gap-[8px]",children:[n&&(0,r.jsx)(o.Ex,{variant:"primary",children:"NEW"}),s?(0,r.jsx)("div",{className:"text-lg font-bold text-[#0030FF]",children:(0,r.jsx)(o.Gr,{href:s,target:"_blank",children:a})}):(0,r.jsx)("div",{className:"text-lg font-bold",children:a})]}),(0,r.jsx)("div",{className:"text-md font-medium",children:(e=>{let a=["".concat(e.prefecture).concat(e.city).concat(e.address)];return e.building&&a.push(e.building),e.floor&&a.push(e.floor),a.join(" ")})(l)})]})},f=e=>{let{items:a}=e;return(0,r.jsx)("div",{className:"w-full flex flex-col divide-y divide-[#45aab9]",children:null==a?void 0:a.map(e=>(0,r.jsx)(x,{...e},e.id))})},g=e=>{let{totalPages:a}=e,{searchState:l,setPage:t}=(0,c.S)();return(0,r.jsx)(o.dK,{currentPage:l.page,totalPages:a,onChange:t,variant:"secondary"})},j=()=>{let{showBoundary:e}=(0,s.Md)(),a=(0,t.c3)("DentalClinic"),{searchState:l}=(0,c.S)(),[n,i]=(0,h.useState)([]),[o,u]=(0,h.useState)(0),[m,v]=(0,h.useState)(!0);return((0,h.useEffect)(()=>{(async()=>{if("area"===l.searchType&&!l.filters.area||"name"===l.searchType&&!l.filters.name)return v(!1);v(!0);try{let e=await (0,p.WV)({conditions:((e,a)=>{if("area"===e){let e=(0,d.$U)().find(e=>{var l;return e===(null==(l=a.area)?void 0:l.pref)}),l=e?(0,d.i6)(e).find(e=>{var l;return e===(null==(l=a.area)?void 0:l.city)}):"",r=e&&l?(0,d.j8)(e,l).find(e=>{var l;return e===(null==(l=a.area)?void 0:l.area)}):"";return{area:{pref:e,city:l,area:r}}}return"name"===e?{name:a.name}:{}})(l.searchType,l.filters||{}),offset:(l.page-1)*50,limit:50});i(e.contents),u(e.totalCount)}catch(a){e(a)}finally{v(!1)}})()},[l,e]),!m&&("area"!==l.searchType||l.filters.area)&&("name"!==l.searchType||l.filters.name))?(0,r.jsxs)(r.Fragment,{children:[void 0!==o&&(0,r.jsx)("div",{className:"text-sm font-bold",children:a.rich("search.total",{count:o,total:e=>(0,r.jsx)("span",{className:"text-[#45aab9]",children:e})})}),(0,r.jsx)(f,{items:n}),o?(0,r.jsx)(g,{totalPages:Math.ceil(o/50)}):(0,r.jsx)("div",{className:"text-lg font-bold",children:a("notFound")})]}):null},y=()=>{let e=(0,t.c3)("Common"),{searchState:a}=(0,c.S)();return(0,r.jsxs)(n.lq,{className:"flex items-center justify-center flex-col gap-[16px]",children:["name"===a.searchType&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(i.D,{level:2,children:[(0,r.jsx)("span",{className:"text-[#45aab9]",children:"名前"}),"で探す"]}),(0,r.jsx)(v,{})]}),"area"===a.searchType&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(i.D,{level:2,children:[(0,r.jsx)("span",{className:"text-[#45aab9]",children:"地域"}),"で探す"]}),(0,r.jsx)(m,{})]}),(0,r.jsx)(s.tH,{FallbackComponent:()=>(0,r.jsx)("div",{className:"text-lg font-bold",children:e("error")}),children:(0,r.jsx)(j,{})})]})}}},e=>{e.O(0,[75,793,651,271,638,358],()=>e(e.s=2741)),_N_E=e.O()}]);