PageSourceSearch

https://excamp.jp/_next/static/chunks/pages/host/dashboard/[id]/messages/[msgid]-80b9d2d60548fdf6.js

js excamp.jp collected 2026-10-04 15:19:59 UTC 10,023 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2423],{85886:function(e,s,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/host/dashboard/[id]/messages/[msgid]",function(){return a(28323)}])},31554:function(e,s,a){"use strict";a.d(s,{oL:function(){return o},CT:function(){return d},WN:function(){return m}});var n=a(69297),t=a(33944),r=a(29204),l=a(103),c=a(95591),i=a(49770);let d=()=>{let e=!!localStorage.getItem("accessToken"),{data:s,isLoading:a,error:n}=(0,i.Z)(e?"/auth/users/me/":null,e=>t.h.get(e).then(e=>e.data));return{me:s,isLoading:a,error:n}},o=e=>{var s;return(0,r.IZ)(e)&&!!(null===(s=e.response)||void 0===s?void 0:s.data)&&"email"in e.response.data},m=e=>{let{onFulfilled:s,onError:a}=e||{},{mutate:t}=(0,c.kY)(),[{loading:r,error:i},d]=(0,l.Z)(async e=>{let{user:r}=e;try{let e=await (0,n.PR)({body:{...r}});await t("/auth/users/me/",e,{revalidate:!1}),null==s||s()}catch(e){throw null==a||a(),e}});return{handlePutAuthUserMe:d,isLoading:r,error:i}}},28323:function(e,s,a){"use strict";a.r(s),a.d(s,{default:function(){return R}});var n=a(85893),t=a(55044),r=a(67294),l=a(41330),c=a(28837),i=a(34051),d=a(31555),o=a(35005),m=a(45412),h=a.n(m),u=a(11163),x=a(76743),g=a(69297),j=a(21095),f=a(87930);let p=e=>{let{bookingUuid:s,isModalShow:a,closeModal:t}=e,[l,c]=(0,r.useState)(""),{handleRejectBooking:i}=(0,x.qF)();return(0,n.jsxs)(f.Z,{show:a,onHide:t,centered:!0,children:[(0,n.jsxs)(f.Z.Header,{closeButton:!0,children:[(0,n.jsx)(f.Z.Title,{children:"予約を拒否しますか?"}),(0,n.jsx)("hr",{})]}),(0,n.jsxs)(f.Z.Body,{children:[(0,n.jsx)("p",{children:"拒否に関してメッセージを記入してください。"}),(0,n.jsx)("div",{children:(0,n.jsx)("input",{id:"rejection-message",type:"text",className:"form-control",name:"base_price",value:l,onInput:e=>c(e.target.value)})})]}),(0,n.jsxs)(f.Z.Footer,{children:[(0,n.jsx)(d.Z,{className:"d-grid",children:(0,n.jsx)(o.Z,{disabled:!l,variant:"primary",onClick:()=>{i(s,l).then(()=>location.reload())},children:"拒否する"})}),(0,n.jsx)(d.Z,{className:"d-grid",children:(0,n.jsx)(o.Z,{variant:"outline-primary",onClick:t,children:"キャンセル"})})]})]})};var _=a(80574),N=a.n(_),b=a(36968),v=a(60155),Z=a(31554),C=a(25011),y=a(13860),w=a.n(y),k=a(56899);let S=e=>e.toLocaleString("ja-JP",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"}),F=e=>{let{bookingUser:s,bookingUuid:a,checkoutDate:t,isCancelled:i}=e,[d,m]=(0,r.useState)(""),{markReadMessages:h}=(0,x.zo)(),[u,g]=(0,r.useState)(!1);(0,r.useEffect)(()=>{g(!(0,C.gO)(w()(t).add(1,"day").toString())||i)},[t,i]);let{me:j}=(0,Z.CT)(),{ownerId:f,avatar:p}=(0,r.useMemo)(()=>{var e,s;return{ownerId:null!==(e=null==j?void 0:j.id)&&void 0!==e?e:0,avatar:null!==(s=null==j?void 0:j.avatar)&&void 0!==s?s:""}},[j]),{messages:_,setMsgReloadNeeded:y,isLoading:F}=(0,x.SM)(a),{handleHostSendMessage:T,isLoading:E}=(0,x.Km)();(0,r.useEffect)(()=>{E||y(!0)},[E,y]);let L=(0,r.useRef)(null);return((0,r.useEffect)(()=>{if(!L||!L.current)return;let e=_.filter(e=>e.unread&&e.user_id!==f);e.length&&e.forEach(e=>{let s=e.id;s&&h(s)}),L.current.scrollTop=L.current.scrollHeight},[_]),F)?(0,n.jsx)("div",{className:"w-100 bg-light d-flex align-items-center justify-content-center h-full",children:(0,n.jsx)(b.Z,{className:"m-auto",animation:"border"})}):(0,n.jsxs)(c.Z,{className:"".concat(N().innerCard," p-4"),ref:L,children:[_.map((e,a)=>e.user_id===f?(0,n.jsxs)("div",{className:"d-flex ".concat(N().messageContainer),children:[(0,n.jsxs)("div",{className:"".concat(N().message," d-flex align-items-end flex-column ").concat(N().messageLeft," flex-grow-1"),children:[(0,n.jsx)("div",{children:e.body}),(0,n.jsx)("div",{className:N().timestamp,children:S(new Date(e.created_at))})]}),(0,n.jsx)(l.Z,{src:p,alt:"avatar"})]},a):(0,n.jsxs)("div",{className:"".concat(N().messageContainer," d-flex"),children:[(0,n.jsx)(l.Z,{src:s.avatar||k.Fz,alt:"avatar"}),(0,n.jsxs)("div",{className:"".concat(N().message," ").concat(N().messageRight," flex-grow-1"),children:[(0,n.jsx)("div",{children:e.body}),(0,n.jsx)("div",{className:N().timestamp,children:S(new Date(e.created_at))})]})]},a)),(0,n.jsxs)(o.Z,{onClick:()=>y(!0),className:"hstack rounded-5 align-self-center gap-2",style:{width:"fit-content"},children:[(0,n.jsx)(v.A$d,{})," 更新する"]}),(0,n.jsxs)("div",{className:"mt-3",children:[(0,n.jsx)("h5",{children:"メッセージを送る"}),(0,n.jsxs)("div",{className:"d-flex gap-2",children:[(0,n.jsx)("input",{value:d,onChange:e=>m(e.target.value),className:"form-control",type:"text",disabled:u}),(0,n.jsx)(o.Z,{className:"button flex-shrink-0 py-2",onClick:()=>{T(a,d),y(!0),m("")},disabled:u,children:"送信"})]})]})]})};var T=a(41664),E=a.n(T);let L=()=>{let e=(0,u.useRouter)(),{me:s}=(0,Z.CT)(),{msgid:a}=e.query,[t,m]=(0,r.useState)(!1),{handleAcceptBooking:f}=(0,x.lq)(),{value:_}=(0,j.Z)(async()=>
1{if(a)return(0,g.RE)({uuid:a})},[a]),N=null==_?void 0:_.user;return s&&_?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"hstack mb-4 gap-4",children:N&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(l.Z,{alt:"avatar",src:N.avatar||k.Fz,className:"rounded-circle border",height:60,width:60}),(0,n.jsx)("h6",{className:"fw-bold fs-4 mb-0",children:"".concat(N.last_name," ").concat(N.first_name)})]})}),(0,C.gO)(_.checkout_date)?(0,n.jsxs)(n.Fragment,{children:[null===_.accepted&&(0,n.jsx)(n.Fragment,{children:_.cancelled?(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約がキャンセルされました。"})}):(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsxs)(i.Z,{children:[(0,n.jsx)(d.Z,{xs:12,children:(0,n.jsx)("h6",{className:"fw-bold mb-4",children:"この予約を許可しますか?"})}),(0,n.jsx)(d.Z,{xs:6,className:"d-grid",children:(0,n.jsx)(o.Z,{className:"py-2",onClick:()=>{a&&f(a).then(()=>e.reload())},children:"許可する"})}),(0,n.jsx)(d.Z,{xs:6,className:"d-grid",children:(0,n.jsx)(o.Z,{className:"py-2",variant:"light",onClick:()=>m(!0),children:"許可しない"})})]})})}),!0===_.accepted&&(0,n.jsx)(n.Fragment,{children:_.cancelled?(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約がキャンセルされました。"})}):(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約を承認しました。"})})}),!1===_.accepted&&(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約を拒否しました。"})})]}):(0,n.jsxs)(n.Fragment,{children:[null===_.accepted&&(0,n.jsx)(n.Fragment,{children:_.cancelled?(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約がキャンセルされました。"})}):(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約のチェックアウト日が過ぎているため承認できません。"})})}),!0===_.accepted&&(0,n.jsx)(n.Fragment,{children:_.cancelled?(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約がキャンセルされました。"})}):(0,n.jsx)(c.Z,{className:"px-md-5 mb-4 p-4",children:(0,n.jsxs)(i.Z,{children:[(0,n.jsx)(d.Z,{xs:12,children:(0,n.jsx)("h6",{className:"fw-bold mb-4",children:"チェックアウト済みです。"})}),(0,n.jsx)(d.Z,{xs:12,className:"d-grid",children:(0,n.jsx)(E(),{href:e.asPath+"/review",children:(0,n.jsx)(o.Z,{className:"py-2",children:"レビューはこちらから"})})})]})})}),!1===_.accepted&&(0,n.jsx)(c.Z,{className:"".concat(h().innerCard," px-md-5 p-4"),children:(0,n.jsx)("h6",{className:"fw-bold mb-0",children:"予約を拒否しました。"})})]}),N&&a&&(0,n.jsx)(F,{bookingUser:N,bookingUuid:a,checkoutDate:_.checkout_date,isCancelled:_.cancelled}),a&&(0,n.jsx)(p,{bookingUuid:a,isModalShow:t,closeModal:()=>m(!1)})]}):(0,n.jsx)(n.Fragment,{})};var R=(0,t.t)(()=>(0,n.jsx)(L,{}))},25011:function(e,s,a){"use strict";a.d(s,{Ti:function(){return r},_O:function(){return c},gO:function(){return i},p6:function(){return l}});var n=a(13860),t=a.n(n);let r=(e,s)=>Math.ceil(Math.abs(s.getTime()-e.getTime())/864e5),l=e=>{let s=e.getFullYear().toString(),a=(e.getMonth()+1).toString().padStart(2,"0"),n=e.getDate().toString().padStart(2,"0");return"".concat(s,"-").concat(a,"-").concat(n)},c=e=>{let s=new Date().getTimezoneOffset();return new Date(new Date(Date.UTC(parseInt(e.slice(0,4)),parseInt(e.slice(5,7))-1,parseInt(e.slice(8,10)))).getTime()+(s>0?6e4*s:0))},i=e=>{let s=t()(e);return t()().isBefore(s,"day")}},80574:function(e){e.exports={cardContainer:"styles_cardContainer__HsO45",innerCard:"styles_innerCard__trMQA",messageContainer:"styles_messageContainer__3mAeo",message:"styles_message__YBStf",messageLeft:"styles_messageLeft___22tj",messageRight:"styles_messageRight__ZjHM9",timestamp:"styles_timestamp__GNlGX"}},45412:function(e){e.exports={cardContainer:"styles_cardContainer__HEo7Z",innerCard:"styles_innerCard__KzzCa",messageContainer:"styles_messageContainer__A8K47",message:"styles_message__1yQ4G",messageLeft:"styles_messageLeft__xhBoA",messageRight:"styles_messageRight___9HJe",timestamp:"styles_timestamp__rXl7r"}},41330:function(e,s,a){"use strict";var n=a(93967),t=a.n(n),r=a(67294),l=a(45697),c=a.n(l),i=a(76792),d=a(85893);c().string,c().bool,c().bool,c().bool,c().bool;let o=r.forwardRef(({bsPrefix:e,className:s,fluid:a=!1,rounded:n=!1,roundedCircle:r=!1,thumbnail:l=!1,...c},o)=>(e=(0,i.vE)(e,"img"),(0,d.jsx)("img",{ref:o,...c,className:t()(s,a&&`${e}-fluid`,n&&"rounded",r&&"rounded-circle",l&&`${e}-thumbnail`)})));o.displayName="Image",s.Z=o}},function(e){e.O(0,[4617,260,8043,6646,3958,3058,9770,5044,9774,2888,179],function(){return e(e.s=85886)}),_N_E=e.O()}]);

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.