PageSourceSearch

https://naemo.ai/_next/static/chunks/4666-e68f6d02440a15db.js

js naemo.ai collected 2026-10-02 01:12:15 UTC 10,530 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4666],{36950:function(e,t,n){n.d(t,{F:function(){return o}}),n(83079);var o=(0,n(12119).$)("6500bfeadc44a2b5d3317af33cb972a688151a16")},61961:function(e,t,n){n.d(t,{R:function(){return u},default:function(){return s}});var o=n(57437),r=n(2265),i=n(82941);let u="naemo:toggle-vpdebug",c="naemo:vpdebug";function a(){let e=document.activeElement;if(!e)return!1;if(e.isContentEditable)return!0;let t=e.tagName;return"TEXTAREA"===t||"INPUT"===t&&!["checkbox","radio","button","submit","reset","file","range","color","image"].includes(e.type)}function l(e){let t=document.querySelector(e);if(!t)return"없음";let n=t.getBoundingClientRect();return"".concat(Math.round(n.top),"~").concat(Math.round(n.bottom))}function s(){let[e,t]=(0,r.useState)(null),n=(0,r.useRef)(!1);return((0,r.useEffect)(()=>{let e=new URLSearchParams(window.location.search).has("vpdebug"),o=!1;try{o="1"===sessionStorage.getItem(c)}catch(e){}let r=e=>{n.current=e;try{sessionStorage.setItem(c,e?"1":"0")}catch(e){}e?window.dispatchEvent(new Event("resize")):t(null)};(e||o)&&r(!0);let i=()=>r(!n.current);return window.addEventListener(u,i),()=>window.removeEventListener(u,i)},[]),(0,r.useEffect)(()=>{let e=e=>{e.touches.length>1&&e.preventDefault()},t=e=>{e.preventDefault()};return document.addEventListener("touchstart",e,{passive:!1}),document.addEventListener("touchmove",e,{passive:!1}),document.addEventListener("gesturestart",t),document.addEventListener("gesturechange",t),()=>{document.removeEventListener("touchstart",e),document.removeEventListener("touchmove",e),document.removeEventListener("gesturestart",t),document.removeEventListener("gesturechange",t)}},[]),(0,r.useEffect)(()=>{let e=document.documentElement,o=0,r={height:-1,offsetTop:-1,bottomGap:-1,keyboardOpen:null},u=0,c=()=>{o=0;let i=window.visualViewport,c=Math.round(window.innerHeight),s=i?Math.round(i.height):c,d=i?Math.max(0,Math.round(i.offsetTop)):0,f=i?Math.max(0,c-s-d):0,v=a();v||(u=s);let m=v&&s<u-80;s!==r.height&&(r.height=s,e.style.setProperty("--app-height","".concat(s,"px"))),d!==r.offsetTop&&(r.offsetTop=d,e.style.setProperty("--vv-offset-top","".concat(d,"px"))),f!==r.bottomGap&&(r.bottomGap=f,e.style.setProperty("--vv-bottom-gap","".concat(f,"px"))),m!==r.keyboardOpen&&(r.keyboardOpen=m,e.classList.toggle("keyboard-open",m)),n.current&&t({height:s,offsetTop:d,bottomGap:f,layout:c,keyboardOpen:m,shell:l(".app-viewport"),bar:l(".mobile-floating-bar")})},s=()=>{o||(o=requestAnimationFrame(c))},d=e=>{if(!e.isContentEditable)return e.getBoundingClientRect();let t=window.getSelection();if(!t||0===t.rangeCount)return null;let n=t.getRangeAt(0),o=n.getClientRects();if(o.length>0)return o[o.length-1];let r=n.getBoundingClientRect();if(r.width>0||r.height>0)return r;let i=n.startContainer,u=i.nodeType===Node.ELEMENT_NODE?i:i.parentElement;return u?u.getBoundingClientRect():null},f=()=>{if(!a())return;let e=document.activeElement;if(!e)return;let t=window.visualViewport;if(!t)return;let n=d(e);if(!n)return;let o=(0,i.Wk)(n,t.height);if(0===o)return;let r=e.parentElement,u=null;for(;r&&r!==document.body&&r!==document.documentElement;){let e=window.getComputedStyle(r);if("auto"===e.overflowY||"scroll"===e.overflowY){u=r;break}r=r.parentElement}if(u){let e=Math.max(0,u.scrollHeight-u.clientHeight),t=Math.min(Math.max(0,u.scrollTop+o),e);if(Math.round(t)===Math.round(u.scrollTop))return;u.scrollTo({top:t,behavior:"smooth"})}else window.scrollBy({top:o,behavior:"smooth"})},v=()=>{s(),window.setTimeout(c,120),window.setTimeout(()=>{c(),f()},350),window.setTimeout(()=>{c(),f()},500)};c(),window.addEventListener("resize",s),window.addEventListener("orientationchange",s),window.addEventListener("scroll",s,{passive:!0}),document.addEventListener("focusin",v),document.addEventListener("focusout",v);let m=window.visualViewport;null==m||m.addEventListener("resize",s),null==m||m.addEventListener("scroll",s);let h=window.setTimeout(c,300);return()=>{o&&cancelAnimationFrame(o),window.clearTimeout(h),window.removeEventListener("resize",s),window.removeEventListener("orientationchange",s),window.removeEventListener("scroll",s),document.removeEventListener("focusin",v),document.removeEventListener("focusout",v),null==m||m.removeEventListener("resize",s),null==m||m.removeEventListener("scroll",s),e.classList.remove("keyboard-open")}},[]),e)?(0,o.jsx)("div",{style:{position:"fixed",top:"calc(var(--vv-offset-top, 0px) + env(safe-area-inset-top, 0px) + 4px)",left:4,zIndex:2147483647,background:"rgba(0,0,0,0.82)",color:"#0f0",font:"11px/1.45 ui-monospace, Menlo, monospace",padding:"6px 8px",borderRadius:6,pointerEvents:"none",whiteSpace:"pre"},children:"보이는 영역   ".concat(e.offsetTop,"~").concat(e.offsetTop+e.height,"\napp-height   ").concat(e.height,"\noffset-top   ").
1concat(e.offsetTop,"\nbottom-gap   ").concat(e.bottomGap,"\ninnerHeight  ").concat(e.layout,"\n키보드        ").concat(e.keyboardOpen?"OPEN":"closed","\n앱 셸        ").concat(e.shell,"\n하단바        ").concat(e.bar)}):null}},21751:function(e,t,n){n.d(t,{jM:function(){return l},nD:function(){return a},rr:function(){return s}});var o=n(57437),r=n(2265),i=n(21652),u=n(8345);let c=(0,r.createContext)(void 0);function a(e){let{children:t}=e,[n,a]=(0,r.useState)(null),l=(0,r.useRef)(()=>{}),s=(0,r.useRef)(!1);(0,r.useEffect)(()=>{let e=e=>{!(0,u.Y)(e)&&s.current&&(s.current=!1,l.current())};return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)},[]);let d=(0,r.useCallback)((e,t)=>{l.current=t;let n=(0,i.UM)();if(null!==e){let e=window.history.state||{},t=s.current||!!(e&&e.isMobileSubHeader);n&&!t?(window.history.pushState({...e,isMobileSubHeader:!0},""),s.current=!0):t&&(s.current=!0)}else s.current=!1;a(t=>t===e?t:e)},[]),f=(0,r.useCallback)(()=>{s.current&&(s.current=!1,window.history.back()),l.current()},[]),v=(0,r.useMemo)(()=>({subHeaderTitle:n,goBackFromSubHeader:f,registerSubHeader:d}),[n,f,d]);return(0,o.jsx)(c.Provider,{value:v,children:t})}function l(){var e,t;let n=(0,r.useContext)(c);return{subHeaderTitle:null!==(e=null==n?void 0:n.subHeaderTitle)&&void 0!==e?e:null,goBackFromSubHeader:null!==(t=null==n?void 0:n.goBackFromSubHeader)&&void 0!==t?t:()=>{}}}function s(e,t){let n=(0,r.useContext)(c),o=null==n?void 0:n.registerSubHeader,i=(0,r.useRef)(t);(0,r.useEffect)(()=>{i.current=t},[t]),(0,r.useEffect)(()=>{o&&o(e,()=>i.current())},[o,e]),(0,r.useEffect)(()=>()=>{null==o||o(null,()=>{})},[o])}},25997:function(e,t,n){n.d(t,{Y:function(){return a},x:function(){return c}});var o=n(57437),r=n(2265),i=n(76245);let u=(0,r.createContext)(void 0);function c(e){let{children:t}=e,[n,c]=(0,r.useState)(!1),[a,l]=(0,r.useState)("general"),[s,d]=(0,r.useState)(void 0),[f,v]=(0,r.useState)({}),m=(0,r.useRef)(void 0),h=()=>{c(!1),v({}),m.current&&(m.current(),m.current=void 0)};return(0,o.jsxs)(u.Provider,{value:{openSettings:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"general",t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;l(e),d(t),v(n||{}),m.current=null==n?void 0:n.onClose,c(!0)},closeSettings:h,isOpen:n},children:[t,(0,o.jsx)(i.T,{isOpen:n,onClose:h,defaultTab:a,studentId:s,autoAddClass:f.autoAddClass})]})}function a(){let e=(0,r.useContext)(u);if(void 0===e)throw Error("useSettingsModal must be used within a SettingsModalProvider");return e}},55369:function(e,t,n){n.d(t,{F5:function(){return o},Ko:function(){return a},LI:function(){return s},Lq:function(){return d},Qn:function(){return c},Qs:function(){return i},UC:function(){return u},yV:function(){return l}});let o=["HOMEROOM","GRADE_ADMIN","SCHOOL_ADMIN","MOCK_COORDINATOR","SCORE_COORDINATOR"];function r(e,t){return e.filter(e=>!e.endedAt&&e.academicYear===t)}function i(e){return"SCHOOL_ADMIN"===e.kind?"school":"GRADE_ADMIN"===e.kind?"grade:".concat(e.grade):"HOMEROOM"===e.kind?"class:".concat(e.classId):"none"}function u(e,t){return r(e,t.academicYear).some(e=>{var n;let o=null!==(n=e.viewScope)&&void 0!==n?n:i(e);return"school"===o||o==="grade:".concat(t.grade)||o==="class:".concat(t.classId)})}function c(e,t){return r(e,t).some(e=>{var t;return"SCHOOL_ADMIN"===e.kind&&(null!==(t=e.viewScope)&&void 0!==t?t:i(e))==="school"})}function a(e,t){return r(e,t.academicYear).some(e=>"HOMEROOM"===e.kind&&e.classId===t.classId)}function l(e,t,n){return"admission"!==n&&("mock"===n||u(e,t)||r(e,t.academicYear).some(e=>"SCORE_COORDINATOR"===e.kind&&"grades"===n))}let s={HOMEROOM:"담임",GRADE_ADMIN:"학년 관리자",SCHOOL_ADMIN:"학교 관리자",MOCK_COORDINATOR:"모의고사 담당",SCORE_COORDINATOR:"성적업무 담당"};function d(e,t,n){return r(e,t).some(e=>{var t;let o=null!==(t=e.viewScope)&&void 0!==t?t:i(e);return"school"===o||o==="grade:".concat(n)})}},80726:function(e,t,n){n.d(t,{C3:function(){return r},fD:function(){return c},hI:function(){return u},mC:function(){return o},nh:function(){return i},nr:function(){return a}});let o="naemo_native_shell",r="naemo_oauth_client",i="ios",u="https://naemo.ai?from=ios";function c(){return"/?client=".concat(i)}function a(e,t,n){return"".concat(e,"=").concat(t,"; Path=/; Max-Age=7200; SameSite=None").concat(n?"; Secure":"")}},21652:function(e,t,n){n.d(t,{RS:function(){return o},UM:function(){return r},nX:function(){return i}});let o="(max-width: ".concat(599,"px), (max-height: ").concat(599,"px) and (max-width: ").concat(1023,"px) and (hover: none)");function r(){var e,t,n;let o=!1;if("function"==typeof window.matchMedia)try{o=window.matchMedia("(hover: hover)").matches}catch(e){o=!1}return e=window.innerWidth,t=window.innerHeight,n=o,e<=599||!n&&t<=599&&e<=1023}function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"undefined"==typeof navigator?{}:navigator,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window.matchMedia.bind(window);if(!0===e.standalone)return!0;
1if(!t)return!1;try{return["standalone","fullscreen","minimal-ui"].some(e=>t("(display-mode: ".concat(e,")")).matches)}catch(e){return!1}}},12618:function(e,t,n){n.d(t,{a:function(){return u},u:function(){return i}});var o=n(9244),r=n(80726);function i(){if("undefined"==typeof document||!(0,o.cz)())return;let e="undefined"!=typeof location&&"https:"===location.protocol;document.cookie=(0,r.nr)(r.mC,"1",e),document.cookie=(0,r.nr)(r.C3,r.nh,e)}function u(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=(0,o.cz)();return(t&&i(),t||e)?{callbackUrl:(0,r.fD)()}:{callbackUrl:"/"}}}}]);

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.