PageSourceSearch

https://learn-foundry.app/_next/static/chunks/9c66bae45677f70c.js

js learn-foundry.app collected 2026-10-09 22:06:00 UTC 13,254 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return i}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function s(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,s(e));else t.set(r,s(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return i},formatWithValidation:function(){return u},urlObjectKeys:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let a=e.r(90809)._(e.r(98183)),s=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=e.pathname||"",i=e.hash||"",l=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),l&&"object"==typeof l&&(l=String(a.urlQueryToSearchParams(l)));let c=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||s.test(n))&&!1!==u?(u="//"+(u||""),o&&"/"!==o[0]&&(o="/"+o)):u||(u=""),i&&"#"!==i[0]&&(i="#"+i),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${o}${c}${i}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return i(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(71645);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=a(e,n)),t&&(o.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return v},MissingStaticPage:function(){return j},NormalizeError:function(){return x},PageNotFoundError:function(){return b},SP:function(){return h},ST:function(){return y},WEB_VITALS:function(){return a},execOnce:function(){return s},getDisplayName:function(){return f},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return l},isResSent:function(){return d},loadGetInitialProps:function(){return m},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return N}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function s(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>i.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function f(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function d(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function m(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await m(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&d(r))return n;if(!n)throw Object.defineProperty(Error(`"${f(e)}.getInitialProps()" should resolve to an object. But found "${n}
1" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let h="u">typeof performance,y=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class x extends Error{}class b extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class v extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(18967),o=e.r(52817);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return b}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let a=e.r(90809),s=e.r(18050),i=a._(e.r(71645)),l=e.r(95057),u=e.r(8372),c=e.r(18581),f=e.r(18967),d=e.r(5550);e.r(33525);let p=e.r(91949),m=e.r(73668),h=e.r(9396);function y(e){return"string"==typeof e?e:(0,l.formatUrl)(e)}function g(t){var r;let n,o,a,[l,g]=(0,i.useOptimistic)(p.IDLE_LINK_STATUS),b=(0,i.useRef)(null),{href:j,as:v,children:N,prefetch:C=null,passHref:P,replace:_,shallow:O,scroll:w,onClick:E,onMouseEnter:R,onTouchStart:T,legacyBehavior:S=!1,onNavigate:k,ref:L,unstable_dynamicOnHover:M,...$}=t;n=N,S&&("string"==typeof n||"number"==typeof n)&&(n=(0,s.jsx)("a",{children:n}));let A=i.default.useContext(u.AppRouterContext),U=!1!==C,I=!1!==C?null===(r=C)||"auto"===r?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:D,as:F}=i.default.useMemo(()=>{let e=y(j);return{href:e,as:v?y(v):e}},[j,v]);if(S){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});o=i.default.Children.only(n)}let B=S?o&&"object"==typeof o&&o.ref:L,K=i.default.useCallback(e=>(null!==A&&(b.current=(0,p.mountLinkInstance)(e,D,A,I,U,g)),()=>{b.current&&((0,p.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,p.unmountPrefetchableInstance)(e)}),[U,D,A,I,g]),q={ref:(0,c.useMergedRef)(K,B),onClick(t){S||"function"!=typeof E||E(t),S&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(t),!A||t.defaultPrevented||function(t,r,n,o,a,s,l){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){a&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:f}=e.r(99781);i.default.startTransition(()=>{f(n||r,a?"replace":"push",s??!0,o.current)})}}(t,D,F,b,_,w,k)},onMouseEnter(e){S||"function"!=typeof R||R(e),S&&o.props&&"function"==typeof o.props.onMouseEnter&&o.props.onMouseEnter(e),A&&U&&(0,p.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){S||"function"!=typeof T||T(e),S&&o.props&&"function"==typeof o.props.onTouchStart&&o.props.onTouchStart(e),A&&U&&(0,p.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,f.isAbsoluteUrl)(F)?q.href=F:S&&!P&&("a"!==o.type||"href"in o.props)||(q.href=(0,d.addBasePath)(F)),a=S?i.default.cloneElement(o,q):(0,s.jsx)("a",{...$,...q,children:n}),(0,s.jsx)(x.Provider,{value:l,children:a})}e.r(84508);let x=(0,i.createContext)(p.IDLE_LINK_STATUS),b=()=>(0,i.useContext)(x);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
1dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},15288,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(75157);let o=r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("rounded-xl border bg-card text-card-foreground shadow",e),...r}));o.displayName="Card";let a=r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",e),...r}));a.displayName="CardHeader";let s=r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("font-semibold leading-none tracking-tight",e),...r}));s.displayName="CardTitle";let i=r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("text-sm text-muted-foreground",e),...r}));i.displayName="CardDescription";let l=r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("p-6 pt-0",e),...r}));l.displayName="CardContent",r.forwardRef(({className:e,...r},o)=>(0,t.jsx)("div",{ref:o,className:(0,n.cn)("flex items-center p-6 pt-0",e),...r})).displayName="CardFooter",e.s(["Card",()=>o,"CardContent",()=>l,"CardDescription",()=>i,"CardHeader",()=>a,"CardTitle",()=>s])},64659,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],64659)},63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],63059)},61866,e=>{"use strict";var t=e.i(18050),r=e.i(64659),n=e.i(63059),o=e.i(15288);function a({topicName:e,requirements:r,variant:n="full"}){let{scenario:o,summary:a,functional:l,outOfScope:u,constraints:c,guarantees:f}=r,d="panel"===n;return(0,t.jsxs)("div",{className:d?"space-y-4 text-sm":"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("h2",{className:d?"mt-0.5 font-semibold":"mt-1 text-2xl font-bold tracking-tight",children:o}),(0,t.jsx)("p",{className:"mt-1.5 text-muted-foreground",children:a})]}),(0,t.jsxs)("div",{className:d?"space-y-4":"grid gap-4 sm:grid-cols-2",children:[(0,t.jsx)(i,{title:"이번에 만드는 기능",items:l}),(0,t.jsx)(i,{title:"범위 밖",items:u,muted:!0})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(s,{children:"지켜야 하는 수치"}),(0,t.jsx)("dl",{className:"mt-2 divide-y divide-border rounded-lg border",children:c.map(e=>(0,t.jsxs)("div",{className:"flex gap-3 px-3 py-2",children:[(0,t.jsx)("dt",{className:"w-28 shrink-0 text-muted-foreground sm:w-40",children:e.label}),(0,t.jsx)("dd",{className:"font-medium",children:e.value})]},e.label))})]}),f&&f.length>0&&(0,t.jsx)(i,{title:"전제로 주어진 것",items:f})]})}function s({children:e}){return(0,t.jsx)("h3",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:e})}function i({title:e,items:r,muted:n}){return(0,t.jsxs)("div",{children:[(0,t.jsx)(s,{children:e}),(0,t.jsx)("ul",{className:`mt-2 space-y-1.5 ${n?"text-muted-foreground":""}`,children:r.map(e=>(0,t.jsxs)("li",{className:"flex gap-2",children:[(0,t.jsx)("span",{className:"mt-2 h-1 w-1 shrink-0 rounded-full bg-current opacity-40"}),(0,t.jsx)("span",{children:e})]},e))})]})}function l({topicName:e,requirements:s,open:i,onToggle:l}){let u=s.constraints.slice(0,3).map(e=>`${e.label} ${e.value}`).join(" / ");return(0,t.jsx)(o.Card,{className:"mb-4 border-primary/20 bg-primary/[0.03]",children:(0,t.jsxs)(o.CardContent,{className:"p-0",children:[(0,t.jsxs)("button",{type:"button",onClick:l,"aria-expanded":i,className:"flex w-full items-start gap-2 px-4 py-3 text-left",children:[i?(0,t.jsx)(r.ChevronDown,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary"}):(0,t.jsx)(n.ChevronRight,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary"}),(0,t.jsxs)("span",{className:"min-w-0",children:[(0,t.jsxs)("span",{className:"block text-sm font-medium",children:["요구사항: ",s.scenario]}),!i&&(0,t.jsx)("span",{className:"mt-0.5 block truncate text-xs text-muted-foreground",children:u})]})]}),i&&(0,t.jsx)("div",{className:"border-t px-4 py-4",children:(0,t.jsx)(a,{topicName:e,requirements:s,variant:"panel"})})]})})}e.s(["RequirementBrief",()=>a,"RequirementPanel",()=>l])}]);

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.