PageSourceSearch

https://dead-roid-666.web.app/2371.3eb0160a.chunk.js

js dead-roid-666.web.app collected 2026-10-03 12:21:56 UTC 32,856 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunkts_boilerplate=self.webpackChunkts_boilerplate||[]).push([[2371],{32371:function(e,t,n){n.r(t),n.d(t,{default:function(){return Ot}}),n(12064),n(44465),n(31863);var r,l,a,o=n(37953),i=n(60684),c=n(82816),u=n(84136),s=n(92412),f=n(97472),m=n(92284),d=(n(3940),n(32145),n(74277),n(61445),n(57045),n(65114),n(32242),n(60039),n(75868),n(42652),n(10475),n(82106),n(85062),n(3233),n(51163),n(82758),n(20884),n(34068),n(82185),n(79661)),p=n(51788),y=n(44173),v=n(79791),b=n(80762);function h(e,t,n,r,l,a,o){try{var i=e[a](o),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,l)}function g(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){h(a,r,l,o,i,"next",e)}function i(e){h(a,r,l,o,i,"throw",e)}o(void 0)})}}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function w(){return"undefined"!=typeof window&&"Notification"in window?Notification.permission:"unsupported"}function x(e,t,n,r,l,a,o){try{var i=e[a](o),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,l)}function A(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){x(a,r,l,o,i,"next",e)}function i(e){x(a,r,l,o,i,"throw",e)}o(void 0)})}}function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach(function(t){S(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function S(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var P=u.Ay.div(r||(r=j(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"]))),N=u.Ay.h6(l||(l=j(["\n  font-size: 13px;\n  color: var(--subTextColor);\n  margin: 20px 0 8px 0;\n  font-weight: 600;\n  letter-spacing: 0.02em;\n"]))),M=u.Ay.span(a||(a=j(["\n  font-size: 12px;\n  color: ",";\n  margin-left: 8px;\n"])),function(e){return e.granted?"var(--primaryColor)":"var(--subTextColor)"});function R(){var e,t,n=(e=(0,d.L4)(v.sF),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return k(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),r=n[0],l=n[1],a=function(){var e=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return E(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?E(e,t):void 0}}
1(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,o.useState)(w),2),t=e[0],n=e[1];(0,o.useEffect)(function(){var e;if(null!==(e=navigator.permissions)&&void 0!==e&&e.query&&"unsupported"!==t){var r=null,l=!1;return navigator.permissions.query({name:"notifications"}).then(function(e){l||(r=e,e.onchange=function(){return n(w())})}).catch(function(){}),function(){l=!0,r&&(r.onchange=null)}}},[t]);var r=(0,o.useCallback)(g(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("Notification"in window){e.next=2;break}return e.abrupt("return","unsupported");case 2:return e.next=4,Notification.requestPermission();case 4:return t=e.sent,n(t),e.abrupt("return",t);case 7:case"end":return e.stop()}},e)})),[]);return{permission:t,requestPermission:r}}(),i=a.permission,c=a.requestPermission,u=(0,o.useCallback)(function(e){l(function(t){return O(O({},t),{},S({},e,!t[e]))})},[l]),s=(0,o.useCallback)(A(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c();case 2:"granted"===e.sent&&l(function(e){return O(O({},e),{},{systemNotification:!0})});case 4:case"end":return e.stop()}},e)})),[c,l]);return o.createElement(P,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"소리 알림",o.createElement(y.PF,null,"새로운 알림이 도착할 때 소리를 재생합니다.")),o.createElement(y.N9,null,o.createElement("label",null,"알림 소리 활성화"),o.createElement(p.A,{isChecked:r.soundEnabled,handleSwitch:function(){return u("soundEnabled")}}))),o.createElement(y.YO,null,o.createElement(y.fA,null,"브라우저 알림 (Push)",o.createElement(y.PF,null,"홈페이지를 벗어나도 브라우저 알림 팝업을 표시합니다. 브라우저 알림 계정 설정과 이 기기의 권한이 모두 켜져 있어야 합니다.")),o.createElement(y.N9,null,o.createElement("label",null,"브라우저 알림 사용",o.createElement(M,{granted:"granted"===i},"granted"===i?"(권한 허용됨)":"denied"===i?"(이 기기에서 권한 차단됨)":"unsupported"===i?"(미지원 브라우저)":"(이 기기에서 권한 미설정)")),o.createElement(p.A,{isChecked:r.systemNotification,handleSwitch:function(){return u("systemNotification")}})),"default"===i&&o.createElement(y.N9,{style:{marginTop:8}},o.createElement("label",null,"권한 요청"),o.createElement(b.A,{onClick:s,btnSize:"sm"},"브라우저 알림 권한 요청")),"denied"===i&&o.createElement(y.R2,{style:{marginTop:8}},"브라우저 알림이 차단되어 있습니다. 브라우저 주소창 왼쪽의 잠금 아이콘을 클릭하여 알림 권한을 허용해주세요.")),o.createElement(y.YO,null,o.createElement(y.fA,null,"알림 개별 설정",o.createElement(y.PF,null,"받고 싶은 알림 종류를 개별적으로 설정합니다. 꺼두면 해당 알림의 소리·팝업이 표시되지 않습니다.")),o.createElement(N,null,"커뮤니티"),o.createElement(y.N9,null,o.createElement("label",null,"댓글 알림"),o.createElement(p.A,{isChecked:r.commentNotification,handleSwitch:function(){return u("commentNotification")}})),o.createElement(y.N9,null,o.createElement("label",null,"답글 알림"),o.createElement(p.A,{isChecked:r.replyNotification,handleSwitch:function(){return u("replyNotification")}})),o.createElement(y.N9,null,o.createElement("label",null,"태그 / 멘션 알림"),o.createElement(p.A,{isChecked:r.taggedNotification,handleSwitch:function(){return u("taggedNotification")}})),o.createElement(y.N9,null,o.createElement("label",null,"방명록 알림"),o.createElement(p.A,{isChecked:r.guestbookNotification,handleSwitch:function(){return u("guestbookNotification")}})),o.createElement(N,null,"선물 & 채팅"),o.createElement(y.N9,null,o.createElement("label",null,"선물 수신 알림"),o.createElement(p.A,{isChecked:r.giftNotification,handleSwitch:function(){return u("giftNotification")}})),o.createElement(y.N9,null,o.createElement("label",null,"디엠 채팅 메시지 알림"),o.createElement(p.A,{isChecked:r.chatNotification,handleSwitch:function(){return u("chatNotification")}})),o.createElement(N,null,"게임 / 활동"),o.createElement(y.N9,null,o.createElement("label",null,"배틀 도전 알림"),o.createElement(p.A,{isChecked:r.battleNotification,handleSwitch:function(){return u("battleNotification")}})),o.createElement(y.N9,null,o.createElement("label",null,"퀘스트 요청 알림"),o.createElement(p.A,{isChecked:r.questNotification,handleSwitch:function(){return u("questNotification")}}))))}var T,z,U,D=o.memo(R),I=(n(66706),n(99020)),F=n(79883),L=n(7738),B=n(19730),Y=n(59352);function _(e,t,n,r,l,a,o){try{var i=e[a](o),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,l)}function G(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){_(a,r,l,o,i,"next",e)}function i(e){_(a,r,l,o,i,"throw",e)}o(void 0)})}}function q(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var $=u.Ay.div(T||(T=q(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"]))),V=(0,u.Ay)(y.R2)(z||(z=q(["\n  border-color: var(--dangerColor, #d14343);\n  color: var(--dangerColor, #d14343);\n"]))),K=u.Ay.div(U||(U=q(["\n  margin-top: 16px;\n"])));function Z(){var e=(0,d.lZ)(I.J),t=(0,d.vc)(F.gw),n=(0,o.useCallback)(G(regeneratorRuntime.mark(function e(){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=(null==t?void 0:t.uid)||"",r=(null==t?void 0:t.displayName)||"알 수 없음",e.prev=2,e.next=5,Y.default.firestore().collection(B.Gf.USER_LEAVE).add({executorUid:n,executorDisplayName:r,completedAt:new Date,members:[{uid:n,displayName:r}]});case 5:e.next=10;break;case 7:e.prev=7,e.t0=e.catch(2),console.error("탈퇴 히스토리 기록 실패:",e.t0);case 10:return e.next=12,(0,L.hG)();case 12:console.log("탈퇴완료");case 13:case"end":return e.stop()}},e,null,[[2,7]])})),[t]),r=(0,o.useCallback)(function(){e({open:!0,title:"계정 탈퇴",content:"탈퇴 시 계정 정보가 즉시 삭제되며 복구할 수 없습니다.<br />\n      작성했던 게시물/댓글 등 커뮤니티 콘텐츠는 삭제되지 않을 수 있습니다.",confirmBtnValue:"탈퇴 하기",handleConfirmClick:n})},[n,e]);return o.createElement($,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"계정 탈퇴",o.createElement(y.PF,null,"계정을 영구적으로 삭제합니다. 아래 안내사항과 주의문구를 꼭 확인해 주세요.")),o.createElement(y.Hg,null,"안내사항"),o.createElement(y.R2,null,"탈퇴 처리 후에는 현재 계정으로 로그인할 수 없고, 계정에 연결된 개인 정보가 제거됩니다."),o.createElement(y.R2,null,"운영 정책 또는 시스템 구조에 따라 작성한 게시글/댓글/로그 등 일부 콘텐츠는 서비스에 남아 있을 수 있습니다."),o.createElement(y.Hg,null,"주의문구"),o.createElement(V,null,"계정 탈퇴는 되돌릴 수 없습니다. 동일한 이메일로 재가입하더라도 기존 데이터는 복구되지 않습니다."),o.createElement(K,null,o.createElement(b.A,{shape:"stroke",btnSize:"sm",onClick:r}
1,"계정 탈퇴 진행"))))}var W,J=o.memo(Z),H=(n(97152),n(60435)),Q=n(83483),X=n(25083),ee=n(31222);function te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var ne,re,le,ae=u.Ay.div(W||(ne=["\n  display: grid;\n  grid-template-columns: auto 1fr auto auto;\n  gap: 16px;\n  padding: 16px;\n  align-items: center;\n  border-top: 1px solid var(--cardLineColor);\n"],re||(re=ne.slice(0)),W=Object.freeze(Object.defineProperties(ne,{raw:{value:Object.freeze(re)}})))),oe=function(e){var t,n,r=e.customSet,l=e.customData,a=void 0===l?null:l,i=(0,d.vc)(ee.WJ),c=(0,d.vc)(F.Bs),u=(0,Q.useDocument)("".concat(B.Gf.USERS,"/").concat(c),{listen:!1}).set,s=(t=(0,o.useState)([]),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return te(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?te(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),f=s[0],m=s[1];return(0,o.useEffect)(function(){a?m([a]):i&&i.standingCharacter?m([i.standingCharacter]):m([])},[i,a]),o.createElement(ae,null,o.createElement(X.A,null,"스탠딩 캐릭터 선택"),o.createElement(H.A,{initialList:f,setUserList:m,onlySelect:!0,block:!0}),o.createElement(b.A,{onClick:function(){m([]),r?r({standingCharacter:null},{merge:!0}):u({standingCharacter:null},{merge:!0})},shape:"stroke"},"해제"),o.createElement(b.A,{onClick:function(){var e,t;r?r({standingCharacter:null!==(e=f[0])&&void 0!==e?e:null},{merge:!0}):f.length>0&&u({standingCharacter:null!==(t=f[0])&&void 0!==t?t:null},{merge:!0})}},"저장"))},ie=u.Ay.div(le||(le=function(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"])));function ce(){return o.createElement(ie,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"스탠딩 캐릭터 (기본값)",o.createElement(y.PF,null,"메인 화면에 노출할 캐릭터를 선택하고 저장하세요.")),o.createElement(oe,{customData:null})))}var ue,se,fe,me,de,pe,ye,ve=o.memo(ce),be=n(15548),he=n(45435),ge=n.n(he),Ee=(n(98832),n(53942)),we=n(1150),xe=n(21551),Ae=n(70300),Ce=n(79390),Oe=n(57602),Se=n(81426),ke=n(97303);function je(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?je(Object(n),!0).forEach(function(t){Ne(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):je(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Ne(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Me(e,t,n,r,l,a,o){try{var i=e[a](o),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,l)}function Re(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){Me(a,r,l,o,i,"next",e)}function i(e){Me(a,r,l,o,i,"throw",e)}o(void 0)})}}function Te(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ze(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ze(e,t):void 0}}
1(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ue(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var De=u.Ay.div(ue||(ue=Ue(["\n  display: flex;\n  flex-direction: column;\n  gap: 14px;\n  width: 100%;\n  min-width: 360px;\n  text-align: left;\n\n  @media (max-width: 480px) {\n    min-width: 0;\n  }\n"]))),Ie=u.Ay.div(se||(se=Ue(["\n  display: flex;\n  flex-direction: column;\n  gap: 6px;\n"]))),Fe=u.Ay.label(fe||(fe=Ue(["\n  font-size: 13px;\n  font-weight: 700;\n  color: var(--textColor);\n"]))),Le=u.Ay.div(me||(me=Ue(["\n  min-height: 40px;\n  display: flex;\n  align-items: center;\n  padding: 8px 12px;\n  border-radius: var(--cardBorderRadius);\n  border: 1px solid var(--lineColor);\n  background-color: var(--cardBackgroundColor);\n  color: var(--subTextColor);\n  word-break: break-all;\n"]))),Be=u.Ay.p(de||(de=Ue(["\n  color: var(--subTextColor);\n  font-size: 12px;\n  line-height: 1.5;\n  word-break: keep-all;\n"]))),Ye=u.Ay.p(pe||(pe=Ue(["\n  color: var(--dangerColor, #d14343);\n  font-size: 13px;\n  line-height: 1.5;\n  word-break: keep-all;\n"]))),_e=u.Ay.div(ye||(ye=Ue(["\n  display: flex;\n  justify-content: flex-end;\n  gap: 8px;\n  margin-top: 6px;\n"])));function Ge(e){switch((null==e?void 0:e.code)||(null==e?void 0:e.message)){case"auth/wrong-password":return"현재 비밀번호가 올바르지 않습니다.";case"auth/invalid-credential":return"현재 비밀번호가 올바르지 않거나 인증 정보가 만료되었습니다.";case"auth/invalid-email":return"이메일 형식을 확인해 주세요.";case"auth/email-already-in-use":return"이미 사용 중인 이메일입니다.";case"auth/requires-recent-login":return"보안을 위해 다시 로그인한 뒤 시도해 주세요.";case"auth/too-many-requests":return"요청이 많습니다. 잠시 후 다시 시도해 주세요.";case"NO_CURRENT_USER":return"로그인 정보를 확인할 수 없습니다. 다시 로그인한 뒤 시도해 주세요.";default:return"이메일 변경에 실패했습니다. 잠시 후 다시 시도해 주세요."}}function qe(e){var t=e.currentEmail,n=e.onClose,r=(0,d.lZ)(I.J),l=(0,d.lZ)(F.gw),a=Te((0,o.useState)(""),2),i=a[0],c=a[1],u=Te((0,o.useState)(""),2),s=u[0],f=u[1],m=Te((0,o.useState)(!1),2),p=m[0],y=m[1],v=Te((0,o.useState)(""),2),h=v[0],g=v[1],E=t.trim(),w=(0,o.useMemo)(function(){return i.trim().toLowerCase()},[i]),x=Boolean(w&&!(0,Se.ZN)(w)),A=Boolean(w)&&w===E.toLowerCase(),C=p||!E||!w||!s||x||A,O=(0,o.useCallback)(function(e){c(e.target.value),g("")},[]),S=(0,o.useCallback)(function(e){f(e.target.value),g("")},[]),k=(0,o.useCallback)(Re(regeneratorRuntime.mark(function e(){var t,a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!C){e.next=2;break}return e.abrupt("return");case 2:if(t=Y.fuego.auth().currentUser,a=null==t?void 0:t.uid){e.next=7;break}return g("로그인 정보를 확인할 수 없습니다. 다시 로그인한 뒤 시도해 주세요."),e.abrupt("return");case 7:return y(!0),g(""),e.prev=9,e.next=12,(0,L.bg)({currentEmail:E,nextEmail:w,password:s});case 12:return o=e.sent,e.prev=13,e.next=16,(0,Oe.ZA)({uid:a,email:w,emailVerified:(null==o?void 0:o.emailVerified)||!1});case 16:e.next=22;break;case 18:return e.prev=18,e.t0=e.catch(13),g("로그인 이메일은 변경되었지만 프로필 반영에 실패했습니다. 새로고침 후 다시 확인해 주세요."),e.abrupt("return");case 22:l(function(e){return e?Pe(Pe({},e),{},{email:w,emailVerified:(null==o?void 0:o.emailVerified)||!1,updatedAt:new Date}):e}),n(),r({open:!0,title:"이메일 변경 완료",content:"이메일이 변경되었습니다.<br />다른 계정에 연동된 경우, 계정 관리에서 다시 추가해 주세요.",confirmBtnValue:"확인",handleConfirmClick:function(){}}),e.next=30;break;case 27:e.prev=27,e.t1=e.catch(9),g(Ge(e.t1));case 30:return e.prev=30,y(!1),e.finish(30);case 33:case"end":return e.stop()}},e,null,[[9,27,30,33],[13,18]])})),[w,n,s,r,l,C,E]);return o.createElement(Ae.A,{outsideClick:n,contentStyle:{minWidth:460}},o.createElement(o.Fragment,null,o.createElement(Ce.rQ,null,o.createElement(xe.A,{onClick:n}),o.createElement("div",{style:{textAlign:"left"}},o.createElement("h6",null,"가입 시 이메일 변경"))),o.createElement(Ce.sC,null,o.createElement(De,null,o.createElement(Ie,null,o.createElement(Fe,null,"현재 이메일"),o.createElement(Le,null,E||"-")),o.createElement(Ie,null,o.createElement(Fe,{htmlFor:"account-next-email"},"새 이메일"),o.createElement(Ee.A,{block:!0,name:"account-next-email",value:i,onChange:O,placeholder:"새 이메일 [email protected]",validType:"email",isValid:x||A,validMessage:A?"현재 이메일과 다른 이메일을 입력해 주세요.":"이메일 형식을 올바르게 입력해 주세요.",disabled:p})),o.createElement(Ie,null,o.createElement(Fe,{htmlFor:"account-current-password"},"현재 비밀번호"),o.createElement(we.A,{name:"account-current-password",value:s,onChange:S,placeholder:"현재 비밀번호",disabled:p,onKeyPress:function(e){return(0,ke.t)(e,k)}})),o.createElement(Be,null,"보안을 위해 현재 비밀번호 확인 후 이메일을 변경합니다. 변경 후에는 새 이메일로 로그인해 주세요."),h&&o.createElement(Ye,null,h),o.createElement(_e,null,o.createElement(b.A,{shape:"stroke",onClick:n,disabled:p},"취소"),o.createElement(b.A,{onClick:k,pending:p,disabled:C},"이메일 변경"))))))}
1var $e,Ve=o.memo(qe);function Ke(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ze=u.Ay.div($e||($e=function(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"])));function We(){var e,t,n,r,l,a=(0,be.Zp)(),i=(r=(0,o.useState)(!1),l=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(r,l)||function(e,t){if(e){if("string"==typeof e)return Ke(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ke(e,t):void 0}}(r,l)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=i[0],u=i[1],s=null===(e=Q.fuego.auth().currentUser)||void 0===e?void 0:e.uid,m=(null===(t=Q.fuego.auth().currentUser)||void 0===t?void 0:t.email)||"",d=(0,Q.useDocument)("".concat(B.Gf.USERS,"/").concat(s),{listen:!0}).data,p=(n=null==d?void 0:d.createdAt)?null!=n&&n.seconds?ge()(1e3*n.seconds).format("YYYY-MM-DD"):ge()(n).format("YYYY-MM-DD"):"-",v=(null==d?void 0:d.requestMessage)||"-",h=(0,o.useCallback)(function(){u(!0)},[]),g=(0,o.useCallback)(function(){u(!1)},[]);return o.createElement(Ze,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"계정 정보 변경",o.createElement(y.PF,null,"계정 로그인 정보 관련 기능을 제공합니다.")),o.createElement(y.R2,null,"가입 이메일: ",(null==d?void 0:d.email)||m||"-",o.createElement("br",null),"가입 날짜: ",p,o.createElement("br",null),"가입 시 문구: ",v),o.createElement(y.N9,null,o.createElement("label",null,"가입 시 이메일 변경"),o.createElement(b.A,{onClick:h},"이메일 변경")),o.createElement(y.N9,{style:{marginTop:12}},o.createElement("label",null,"비밀번호 바꾸기"),o.createElement(b.A,{onClick:function(){return a(f.Gl.ResetPassword)}},"비밀번호 바꾸기"))),c&&o.createElement(Ve,{currentEmail:m||(null==d?void 0:d.email)||"",onClose:g}))}var Je,He=o.memo(We),Qe=n(68332);function Xe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var et=u.Ay.div(Je||(Je=function(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"])));function tt(){var e,t,n=(e=(0,d.L4)(Qe.F),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Xe(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Xe(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),r=n[0],l=n[1],a=(0,o.useCallback)(function(){l(function(e){return!e})},[l]);return o.createElement(et,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"성능 설정",o.createElement(y.PF,null,"이 설정은 현재 브라우저에 저장되며 다른 기기에는 영향을 주지 않습니다.")),o.createElement(y.N9,null,o.createElement("div",null,o.createElement("label",null,"성능 안전 모드"),o.createElement(y.PF,null,"활성화하면 WebGL 배경, 배경 파티클, 슈팅스타, 마우스·클릭 이펙트와 스티커 추적 효과를 비활성화합니다.")),o.createElement(p.A,{isChecked:r,handleSwitch:a}))))}var nt,rt,lt,at,ot=o.memo(tt),it=(n(33001),n(71708)),ct=n(79788);function ut(e,t,n,r,l,a,o){try{var i=e[a](o),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,l)}function st(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ft(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ft(e,t):void 0}}
1(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ft(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function mt(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var dt=u.Ay.div(nt||(nt=mt(["\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  padding: 16px;\n"]))),pt=u.Ay.div(rt||(rt=mt(["\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n  margin-top: 16px;\n"]))),yt=u.Ay.div(lt||(lt=mt(["\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n"]))),vt=u.Ay.span(at||(at=mt(["\n  color: ",";\n  font-size: 12px;\n"])),function(e){return e.$isError?"var(--errorColor, #d64545)":"var(--subTextColor)"});function bt(){var e=(0,d.vc)(F.Bs),t=st((0,d.L4)(F.n6),2),n=t[0],r=t[1],l=st((0,o.useState)("idle"),2),a=l[0],i=l[1],c=(0,o.useRef)(null),u=(0,o.useRef)(null),s=(0,o.useRef)(!0),f=(0,o.useCallback)(function(){var t,n=(t=regeneratorRuntime.mark(function t(n){var r,l=arguments;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(r=!(l.length>1&&void 0!==l[1])||l[1],e){t.next=3;break}return t.abrupt("return");case 3:return t.prev=3,t.next=6,Y.fuego.db.collection(B.Gf.USERS).doc(e).update({"soundSettings.effectVolume":n});case 6:s.current&&r&&i("saved"),t.next=12;break;case 9:t.prev=9,t.t0=t.catch(3),s.current&&r&&i("error");case 12:case"end":return t.stop()}},t,null,[[3,9]])}),function(){var e=this,n=arguments;
1return new Promise(function(r,l){var a=t.apply(e,n);function o(e){ut(a,r,l,o,i,"next",e)}function i(e){ut(a,r,l,o,i,"throw",e)}o(void 0)})});return function(e){return n.apply(this,arguments)}}(),[e]),m=(0,o.useCallback)(function(e){var t=(0,ct.Z$)(e);r(t),i("saving"),u.current=t,null!==c.current&&window.clearTimeout(c.current),c.current=window.setTimeout(function(){c.current=null,u.current=null,f(t)},300)},[f,r]);(0,o.useEffect)(function(){return s.current=!0,function(){s.current=!1,null!==c.current&&window.clearTimeout(c.current),null!==u.current&&f(u.current,!1)}},[f]);var p="saving"===a?"저장 중...":"saved"===a?"계정에 저장됨":"error"===a?"저장하지 못했습니다. 다시 조절해주세요.":"변경 시 계정에 자동 저장됩니다.";return o.createElement(dt,null,o.createElement(y.YO,null,o.createElement(y.fA,null,"사운드",o.createElement(y.PF,null,"홈페이지 버튼·메뉴·카드 효과음의 개인 볼륨을 설정합니다. BGM과 새 알림 소리는 각 플레이어 및 알림 설정의 볼륨을 사용합니다.")),o.createElement(pt,null,o.createElement(it.A,{label:"효과음 볼륨",value:n,onChange:m,min:0,max:100,step:5,valueFormat:function(e){return"".concat(e,"%")}}),o.createElement(yt,null,o.createElement(vt,{$isError:"error"===a},p),o.createElement(b.A,{size:"sm"},"현재 볼륨 듣기")))))}var ht,gt=o.memo(bt),Et={"알림":[{title:"알림 설정",status:s._.DEFAULT,path:f.Gl.MyPageNotification,contents:o.createElement(D,null),id:"my-notification",accessType:m.KC.MEMBER}],"환경 설정":[{title:"사운드",status:s._.DEFAULT,path:f.Gl.MyPageSound,contents:o.createElement(gt,null),id:"my-sound",accessType:m.KC.MEMBER},{title:"성능 설정",status:s._.DEFAULT,path:f.Gl.MyPagePerformance,contents:o.createElement(ot,null),id:"my-performance",accessType:m.KC.MEMBER}],"계정 설정":[{title:"계정 정보 변경",status:s._.DEFAULT,path:f.Gl.MyPageAccountInfoChange,contents:o.createElement(He,null),id:"my-account-info-change",accessType:m.KC.MEMBER},{title:"계정 탈퇴",status:s._.DEFAULT,path:f.Gl.MyPageAccountWithdrawal,contents:o.createElement(J,null),id:"my-account-withdrawal",accessType:m.KC.MEMBER}],"스탠딩 캐릭터 설정":[{title:"스탠딩 캐릭터 설정",status:s._.DEFAULT,path:f.Gl.MyPageStandingCharacter,contents:o.createElement(ve,null),id:"my-standing-character-setting",accessType:m.KC.MEMBER}]},wt=n(89339),xt=n(6164),At=n(29991),Ct=u.Ay.div(ht||(ht=function(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n  padding: 16px 24px;\n  box-shadow: ",";\n  border-radius: var(--cardBorderRadius);\n  backdrop-filter: blur(12px);\n  background-color: var(--cardBackgroundColor);\n  border: 1px solid var(--lineColor);\n  margin-bottom: 16px;\n  backdrop-filter: blur(8px);\n  overflow: hidden;\n  height: calc(100dvh - 140px);\n\n  @media (max-width: 480px) {\n    height: auto;\n  }\n"])),wt.A.shadow.card),Ot=function(){return(0,c.A)(!1),o.createElement(i.Ay,{style:{width:"100%",maxWidth:"1080px"}},o.createElement(At.A,null),o.createElement(Ct,{style:{padding:0}},o.createElement(xt.A,{mapList:Et,defaultAccessType:m.KC.MEMBER})))}},68332:function(e,t,n){n.d(t,{F:function(){return a}}),n(80545),n(65114),n(61445),n(32242),n(60039),n(59506),n(62469),n(79256);var r=n(79661),l="moogong_performance_safety_mode",a=(0,r.eU)({key:"performanceSafetyModeState",default:function(){if("undefined"==typeof window)return!1;try{var e=function(e){if(null===e)return null;var t=e.toLowerCase();return!!["1","true","on"].includes(t)||!["0","false","off"].includes(t)&&null}(new URLSearchParams(window.location.search).get("safeMode"));return null!==e?(localStorage.setItem(l,String(e)),e):"true"===localStorage.getItem(l)}catch(e){return!1}}(),effects_UNSTABLE:[function(e){(0,e.onSet)(function(e){if("undefined"!=typeof window)try{localStorage.setItem(l,String(e))}catch(e){}})}]})}}]);
2//# sourceMappingURL=2371.3eb0160a.chunk.js.map

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.