From d7bce3ae5e3de901698aabcc88b4ca857eb78bc4 Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Wed, 18 May 2022 17:01:31 +0900 Subject: [PATCH 1/7] =?UTF-8?q?[init]=20=ED=8C=8C=EC=9D=BC=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\354\243\274\355\225\250/favicon.svg" | 15 ++ .../\354\243\274\355\225\250/index.html" | 35 +++ .../\354\243\274\355\225\250/main.js" | 127 +++++++++++ .../\354\243\274\355\225\250/package.json" | 13 ++ .../\354\243\274\355\225\250/style.css" | 96 ++++++++ .../\354\243\274\355\225\250/yarn.lock" | 215 ++++++++++++++++++ 6 files changed, 501 insertions(+) create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/main.js" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/style.css" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" new file mode 100644 index 0000000..de4aedd --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" new file mode 100644 index 0000000..976ec17 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" @@ -0,0 +1,35 @@ + + + 2022 FE 데브매칭 + + + + +
+
+ +
+
+ +
+
+ +
+
+ + \ No newline at end of file diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/main.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/main.js" new file mode 100644 index 0000000..2ec78d4 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/main.js" @@ -0,0 +1,127 @@ +// 버벅임 ... 서버 키고 실행해야 함 +// 할 때마다 실행? 닫기? +// 방향키, 보너스 제외 1시간 반 + +const $ = (selector) => document.querySelector(selector); + +const resultContainer = $(".Suggestion"); +const resultWrapper = resultContainer.querySelector("ul"); +const resultArr = []; + +let focusingIdx = 0; + +function renderKeyword() { + const renderingWrapper = $(".SelectedLanguage").querySelector("ul"); + + renderingWrapper.innerHTML = ""; + resultArr.map((result) => { + const li = document.createElement("li"); + li.innerText = result; + renderingWrapper.appendChild(li); + }); +} + +function addRenderingKeyword(result) { + window.alert(result); + + if (resultArr.includes(result)) return; + + if (resultArr.length >= 5) resultArr.shift(); + resultArr.push(result); + + renderKeyword(); +} + +function separateResultStr(result, keyword) { + const _result = (result + "").toLowerCase(); + const _keyword = (keyword + "").toLowerCase(); + + const keywordLength = _keyword.length; + const matchingIdx = _result.indexOf(_keyword); + + const str1 = _result.slice(0, matchingIdx); + const str2 = _result.slice(matchingIdx, matchingIdx + keywordLength); + const str3 = _result.slice(matchingIdx + keywordLength); + + return `${str1}${str2}${str3}`; +} + +function focusListWithArrowKeyNEnter(e) { + const maxLength = resultWrapper.childNodes.length; + const prevFocusingIdx = focusingIdx; + + switch (e.key) { + case "Enter": + addRenderingKeyword(resultWrapper.childNodes[focusingIdx].innerText); + return; + case "ArrowUp": + focusingIdx = (focusingIdx - 1) % maxLength; + break; + case "ArrowDown": + focusingIdx = (focusingIdx + 1) % maxLength; + break; + default: + break; + } + + resultWrapper.childNodes[prevFocusingIdx]?.classList.remove( + "Suggestion__item--selected" + ); + resultWrapper.childNodes[focusingIdx]?.classList.add( + "Suggestion__item--selected" + ); +} + +async function handleInputKeyword(keyword, key) { + if (`${key}` === "ArrowUp" || `${key}` === "ArrowDown") return; + + // 함수로 분리하면 Promise 반환? + const response = await fetch( + `https://wr4a6p937i.execute-api.ap-northeast-2.amazonaws.com/dev/languages?keyword=${keyword}`, + { + method: "GET", + } + ); + const resultData = await response.json(); + + if (keyword === "" || resultData.length === 0) { + resultWrapper.innerHTML = ""; + resultContainer.style.display = "none"; + return; + } else { + resultContainer.style.display = "block"; + } + + resultWrapper.innerHTML = ""; + resultData.map((result, idx) => { + const li = document.createElement("li"); + + if (idx === focusingIdx) { + li.setAttribute("class", "Suggestion__item--selected"); + } + + li.innerHTML = separateResultStr(result, keyword); + li.addEventListener("click", () => addRenderingKeyword(result)); + resultWrapper.appendChild(li); + }); +} + +function init() { + const form = $("form.SearchInput"); + form.addEventListener("submit", (e) => e.preventDefault()); + + resultContainer.style.display = "none"; + + const input = $(".SearchInput__input"); + input.addEventListener("keyup", (e) => + handleInputKeyword(e.target.value, e.key) + ); + input.focus(); + + document.addEventListener("keyup", focusListWithArrowKeyNEnter); +} + +init(); + +// useEffect 없이 디바운스? +// API 캐싱? diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" new file mode 100644 index 0000000..8ea4393 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" @@ -0,0 +1,13 @@ +{ + "name": "week1", + "version": "0.0.0", + "private": true, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "devDependencies": { + "vite": "^2.9.0" + } +} \ No newline at end of file diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/style.css" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/style.css" new file mode 100644 index 0000000..4c3f740 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/style.css" @@ -0,0 +1,96 @@ +* { + box-sizing: border-box; +} + +ul { + padding: 0; + margin: 0; +} + +li { + list-style: none; +} + +html, body { + width: 100%; + height: 100%; + margin: 0; +} + +.App { + display: flex; + flex-direction: column; + position: relative; + height: 100%; + justify-content: center; + align-items: center; +} + +.SearchInput { + width: 300px; +} + +.SearchInput__input { + width: 100%; + border: 1px solid black; + border-radius: 24px; + padding: 10px 24px; + font-size: 20px +} + +.Suggestion { + position: absolute; + font-size: 20px; + width: 300px; + top: 50%; + z-index: 1; + padding: 10px; + border-radius: 24px; + border: 1px solid black; + +} + +.Suggestion ul { + width: 100%; +} + +.Suggestion li { + padding: 10px; + cursor: pointer; + width: 100%; +} + +.Suggestion li:hover { + background-color: #90CDF4; +} + +.Suggestion__item--selected { + background-color: #BEE3F8; +} + +.Suggestion__item--matched { + background-color: #9AE6B4; +} + +.SelectedLanguage { + display: flex; + justify-content: center; + margin: 0 auto; + flex-wrap: nowrap; + width: 800px; + height: 37.5px; + margin-top: -100px; + margin-bottom: 10px; + +} + +.SelectedLanguage li { + display: inline-block; + padding: 8px; + border: 1px solid #ccc; + border-radius: 8px; + max-width: 100px; + overflow:hidden; + text-overflow:ellipsis; + white-space:nowrap; +} \ No newline at end of file diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" new file mode 100644 index 0000000..0f3882f --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" @@ -0,0 +1,215 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +esbuild-android-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.30.tgz#9efcdb3d826b9c67705a0c518d361ab44ae4cc5b" + integrity sha512-vdJ7t8A8msPfKpYUGUV/KaTQRiZ0vDa2XSTlzXVkGGVHLKPeb85PBUtYJcEgw3htW3IdX5i1t1IMdQCwJJgNAg== + +esbuild-android-arm64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.30.tgz#7b90fa7578b94da047e0bf3da477cb5775b58664" + integrity sha512-BdgGfxeA5hBQNErLr7BWJUA8xjflEfyaARICy8e0OJYNSAwDbEzOf8LyiKWSrDcgV129mWhi3VpbNQvOIDEHcg== + +esbuild-darwin-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.30.tgz#275e40eb100286b868d4cd664e6447b53400f7ff" + integrity sha512-VRaOXMMrsG5n53pl4qFZQdXy2+E0NoLP/QH3aDUI0+bQP+ZHDmbINKcDy2IX7GVFI9kqPS18iJNAs5a6/G2LZg== + +esbuild-darwin-arm64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.30.tgz#c2b8fe03fb0dcee1d227b226c9c921de71e4d411" + integrity sha512-qDez+fHMOrO9Oc9qjt/x+sy09RJVh62kik5tVybKRLmezeV4qczM9/sAYY57YN0aWLdHbcCj2YqJUWYJNsgKnw== + +esbuild-freebsd-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.30.tgz#328bb272ce6cfcae202b6e0a06c240036335cc91" + integrity sha512-mec1jENcImVVagddZlGWsdAUwBnzR5cgnhzCxv+9fSMxKbx1uZYLLUAnLPp8m/i934zrumR1xGjJ5VoWdPlI2w== + +esbuild-freebsd-arm64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.30.tgz#49ce79fa7d7087a941e27432da46bafb5b35a979" + integrity sha512-cpjbTs6Iok/AfeB0JgTzyUJTMStC1SQULmany5nHx6S4GTkSgaAHuJzZO0GcVWqghI4e0YL/bjXAhN5Mn6feNw== + +esbuild-linux-32@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.30.tgz#c473299f5291130f6d4436808603b529ccbfa785" + integrity sha512-liIONVT4F2kZmOMwtwASqZ8WkIjb5HHBR9HUffdHiuotSTF3CyZO+EJf+Og+SYYuuVIvt0qHNSFjBA/iSESteQ== + +esbuild-linux-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.30.tgz#b4be59f0665a44574a7617c9db673943da6061f8" + integrity sha512-LUnpzoMpRqFON5En4qEj6NWiyH6a1K+Y2qYNKrCy5qPTjDoG/EWeqMz69n8Uv7pRuvDKl3FNGJ1dufTrA5i0sw== + +esbuild-linux-arm64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.30.tgz#78485a9f49858ea69ced85c3dd0fe58d354f20f8" + integrity sha512-DHZHn6FK5q/KL0fpNT/0jE38Nnyk2rXxKE9WENi95EXtqfOLPgE8tzjTZQNgpr61R95QX4ymQU26ni3IZk8buQ== + +esbuild-linux-arm@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.30.tgz#00392bbe04ac687dd6d9849ecee302bc27f984f2" + integrity sha512-97T+bbXnpqf7mfIG49UR7ZSJFGgvc22byn74qw3Kx2GDCBSQoVFjyWuKOHGXp8nXk3XYrdFF+mQ8yQ7aNsgQvg== + +esbuild-linux-mips64le@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.30.tgz#cf48a292037c3a9ca3ca84ec0ae4f47bf1247ab4" + integrity sha512-fLUzTFZ7uknC0aPTk7/lM7NmaG/9ZqE3SaHEphcaM009SZK/mDOvZugWi1ss6WGNhk13dUrhkfHcc4FSb9hYhg== + +esbuild-linux-ppc64le@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.30.tgz#8e448a54e7040829ee9ecfc68dab0f3a039b1cff" + integrity sha512-2Oudm2WEfj0dNU9bzIl5L/LrsMEmHWsOsYgJJqu8fDyUDgER+J1d33qz3cUdjsJk7gAENayIxDSpsuCszx0w3A== + +esbuild-linux-riscv64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.30.tgz#118af007f21adb00c4362d5eda3f004290f4d0ef" + integrity sha512-RPMucPW47rV4t2jlelaE948iCRtbZf5RhifxSwzlpM1Mqdyu99MMNK0w4jFreGTmLN+oGomxIOxD6n+2E/XqHw== + +esbuild-linux-s390x@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.30.tgz#e0649e26d8791bf6265685842dcef732de59b49b" + integrity sha512-OZ68r7ok6qO7hdwrwQn2p5jbIRRcUcVaAykB7e0uCA0ODwfeGunILM6phJtq2Oz4dlEEFvd+tSuma3paQKwt+A== + +esbuild-netbsd-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.30.tgz#7653db21ab4379a1b557f338b040e3493ff5006c" + integrity sha512-iyejQUKn0TzpPkufq8pSCxOg9NheycQbMbPCmjefTe9wYuUlBt1TcHvdoJnYbQzsAhAh1BNq+s0ycRsIJFZzaQ== + +esbuild-openbsd-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.30.tgz#3fad1699cb2ca7a060585356e2881df7b3fa5bb1" + integrity sha512-UyK1MTMcy4j5fH260fsE1o6MVgWNhb62eCK2yCKCRazZv8Nqdc2WiP9ygjWidmEdCDS+A6MuVp9ozk9uoQtQpA== + +esbuild-sunos-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.30.tgz#2306a178dc2362cf32fc182327c21b49b78ca1a3" + integrity sha512-aQRtRTNKHB4YuG+xXATe5AoRTNY48IJg5vjE8ElxfmjO9+KdX7MHFkTLhlKevCD6rNANtB3qOlSIeAiXTwHNqw== + +esbuild-windows-32@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.30.tgz#ea17b2a9468e346734f926a7edd49de3cc81d12f" + integrity sha512-9/fb1tPtpacMqxAXp3fGHowUDg/l9dVch5hKmCLEZC6PdGljh6h372zMdJwYfH0Bd5CCPT0Wx95uycBLJiqpXA== + +esbuild-windows-64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.30.tgz#266147f1f45974ac61dece10ab32bc916050dcc2" + integrity sha512-DHgITeUhPAnN9I5O6QBa1GVyPOhiYCn4S4TtQr7sO4+X0LNyqnlmA1M0qmGkUdDC1QQfjI8uQ4G/whdWb2pWIQ== + +esbuild-windows-arm64@0.14.30: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.30.tgz#8e5e9c2455bffaf3e1a387eee4841f5c3797b8a8" + integrity sha512-F1kLyQH7zSgjh5eLxogGZN7C9+KNs9m+s7Q6WZoMmCWT/6j998zlaoECHyM8izJRRfsvw2eZlEa1jO6/IOU1AQ== + +esbuild@^0.14.27: + version "0.14.30" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.30.tgz#8bf6501a58f71e622e7485aeada79c764c1affe4" + integrity sha512-wCecQSBkIjp2xjuXY+wcXS/PpOQo9rFh4NAKPh4Pm9f3fuLcnxkR0rDzA+mYP88FtXIUcXUyYmaIgfrzRl55jA== + optionalDependencies: + esbuild-android-64 "0.14.30" + esbuild-android-arm64 "0.14.30" + esbuild-darwin-64 "0.14.30" + esbuild-darwin-arm64 "0.14.30" + esbuild-freebsd-64 "0.14.30" + esbuild-freebsd-arm64 "0.14.30" + esbuild-linux-32 "0.14.30" + esbuild-linux-64 "0.14.30" + esbuild-linux-arm "0.14.30" + esbuild-linux-arm64 "0.14.30" + esbuild-linux-mips64le "0.14.30" + esbuild-linux-ppc64le "0.14.30" + esbuild-linux-riscv64 "0.14.30" + esbuild-linux-s390x "0.14.30" + esbuild-netbsd-64 "0.14.30" + esbuild-openbsd-64 "0.14.30" + esbuild-sunos-64 "0.14.30" + esbuild-windows-32 "0.14.30" + esbuild-windows-64 "0.14.30" + esbuild-windows-arm64 "0.14.30" + +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +is-core-module@^2.8.1: + version "2.8.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + dependencies: + has "^1.0.3" + +nanoid@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557" + integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +postcss@^8.4.12: + version "8.4.12" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.12.tgz#1e7de78733b28970fa4743f7da6f3763648b1905" + integrity sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg== + dependencies: + nanoid "^3.3.1" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +resolve@^1.22.0: + version "1.22.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + dependencies: + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +rollup@^2.59.0: + version "2.70.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.70.1.tgz#824b1f1f879ea396db30b0fc3ae8d2fead93523e" + integrity sha512-CRYsI5EuzLbXdxC6RnYhOuRdtz4bhejPMSWjsFLfVM/7w/85n2szZv6yExqUXsBdz5KT8eoubeyDUDjhLHEslA== + optionalDependencies: + fsevents "~2.3.2" + +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +vite@^2.9.0: + version "2.9.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-2.9.1.tgz#84bce95fae210a7beb566a0af06246748066b48f" + integrity sha512-vSlsSdOYGcYEJfkQ/NeLXgnRv5zZfpAsdztkIrs7AZHV8RCMZQkwjo4DS5BnrYTqoWqLoUe1Cah4aVO4oNNqCQ== + dependencies: + esbuild "^0.14.27" + postcss "^8.4.12" + resolve "^1.22.0" + rollup "^2.59.0" + optionalDependencies: + fsevents "~2.3.2" From caa34d70c8e3685f4220a443132b7d4b1dbb9e6d Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Wed, 18 May 2022 17:03:55 +0900 Subject: [PATCH 2/7] =?UTF-8?q?[fix]=20vite=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\354\243\274\355\225\250/favicon.svg" | 15 -- .../\354\243\274\355\225\250/j.md" | 0 .../\354\243\274\355\225\250/package.json" | 13 -- .../\354\243\274\355\225\250/yarn.lock" | 215 ------------------ 4 files changed, 243 deletions(-) delete mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" delete mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/j.md" delete mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" delete mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" deleted file mode 100644 index de4aedd..0000000 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/favicon.svg" +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/j.md" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/j.md" deleted file mode 100644 index e69de29..0000000 diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" deleted file mode 100644 index 8ea4393..0000000 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/package.json" +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "week1", - "version": "0.0.0", - "private": true, - "scripts": { - "dev": "vite", - "build": "vite build", - "preview": "vite preview" - }, - "devDependencies": { - "vite": "^2.9.0" - } -} \ No newline at end of file diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" deleted file mode 100644 index 0f3882f..0000000 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/yarn.lock" +++ /dev/null @@ -1,215 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -esbuild-android-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.30.tgz#9efcdb3d826b9c67705a0c518d361ab44ae4cc5b" - integrity sha512-vdJ7t8A8msPfKpYUGUV/KaTQRiZ0vDa2XSTlzXVkGGVHLKPeb85PBUtYJcEgw3htW3IdX5i1t1IMdQCwJJgNAg== - -esbuild-android-arm64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.30.tgz#7b90fa7578b94da047e0bf3da477cb5775b58664" - integrity sha512-BdgGfxeA5hBQNErLr7BWJUA8xjflEfyaARICy8e0OJYNSAwDbEzOf8LyiKWSrDcgV129mWhi3VpbNQvOIDEHcg== - -esbuild-darwin-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.30.tgz#275e40eb100286b868d4cd664e6447b53400f7ff" - integrity sha512-VRaOXMMrsG5n53pl4qFZQdXy2+E0NoLP/QH3aDUI0+bQP+ZHDmbINKcDy2IX7GVFI9kqPS18iJNAs5a6/G2LZg== - -esbuild-darwin-arm64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.30.tgz#c2b8fe03fb0dcee1d227b226c9c921de71e4d411" - integrity sha512-qDez+fHMOrO9Oc9qjt/x+sy09RJVh62kik5tVybKRLmezeV4qczM9/sAYY57YN0aWLdHbcCj2YqJUWYJNsgKnw== - -esbuild-freebsd-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.30.tgz#328bb272ce6cfcae202b6e0a06c240036335cc91" - integrity sha512-mec1jENcImVVagddZlGWsdAUwBnzR5cgnhzCxv+9fSMxKbx1uZYLLUAnLPp8m/i934zrumR1xGjJ5VoWdPlI2w== - -esbuild-freebsd-arm64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.30.tgz#49ce79fa7d7087a941e27432da46bafb5b35a979" - integrity sha512-cpjbTs6Iok/AfeB0JgTzyUJTMStC1SQULmany5nHx6S4GTkSgaAHuJzZO0GcVWqghI4e0YL/bjXAhN5Mn6feNw== - -esbuild-linux-32@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.30.tgz#c473299f5291130f6d4436808603b529ccbfa785" - integrity sha512-liIONVT4F2kZmOMwtwASqZ8WkIjb5HHBR9HUffdHiuotSTF3CyZO+EJf+Og+SYYuuVIvt0qHNSFjBA/iSESteQ== - -esbuild-linux-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.30.tgz#b4be59f0665a44574a7617c9db673943da6061f8" - integrity sha512-LUnpzoMpRqFON5En4qEj6NWiyH6a1K+Y2qYNKrCy5qPTjDoG/EWeqMz69n8Uv7pRuvDKl3FNGJ1dufTrA5i0sw== - -esbuild-linux-arm64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.30.tgz#78485a9f49858ea69ced85c3dd0fe58d354f20f8" - integrity sha512-DHZHn6FK5q/KL0fpNT/0jE38Nnyk2rXxKE9WENi95EXtqfOLPgE8tzjTZQNgpr61R95QX4ymQU26ni3IZk8buQ== - -esbuild-linux-arm@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.30.tgz#00392bbe04ac687dd6d9849ecee302bc27f984f2" - integrity sha512-97T+bbXnpqf7mfIG49UR7ZSJFGgvc22byn74qw3Kx2GDCBSQoVFjyWuKOHGXp8nXk3XYrdFF+mQ8yQ7aNsgQvg== - -esbuild-linux-mips64le@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.30.tgz#cf48a292037c3a9ca3ca84ec0ae4f47bf1247ab4" - integrity sha512-fLUzTFZ7uknC0aPTk7/lM7NmaG/9ZqE3SaHEphcaM009SZK/mDOvZugWi1ss6WGNhk13dUrhkfHcc4FSb9hYhg== - -esbuild-linux-ppc64le@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.30.tgz#8e448a54e7040829ee9ecfc68dab0f3a039b1cff" - integrity sha512-2Oudm2WEfj0dNU9bzIl5L/LrsMEmHWsOsYgJJqu8fDyUDgER+J1d33qz3cUdjsJk7gAENayIxDSpsuCszx0w3A== - -esbuild-linux-riscv64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.30.tgz#118af007f21adb00c4362d5eda3f004290f4d0ef" - integrity sha512-RPMucPW47rV4t2jlelaE948iCRtbZf5RhifxSwzlpM1Mqdyu99MMNK0w4jFreGTmLN+oGomxIOxD6n+2E/XqHw== - -esbuild-linux-s390x@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.30.tgz#e0649e26d8791bf6265685842dcef732de59b49b" - integrity sha512-OZ68r7ok6qO7hdwrwQn2p5jbIRRcUcVaAykB7e0uCA0ODwfeGunILM6phJtq2Oz4dlEEFvd+tSuma3paQKwt+A== - -esbuild-netbsd-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.30.tgz#7653db21ab4379a1b557f338b040e3493ff5006c" - integrity sha512-iyejQUKn0TzpPkufq8pSCxOg9NheycQbMbPCmjefTe9wYuUlBt1TcHvdoJnYbQzsAhAh1BNq+s0ycRsIJFZzaQ== - -esbuild-openbsd-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.30.tgz#3fad1699cb2ca7a060585356e2881df7b3fa5bb1" - integrity sha512-UyK1MTMcy4j5fH260fsE1o6MVgWNhb62eCK2yCKCRazZv8Nqdc2WiP9ygjWidmEdCDS+A6MuVp9ozk9uoQtQpA== - -esbuild-sunos-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.30.tgz#2306a178dc2362cf32fc182327c21b49b78ca1a3" - integrity sha512-aQRtRTNKHB4YuG+xXATe5AoRTNY48IJg5vjE8ElxfmjO9+KdX7MHFkTLhlKevCD6rNANtB3qOlSIeAiXTwHNqw== - -esbuild-windows-32@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.30.tgz#ea17b2a9468e346734f926a7edd49de3cc81d12f" - integrity sha512-9/fb1tPtpacMqxAXp3fGHowUDg/l9dVch5hKmCLEZC6PdGljh6h372zMdJwYfH0Bd5CCPT0Wx95uycBLJiqpXA== - -esbuild-windows-64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.30.tgz#266147f1f45974ac61dece10ab32bc916050dcc2" - integrity sha512-DHgITeUhPAnN9I5O6QBa1GVyPOhiYCn4S4TtQr7sO4+X0LNyqnlmA1M0qmGkUdDC1QQfjI8uQ4G/whdWb2pWIQ== - -esbuild-windows-arm64@0.14.30: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.30.tgz#8e5e9c2455bffaf3e1a387eee4841f5c3797b8a8" - integrity sha512-F1kLyQH7zSgjh5eLxogGZN7C9+KNs9m+s7Q6WZoMmCWT/6j998zlaoECHyM8izJRRfsvw2eZlEa1jO6/IOU1AQ== - -esbuild@^0.14.27: - version "0.14.30" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.30.tgz#8bf6501a58f71e622e7485aeada79c764c1affe4" - integrity sha512-wCecQSBkIjp2xjuXY+wcXS/PpOQo9rFh4NAKPh4Pm9f3fuLcnxkR0rDzA+mYP88FtXIUcXUyYmaIgfrzRl55jA== - optionalDependencies: - esbuild-android-64 "0.14.30" - esbuild-android-arm64 "0.14.30" - esbuild-darwin-64 "0.14.30" - esbuild-darwin-arm64 "0.14.30" - esbuild-freebsd-64 "0.14.30" - esbuild-freebsd-arm64 "0.14.30" - esbuild-linux-32 "0.14.30" - esbuild-linux-64 "0.14.30" - esbuild-linux-arm "0.14.30" - esbuild-linux-arm64 "0.14.30" - esbuild-linux-mips64le "0.14.30" - esbuild-linux-ppc64le "0.14.30" - esbuild-linux-riscv64 "0.14.30" - esbuild-linux-s390x "0.14.30" - esbuild-netbsd-64 "0.14.30" - esbuild-openbsd-64 "0.14.30" - esbuild-sunos-64 "0.14.30" - esbuild-windows-32 "0.14.30" - esbuild-windows-64 "0.14.30" - esbuild-windows-arm64 "0.14.30" - -fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -is-core-module@^2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== - dependencies: - has "^1.0.3" - -nanoid@^3.3.1: - version "3.3.2" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557" - integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -postcss@^8.4.12: - version "8.4.12" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.12.tgz#1e7de78733b28970fa4743f7da6f3763648b1905" - integrity sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg== - dependencies: - nanoid "^3.3.1" - picocolors "^1.0.0" - source-map-js "^1.0.2" - -resolve@^1.22.0: - version "1.22.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" - integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== - dependencies: - is-core-module "^2.8.1" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -rollup@^2.59.0: - version "2.70.1" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.70.1.tgz#824b1f1f879ea396db30b0fc3ae8d2fead93523e" - integrity sha512-CRYsI5EuzLbXdxC6RnYhOuRdtz4bhejPMSWjsFLfVM/7w/85n2szZv6yExqUXsBdz5KT8eoubeyDUDjhLHEslA== - optionalDependencies: - fsevents "~2.3.2" - -source-map-js@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" - integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== - -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -vite@^2.9.0: - version "2.9.1" - resolved "https://registry.yarnpkg.com/vite/-/vite-2.9.1.tgz#84bce95fae210a7beb566a0af06246748066b48f" - integrity sha512-vSlsSdOYGcYEJfkQ/NeLXgnRv5zZfpAsdztkIrs7AZHV8RCMZQkwjo4DS5BnrYTqoWqLoUe1Cah4aVO4oNNqCQ== - dependencies: - esbuild "^0.14.27" - postcss "^8.4.12" - resolve "^1.22.0" - rollup "^2.59.0" - optionalDependencies: - fsevents "~2.3.2" From 6cc74a0658d48cb0cee561a72f11afb243ca8223 Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Wed, 18 May 2022 17:14:10 +0900 Subject: [PATCH 3/7] =?UTF-8?q?[docs]=20=EC=84=A4=EB=AA=85=EC=84=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\354\226\264 \352\262\200\354\203\211.md" | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211.md" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211.md" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211.md" new file mode 100644 index 0000000..e95b301 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211.md" @@ -0,0 +1,57 @@ +## 1. 초반에 엄청 버벅임 ... 동작법 익숙해지는 데에 시간을 많이 소요함 + +--- + +## 2. 할 때마다 실행 클릭하고, 하나씩 닫고 ... 결국 고치고 저장하고 새로고침 했는데 이거 맞나? + +--- + +## 3. 차례대로 쭉 풀며 기본 구현사항들 풀어나감, + +괜히 제한시간이 있다고 생각하니까 리팩토링보다는 막 갈기게 됨 + +여유 가지는 연습이 필요할 듯 + +--- + +## 4. 방향키로 리스트 탐색 + 추가 구현사항 제외하고 1시간 반 정도 소요함 + +괜히 시간 많다고 느껴지니까 집중력 매우 떨어짐 + +한 줄 쓰고 인스타 보고 반복,, 쩝 실전 때는 안 그러겠지? + +--- + +## 5. LocalStorage 사용해서 새로고침 상태 유지는 귀찮아서 그냥 넘김, 무슨 심보인지 모르겠음 + +--- + +## 6. 결과적으로 API 캐싱과 디바운스 기능 빼고는 얼추 완성함 + +근데 이거 막 갈겨서 코드리뷰 할 맛 안 나겠다 싶음 ... 빨리 친구들 코드 봐보고 싶음 + +--- + +## 7. 해설지도 대충 봐봤는데 API 캐싱 신기 .! 디바운스 기능은 그냥 라이브러리 쓰는 건가~.~ + +아래는 해설지의 캐싱 기능 + +```javascript +const cache = {}; + +const request = async (url) => { + if (cache[url]) { + return cache[url]; + } + + const res = await fetch(url); + + if (res.ok) { + const json = await res.json(); + cache[url] = json; + return json; + } + + throw new Error("요청에 실패함"); +}; +``` From e942601090be73c1d80ad004ca37f5c608ebfe6a Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Mon, 30 May 2022 01:06:19 +0900 Subject: [PATCH 4/7] =?UTF-8?q?[feat]=20App=20=EC=BB=B4=ED=8F=AC=EB=84=8C?= =?UTF-8?q?=ED=8A=B8=20=EC=9E=91=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\354\243\274\355\225\250/App.js" | 10 ++++++++++ .../\354\243\274\355\225\250/index.html" | 1 + .../\354\243\274\355\225\250/index.js" | 3 +++ 3 files changed, 14 insertions(+) create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.js" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" new file mode 100644 index 0000000..5a63848 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" @@ -0,0 +1,10 @@ +export default function App({ $target }) { + this.state = { + fetchedLanguages: [], + selectedLanguages: [], + }; + + this.setState = function (nextState) { + // + }; +} diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" index 976ec17..e657275 100644 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" @@ -2,6 +2,7 @@ 2022 FE 데브매칭 + diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.js" new file mode 100644 index 0000000..c0ca41c --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.js" @@ -0,0 +1,3 @@ +import App from "./App.js"; + +new App({ $target: document.querySelector(".App") }); From 077294d139eda6579b20e577f31319a46c0839ea Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Thu, 2 Jun 2022 16:00:55 +0900 Subject: [PATCH 5/7] [fix] parsing modul files --- .../\354\243\274\355\225\250/App.js" | 7 +++++++ .../\354\243\274\355\225\250/index.html" | 8 +++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" index 5a63848..e5013c6 100644 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" @@ -1,3 +1,5 @@ +import SearchInput from "./components/SearchInput.js"; + export default function App({ $target }) { this.state = { fetchedLanguages: [], @@ -7,4 +9,9 @@ export default function App({ $target }) { this.setState = function (nextState) { // }; + + const searchInput = new SearchInput({ + $target, + initialState: "", + }); } diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" index e657275..f190eaa 100644 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" @@ -2,8 +2,6 @@ 2022 FE 데브매칭 - -
@@ -32,5 +30,9 @@
+ + + + - \ No newline at end of file + \ No newline at end of file From 1c2ba4283e0c7480d36033da6be2226741503a95 Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Thu, 2 Jun 2022 16:01:35 +0900 Subject: [PATCH 6/7] [feat] add SearchInput --- .../components/SearchInput.js" | 15 +++++++++++++++ .../\354\243\274\355\225\250/index.html" | 2 -- 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/components/SearchInput.js" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/components/SearchInput.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/components/SearchInput.js" new file mode 100644 index 0000000..7579e34 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/components/SearchInput.js" @@ -0,0 +1,15 @@ +export default function SearchInput({ $target, initialState }) { + this.$element = document.createElement("form"); + this.$element.className = "SearchInput"; + this.state = initialState; + + $target.appendChild(this.$element); + + this.render = () => { + this.$element.innerHTML = ` + + `; + }; + + this.render(); +} diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" index f190eaa..1f7680a 100644 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/index.html" @@ -32,7 +32,5 @@ - - \ No newline at end of file From 7a24b681ee57694ffa4094878b14cf336fb8dd31 Mon Sep 17 00:00:00 2001 From: SNUPI <47105088+joohaem@users.noreply.github.com> Date: Thu, 2 Jun 2022 17:41:03 +0900 Subject: [PATCH 7/7] [feat] add request --- .../\354\243\274\355\225\250/App.js" | 5 +++++ .../\354\243\274\355\225\250/core/api.js" | 15 +++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 "\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/core/api.js" diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" index e5013c6..5354a84 100644 --- "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/App.js" @@ -1,4 +1,5 @@ import SearchInput from "./components/SearchInput.js"; +import { fetchLanguages } from "./core/api.js"; export default function App({ $target }) { this.state = { @@ -13,5 +14,9 @@ export default function App({ $target }) { const searchInput = new SearchInput({ $target, initialState: "", + onChange: async (keyword) => { + const data = await fetchLanguages(keyword); + console.log(data); + }, }); } diff --git "a/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/core/api.js" "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/core/api.js" new file mode 100644 index 0000000..74e4615 --- /dev/null +++ "b/\352\265\254\355\230\204 \352\263\274\354\240\234 \355\222\200\354\235\264/\355\224\204\353\241\234\352\267\270\353\236\230\353\260\215 \354\226\270\354\226\264 \352\262\200\354\203\211/\354\243\274\355\225\250/core/api.js" @@ -0,0 +1,15 @@ +export const API_END_POINT = "API END POINT"; + +const request = async (url) => { + const res = await fetch(url); + + if (res.ok) { + const json = await res.json(); + return json; + } + + throw new Error("요청에 실패함"); +}; + +export const fetchLanguages = async (keyword) => + request(`${API_END_POINT}/languages?keyword=${keyword}`);