From 1bdc112529dfd1a979baf296dd10b561f9e6ac8b Mon Sep 17 00:00:00 2001 From: varun7654 Date: Sun, 12 May 2024 15:25:33 -0700 Subject: [PATCH] Updates --- 404.html | 2 +- asset-manifest.json | 16 ++++++++-------- index.html | 2 +- problems/medium/mergesort.md | 3 +-- static/css/main.17181d63.css.map | 1 - .../css/{main.17181d63.css => main.3d89e9e4.css} | 4 ++-- static/css/main.3d89e9e4.css.map | 1 + static/js/853.d6a7d395.chunk.js | 2 ++ static/js/853.d6a7d395.chunk.js.map | 1 + static/js/853.fb5d9004.chunk.js | 2 -- static/js/853.fb5d9004.chunk.js.map | 1 - static/js/{main.31b7055a.js => main.0e59f751.js} | 6 +++--- ....LICENSE.txt => main.0e59f751.js.LICENSE.txt} | 0 ...main.31b7055a.js.map => main.0e59f751.js.map} | 2 +- 14 files changed, 21 insertions(+), 22 deletions(-) delete mode 100644 static/css/main.17181d63.css.map rename static/css/{main.17181d63.css => main.3d89e9e4.css} (50%) create mode 100644 static/css/main.3d89e9e4.css.map create mode 100644 static/js/853.d6a7d395.chunk.js create mode 100644 static/js/853.d6a7d395.chunk.js.map delete mode 100644 static/js/853.fb5d9004.chunk.js delete mode 100644 static/js/853.fb5d9004.chunk.js.map rename static/js/{main.31b7055a.js => main.0e59f751.js} (99%) rename static/js/{main.31b7055a.js.LICENSE.txt => main.0e59f751.js.LICENSE.txt} (100%) rename static/js/{main.31b7055a.js.map => main.0e59f751.js.map} (99%) diff --git a/404.html b/404.html index cefca76..678580d 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ -WeCode
\ No newline at end of file +WeCode
\ No newline at end of file diff --git a/asset-manifest.json b/asset-manifest.json index 54c9eb6..1323d93 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,9 +1,9 @@ { "files": { - "main.css": "/static/css/main.17181d63.css", - "main.js": "/static/js/main.31b7055a.js", + "main.css": "/static/css/main.3d89e9e4.css", + "main.js": "/static/js/main.0e59f751.js", "static/js/221.ed47e118.chunk.js": "/static/js/221.ed47e118.chunk.js", - "static/js/853.fb5d9004.chunk.js": "/static/js/853.fb5d9004.chunk.js", + "static/js/853.d6a7d395.chunk.js": "/static/js/853.d6a7d395.chunk.js", "static/js/843.50ebce90.chunk.js": "/static/js/843.50ebce90.chunk.js", "static/js/488.a8d036df.chunk.js": "/static/js/488.a8d036df.chunk.js", "static/js/780.c1ef71a3.chunk.js": "/static/js/780.c1ef71a3.chunk.js", @@ -76,10 +76,10 @@ "static/media/KaTeX_Size3-Regular.woff2": "/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2", "static/media/github-mark-white.svg": "/static/media/github-mark-white.ac7f5ce28096dc43a49cbedeabffa77b.svg", "index.html": "/index.html", - "main.17181d63.css.map": "/static/css/main.17181d63.css.map", - "main.31b7055a.js.map": "/static/js/main.31b7055a.js.map", + "main.3d89e9e4.css.map": "/static/css/main.3d89e9e4.css.map", + "main.0e59f751.js.map": "/static/js/main.0e59f751.js.map", "221.ed47e118.chunk.js.map": "/static/js/221.ed47e118.chunk.js.map", - "853.fb5d9004.chunk.js.map": "/static/js/853.fb5d9004.chunk.js.map", + "853.d6a7d395.chunk.js.map": "/static/js/853.d6a7d395.chunk.js.map", "843.50ebce90.chunk.js.map": "/static/js/843.50ebce90.chunk.js.map", "488.a8d036df.chunk.js.map": "/static/js/488.a8d036df.chunk.js.map", "780.c1ef71a3.chunk.js.map": "/static/js/780.c1ef71a3.chunk.js.map", @@ -92,7 +92,7 @@ "671.5426ab3a.chunk.js.map": "/static/js/671.5426ab3a.chunk.js.map" }, "entrypoints": [ - "static/css/main.17181d63.css", - "static/js/main.31b7055a.js" + "static/css/main.3d89e9e4.css", + "static/js/main.0e59f751.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index cefca76..678580d 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -WeCode
\ No newline at end of file +WeCode
\ No newline at end of file diff --git a/problems/medium/mergesort.md b/problems/medium/mergesort.md index bf65a19..afa39e9 100644 --- a/problems/medium/mergesort.md +++ b/problems/medium/mergesort.md @@ -14,8 +14,7 @@ sorting the two halves, and then merging them back together. - If the array has only one element, return the array. (Base case) - Otherwise, divide the array into two halves and recursively sort each half 3. Merge the two halves back together in sorted order. - - Note you'll probablt want to write a helper function to merge the two halves together. - You will need to define this function inside the `mergeSort` function. + - Note you'll probably want to write a helper function to merge the two halves together. - The `merge` function should take two arrays as arguments and return a single sorted array. - How can you use the fact that the two halves are already sorted to merge them together efficiently? 4. Return the sorted array. diff --git a/static/css/main.17181d63.css.map b/static/css/main.17181d63.css.map deleted file mode 100644 index ce148ed..0000000 --- a/static/css/main.17181d63.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/css/main.17181d63.css","mappings":"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","sources":["index.css","App.css","../node_modules/highlight.js/styles/atom-one-dark.min.css"],"sourcesContent":["body {\r\n margin: 0;\r\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\r\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\r\n sans-serif;\r\n -webkit-font-smoothing: antialiased;\r\n -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\ncode {\r\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\r\n monospace;\r\n}\r\n","@import 'tailwindcss/base';\r\n@import 'tailwindcss/components';\r\n@import 'tailwindcss/utilities';\r\n\r\n@layer base {\r\n h1 {\r\n @apply text-3xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h2 {\r\n @apply text-2xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h3 {\r\n @apply text-xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h4 {\r\n @apply text-lg;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h5 {\r\n @apply text-base;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h6 {\r\n @apply text-base;\r\n @apply font-semibold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n ol,\r\n ul {\r\n list-style: circle;\r\n margin-left: 1.5em;\r\n }\r\n\r\n li {\r\n margin-bottom: -0.2em;\r\n }\r\n\r\n p {\r\n @apply text-base;\r\n margin-bottom: 1em;\r\n }\r\n}\r\n\r\n@media (max-width: 900px) {\r\n .flex-row {\r\n flex-direction: column;\r\n }\r\n\r\n @media (max-width: 900px) {\r\n .w-1\\/2 {\r\n width: 100%;\r\n }\r\n }\r\n}\r\n\r\nbody {\r\n background-color: #1C1F23;\r\n}\r\n\r\n.App {\r\n background-color: #1C1F23;\r\n color: #efe9e7;\r\n}\r\n\r\n.App-header {\r\n background-color: #282c34;\r\n height: calc(10px + 5vmin);;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n font-size: calc(10px + 2vmin);\r\n color: white;\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n padding: 0 1em;\r\n font-weight: bolder;\r\n}\r\n\r\n.Problem {\r\n margin-top: 0;\r\n padding-top: 0;\r\n padding-bottom: 10em;\r\n padding-left: 1em;\r\n justify-content: center;\r\n align-items: center;\r\n text-align: left;\r\n min-height: 100vh;\r\n width: 95%;\r\n max-width: 80em;\r\n flex-direction: column;\r\n}\r\n\r\n.Problem-title {\r\n margin-top: 0;\r\n padding-top: 1em;\r\n}\r\n\r\n.Problem-user-code {\r\n margin-top: 0;\r\n padding-left: 5em;\r\n justify-items: left;\r\n}\r\n\r\n.Problem-template-code {\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n padding-left: 0;\r\n font-size: 1.2em;\r\n font-weight: bold;\r\n}\r\n\r\n.Problem-desc {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 70em;\r\n}\r\n\r\n.Problem-solution {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 50em;\r\n}\r\n\r\n.helpButton {\r\n height: 2em;\r\n}\r\n\r\n.submitButton {\r\n height: 2em;\r\n}\r\n\r\n.nextProblemButton {\r\n height: 2em;\r\n}\r\n\r\ncode[class^=\"hljs-\"] {\r\n background: #000;\r\n}\r\n\r\n.Code-tutor-response {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 50em;\r\n}\r\n\r\ncode {\r\n background-color: #282c34;\r\n color: #efe9e7;\r\n padding: 0.2em 0.4em;\r\n font-size: 80%;\r\n font-family: \"SFMono-Regular\", Consolas, \"Liberation Mono\", Menlo, Courier, monospace;\r\n border-radius: 3px;\r\n}\r\n\r\n.katex-mathml {\r\n display: none;\r\n}\r\n\r\n.wecode-header {\r\n font-size: 1.5em;\r\n text-decoration: none;\r\n color: #f8e6f7;\r\n}\r\n\r\n.loginButton {\r\n height: 2.75em;\r\n}","pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/css/main.17181d63.css b/static/css/main.3d89e9e4.css similarity index 50% rename from static/css/main.17181d63.css rename to static/css/main.3d89e9e4.css index 5f7b7ed..fd896b9 100644 --- a/static/css/main.17181d63.css +++ b/static/css/main.3d89e9e4.css @@ -2,5 +2,5 @@ body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-f /* ! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com -*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}h1{font-size:1.875rem;line-height:2.25rem}h1,h2{font-weight:700;margin-bottom:.25em;margin-top:1em}h2{font-size:1.5rem;line-height:2rem}h3{font-size:1.25rem}h3,h4{font-weight:700;line-height:1.75rem;margin-bottom:.25em;margin-top:1em}h4{font-size:1.125rem}h5{font-weight:700}h5,h6{font-size:1rem;line-height:1.5rem;margin-bottom:.25em;margin-top:1em}h6{font-weight:600}ol,ul{list-style:circle;margin-left:1.5em}li{margin-bottom:-.2em}p{font-size:1rem;line-height:1.5rem;margin-bottom:1em}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.-mt-16{margin-top:-4rem}.-mt-5{margin-top:-1.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.ml-5{margin-left:1.25rem}.mr-2{margin-right:.5rem}.mr-5{margin-right:1.25rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-5{margin-top:1.25rem}.block{display:block}.flex{display:flex}.hidden{display:none}.h-\[calc\(100vh\*0\.60\)\]{height:60vh}.h-\[calc\(100vh\*0\.80\)\]{height:80vh}.h-auto{height:auto}.min-h-20{min-height:5rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-2\/3{width:66.666667%}.w-96{width:24rem}.w-full{width:100%}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.rounded{border-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-white-pink{--tw-border-opacity:1;border-color:rgb(248 230 247/var(--tw-border-opacity))}.bg-\[\#f8e6f7\]{--tw-bg-opacity:1;background-color:rgb(248 230 247/var(--tw-bg-opacity))}.bg-basically-black{--tw-bg-opacity:1;background-color:rgb(23 28 43/var(--tw-bg-opacity))}.bg-test-failed{--tw-bg-opacity:1;background-color:rgb(255 142 131/var(--tw-bg-opacity))}.bg-test-passed{--tw-bg-opacity:1;background-color:rgb(18 243 135/var(--tw-bg-opacity))}.bg-white-pink{--tw-bg-opacity:1;background-color:rgb(248 230 247/var(--tw-bg-opacity))}.p-2{padding:.5rem}.pb-5{padding-bottom:1.25rem}.pl-1{padding-left:.25rem}.pl-4{padding-left:1rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-8{padding-top:2rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-semibold{font-weight:600}.italic{font-style:italic}.text-\[\#abb2bf\]{--tw-text-opacity:1;color:rgb(171 178 191/var(--tw-text-opacity))}.text-basically-black{--tw-text-opacity:1;color:rgb(23 28 43/var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-bright-blue{--tw-text-opacity:1;color:rgb(46 146 240/var(--tw-text-opacity))}.text-bright-purple{--tw-text-opacity:1;color:rgb(164 117 240/var(--tw-text-opacity))}.text-error-red{--tw-text-opacity:1;color:rgb(239 69 71/var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.decoration-gray-600{text-decoration-color:#4b5563}.underline-offset-2{text-underline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (max-width:900px){.flex-row{flex-direction:column}@media (max-width:900px){.w-1\/2{width:100%}}}.App,body{background-color:#1c1f23}.App{color:#efe9e7}.App-header{background-color:#282c34;color:#fff;display:flex;flex-direction:row;font-size:calc(10px + 2vmin);font-weight:bolder;height:calc(10px + 5vmin);justify-content:space-between;margin-bottom:0;padding:0 1em}.App-header,.Problem{align-items:center;margin-top:0}.Problem{flex-direction:column;justify-content:center;max-width:80em;min-height:100vh;padding-bottom:10em;padding-left:1em;padding-top:0;text-align:left;width:95%}.Problem-title{margin-top:0;padding-top:1em}.Problem-user-code{justify-items:left;margin-top:0;padding-left:5em}.Problem-template-code{font-size:1.2em;font-weight:700}.Problem-desc,.Problem-template-code{margin-bottom:0;margin-top:0;padding-left:0}.Problem-desc{max-width:70em}.Problem-desc,.Problem-solution{padding-bottom:0;padding-top:0;width:95%}.Problem-solution{margin-bottom:0;margin-top:0;max-width:50em;padding-left:0}.helpButton,.nextProblemButton,.submitButton{height:2em}code[class^=hljs-]{background:#000}.Code-tutor-response{margin-bottom:0;margin-top:0;max-width:50em;padding-bottom:0;padding-left:0;padding-top:0;width:95%}code{background-color:#282c34;border-radius:3px;color:#efe9e7;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:80%;padding:.2em .4em}.katex-mathml{display:none}.wecode-header{color:#f8e6f7;font-size:1.5em;text-decoration:none}.loginButton{height:2.75em}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#282c34;color:#abb2bf}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} -/*# sourceMappingURL=main.17181d63.css.map*/ \ No newline at end of file +*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}h1{font-size:1.875rem;line-height:2.25rem}h1,h2{font-weight:700;margin-bottom:.25em;margin-top:1em}h2{font-size:1.5rem;line-height:2rem}h3{font-size:1.25rem}h3,h4{font-weight:700;line-height:1.75rem;margin-bottom:.25em;margin-top:1em}h4{font-size:1.125rem}h5{font-weight:700}h5,h6{font-size:1rem;line-height:1.5rem;margin-bottom:.25em;margin-top:1em}h6{font-weight:600}ol,ul{list-style:circle;margin-left:1.5em}li{margin-bottom:-.2em}p{font-size:1rem;line-height:1.5rem;margin-bottom:1em}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.-mt-16{margin-top:-4rem}.-mt-5{margin-top:-1.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.ml-1{margin-left:.25rem}.ml-5{margin-left:1.25rem}.mr-2{margin-right:.5rem}.mr-5{margin-right:1.25rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-5{margin-top:1.25rem}.block{display:block}.flex{display:flex}.hidden{display:none}.h-\[calc\(100vh\*0\.60\)\]{height:60vh}.h-\[calc\(100vh\*0\.80\)\]{height:80vh}.h-auto{height:auto}.min-h-20{min-height:5rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-2\/3{width:66.666667%}.w-96{width:24rem}.w-full{width:100%}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.rounded{border-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-white-pink{--tw-border-opacity:1;border-color:rgb(248 230 247/var(--tw-border-opacity))}.bg-\[\#f8e6f7\]{--tw-bg-opacity:1;background-color:rgb(248 230 247/var(--tw-bg-opacity))}.bg-basically-black{--tw-bg-opacity:1;background-color:rgb(23 28 43/var(--tw-bg-opacity))}.bg-test-failed{--tw-bg-opacity:1;background-color:rgb(255 142 131/var(--tw-bg-opacity))}.bg-test-passed{--tw-bg-opacity:1;background-color:rgb(18 243 135/var(--tw-bg-opacity))}.bg-white-pink{--tw-bg-opacity:1;background-color:rgb(248 230 247/var(--tw-bg-opacity))}.p-2{padding:.5rem}.pb-5{padding-bottom:1.25rem}.pl-1{padding-left:.25rem}.pl-4{padding-left:1rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-8{padding-top:2rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-semibold{font-weight:600}.italic{font-style:italic}.text-\[\#abb2bf\]{--tw-text-opacity:1;color:rgb(171 178 191/var(--tw-text-opacity))}.text-basically-black{--tw-text-opacity:1;color:rgb(23 28 43/var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-bright-blue{--tw-text-opacity:1;color:rgb(46 146 240/var(--tw-text-opacity))}.text-bright-purple{--tw-text-opacity:1;color:rgb(164 117 240/var(--tw-text-opacity))}.text-error-red{--tw-text-opacity:1;color:rgb(239 69 71/var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.decoration-gray-600{text-decoration-color:#4b5563}.underline-offset-2{text-underline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (max-width:900px){.flex-row{flex-direction:column}@media (max-width:900px){.w-1\/2{width:100%}}}.App,body{background-color:#1c1f23}.App{color:#efe9e7}.App-header{background-color:#282c34;color:#fff;display:flex;flex-direction:row;font-size:calc(10px + 2vmin);font-weight:bolder;height:calc(10px + 5vmin);justify-content:space-between;margin-bottom:0;padding:0 1em}.App-header,.Problem{align-items:center;margin-top:0}.Problem{flex-direction:column;justify-content:center;max-width:80em;min-height:100vh;padding-bottom:10em;padding-left:1em;padding-top:0;text-align:left;width:95%}.Problem-title{margin-top:0;padding-top:1em}.Problem-user-code{justify-items:left;margin-top:0;padding-left:5em}.Problem-template-code{font-size:1.2em;font-weight:700}.Problem-desc,.Problem-template-code{margin-bottom:0;margin-top:0;padding-left:0}.Problem-desc{max-width:70em}.Problem-desc,.Problem-solution{padding-bottom:0;padding-top:0;width:95%}.Problem-solution{margin-bottom:0;margin-top:0;max-width:50em;padding-left:0}.helpButton,.nextProblemButton,.submitButton{height:2em}code[class^=hljs-]{background:#000}.Code-tutor-response{margin-bottom:0;margin-top:0;max-width:50em;padding-bottom:0;padding-left:0;padding-top:0;width:95%}code{background-color:#282c34;border-radius:3px;color:#efe9e7;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:80%;padding:.2em .4em}.katex-mathml{display:none}.wecode-header{color:#f8e6f7;font-size:1.5em;text-decoration:none}.loginButton{height:2.75em}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#282c34;color:#abb2bf}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} +/*# sourceMappingURL=main.3d89e9e4.css.map*/ \ No newline at end of file diff --git a/static/css/main.3d89e9e4.css.map b/static/css/main.3d89e9e4.css.map new file mode 100644 index 0000000..22d6b63 --- /dev/null +++ b/static/css/main.3d89e9e4.css.map @@ -0,0 +1 @@ +{"version":3,"file":"static/css/main.3d89e9e4.css","mappings":"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","sources":["index.css","App.css","../node_modules/highlight.js/styles/atom-one-dark.min.css"],"sourcesContent":["body {\r\n margin: 0;\r\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\r\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\r\n sans-serif;\r\n -webkit-font-smoothing: antialiased;\r\n -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\ncode {\r\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\r\n monospace;\r\n}\r\n","@import 'tailwindcss/base';\r\n@import 'tailwindcss/components';\r\n@import 'tailwindcss/utilities';\r\n\r\n@layer base {\r\n h1 {\r\n @apply text-3xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h2 {\r\n @apply text-2xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h3 {\r\n @apply text-xl;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h4 {\r\n @apply text-lg;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h5 {\r\n @apply text-base;\r\n @apply font-bold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n h6 {\r\n @apply text-base;\r\n @apply font-semibold;\r\n margin-bottom: 0.25em;\r\n margin-top: 1em;\r\n }\r\n\r\n ol,\r\n ul {\r\n list-style: circle;\r\n margin-left: 1.5em;\r\n }\r\n\r\n li {\r\n margin-bottom: -0.2em;\r\n }\r\n\r\n p {\r\n @apply text-base;\r\n margin-bottom: 1em;\r\n }\r\n}\r\n\r\n@media (max-width: 900px) {\r\n .flex-row {\r\n flex-direction: column;\r\n }\r\n\r\n @media (max-width: 900px) {\r\n .w-1\\/2 {\r\n width: 100%;\r\n }\r\n }\r\n}\r\n\r\nbody {\r\n background-color: #1C1F23;\r\n}\r\n\r\n.App {\r\n background-color: #1C1F23;\r\n color: #efe9e7;\r\n}\r\n\r\n.App-header {\r\n background-color: #282c34;\r\n height: calc(10px + 5vmin);;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n font-size: calc(10px + 2vmin);\r\n color: white;\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n padding: 0 1em;\r\n font-weight: bolder;\r\n}\r\n\r\n.Problem {\r\n margin-top: 0;\r\n padding-top: 0;\r\n padding-bottom: 10em;\r\n padding-left: 1em;\r\n justify-content: center;\r\n align-items: center;\r\n text-align: left;\r\n min-height: 100vh;\r\n width: 95%;\r\n max-width: 80em;\r\n flex-direction: column;\r\n}\r\n\r\n.Problem-title {\r\n margin-top: 0;\r\n padding-top: 1em;\r\n}\r\n\r\n.Problem-user-code {\r\n margin-top: 0;\r\n padding-left: 5em;\r\n justify-items: left;\r\n}\r\n\r\n.Problem-template-code {\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n padding-left: 0;\r\n font-size: 1.2em;\r\n font-weight: bold;\r\n}\r\n\r\n.Problem-desc {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 70em;\r\n}\r\n\r\n.Problem-solution {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 50em;\r\n}\r\n\r\n.helpButton {\r\n height: 2em;\r\n}\r\n\r\n.submitButton {\r\n height: 2em;\r\n}\r\n\r\n.nextProblemButton {\r\n height: 2em;\r\n}\r\n\r\ncode[class^=\"hljs-\"] {\r\n background: #000;\r\n}\r\n\r\n.Code-tutor-response {\r\n margin-top: 0;\r\n padding-top: 0;\r\n margin-bottom: 0;\r\n padding-bottom: 0;\r\n padding-left: 0;\r\n width: 95%;\r\n max-width: 50em;\r\n}\r\n\r\ncode {\r\n background-color: #282c34;\r\n color: #efe9e7;\r\n padding: 0.2em 0.4em;\r\n font-size: 80%;\r\n font-family: \"SFMono-Regular\", Consolas, \"Liberation Mono\", Menlo, Courier, monospace;\r\n border-radius: 3px;\r\n}\r\n\r\n.katex-mathml {\r\n display: none;\r\n}\r\n\r\n.wecode-header {\r\n font-size: 1.5em;\r\n text-decoration: none;\r\n color: #f8e6f7;\r\n}\r\n\r\n.loginButton {\r\n height: 2.75em;\r\n}","pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/853.d6a7d395.chunk.js b/static/js/853.d6a7d395.chunk.js new file mode 100644 index 0000000..8a6bdb9 --- /dev/null +++ b/static/js/853.d6a7d395.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkai_coding_learning=self.webpackChunkai_coding_learning||[]).push([[853],{1234:(e,t,n)=>{n.r(t),n.d(t,{UserData:()=>Y,default:()=>O,marked:()=>H,saveUserData:()=>W});var s=n(4283),r=n(8857),o=n(8172),l=n(5043),i=n(6213),a=n.n(i),u=n(5745),c=n(5969),h=n(2518),d=n(8732);class p{constructor(){this.id="",this.title="Loading...",this.preProblemDescription="",this.description="",this.tests=[],this.hiddenTests=[],this.displayAbove="",this.displayBelow="",this.solution="",this.solutionCode="",this.codeLang="",this.nextProblemId=""}}class g{constructor(e,t){this.key=void 0,this.value=void 0,this.key=e,this.value=t}}function f(e,t){for(;e.length>0&&(y(e),0!==e.length&&"code"===e[0].type);){let n=e.shift().text.trim(),s=n.split("\n").flatMap((e=>e.trim())),r=s[s.length-1],o=r.indexOf("("),l=-1;for(let e=r.length-1;e>=0;e--)if(")"===r[e]){l=e;break}if(-1===o||-1===l){console.error("Failed to parse function call (Magic Links will not work!): "+r);continue}let i=r.substring(o+1,l).split(",").map((e=>e.trim()));y(e);let a=1,u=r;u.endsWith(";")&&(u=u.substring(0,u.length-1));let c=[];for(let e of i){let t=n.match(new RegExp("let\\s+".concat(e,"\\s*=\\s*")));if(null!==t&&void 0!==t.index){let s=n.substring(t.index+t[0].length).trim(),r=0,o=0,l=0,i=0,a=0;for(let e=0;e0&&"paragraph"===e[0].type;){let t=e.shift().text.trim(),n=t.split("=").map((e=>e.trim()));if(2!==n.length){console.error("Failed to parse metadata: "+t);continue}let s=n[0].toLowerCase(),o=n[1];if("repeat"===s){let e=parseInt(o);isNaN(e)?console.error("Failed to parse repeat value: "+o):a=e}else if("displayas"===s){u=o;let e=r.indexOf("("),t=-1;for(let n=u.length-1;n>=0;n--)if(")"===u[n]){t=n;break}if(-1===e||-1===t){console.error("Failed to parse function for displayAs meta call (Magic Links will not work!): "+u);continue}i=u.substring(e+1,t).split(",").map((e=>e.trim()))}else if(i.includes(n[0])){let t=n[0],s=n[1];0===n[1].length&&(y(e),0===e.length||"code"!==e[0].type?console.error("Found magic link with nothing after the equals sign & no code block following: "+n[0]):s=e.shift().text),m(c,t,s)}else console.error("Unknown metadata key: "+n[0]);y(e)}for(let e=0;e0&&e[0].type!==t;)e.shift()}function y(e){for(;e.length>0&&"space"===e[0].type;)e.shift()}var v=n(579);const w="Requesting help from the AI tutor...",R="NEXT_HELP_TIME";var k=n(3216),E=(n(119),n(6494)),C=n(2561);const j=2;let N=function(e){return e.Passed="Passed",e.Failed="Failed",e.Exception="Exception",e.NotRun="Not run",e}({});class S{constructor(){this.testResults=[],this.returnedResults=[],this.expectedResults=[],this.parseError="",this.errorLine=-1,this.runtimeError="",this.outputs=[],this.ranSuccessfully=!0}}class L{constructor(e,t){this.str=void 0,this.lineNum=void 0,this.str=e,this.lineNum=t}}const P=n(5311).A;function I(e){let t=[],n=1;const s=[" ","(",")","{","}",":",",",";","\n"];let r=0;for(let o=0;o""!==e.str))}function A(e,t,n,s){let r=e.stack;void 0===r&&(r="");let o=r.split("\n");for(let a=0;a:/g;for(let a=0;a=t[e]&&l<=n[e]){u=t[e],c=n[e];break}if(-1!==u&&-1!==c){let t=l-u+1,n=0;for(let e=0;es[e]&&n++;t-=n;let c=parseInt(r[2]),h="".concat(t,":").concat(c);o[a]=e.replace(r[0],h),-1===i&&(i=t)}}}return e.stack=o.join("\n"),i}function T(e){return void 0===e?"undefined":null===e?"null":e.toString()}function F(e){let t=e.solutionCode,n="expectedResults"+crypto.randomUUID().replace(/-/g,""),s="\nlet ".concat(n," = [] || [];\n \n").concat(t,"\n "),r=e.tests.concat(e.hiddenTests);for(let i=0;iT(e)))}const D=(e,t)=>{if(!e.length)return t.length;if(!t.length)return e.length;const n=[];for(let s=0;s<=t.length;s++){n[s]=[s];for(let r=1;r<=e.length;r++)n[s][r]=0===s?r:Math.min(n[s-1][r]+1,n[s][r-1]+1,n[s-1][r-1]+(e[r-1]===t[s-1]?0:1))}return n[t.length][e.length]};var U=n(1020),M=n(34);o.A.registerAliases([""],{languageName:"javascript"});const _=(0,l.lazy)((()=>Promise.all([n.e(671),n.e(303)]).then(n.bind(n,4303)))),H=new s.Dz((0,r.x)({langPrefix:"hljs language-",highlight(e,t,n){const s=o.A.getLanguage(t)?t:"plaintext";return o.A.highlight(e,{language:s}).value}}));function W(e,t){null!==t.currentCode&&""!==t.currentCode&&void 0!==t.currentCode||console.error("User data is being saved with no code"),localStorage.setItem(B(e.id,(0,u.J3)()),JSON.stringify(t))}function B(e,t){return"problem "+e}function O(){var e,t,n;const[s,r]=(0,l.useState)(null),{"*":i}=(0,k.g)(),[g,m]=(0,l.useState)(null),[j,L]=(0,l.useState)('When you press "I\'m stuck", the AI tutor will respond here.'),[M,O]=(0,l.useState)({anchorEl:null,magicLink:"",highlight:!0});function V(){return function(e,t,n){if(0===t.history.length)t.history.push(t.currentCode);else{t.history[t.history.length-1]!==t.currentCode&&t.history.push(t.currentCode)}t.lastUpdated=new Date;let s=function(e,t){let n,s=e.currentCode;try{n=C.qg(s,{ecmaVersion:"latest",locations:!0})}catch(y){if(y instanceof SyntaxError){let e=y.message;return y.pos===s.length&&(e+="\nUnexpected end of input. Check that you have closed all brackets and parentheses."),{testResults:[],returnedResults:[],expectedResults:F(t),parseError:e,errorLine:y.loc.line,runtimeError:"",outputs:[],ranSuccessfully:!1}}throw y}{let e={returnableError:{testResults:[],returnedResults:[],expectedResults:F(t),parseError:"You need to define a function with the following signature:"+t.solutionCode.split("{")[0],errorLine:1,runtimeError:"",outputs:[],ranSuccessfully:!1},matchedTokens:0,levenshteinDistance:1e5},r=!1;e:for(let o of n.body){let n=s.substring(o.start,o.end).split("{")[0],l=I(n),i=t.solutionCode.split("{")[0],a=I(i);for(let s=0;se.str)).join(" ")+"` but got: `"+l[s].str+"`.";let r=D(l[s].str,a[s].str);(s>e.matchedTokens||r=e.matchedTokens)&&(e={returnableError:{testResults:[],returnedResults:[],expectedResults:F(t),parseError:n,errorLine:l[s].lineNum,runtimeError:"",outputs:[],ranSuccessfully:!1},matchedTokens:s,levenshteinDistance:r});continue e}if(l.length===a.length){r=!0;break}l.length>e.matchedTokens&&(e={returnableError:{testResults:[],returnedResults:[],expectedResults:F(t),parseError:"Function signature does not match the expected signature. Expected: "+i+" but got: "+n,errorLine:l[l.length-1].lineNum,runtimeError:"",outputs:[],ranSuccessfully:!1},matchedTokens:l.length,levenshteinDistance:1e5})}if(!r)return e.returnableError}function r(e,t){let n=1;for(let s=t;s 10000) { throw new Error("Infinite loop detected. Execution stopped."); }\n');s=r+h+n+d+i,o.push(a),o.push(u);let p=h.length+d.length;for(let s=v+1;s=m.length){b.testResults.push(N.NotRun),b.expectedResults.push("Unknown"),b.returnedResults.push("Unknown"),b.outputs.push([]),b.ranSuccessfully=!1;continue}if(v>=f.length){b.testResults.push(N.NotRun),b.expectedResults.push(m[v].toString()),b.returnedResults.push("Unknown"),b.outputs.push([]),b.ranSuccessfully=!1;continue}let e,n=f[v],r=m[v];if(e=v>t.tests.length?[]:x[v],r instanceof Error){b.expectedResults.push("Error"),b.returnedResults.push("Error"),b.testResults.push(N.NotRun),console.error("A test case failed to run the solution: "+r),console.log("Test: "+g[v]),console.log("Solution: "+t.solutionCode),console.log("User code: "+s),b.ranSuccessfully=!1;continue}b.expectedResults.push(T(r));let l=[];for(let t of e){let e="";"log"!==t.function&&(e=t.function+": ");for(let n of t.args)n instanceof Error&&A(n,d,p,o);t.args.length>0?e+=E.format(t.args[0],...t.args.slice(1)):e+="",l.push(e)}b.outputs.push(l),n instanceof Error?(b.returnedResults.push("Error"),b.testResults.push(N.Exception),b.errorLine=A(n,d,p,o),b.runtimeError=n.stack,b.ranSuccessfully=!1):(b.returnedResults.push(T(n)),n.type===r.type&&n.toString()!==r.toString()?b.testResults.push(N.Failed):b.testResults.push(N.Passed))}return b}(t,e),r=new Y(t.history,t.requestHelpHistory,s,new Date,t.currentCode,t.aiRememberResponse);return n(r),W(e,r),r}(s,g,m)}let G=null===i||void 0===i?void 0:i.toLowerCase();if(null===(e=G)||void 0===e||e.trim(),null!==(t=G)&&void 0!==t&&t.startsWith("/")&&(G=G.substring(1)),null!==(n=G)&&void 0!==n&&n.endsWith("/")&&(G=G.substring(0,G.length-1)),(0,l.useEffect)((()=>{void 0!==G&&fetch("/problems/"+G+".md").then((async e=>{let t=await e.text();if(e.ok&&t.startsWith("#"))return t;throw new Error("Failed to fetch problem data")})).then((async e=>{let t=function(e,t){let n=H.lexer(e),s=n.shift().text,r="";if(b(n,"heading"),"Context"===n[0].text)for(n.shift();n.length>0&&("heading"!==n[0].type||n[0].depth>1);)r+=n.shift().raw;x(n,"description");let o="";for(;n.length>0&&("heading"!==n[0].type||n[0].depth>1);)o+=n.shift().raw;x(n,"Problem"),"code"!==n[0].type&&console.error("Problem Parse: No code block found after problem heading. If no template code is needed, please use a code block with no content (with the correct language).");let l=n.shift();l.lang||console.error("Problem Parse: No code language specified for problem "+t);let i,a,u=l.lang?l.lang:"javascript",c=l.text.split("// Your code here");0===c.length||""===c[0].trim()?(console.log("Problem Parse: Code block has no content"),i="",a=""):(i=c[0].trim(),1===c.length?(a="",console.error("Problem Parse: No secondary display content found in problem "+t+". It is unlikely that this is intentional. Ensure that you have a comment with the text '// Your code here' in the problem description.")):a=c[1].trim()),x(n,"Solution"),y(n);let h="",d="";for(;n.length>0&&!("heading"===n[0].type&&n[0].depth<=1);)"code"===n[0].type&&""===d&&(d+=n[0].text),h+=n.shift().raw;x(n,"Test Cases");let p=[];f(n,p),x(n,"Hidden Test Cases");let g,m=[];return f(n,m),x(n,"Next"),0===n.length||"paragraph"!==n[0].type?g="nothing":(g=n.shift().text,g=g.trim(),g.startsWith("/")&&(g=g.substring(1)),g.endsWith("/")&&(g=g.substring(0,g.length-1)),""===g&&(g="nothing")),{id:t,title:s,preProblemDescription:r,description:o,tests:p,hiddenTests:m,displayAbove:i,displayBelow:a,solution:h,solutionCode:d,codeLang:u,nextProblemId:g}}(e,G),n=function(e,t){if(void 0===e)return console.error("No problem id was specified, so no user data could be retrieved."),new Y;let n=localStorage.getItem(B(e));null===n&&(n=localStorage.getItem(B(e)),null!==n&&console.log("Got user data without username"));if(null===n)return new Y;return JSON.parse(n)}(G,(0,u.J3)());null!==n.currentCode&&""!==n.currentCode&&void 0!==n.currentCode||(console.log("First time loading problem, setting template data"),""!==t.displayAbove&&""!==t.displayBelow&&(n.currentCode=t.displayAbove+"\n\t\n"+t.displayBelow)),void 0!==n.testResults&&null!==n.testResults&&0!==n.testResults.expectedResults.length||(console.log("First time loading problem, getting expected results"),n.testResults=new S,n.testResults.expectedResults=F(t)),r(t),m(n)})).catch((e=>{console.error(e);let t=new p;t.title="Failed to load problem "+G,r(t)}))}),[G]),null===s||null===g)return null!=s&&void 0!==s.title&&s.title.startsWith("Failed to load problem")&&void 0!==G?(0,v.jsxs)("div",{children:["Failed to load problem ",G]}):void 0!==G?(0,v.jsx)("div",{children:"Loading..."}):(0,v.jsx)("div",{children:"A problem wasn't specified"});let X=s.codeLang;""===X&&(X="plaintext");let K=a().sanitize(H.parse(s.preProblemDescription+"\n\n"+s.description));const Q=function(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];O({anchorEl:e.currentTarget,magicLink:t,highlight:n})},Z=()=>{O({anchorEl:null,magicLink:M.magicLink,highlight:M.highlight})},$=Boolean(M.anchorEl);let ee=[];for(let o=0;o0&&(ne=(0,v.jsx)("ul",{className:"",children:ee.map(((e,t)=>(0,v.jsx)("li",{children:e},t)))})),0===g.testResults.testResults.length)te="Hidden tests will be run when you submit your code";else{let e=s.hiddenTests.length,t=0;for(let n=0;n