

231024 류윤주 front-end 사용자단 커밋
@33f982c13cd8ed33aa8776e76a8a73d9dc3a21e6
+++ .gitignore
... | ... | @@ -0,0 +1,3 @@ |
1 | +client/build/ | |
2 | +server/logs/ | |
3 | +node_modules |
+++ Global.js
... | ... | @@ -0,0 +1,17 @@ |
1 | +const PROJECT_NAME = 'NodeJS Web Server Framework(Vue)'; | |
2 | +const PROJECT_VERSION = '1.0'; | |
3 | +const BASE_DIR = __dirname; | |
4 | +const LOG_BASE_DIR = `${__dirname}/server/logs`; | |
5 | +const SERVICE_STATUS = process.env.NODE_ENV;//development, production | |
6 | +const PORT = 80; | |
7 | +const API_SERVER_HOST = "localhost:8080"; | |
8 | + | |
9 | +module.exports = { | |
10 | + PROJECT_NAME, | |
11 | + PROJECT_VERSION, | |
12 | + BASE_DIR, | |
13 | + LOG_BASE_DIR, | |
14 | + SERVICE_STATUS, | |
15 | + PORT, | |
16 | + API_SERVER_HOST | |
17 | +}(파일 끝에 줄바꿈 문자 없음) |
+++ client/resources/css/Data.css
... | ... | @@ -0,0 +1,209 @@ |
1 | +@charset "utf-8"; | |
2 | +.data-main { | |
3 | + width: 100%; | |
4 | +} | |
5 | + | |
6 | +.data-b { | |
7 | + width: 100%; | |
8 | +} | |
9 | +.data-b-b { | |
10 | + width: 100%; | |
11 | + padding: 6rem; | |
12 | + font-size: 3rem; | |
13 | + font-family: SBaggroM; | |
14 | +} | |
15 | + | |
16 | +.data-text p { | |
17 | + position: relative; | |
18 | +} | |
19 | +.data-text p::before { | |
20 | + content: ""; | |
21 | + position: absolute; | |
22 | + top: -30px; | |
23 | + background-size: 60px 30px; | |
24 | + background-image: url("../jpg/data-img-text.png"); | |
25 | + width: 60px; | |
26 | + height: 30px; | |
27 | +} | |
28 | + | |
29 | +.data-b-main { | |
30 | + width: 100%; | |
31 | +} | |
32 | + | |
33 | +.data-b-grid { | |
34 | + width: 100%; | |
35 | + padding: 3rem; | |
36 | + display: grid; | |
37 | + grid-template-columns: 1fr 1fr 1fr; | |
38 | +} | |
39 | + | |
40 | +.data-table { | |
41 | + width: 100%; | |
42 | +} | |
43 | +.da1 { | |
44 | + width: 80%; | |
45 | + height: 40rem; | |
46 | + background-color: #007aff; | |
47 | + margin: 0 auto; | |
48 | +} | |
49 | +.data-select { | |
50 | + width: 50%; | |
51 | + float: right; | |
52 | + display: flex; | |
53 | + justify-content: flex-end; | |
54 | + padding: 3rem 6rem; | |
55 | +} | |
56 | + | |
57 | +#data-table-sild { | |
58 | + padding: 0.5rem; | |
59 | + margin-right: 1rem; | |
60 | + border-radius: 0.7rem; | |
61 | +} | |
62 | + | |
63 | +.data-table-tr { | |
64 | + padding: 6rem; | |
65 | +} | |
66 | +.data-table-tr th { | |
67 | + font-size: 1.5rem; | |
68 | + background-color: #007aff; | |
69 | + color: white; | |
70 | + padding: 1.1rem; | |
71 | + font-family: "Pretendard-Regular"; | |
72 | +} | |
73 | +.data-table-tr td { | |
74 | + padding: 2rem; | |
75 | + border-top: 1px solid rgb(187, 187, 187); | |
76 | + text-align: center; | |
77 | + font-size: 2rem; | |
78 | + font-family: "Pretendard-Regular"; | |
79 | +} | |
80 | + | |
81 | +.data-b-1 { | |
82 | + background: url(../jpg/data-img.png) no-repeat center center; | |
83 | + background-size: contain; | |
84 | + position: relative; | |
85 | + text-align: center; | |
86 | +} | |
87 | +.data-b-1 p { | |
88 | + font-size: 2rem; | |
89 | + padding: 3rem; | |
90 | + padding-top: 5rem; | |
91 | + width: 100%; | |
92 | + font-family: SBaggroM; | |
93 | + text-align: left; | |
94 | + color: #014099; | |
95 | + cursor: pointer; | |
96 | +} | |
97 | + | |
98 | +.data-b-1 p span { | |
99 | + font-size: 3.5rem; | |
100 | +} | |
101 | +.data-b-1::after { | |
102 | + position: absolute; | |
103 | + content: ""; | |
104 | + width: 90px; | |
105 | + height: 90px; | |
106 | + right: -90px; | |
107 | + top: 40%; | |
108 | + | |
109 | + background-color: #e2ecfc; | |
110 | + border-radius: 45px; | |
111 | + transform: translateX(-50%); | |
112 | + z-index: -1; | |
113 | +} | |
114 | +.data-b-2 { | |
115 | + background: url(../jpg/data-img3.png) no-repeat center center; | |
116 | + background-size: contain; | |
117 | + position: relative; | |
118 | + text-align: center; | |
119 | + cursor: pointer; | |
120 | +} | |
121 | +.data-b-2 p { | |
122 | + font-size: 2rem; | |
123 | + padding: 3rem; | |
124 | + | |
125 | + padding-top: 5rem; | |
126 | + font-family: SBaggroM; | |
127 | + text-align: center; | |
128 | + color: #1a8445; | |
129 | +} | |
130 | +.data-b-2 p span { | |
131 | + font-size: 3.5rem; | |
132 | + color: #0e5e2e; | |
133 | +} | |
134 | + | |
135 | +.data-b-3 { | |
136 | + background: url(../jpg/data-img2.png) no-repeat center center; | |
137 | + background-size: contain; | |
138 | + position: relative; | |
139 | + text-align: center; | |
140 | + cursor: pointer; | |
141 | + | |
142 | + /* border: 1px solid red; */ | |
143 | +} | |
144 | +.data-b-3::after { | |
145 | + position: absolute; | |
146 | + content: ""; | |
147 | + width: 90px; | |
148 | + height: 90px; | |
149 | + left: 0px; | |
150 | + top: 40%; | |
151 | + | |
152 | + background-color: #f8e7cd; | |
153 | + border-radius: 45px; | |
154 | + transform: translateX(-50%); | |
155 | + z-index: -1; | |
156 | +} | |
157 | +.data-b-3 p { | |
158 | + font-size: 2rem; | |
159 | + padding: 3rem; | |
160 | + padding-top: 5rem; | |
161 | + width: 100%; | |
162 | + | |
163 | + font-family: SBaggroM; | |
164 | + text-align: right; | |
165 | + color: #e07e27; | |
166 | +} | |
167 | +.data-b-3 p span { | |
168 | + font-size: 3.5rem; | |
169 | + color: #c26400; | |
170 | +} | |
171 | + | |
172 | +/* 버튼 서치 */ | |
173 | +.input-group { | |
174 | + display: flex; | |
175 | + align-items: center; | |
176 | +} | |
177 | + | |
178 | +.input { | |
179 | + min-height: 4rem; | |
180 | + max-width: 200px; | |
181 | + padding: 0.5em 1rem; | |
182 | + color: #000000; | |
183 | + font-size: 1.5rem; | |
184 | + border: 1px solid #007aff; | |
185 | + border-radius: 6px 0 0 6px; | |
186 | + background-color: transparent; | |
187 | +} | |
188 | + | |
189 | +.button--submit { | |
190 | + min-height: 4rem; | |
191 | + padding: 0.5em 1em; | |
192 | + border: none; | |
193 | + border-radius: 0 6px 6px 0; | |
194 | + background-color: #007aff; | |
195 | + color: #fff; | |
196 | + font-size: 15px; | |
197 | + cursor: pointer; | |
198 | + transition: background-color 0.3s ease-in-out; | |
199 | +} | |
200 | + | |
201 | +.button--submit:hover { | |
202 | + background-color: #007aff; | |
203 | +} | |
204 | + | |
205 | +.input:focus, | |
206 | +.input:focus-visible { | |
207 | + border-color: #3898ec; | |
208 | + outline: none; | |
209 | +} |
+++ client/resources/css/Main.css
... | ... | @@ -0,0 +1,410 @@ |
1 | +@charset "utf-8"; | |
2 | + | |
3 | +table { | |
4 | + width: 100%; | |
5 | + border-collapse: collapse; | |
6 | + padding: 0; | |
7 | + border: 0; | |
8 | + border-spacing: 0px; | |
9 | +} | |
10 | + | |
11 | +.w1400 { | |
12 | + max-width: 1300px; | |
13 | + margin: 0 auto; | |
14 | + /* overflow-x: hidden */ | |
15 | + position: relative; | |
16 | + clear: both; | |
17 | + min-height: inherit; | |
18 | +} | |
19 | + | |
20 | +/* 메뉴 */ | |
21 | +.sub-nav, | |
22 | +.toggle { | |
23 | + opacity: 0; | |
24 | +} | |
25 | +.header-wrap { | |
26 | + display: flex; | |
27 | + justify-content: space-between; | |
28 | + box-shadow: 2px 2px 2px #33333300; | |
29 | + | |
30 | + align-items: center; | |
31 | + position: relative; | |
32 | + flex-wrap: wrap; | |
33 | +} | |
34 | + | |
35 | +.sub-menu { | |
36 | + flex: 0 0 72%; | |
37 | +} | |
38 | + | |
39 | +.sub-menu ul { | |
40 | + display: flex; | |
41 | + justify-content: end; | |
42 | +} | |
43 | +.sub-menu ul li a { | |
44 | + display: block; | |
45 | + color: #2c407f; | |
46 | + line-height: 40px; | |
47 | + margin-left: 50px; | |
48 | + font-size: 1.5rem; | |
49 | + text-align: right; | |
50 | + font-weight: 600; | |
51 | +} | |
52 | + | |
53 | +/* 메인 */ | |
54 | +.m-b { | |
55 | + width: 100%; | |
56 | + background: linear-gradient(#425fed, #5dadf6); | |
57 | +} | |
58 | +.m-b-b { | |
59 | + padding-top: 108px; | |
60 | + padding-bottom: 90px; | |
61 | + display: flex; | |
62 | +} | |
63 | +.m-text { | |
64 | + flex: 0 0 39.5%; | |
65 | + color: white; | |
66 | +} | |
67 | +.m-text p { | |
68 | + width: 45rem; | |
69 | + margin-top: 15%; | |
70 | + font-family: SBaggroM; | |
71 | + font-weight: 300 !important; | |
72 | + text-shadow: 2px 2px 2px #33333382; | |
73 | + font-size: 3rem; | |
74 | +} | |
75 | +.m-text span { | |
76 | + font-size: 60px; | |
77 | + font-weight: 300 !important; | |
78 | + text-shadow: 2px 2px 2px #33333382; | |
79 | +} | |
80 | +.m-benner { | |
81 | + flex: 0 0 60%; | |
82 | + height: 365px; | |
83 | + background: url(../jpg/main.png) no-repeat; | |
84 | + background-size: cover; | |
85 | + box-shadow: 2px 2px 4px #33333382; | |
86 | +} | |
87 | + | |
88 | +/* 퍼즐 */ | |
89 | +.m-p { | |
90 | + width: 100%; | |
91 | + height: 100%; | |
92 | + padding: 60px; | |
93 | +} | |
94 | +.m-p-container { | |
95 | + margin: 0 auto; | |
96 | + display: grid; | |
97 | + overflow: visible; | |
98 | + grid-template-columns: 1fr 1fr 1fr; | |
99 | +} | |
100 | +.m-p-container > div:nth-child(4) { | |
101 | + position: relative; | |
102 | +} | |
103 | +.m-p-container > div:nth-child(4)::after { | |
104 | + position: absolute; | |
105 | + content: ""; | |
106 | + width: 90px; | |
107 | + height: 90px; | |
108 | + bottom: -45px; | |
109 | + left: 50%; | |
110 | + background-color: #009d46; | |
111 | + border-radius: 45px; | |
112 | + transform: translateX(-50%); | |
113 | + z-index: -1; | |
114 | +} | |
115 | +.m-p-name { | |
116 | + width: 100%; | |
117 | + height: 7rem; | |
118 | + display: flex; | |
119 | + font-family: SBaggroM; | |
120 | + background: url(../jpg/notice-banner.png) no-repeat center center; | |
121 | + background-size: cover; | |
122 | + position: relative; | |
123 | +} | |
124 | +.m-p-name::after { | |
125 | + position: absolute; | |
126 | + content: ""; | |
127 | + width: 90px; | |
128 | + height: 90px; | |
129 | + top: -45px; | |
130 | + left: 50%; | |
131 | + background-color: #3f87f7; | |
132 | + border-radius: 45px; | |
133 | + transform: translateX(-50%); | |
134 | +} | |
135 | + | |
136 | +.m-p-name h3 { | |
137 | + width: 100%; | |
138 | + height: 7rem; | |
139 | + padding-left: 1rem; | |
140 | + line-height: 7rem; | |
141 | + font-size: 2.4rem; | |
142 | + color: white; | |
143 | + background-size: cover; | |
144 | + position: relative; | |
145 | +} | |
146 | + | |
147 | +.m-p-name input { | |
148 | + border: 0; | |
149 | + padding: 1rem; | |
150 | + font-family: "Pretendard-Regular"; | |
151 | + font-size: 1.3rem; | |
152 | + font-weight: 800; | |
153 | + text-shadow: 2px 2px 2px #33333382; | |
154 | + color: white; | |
155 | + background-color: #009d4700; | |
156 | +} | |
157 | + | |
158 | +.m-p-table tr { | |
159 | + width: 100%; | |
160 | + height: 10%; | |
161 | + border-top: 1px solid #333; | |
162 | +} | |
163 | + | |
164 | +.m-p-table { | |
165 | + overflow: hidden; | |
166 | +} | |
167 | +.m-p-table td { | |
168 | + padding: 1rem; | |
169 | + font-size: 1.5rem; | |
170 | + color: #333; | |
171 | + font-family: "Pretendard-Regular"; | |
172 | + font-weight: 700; | |
173 | +} | |
174 | +.m-p-table td p { | |
175 | + font-size: 1.3rem; | |
176 | + padding-top: 1rem; | |
177 | + font-family: "Pretendard-Regular"; | |
178 | + font-weight: 500; | |
179 | +} | |
180 | + | |
181 | +.m-p-c-1 { | |
182 | + grid-row: 1 / span 3; | |
183 | + border: 1px solid #3f87f7; | |
184 | +} | |
185 | + | |
186 | +.m-p-c-2 { | |
187 | + background: url(../jpg/m-2.png) no-repeat; | |
188 | + background-size: cover; | |
189 | + | |
190 | + z-index: 1; | |
191 | +} | |
192 | + | |
193 | +.m-p-c-2 div, | |
194 | +.m-p-c-3 div, | |
195 | +.m-p-c-4 div, | |
196 | +.m-p-c-5 div { | |
197 | + width: 100%; | |
198 | + height: 100%; | |
199 | + | |
200 | + background-size: 123px 123px; | |
201 | + margin: 0 auto; | |
202 | +} | |
203 | +.m-p-c-2 input, | |
204 | +.m-p-c-3 input, | |
205 | +.m-p-c-4 input, | |
206 | +.m-p-c-5 input { | |
207 | + border: 0; | |
208 | + font-size: 2.5rem; | |
209 | + font-weight: 300; | |
210 | + color: white; | |
211 | + font-family: SBaggroM; | |
212 | + cursor: pointer; | |
213 | + text-shadow: 2px 2px 2px #3333335b; | |
214 | + background-color: #33333300; | |
215 | + text-align: center; | |
216 | + width: 100%; | |
217 | + padding-bottom: 2.8rem; | |
218 | +} | |
219 | +.m-p-c-3 div img { | |
220 | + width: 150px !important; | |
221 | + text-align: center; | |
222 | + margin: 0 auto; | |
223 | + padding-top: 5rem; | |
224 | + padding-bottom: 2.5rem; | |
225 | +} | |
226 | + | |
227 | +.m-p-c-2 div img, | |
228 | +.m-p-c-4 div img, | |
229 | +.m-p-c-5 div img { | |
230 | + width: 60px !important; | |
231 | + text-align: center; | |
232 | + margin: 0 auto; | |
233 | + padding-top: 5rem; | |
234 | + padding-bottom: 2.5rem; | |
235 | +} | |
236 | + | |
237 | +.m-p-c-3 { | |
238 | + background: url(../jpg/m3.png) no-repeat center right; | |
239 | + background-size: cover; | |
240 | +} | |
241 | +.m-p-c-4 { | |
242 | + background: url(../jpg/m4.png) no-repeat; | |
243 | +} | |
244 | +.m-p-c-5 { | |
245 | + background: url(../jpg/ki.jpg) no-repeat center center; | |
246 | + background-size: cover; | |
247 | +} | |
248 | + | |
249 | +/* 메인 홍보/뉴스 */ | |
250 | + | |
251 | +.m-n { | |
252 | + width: 100%; | |
253 | + padding: 1rem; | |
254 | + background: url(../jpg/123.png) no-repeat center center; | |
255 | + background-size: cover; | |
256 | +} | |
257 | +.m-n-n { | |
258 | + width: 100%; | |
259 | + height: 100%; | |
260 | + padding: 30px; | |
261 | +} | |
262 | +.m-n-hidden { | |
263 | + width: 100%; | |
264 | + margin: 0 auto; | |
265 | +} | |
266 | +.m-n-n h3 { | |
267 | + width: 100%; | |
268 | + padding: 30px; | |
269 | + font-size: 2rem; | |
270 | + color: white; | |
271 | +} | |
272 | + | |
273 | +/* 히스토리 */ | |
274 | +.m-h { | |
275 | + width: 100%; | |
276 | + padding: 3rem; | |
277 | + background-color: #ededed; | |
278 | +} | |
279 | +.m-h-h { | |
280 | + text-align: center; | |
281 | +} | |
282 | +.m-h-h h3, | |
283 | +.m-h-h h1 { | |
284 | + text-align: center; | |
285 | + font-size: 3rem; | |
286 | + padding: 1rem; | |
287 | + font-family: SBaggroM; | |
288 | +} | |
289 | +.m-h-h h1 { | |
290 | + color: #3f87f7; | |
291 | +} | |
292 | + | |
293 | +.m-h-g { | |
294 | + width: 100%; | |
295 | + display: grid; | |
296 | + grid-template-columns: 1fr 1fr 1fr; | |
297 | +} | |
298 | +.m-h-g div { | |
299 | + height: 300px; | |
300 | +} | |
301 | + | |
302 | +.m-h-g-1, | |
303 | +.m-h-g-2, | |
304 | +.m-h-g-3 { | |
305 | + width: 100%; | |
306 | + display: flex; | |
307 | + flex-wrap: wrap; | |
308 | + padding: 6rem; | |
309 | + justify-content: center; | |
310 | +} | |
311 | +.m-h-g-1 div, | |
312 | +.m-h-g-2 div, | |
313 | +.m-h-g-3 div { | |
314 | + width: 100%; | |
315 | + height: 100%; | |
316 | +} | |
317 | +.m-h-g-1 div span, | |
318 | +.m-h-g-2 div span, | |
319 | +.m-h-g-3 div span { | |
320 | + font-size: 1.8rem; | |
321 | + font-family: "Pretendard-Regular"; | |
322 | +} | |
323 | +.m-h-g-1 p:nth-child(2), | |
324 | +.m-h-g-2 p:nth-child(2), | |
325 | +.m-h-g-3 p:nth-child(2) { | |
326 | + width: 10rem; | |
327 | + margin: 0 auto; | |
328 | + justify-content: center; | |
329 | + | |
330 | + background: url(../jpg/m-h-g-1.png) no-repeat; | |
331 | + height: 10rem; | |
332 | + background-size: contain; | |
333 | +} | |
334 | +.m-h-g-1 h3, | |
335 | +.m-h-g-2 h3, | |
336 | +.m-h-g-3 h3 { | |
337 | + padding: 1rem; | |
338 | + font-size: 20px; | |
339 | + font-family: "Pretendard-Regular"; | |
340 | +} | |
341 | + | |
342 | +.m-h-g-1 p:nth-child(3), | |
343 | +.m-h-g-2 p:nth-child(3), | |
344 | +.m-h-g-3 p:nth-child(3) { | |
345 | + padding: 1rem; | |
346 | + font-size: 3rem; | |
347 | + font-family: SBaggroM; | |
348 | + color: #09365e; | |
349 | +} | |
350 | + | |
351 | +/* 파트너사 */ | |
352 | +.m-partner { | |
353 | + width: 100%; | |
354 | + height: 100%; | |
355 | +} | |
356 | +.m-pa { | |
357 | + width: 100%; | |
358 | + padding-top: 60px; | |
359 | + margin: 0 auto; | |
360 | + text-align: center; | |
361 | +} | |
362 | +.m-pa h3, | |
363 | +.m-pa h1 { | |
364 | + text-align: center; | |
365 | + font-size: 3rem; | |
366 | +} | |
367 | +.m-pa h1 { | |
368 | + font-family: SBaggroM; | |
369 | + | |
370 | + color: #3f87f7; | |
371 | +} | |
372 | +.m-pa-pa { | |
373 | + width: 100%; | |
374 | + display: flex; | |
375 | + flex-wrap: nowrap; | |
376 | + justify-content: space-between; | |
377 | +} | |
378 | +.m-pa-logo { | |
379 | + width: 20%; | |
380 | + height: 16rem; | |
381 | + padding: 1.5rem; | |
382 | +} | |
383 | +.lo1 { | |
384 | + background: url(../jpg/logo/ko-w.png) no-repeat; | |
385 | + background-position: center; | |
386 | + background-size: 40%; | |
387 | +} | |
388 | +.lo2 { | |
389 | + background: url(../jpg/logo/keris.gif) no-repeat; | |
390 | + background-position: center; | |
391 | + background-size: 40%; | |
392 | +} | |
393 | +.lo3 { | |
394 | + background: url(../jpg/logo/kefa.png) no-repeat; | |
395 | + background-position: center; | |
396 | + background-size: 40%; | |
397 | +} | |
398 | +.lo4 { | |
399 | + background: url(../jpg/logo/ko-go.png) no-repeat; | |
400 | + background-position: center; | |
401 | + background-size: 40%; | |
402 | +} | |
403 | +.lo5 { | |
404 | + background: url(../jpg/logo/edutech.png) no-repeat; | |
405 | + background-position: center; | |
406 | + background-size: 40%; | |
407 | +} | |
408 | +/* 스와이퍼--------------------------------------- */ | |
409 | + | |
410 | +/*--------------------------------------- */ |
+++ client/resources/css/common.css
... | ... | @@ -0,0 +1,45 @@ |
1 | +@charset "utf-8"; | |
2 | +.flex { | |
3 | + display: flex; | |
4 | + justify-content: space-between; | |
5 | + align-items: center; | |
6 | +} | |
7 | + | |
8 | +.pad-10 { | |
9 | + padding: 10px; | |
10 | +} | |
11 | + | |
12 | +.pad-20 { | |
13 | + padding: 20px; | |
14 | +} | |
15 | +.pad-30 { | |
16 | + padding: 30px; | |
17 | +} | |
18 | + | |
19 | +/* 박스공통 */ | |
20 | +.border-r { | |
21 | + border-radius: 2.5rem; | |
22 | + box-shadow: 2px 2px 5px #33333333; | |
23 | +} | |
24 | + | |
25 | +.main-content { | |
26 | + padding: 60px 0; | |
27 | +} | |
28 | + | |
29 | +/* 자료실 해시태그 */ | |
30 | +.mat-span span { | |
31 | + background-color: #d4d4d4; | |
32 | + color: rgb(90, 90, 90); | |
33 | + padding: 1rem 2rem 1rem 2rem; | |
34 | + margin: 0.2rem; | |
35 | + border-radius: 0.5rem; | |
36 | + font-size: 1.3rem; | |
37 | + font-weight: 600; | |
38 | + font-family: "Pretendard-Regular"; | |
39 | +} | |
40 | + | |
41 | +.mat-span { | |
42 | + width: 100%; | |
43 | + padding-top: 1rem; | |
44 | + box-shadow: 2px 2px 2px #33333300 !important; | |
45 | +} |
+++ client/resources/css/header.css
... | ... | @@ -0,0 +1,68 @@ |
1 | +@charset "utf-8"; | |
2 | + | |
3 | +/* 헤더 */ | |
4 | +.header { | |
5 | + width: 100%; | |
6 | + /* height: 4.8rem; */ | |
7 | + float: right; | |
8 | + | |
9 | + background-color: #063a6d; | |
10 | +} | |
11 | +.b1400 { | |
12 | + width: 1300px; | |
13 | + display: flex; | |
14 | + margin: 0 auto; | |
15 | + /* border: 1px solid red; */ | |
16 | + justify-content: flex-end; | |
17 | + /* padding-right: 30px 0; */ | |
18 | +} | |
19 | + | |
20 | +#input { | |
21 | + /* border: 0; */ | |
22 | + border: 1px solid red; | |
23 | + font-size: 1rem; | |
24 | + /* background-color: rgba(25, 25, 25, 0); */ | |
25 | + cursor: pointer; | |
26 | + font-family: "Pretendard-Regular"; | |
27 | + | |
28 | + color: white; | |
29 | +} | |
30 | +.sub-menu ul li span { | |
31 | + font-family: "Pretendard-Regular"; | |
32 | +} | |
33 | + | |
34 | +.logo { | |
35 | + flex: 0 0 25%; | |
36 | + font-family: "Pretendard-Regular"; | |
37 | + transform: translateY(20px); | |
38 | + font-size: 2rem; | |
39 | + font-weight: 900; | |
40 | + /* border: 1px solid red; */ | |
41 | +} | |
42 | +.logo span { | |
43 | + color: #2c407f; | |
44 | +} | |
45 | +.login, | |
46 | +.join { | |
47 | + width: 7rem; | |
48 | + height: 3rem; | |
49 | + /* font-size: 0.5rem; */ | |
50 | + line-height: 3rem; | |
51 | + text-align: right; | |
52 | + /* border: 1px solid red; */ | |
53 | +} | |
54 | +.login i, | |
55 | +.join i { | |
56 | + font-size: 1rem; | |
57 | + /* height: 3rem; */ | |
58 | + /* border: 1px solid red; */ | |
59 | + margin-right: 0.5rem; | |
60 | +} | |
61 | + | |
62 | +.login::after { | |
63 | + content: ""; | |
64 | + width: 1px; | |
65 | + border-right: 1px solid white; | |
66 | + margin-left: 10px; | |
67 | + /* border: 1px solid #ffffff; */ | |
68 | +} |
+++ client/resources/css/matching.css
... | ... | @@ -0,0 +1,168 @@ |
1 | +.mat-b { | |
2 | + width: 100%; | |
3 | + background: linear-gradient(#5dadf6, #2e87da, #5dadf6); | |
4 | +} | |
5 | +.mat-b-b { | |
6 | + padding: 30px 30px; | |
7 | + display: flex; | |
8 | + align-items: flex-end; | |
9 | +} | |
10 | +.mat-b-b div { | |
11 | + width: 40%; | |
12 | +} | |
13 | +.mat-text { | |
14 | + margin: 0 auto; | |
15 | + text-align: center; | |
16 | + font-size: 5rem; | |
17 | + padding-bottom: 50px; | |
18 | + font-family: SBaggroM; | |
19 | + color: white; | |
20 | +} | |
21 | + | |
22 | +.mat-b-1 { | |
23 | + width: 100%; | |
24 | + height: 100%; | |
25 | + padding: 3rem; | |
26 | + margin: 0 auto; | |
27 | + text-align: center; | |
28 | + color: #3f87f7; | |
29 | + background-color: #e2e2e2; | |
30 | +} | |
31 | + | |
32 | +.mat-b-grid > h3 { | |
33 | + font-size: 2.6rem; | |
34 | + padding: 3rem; | |
35 | + font-family: SBaggroM; | |
36 | +} | |
37 | +.mat-b-g-g { | |
38 | + width: 100%; | |
39 | + place-items: center; | |
40 | + margin: 0 auto; | |
41 | + display: grid; | |
42 | + grid-template-columns: 1fr 1fr 1fr; | |
43 | +} | |
44 | +.g1 { | |
45 | + width: 90%; | |
46 | + padding: 2rem; | |
47 | +} | |
48 | +.g1 h3 { | |
49 | + padding: 1rem; | |
50 | + font-size: 2rem; | |
51 | + color: #3f87f7; | |
52 | + font-family: "Pretendard-Regular"; | |
53 | +} | |
54 | +.g1 img { | |
55 | + /* padding: 2rem; */ | |
56 | + height: 119px; | |
57 | + width: 80%; | |
58 | + margin: 0 auto; | |
59 | + object-fit: contain; | |
60 | +} | |
61 | +.g1 p:nth-child(3) { | |
62 | + text-align: left; | |
63 | + color: #333; | |
64 | + font-size: 1.5rem; | |
65 | + padding: 1rem; | |
66 | +} | |
67 | +.g1 p:nth-child(4) { | |
68 | + text-align: right; | |
69 | + font-size: 1.5rem; | |
70 | + color: #333; | |
71 | + | |
72 | + padding: 1rem; | |
73 | +} | |
74 | +.g1 div { | |
75 | + padding: 1rem; | |
76 | + background-color: #ffffff; | |
77 | + box-shadow: 2px 2px 2px #33333332; | |
78 | + position: relative; | |
79 | +} | |
80 | +.g1 div:nth-child(1):before { | |
81 | + position: absolute; | |
82 | + content: "AA등급"; | |
83 | + line-height: 40px; | |
84 | + color: white; | |
85 | + font-size: 1.5rem; | |
86 | + font-weight: 800; | |
87 | + width: 90px; | |
88 | + height: 40px; | |
89 | + top: -25px; | |
90 | + right: -5%; | |
91 | + background-color: #3f87f7; | |
92 | + border-radius: 45px; | |
93 | + transform: translateX(-50%); | |
94 | +} | |
95 | +.g1-1 { | |
96 | + display: flex; | |
97 | + box-shadow: 0px 0px 0px white !important; | |
98 | + flex-direction: row; | |
99 | + justify-content: flex-end; | |
100 | +} | |
101 | +.g1-1 p { | |
102 | + text-align: right; | |
103 | + font-size: 1.5rem; | |
104 | + padding: 1rem; | |
105 | + color: rgb(6, 6, 6); | |
106 | +} | |
107 | +.g-2 { | |
108 | + text-align: right; | |
109 | + font-size: 1.3rem; | |
110 | + padding: 1rem; | |
111 | + font-weight: 700; | |
112 | + color: rgb(6, 6, 6); | |
113 | +} | |
114 | +.g-2 span { | |
115 | + font-weight: 400; | |
116 | +} | |
117 | +.mat-sec-a { | |
118 | + width: 100%; | |
119 | + margin: 0 auto; | |
120 | +} | |
121 | +.mat-sec-a-1 { | |
122 | + width: 100%; | |
123 | + display: grid; | |
124 | + grid-template-columns: 1fr 1fr 1fr; | |
125 | + margin: 0 auto; | |
126 | + place-items: center; | |
127 | + | |
128 | + padding: 3rem; | |
129 | +} | |
130 | + | |
131 | +.mat-sec-b { | |
132 | + padding: 2rem; | |
133 | + margin: 1rem; | |
134 | + background-color: #f9f9f9; | |
135 | + box-shadow: 2px 2px 5px #33333332; | |
136 | +} | |
137 | + | |
138 | +.mat-sec-b div { | |
139 | + display: flex; | |
140 | + flex-wrap: wrap; | |
141 | +} | |
142 | + | |
143 | +.mat-sec-b h5 { | |
144 | + width: 100%; | |
145 | + font-size: 1.5rem; | |
146 | + font-family: "Pretendard-Regular"; | |
147 | +} | |
148 | + | |
149 | +.mat-sec-b p { | |
150 | + width: 100%; | |
151 | + font-size: 1.5rem; | |
152 | + text-align: right; | |
153 | + justify-content: right; | |
154 | + font-family: "Pretendard-Regular"; | |
155 | +} | |
156 | + | |
157 | +.mat-2 { | |
158 | + width: 100%; | |
159 | + | |
160 | + display: flex; | |
161 | + padding: 1.5rem 0px; | |
162 | + flex-wrap: nowrap; | |
163 | + justify-content: flex-end; | |
164 | + flex-direction: row !important; | |
165 | +} | |
166 | +.mat-2 p { | |
167 | + width: 25%; | |
168 | +} |
+++ client/resources/css/reset.css
... | ... | @@ -0,0 +1,66 @@ |
1 | +@charset "utf-8"; | |
2 | + | |
3 | +@font-face { | |
4 | + font-family: "SBAggroB"; | |
5 | + src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/SBAggroB.woff") | |
6 | + format("woff"); | |
7 | + /* font-weight: normal; */ | |
8 | + font-style: normal; | |
9 | +} | |
10 | + | |
11 | +@font-face { | |
12 | + font-family: "Pretendard-Regular"; | |
13 | + src: url("https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff") | |
14 | + format("woff"); | |
15 | + font-weight: 400; | |
16 | + font-style: normal; | |
17 | +} | |
18 | +@font-face { | |
19 | + font-family: SBaggroM; | |
20 | + src: url(../font/SBaggroM.ttf); | |
21 | +} | |
22 | +@font-face { | |
23 | + font-family: SBaggrol; | |
24 | + src: url(../font/SBaggroL.ttf); | |
25 | +} | |
26 | + | |
27 | +* { | |
28 | + margin: 0; | |
29 | + padding: 0; | |
30 | + box-sizing: border-box; | |
31 | +} | |
32 | + | |
33 | +html { | |
34 | + font-size: 10px; | |
35 | + width: 100%; | |
36 | + height: 100%; | |
37 | + font-family: "Pretendard-Regular"; | |
38 | + | |
39 | + overflow-x: hidden; | |
40 | + overflow-y: scroll; | |
41 | +} | |
42 | + | |
43 | +body { | |
44 | + width: 100%; | |
45 | + height: 100%; | |
46 | +} | |
47 | + | |
48 | +ul, | |
49 | +ol, | |
50 | +li { | |
51 | + list-style: none; | |
52 | +} | |
53 | + | |
54 | +a { | |
55 | + color: #333; | |
56 | + text-decoration: none; | |
57 | +} | |
58 | + | |
59 | +button { | |
60 | + border: none; | |
61 | +} | |
62 | + | |
63 | +img { | |
64 | + display: block; | |
65 | + width: 100%; | |
66 | +} |
+++ client/resources/css/responsive.css
... | ... | @@ -0,0 +1,720 @@ |
1 | +@media all and (min-width: 1023px) and (max-width: 1268px){ | |
2 | + .data-b-1 p span,.data-b-3 p span{ | |
3 | + font-size: 2.5rem; | |
4 | + } | |
5 | + .data-b-1 p span,.data-b-3 p span,.data-b-2 p span{ | |
6 | + border: 1px solid red; | |
7 | + padding: 2rem; | |
8 | + } | |
9 | + .m-benner{ | |
10 | + flex: 0 0 52%; | |
11 | + | |
12 | + } | |
13 | + .m-text p{ | |
14 | + padding: 2rem; | |
15 | + } | |
16 | + .logo span{ | |
17 | + padding: 2rem; | |
18 | + } | |
19 | + .b1400 { | |
20 | + width: 85%; | |
21 | + padding: 1rem; | |
22 | + } | |
23 | + | |
24 | +} | |
25 | + | |
26 | + | |
27 | +/* 테블릿 세로*/ | |
28 | +@media all and (min-width: 768px) and (max-width: 1023px) { | |
29 | + | |
30 | + html { | |
31 | + font-size: 8px; | |
32 | + overflow-x: hidden; | |
33 | + } | |
34 | + | |
35 | + .w1400 { | |
36 | + max-width: 100%; | |
37 | + } | |
38 | + .sub-nav, | |
39 | + .toggle { | |
40 | + opacity: 1; | |
41 | + } | |
42 | + | |
43 | + .b1400 { | |
44 | + width: 85%; | |
45 | + padding: 1rem; | |
46 | + } | |
47 | + #input { | |
48 | + font-size: 1.5rem; | |
49 | + } | |
50 | + .login, | |
51 | + .join { | |
52 | + width: 11rem; | |
53 | + margin-right: 1rem; | |
54 | + } | |
55 | + .login i, | |
56 | + .join i { | |
57 | + font-size: 13px !important; | |
58 | + } | |
59 | + .logo { | |
60 | + flex: 0 0 80%; | |
61 | + /* padding: 3rem; */ | |
62 | + transform: translateY(0px); | |
63 | + } | |
64 | + .logo span { | |
65 | + margin-left: 2rem; | |
66 | + font-size: 3rem; | |
67 | + } | |
68 | + .fa-solid { | |
69 | + font-size: 3rem !important; | |
70 | + } | |
71 | + /* 햄버거 */ | |
72 | + .mobile1 { | |
73 | + flex: 0 0 10%; | |
74 | + text-align: center; | |
75 | + font-size: 3rem; | |
76 | + color: #2c407f; | |
77 | + } | |
78 | + .sub-nav { | |
79 | + height: 100%; | |
80 | + opacity: 1; | |
81 | + } | |
82 | + .header-wrap { | |
83 | + padding: 3rem; | |
84 | + justify-content: center; | |
85 | + } | |
86 | + .logo { | |
87 | + flex: 0 0 90%; | |
88 | + } | |
89 | + .logo span { | |
90 | + font-family: "Pretendard-Regular"; | |
91 | + width: 100%; | |
92 | + text-align: center; | |
93 | + font-size: 3rem; | |
94 | + flex: 0 0 90%; | |
95 | + } | |
96 | + .logo-toggle { | |
97 | + width: 100%; | |
98 | + display: flex; | |
99 | + } | |
100 | + .toggle { | |
101 | + flex: 0 0 6%; | |
102 | + display: block; | |
103 | + } | |
104 | + .data-b-1 p span{ | |
105 | + font-size: 2.5rem; | |
106 | + } | |
107 | + | |
108 | + .main-menu-1 { | |
109 | + display: none !important; | |
110 | + } | |
111 | + .main-sub-menu { | |
112 | + /* width: 100%; */ | |
113 | + flex: 0 0 100% !important; | |
114 | + flex-direction: column; | |
115 | + justify-content: end; | |
116 | + list-style: none; | |
117 | + padding: 5rem; | |
118 | + display: none; | |
119 | + } | |
120 | + .main-sub-menu.open { | |
121 | + display: block; | |
122 | + } | |
123 | + .main-sub-menu li { | |
124 | + padding: 1rem; | |
125 | + } | |
126 | + .accordion-header { | |
127 | + cursor: pointer; | |
128 | + padding: 10px; | |
129 | + text-align: center; | |
130 | + font-size: 2rem; | |
131 | + font-family: "Pretendard-Regular"; | |
132 | + font-weight: 700; | |
133 | + color: #2c407f; | |
134 | + } | |
135 | + .accordion-header li { | |
136 | + padding: 1rem; | |
137 | + } | |
138 | + | |
139 | + .accordion-header.active { | |
140 | + padding: 1rem; | |
141 | + background-color: #ffffff; | |
142 | + } | |
143 | + | |
144 | + .main-sub-menu-sb { | |
145 | + list-style: none; | |
146 | + padding: 1rem; | |
147 | + margin: 0; | |
148 | + text-align: center; | |
149 | + font-size: 1.5rem; | |
150 | + font-family: "Pretendard-Regular"; | |
151 | + } | |
152 | + .main-sub-menu-sb li { | |
153 | + padding: 1rem; | |
154 | + color: #2c407f; | |
155 | + } | |
156 | + | |
157 | + .router-link { | |
158 | + text-decoration: none; | |
159 | + color: #333; | |
160 | + display: block; | |
161 | + padding: 10px; | |
162 | + transition: background-color 0.3s; | |
163 | + } | |
164 | + | |
165 | + .router-link:hover { | |
166 | + background-color: #e0e0e0; | |
167 | + } | |
168 | + /* 햄버거 끝! */ | |
169 | + .m-b { | |
170 | + height: auto; | |
171 | + } | |
172 | + .m-b-b { | |
173 | + flex-direction: column; | |
174 | + padding-top: 0; | |
175 | + height: 40rem; | |
176 | + padding: 2rem; | |
177 | + } | |
178 | + .m-benner { | |
179 | + flex: 100%; | |
180 | + } | |
181 | + ul.main-menu > li > a { | |
182 | + padding: 21px; | |
183 | + } | |
184 | + .main-content { | |
185 | + padding: 40px 0; | |
186 | + } | |
187 | + | |
188 | + .m-text { | |
189 | + flex: 100%; | |
190 | + height: 20rem; | |
191 | + } | |
192 | + .m-b-b { | |
193 | + flex-direction: column; | |
194 | + padding-top: 5rem; | |
195 | + height: 60rem; | |
196 | + } | |
197 | + .m-text p { | |
198 | + width: 100%; | |
199 | + padding-top: 5rem; | |
200 | + margin-top: 0; | |
201 | + } | |
202 | + .m-text p span { | |
203 | + text-align: center; | |
204 | + font-size: 5rem; | |
205 | + } | |
206 | + .m-benner { | |
207 | + height: 50px; | |
208 | + padding: 16rem; | |
209 | + background-size: contain; | |
210 | + box-shadow: 0 0 0; | |
211 | + } | |
212 | + .m-p-container { | |
213 | + grid-template-columns: 1fr; | |
214 | + } | |
215 | + .m-p-c-3 { | |
216 | + background: url(../jpg/m3-1.png) no-repeat; | |
217 | + background-size: cover; | |
218 | + } | |
219 | + .m-n-hidden { | |
220 | + width: 100%; | |
221 | + } | |
222 | + .swiper { | |
223 | + width: 100%; | |
224 | + } | |
225 | + .swiper-slide { | |
226 | + width: 1000px; | |
227 | + } | |
228 | + | |
229 | + /* 매칭서비스 */ | |
230 | + .mat-b-g-g { | |
231 | + width: 100%; | |
232 | + grid-template-columns: 1fr 1fr; | |
233 | + } | |
234 | + .mat-sec-a-1 { | |
235 | + grid-template-columns: 1fr 1fr; | |
236 | + } | |
237 | + .mat-sec-b { | |
238 | + width: 90%; | |
239 | + } | |
240 | + /* 자료집 */ | |
241 | + .data-b-1 p, | |
242 | + .data-b-2 p, | |
243 | + .data-b-3 p { | |
244 | + margin-top: 5rem; | |
245 | + } | |
246 | + .data-b-1 p span, | |
247 | + .data-b-2 p span, | |
248 | + .data-b-3 p span { | |
249 | + font-size: 2.5rem; | |
250 | + } | |
251 | + .data-b-1::after, | |
252 | + .data-b-3::after { | |
253 | + width: 60px; | |
254 | + height: 60px; | |
255 | + } | |
256 | + .data-b-1::after { | |
257 | + right: -60px; | |
258 | + } | |
259 | + .data-b-1 p span { | |
260 | + font-size: 2.5rem; | |
261 | + } | |
262 | + .mat-text { | |
263 | + font-size: 3rem; | |
264 | + } | |
265 | +} | |
266 | +/* 모바일 가로, 테블릿 세로 */ | |
267 | +@media all and (min-width: 480px) and (max-width: 767px) { | |
268 | + .w1400 { | |
269 | + max-width: 100%; | |
270 | + overflow-x: hidden; | |
271 | + } | |
272 | + .sub-nav, | |
273 | + .toggle { | |
274 | + opacity: 1; | |
275 | + } | |
276 | + .b1400 { | |
277 | + width: 90%; | |
278 | + padding: 1rem; | |
279 | + } | |
280 | + .da1 { | |
281 | + width: 100%; | |
282 | + margin-top: 20px; | |
283 | + } | |
284 | + /* 햄버거 */ | |
285 | + .header-wrap { | |
286 | + padding: 3rem; | |
287 | + justify-content: center; | |
288 | + } | |
289 | + .sub-nav { | |
290 | + height: 100%; | |
291 | + opacity: 1; | |
292 | + } | |
293 | + .logo { | |
294 | + flex: 0 0 90%; | |
295 | + transform: translateY(0px); | |
296 | + } | |
297 | + .logo span { | |
298 | + font-family: "Pretendard-Regular"; | |
299 | + width: 100%; | |
300 | + text-align: center; | |
301 | + font-size: 2rem; | |
302 | + flex: 0 0 90%; | |
303 | + } | |
304 | + .logo-toggle { | |
305 | + width: 100%; | |
306 | + display: flex; | |
307 | + } | |
308 | + .toggle { | |
309 | + flex: 0 0 6%; | |
310 | + display: block; | |
311 | + } | |
312 | + | |
313 | + .main-menu-1 { | |
314 | + display: none !important; | |
315 | + } | |
316 | + .main-sub-menu { | |
317 | + flex: 0 0 100% !important; | |
318 | + flex-direction: column; | |
319 | + justify-content: end; | |
320 | + list-style: none; | |
321 | + padding: 5rem; | |
322 | + display: none; | |
323 | + } | |
324 | + .main-sub-menu.open { | |
325 | + display: block;/ | |
326 | + } | |
327 | + .main-sub-menu li { | |
328 | + padding: 1rem; | |
329 | + } | |
330 | + .accordion-header { | |
331 | + cursor: pointer; | |
332 | + padding: 10px; | |
333 | + text-align: center; | |
334 | + font-size: 2rem; | |
335 | + font-family: "Pretendard-Regular"; | |
336 | + font-weight: 700; | |
337 | + color: #2c407f; | |
338 | + } | |
339 | + .accordion-header li { | |
340 | + padding: 1rem; | |
341 | + } | |
342 | + | |
343 | + .accordion-header.active { | |
344 | + padding: 1rem; | |
345 | + background-color: #ffffff; | |
346 | + } | |
347 | + | |
348 | + .main-sub-menu-sb { | |
349 | + list-style: none; | |
350 | + padding: 1rem; | |
351 | + margin: 0; | |
352 | + text-align: center; | |
353 | + font-size: 1.5rem; | |
354 | + font-family: "Pretendard-Regular"; | |
355 | + } | |
356 | + .main-sub-menu-sb li { | |
357 | + padding: 1rem; | |
358 | + color: #2c407f; | |
359 | + } | |
360 | + | |
361 | + .router-link { | |
362 | + text-decoration: none; | |
363 | + color: #333; | |
364 | + display: block; | |
365 | + padding: 10px; | |
366 | + transition: background-color 0.3s; | |
367 | + } | |
368 | + | |
369 | + .router-link:hover { | |
370 | + background-color: #e0e0e0; | |
371 | + } | |
372 | + /* 햄버거 끝! */ | |
373 | + .mobile1 { | |
374 | + flex: 0 0 10%; | |
375 | + text-align: center; | |
376 | + font-size: 3rem; | |
377 | + color: #2c407f; | |
378 | + } | |
379 | + .m-text p { | |
380 | + font-size: 1rem; | |
381 | + } | |
382 | + .m-text { | |
383 | + display: none; | |
384 | + } | |
385 | + .m-text p { | |
386 | + font-size: 1rem; | |
387 | + } | |
388 | + .m-b { | |
389 | + background: url(../jpg/main.png) no-repeat center center; | |
390 | + background-size: cover; | |
391 | + height: auto; | |
392 | + } | |
393 | + .m-text span { | |
394 | + font-size: 25px; | |
395 | + } | |
396 | + .logo { | |
397 | + flex: 0 0 90%; | |
398 | + } | |
399 | + .m-p { | |
400 | + padding: 3rem; | |
401 | + } | |
402 | + .m-b-b { | |
403 | + flex-direction: column; | |
404 | + padding-top: 0; | |
405 | + height: 40rem; | |
406 | + padding: 2rem; | |
407 | + } | |
408 | + .m-benner { | |
409 | + display: none; | |
410 | + } | |
411 | + .m-p-container { | |
412 | + grid-template-columns: 1fr; | |
413 | + } | |
414 | + .m-h-g { | |
415 | + grid-template-columns: 1fr; | |
416 | + } | |
417 | + .m-pa-pa { | |
418 | + width: 100%; | |
419 | + flex-direction: column; | |
420 | + } | |
421 | + .m-pa-pa div { | |
422 | + justify-content: center; | |
423 | + } | |
424 | + .m-p-c-3 { | |
425 | + background: url(../jpg/m3-1.png) no-repeat; | |
426 | + background-size: cover; | |
427 | + } | |
428 | + .m-pa-logo { | |
429 | + width: 100%; | |
430 | + align-items: center; | |
431 | + height: 5rem; | |
432 | + margin: 2rem; | |
433 | + } | |
434 | + | |
435 | + .lo1, | |
436 | + .lo2, | |
437 | + .lo3, | |
438 | + .lo4, | |
439 | + .lo5 { | |
440 | + background-size: contain; | |
441 | + } | |
442 | + /* 매칭서비스 */ | |
443 | + .mat-b-g-g { | |
444 | + grid-template-columns: 1fr; | |
445 | + } | |
446 | + .mat-sec-a-1 { | |
447 | + grid-template-columns: 1fr; | |
448 | + } | |
449 | + .mat-sec-b { | |
450 | + width: 90%; | |
451 | + } | |
452 | + .mat-text { | |
453 | + font-size: 3rem; | |
454 | + } | |
455 | + /* 자료집 */ | |
456 | + .data-main { | |
457 | + width: 100%; | |
458 | + } | |
459 | + .data-b-grid { | |
460 | + grid-template-columns: 1fr; | |
461 | + } | |
462 | + .data-b-b { | |
463 | + padding: 4rem; | |
464 | + text-align: center; | |
465 | + } | |
466 | + .data-b-1 p { | |
467 | + font-size: 2rem; | |
468 | + padding: 3rem; | |
469 | + padding-top: 5rem; | |
470 | + width: 50%; | |
471 | + font-family: SBaggroM; | |
472 | + text-align: left; | |
473 | + color: #014099; | |
474 | + margin: 0 auto; | |
475 | + cursor: pointer; | |
476 | + } | |
477 | + .data-b-3 p { | |
478 | + font-size: 2rem; | |
479 | + padding: 3rem; | |
480 | + padding-top: 5rem; | |
481 | + width: 50%; | |
482 | + margin: 0 auto; | |
483 | + cursor: pointer; | |
484 | + font-family: SBaggroM; | |
485 | + text-align: right; | |
486 | + color: #e07e27; | |
487 | + } | |
488 | + .data-b-1 p span { | |
489 | + font-size: 2.5rem; | |
490 | + } | |
491 | + .data-b-3::after, | |
492 | + .data-b-1::after { | |
493 | + display: none; | |
494 | + } | |
495 | +} | |
496 | + | |
497 | +/* 모바일 가로, 테블릿 세로 */ | |
498 | +@media all and (max-width: 479px) { | |
499 | + .w1400 { | |
500 | + margin: 0 auto; | |
501 | + max-width: 100%; | |
502 | + overflow-x: hidden; | |
503 | + } | |
504 | + | |
505 | + .sub-nav, | |
506 | + .toggle { | |
507 | + opacity: 1; | |
508 | + } | |
509 | + .b1400 { | |
510 | + width: 90%; | |
511 | + padding: 1rem; | |
512 | + } | |
513 | + | |
514 | + .header-wrap { | |
515 | + padding: 3rem; | |
516 | + flex-direction: column; | |
517 | + box-shadow: 2px 2px 2px #3333330e; | |
518 | + } | |
519 | + .logo-toggle { | |
520 | + width: 100%; | |
521 | + display: flex; | |
522 | + } | |
523 | + .logo { | |
524 | + flex: 0 0 80%; | |
525 | + transform: translateY(0px); | |
526 | + } | |
527 | + .logo span { | |
528 | + font-family: "Pretendard-Regular"; | |
529 | + width: 100%; | |
530 | + text-align: center; | |
531 | + font-size: 2.6rem; | |
532 | + flex: 0 0 90%; | |
533 | + margin: 1rem; | |
534 | + /* border: 1px solid red; */ | |
535 | + } | |
536 | + .mobile1 { | |
537 | + flex: 0 0 10%; | |
538 | + text-align: center; | |
539 | + font-size: 3rem; | |
540 | + color: #2c407f; | |
541 | + /* border: 1px solid red; */ | |
542 | + } | |
543 | + /* 메뉴 반응형 */ | |
544 | + .sub-nav { | |
545 | + position: relative; | |
546 | + height: 100%; | |
547 | + opacity: 1; | |
548 | + } | |
549 | + | |
550 | + .toggle { | |
551 | + flex: 0 0 6%; | |
552 | + display: block; | |
553 | + height: 10px; | |
554 | + | |
555 | + } | |
556 | + | |
557 | + .main-menu-1 { | |
558 | + display: none !important; | |
559 | + } | |
560 | + .main-sub-menu { | |
561 | + flex: 0 0 100% !important; | |
562 | + flex-direction: column; | |
563 | + justify-content: end; | |
564 | + list-style: none; | |
565 | + padding: 5rem; | |
566 | + display: none; | |
567 | + } | |
568 | + .main-sub-menu.open { | |
569 | + display: block; | |
570 | + } | |
571 | + .m-text { | |
572 | + display: none; | |
573 | + } | |
574 | + .m-text p { | |
575 | + font-size: 1rem; | |
576 | + } | |
577 | + .m-b { | |
578 | + background: url(../jpg/main.png) no-repeat center center; | |
579 | + background-size: cover; | |
580 | + height: auto; | |
581 | + } | |
582 | + .m-text span { | |
583 | + font-size: 25px; | |
584 | + } | |
585 | + | |
586 | + .m-p { | |
587 | + padding: 3rem; | |
588 | + } | |
589 | + .m-b-b { | |
590 | + flex-direction: column; | |
591 | + padding-top: 0; | |
592 | + height: 40rem; | |
593 | + } | |
594 | + .m-benner { | |
595 | + width: 100%; | |
596 | + flex: 100%; | |
597 | + background-size: cover; | |
598 | + box-shadow: 0px 0px 0px; | |
599 | + display: none; | |
600 | + } | |
601 | + .m-p-container { | |
602 | + grid-template-columns: 1fr; | |
603 | + } | |
604 | + .m-h-g { | |
605 | + grid-template-columns: 1fr; | |
606 | + } | |
607 | + .m-pa-pa { | |
608 | + width: 100%; | |
609 | + flex-direction: column; | |
610 | + } | |
611 | + .m-pa-pa div { | |
612 | + justify-content: center; | |
613 | + } | |
614 | + .m-p-c-3 { | |
615 | + background: url(../jpg/m3-1.png) no-repeat; | |
616 | + background-size: cover; | |
617 | + } | |
618 | + .m-pa-logo { | |
619 | + width: 100%; | |
620 | + align-items: center; | |
621 | + height: 5rem; | |
622 | + margin: 2rem; | |
623 | + } | |
624 | + .lo1, | |
625 | + .lo2, | |
626 | + .lo3, | |
627 | + .lo4, | |
628 | + .lo5 { | |
629 | + background-size: contain; | |
630 | + } | |
631 | + .call p { | |
632 | + flex: 0 0 100%; | |
633 | + } | |
634 | + .call img { | |
635 | + flex-direction: column; | |
636 | + margin-top: 30px; | |
637 | + margin-left: -213px; | |
638 | + } | |
639 | + /* 매칭서비스 */ | |
640 | + .mat-b-g-g { | |
641 | + grid-template-columns: 1fr; | |
642 | + } | |
643 | + .mat-sec-a-1 { | |
644 | + grid-template-columns: 1fr; | |
645 | + width: 100%; | |
646 | + } | |
647 | + .mat-text { | |
648 | + display: none; | |
649 | + font-size: 2rem; | |
650 | + } | |
651 | + | |
652 | + /* 자료집 */ | |
653 | + .data-main { | |
654 | + width: 100%; | |
655 | + } | |
656 | + .data-b-grid { | |
657 | + grid-template-columns: 1fr; | |
658 | + } | |
659 | + .data-b-b { | |
660 | + padding: 4rem; | |
661 | + text-align: center; | |
662 | + } | |
663 | + | |
664 | + .main-sub-menu li { | |
665 | + padding: 1rem; | |
666 | + } | |
667 | + .accordion-header { | |
668 | + cursor: pointer; | |
669 | + padding: 10px; | |
670 | + text-align: center; | |
671 | + font-size: 2rem; | |
672 | + font-family: "Pretendard-Regular"; | |
673 | + font-weight: 700; | |
674 | + color: #2c407f; | |
675 | + } | |
676 | + .accordion-header li { | |
677 | + padding: 1rem; | |
678 | + } | |
679 | + | |
680 | + .accordion-header.active { | |
681 | + padding: 1rem; | |
682 | + background-color: #ffffff; | |
683 | + } | |
684 | + | |
685 | + .main-sub-menu-sb { | |
686 | + list-style: none; | |
687 | + padding: 1rem; | |
688 | + margin: 0; | |
689 | + text-align: center; | |
690 | + font-size: 1.5rem; | |
691 | + font-family: "Pretendard-Regular"; | |
692 | + } | |
693 | + .main-sub-menu-sb li { | |
694 | + padding: 1rem; | |
695 | + color: #2c407f; | |
696 | + } | |
697 | + | |
698 | + .router-link { | |
699 | + text-decoration: none; | |
700 | + color: #333; | |
701 | + display: block; | |
702 | + padding: 10px; | |
703 | + transition: background-color 0.3s; | |
704 | + } | |
705 | + | |
706 | + .router-link:hover { | |
707 | + background-color: #e0e0e0; | |
708 | + } | |
709 | + .data-b-1 p span { | |
710 | + font-size: 2.5rem; | |
711 | + } | |
712 | + | |
713 | + .data-select { | |
714 | + width: 100%; | |
715 | + flex-direction: column; | |
716 | + } | |
717 | + .data-table-tr { | |
718 | + width: 100%; | |
719 | + } | |
720 | +} |
+++ client/resources/font/SBaggroB.ttf
Binary file is not shown |
+++ client/resources/font/SBaggroL.ttf
Binary file is not shown |
+++ client/resources/font/SBaggroM.ttf
Binary file is not shown |
+++ client/resources/jpg/123.png
Binary file is not shown |
+++ client/resources/jpg/PNG/hss자산 5dfd.png
Binary file is not shown |
+++ client/resources/jpg/PNG/ps4301.tmp
... | ... | @@ -0,0 +1,0 @@ |
+++ client/resources/jpg/data-img-text.png
Binary file is not shown |
+++ client/resources/jpg/data-img.png
Binary file is not shown |
+++ client/resources/jpg/data-img2.png
Binary file is not shown |
+++ client/resources/jpg/data-img3.png
Binary file is not shown |
+++ client/resources/jpg/fille.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 14dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 15dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 16dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 17dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 19dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 20dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 21dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 23dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 2dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 4dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 6dfd.png
Binary file is not shown |
+++ client/resources/jpg/hss자산 8dfd.png
Binary file is not shown |
+++ client/resources/jpg/ki-i.png
Binary file is not shown |
+++ client/resources/jpg/ki.jpg
Binary file is not shown |
+++ client/resources/jpg/logo/edutech.png
Binary file is not shown |
+++ client/resources/jpg/logo/kefa.png
Binary file is not shown |
+++ client/resources/jpg/logo/keris.gif
Binary file is not shown |
+++ client/resources/jpg/logo/ketis.png
Binary file is not shown |
+++ client/resources/jpg/logo/ko-go.jpg
Binary file is not shown |
+++ client/resources/jpg/logo/ko-go.png
Binary file is not shown |
+++ client/resources/jpg/logo/ko-w.png
Binary file is not shown |
+++ client/resources/jpg/logo/ko.png
Binary file is not shown |
+++ client/resources/jpg/m-1.png
Binary file is not shown |
+++ client/resources/jpg/m-2.png
Binary file is not shown |
+++ client/resources/jpg/m-h-g-1.png
Binary file is not shown |
+++ client/resources/jpg/m-h-g-3.png
Binary file is not shown |
+++ client/resources/jpg/m-h-g.png
Binary file is not shown |
+++ client/resources/jpg/m-p-ai.png
Binary file is not shown |
+++ client/resources/jpg/m-p-ai2.png
Binary file is not shown |
+++ client/resources/jpg/m-p-ai3.png
Binary file is not shown |
+++ client/resources/jpg/m-w.png
Binary file is not shown |
+++ client/resources/jpg/m2.png
Binary file is not shown |
+++ client/resources/jpg/m3-1.png
Binary file is not shown |
+++ client/resources/jpg/m3.png
Binary file is not shown |
+++ client/resources/jpg/m4.png
Binary file is not shown |
+++ client/resources/jpg/main.png
Binary file is not shown |
+++ client/resources/jpg/mat-img.png
Binary file is not shown |
+++ client/resources/jpg/mat-img1.png
Binary file is not shown |
+++ client/resources/jpg/moc.png
Binary file is not shown |
+++ client/resources/jpg/swiper.png
Binary file is not shown |
+++ client/resources/jpg/swiper2.png
Binary file is not shown |
+++ client/resources/jpg/zigaksa.jpg
Binary file is not shown |
+++ client/views/component/test/TestCompoent.vue
... | ... | @@ -0,0 +1,24 @@ |
1 | +<template> | |
2 | + <div>TestCompoent.vue</div> | |
3 | +</template> | |
4 | + | |
5 | +<script> | |
6 | +export default { | |
7 | + data () { | |
8 | + return { | |
9 | + } | |
10 | + }, | |
11 | + methods: { | |
12 | + | |
13 | + }, | |
14 | + watch: { | |
15 | + | |
16 | + }, | |
17 | + computed: { | |
18 | + | |
19 | + }, | |
20 | + mounted() { | |
21 | + console.log('TestCompoent mounted'); | |
22 | + } | |
23 | +} | |
24 | +</script>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/index.html
... | ... | @@ -0,0 +1,35 @@ |
1 | +<!DOCTYPE html> | |
2 | +<html> | |
3 | + | |
4 | +<head> | |
5 | + <meta charset="UTF-8"> | |
6 | + <meta http-equiv="X-UA-Compatible" content="IE=edge"> | |
7 | + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> | |
8 | + <meta name="viewport" content="width=device-width, initial-scale=1"> | |
9 | + <meta name="description" content="Node Vue Web"> | |
10 | + <link rel="icon" href="" /> | |
11 | + <link rel="stylesheet" href="/client/resources/css/Main.css"> | |
12 | + <link rel="stylesheet" href="/client/resources/css/reset.css"> | |
13 | + <link rel="stylesheet" href="/client/resources/css/common.css"> | |
14 | + <link rel="stylesheet" href="/client/resources/css/footer.css"> | |
15 | + <link rel="stylesheet" href="/client/resources/css/header.css"> | |
16 | + <link rel="stylesheet" href="/client/resources/css/matching.css"> | |
17 | + <link rel="stylesheet" href="/client/resources/css/Data.css"> | |
18 | + <link rel="stylesheet" href="/client/resources/css/responsive.css"> | |
19 | + | |
20 | + <script src="https://kit.fontawesome.com/9f862d56b3.js" crossorigin="anonymous"></script> | |
21 | + | |
22 | + <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script> | |
23 | + <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> | |
24 | + | |
25 | + <title>KERIS</title> | |
26 | + | |
27 | + | |
28 | +</head> | |
29 | + | |
30 | +<body> | |
31 | + <div id="root"></div> | |
32 | + <script src="/client/build/bundle.js"></script> | |
33 | +</body> | |
34 | + | |
35 | +</html>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/index.js
... | ... | @@ -0,0 +1,13 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.10.19 | |
4 | + * @dscription : Vue를 활용한 Client단 구현의 시작점(Index) Component 입니다. | |
5 | + */ | |
6 | +import { createApp } from 'vue'; | |
7 | + | |
8 | +import AppRouter from './pages/AppRouter.js'; | |
9 | +import App from './pages/App.vue'; | |
10 | + | |
11 | +const vue = createApp(App).use(AppRouter).mount('#root'); | |
12 | + | |
13 | + |
+++ client/views/layout/Header.vue
... | ... | @@ -0,0 +1,58 @@ |
1 | +<template> | |
2 | + <div class="header"> | |
3 | + <div class="b1400"> | |
4 | + | |
5 | + <div class="login"> | |
6 | + <i class="fa-solid fa-user fa-lg" style="color: #ffffff;"></i> | |
7 | + <router-link to="/Login.page"><input type="button" value="로그인" name="" id="input"></router-link> | |
8 | + | |
9 | + </div> | |
10 | + | |
11 | + <div class="join"> | |
12 | + <i class="fa-solid fa-user-plus fa-lg" style="color: #ffffff;"></i> | |
13 | + <router-link to="/Join.page"><input type="button" value="회원가입" name="" id="input"></router-link> | |
14 | + </div> | |
15 | + <Menu class="menu" :isActive="isActive"></Menu> | |
16 | + </div> | |
17 | + </div> | |
18 | +</template> | |
19 | + | |
20 | +<script> | |
21 | +export default { | |
22 | + data() { | |
23 | + return { | |
24 | + } | |
25 | + }, | |
26 | + methods: { | |
27 | + | |
28 | + }, | |
29 | + watch: { | |
30 | + | |
31 | + }, | |
32 | + computed: { | |
33 | + | |
34 | + }, | |
35 | + mounted() { | |
36 | + console.log('Header mounted'); | |
37 | + } | |
38 | +} | |
39 | +</script> | |
40 | +<style scoped> | |
41 | +.header { | |
42 | + width: 100%; | |
43 | + /* height: 40px; */ | |
44 | + display: flex; | |
45 | + justify-content: flex-end; | |
46 | + padding: 0.5rem; | |
47 | + float: right; | |
48 | + background-color: #3f87f7; | |
49 | + /* border: 1px solid red; */ | |
50 | +} | |
51 | + | |
52 | +#input { | |
53 | + border: 0; | |
54 | + background-color: rgba(240, 248, 255, 0); | |
55 | + cursor: pointer; | |
56 | + color: white; | |
57 | +} | |
58 | +</style>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/layout/Menu copy.vue
... | ... | @@ -0,0 +1,284 @@ |
1 | +<template> | |
2 | + <div class="w1400 header-wrap"> | |
3 | + <div class="logo"> | |
4 | + <router-link to="/"><span>AI 디지털교과서 통합지원센터</span></router-link> | |
5 | + </div> | |
6 | + <header> | |
7 | + <nav> | |
8 | + <ul class="clearfix"> | |
9 | + <li @mouseenter="toggleSubMenu" @mouseleave="toggleSubMenu">통합지원센터 소개 | |
10 | + <ul v-if="showSubMenu"> | |
11 | + <li>통합지원센터란?</li> | |
12 | + <li>협력 기업</li> | |
13 | + </ul> | |
14 | + </li> | |
15 | + <!-- Add more menu items here --> | |
16 | + </ul> | |
17 | + <ul class="clearfix"> | |
18 | + <li @mouseenter="expandHeader" @mouseleave="collapseHeader">자료실 | |
19 | + <ul> | |
20 | + <li>기술문서</li> | |
21 | + <li>자료집</li> | |
22 | + </ul> | |
23 | + </li> | |
24 | + <!-- Add more menu items here --> | |
25 | + </ul> | |
26 | + <ul class="clearfix"> | |
27 | + <li @mouseenter="expandHeader" @mouseleave="collapseHeader">내트워킹 | |
28 | + <ul> | |
29 | + <li>기업 홍보관</li> | |
30 | + </ul> | |
31 | + </li> | |
32 | + <!-- Add more menu items here --> | |
33 | + </ul> | |
34 | + <ul class="clearfix"> | |
35 | + <li @mouseenter="expandHeader" @mouseleave="collapseHeader">커뮤니티 | |
36 | + <ul> | |
37 | + <li>공지사항</li> | |
38 | + <li>홍보/뉴스</li> | |
39 | + </ul> | |
40 | + </li> | |
41 | + <!-- Add more menu items here --> | |
42 | + </ul> | |
43 | + <ul class="clearfix"> | |
44 | + <li @mouseenter="expandHeader" @mouseleave="collapseHeader">마이페이지 | |
45 | + <ul> | |
46 | + <li>내 정보 수정</li> | |
47 | + <li>매칭 관리</li> | |
48 | + </ul> | |
49 | + </li> | |
50 | + <!-- Add more menu items here --> | |
51 | + </ul> | |
52 | + </nav> | |
53 | + </header> | |
54 | + </div> | |
55 | +</template> | |
56 | + | |
57 | +<script> | |
58 | +export default { | |
59 | + data() { | |
60 | + return { | |
61 | + showSubMenu: false, | |
62 | + } | |
63 | + }, | |
64 | + methods: { | |
65 | + toggleSubMenu() { | |
66 | + this.showSubMenu = !this.showSubMenu; | |
67 | + }, | |
68 | + }, | |
69 | + watch: { | |
70 | + | |
71 | + }, | |
72 | + computed: { | |
73 | + | |
74 | + }, | |
75 | + mounted() { | |
76 | + console.log('Menu mounted'); | |
77 | + } | |
78 | +} | |
79 | +</script> | |
80 | + | |
81 | +<style scoped> | |
82 | +.sub-menu { | |
83 | + width: 100%; | |
84 | +} | |
85 | + | |
86 | +header { | |
87 | + display: flex | |
88 | +} | |
89 | + | |
90 | + | |
91 | +/* 폰트 적용 */ | |
92 | +@import url(//fonts.googleapis.com/earlyaccess/notosanskr.css); | |
93 | + | |
94 | +html { | |
95 | + font-family: "Noto Sans KR", sans-serif; | |
96 | +} | |
97 | + | |
98 | +/* 노말라이즈 */ | |
99 | +body, | |
100 | +ul, | |
101 | +li, | |
102 | +h1 { | |
103 | + margin: 0; | |
104 | + padding: 0; | |
105 | + list-style: none; | |
106 | +} | |
107 | + | |
108 | +a { | |
109 | + color: inherit; | |
110 | + text-decoration: none; | |
111 | +} | |
112 | + | |
113 | +/* 라이브러리 */ | |
114 | +.con { | |
115 | + margin: 0 auto; | |
116 | +} | |
117 | + | |
118 | +.img-box>img { | |
119 | + width: 100%; | |
120 | + display: block; | |
121 | +} | |
122 | + | |
123 | +.row::after { | |
124 | + content: ""; | |
125 | + display: block; | |
126 | + clear: both; | |
127 | +} | |
128 | + | |
129 | +.cell { | |
130 | + float: left; | |
131 | + box-sizing: border-box; | |
132 | +} | |
133 | + | |
134 | +.cell-right { | |
135 | + float: right; | |
136 | + box-sizing: border-box; | |
137 | +} | |
138 | + | |
139 | +.margin-0-auto { | |
140 | + margin: 0 auto; | |
141 | +} | |
142 | + | |
143 | +.block { | |
144 | + display: block; | |
145 | +} | |
146 | + | |
147 | +.inline-block { | |
148 | + display: inline-block; | |
149 | +} | |
150 | + | |
151 | +.text-align-center { | |
152 | + text-align: center; | |
153 | +} | |
154 | + | |
155 | +.line-height-0-ch-only { | |
156 | + line-height: 0; | |
157 | +} | |
158 | + | |
159 | +.line-height-0-ch-only>* { | |
160 | + line-height: normal; | |
161 | +} | |
162 | + | |
163 | +.relative { | |
164 | + position: relative; | |
165 | +} | |
166 | + | |
167 | +.absolute-left { | |
168 | + position: absolute; | |
169 | + left: 0; | |
170 | +} | |
171 | + | |
172 | +.absolute-right { | |
173 | + position: absolute; | |
174 | + right: 0; | |
175 | +} | |
176 | + | |
177 | +.absolute-middle { | |
178 | + position: absolute; | |
179 | + top: 50%; | |
180 | + transform: translateY(-50%); | |
181 | +} | |
182 | + | |
183 | +.width-100p { | |
184 | + width: 100%; | |
185 | +} | |
186 | + | |
187 | +.table { | |
188 | + display: table; | |
189 | +} | |
190 | + | |
191 | +.table-cell { | |
192 | + display: table-cell; | |
193 | +} | |
194 | + | |
195 | +.vertical-align-top { | |
196 | + vertical-align: top; | |
197 | +} | |
198 | + | |
199 | +.vertical-align-middle { | |
200 | + vertical-align: middle; | |
201 | +} | |
202 | + | |
203 | +.vertical-align-bottom { | |
204 | + vertical-align: bottom; | |
205 | +} | |
206 | + | |
207 | +/* 커스텀 */ | |
208 | + | |
209 | +.con { | |
210 | + width: 1180px; | |
211 | +} | |
212 | + | |
213 | +.con-min-width { | |
214 | + min-width: 1180px; | |
215 | +} | |
216 | + | |
217 | +/* 반응형 레이아웃 */ | |
218 | +/* | |
219 | +.con { | |
220 | + max-width:1150px; | |
221 | +} | |
222 | + | |
223 | +.con-min-width { | |
224 | + min-width:320px; | |
225 | +} | |
226 | + | |
227 | +html, body { | |
228 | + overflow-x:hidden; | |
229 | +} | |
230 | +*/ | |
231 | + | |
232 | +body { | |
233 | + background: rgb(255, 255, 255); | |
234 | +} | |
235 | + | |
236 | +header { | |
237 | + | |
238 | + /* border: 1px solid red; */ | |
239 | + /* background: -webkit-linear-gradient(rgb(255, 255, 255) 50px, rgb(255, 255, 255) 50px); */ | |
240 | + transition: 0.3s ease-in; | |
241 | + height: 50px; | |
242 | + /* overflow: hidden; */ | |
243 | +} | |
244 | + | |
245 | + | |
246 | +nav { | |
247 | + width: 960px; | |
248 | + margin: 0 auto; | |
249 | + display: flex; | |
250 | + justify-content: flex-end; | |
251 | +} | |
252 | + | |
253 | +nav>ul>li { | |
254 | + display: inline-block; | |
255 | + /* float: lef/t; */ | |
256 | + right: 0; | |
257 | + | |
258 | + line-height: 50px; | |
259 | + margin-left: 40px; | |
260 | + font-size: 1.4rem; | |
261 | + /* position: relative; */ | |
262 | + font-family: "Pretendard-Regular"; | |
263 | + | |
264 | +} | |
265 | + | |
266 | +nav>ul>li ul { | |
267 | + width: 100%; | |
268 | + opacity: 0; | |
269 | + position: absolute; | |
270 | + transition: 0.3s 0.2s; | |
271 | +} | |
272 | + | |
273 | +nav>ul>li ul li { | |
274 | + white-space: nowrap; | |
275 | +} | |
276 | + | |
277 | +nav>ul>li:hover ul { | |
278 | + opacity: 1; | |
279 | + transition: 0.3s 0.2s; | |
280 | + z-index: 1; | |
281 | + background-color: white; | |
282 | + | |
283 | +} | |
284 | +</style>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/layout/Menu.vue
... | ... | @@ -0,0 +1,249 @@ |
1 | +<template> | |
2 | + <div class="w1400 header-wrap"> | |
3 | + <div class="logo-toggle"> | |
4 | + | |
5 | + <div class="logo"> | |
6 | + <router-link to="/"><span>AI 디지털교과서 통합지원센터</span></router-link> | |
7 | + </div> | |
8 | + <input type="checkbox" id="checkbox" v-model="check"> | |
9 | + <label for="checkbox" class="toggle" @click="toggleMenu"> | |
10 | + <div class="bar bar--top"></div> | |
11 | + <div class="bar bar--middle"></div> | |
12 | + <div class="bar bar--bottom"></div> | |
13 | + </label> | |
14 | + <!-- <i v-if="!isOpened" class="fa-solid fa-bars mobile1" @click="toggleMenu"></i> | |
15 | + <i v-else class="fa-solid fa-times mobile1" @click="toggleMenu"></i> --> | |
16 | + </div> | |
17 | + <!-- 모바일 --> | |
18 | + <nav class=" sub-nav"> | |
19 | + <ul class="main-sub-menu" :class="{ open: isOpened }"> | |
20 | + <li v-for="menuItem in menuItems" :key="menuItem.text"> | |
21 | + <div @click="toggleAccordion(menuItem)" class="accordion-header" | |
22 | + :class="{ 'active': menuItem.isExpanded }"> | |
23 | + {{ menuItem.text }} | |
24 | + </div> | |
25 | + <ul class="main-sub-menu-sb" v-if="menuItem.isExpanded"> | |
26 | + <li v-for="subMenuItem in menuItem.subMenu" :key="subMenuItem.text" @click="navClose(menuItem)"> | |
27 | + <router-link :to="subMenuItem.link">{{ subMenuItem.text }}</router-link> | |
28 | + </li> | |
29 | + </ul> | |
30 | + </li> | |
31 | + </ul> | |
32 | + </nav> | |
33 | + <!-- PC --> | |
34 | + <nav> | |
35 | + <ul class="main-menu main-menu-1"> | |
36 | + <li v-for="menuItem in menuItems" :key="menuItem.text" :class="{ 'active': menuItem.isHovered }" | |
37 | + @mouseover="menuItem.isHovered = true" @mouseout="menuItem.isHovered = false"> | |
38 | + <router-link :to="menuItem.link">{{ menuItem.text }}</router-link> | |
39 | + <ul class="sub-menu sub-menu-1"> | |
40 | + <li v-for="subMenuItem in menuItem.subMenu" :key="subMenuItem.text" @click="navClose(menuItem)"> | |
41 | + <router-link :to="subMenuItem.link">{{ subMenuItem.text }}</router-link> | |
42 | + </li> | |
43 | + </ul> | |
44 | + </li> | |
45 | + </ul> | |
46 | + </nav> | |
47 | + </div> | |
48 | +</template> | |
49 | + | |
50 | +<script> | |
51 | +export default { | |
52 | + data() { | |
53 | + return { | |
54 | + check: false, | |
55 | + isOpened: false, | |
56 | + menuItems: [ | |
57 | + { | |
58 | + text: "통합지원센터 소개", | |
59 | + link: "/", | |
60 | + subMenu: [ | |
61 | + { text: "통합지원센터란?", link: "" }, | |
62 | + { text: "협력 기업", link: "" } | |
63 | + ] | |
64 | + }, | |
65 | + { | |
66 | + text: "자료실", | |
67 | + link: "", | |
68 | + isHovered: false, | |
69 | + subMenu: [ | |
70 | + { text: "기술문서", link: "" }, | |
71 | + { text: "자료집", link: "/Data.page" } | |
72 | + ] | |
73 | + }, | |
74 | + { | |
75 | + text: "네트워킹", | |
76 | + link: "", | |
77 | + isHovered: false, | |
78 | + subMenu: [ | |
79 | + { text: "기업 홍보관", link: "/Matching.page" }, | |
80 | + ] | |
81 | + }, | |
82 | + { | |
83 | + text: "커뮤니티", | |
84 | + link: "", | |
85 | + isHovered: false, | |
86 | + subMenu: [ | |
87 | + { text: "공지사항", link: "" }, | |
88 | + { text: "홍보/뉴스", link: "" } | |
89 | + ] | |
90 | + }, | |
91 | + { | |
92 | + text: "마이페이지", | |
93 | + link: "", | |
94 | + isHovered: false, | |
95 | + subMenu: [ | |
96 | + { text: "내 정보 수정", link: "" }, | |
97 | + { text: "매칭 관리", link: "" } | |
98 | + ] | |
99 | + } | |
100 | + ] | |
101 | + }; | |
102 | + }, | |
103 | + methods: { | |
104 | + toggleAccordion(menuItem) { | |
105 | + menuItem.isExpanded = !menuItem.isExpanded; | |
106 | + console.log(menuItem.isExpanded); | |
107 | + this.isOpened = true; | |
108 | + }, | |
109 | + toggleMenu() { | |
110 | + this.isOpened = !this.isOpened; | |
111 | + }, | |
112 | + navClose(menuItem) { | |
113 | + this.isOpened = false; | |
114 | + menuItem.isExpanded = false; | |
115 | + this.check = false; | |
116 | + }, | |
117 | + // mouseouts() { | |
118 | + // this.isOpened = false; | |
119 | + // console.log("active"); | |
120 | + // } | |
121 | + }, | |
122 | + watch: { | |
123 | + | |
124 | + }, | |
125 | + computed: { | |
126 | + | |
127 | + }, | |
128 | + mounted() { | |
129 | + console.log('Menu mounted'); | |
130 | + } | |
131 | +} | |
132 | +</script> | |
133 | + | |
134 | +<style scoped> | |
135 | +ul.main-menu { | |
136 | + display: flex; | |
137 | + justify-content: flex-start; | |
138 | + align-items: center; | |
139 | +} | |
140 | + | |
141 | +ul.main-menu>li { | |
142 | + position: relative; | |
143 | +} | |
144 | + | |
145 | +ul.main-menu>li>a { | |
146 | + display: block; | |
147 | + padding: 25px; | |
148 | + font-size: 1.6rem; | |
149 | + font-weight: 500; | |
150 | + font-family: "Pretendard-Regular"; | |
151 | + | |
152 | +} | |
153 | + | |
154 | +ul.sub-menu { | |
155 | + height: 0; | |
156 | + overflow: hidden; | |
157 | + transition: all 0.8s; | |
158 | + position: absolute; | |
159 | + top: 69px; | |
160 | + left: 0; | |
161 | + width: 100%; | |
162 | + z-index: 100000; | |
163 | + background-color: #fff; | |
164 | + box-shadow: 0px 2px 2px #3333331b; | |
165 | +} | |
166 | + | |
167 | +ul.main-menu>li.active ul.sub-menu { | |
168 | + height: auto; | |
169 | +} | |
170 | + | |
171 | + | |
172 | +ul.sub-menu>li>a { | |
173 | + display: block; | |
174 | + padding: 15px; | |
175 | + font-size: 1.5rem !important; | |
176 | + font-weight: 500; | |
177 | + font-family: "Pretendard-Regular"; | |
178 | + padding-bottom: 2rem; | |
179 | + text-align: center; | |
180 | + font-size: 1.2rem; | |
181 | +} | |
182 | + | |
183 | + | |
184 | + | |
185 | + | |
186 | + | |
187 | +#checkbox { | |
188 | + display: none; | |
189 | +} | |
190 | + | |
191 | +.toggle { | |
192 | + position: relative; | |
193 | + width: 30px; | |
194 | + cursor: pointer; | |
195 | + margin: auto; | |
196 | + display: block; | |
197 | + height: calc(4px * 3 + 11px * 2); | |
198 | +} | |
199 | + | |
200 | +.bar { | |
201 | + position: absolute; | |
202 | + left: 0; | |
203 | + right: 0; | |
204 | + height: 3px; | |
205 | + border-radius: calc(4px / 2); | |
206 | + background: #2c407f; | |
207 | + color: inherit; | |
208 | + opacity: 1; | |
209 | + transition: none 0.35s cubic-bezier(.5, -0.35, .35, 1.5) 0s; | |
210 | +} | |
211 | + | |
212 | +/***** Spin Animation *****/ | |
213 | + | |
214 | +.bar--top { | |
215 | + bottom: calc(50% + 11px + 4px/ 2); | |
216 | + transition-property: bottom, transform; | |
217 | + transition-delay: calc(0s + 0.35s), 0s; | |
218 | +} | |
219 | + | |
220 | +.bar--middle { | |
221 | + top: calc(50% - 4px/ 2); | |
222 | + transition-property: opacity; | |
223 | + transition-delay: calc(0s + 0.35s); | |
224 | +} | |
225 | + | |
226 | +.bar--bottom { | |
227 | + top: calc(50% + 11px + 4px/ 2); | |
228 | + transition-property: top, transform; | |
229 | + transition-delay: calc(0s + 0.35s), 0s; | |
230 | +} | |
231 | + | |
232 | +#checkbox:checked+.toggle .bar--top { | |
233 | + bottom: calc(50% - 4px/ 2); | |
234 | + transform: rotate(135deg); | |
235 | + transition-delay: 0s, calc(0s + 0.35s); | |
236 | +} | |
237 | + | |
238 | +#checkbox:checked+.toggle .bar--middle { | |
239 | + opacity: 0; | |
240 | + transition-duration: 0s; | |
241 | + transition-delay: calc(0s + 0.35s); | |
242 | +} | |
243 | + | |
244 | +#checkbox:checked+.toggle .bar--bottom { | |
245 | + top: calc(50% - 4px/ 2); | |
246 | + transform: rotate(225deg); | |
247 | + transition-delay: 0s, calc(0s + 0.35s); | |
248 | +} | |
249 | +</style>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/layout/Menusub.vue
... | ... | @@ -0,0 +1,44 @@ |
1 | +<template> | |
2 | + <div class="w1400 header-sub-wrap"> | |
3 | + <div> | |
4 | + <div class="sub-sub-menu"> | |
5 | + <ul> | |
6 | + <li><router-link to="/"> <span>통합지원센터 소개</span></router-link></li> | |
7 | + <li><router-link to="/"> <span>자료실</span></router-link></li> | |
8 | + <li><router-link to="/"> <span>네트워킹</span></router-link></li> | |
9 | + <li><router-link to="/"> <span>커뮤니티</span></router-link></li> | |
10 | + <li><router-link to="/main2"> <span>마이페이지</span></router-link></li> | |
11 | + </ul> | |
12 | + </div> | |
13 | + | |
14 | + </div> | |
15 | + | |
16 | + </div> | |
17 | +</template> | |
18 | + | |
19 | +<script> | |
20 | +export default { | |
21 | + data() { | |
22 | + return { | |
23 | + } | |
24 | + }, | |
25 | + methods: { | |
26 | + | |
27 | + }, | |
28 | + watch: { | |
29 | + | |
30 | + }, | |
31 | + computed: { | |
32 | + | |
33 | + }, | |
34 | + mounted() { | |
35 | + console.log('Menu mounted'); | |
36 | + } | |
37 | +} | |
38 | +</script> | |
39 | + | |
40 | +<style scoped> | |
41 | +.sub-menu { | |
42 | + width: 100%; | |
43 | +} | |
44 | +</style>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/pages/App.vue
... | ... | @@ -0,0 +1,44 @@ |
1 | +<template> | |
2 | + <div v-cloak> | |
3 | + <Header></Header> | |
4 | + <Menu></Menu> | |
5 | + <div class="main-warp"> | |
6 | + <router-view /> | |
7 | + </div> | |
8 | + <Footer></Footer> | |
9 | + </div> | |
10 | +</template> | |
11 | + | |
12 | +<script> | |
13 | +import Header from '../layout/Header.vue'; | |
14 | +import Menu from '../layout/Menu.vue'; | |
15 | +import Footer from '../layout/Footer.vue'; | |
16 | + | |
17 | +const App = { | |
18 | + data: () => { | |
19 | + return { | |
20 | + } | |
21 | + }, | |
22 | + methods: { | |
23 | + | |
24 | + }, | |
25 | + watch: { | |
26 | + | |
27 | + }, | |
28 | + computed: { | |
29 | + | |
30 | + }, | |
31 | + components: { | |
32 | + 'Header': Header, | |
33 | + 'Menu': Menu, | |
34 | + 'Footer': Footer, | |
35 | + }, | |
36 | + mounted: () => { | |
37 | + console.log('Vue mounted'); | |
38 | + } | |
39 | +} | |
40 | + | |
41 | +export default App; | |
42 | +</script> | |
43 | + | |
44 | +<style></style> |
+++ client/views/pages/AppRouter.js
... | ... | @@ -0,0 +1,23 @@ |
1 | +import { createWebHistory, createRouter } from "vue-router"; | |
2 | + | |
3 | +import Main from "../pages/main/Main.vue"; | |
4 | +import Matching from "../pages/matching/Matching.vue"; | |
5 | +import Data from "../pages/Data/Data.vue"; | |
6 | +import Login from "../pages/login/Login.vue"; | |
7 | +import Join from "../pages/Join/Join.vue"; | |
8 | + | |
9 | +const routes = [ | |
10 | + /* 메인화면 */ | |
11 | + { path: "/", name: "Main", component: Main }, | |
12 | + { path: "/Data.page", name: "Data", component: Data }, | |
13 | + { path: "/Matching.page", name: "Matching", component: Matching }, | |
14 | + { path: "/Login.page", name: "Login", component: Login }, | |
15 | + { path: "/Join.page", name: "Join", component: Join }, | |
16 | +]; | |
17 | + | |
18 | +const AppRouter = createRouter({ | |
19 | + history: createWebHistory(), | |
20 | + routes, | |
21 | +}); | |
22 | + | |
23 | +export default AppRouter; |
+++ client/views/pages/Data/Data.vue
... | ... | @@ -0,0 +1,133 @@ |
1 | +<template> | |
2 | + <div class="data-main"> | |
3 | + <section class="main-sec sec1"> | |
4 | + <!-- <div class="main-content"> --> | |
5 | + <div class="flex"> | |
6 | + <!-- 자료집 비주얼 --> | |
7 | + <div class="data-b"> | |
8 | + <div class="w1400"> | |
9 | + <div class="data-b-b"> | |
10 | + <!-- 자료집 텍스트 --> | |
11 | + <div class="data-text"> | |
12 | + | |
13 | + <p>자료집</p> | |
14 | + </div> | |
15 | + </div> | |
16 | + </div> | |
17 | + </div> | |
18 | + </div> | |
19 | + </section> | |
20 | + | |
21 | + <!-- 자료집 메인 --> | |
22 | + <section class="data-b-main"> | |
23 | + <div class="data-b"> | |
24 | + <div class="w1400"> | |
25 | + <div class="data-b-grid"> | |
26 | + <!-- 윗쪽 아이콘 --> | |
27 | + <div class="data-b-1 da1"> | |
28 | + <p>AI 디지털교과서<br><span>개발 가이드 라인<br> 설명회 발표자료</span></p> | |
29 | + </div> | |
30 | + <div class="data-b-2 da1"> | |
31 | + <p>AI 디지털교과서<br><span>정책</span></p> | |
32 | + </div> | |
33 | + <div class="data-b-3 da1"> | |
34 | + <p>AI 디지털교과서<br><span>개발아이디어<br> 해커톤 작품집</span></p> | |
35 | + </div> | |
36 | + </div> | |
37 | + </div> | |
38 | + </div> | |
39 | + </section> | |
40 | + | |
41 | + <!-- 자료집 테이블 --> | |
42 | + | |
43 | + <section class="data-table"> | |
44 | + <div class="data-b"> | |
45 | + <div class="w1400"> | |
46 | + <div class="data-select"> | |
47 | + | |
48 | + | |
49 | + <select name="data-table-sild" id="data-table-sild"> | |
50 | + <option value="전체" selected>전체</option> | |
51 | + <option value="기본순">기본순</option> | |
52 | + <option value="업로드순" disabled>업로드순</option> | |
53 | + <option value="조회순">조회순</option> | |
54 | + </select> | |
55 | + <div class="input-group"> | |
56 | + <input type="text" class="input" onfocus="this.value=''; return true;" value="검색어를 입력해주세요."> | |
57 | + <input class="button--submit" value="검색" type="submit"> | |
58 | + </div> | |
59 | + </div> | |
60 | + <div class="data-table-tr"> | |
61 | + <table> | |
62 | + <th>NO</th> | |
63 | + <th>공지사항</th> | |
64 | + <th>날짜</th> | |
65 | + | |
66 | + <tr> | |
67 | + <td>588</td> | |
68 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
69 | + <td>2023/10/19</td> | |
70 | + </tr> | |
71 | + <tr> | |
72 | + <td>588</td> | |
73 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
74 | + <td>2023/10/19</td> | |
75 | + </tr> | |
76 | + <tr> | |
77 | + <td>588</td> | |
78 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
79 | + <td>2023/10/19</td> | |
80 | + </tr> | |
81 | + <tr> | |
82 | + <td>588</td> | |
83 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
84 | + <td>2023/10/19</td> | |
85 | + </tr> | |
86 | + <tr> | |
87 | + <td>588</td> | |
88 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
89 | + <td>2023/10/19</td> | |
90 | + </tr> | |
91 | + <tr> | |
92 | + <td>588</td> | |
93 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
94 | + <td>2023/10/19</td> | |
95 | + </tr> | |
96 | + <tr> | |
97 | + <td>588</td> | |
98 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
99 | + <td>2023/10/19</td> | |
100 | + </tr> | |
101 | + <tr> | |
102 | + <td>588</td> | |
103 | + <td>[자료집] K-MOOC 마이크로러닝 강좌 개발 가이드라인</td> | |
104 | + <td>2023/10/19</td> | |
105 | + </tr> | |
106 | + </table> | |
107 | + </div> | |
108 | + </div> | |
109 | + </div> | |
110 | + </section> | |
111 | + </div> | |
112 | +</template> | |
113 | + | |
114 | +<script> | |
115 | +export default { | |
116 | + data() { | |
117 | + return { | |
118 | + } | |
119 | + }, | |
120 | + methods: { | |
121 | + | |
122 | + }, | |
123 | + watch: { | |
124 | + | |
125 | + }, | |
126 | + computed: { | |
127 | + | |
128 | + }, | |
129 | + mounted() { | |
130 | + console.log('Data mounted'); | |
131 | + } | |
132 | +} | |
133 | +</script>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/pages/join/Join.vue
... | ... | @@ -0,0 +1,111 @@ |
1 | +<template> | |
2 | + <div class="w1400"> | |
3 | + <div> | |
4 | + <section class="join-logo"> | |
5 | + <h1>회원가입</h1> | |
6 | + </section> | |
7 | + | |
8 | + <section class="join-sec1"> | |
9 | + <div class="join-sec-sub"> | |
10 | + <span>아이디</span> | |
11 | + <input type="text"> | |
12 | + <button>중복확인</button> | |
13 | + </div> | |
14 | + </section> | |
15 | + | |
16 | + | |
17 | + <section class="join-sec2"> | |
18 | + <div class="join-sec-sub"> | |
19 | + <span>기관업체</span> | |
20 | + <input type="text" value="기관 및 업체명을 입력하세요."> | |
21 | + </div> | |
22 | + </section> | |
23 | + | |
24 | + | |
25 | + <section class="join-sec3"> | |
26 | + <div class="join-sec-sub"> | |
27 | + <span>비밀번호</span> | |
28 | + <input type="text"> | |
29 | + </div> | |
30 | + </section> | |
31 | + | |
32 | + | |
33 | + <section class="join-sec4"> | |
34 | + <div class="join-sec-sub"> | |
35 | + <span>비밀번호 확인</span> | |
36 | + <input type="text"> | |
37 | + </div> | |
38 | + </section> | |
39 | + | |
40 | + | |
41 | + <section class="join-sec5"> | |
42 | + <div class="join-sec-sub"> | |
43 | + <span>담당자명</span> | |
44 | + <input type="text"> | |
45 | + </div> | |
46 | + </section> | |
47 | + | |
48 | + | |
49 | + <section class="join-sec6"> | |
50 | + <div class="join-sec-sub"> | |
51 | + <label for="email_id">이메일</label> | |
52 | + <input type="text" name="email_id" id="email_id"> @ | |
53 | + <input type="text" name="email_dns" id="email_dns"> | |
54 | + <select name="email_sel" id="email_sel"> | |
55 | + <option value="">직접 입력</option> | |
56 | + <option value="naver.com">NAVER</option> | |
57 | + <option value="hanmail.net">DAUM</option> | |
58 | + <option value="gmail.com">GOOGLE</option> | |
59 | + </select> | |
60 | + </div> | |
61 | + </section> | |
62 | + </div> | |
63 | + | |
64 | + | |
65 | + | |
66 | + <!----------------------------------------------------------------------------------------------------------------> | |
67 | + | |
68 | + <div> | |
69 | + <section class="join-sec"> | |
70 | + <div class="join-sec-a"> | |
71 | + <h1>회사소개</h1> | |
72 | + </div> | |
73 | + </section> | |
74 | + | |
75 | + <section class="join-sec-a-1"> | |
76 | + <span>회사명</span> | |
77 | + <input type="text"> | |
78 | + </section> | |
79 | + <section class="join-sec-a-1"> | |
80 | + <span>우리회사 키워드</span> | |
81 | + <input type="text"> | |
82 | + </section> | |
83 | + <section class="join-sec-a-1"> | |
84 | + <span>회사 소개글</span> | |
85 | + <input type="text"> | |
86 | + </section> | |
87 | + </div> | |
88 | + </div> | |
89 | +</template> | |
90 | + | |
91 | +<script> | |
92 | +export default { | |
93 | + data() { | |
94 | + return { | |
95 | + } | |
96 | + }, | |
97 | + methods: { | |
98 | + | |
99 | + }, | |
100 | + watch: { | |
101 | + | |
102 | + }, | |
103 | + computed: { | |
104 | + | |
105 | + }, | |
106 | + mounted() { | |
107 | + console.log('Join mounted'); | |
108 | + } | |
109 | +} | |
110 | +</script> | |
111 | + |
+++ client/views/pages/login/Login.vue
... | ... | @@ -0,0 +1,185 @@ |
1 | +<template> | |
2 | + <div class="w1400"> | |
3 | + <div class=" login-sec"> | |
4 | + <section class="login-logo"> | |
5 | + <div class="login-logo-d"> | |
6 | + <img src="../../../resources/jpg/logo/keris.gif" alt=""> | |
7 | + <h1>AI 디지털교과서 통합지원센터</h1> | |
8 | + </div> | |
9 | + </section> | |
10 | + | |
11 | + <section class="login-input"> | |
12 | + <div class="login-input-d"> | |
13 | + <div class="ID"> | |
14 | + <input type="text" class="id" value="아이디를 입력하세요."> | |
15 | + </div> | |
16 | + <div class="PW"> | |
17 | + <input type="password" class="password" value="비밀번호를 입력하세요."> | |
18 | + </div> | |
19 | + </div> | |
20 | + </section> | |
21 | + | |
22 | + <section class="login-checkbox"> | |
23 | + <div class="login-checkbox-i"> | |
24 | + <input type="checkbox"> | |
25 | + <span> | |
26 | + 로그인상태 유지 | |
27 | + </span> | |
28 | + </div> | |
29 | + <div class="login-checkbox-b"> | |
30 | + <button>아이디 찾기</button> | |
31 | + <button>비밀번호찾기</button> | |
32 | + <button>회원가입</button> | |
33 | + </div> | |
34 | + </section> | |
35 | + <section class="login-button"> | |
36 | + <button>로그인</button> | |
37 | + </section> | |
38 | + </div> | |
39 | + </div> | |
40 | +</template> | |
41 | + | |
42 | +<script> | |
43 | +export default { | |
44 | + data() { | |
45 | + return { | |
46 | + } | |
47 | + }, | |
48 | + methods: { | |
49 | + | |
50 | + }, | |
51 | + watch: { | |
52 | + | |
53 | + }, | |
54 | + computed: { | |
55 | + | |
56 | + }, | |
57 | + mounted() { | |
58 | + console.log('Login mounted'); | |
59 | + } | |
60 | +} | |
61 | +</script> | |
62 | + | |
63 | + | |
64 | +<style scoped> | |
65 | +.w1400 { | |
66 | + overflow-y: hidden; | |
67 | + margin: 0 auto; | |
68 | + text-align: center; | |
69 | +} | |
70 | + | |
71 | +.login-sec section { | |
72 | + /* border: 1px solid red; */ | |
73 | +} | |
74 | + | |
75 | +.login-logo { | |
76 | + width: 100%; | |
77 | + padding-top: 11rem; | |
78 | + | |
79 | +} | |
80 | + | |
81 | +.login-logo-d img { | |
82 | + width: 300px; | |
83 | + text-align: center; | |
84 | + /* border: 1px solid red; */ | |
85 | + margin: 0 auto; | |
86 | + padding: 3rem; | |
87 | +} | |
88 | + | |
89 | +.login-logo-d h1 { | |
90 | + /* border: 1px solid red; */ | |
91 | + font-family: SBaggroM; | |
92 | + font-weight: 500; | |
93 | + color: #063a6d; | |
94 | + font-size: 2.5rem; | |
95 | +} | |
96 | + | |
97 | +.login-input { | |
98 | + width: 100%; | |
99 | + display: flex; | |
100 | + flex-direction: column; | |
101 | + | |
102 | + | |
103 | +} | |
104 | + | |
105 | +.login-input-d div { | |
106 | + width: 100%; | |
107 | + | |
108 | + padding: 1rem; | |
109 | +} | |
110 | + | |
111 | +.ID input, | |
112 | +.PW input { | |
113 | + width: 40rem; | |
114 | + height: 6rem; | |
115 | + border: 1px solid #9a9a9a; | |
116 | + border-radius: 1.2rem; | |
117 | + padding: 1rem; | |
118 | + color: #9a9a9a; | |
119 | +} | |
120 | + | |
121 | +.login-checkbox { | |
122 | + | |
123 | + width: 100%; | |
124 | +} | |
125 | + | |
126 | +.login-checkbox-i { | |
127 | + width: 40rem; | |
128 | + text-align: left; | |
129 | + margin: 0 auto; | |
130 | + /* border: 1px solid red; */ | |
131 | + | |
132 | +} | |
133 | + | |
134 | +.login-checkbox-i input[type=checkbox] { | |
135 | + text-align: left; | |
136 | + margin: 1rem; | |
137 | + /* border: 1px solid red; */ | |
138 | + transform: scale(1.5); | |
139 | +} | |
140 | + | |
141 | +.login-checkbox-i span { | |
142 | + font-size: 1.5rem; | |
143 | +} | |
144 | + | |
145 | +.login-checkbox-b { | |
146 | + padding: 6rem; | |
147 | +} | |
148 | + | |
149 | +.login-checkbox-b button { | |
150 | + padding: 1rem; | |
151 | + /* margin: 1rem; */ | |
152 | + color: #333; | |
153 | + font-family: "Pretendard-Regular"; | |
154 | + font-weight: 500; | |
155 | + font-size: 1.5rem; | |
156 | + background-color: #06396d00; | |
157 | +} | |
158 | + | |
159 | +.login-checkbox-b button:nth-child(1) { | |
160 | + position: relative; | |
161 | +} | |
162 | + | |
163 | +.login-checkbox-b button:nth-child(1)::after, | |
164 | +.login-checkbox-b button:nth-child(2)::after { | |
165 | + content: 'ㅣ'; | |
166 | + float: right; | |
167 | + display: block; | |
168 | + margin-left: 20px; | |
169 | +} | |
170 | + | |
171 | +.login-button { | |
172 | + width: 100%; | |
173 | + padding: 0rem 0rem 10rem 0rem; | |
174 | +} | |
175 | + | |
176 | +.login-button button { | |
177 | + width: 40rem; | |
178 | + padding: 2rem; | |
179 | + background-color: #3f87f7; | |
180 | + color: white; | |
181 | + font-size: 1.7rem; | |
182 | + border-radius: 1.2rem; | |
183 | + cursor: pointer; | |
184 | +} | |
185 | +</style>(파일 끝에 줄바꿈 문자 없음) |
+++ client/views/pages/main/Main.vue
... | ... | @@ -0,0 +1,426 @@ |
1 | +<template> | |
2 | + <div class="main-page"> | |
3 | + <section class="main-sec sec1"> | |
4 | + <!-- <div class="main-content"> --> | |
5 | + <div class="flex"> | |
6 | + <!-- 메인비주얼 --> | |
7 | + <div class="m-b"> | |
8 | + <div class="w1400"> | |
9 | + <div class="m-b-b"> | |
10 | + <!-- 메인 텍스트 --> | |
11 | + <div class="m-text"> | |
12 | + <p>신나고 재미있는 수업의 시작<br><span>디지털 교과서와 함께합니다.</span></p> | |
13 | + </div> | |
14 | + <!-- 메인 배너 --> | |
15 | + <div class="m-benner"> | |
16 | + | |
17 | + </div> | |
18 | + </div> | |
19 | + | |
20 | + </div> | |
21 | + </div> | |
22 | + | |
23 | + <!-- </div> --> | |
24 | + </div> | |
25 | + </section> | |
26 | + <section class="main-sec sec1"> | |
27 | + <div class="main-content"> | |
28 | + <div class="flex"> | |
29 | + <!-- 메인 퍼즐 --> | |
30 | + <div class="m-p"> | |
31 | + <div class="w1400"> | |
32 | + <div class="m-p-container"> | |
33 | + <div class="m-p-c-1"> | |
34 | + <div class="m-p-name"> | |
35 | + <h3>공지사항</h3> | |
36 | + <input type="button" value="+ 더보기"> | |
37 | + </div> | |
38 | + <div class="m-p-table"> | |
39 | + <table> | |
40 | + <tr> | |
41 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
42 | + <p>공지사항 l 2023.10.17 </p> | |
43 | + </td> | |
44 | + </tr> | |
45 | + <tr> | |
46 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
47 | + <p>공지사항 l 2023.10.17 </p> | |
48 | + </td> | |
49 | + </tr> | |
50 | + <tr> | |
51 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
52 | + <p>공지사항 l 2023.10.17 </p> | |
53 | + </td> | |
54 | + </tr> | |
55 | + <tr> | |
56 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
57 | + <p>공지사항 l 2023.10.17 </p> | |
58 | + </td> | |
59 | + </tr> | |
60 | + <tr> | |
61 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
62 | + <p>공지사항 l 2023.10.17 </p> | |
63 | + </td> | |
64 | + </tr> | |
65 | + <!-- <tr> | |
66 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
67 | + <p>공지사항 l 2023.10.17 </p> | |
68 | + </td> | |
69 | + </tr> | |
70 | + <tr> | |
71 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
72 | + <p>공지사항 l 2023.10.17 </p> | |
73 | + </td> | |
74 | + </tr> | |
75 | + <tr> | |
76 | + <td>[공유] AI디지털교과서 개발 가이드 라인 설명회 발표자료 | |
77 | + <p>공지사항 l 2023.10.17 </p> | |
78 | + </td> | |
79 | + </tr> --> | |
80 | + | |
81 | + | |
82 | + </table> | |
83 | + </div> | |
84 | + </div> | |
85 | + | |
86 | + <div class="m-p-c-2"> | |
87 | + <div> | |
88 | + <img src="../../../resources/jpg/fille.png" alt=""> | |
89 | + <input type="button" value="매칭서비스" class="m-p-ai"> | |
90 | + | |
91 | + </div> | |
92 | + </div> | |
93 | + <div class="m-p-c-3"> | |
94 | + <div> | |
95 | + <img src="../../../resources/jpg/m-p-ai2.png" alt=""> | |
96 | + <input type="button" value="자료집" class="m-p-ai"> | |
97 | + | |
98 | + </div> | |
99 | + </div> | |
100 | + <div class="m-p-c-4"> | |
101 | + <div> | |
102 | + <img src="../../../resources/jpg/m-p-ai.png" alt=""> | |
103 | + <input type="button" value="AI 디지털교과서 정책소개 다운" class="m-p-ai"> | |
104 | + | |
105 | + </div> | |
106 | + </div> | |
107 | + <div class="m-p-c-5"> | |
108 | + <div> | |
109 | + <img src="../../../resources/jpg/ki-i.png" alt=""> | |
110 | + <input type="button" value="기술문서" class="m-p-ai"> | |
111 | + | |
112 | + </div> | |
113 | + </div> | |
114 | + </div> | |
115 | + </div> | |
116 | + </div> | |
117 | + | |
118 | + </div> | |
119 | + </div> | |
120 | + </section> | |
121 | + <section class="main-sec sec1"> | |
122 | + | |
123 | + <div class=" flex"> | |
124 | + <!-- 메인 홍보/뉴스 --> | |
125 | + | |
126 | + <div class="m-n"> | |
127 | + <div class="w1400"> | |
128 | + <div class="m-n-n"> | |
129 | + | |
130 | + <h3>홍보/뉴스</h3> | |
131 | + <div class="m-n-hidden"> | |
132 | + <!-- | |
133 | + <swiper ref="{swiperRef}" :slidesPerView="3" :initialSlide="2" :centeredSlides="true" | |
134 | + :spaceBetween="30" :loop="true" :breakpoints="{ | |
135 | + 300: { slidesPerView: 1 }, | |
136 | + 479: { slidesPerView: 1 }, | |
137 | + 768: { slidesPerView: 2 }, | |
138 | + 1023: { slidesPerView: 3 } | |
139 | + }" :autoplay="{ | |
140 | + delay: 4500, | |
141 | + disableOnInteraction: false, | |
142 | +}" :pagination="{ | |
143 | + type: 'fraction', | |
144 | +}" :navigation="true" :modules="modules" class="mySwiper"> | |
145 | + <swiper-slide> | |
146 | + <div class="vedio"> | |
147 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
148 | + height="100px" type=""> | |
149 | + </div> | |
150 | + </swiper-slide> | |
151 | + <swiper-slide><embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
152 | + height="100px" type=""></swiper-slide> | |
153 | + <swiper-slide><embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
154 | + height="100px" type=""></swiper-slide> | |
155 | + <swiper-slide><embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
156 | + height="100px" type=""></swiper-slide> | |
157 | + <swiper-slide><embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
158 | + height="100px" type=""></swiper-slide> | |
159 | + <swiper-slide><embed src="https://webst.edunet.net/AIDT/playertest.mp4" width="100%" | |
160 | + height="100px" type=""></swiper-slide> | |
161 | + | |
162 | + </swiper> --> | |
163 | + <swiper :navigation="true" :pagination="false" :slidesPerView="3" :mousewheel="true" | |
164 | + :initialSlide="2" :centeredSlides="false" :spaceBetween="55" :loop="true" :breakpoints="{ | |
165 | + 300: { slidesPerView: 1 }, | |
166 | + 479: { slidesPerView: 1 }, | |
167 | + 768: { slidesPerView: 2 }, | |
168 | + 1023: { slidesPerView: 3 } | |
169 | + }" :modules="modules" class="mySwiper"> | |
170 | + <swiper-slide> | |
171 | + <div class="swiper-div"> | |
172 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
173 | + <p>홍보영상</p> | |
174 | + </div> | |
175 | + </swiper-slide> | |
176 | + <swiper-slide> | |
177 | + <div class="swiper-div"> | |
178 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
179 | + <p>홍보영상</p> | |
180 | + </div> | |
181 | + </swiper-slide> | |
182 | + <swiper-slide> | |
183 | + <div class="swiper-div"> | |
184 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
185 | + <p>홍보영상</p> | |
186 | + </div> | |
187 | + </swiper-slide> | |
188 | + <swiper-slide> | |
189 | + <div class="swiper-div"> | |
190 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
191 | + <p>홍보영상</p> | |
192 | + </div> | |
193 | + </swiper-slide> | |
194 | + <swiper-slide> | |
195 | + <div class="swiper-div"> | |
196 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
197 | + <p>홍보영상</p> | |
198 | + </div> | |
199 | + </swiper-slide> | |
200 | + <swiper-slide> | |
201 | + <div class="swiper-div"> | |
202 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
203 | + <p>홍보영상</p> | |
204 | + </div> | |
205 | + </swiper-slide> | |
206 | + <swiper-slide> | |
207 | + <div class="swiper-div"> | |
208 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
209 | + <p>홍보영상</p> | |
210 | + </div> | |
211 | + </swiper-slide> | |
212 | + <swiper-slide> | |
213 | + <div class="swiper-div"> | |
214 | + <embed src="https://webst.edunet.net/AIDT/playertest.mp4" type=""> | |
215 | + <p>홍보영상</p> | |
216 | + </div> | |
217 | + </swiper-slide> | |
218 | + | |
219 | + </swiper> | |
220 | + | |
221 | + | |
222 | + </div> | |
223 | + </div> | |
224 | + | |
225 | + | |
226 | + </div> | |
227 | + </div> | |
228 | + | |
229 | + </div> | |
230 | + | |
231 | + </section> | |
232 | + <section class="main-sec sec1"> | |
233 | + | |
234 | + <div class=" flex"> | |
235 | + <!-- 히스토리 --> | |
236 | + | |
237 | + <div class="m-h"> | |
238 | + <div class="w1400"> | |
239 | + <div class="m-h-h"> | |
240 | + <h1>History</h1> | |
241 | + <div class="m-h-g"> | |
242 | + <div class="m-h-g-1"> | |
243 | + <div> | |
244 | + <h3>방문자수</h3> | |
245 | + <p></p> | |
246 | + <p>367,700 </p> | |
247 | + <span>명</span> | |
248 | + | |
249 | + </div> | |
250 | + </div> | |
251 | + <div class="m-h-g-2"> | |
252 | + <div> | |
253 | + <h3>참가업체</h3> | |
254 | + <p></p> | |
255 | + <p>52,500 </p> | |
256 | + <span>업체</span> | |
257 | + | |
258 | + </div> | |
259 | + </div> | |
260 | + <div class="m-h-g-3"> | |
261 | + <div> | |
262 | + <h3>참가인원</h3> | |
263 | + <p></p> | |
264 | + <p>360,000</p> | |
265 | + <span>명</span> | |
266 | + | |
267 | + </div> | |
268 | + </div> | |
269 | + </div> | |
270 | + | |
271 | + | |
272 | + </div> | |
273 | + | |
274 | + </div> | |
275 | + </div> | |
276 | + | |
277 | + </div> | |
278 | + | |
279 | + </section> | |
280 | + <section class="main-sec sec1"> | |
281 | + <div class=" flex"> | |
282 | + <!-- 파트너사 --> | |
283 | + | |
284 | + <div class="m-partner"> | |
285 | + <div class="w1400"> | |
286 | + <div class="m-pa"> | |
287 | + <h1>파트너사</h1> | |
288 | + <div class="m-pa-pa"> | |
289 | + <div class="m-pa-logo lo1"></div> | |
290 | + <div class="m-pa-logo lo2"></div> | |
291 | + <div class="m-pa-logo lo3"></div> | |
292 | + <div class="m-pa-logo lo4"></div> | |
293 | + <div class="m-pa-logo lo5"></div> | |
294 | + </div> | |
295 | + | |
296 | + </div> | |
297 | + </div> | |
298 | + | |
299 | + </div> | |
300 | + </div> | |
301 | + | |
302 | + <div class="m-p-sw"> | |
303 | + <div class="w1400"> | |
304 | + <div class="m-p-sw-1"> | |
305 | + | |
306 | + <swiper :slides-per-view="7" :space-between="30" :loop="true" :speed="1000" :centered-slides="true" | |
307 | + :autoplay="{ delay: 0, disableOnInteraction: false }" :breakpoints="{ | |
308 | + 300: { slidesPerView: 1 }, | |
309 | + 479: { slidesPerView: 2 }, | |
310 | + 768: { slidesPerView: 3 }, | |
311 | + 1023: { slidesPerView: 5 } | |
312 | + }" :navigation="false" :modules="modules" class="mySwiper swiper-2"> | |
313 | + | |
314 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
315 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
316 | + <swiper-slide><img src="../../../resources/jpg/logo/kefa.png" alt=""></swiper-slide> | |
317 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
318 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
319 | + <swiper-slide><img src="../../../resources/jpg/logo/keris.gif" alt=""></swiper-slide> | |
320 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
321 | + <swiper-slide><img src="../../../resources/jpg/logo/ko-go.jpg" alt=""></swiper-slide> | |
322 | + <swiper-slide><img src="../../../resources/jpg/logo/ko.png" alt=""></swiper-slide> | |
323 | + | |
324 | + </swiper> | |
325 | + </div> | |
326 | + </div> | |
327 | + </div> | |
328 | + | |
329 | + </section> | |
330 | + | |
331 | + | |
332 | + | |
333 | + | |
334 | + | |
335 | + </div> | |
336 | +</template> | |
337 | + | |
338 | +<script> | |
339 | +import { Swiper, SwiperSlide } from 'swiper/vue'; | |
340 | +import { Navigation } from 'swiper/modules'; | |
341 | +import 'swiper/css'; | |
342 | +import 'swiper/css/navigation'; | |
343 | +import 'swiper/css/pagination'; | |
344 | + | |
345 | +import { Autoplay, Pagination } from 'swiper/modules'; | |
346 | + | |
347 | +export default { | |
348 | + data() { | |
349 | + return { | |
350 | + module: [Pagination], | |
351 | + } | |
352 | + }, | |
353 | + methods: { | |
354 | + }, | |
355 | + watch: { | |
356 | + | |
357 | + }, | |
358 | + computed: { | |
359 | + | |
360 | + }, | |
361 | + components: { | |
362 | + Swiper, | |
363 | + SwiperSlide, | |
364 | + | |
365 | + | |
366 | + }, | |
367 | + setup() { | |
368 | + return { | |
369 | + modules: [Autoplay, Pagination, Navigation], | |
370 | + }; | |
371 | + }, | |
372 | + mounted() { | |
373 | + console.log('Main mounted'); | |
374 | + } | |
375 | +} | |
376 | +</script> | |
377 | + | |
378 | +<style scoped> | |
379 | +.swiper-button-prev:after, | |
380 | +.swiper-button-next:after { | |
381 | + color: aliceblue; | |
382 | +} | |
383 | + | |
384 | +.swiper-button-next, | |
385 | +.swiper-button-prev { | |
386 | + margin-top: -50px !important; | |
387 | + color: aliceblue; | |
388 | +} | |
389 | + | |
390 | +.swiper { | |
391 | + height: 260px; | |
392 | + padding: 0px 50px 50px 50px; | |
393 | +} | |
394 | + | |
395 | + | |
396 | +.swiper-div { | |
397 | + display: flex; | |
398 | + align-items: center; | |
399 | + flex-direction: column; | |
400 | +} | |
401 | + | |
402 | +.swiper-div embed { | |
403 | + height: 230px; | |
404 | + width: 350px; | |
405 | +} | |
406 | + | |
407 | +.swiper-div p { | |
408 | + padding: 1rem; | |
409 | + font-size: 1.7rem; | |
410 | + color: white; | |
411 | +} | |
412 | + | |
413 | +.swiper-slide { | |
414 | + height: 200px; | |
415 | + padding-bottom: 40px; | |
416 | +} | |
417 | + | |
418 | +.swiper-slide img { | |
419 | + width: 40%; | |
420 | +} | |
421 | + | |
422 | +.swiper-2 { | |
423 | + height: 100px; | |
424 | + transition-timing-function: linear; | |
425 | +} | |
426 | +</style> |
+++ client/views/pages/matching/Matching.vue
... | ... | @@ -0,0 +1,383 @@ |
1 | +<template> | |
2 | + <div class="mat-main"> | |
3 | + <section class="main-sec sec1"> | |
4 | + <!-- <div class="main-content"> --> | |
5 | + <div class="flex"> | |
6 | + <!-- 매칭비주얼 --> | |
7 | + <div class="mat-b"> | |
8 | + <div class="w1400"> | |
9 | + <div class="mat-b-b"> | |
10 | + <div class="mat-img"> | |
11 | + <img src="../../../resources/jpg/mat-img.png" alt=""> | |
12 | + </div> | |
13 | + <!-- 매칭 텍스트 --> | |
14 | + <div class="mat-text"> | |
15 | + <i class="fa-regular fa-handshake fa-lg" style="color: #ffffff;"></i> | |
16 | + <p>추천 매칭서비스</p> | |
17 | + </div> | |
18 | + <div class="mat-img"> | |
19 | + <img src="../../../resources/jpg/mat-img1.png" alt=""> | |
20 | + </div> | |
21 | + | |
22 | + </div> | |
23 | + | |
24 | + </div> | |
25 | + </div> | |
26 | + </div> | |
27 | + </section> | |
28 | + | |
29 | + <!-- best기업 --> | |
30 | + <section class="match-b-main"> | |
31 | + <div class="mat-b-1"> | |
32 | + <div class="w1400"> | |
33 | + <div class="mat-b-grid"> | |
34 | + <!-- best 기업 --> | |
35 | + <h3>BEST 기업</h3> | |
36 | + <div class="mat-b-g-g"> | |
37 | + | |
38 | + | |
39 | + <div class="mat-b-g-1 g1"> | |
40 | + <div> | |
41 | + | |
42 | + <h3>(주)지학사</h3> | |
43 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
44 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
45 | + <div class="g1-1"> | |
46 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
47 | + <p class="g-2">조회수 <span>120</span></p> | |
48 | + | |
49 | + </div> | |
50 | + | |
51 | + <div class="mat-span"> | |
52 | + | |
53 | + <span>#혁신기업</span> | |
54 | + <span>#혁신기업</span> | |
55 | + <span>#혁신기업</span> | |
56 | + </div> | |
57 | + </div> | |
58 | + </div> | |
59 | + <div class="mat-b-g-2 g1"> | |
60 | + <div> | |
61 | + <h3>(주)지학사</h3> | |
62 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
63 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
64 | + <div class="g1-1"> | |
65 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
66 | + <p class="g-2">조회수 <span>120</span></p> | |
67 | + | |
68 | + </div> | |
69 | + <div class="mat-span"> | |
70 | + | |
71 | + <span>#혁신기업</span> | |
72 | + <span>#혁신기업</span> | |
73 | + <span>#혁신기업</span> | |
74 | + </div> | |
75 | + </div> | |
76 | + </div> | |
77 | + <div class="mat-b-g-3 g1"> | |
78 | + <div> | |
79 | + <h3>(주)지학사</h3> | |
80 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
81 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
82 | + <div class="g1-1"> | |
83 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
84 | + <p class="g-2">조회수 <span>120</span></p> | |
85 | + | |
86 | + </div> | |
87 | + <div class="mat-span"> | |
88 | + | |
89 | + <span>#혁신기업</span> | |
90 | + <span>#혁신기업</span> | |
91 | + <span>#혁신기업</span> | |
92 | + </div> | |
93 | + </div> | |
94 | + </div> | |
95 | + <div class="mat-b-g-3 g1"> | |
96 | + <div> | |
97 | + <h3>(주)지학사</h3> | |
98 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
99 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
100 | + <div class="g1-1"> | |
101 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
102 | + <p class="g-2">조회수 <span>120</span></p> | |
103 | + | |
104 | + </div> | |
105 | + <div class="mat-span"> | |
106 | + | |
107 | + <span>#혁신기업</span> | |
108 | + <span>#혁신기업</span> | |
109 | + <span>#혁신기업</span> | |
110 | + </div> | |
111 | + </div> | |
112 | + </div> | |
113 | + <div class="mat-b-g-3 g1"> | |
114 | + <div> | |
115 | + <h3>(주)지학사</h3> | |
116 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
117 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
118 | + <div class="g1-1"> | |
119 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
120 | + <p class="g-2">조회수 <span>120</span></p> | |
121 | + | |
122 | + </div> | |
123 | + <div class="mat-span"> | |
124 | + | |
125 | + <span>#혁신기업</span> | |
126 | + <span>#혁신기업</span> | |
127 | + <span>#혁신기업</span> | |
128 | + </div> | |
129 | + </div> | |
130 | + </div> | |
131 | + <div class="mat-b-g-3 g1"> | |
132 | + <div> | |
133 | + <h3>(주)지학사</h3> | |
134 | + <img src="../../../resources/jpg/zigaksa.jpg" width="20px" alt=""> | |
135 | + <p>기업은 고객,고객은 기업이라는 마인드로 항상 고객의 만족을 최우선의 가치로 실천한다.</p> | |
136 | + <div class="g1-1"> | |
137 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
138 | + <p class="g-2">조회수 <span>120</span></p> | |
139 | + | |
140 | + </div> | |
141 | + <div class="mat-span"> | |
142 | + | |
143 | + <span>#혁신기업</span> | |
144 | + <span>#혁신기업</span> | |
145 | + <span>#혁신기업</span> | |
146 | + </div> | |
147 | + </div> | |
148 | + </div> | |
149 | + </div> | |
150 | + | |
151 | + </div> | |
152 | + </div> | |
153 | + </div> | |
154 | + </section> | |
155 | + <!-- 일반기업 --> | |
156 | + <section class="mat-sec"> | |
157 | + <div class="mat-sec-a"> | |
158 | + <div class="w1400"> | |
159 | + <div class="mat-sec-a-1"> | |
160 | + <div class="mat-sec-b"> | |
161 | + <div> | |
162 | + <h5>(주)금성출판사</h5> | |
163 | + <div class="mat-span"> | |
164 | + | |
165 | + <span>#혁신기업</span> | |
166 | + <span>#혁신기업</span> | |
167 | + <span>#혁신기업</span> | |
168 | + </div> | |
169 | + <div class="mat-2"> | |
170 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
171 | + <p>조회수 <span>110</span> </p> | |
172 | + </div> | |
173 | + | |
174 | + </div> | |
175 | + </div> | |
176 | + <div class="mat-sec-b"> | |
177 | + <div> | |
178 | + <h5>(주)금성출판사</h5> | |
179 | + <div class="mat-span"> | |
180 | + | |
181 | + <span>#혁신기업</span> | |
182 | + <span>#혁신기업</span> | |
183 | + <span>#혁신기업</span> | |
184 | + </div> | |
185 | + <div class="mat-2"> | |
186 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
187 | + <p>조회수 <span>110</span> </p> | |
188 | + </div> | |
189 | + </div> | |
190 | + </div> | |
191 | + <div class="mat-sec-b"> | |
192 | + <div> | |
193 | + <h5>(주)금성출판사</h5> | |
194 | + <div class="mat-span"> | |
195 | + | |
196 | + <span>#혁신기업</span> | |
197 | + <span>#혁신기업</span> | |
198 | + <span>#혁신기업</span> | |
199 | + </div> | |
200 | + <div class="mat-2"> | |
201 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
202 | + <p>조회수 <span>110</span> </p> | |
203 | + </div> | |
204 | + </div> | |
205 | + </div> | |
206 | + <div class="mat-sec-b"> | |
207 | + <div> | |
208 | + <h5>(주)금성출판사</h5> | |
209 | + <div class="mat-span"> | |
210 | + | |
211 | + <span>#혁신기업</span> | |
212 | + <span>#혁신기업</span> | |
213 | + <span>#혁신기업</span> | |
214 | + </div> | |
215 | + <div class="mat-2"> | |
216 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
217 | + <p>조회수 <span>110</span> </p> | |
218 | + </div> | |
219 | + </div> | |
220 | + </div> | |
221 | + <div class="mat-sec-b"> | |
222 | + <div> | |
223 | + <h5>(주)금성출판사</h5> | |
224 | + <div class="mat-span"> | |
225 | + | |
226 | + <span>#혁신기업</span> | |
227 | + <span>#혁신기업</span> | |
228 | + <span>#혁신기업</span> | |
229 | + </div> | |
230 | + <div class="mat-2"> | |
231 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
232 | + <p>조회수 <span>110</span> </p> | |
233 | + </div> | |
234 | + </div> | |
235 | + </div> | |
236 | + <div class="mat-sec-b"> | |
237 | + <div> | |
238 | + <h5>(주)금성출판사</h5> | |
239 | + <div class="mat-span"> | |
240 | + | |
241 | + <span>#혁신기업</span> | |
242 | + <span>#혁신기업</span> | |
243 | + <span>#혁신기업</span> | |
244 | + </div> | |
245 | + <div class="mat-2"> | |
246 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
247 | + <p>조회수 <span>110</span> </p> | |
248 | + </div> | |
249 | + </div> | |
250 | + </div> | |
251 | + <div class="mat-sec-b"> | |
252 | + <div> | |
253 | + <h5>(주)금성출판사</h5> | |
254 | + <div class="mat-span"> | |
255 | + | |
256 | + <span>#혁신기업</span> | |
257 | + <span>#혁신기업</span> | |
258 | + <span>#혁신기업</span> | |
259 | + </div> | |
260 | + <div class="mat-2"> | |
261 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
262 | + <p>조회수 <span>110</span> </p> | |
263 | + </div> | |
264 | + </div> | |
265 | + </div> | |
266 | + <div class="mat-sec-b"> | |
267 | + <div> | |
268 | + <h5>(주)금성출판사</h5> | |
269 | + <div class="mat-span"> | |
270 | + | |
271 | + <span>#혁신기업</span> | |
272 | + <span>#혁신기업</span> | |
273 | + <span>#혁신기업</span> | |
274 | + </div> | |
275 | + <div class="mat-2"> | |
276 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
277 | + <p>조회수 <span>110</span> </p> | |
278 | + </div> | |
279 | + </div> | |
280 | + </div> | |
281 | + <div class="mat-sec-b"> | |
282 | + <div> | |
283 | + <h5>(주)금성출판사</h5> | |
284 | + <div class="mat-span"> | |
285 | + | |
286 | + <span>#혁신기업</span> | |
287 | + <span>#혁신기업</span> | |
288 | + <span>#혁신기업</span> | |
289 | + </div> | |
290 | + <div class="mat-2"> | |
291 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
292 | + <p>조회수 <span>110</span> </p> | |
293 | + </div> | |
294 | + </div> | |
295 | + </div> | |
296 | + <div class="mat-sec-b"> | |
297 | + <div> | |
298 | + <h5>(주)금성출판사</h5> | |
299 | + <div class="mat-span"> | |
300 | + | |
301 | + <span>#혁신기업</span> | |
302 | + <span>#혁신기업</span> | |
303 | + <span>#혁신기업</span> | |
304 | + </div> | |
305 | + <div class="mat-2"> | |
306 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
307 | + <p>조회수 <span>110</span> </p> | |
308 | + </div> | |
309 | + </div> | |
310 | + </div> | |
311 | + <div class="mat-sec-b"> | |
312 | + <div> | |
313 | + <h5>(주)금성출판사</h5> | |
314 | + <div class="mat-span"> | |
315 | + | |
316 | + <span>#혁신기업</span> | |
317 | + <span>#혁신기업</span> | |
318 | + <span>#혁신기업</span> | |
319 | + </div> | |
320 | + <div class="mat-2"> | |
321 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
322 | + <p>조회수 <span>110</span> </p> | |
323 | + </div> | |
324 | + </div> | |
325 | + </div> | |
326 | + <div class="mat-sec-b"> | |
327 | + <div> | |
328 | + <h5>(주)금성출판사</h5> | |
329 | + <div class="mat-span"> | |
330 | + | |
331 | + <span>#혁신기업</span> | |
332 | + <span>#혁신기업</span> | |
333 | + <span>#혁신기업</span> | |
334 | + </div> | |
335 | + <div class="mat-2"> | |
336 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
337 | + <p>조회수 <span>110</span> </p> | |
338 | + </div> | |
339 | + </div> | |
340 | + </div> | |
341 | + <div class="mat-sec-b"> | |
342 | + <div> | |
343 | + <h5>(주)금성출판사</h5> | |
344 | + <div class="mat-span"> | |
345 | + | |
346 | + <span>#혁신기업</span> | |
347 | + <span>#혁신기업</span> | |
348 | + <span>#혁신기업</span> | |
349 | + </div> | |
350 | + <div class="mat-2"> | |
351 | + <p><i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i> 3045</p> | |
352 | + <p>조회수 <span>110</span> </p> | |
353 | + </div> | |
354 | + </div> | |
355 | + </div> | |
356 | + | |
357 | + </div> | |
358 | + </div> | |
359 | + </div> | |
360 | + </section> | |
361 | + </div> | |
362 | +</template> | |
363 | + | |
364 | +<script> | |
365 | +export default { | |
366 | + data() { | |
367 | + return { | |
368 | + } | |
369 | + }, | |
370 | + methods: { | |
371 | + | |
372 | + }, | |
373 | + watch: { | |
374 | + | |
375 | + }, | |
376 | + computed: { | |
377 | + | |
378 | + }, | |
379 | + mounted() { | |
380 | + console.log('Matching mounted'); | |
381 | + } | |
382 | +} | |
383 | +</script>(파일 끝에 줄바꿈 문자 없음) |
+++ package-lock.json
... | ... | @@ -0,0 +1,3958 @@ |
1 | +{ | |
2 | + "name": "keris-web", | |
3 | + "lockfileVersion": 3, | |
4 | + "requires": true, | |
5 | + "packages": { | |
6 | + "": { | |
7 | + "dependencies": { | |
8 | + "@babel/cli": "7.19.3", | |
9 | + "@babel/core": "7.19.3", | |
10 | + "@fortawesome/fontawesome-svg-core": "^6.4.2", | |
11 | + "@fortawesome/free-brands-svg-icons": "^6.4.2", | |
12 | + "@fortawesome/free-regular-svg-icons": "^6.4.2", | |
13 | + "@fortawesome/free-solid-svg-icons": "^6.4.2", | |
14 | + "@fortawesome/vue-fontawesome": "^3.0.3", | |
15 | + "axios": "^1.5.1", | |
16 | + "babel-loader": "8.2.5", | |
17 | + "css-loader": "6.7.1", | |
18 | + "express": "4.18.1", | |
19 | + "express-http-proxy": "^2.0.0", | |
20 | + "file-loader": "6.2.0", | |
21 | + "fs": "0.0.1-security", | |
22 | + "git": "^0.1.5", | |
23 | + "new-line": "^1.1.1", | |
24 | + "pg": "8.8.0", | |
25 | + "swiper": "^10.3.1", | |
26 | + "url-loader": "4.1.1", | |
27 | + "vue": "3.2.40", | |
28 | + "vue-carousel": "^0.18.0", | |
29 | + "vue-loader": "^17.0.0", | |
30 | + "vue-router": "4.1.5", | |
31 | + "vue-slick": "^1.2.0", | |
32 | + "vue-style-loader": "4.1.3", | |
33 | + "vue3-sfc-loader": "^0.8.4", | |
34 | + "vueperslides": "^3.5.1", | |
35 | + "vuex": "^4.1.0", | |
36 | + "webpack": "5.74.0", | |
37 | + "webpack-cli": "4.10.0" | |
38 | + }, | |
39 | + "devDependencies": { | |
40 | + "less": "^4.2.0", | |
41 | + "less-loader": "^11.1.3" | |
42 | + } | |
43 | + }, | |
44 | + "node_modules/@ampproject/remapping": { | |
45 | + "version": "2.2.1", | |
46 | + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", | |
47 | + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", | |
48 | + "dependencies": { | |
49 | + "@jridgewell/gen-mapping": "^0.3.0", | |
50 | + "@jridgewell/trace-mapping": "^0.3.9" | |
51 | + }, | |
52 | + "engines": { | |
53 | + "node": ">=6.0.0" | |
54 | + } | |
55 | + }, | |
56 | + "node_modules/@babel/cli": { | |
57 | + "version": "7.19.3", | |
58 | + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.19.3.tgz", | |
59 | + "integrity": "sha512-643/TybmaCAe101m2tSVHi9UKpETXP9c/Ff4mD2tAwkdP6esKIfaauZFc67vGEM6r9fekbEGid+sZhbEnSe3dg==", | |
60 | + "dependencies": { | |
61 | + "@jridgewell/trace-mapping": "^0.3.8", | |
62 | + "commander": "^4.0.1", | |
63 | + "convert-source-map": "^1.1.0", | |
64 | + "fs-readdir-recursive": "^1.1.0", | |
65 | + "glob": "^7.2.0", | |
66 | + "make-dir": "^2.1.0", | |
67 | + "slash": "^2.0.0" | |
68 | + }, | |
69 | + "bin": { | |
70 | + "babel": "bin/babel.js", | |
71 | + "babel-external-helpers": "bin/babel-external-helpers.js" | |
72 | + }, | |
73 | + "engines": { | |
74 | + "node": ">=6.9.0" | |
75 | + }, | |
76 | + "optionalDependencies": { | |
77 | + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", | |
78 | + "chokidar": "^3.4.0" | |
79 | + }, | |
80 | + "peerDependencies": { | |
81 | + "@babel/core": "^7.0.0-0" | |
82 | + } | |
83 | + }, | |
84 | + "node_modules/@babel/code-frame": { | |
85 | + "version": "7.22.13", | |
86 | + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", | |
87 | + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", | |
88 | + "dependencies": { | |
89 | + "@babel/highlight": "^7.22.13", | |
90 | + "chalk": "^2.4.2" | |
91 | + }, | |
92 | + "engines": { | |
93 | + "node": ">=6.9.0" | |
94 | + } | |
95 | + }, | |
96 | + "node_modules/@babel/compat-data": { | |
97 | + "version": "7.23.2", | |
98 | + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", | |
99 | + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", | |
100 | + "engines": { | |
101 | + "node": ">=6.9.0" | |
102 | + } | |
103 | + }, | |
104 | + "node_modules/@babel/core": { | |
105 | + "version": "7.19.3", | |
106 | + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.19.3.tgz", | |
107 | + "integrity": "sha512-WneDJxdsjEvyKtXKsaBGbDeiyOjR5vYq4HcShxnIbG0qixpoHjI3MqeZM9NDvsojNCEBItQE4juOo/bU6e72gQ==", | |
108 | + "dependencies": { | |
109 | + "@ampproject/remapping": "^2.1.0", | |
110 | + "@babel/code-frame": "^7.18.6", | |
111 | + "@babel/generator": "^7.19.3", | |
112 | + "@babel/helper-compilation-targets": "^7.19.3", | |
113 | + "@babel/helper-module-transforms": "^7.19.0", | |
114 | + "@babel/helpers": "^7.19.0", | |
115 | + "@babel/parser": "^7.19.3", | |
116 | + "@babel/template": "^7.18.10", | |
117 | + "@babel/traverse": "^7.19.3", | |
118 | + "@babel/types": "^7.19.3", | |
119 | + "convert-source-map": "^1.7.0", | |
120 | + "debug": "^4.1.0", | |
121 | + "gensync": "^1.0.0-beta.2", | |
122 | + "json5": "^2.2.1", | |
123 | + "semver": "^6.3.0" | |
124 | + }, | |
125 | + "engines": { | |
126 | + "node": ">=6.9.0" | |
127 | + }, | |
128 | + "funding": { | |
129 | + "type": "opencollective", | |
130 | + "url": "https://opencollective.com/babel" | |
131 | + } | |
132 | + }, | |
133 | + "node_modules/@babel/generator": { | |
134 | + "version": "7.23.0", | |
135 | + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", | |
136 | + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", | |
137 | + "dependencies": { | |
138 | + "@babel/types": "^7.23.0", | |
139 | + "@jridgewell/gen-mapping": "^0.3.2", | |
140 | + "@jridgewell/trace-mapping": "^0.3.17", | |
141 | + "jsesc": "^2.5.1" | |
142 | + }, | |
143 | + "engines": { | |
144 | + "node": ">=6.9.0" | |
145 | + } | |
146 | + }, | |
147 | + "node_modules/@babel/helper-compilation-targets": { | |
148 | + "version": "7.22.15", | |
149 | + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", | |
150 | + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", | |
151 | + "dependencies": { | |
152 | + "@babel/compat-data": "^7.22.9", | |
153 | + "@babel/helper-validator-option": "^7.22.15", | |
154 | + "browserslist": "^4.21.9", | |
155 | + "lru-cache": "^5.1.1", | |
156 | + "semver": "^6.3.1" | |
157 | + }, | |
158 | + "engines": { | |
159 | + "node": ">=6.9.0" | |
160 | + } | |
161 | + }, | |
162 | + "node_modules/@babel/helper-environment-visitor": { | |
163 | + "version": "7.22.20", | |
164 | + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", | |
165 | + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", | |
166 | + "engines": { | |
167 | + "node": ">=6.9.0" | |
168 | + } | |
169 | + }, | |
170 | + "node_modules/@babel/helper-function-name": { | |
171 | + "version": "7.23.0", | |
172 | + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", | |
173 | + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", | |
174 | + "dependencies": { | |
175 | + "@babel/template": "^7.22.15", | |
176 | + "@babel/types": "^7.23.0" | |
177 | + }, | |
178 | + "engines": { | |
179 | + "node": ">=6.9.0" | |
180 | + } | |
181 | + }, | |
182 | + "node_modules/@babel/helper-hoist-variables": { | |
183 | + "version": "7.22.5", | |
184 | + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", | |
185 | + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", | |
186 | + "dependencies": { | |
187 | + "@babel/types": "^7.22.5" | |
188 | + }, | |
189 | + "engines": { | |
190 | + "node": ">=6.9.0" | |
191 | + } | |
192 | + }, | |
193 | + "node_modules/@babel/helper-module-imports": { | |
194 | + "version": "7.22.15", | |
195 | + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", | |
196 | + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", | |
197 | + "dependencies": { | |
198 | + "@babel/types": "^7.22.15" | |
199 | + }, | |
200 | + "engines": { | |
201 | + "node": ">=6.9.0" | |
202 | + } | |
203 | + }, | |
204 | + "node_modules/@babel/helper-module-transforms": { | |
205 | + "version": "7.23.0", | |
206 | + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", | |
207 | + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", | |
208 | + "dependencies": { | |
209 | + "@babel/helper-environment-visitor": "^7.22.20", | |
210 | + "@babel/helper-module-imports": "^7.22.15", | |
211 | + "@babel/helper-simple-access": "^7.22.5", | |
212 | + "@babel/helper-split-export-declaration": "^7.22.6", | |
213 | + "@babel/helper-validator-identifier": "^7.22.20" | |
214 | + }, | |
215 | + "engines": { | |
216 | + "node": ">=6.9.0" | |
217 | + }, | |
218 | + "peerDependencies": { | |
219 | + "@babel/core": "^7.0.0" | |
220 | + } | |
221 | + }, | |
222 | + "node_modules/@babel/helper-simple-access": { | |
223 | + "version": "7.22.5", | |
224 | + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", | |
225 | + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", | |
226 | + "dependencies": { | |
227 | + "@babel/types": "^7.22.5" | |
228 | + }, | |
229 | + "engines": { | |
230 | + "node": ">=6.9.0" | |
231 | + } | |
232 | + }, | |
233 | + "node_modules/@babel/helper-split-export-declaration": { | |
234 | + "version": "7.22.6", | |
235 | + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", | |
236 | + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", | |
237 | + "dependencies": { | |
238 | + "@babel/types": "^7.22.5" | |
239 | + }, | |
240 | + "engines": { | |
241 | + "node": ">=6.9.0" | |
242 | + } | |
243 | + }, | |
244 | + "node_modules/@babel/helper-string-parser": { | |
245 | + "version": "7.22.5", | |
246 | + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", | |
247 | + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", | |
248 | + "engines": { | |
249 | + "node": ">=6.9.0" | |
250 | + } | |
251 | + }, | |
252 | + "node_modules/@babel/helper-validator-identifier": { | |
253 | + "version": "7.22.20", | |
254 | + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", | |
255 | + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", | |
256 | + "engines": { | |
257 | + "node": ">=6.9.0" | |
258 | + } | |
259 | + }, | |
260 | + "node_modules/@babel/helper-validator-option": { | |
261 | + "version": "7.22.15", | |
262 | + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", | |
263 | + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", | |
264 | + "engines": { | |
265 | + "node": ">=6.9.0" | |
266 | + } | |
267 | + }, | |
268 | + "node_modules/@babel/helpers": { | |
269 | + "version": "7.23.2", | |
270 | + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", | |
271 | + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", | |
272 | + "dependencies": { | |
273 | + "@babel/template": "^7.22.15", | |
274 | + "@babel/traverse": "^7.23.2", | |
275 | + "@babel/types": "^7.23.0" | |
276 | + }, | |
277 | + "engines": { | |
278 | + "node": ">=6.9.0" | |
279 | + } | |
280 | + }, | |
281 | + "node_modules/@babel/highlight": { | |
282 | + "version": "7.22.20", | |
283 | + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", | |
284 | + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", | |
285 | + "dependencies": { | |
286 | + "@babel/helper-validator-identifier": "^7.22.20", | |
287 | + "chalk": "^2.4.2", | |
288 | + "js-tokens": "^4.0.0" | |
289 | + }, | |
290 | + "engines": { | |
291 | + "node": ">=6.9.0" | |
292 | + } | |
293 | + }, | |
294 | + "node_modules/@babel/parser": { | |
295 | + "version": "7.23.0", | |
296 | + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", | |
297 | + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", | |
298 | + "bin": { | |
299 | + "parser": "bin/babel-parser.js" | |
300 | + }, | |
301 | + "engines": { | |
302 | + "node": ">=6.0.0" | |
303 | + } | |
304 | + }, | |
305 | + "node_modules/@babel/template": { | |
306 | + "version": "7.22.15", | |
307 | + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", | |
308 | + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", | |
309 | + "dependencies": { | |
310 | + "@babel/code-frame": "^7.22.13", | |
311 | + "@babel/parser": "^7.22.15", | |
312 | + "@babel/types": "^7.22.15" | |
313 | + }, | |
314 | + "engines": { | |
315 | + "node": ">=6.9.0" | |
316 | + } | |
317 | + }, | |
318 | + "node_modules/@babel/traverse": { | |
319 | + "version": "7.23.2", | |
320 | + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", | |
321 | + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", | |
322 | + "dependencies": { | |
323 | + "@babel/code-frame": "^7.22.13", | |
324 | + "@babel/generator": "^7.23.0", | |
325 | + "@babel/helper-environment-visitor": "^7.22.20", | |
326 | + "@babel/helper-function-name": "^7.23.0", | |
327 | + "@babel/helper-hoist-variables": "^7.22.5", | |
328 | + "@babel/helper-split-export-declaration": "^7.22.6", | |
329 | + "@babel/parser": "^7.23.0", | |
330 | + "@babel/types": "^7.23.0", | |
331 | + "debug": "^4.1.0", | |
332 | + "globals": "^11.1.0" | |
333 | + }, | |
334 | + "engines": { | |
335 | + "node": ">=6.9.0" | |
336 | + } | |
337 | + }, | |
338 | + "node_modules/@babel/types": { | |
339 | + "version": "7.23.0", | |
340 | + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", | |
341 | + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", | |
342 | + "dependencies": { | |
343 | + "@babel/helper-string-parser": "^7.22.5", | |
344 | + "@babel/helper-validator-identifier": "^7.22.20", | |
345 | + "to-fast-properties": "^2.0.0" | |
346 | + }, | |
347 | + "engines": { | |
348 | + "node": ">=6.9.0" | |
349 | + } | |
350 | + }, | |
351 | + "node_modules/@discoveryjs/json-ext": { | |
352 | + "version": "0.5.7", | |
353 | + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", | |
354 | + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", | |
355 | + "engines": { | |
356 | + "node": ">=10.0.0" | |
357 | + } | |
358 | + }, | |
359 | + "node_modules/@fortawesome/fontawesome-common-types": { | |
360 | + "version": "6.4.2", | |
361 | + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.2.tgz", | |
362 | + "integrity": "sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA==", | |
363 | + "hasInstallScript": true, | |
364 | + "engines": { | |
365 | + "node": ">=6" | |
366 | + } | |
367 | + }, | |
368 | + "node_modules/@fortawesome/fontawesome-svg-core": { | |
369 | + "version": "6.4.2", | |
370 | + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.2.tgz", | |
371 | + "integrity": "sha512-gjYDSKv3TrM2sLTOKBc5rH9ckje8Wrwgx1CxAPbN5N3Fm4prfi7NsJVWd1jklp7i5uSCVwhZS5qlhMXqLrpAIg==", | |
372 | + "hasInstallScript": true, | |
373 | + "dependencies": { | |
374 | + "@fortawesome/fontawesome-common-types": "6.4.2" | |
375 | + }, | |
376 | + "engines": { | |
377 | + "node": ">=6" | |
378 | + } | |
379 | + }, | |
380 | + "node_modules/@fortawesome/free-brands-svg-icons": { | |
381 | + "version": "6.4.2", | |
382 | + "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.4.2.tgz", | |
383 | + "integrity": "sha512-LKOwJX0I7+mR/cvvf6qIiqcERbdnY+24zgpUSouySml+5w8B4BJOx8EhDR/FTKAu06W12fmUIcv6lzPSwYKGGg==", | |
384 | + "hasInstallScript": true, | |
385 | + "dependencies": { | |
386 | + "@fortawesome/fontawesome-common-types": "6.4.2" | |
387 | + }, | |
388 | + "engines": { | |
389 | + "node": ">=6" | |
390 | + } | |
391 | + }, | |
392 | + "node_modules/@fortawesome/free-regular-svg-icons": { | |
393 | + "version": "6.4.2", | |
394 | + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.4.2.tgz", | |
395 | + "integrity": "sha512-0+sIUWnkgTVVXVAPQmW4vxb9ZTHv0WstOa3rBx9iPxrrrDH6bNLsDYuwXF9b6fGm+iR7DKQvQshUH/FJm3ed9Q==", | |
396 | + "hasInstallScript": true, | |
397 | + "dependencies": { | |
398 | + "@fortawesome/fontawesome-common-types": "6.4.2" | |
399 | + }, | |
400 | + "engines": { | |
401 | + "node": ">=6" | |
402 | + } | |
403 | + }, | |
404 | + "node_modules/@fortawesome/free-solid-svg-icons": { | |
405 | + "version": "6.4.2", | |
406 | + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.4.2.tgz", | |
407 | + "integrity": "sha512-sYwXurXUEQS32fZz9hVCUUv/xu49PEJEyUOsA51l6PU/qVgfbTb2glsTEaJngVVT8VqBATRIdh7XVgV1JF1LkA==", | |
408 | + "hasInstallScript": true, | |
409 | + "dependencies": { | |
410 | + "@fortawesome/fontawesome-common-types": "6.4.2" | |
411 | + }, | |
412 | + "engines": { | |
413 | + "node": ">=6" | |
414 | + } | |
415 | + }, | |
416 | + "node_modules/@fortawesome/vue-fontawesome": { | |
417 | + "version": "3.0.3", | |
418 | + "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.3.tgz", | |
419 | + "integrity": "sha512-KCPHi9QemVXGMrfuwf3nNnNo129resAIQWut9QTAMXmXqL2ErABC6ohd2yY5Ipq0CLWNbKHk8TMdTXL/Zf3ZhA==", | |
420 | + "peerDependencies": { | |
421 | + "@fortawesome/fontawesome-svg-core": "~1 || ~6", | |
422 | + "vue": ">= 3.0.0 < 4" | |
423 | + } | |
424 | + }, | |
425 | + "node_modules/@jridgewell/gen-mapping": { | |
426 | + "version": "0.3.3", | |
427 | + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", | |
428 | + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", | |
429 | + "dependencies": { | |
430 | + "@jridgewell/set-array": "^1.0.1", | |
431 | + "@jridgewell/sourcemap-codec": "^1.4.10", | |
432 | + "@jridgewell/trace-mapping": "^0.3.9" | |
433 | + }, | |
434 | + "engines": { | |
435 | + "node": ">=6.0.0" | |
436 | + } | |
437 | + }, | |
438 | + "node_modules/@jridgewell/resolve-uri": { | |
439 | + "version": "3.1.1", | |
440 | + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", | |
441 | + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", | |
442 | + "engines": { | |
443 | + "node": ">=6.0.0" | |
444 | + } | |
445 | + }, | |
446 | + "node_modules/@jridgewell/set-array": { | |
447 | + "version": "1.1.2", | |
448 | + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", | |
449 | + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", | |
450 | + "engines": { | |
451 | + "node": ">=6.0.0" | |
452 | + } | |
453 | + }, | |
454 | + "node_modules/@jridgewell/source-map": { | |
455 | + "version": "0.3.5", | |
456 | + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", | |
457 | + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", | |
458 | + "dependencies": { | |
459 | + "@jridgewell/gen-mapping": "^0.3.0", | |
460 | + "@jridgewell/trace-mapping": "^0.3.9" | |
461 | + } | |
462 | + }, | |
463 | + "node_modules/@jridgewell/sourcemap-codec": { | |
464 | + "version": "1.4.15", | |
465 | + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", | |
466 | + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" | |
467 | + }, | |
468 | + "node_modules/@jridgewell/trace-mapping": { | |
469 | + "version": "0.3.19", | |
470 | + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", | |
471 | + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", | |
472 | + "dependencies": { | |
473 | + "@jridgewell/resolve-uri": "^3.1.0", | |
474 | + "@jridgewell/sourcemap-codec": "^1.4.14" | |
475 | + } | |
476 | + }, | |
477 | + "node_modules/@nicolo-ribaudo/chokidar-2": { | |
478 | + "version": "2.1.8-no-fsevents.3", | |
479 | + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", | |
480 | + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", | |
481 | + "optional": true | |
482 | + }, | |
483 | + "node_modules/@types/eslint": { | |
484 | + "version": "8.44.4", | |
485 | + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.4.tgz", | |
486 | + "integrity": "sha512-lOzjyfY/D9QR4hY9oblZ76B90MYTB3RrQ4z2vBIJKj9ROCRqdkYl2gSUx1x1a4IWPjKJZLL4Aw1Zfay7eMnmnA==", | |
487 | + "dependencies": { | |
488 | + "@types/estree": "*", | |
489 | + "@types/json-schema": "*" | |
490 | + } | |
491 | + }, | |
492 | + "node_modules/@types/eslint-scope": { | |
493 | + "version": "3.7.5", | |
494 | + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.5.tgz", | |
495 | + "integrity": "sha512-JNvhIEyxVW6EoMIFIvj93ZOywYFatlpu9deeH6eSx6PE3WHYvHaQtmHmQeNw7aA81bYGBPPQqdtBm6b1SsQMmA==", | |
496 | + "dependencies": { | |
497 | + "@types/eslint": "*", | |
498 | + "@types/estree": "*" | |
499 | + } | |
500 | + }, | |
501 | + "node_modules/@types/estree": { | |
502 | + "version": "0.0.51", | |
503 | + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", | |
504 | + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" | |
505 | + }, | |
506 | + "node_modules/@types/json-schema": { | |
507 | + "version": "7.0.13", | |
508 | + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", | |
509 | + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==" | |
510 | + }, | |
511 | + "node_modules/@types/node": { | |
512 | + "version": "20.8.6", | |
513 | + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.6.tgz", | |
514 | + "integrity": "sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==", | |
515 | + "dependencies": { | |
516 | + "undici-types": "~5.25.1" | |
517 | + } | |
518 | + }, | |
519 | + "node_modules/@vue/compiler-core": { | |
520 | + "version": "3.2.40", | |
521 | + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.40.tgz", | |
522 | + "integrity": "sha512-2Dc3Stk0J/VyQ4OUr2yEC53kU28614lZS+bnrCbFSAIftBJ40g/2yQzf4mPBiFuqguMB7hyHaujdgZAQ67kZYA==", | |
523 | + "dependencies": { | |
524 | + "@babel/parser": "^7.16.4", | |
525 | + "@vue/shared": "3.2.40", | |
526 | + "estree-walker": "^2.0.2", | |
527 | + "source-map": "^0.6.1" | |
528 | + } | |
529 | + }, | |
530 | + "node_modules/@vue/compiler-dom": { | |
531 | + "version": "3.2.40", | |
532 | + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.40.tgz", | |
533 | + "integrity": "sha512-OZCNyYVC2LQJy4H7h0o28rtk+4v+HMQygRTpmibGoG9wZyomQiS5otU7qo3Wlq5UfHDw2RFwxb9BJgKjVpjrQw==", | |
534 | + "dependencies": { | |
535 | + "@vue/compiler-core": "3.2.40", | |
536 | + "@vue/shared": "3.2.40" | |
537 | + } | |
538 | + }, | |
539 | + "node_modules/@vue/compiler-sfc": { | |
540 | + "version": "3.2.40", | |
541 | + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.40.tgz", | |
542 | + "integrity": "sha512-tzqwniIN1fu1PDHC3CpqY/dPCfN/RN1thpBC+g69kJcrl7mbGiHKNwbA6kJ3XKKy8R6JLKqcpVugqN4HkeBFFg==", | |
543 | + "dependencies": { | |
544 | + "@babel/parser": "^7.16.4", | |
545 | + "@vue/compiler-core": "3.2.40", | |
546 | + "@vue/compiler-dom": "3.2.40", | |
547 | + "@vue/compiler-ssr": "3.2.40", | |
548 | + "@vue/reactivity-transform": "3.2.40", | |
549 | + "@vue/shared": "3.2.40", | |
550 | + "estree-walker": "^2.0.2", | |
551 | + "magic-string": "^0.25.7", | |
552 | + "postcss": "^8.1.10", | |
553 | + "source-map": "^0.6.1" | |
554 | + } | |
555 | + }, | |
556 | + "node_modules/@vue/compiler-ssr": { | |
557 | + "version": "3.2.40", | |
558 | + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.40.tgz", | |
559 | + "integrity": "sha512-80cQcgasKjrPPuKcxwuCx7feq+wC6oFl5YaKSee9pV3DNq+6fmCVwEEC3vvkf/E2aI76rIJSOYHsWSEIxK74oQ==", | |
560 | + "dependencies": { | |
561 | + "@vue/compiler-dom": "3.2.40", | |
562 | + "@vue/shared": "3.2.40" | |
563 | + } | |
564 | + }, | |
565 | + "node_modules/@vue/devtools-api": { | |
566 | + "version": "6.5.1", | |
567 | + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", | |
568 | + "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==" | |
569 | + }, | |
570 | + "node_modules/@vue/reactivity": { | |
571 | + "version": "3.2.40", | |
572 | + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.40.tgz", | |
573 | + "integrity": "sha512-N9qgGLlZmtUBMHF9xDT4EkD9RdXde1Xbveb+niWMXuHVWQP5BzgRmE3SFyUBBcyayG4y1lhoz+lphGRRxxK4RA==", | |
574 | + "dependencies": { | |
575 | + "@vue/shared": "3.2.40" | |
576 | + } | |
577 | + }, | |
578 | + "node_modules/@vue/reactivity-transform": { | |
579 | + "version": "3.2.40", | |
580 | + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.40.tgz", | |
581 | + "integrity": "sha512-HQUCVwEaacq6fGEsg2NUuGKIhUveMCjOk8jGHqLXPI2w6zFoPrlQhwWEaINTv5kkZDXKEnCijAp+4gNEHG03yw==", | |
582 | + "dependencies": { | |
583 | + "@babel/parser": "^7.16.4", | |
584 | + "@vue/compiler-core": "3.2.40", | |
585 | + "@vue/shared": "3.2.40", | |
586 | + "estree-walker": "^2.0.2", | |
587 | + "magic-string": "^0.25.7" | |
588 | + } | |
589 | + }, | |
590 | + "node_modules/@vue/runtime-core": { | |
591 | + "version": "3.2.40", | |
592 | + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.40.tgz", | |
593 | + "integrity": "sha512-U1+rWf0H8xK8aBUZhnrN97yoZfHbjgw/bGUzfgKPJl69/mXDuSg8CbdBYBn6VVQdR947vWneQBFzdhasyzMUKg==", | |
594 | + "dependencies": { | |
595 | + "@vue/reactivity": "3.2.40", | |
596 | + "@vue/shared": "3.2.40" | |
597 | + } | |
598 | + }, | |
599 | + "node_modules/@vue/runtime-dom": { | |
600 | + "version": "3.2.40", | |
601 | + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.40.tgz", | |
602 | + "integrity": "sha512-AO2HMQ+0s2+MCec8hXAhxMgWhFhOPJ/CyRXnmTJ6XIOnJFLrH5Iq3TNwvVcODGR295jy77I6dWPj+wvFoSYaww==", | |
603 | + "dependencies": { | |
604 | + "@vue/runtime-core": "3.2.40", | |
605 | + "@vue/shared": "3.2.40", | |
606 | + "csstype": "^2.6.8" | |
607 | + } | |
608 | + }, | |
609 | + "node_modules/@vue/server-renderer": { | |
610 | + "version": "3.2.40", | |
611 | + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.40.tgz", | |
612 | + "integrity": "sha512-gtUcpRwrXOJPJ4qyBpU3EyxQa4EkV8I4f8VrDePcGCPe4O/hd0BPS7v9OgjIQob6Ap8VDz9G+mGTKazE45/95w==", | |
613 | + "dependencies": { | |
614 | + "@vue/compiler-ssr": "3.2.40", | |
615 | + "@vue/shared": "3.2.40" | |
616 | + }, | |
617 | + "peerDependencies": { | |
618 | + "vue": "3.2.40" | |
619 | + } | |
620 | + }, | |
621 | + "node_modules/@vue/shared": { | |
622 | + "version": "3.2.40", | |
623 | + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.40.tgz", | |
624 | + "integrity": "sha512-0PLQ6RUtZM0vO3teRfzGi4ltLUO5aO+kLgwh4Um3THSR03rpQWLTuRCkuO5A41ITzwdWeKdPHtSARuPkoo5pCQ==" | |
625 | + }, | |
626 | + "node_modules/@webassemblyjs/ast": { | |
627 | + "version": "1.11.1", | |
628 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", | |
629 | + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", | |
630 | + "dependencies": { | |
631 | + "@webassemblyjs/helper-numbers": "1.11.1", | |
632 | + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" | |
633 | + } | |
634 | + }, | |
635 | + "node_modules/@webassemblyjs/floating-point-hex-parser": { | |
636 | + "version": "1.11.1", | |
637 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", | |
638 | + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==" | |
639 | + }, | |
640 | + "node_modules/@webassemblyjs/helper-api-error": { | |
641 | + "version": "1.11.1", | |
642 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", | |
643 | + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==" | |
644 | + }, | |
645 | + "node_modules/@webassemblyjs/helper-buffer": { | |
646 | + "version": "1.11.1", | |
647 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", | |
648 | + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==" | |
649 | + }, | |
650 | + "node_modules/@webassemblyjs/helper-numbers": { | |
651 | + "version": "1.11.1", | |
652 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", | |
653 | + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", | |
654 | + "dependencies": { | |
655 | + "@webassemblyjs/floating-point-hex-parser": "1.11.1", | |
656 | + "@webassemblyjs/helper-api-error": "1.11.1", | |
657 | + "@xtuc/long": "4.2.2" | |
658 | + } | |
659 | + }, | |
660 | + "node_modules/@webassemblyjs/helper-wasm-bytecode": { | |
661 | + "version": "1.11.1", | |
662 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", | |
663 | + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==" | |
664 | + }, | |
665 | + "node_modules/@webassemblyjs/helper-wasm-section": { | |
666 | + "version": "1.11.1", | |
667 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", | |
668 | + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", | |
669 | + "dependencies": { | |
670 | + "@webassemblyjs/ast": "1.11.1", | |
671 | + "@webassemblyjs/helper-buffer": "1.11.1", | |
672 | + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", | |
673 | + "@webassemblyjs/wasm-gen": "1.11.1" | |
674 | + } | |
675 | + }, | |
676 | + "node_modules/@webassemblyjs/ieee754": { | |
677 | + "version": "1.11.1", | |
678 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", | |
679 | + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", | |
680 | + "dependencies": { | |
681 | + "@xtuc/ieee754": "^1.2.0" | |
682 | + } | |
683 | + }, | |
684 | + "node_modules/@webassemblyjs/leb128": { | |
685 | + "version": "1.11.1", | |
686 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", | |
687 | + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", | |
688 | + "dependencies": { | |
689 | + "@xtuc/long": "4.2.2" | |
690 | + } | |
691 | + }, | |
692 | + "node_modules/@webassemblyjs/utf8": { | |
693 | + "version": "1.11.1", | |
694 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", | |
695 | + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==" | |
696 | + }, | |
697 | + "node_modules/@webassemblyjs/wasm-edit": { | |
698 | + "version": "1.11.1", | |
699 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", | |
700 | + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", | |
701 | + "dependencies": { | |
702 | + "@webassemblyjs/ast": "1.11.1", | |
703 | + "@webassemblyjs/helper-buffer": "1.11.1", | |
704 | + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", | |
705 | + "@webassemblyjs/helper-wasm-section": "1.11.1", | |
706 | + "@webassemblyjs/wasm-gen": "1.11.1", | |
707 | + "@webassemblyjs/wasm-opt": "1.11.1", | |
708 | + "@webassemblyjs/wasm-parser": "1.11.1", | |
709 | + "@webassemblyjs/wast-printer": "1.11.1" | |
710 | + } | |
711 | + }, | |
712 | + "node_modules/@webassemblyjs/wasm-gen": { | |
713 | + "version": "1.11.1", | |
714 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", | |
715 | + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", | |
716 | + "dependencies": { | |
717 | + "@webassemblyjs/ast": "1.11.1", | |
718 | + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", | |
719 | + "@webassemblyjs/ieee754": "1.11.1", | |
720 | + "@webassemblyjs/leb128": "1.11.1", | |
721 | + "@webassemblyjs/utf8": "1.11.1" | |
722 | + } | |
723 | + }, | |
724 | + "node_modules/@webassemblyjs/wasm-opt": { | |
725 | + "version": "1.11.1", | |
726 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", | |
727 | + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", | |
728 | + "dependencies": { | |
729 | + "@webassemblyjs/ast": "1.11.1", | |
730 | + "@webassemblyjs/helper-buffer": "1.11.1", | |
731 | + "@webassemblyjs/wasm-gen": "1.11.1", | |
732 | + "@webassemblyjs/wasm-parser": "1.11.1" | |
733 | + } | |
734 | + }, | |
735 | + "node_modules/@webassemblyjs/wasm-parser": { | |
736 | + "version": "1.11.1", | |
737 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", | |
738 | + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", | |
739 | + "dependencies": { | |
740 | + "@webassemblyjs/ast": "1.11.1", | |
741 | + "@webassemblyjs/helper-api-error": "1.11.1", | |
742 | + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", | |
743 | + "@webassemblyjs/ieee754": "1.11.1", | |
744 | + "@webassemblyjs/leb128": "1.11.1", | |
745 | + "@webassemblyjs/utf8": "1.11.1" | |
746 | + } | |
747 | + }, | |
748 | + "node_modules/@webassemblyjs/wast-printer": { | |
749 | + "version": "1.11.1", | |
750 | + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", | |
751 | + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", | |
752 | + "dependencies": { | |
753 | + "@webassemblyjs/ast": "1.11.1", | |
754 | + "@xtuc/long": "4.2.2" | |
755 | + } | |
756 | + }, | |
757 | + "node_modules/@webpack-cli/configtest": { | |
758 | + "version": "1.2.0", | |
759 | + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", | |
760 | + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", | |
761 | + "peerDependencies": { | |
762 | + "webpack": "4.x.x || 5.x.x", | |
763 | + "webpack-cli": "4.x.x" | |
764 | + } | |
765 | + }, | |
766 | + "node_modules/@webpack-cli/info": { | |
767 | + "version": "1.5.0", | |
768 | + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", | |
769 | + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", | |
770 | + "dependencies": { | |
771 | + "envinfo": "^7.7.3" | |
772 | + }, | |
773 | + "peerDependencies": { | |
774 | + "webpack-cli": "4.x.x" | |
775 | + } | |
776 | + }, | |
777 | + "node_modules/@webpack-cli/serve": { | |
778 | + "version": "1.7.0", | |
779 | + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", | |
780 | + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", | |
781 | + "peerDependencies": { | |
782 | + "webpack-cli": "4.x.x" | |
783 | + }, | |
784 | + "peerDependenciesMeta": { | |
785 | + "webpack-dev-server": { | |
786 | + "optional": true | |
787 | + } | |
788 | + } | |
789 | + }, | |
790 | + "node_modules/@xtuc/ieee754": { | |
791 | + "version": "1.2.0", | |
792 | + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", | |
793 | + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" | |
794 | + }, | |
795 | + "node_modules/@xtuc/long": { | |
796 | + "version": "4.2.2", | |
797 | + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", | |
798 | + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" | |
799 | + }, | |
800 | + "node_modules/accepts": { | |
801 | + "version": "1.3.8", | |
802 | + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", | |
803 | + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", | |
804 | + "dependencies": { | |
805 | + "mime-types": "~2.1.34", | |
806 | + "negotiator": "0.6.3" | |
807 | + }, | |
808 | + "engines": { | |
809 | + "node": ">= 0.6" | |
810 | + } | |
811 | + }, | |
812 | + "node_modules/acorn": { | |
813 | + "version": "8.10.0", | |
814 | + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", | |
815 | + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", | |
816 | + "bin": { | |
817 | + "acorn": "bin/acorn" | |
818 | + }, | |
819 | + "engines": { | |
820 | + "node": ">=0.4.0" | |
821 | + } | |
822 | + }, | |
823 | + "node_modules/acorn-import-assertions": { | |
824 | + "version": "1.9.0", | |
825 | + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", | |
826 | + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", | |
827 | + "peerDependencies": { | |
828 | + "acorn": "^8" | |
829 | + } | |
830 | + }, | |
831 | + "node_modules/ajv": { | |
832 | + "version": "6.12.6", | |
833 | + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", | |
834 | + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", | |
835 | + "dependencies": { | |
836 | + "fast-deep-equal": "^3.1.1", | |
837 | + "fast-json-stable-stringify": "^2.0.0", | |
838 | + "json-schema-traverse": "^0.4.1", | |
839 | + "uri-js": "^4.2.2" | |
840 | + }, | |
841 | + "funding": { | |
842 | + "type": "github", | |
843 | + "url": "https://github.com/sponsors/epoberezkin" | |
844 | + } | |
845 | + }, | |
846 | + "node_modules/ajv-keywords": { | |
847 | + "version": "3.5.2", | |
848 | + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", | |
849 | + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", | |
850 | + "peerDependencies": { | |
851 | + "ajv": "^6.9.1" | |
852 | + } | |
853 | + }, | |
854 | + "node_modules/ansi-styles": { | |
855 | + "version": "3.2.1", | |
856 | + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | |
857 | + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | |
858 | + "dependencies": { | |
859 | + "color-convert": "^1.9.0" | |
860 | + }, | |
861 | + "engines": { | |
862 | + "node": ">=4" | |
863 | + } | |
864 | + }, | |
865 | + "node_modules/anymatch": { | |
866 | + "version": "3.1.3", | |
867 | + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", | |
868 | + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", | |
869 | + "optional": true, | |
870 | + "dependencies": { | |
871 | + "normalize-path": "^3.0.0", | |
872 | + "picomatch": "^2.0.4" | |
873 | + }, | |
874 | + "engines": { | |
875 | + "node": ">= 8" | |
876 | + } | |
877 | + }, | |
878 | + "node_modules/array-flatten": { | |
879 | + "version": "1.1.1", | |
880 | + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", | |
881 | + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" | |
882 | + }, | |
883 | + "node_modules/asynckit": { | |
884 | + "version": "0.4.0", | |
885 | + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", | |
886 | + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" | |
887 | + }, | |
888 | + "node_modules/axios": { | |
889 | + "version": "1.5.1", | |
890 | + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz", | |
891 | + "integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==", | |
892 | + "dependencies": { | |
893 | + "follow-redirects": "^1.15.0", | |
894 | + "form-data": "^4.0.0", | |
895 | + "proxy-from-env": "^1.1.0" | |
896 | + } | |
897 | + }, | |
898 | + "node_modules/babel-loader": { | |
899 | + "version": "8.2.5", | |
900 | + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", | |
901 | + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", | |
902 | + "dependencies": { | |
903 | + "find-cache-dir": "^3.3.1", | |
904 | + "loader-utils": "^2.0.0", | |
905 | + "make-dir": "^3.1.0", | |
906 | + "schema-utils": "^2.6.5" | |
907 | + }, | |
908 | + "engines": { | |
909 | + "node": ">= 8.9" | |
910 | + }, | |
911 | + "peerDependencies": { | |
912 | + "@babel/core": "^7.0.0", | |
913 | + "webpack": ">=2" | |
914 | + } | |
915 | + }, | |
916 | + "node_modules/babel-loader/node_modules/make-dir": { | |
917 | + "version": "3.1.0", | |
918 | + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", | |
919 | + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", | |
920 | + "dependencies": { | |
921 | + "semver": "^6.0.0" | |
922 | + }, | |
923 | + "engines": { | |
924 | + "node": ">=8" | |
925 | + }, | |
926 | + "funding": { | |
927 | + "url": "https://github.com/sponsors/sindresorhus" | |
928 | + } | |
929 | + }, | |
930 | + "node_modules/balanced-match": { | |
931 | + "version": "1.0.2", | |
932 | + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", | |
933 | + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" | |
934 | + }, | |
935 | + "node_modules/big.js": { | |
936 | + "version": "5.2.2", | |
937 | + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", | |
938 | + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", | |
939 | + "engines": { | |
940 | + "node": "*" | |
941 | + } | |
942 | + }, | |
943 | + "node_modules/binary-extensions": { | |
944 | + "version": "2.2.0", | |
945 | + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", | |
946 | + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", | |
947 | + "optional": true, | |
948 | + "engines": { | |
949 | + "node": ">=8" | |
950 | + } | |
951 | + }, | |
952 | + "node_modules/body-parser": { | |
953 | + "version": "1.20.0", | |
954 | + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", | |
955 | + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", | |
956 | + "dependencies": { | |
957 | + "bytes": "3.1.2", | |
958 | + "content-type": "~1.0.4", | |
959 | + "debug": "2.6.9", | |
960 | + "depd": "2.0.0", | |
961 | + "destroy": "1.2.0", | |
962 | + "http-errors": "2.0.0", | |
963 | + "iconv-lite": "0.4.24", | |
964 | + "on-finished": "2.4.1", | |
965 | + "qs": "6.10.3", | |
966 | + "raw-body": "2.5.1", | |
967 | + "type-is": "~1.6.18", | |
968 | + "unpipe": "1.0.0" | |
969 | + }, | |
970 | + "engines": { | |
971 | + "node": ">= 0.8", | |
972 | + "npm": "1.2.8000 || >= 1.4.16" | |
973 | + } | |
974 | + }, | |
975 | + "node_modules/body-parser/node_modules/debug": { | |
976 | + "version": "2.6.9", | |
977 | + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | |
978 | + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", | |
979 | + "dependencies": { | |
980 | + "ms": "2.0.0" | |
981 | + } | |
982 | + }, | |
983 | + "node_modules/body-parser/node_modules/ms": { | |
984 | + "version": "2.0.0", | |
985 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | |
986 | + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" | |
987 | + }, | |
988 | + "node_modules/brace-expansion": { | |
989 | + "version": "1.1.11", | |
990 | + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | |
991 | + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | |
992 | + "dependencies": { | |
993 | + "balanced-match": "^1.0.0", | |
994 | + "concat-map": "0.0.1" | |
995 | + } | |
996 | + }, | |
997 | + "node_modules/braces": { | |
998 | + "version": "3.0.2", | |
999 | + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", | |
1000 | + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", | |
1001 | + "optional": true, | |
1002 | + "dependencies": { | |
1003 | + "fill-range": "^7.0.1" | |
1004 | + }, | |
1005 | + "engines": { | |
1006 | + "node": ">=8" | |
1007 | + } | |
1008 | + }, | |
1009 | + "node_modules/browserslist": { | |
1010 | + "version": "4.22.1", | |
1011 | + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", | |
1012 | + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", | |
1013 | + "funding": [ | |
1014 | + { | |
1015 | + "type": "opencollective", | |
1016 | + "url": "https://opencollective.com/browserslist" | |
1017 | + }, | |
1018 | + { | |
1019 | + "type": "tidelift", | |
1020 | + "url": "https://tidelift.com/funding/github/npm/browserslist" | |
1021 | + }, | |
1022 | + { | |
1023 | + "type": "github", | |
1024 | + "url": "https://github.com/sponsors/ai" | |
1025 | + } | |
1026 | + ], | |
1027 | + "dependencies": { | |
1028 | + "caniuse-lite": "^1.0.30001541", | |
1029 | + "electron-to-chromium": "^1.4.535", | |
1030 | + "node-releases": "^2.0.13", | |
1031 | + "update-browserslist-db": "^1.0.13" | |
1032 | + }, | |
1033 | + "bin": { | |
1034 | + "browserslist": "cli.js" | |
1035 | + }, | |
1036 | + "engines": { | |
1037 | + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" | |
1038 | + } | |
1039 | + }, | |
1040 | + "node_modules/buffer-from": { | |
1041 | + "version": "1.1.2", | |
1042 | + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", | |
1043 | + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" | |
1044 | + }, | |
1045 | + "node_modules/buffer-writer": { | |
1046 | + "version": "2.0.0", | |
1047 | + "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", | |
1048 | + "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==", | |
1049 | + "engines": { | |
1050 | + "node": ">=4" | |
1051 | + } | |
1052 | + }, | |
1053 | + "node_modules/bytes": { | |
1054 | + "version": "3.1.2", | |
1055 | + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", | |
1056 | + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", | |
1057 | + "engines": { | |
1058 | + "node": ">= 0.8" | |
1059 | + } | |
1060 | + }, | |
1061 | + "node_modules/call-bind": { | |
1062 | + "version": "1.0.2", | |
1063 | + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", | |
1064 | + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", | |
1065 | + "dependencies": { | |
1066 | + "function-bind": "^1.1.1", | |
1067 | + "get-intrinsic": "^1.0.2" | |
1068 | + }, | |
1069 | + "funding": { | |
1070 | + "url": "https://github.com/sponsors/ljharb" | |
1071 | + } | |
1072 | + }, | |
1073 | + "node_modules/caniuse-lite": { | |
1074 | + "version": "1.0.30001549", | |
1075 | + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001549.tgz", | |
1076 | + "integrity": "sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==", | |
1077 | + "funding": [ | |
1078 | + { | |
1079 | + "type": "opencollective", | |
1080 | + "url": "https://opencollective.com/browserslist" | |
1081 | + }, | |
1082 | + { | |
1083 | + "type": "tidelift", | |
1084 | + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" | |
1085 | + }, | |
1086 | + { | |
1087 | + "type": "github", | |
1088 | + "url": "https://github.com/sponsors/ai" | |
1089 | + } | |
1090 | + ] | |
1091 | + }, | |
1092 | + "node_modules/chalk": { | |
1093 | + "version": "2.4.2", | |
1094 | + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", | |
1095 | + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", | |
1096 | + "dependencies": { | |
1097 | + "ansi-styles": "^3.2.1", | |
1098 | + "escape-string-regexp": "^1.0.5", | |
1099 | + "supports-color": "^5.3.0" | |
1100 | + }, | |
1101 | + "engines": { | |
1102 | + "node": ">=4" | |
1103 | + } | |
1104 | + }, | |
1105 | + "node_modules/chokidar": { | |
1106 | + "version": "3.5.3", | |
1107 | + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", | |
1108 | + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", | |
1109 | + "funding": [ | |
1110 | + { | |
1111 | + "type": "individual", | |
1112 | + "url": "https://paulmillr.com/funding/" | |
1113 | + } | |
1114 | + ], | |
1115 | + "optional": true, | |
1116 | + "dependencies": { | |
1117 | + "anymatch": "~3.1.2", | |
1118 | + "braces": "~3.0.2", | |
1119 | + "glob-parent": "~5.1.2", | |
1120 | + "is-binary-path": "~2.1.0", | |
1121 | + "is-glob": "~4.0.1", | |
1122 | + "normalize-path": "~3.0.0", | |
1123 | + "readdirp": "~3.6.0" | |
1124 | + }, | |
1125 | + "engines": { | |
1126 | + "node": ">= 8.10.0" | |
1127 | + }, | |
1128 | + "optionalDependencies": { | |
1129 | + "fsevents": "~2.3.2" | |
1130 | + } | |
1131 | + }, | |
1132 | + "node_modules/chrome-trace-event": { | |
1133 | + "version": "1.0.3", | |
1134 | + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", | |
1135 | + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", | |
1136 | + "engines": { | |
1137 | + "node": ">=6.0" | |
1138 | + } | |
1139 | + }, | |
1140 | + "node_modules/clone-deep": { | |
1141 | + "version": "4.0.1", | |
1142 | + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", | |
1143 | + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", | |
1144 | + "dependencies": { | |
1145 | + "is-plain-object": "^2.0.4", | |
1146 | + "kind-of": "^6.0.2", | |
1147 | + "shallow-clone": "^3.0.0" | |
1148 | + }, | |
1149 | + "engines": { | |
1150 | + "node": ">=6" | |
1151 | + } | |
1152 | + }, | |
1153 | + "node_modules/color-convert": { | |
1154 | + "version": "1.9.3", | |
1155 | + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | |
1156 | + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | |
1157 | + "dependencies": { | |
1158 | + "color-name": "1.1.3" | |
1159 | + } | |
1160 | + }, | |
1161 | + "node_modules/color-name": { | |
1162 | + "version": "1.1.3", | |
1163 | + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | |
1164 | + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" | |
1165 | + }, | |
1166 | + "node_modules/colorette": { | |
1167 | + "version": "2.0.20", | |
1168 | + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", | |
1169 | + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" | |
1170 | + }, | |
1171 | + "node_modules/combined-stream": { | |
1172 | + "version": "1.0.8", | |
1173 | + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", | |
1174 | + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", | |
1175 | + "dependencies": { | |
1176 | + "delayed-stream": "~1.0.0" | |
1177 | + }, | |
1178 | + "engines": { | |
1179 | + "node": ">= 0.8" | |
1180 | + } | |
1181 | + }, | |
1182 | + "node_modules/commander": { | |
1183 | + "version": "4.1.1", | |
1184 | + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", | |
1185 | + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", | |
1186 | + "engines": { | |
1187 | + "node": ">= 6" | |
1188 | + } | |
1189 | + }, | |
1190 | + "node_modules/commondir": { | |
1191 | + "version": "1.0.1", | |
1192 | + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", | |
1193 | + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" | |
1194 | + }, | |
1195 | + "node_modules/concat-map": { | |
1196 | + "version": "0.0.1", | |
1197 | + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | |
1198 | + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" | |
1199 | + }, | |
1200 | + "node_modules/content-disposition": { | |
1201 | + "version": "0.5.4", | |
1202 | + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", | |
1203 | + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", | |
1204 | + "dependencies": { | |
1205 | + "safe-buffer": "5.2.1" | |
1206 | + }, | |
1207 | + "engines": { | |
1208 | + "node": ">= 0.6" | |
1209 | + } | |
1210 | + }, | |
1211 | + "node_modules/content-type": { | |
1212 | + "version": "1.0.5", | |
1213 | + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", | |
1214 | + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", | |
1215 | + "engines": { | |
1216 | + "node": ">= 0.6" | |
1217 | + } | |
1218 | + }, | |
1219 | + "node_modules/convert-source-map": { | |
1220 | + "version": "1.9.0", | |
1221 | + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", | |
1222 | + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" | |
1223 | + }, | |
1224 | + "node_modules/cookie": { | |
1225 | + "version": "0.5.0", | |
1226 | + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", | |
1227 | + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", | |
1228 | + "engines": { | |
1229 | + "node": ">= 0.6" | |
1230 | + } | |
1231 | + }, | |
1232 | + "node_modules/cookie-signature": { | |
1233 | + "version": "1.0.6", | |
1234 | + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", | |
1235 | + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" | |
1236 | + }, | |
1237 | + "node_modules/copy-anything": { | |
1238 | + "version": "2.0.6", | |
1239 | + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", | |
1240 | + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", | |
1241 | + "dev": true, | |
1242 | + "dependencies": { | |
1243 | + "is-what": "^3.14.1" | |
1244 | + }, | |
1245 | + "funding": { | |
1246 | + "url": "https://github.com/sponsors/mesqueeb" | |
1247 | + } | |
1248 | + }, | |
1249 | + "node_modules/cross-spawn": { | |
1250 | + "version": "7.0.3", | |
1251 | + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", | |
1252 | + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", | |
1253 | + "dependencies": { | |
1254 | + "path-key": "^3.1.0", | |
1255 | + "shebang-command": "^2.0.0", | |
1256 | + "which": "^2.0.1" | |
1257 | + }, | |
1258 | + "engines": { | |
1259 | + "node": ">= 8" | |
1260 | + } | |
1261 | + }, | |
1262 | + "node_modules/css-loader": { | |
1263 | + "version": "6.7.1", | |
1264 | + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", | |
1265 | + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", | |
1266 | + "dependencies": { | |
1267 | + "icss-utils": "^5.1.0", | |
1268 | + "postcss": "^8.4.7", | |
1269 | + "postcss-modules-extract-imports": "^3.0.0", | |
1270 | + "postcss-modules-local-by-default": "^4.0.0", | |
1271 | + "postcss-modules-scope": "^3.0.0", | |
1272 | + "postcss-modules-values": "^4.0.0", | |
1273 | + "postcss-value-parser": "^4.2.0", | |
1274 | + "semver": "^7.3.5" | |
1275 | + }, | |
1276 | + "engines": { | |
1277 | + "node": ">= 12.13.0" | |
1278 | + }, | |
1279 | + "funding": { | |
1280 | + "type": "opencollective", | |
1281 | + "url": "https://opencollective.com/webpack" | |
1282 | + }, | |
1283 | + "peerDependencies": { | |
1284 | + "webpack": "^5.0.0" | |
1285 | + } | |
1286 | + }, | |
1287 | + "node_modules/css-loader/node_modules/lru-cache": { | |
1288 | + "version": "6.0.0", | |
1289 | + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | |
1290 | + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | |
1291 | + "dependencies": { | |
1292 | + "yallist": "^4.0.0" | |
1293 | + }, | |
1294 | + "engines": { | |
1295 | + "node": ">=10" | |
1296 | + } | |
1297 | + }, | |
1298 | + "node_modules/css-loader/node_modules/semver": { | |
1299 | + "version": "7.5.4", | |
1300 | + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", | |
1301 | + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", | |
1302 | + "dependencies": { | |
1303 | + "lru-cache": "^6.0.0" | |
1304 | + }, | |
1305 | + "bin": { | |
1306 | + "semver": "bin/semver.js" | |
1307 | + }, | |
1308 | + "engines": { | |
1309 | + "node": ">=10" | |
1310 | + } | |
1311 | + }, | |
1312 | + "node_modules/css-loader/node_modules/yallist": { | |
1313 | + "version": "4.0.0", | |
1314 | + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | |
1315 | + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" | |
1316 | + }, | |
1317 | + "node_modules/cssesc": { | |
1318 | + "version": "3.0.0", | |
1319 | + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", | |
1320 | + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", | |
1321 | + "bin": { | |
1322 | + "cssesc": "bin/cssesc" | |
1323 | + }, | |
1324 | + "engines": { | |
1325 | + "node": ">=4" | |
1326 | + } | |
1327 | + }, | |
1328 | + "node_modules/csstype": { | |
1329 | + "version": "2.6.21", | |
1330 | + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", | |
1331 | + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" | |
1332 | + }, | |
1333 | + "node_modules/debug": { | |
1334 | + "version": "4.3.4", | |
1335 | + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", | |
1336 | + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", | |
1337 | + "dependencies": { | |
1338 | + "ms": "2.1.2" | |
1339 | + }, | |
1340 | + "engines": { | |
1341 | + "node": ">=6.0" | |
1342 | + }, | |
1343 | + "peerDependenciesMeta": { | |
1344 | + "supports-color": { | |
1345 | + "optional": true | |
1346 | + } | |
1347 | + } | |
1348 | + }, | |
1349 | + "node_modules/delayed-stream": { | |
1350 | + "version": "1.0.0", | |
1351 | + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", | |
1352 | + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", | |
1353 | + "engines": { | |
1354 | + "node": ">=0.4.0" | |
1355 | + } | |
1356 | + }, | |
1357 | + "node_modules/depd": { | |
1358 | + "version": "2.0.0", | |
1359 | + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", | |
1360 | + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", | |
1361 | + "engines": { | |
1362 | + "node": ">= 0.8" | |
1363 | + } | |
1364 | + }, | |
1365 | + "node_modules/destroy": { | |
1366 | + "version": "1.2.0", | |
1367 | + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", | |
1368 | + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", | |
1369 | + "engines": { | |
1370 | + "node": ">= 0.8", | |
1371 | + "npm": "1.2.8000 || >= 1.4.16" | |
1372 | + } | |
1373 | + }, | |
1374 | + "node_modules/dom-walk": { | |
1375 | + "version": "0.1.2", | |
1376 | + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", | |
1377 | + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" | |
1378 | + }, | |
1379 | + "node_modules/ee-first": { | |
1380 | + "version": "1.1.1", | |
1381 | + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", | |
1382 | + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" | |
1383 | + }, | |
1384 | + "node_modules/electron-to-chromium": { | |
1385 | + "version": "1.4.556", | |
1386 | + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.556.tgz", | |
1387 | + "integrity": "sha512-6RPN0hHfzDU8D56E72YkDvnLw5Cj2NMXZGg3UkgyoHxjVhG99KZpsKgBWMmTy0Ei89xwan+rbRsVB9yzATmYzQ==" | |
1388 | + }, | |
1389 | + "node_modules/emojis-list": { | |
1390 | + "version": "3.0.0", | |
1391 | + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", | |
1392 | + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", | |
1393 | + "engines": { | |
1394 | + "node": ">= 4" | |
1395 | + } | |
1396 | + }, | |
1397 | + "node_modules/encodeurl": { | |
1398 | + "version": "1.0.2", | |
1399 | + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", | |
1400 | + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", | |
1401 | + "engines": { | |
1402 | + "node": ">= 0.8" | |
1403 | + } | |
1404 | + }, | |
1405 | + "node_modules/enhanced-resolve": { | |
1406 | + "version": "5.15.0", | |
1407 | + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", | |
1408 | + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", | |
1409 | + "dependencies": { | |
1410 | + "graceful-fs": "^4.2.4", | |
1411 | + "tapable": "^2.2.0" | |
1412 | + }, | |
1413 | + "engines": { | |
1414 | + "node": ">=10.13.0" | |
1415 | + } | |
1416 | + }, | |
1417 | + "node_modules/envinfo": { | |
1418 | + "version": "7.10.0", | |
1419 | + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.10.0.tgz", | |
1420 | + "integrity": "sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==", | |
1421 | + "bin": { | |
1422 | + "envinfo": "dist/cli.js" | |
1423 | + }, | |
1424 | + "engines": { | |
1425 | + "node": ">=4" | |
1426 | + } | |
1427 | + }, | |
1428 | + "node_modules/errno": { | |
1429 | + "version": "0.1.8", | |
1430 | + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", | |
1431 | + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", | |
1432 | + "dev": true, | |
1433 | + "optional": true, | |
1434 | + "dependencies": { | |
1435 | + "prr": "~1.0.1" | |
1436 | + }, | |
1437 | + "bin": { | |
1438 | + "errno": "cli.js" | |
1439 | + } | |
1440 | + }, | |
1441 | + "node_modules/es-module-lexer": { | |
1442 | + "version": "0.9.3", | |
1443 | + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", | |
1444 | + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" | |
1445 | + }, | |
1446 | + "node_modules/es6-promise": { | |
1447 | + "version": "4.2.8", | |
1448 | + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", | |
1449 | + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" | |
1450 | + }, | |
1451 | + "node_modules/escalade": { | |
1452 | + "version": "3.1.1", | |
1453 | + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", | |
1454 | + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", | |
1455 | + "engines": { | |
1456 | + "node": ">=6" | |
1457 | + } | |
1458 | + }, | |
1459 | + "node_modules/escape-html": { | |
1460 | + "version": "1.0.3", | |
1461 | + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", | |
1462 | + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" | |
1463 | + }, | |
1464 | + "node_modules/escape-string-regexp": { | |
1465 | + "version": "1.0.5", | |
1466 | + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", | |
1467 | + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", | |
1468 | + "engines": { | |
1469 | + "node": ">=0.8.0" | |
1470 | + } | |
1471 | + }, | |
1472 | + "node_modules/eslint-scope": { | |
1473 | + "version": "5.1.1", | |
1474 | + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", | |
1475 | + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", | |
1476 | + "dependencies": { | |
1477 | + "esrecurse": "^4.3.0", | |
1478 | + "estraverse": "^4.1.1" | |
1479 | + }, | |
1480 | + "engines": { | |
1481 | + "node": ">=8.0.0" | |
1482 | + } | |
1483 | + }, | |
1484 | + "node_modules/esrecurse": { | |
1485 | + "version": "4.3.0", | |
1486 | + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", | |
1487 | + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", | |
1488 | + "dependencies": { | |
1489 | + "estraverse": "^5.2.0" | |
1490 | + }, | |
1491 | + "engines": { | |
1492 | + "node": ">=4.0" | |
1493 | + } | |
1494 | + }, | |
1495 | + "node_modules/esrecurse/node_modules/estraverse": { | |
1496 | + "version": "5.3.0", | |
1497 | + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", | |
1498 | + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", | |
1499 | + "engines": { | |
1500 | + "node": ">=4.0" | |
1501 | + } | |
1502 | + }, | |
1503 | + "node_modules/estraverse": { | |
1504 | + "version": "4.3.0", | |
1505 | + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", | |
1506 | + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", | |
1507 | + "engines": { | |
1508 | + "node": ">=4.0" | |
1509 | + } | |
1510 | + }, | |
1511 | + "node_modules/estree-walker": { | |
1512 | + "version": "2.0.2", | |
1513 | + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", | |
1514 | + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" | |
1515 | + }, | |
1516 | + "node_modules/etag": { | |
1517 | + "version": "1.8.1", | |
1518 | + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", | |
1519 | + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", | |
1520 | + "engines": { | |
1521 | + "node": ">= 0.6" | |
1522 | + } | |
1523 | + }, | |
1524 | + "node_modules/events": { | |
1525 | + "version": "3.3.0", | |
1526 | + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", | |
1527 | + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", | |
1528 | + "engines": { | |
1529 | + "node": ">=0.8.x" | |
1530 | + } | |
1531 | + }, | |
1532 | + "node_modules/express": { | |
1533 | + "version": "4.18.1", | |
1534 | + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", | |
1535 | + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", | |
1536 | + "dependencies": { | |
1537 | + "accepts": "~1.3.8", | |
1538 | + "array-flatten": "1.1.1", | |
1539 | + "body-parser": "1.20.0", | |
1540 | + "content-disposition": "0.5.4", | |
1541 | + "content-type": "~1.0.4", | |
1542 | + "cookie": "0.5.0", | |
1543 | + "cookie-signature": "1.0.6", | |
1544 | + "debug": "2.6.9", | |
1545 | + "depd": "2.0.0", | |
1546 | + "encodeurl": "~1.0.2", | |
1547 | + "escape-html": "~1.0.3", | |
1548 | + "etag": "~1.8.1", | |
1549 | + "finalhandler": "1.2.0", | |
1550 | + "fresh": "0.5.2", | |
1551 | + "http-errors": "2.0.0", | |
1552 | + "merge-descriptors": "1.0.1", | |
1553 | + "methods": "~1.1.2", | |
1554 | + "on-finished": "2.4.1", | |
1555 | + "parseurl": "~1.3.3", | |
1556 | + "path-to-regexp": "0.1.7", | |
1557 | + "proxy-addr": "~2.0.7", | |
1558 | + "qs": "6.10.3", | |
1559 | + "range-parser": "~1.2.1", | |
1560 | + "safe-buffer": "5.2.1", | |
1561 | + "send": "0.18.0", | |
1562 | + "serve-static": "1.15.0", | |
1563 | + "setprototypeof": "1.2.0", | |
1564 | + "statuses": "2.0.1", | |
1565 | + "type-is": "~1.6.18", | |
1566 | + "utils-merge": "1.0.1", | |
1567 | + "vary": "~1.1.2" | |
1568 | + }, | |
1569 | + "engines": { | |
1570 | + "node": ">= 0.10.0" | |
1571 | + } | |
1572 | + }, | |
1573 | + "node_modules/express-http-proxy": { | |
1574 | + "version": "2.0.0", | |
1575 | + "resolved": "https://registry.npmjs.org/express-http-proxy/-/express-http-proxy-2.0.0.tgz", | |
1576 | + "integrity": "sha512-TXxcPFTWVUMSEmyM6iX2sT/JtmqhqngTq29P+eXTVFdtxZrTmM8THUYK59rUXiln0FfPGvxEpGRnVrgvHksXDw==", | |
1577 | + "dependencies": { | |
1578 | + "debug": "^3.0.1", | |
1579 | + "es6-promise": "^4.1.1", | |
1580 | + "raw-body": "^2.3.0" | |
1581 | + }, | |
1582 | + "engines": { | |
1583 | + "node": ">=6.0.0" | |
1584 | + } | |
1585 | + }, | |
1586 | + "node_modules/express-http-proxy/node_modules/debug": { | |
1587 | + "version": "3.2.7", | |
1588 | + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", | |
1589 | + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", | |
1590 | + "dependencies": { | |
1591 | + "ms": "^2.1.1" | |
1592 | + } | |
1593 | + }, | |
1594 | + "node_modules/express/node_modules/debug": { | |
1595 | + "version": "2.6.9", | |
1596 | + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | |
1597 | + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", | |
1598 | + "dependencies": { | |
1599 | + "ms": "2.0.0" | |
1600 | + } | |
1601 | + }, | |
1602 | + "node_modules/express/node_modules/ms": { | |
1603 | + "version": "2.0.0", | |
1604 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | |
1605 | + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" | |
1606 | + }, | |
1607 | + "node_modules/fast-deep-equal": { | |
1608 | + "version": "3.1.3", | |
1609 | + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | |
1610 | + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" | |
1611 | + }, | |
1612 | + "node_modules/fast-json-stable-stringify": { | |
1613 | + "version": "2.1.0", | |
1614 | + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", | |
1615 | + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" | |
1616 | + }, | |
1617 | + "node_modules/fastest-levenshtein": { | |
1618 | + "version": "1.0.16", | |
1619 | + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", | |
1620 | + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", | |
1621 | + "engines": { | |
1622 | + "node": ">= 4.9.1" | |
1623 | + } | |
1624 | + }, | |
1625 | + "node_modules/file-loader": { | |
1626 | + "version": "6.2.0", | |
1627 | + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", | |
1628 | + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", | |
1629 | + "dependencies": { | |
1630 | + "loader-utils": "^2.0.0", | |
1631 | + "schema-utils": "^3.0.0" | |
1632 | + }, | |
1633 | + "engines": { | |
1634 | + "node": ">= 10.13.0" | |
1635 | + }, | |
1636 | + "funding": { | |
1637 | + "type": "opencollective", | |
1638 | + "url": "https://opencollective.com/webpack" | |
1639 | + }, | |
1640 | + "peerDependencies": { | |
1641 | + "webpack": "^4.0.0 || ^5.0.0" | |
1642 | + } | |
1643 | + }, | |
1644 | + "node_modules/file-loader/node_modules/schema-utils": { | |
1645 | + "version": "3.3.0", | |
1646 | + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", | |
1647 | + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", | |
1648 | + "dependencies": { | |
1649 | + "@types/json-schema": "^7.0.8", | |
1650 | + "ajv": "^6.12.5", | |
1651 | + "ajv-keywords": "^3.5.2" | |
1652 | + }, | |
1653 | + "engines": { | |
1654 | + "node": ">= 10.13.0" | |
1655 | + }, | |
1656 | + "funding": { | |
1657 | + "type": "opencollective", | |
1658 | + "url": "https://opencollective.com/webpack" | |
1659 | + } | |
1660 | + }, | |
1661 | + "node_modules/fill-range": { | |
1662 | + "version": "7.0.1", | |
1663 | + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", | |
1664 | + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", | |
1665 | + "optional": true, | |
1666 | + "dependencies": { | |
1667 | + "to-regex-range": "^5.0.1" | |
1668 | + }, | |
1669 | + "engines": { | |
1670 | + "node": ">=8" | |
1671 | + } | |
1672 | + }, | |
1673 | + "node_modules/finalhandler": { | |
1674 | + "version": "1.2.0", | |
1675 | + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", | |
1676 | + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", | |
1677 | + "dependencies": { | |
1678 | + "debug": "2.6.9", | |
1679 | + "encodeurl": "~1.0.2", | |
1680 | + "escape-html": "~1.0.3", | |
1681 | + "on-finished": "2.4.1", | |
1682 | + "parseurl": "~1.3.3", | |
1683 | + "statuses": "2.0.1", | |
1684 | + "unpipe": "~1.0.0" | |
1685 | + }, | |
1686 | + "engines": { | |
1687 | + "node": ">= 0.8" | |
1688 | + } | |
1689 | + }, | |
1690 | + "node_modules/finalhandler/node_modules/debug": { | |
1691 | + "version": "2.6.9", | |
1692 | + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | |
1693 | + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", | |
1694 | + "dependencies": { | |
1695 | + "ms": "2.0.0" | |
1696 | + } | |
1697 | + }, | |
1698 | + "node_modules/finalhandler/node_modules/ms": { | |
1699 | + "version": "2.0.0", | |
1700 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | |
1701 | + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" | |
1702 | + }, | |
1703 | + "node_modules/find-cache-dir": { | |
1704 | + "version": "3.3.2", | |
1705 | + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", | |
1706 | + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", | |
1707 | + "dependencies": { | |
1708 | + "commondir": "^1.0.1", | |
1709 | + "make-dir": "^3.0.2", | |
1710 | + "pkg-dir": "^4.1.0" | |
1711 | + }, | |
1712 | + "engines": { | |
1713 | + "node": ">=8" | |
1714 | + }, | |
1715 | + "funding": { | |
1716 | + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" | |
1717 | + } | |
1718 | + }, | |
1719 | + "node_modules/find-cache-dir/node_modules/make-dir": { | |
1720 | + "version": "3.1.0", | |
1721 | + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", | |
1722 | + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", | |
1723 | + "dependencies": { | |
1724 | + "semver": "^6.0.0" | |
1725 | + }, | |
1726 | + "engines": { | |
1727 | + "node": ">=8" | |
1728 | + }, | |
1729 | + "funding": { | |
1730 | + "url": "https://github.com/sponsors/sindresorhus" | |
1731 | + } | |
1732 | + }, | |
1733 | + "node_modules/find-up": { | |
1734 | + "version": "4.1.0", | |
1735 | + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", | |
1736 | + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", | |
1737 | + "dependencies": { | |
1738 | + "locate-path": "^5.0.0", | |
1739 | + "path-exists": "^4.0.0" | |
1740 | + }, | |
1741 | + "engines": { | |
1742 | + "node": ">=8" | |
1743 | + } | |
1744 | + }, | |
1745 | + "node_modules/flat": { | |
1746 | + "version": "5.0.2", | |
1747 | + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", | |
1748 | + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", | |
1749 | + "bin": { | |
1750 | + "flat": "cli.js" | |
1751 | + } | |
1752 | + }, | |
1753 | + "node_modules/follow-redirects": { | |
1754 | + "version": "1.15.3", | |
1755 | + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", | |
1756 | + "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", | |
1757 | + "funding": [ | |
1758 | + { | |
1759 | + "type": "individual", | |
1760 | + "url": "https://github.com/sponsors/RubenVerborgh" | |
1761 | + } | |
1762 | + ], | |
1763 | + "engines": { | |
1764 | + "node": ">=4.0" | |
1765 | + }, | |
1766 | + "peerDependenciesMeta": { | |
1767 | + "debug": { | |
1768 | + "optional": true | |
1769 | + } | |
1770 | + } | |
1771 | + }, | |
1772 | + "node_modules/form-data": { | |
1773 | + "version": "4.0.0", | |
1774 | + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", | |
1775 | + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", | |
1776 | + "dependencies": { | |
1777 | + "asynckit": "^0.4.0", | |
1778 | + "combined-stream": "^1.0.8", | |
1779 | + "mime-types": "^2.1.12" | |
1780 | + }, | |
1781 | + "engines": { | |
1782 | + "node": ">= 6" | |
1783 | + } | |
1784 | + }, | |
1785 | + "node_modules/forwarded": { | |
1786 | + "version": "0.2.0", | |
1787 | + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", | |
1788 | + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", | |
1789 | + "engines": { | |
1790 | + "node": ">= 0.6" | |
1791 | + } | |
1792 | + }, | |
1793 | + "node_modules/fresh": { | |
1794 | + "version": "0.5.2", | |
1795 | + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", | |
1796 | + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", | |
1797 | + "engines": { | |
1798 | + "node": ">= 0.6" | |
1799 | + } | |
1800 | + }, | |
1801 | + "node_modules/fs": { | |
1802 | + "version": "0.0.1-security", | |
1803 | + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", | |
1804 | + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" | |
1805 | + }, | |
1806 | + "node_modules/fs-readdir-recursive": { | |
1807 | + "version": "1.1.0", | |
1808 | + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", | |
1809 | + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==" | |
1810 | + }, | |
1811 | + "node_modules/fs.realpath": { | |
1812 | + "version": "1.0.0", | |
1813 | + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", | |
1814 | + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" | |
1815 | + }, | |
1816 | + "node_modules/fsevents": { | |
1817 | + "version": "2.3.3", | |
1818 | + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", | |
1819 | + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", | |
1820 | + "hasInstallScript": true, | |
1821 | + "optional": true, | |
1822 | + "os": [ | |
1823 | + "darwin" | |
1824 | + ], | |
1825 | + "engines": { | |
1826 | + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" | |
1827 | + } | |
1828 | + }, | |
1829 | + "node_modules/function-bind": { | |
1830 | + "version": "1.1.2", | |
1831 | + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", | |
1832 | + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", | |
1833 | + "funding": { | |
1834 | + "url": "https://github.com/sponsors/ljharb" | |
1835 | + } | |
1836 | + }, | |
1837 | + "node_modules/gensync": { | |
1838 | + "version": "1.0.0-beta.2", | |
1839 | + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", | |
1840 | + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", | |
1841 | + "engines": { | |
1842 | + "node": ">=6.9.0" | |
1843 | + } | |
1844 | + }, | |
1845 | + "node_modules/get-intrinsic": { | |
1846 | + "version": "1.2.1", | |
1847 | + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", | |
1848 | + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", | |
1849 | + "dependencies": { | |
1850 | + "function-bind": "^1.1.1", | |
1851 | + "has": "^1.0.3", | |
1852 | + "has-proto": "^1.0.1", | |
1853 | + "has-symbols": "^1.0.3" | |
1854 | + }, | |
1855 | + "funding": { | |
1856 | + "url": "https://github.com/sponsors/ljharb" | |
1857 | + } | |
1858 | + }, | |
1859 | + "node_modules/git": { | |
1860 | + "version": "0.1.5", | |
1861 | + "resolved": "https://registry.npmjs.org/git/-/git-0.1.5.tgz", | |
1862 | + "integrity": "sha512-N+bfOrXyKMU/fQtCj6D/U9MQOEN0DAA8TLHSLdUQRSWBOkeRvsjJHdrdkvcq05xO7GSDKWc3nDEGoTZ4DfCCSg==", | |
1863 | + "dependencies": { | |
1864 | + "mime": "1.2.9" | |
1865 | + }, | |
1866 | + "engines": { | |
1867 | + "node": ">=0.4.0" | |
1868 | + } | |
1869 | + }, | |
1870 | + "node_modules/git/node_modules/mime": { | |
1871 | + "version": "1.2.9", | |
1872 | + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.9.tgz", | |
1873 | + "integrity": "sha512-WiLgbHTIq5AYUvU/Luli4mZ1bUcHpGNHyCsbl+KPMg4zt+XUDpQehWjuBjdLaEvDTinvKj/FgfQt3fPoT7j08g==" | |
1874 | + }, | |
1875 | + "node_modules/glob": { | |
1876 | + "version": "7.2.3", | |
1877 | + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", | |
1878 | + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", | |
1879 | + "dependencies": { | |
1880 | + "fs.realpath": "^1.0.0", | |
1881 | + "inflight": "^1.0.4", | |
1882 | + "inherits": "2", | |
1883 | + "minimatch": "^3.1.1", | |
1884 | + "once": "^1.3.0", | |
1885 | + "path-is-absolute": "^1.0.0" | |
1886 | + }, | |
1887 | + "engines": { | |
1888 | + "node": "*" | |
1889 | + }, | |
1890 | + "funding": { | |
1891 | + "url": "https://github.com/sponsors/isaacs" | |
1892 | + } | |
1893 | + }, | |
1894 | + "node_modules/glob-parent": { | |
1895 | + "version": "5.1.2", | |
1896 | + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", | |
1897 | + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", | |
1898 | + "optional": true, | |
1899 | + "dependencies": { | |
1900 | + "is-glob": "^4.0.1" | |
1901 | + }, | |
1902 | + "engines": { | |
1903 | + "node": ">= 6" | |
1904 | + } | |
1905 | + }, | |
1906 | + "node_modules/glob-to-regexp": { | |
1907 | + "version": "0.4.1", | |
1908 | + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", | |
1909 | + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" | |
1910 | + }, | |
1911 | + "node_modules/global": { | |
1912 | + "version": "4.4.0", | |
1913 | + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", | |
1914 | + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", | |
1915 | + "dependencies": { | |
1916 | + "min-document": "^2.19.0", | |
1917 | + "process": "^0.11.10" | |
1918 | + } | |
1919 | + }, | |
1920 | + "node_modules/globals": { | |
1921 | + "version": "11.12.0", | |
1922 | + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", | |
1923 | + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", | |
1924 | + "engines": { | |
1925 | + "node": ">=4" | |
1926 | + } | |
1927 | + }, | |
1928 | + "node_modules/graceful-fs": { | |
1929 | + "version": "4.2.11", | |
1930 | + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", | |
1931 | + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" | |
1932 | + }, | |
1933 | + "node_modules/has": { | |
1934 | + "version": "1.0.4", | |
1935 | + "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", | |
1936 | + "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", | |
1937 | + "engines": { | |
1938 | + "node": ">= 0.4.0" | |
1939 | + } | |
1940 | + }, | |
1941 | + "node_modules/has-flag": { | |
1942 | + "version": "3.0.0", | |
1943 | + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | |
1944 | + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", | |
1945 | + "engines": { | |
1946 | + "node": ">=4" | |
1947 | + } | |
1948 | + }, | |
1949 | + "node_modules/has-proto": { | |
1950 | + "version": "1.0.1", | |
1951 | + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", | |
1952 | + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", | |
1953 | + "engines": { | |
1954 | + "node": ">= 0.4" | |
1955 | + }, | |
1956 | + "funding": { | |
1957 | + "url": "https://github.com/sponsors/ljharb" | |
1958 | + } | |
1959 | + }, | |
1960 | + "node_modules/has-symbols": { | |
1961 | + "version": "1.0.3", | |
1962 | + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", | |
1963 | + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", | |
1964 | + "engines": { | |
1965 | + "node": ">= 0.4" | |
1966 | + }, | |
1967 | + "funding": { | |
1968 | + "url": "https://github.com/sponsors/ljharb" | |
1969 | + } | |
1970 | + }, | |
1971 | + "node_modules/hash-sum": { | |
1972 | + "version": "2.0.0", | |
1973 | + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", | |
1974 | + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==" | |
1975 | + }, | |
1976 | + "node_modules/http-errors": { | |
1977 | + "version": "2.0.0", | |
1978 | + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", | |
1979 | + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", | |
1980 | + "dependencies": { | |
1981 | + "depd": "2.0.0", | |
1982 | + "inherits": "2.0.4", | |
1983 | + "setprototypeof": "1.2.0", | |
1984 | + "statuses": "2.0.1", | |
1985 | + "toidentifier": "1.0.1" | |
1986 | + }, | |
1987 | + "engines": { | |
1988 | + "node": ">= 0.8" | |
1989 | + } | |
1990 | + }, | |
1991 | + "node_modules/iconv-lite": { | |
1992 | + "version": "0.4.24", | |
1993 | + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", | |
1994 | + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", | |
1995 | + "dependencies": { | |
1996 | + "safer-buffer": ">= 2.1.2 < 3" | |
1997 | + }, | |
1998 | + "engines": { | |
1999 | + "node": ">=0.10.0" | |
2000 | + } | |
2001 | + }, | |
2002 | + "node_modules/icss-utils": { | |
2003 | + "version": "5.1.0", | |
2004 | + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", | |
2005 | + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", | |
2006 | + "engines": { | |
2007 | + "node": "^10 || ^12 || >= 14" | |
2008 | + }, | |
2009 | + "peerDependencies": { | |
2010 | + "postcss": "^8.1.0" | |
2011 | + } | |
2012 | + }, | |
2013 | + "node_modules/image-size": { | |
2014 | + "version": "0.5.5", | |
2015 | + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", | |
2016 | + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", | |
2017 | + "dev": true, | |
2018 | + "optional": true, | |
2019 | + "bin": { | |
2020 | + "image-size": "bin/image-size.js" | |
2021 | + }, | |
2022 | + "engines": { | |
2023 | + "node": ">=0.10.0" | |
2024 | + } | |
2025 | + }, | |
2026 | + "node_modules/import-local": { | |
2027 | + "version": "3.1.0", | |
2028 | + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", | |
2029 | + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", | |
2030 | + "dependencies": { | |
2031 | + "pkg-dir": "^4.2.0", | |
2032 | + "resolve-cwd": "^3.0.0" | |
2033 | + }, | |
2034 | + "bin": { | |
2035 | + "import-local-fixture": "fixtures/cli.js" | |
2036 | + }, | |
2037 | + "engines": { | |
2038 | + "node": ">=8" | |
2039 | + }, | |
2040 | + "funding": { | |
2041 | + "url": "https://github.com/sponsors/sindresorhus" | |
2042 | + } | |
2043 | + }, | |
2044 | + "node_modules/inflight": { | |
2045 | + "version": "1.0.6", | |
2046 | + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", | |
2047 | + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", | |
2048 | + "dependencies": { | |
2049 | + "once": "^1.3.0", | |
2050 | + "wrappy": "1" | |
2051 | + } | |
2052 | + }, | |
2053 | + "node_modules/inherits": { | |
2054 | + "version": "2.0.4", | |
2055 | + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", | |
2056 | + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" | |
2057 | + }, | |
2058 | + "node_modules/interpret": { | |
2059 | + "version": "2.2.0", | |
2060 | + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", | |
2061 | + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", | |
2062 | + "engines": { | |
2063 | + "node": ">= 0.10" | |
2064 | + } | |
2065 | + }, | |
2066 | + "node_modules/ipaddr.js": { | |
2067 | + "version": "1.9.1", | |
2068 | + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", | |
2069 | + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", | |
2070 | + "engines": { | |
2071 | + "node": ">= 0.10" | |
2072 | + } | |
2073 | + }, | |
2074 | + "node_modules/is-binary-path": { | |
2075 | + "version": "2.1.0", | |
2076 | + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", | |
2077 | + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", | |
2078 | + "optional": true, | |
2079 | + "dependencies": { | |
2080 | + "binary-extensions": "^2.0.0" | |
2081 | + }, | |
2082 | + "engines": { | |
2083 | + "node": ">=8" | |
2084 | + } | |
2085 | + }, | |
2086 | + "node_modules/is-core-module": { | |
2087 | + "version": "2.13.0", | |
2088 | + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", | |
2089 | + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", | |
2090 | + "dependencies": { | |
2091 | + "has": "^1.0.3" | |
2092 | + }, | |
2093 | + "funding": { | |
2094 | + "url": "https://github.com/sponsors/ljharb" | |
2095 | + } | |
2096 | + }, | |
2097 | + "node_modules/is-extglob": { | |
2098 | + "version": "2.1.1", | |
2099 | + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", | |
2100 | + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", | |
2101 | + "optional": true, | |
2102 | + "engines": { | |
2103 | + "node": ">=0.10.0" | |
2104 | + } | |
2105 | + }, | |
2106 | + "node_modules/is-glob": { | |
2107 | + "version": "4.0.3", | |
2108 | + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", | |
2109 | + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", | |
2110 | + "optional": true, | |
2111 | + "dependencies": { | |
2112 | + "is-extglob": "^2.1.1" | |
2113 | + }, | |
2114 | + "engines": { | |
2115 | + "node": ">=0.10.0" | |
2116 | + } | |
2117 | + }, | |
2118 | + "node_modules/is-number": { | |
2119 | + "version": "7.0.0", | |
2120 | + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", | |
2121 | + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", | |
2122 | + "optional": true, | |
2123 | + "engines": { | |
2124 | + "node": ">=0.12.0" | |
2125 | + } | |
2126 | + }, | |
2127 | + "node_modules/is-plain-object": { | |
2128 | + "version": "2.0.4", | |
2129 | + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", | |
2130 | + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", | |
2131 | + "dependencies": { | |
2132 | + "isobject": "^3.0.1" | |
2133 | + }, | |
2134 | + "engines": { | |
2135 | + "node": ">=0.10.0" | |
2136 | + } | |
2137 | + }, | |
2138 | + "node_modules/is-what": { | |
2139 | + "version": "3.14.1", | |
2140 | + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", | |
2141 | + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", | |
2142 | + "dev": true | |
2143 | + }, | |
2144 | + "node_modules/isexe": { | |
2145 | + "version": "2.0.0", | |
2146 | + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", | |
2147 | + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" | |
2148 | + }, | |
2149 | + "node_modules/isobject": { | |
2150 | + "version": "3.0.1", | |
2151 | + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", | |
2152 | + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", | |
2153 | + "engines": { | |
2154 | + "node": ">=0.10.0" | |
2155 | + } | |
2156 | + }, | |
2157 | + "node_modules/jest-worker": { | |
2158 | + "version": "27.5.1", | |
2159 | + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", | |
2160 | + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", | |
2161 | + "dependencies": { | |
2162 | + "@types/node": "*", | |
2163 | + "merge-stream": "^2.0.0", | |
2164 | + "supports-color": "^8.0.0" | |
2165 | + }, | |
2166 | + "engines": { | |
2167 | + "node": ">= 10.13.0" | |
2168 | + } | |
2169 | + }, | |
2170 | + "node_modules/jest-worker/node_modules/has-flag": { | |
2171 | + "version": "4.0.0", | |
2172 | + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", | |
2173 | + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", | |
2174 | + "engines": { | |
2175 | + "node": ">=8" | |
2176 | + } | |
2177 | + }, | |
2178 | + "node_modules/jest-worker/node_modules/supports-color": { | |
2179 | + "version": "8.1.1", | |
2180 | + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", | |
2181 | + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", | |
2182 | + "dependencies": { | |
2183 | + "has-flag": "^4.0.0" | |
2184 | + }, | |
2185 | + "engines": { | |
2186 | + "node": ">=10" | |
2187 | + }, | |
2188 | + "funding": { | |
2189 | + "url": "https://github.com/chalk/supports-color?sponsor=1" | |
2190 | + } | |
2191 | + }, | |
2192 | + "node_modules/jquery": { | |
2193 | + "version": "3.7.1", | |
2194 | + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", | |
2195 | + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", | |
2196 | + "peer": true | |
2197 | + }, | |
2198 | + "node_modules/js-tokens": { | |
2199 | + "version": "4.0.0", | |
2200 | + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", | |
2201 | + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" | |
2202 | + }, | |
2203 | + "node_modules/jsesc": { | |
2204 | + "version": "2.5.2", | |
2205 | + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", | |
2206 | + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", | |
2207 | + "bin": { | |
2208 | + "jsesc": "bin/jsesc" | |
2209 | + }, | |
2210 | + "engines": { | |
2211 | + "node": ">=4" | |
2212 | + } | |
2213 | + }, | |
2214 | + "node_modules/json-parse-even-better-errors": { | |
2215 | + "version": "2.3.1", | |
2216 | + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", | |
2217 | + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" | |
2218 | + }, | |
2219 | + "node_modules/json-schema-traverse": { | |
2220 | + "version": "0.4.1", | |
2221 | + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", | |
2222 | + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" | |
2223 | + }, | |
2224 | + "node_modules/json5": { | |
2225 | + "version": "2.2.3", | |
2226 | + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", | |
2227 | + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", | |
2228 | + "bin": { | |
2229 | + "json5": "lib/cli.js" | |
2230 | + }, | |
2231 | + "engines": { | |
2232 | + "node": ">=6" | |
2233 | + } | |
2234 | + }, | |
2235 | + "node_modules/kind-of": { | |
2236 | + "version": "6.0.3", | |
2237 | + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", | |
2238 | + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", | |
2239 | + "engines": { | |
2240 | + "node": ">=0.10.0" | |
2241 | + } | |
2242 | + }, | |
2243 | + "node_modules/less": { | |
2244 | + "version": "4.2.0", | |
2245 | + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", | |
2246 | + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", | |
2247 | + "dev": true, | |
2248 | + "dependencies": { | |
2249 | + "copy-anything": "^2.0.1", | |
2250 | + "parse-node-version": "^1.0.1", | |
2251 | + "tslib": "^2.3.0" | |
2252 | + }, | |
2253 | + "bin": { | |
2254 | + "lessc": "bin/lessc" | |
2255 | + }, | |
2256 | + "engines": { | |
2257 | + "node": ">=6" | |
2258 | + }, | |
2259 | + "optionalDependencies": { | |
2260 | + "errno": "^0.1.1", | |
2261 | + "graceful-fs": "^4.1.2", | |
2262 | + "image-size": "~0.5.0", | |
2263 | + "make-dir": "^2.1.0", | |
2264 | + "mime": "^1.4.1", | |
2265 | + "needle": "^3.1.0", | |
2266 | + "source-map": "~0.6.0" | |
2267 | + } | |
2268 | + }, | |
2269 | + "node_modules/less-loader": { | |
2270 | + "version": "11.1.3", | |
2271 | + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.1.3.tgz", | |
2272 | + "integrity": "sha512-A5b7O8dH9xpxvkosNrP0dFp2i/dISOJa9WwGF3WJflfqIERE2ybxh1BFDj5CovC2+jCE4M354mk90hN6ziXlVw==", | |
2273 | + "dev": true, | |
2274 | + "engines": { | |
2275 | + "node": ">= 14.15.0" | |
2276 | + }, | |
2277 | + "funding": { | |
2278 | + "type": "opencollective", | |
2279 | + "url": "https://opencollective.com/webpack" | |
2280 | + }, | |
2281 | + "peerDependencies": { | |
2282 | + "less": "^3.5.0 || ^4.0.0", | |
2283 | + "webpack": "^5.0.0" | |
2284 | + } | |
2285 | + }, | |
2286 | + "node_modules/loader-runner": { | |
2287 | + "version": "4.3.0", | |
2288 | + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", | |
2289 | + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", | |
2290 | + "engines": { | |
2291 | + "node": ">=6.11.5" | |
2292 | + } | |
2293 | + }, | |
2294 | + "node_modules/loader-utils": { | |
2295 | + "version": "2.0.4", | |
2296 | + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", | |
2297 | + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", | |
2298 | + "dependencies": { | |
2299 | + "big.js": "^5.2.2", | |
2300 | + "emojis-list": "^3.0.0", | |
2301 | + "json5": "^2.1.2" | |
2302 | + }, | |
2303 | + "engines": { | |
2304 | + "node": ">=8.9.0" | |
2305 | + } | |
2306 | + }, | |
2307 | + "node_modules/locate-path": { | |
2308 | + "version": "5.0.0", | |
2309 | + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", | |
2310 | + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", | |
2311 | + "dependencies": { | |
2312 | + "p-locate": "^4.1.0" | |
2313 | + }, | |
2314 | + "engines": { | |
2315 | + "node": ">=8" | |
2316 | + } | |
2317 | + }, | |
2318 | + "node_modules/lru-cache": { | |
2319 | + "version": "5.1.1", | |
2320 | + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", | |
2321 | + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", | |
2322 | + "dependencies": { | |
2323 | + "yallist": "^3.0.2" | |
2324 | + } | |
2325 | + }, | |
2326 | + "node_modules/magic-string": { | |
2327 | + "version": "0.25.9", | |
2328 | + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", | |
2329 | + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", | |
2330 | + "dependencies": { | |
2331 | + "sourcemap-codec": "^1.4.8" | |
2332 | + } | |
2333 | + }, | |
2334 | + "node_modules/make-dir": { | |
2335 | + "version": "2.1.0", | |
2336 | + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", | |
2337 | + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", | |
2338 | + "dependencies": { | |
2339 | + "pify": "^4.0.1", | |
2340 | + "semver": "^5.6.0" | |
2341 | + }, | |
2342 | + "engines": { | |
2343 | + "node": ">=6" | |
2344 | + } | |
2345 | + }, | |
2346 | + "node_modules/make-dir/node_modules/semver": { | |
2347 | + "version": "5.7.2", | |
2348 | + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", | |
2349 | + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", | |
2350 | + "bin": { | |
2351 | + "semver": "bin/semver" | |
2352 | + } | |
2353 | + }, | |
2354 | + "node_modules/media-typer": { | |
2355 | + "version": "0.3.0", | |
2356 | + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", | |
2357 | + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", | |
2358 | + "engines": { | |
2359 | + "node": ">= 0.6" | |
2360 | + } | |
2361 | + }, | |
2362 | + "node_modules/merge-descriptors": { | |
2363 | + "version": "1.0.1", | |
2364 | + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", | |
2365 | + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" | |
2366 | + }, | |
2367 | + "node_modules/merge-stream": { | |
2368 | + "version": "2.0.0", | |
2369 | + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", | |
2370 | + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" | |
2371 | + }, | |
2372 | + "node_modules/methods": { | |
2373 | + "version": "1.1.2", | |
2374 | + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", | |
2375 | + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", | |
2376 | + "engines": { | |
2377 | + "node": ">= 0.6" | |
2378 | + } | |
2379 | + }, | |
2380 | + "node_modules/mime": { | |
2381 | + "version": "1.6.0", | |
2382 | + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", | |
2383 | + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", | |
2384 | + "bin": { | |
2385 | + "mime": "cli.js" | |
2386 | + }, | |
2387 | + "engines": { | |
2388 | + "node": ">=4" | |
2389 | + } | |
2390 | + }, | |
2391 | + "node_modules/mime-db": { | |
2392 | + "version": "1.52.0", | |
2393 | + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", | |
2394 | + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", | |
2395 | + "engines": { | |
2396 | + "node": ">= 0.6" | |
2397 | + } | |
2398 | + }, | |
2399 | + "node_modules/mime-types": { | |
2400 | + "version": "2.1.35", | |
2401 | + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", | |
2402 | + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", | |
2403 | + "dependencies": { | |
2404 | + "mime-db": "1.52.0" | |
2405 | + }, | |
2406 | + "engines": { | |
2407 | + "node": ">= 0.6" | |
2408 | + } | |
2409 | + }, | |
2410 | + "node_modules/min-document": { | |
2411 | + "version": "2.19.0", | |
2412 | + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", | |
2413 | + "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", | |
2414 | + "dependencies": { | |
2415 | + "dom-walk": "^0.1.0" | |
2416 | + } | |
2417 | + }, | |
2418 | + "node_modules/minimatch": { | |
2419 | + "version": "3.1.2", | |
2420 | + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | |
2421 | + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | |
2422 | + "dependencies": { | |
2423 | + "brace-expansion": "^1.1.7" | |
2424 | + }, | |
2425 | + "engines": { | |
2426 | + "node": "*" | |
2427 | + } | |
2428 | + }, | |
2429 | + "node_modules/minimist": { | |
2430 | + "version": "1.2.8", | |
2431 | + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", | |
2432 | + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", | |
2433 | + "funding": { | |
2434 | + "url": "https://github.com/sponsors/ljharb" | |
2435 | + } | |
2436 | + }, | |
2437 | + "node_modules/ms": { | |
2438 | + "version": "2.1.2", | |
2439 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", | |
2440 | + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" | |
2441 | + }, | |
2442 | + "node_modules/nanoid": { | |
2443 | + "version": "3.3.6", | |
2444 | + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", | |
2445 | + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", | |
2446 | + "funding": [ | |
2447 | + { | |
2448 | + "type": "github", | |
2449 | + "url": "https://github.com/sponsors/ai" | |
2450 | + } | |
2451 | + ], | |
2452 | + "bin": { | |
2453 | + "nanoid": "bin/nanoid.cjs" | |
2454 | + }, | |
2455 | + "engines": { | |
2456 | + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" | |
2457 | + } | |
2458 | + }, | |
2459 | + "node_modules/needle": { | |
2460 | + "version": "3.2.0", | |
2461 | + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", | |
2462 | + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", | |
2463 | + "dev": true, | |
2464 | + "optional": true, | |
2465 | + "dependencies": { | |
2466 | + "debug": "^3.2.6", | |
2467 | + "iconv-lite": "^0.6.3", | |
2468 | + "sax": "^1.2.4" | |
2469 | + }, | |
2470 | + "bin": { | |
2471 | + "needle": "bin/needle" | |
2472 | + }, | |
2473 | + "engines": { | |
2474 | + "node": ">= 4.4.x" | |
2475 | + } | |
2476 | + }, | |
2477 | + "node_modules/needle/node_modules/debug": { | |
2478 | + "version": "3.2.7", | |
2479 | + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", | |
2480 | + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", | |
2481 | + "dev": true, | |
2482 | + "optional": true, | |
2483 | + "dependencies": { | |
2484 | + "ms": "^2.1.1" | |
2485 | + } | |
2486 | + }, | |
2487 | + "node_modules/needle/node_modules/iconv-lite": { | |
2488 | + "version": "0.6.3", | |
2489 | + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", | |
2490 | + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", | |
2491 | + "dev": true, | |
2492 | + "optional": true, | |
2493 | + "dependencies": { | |
2494 | + "safer-buffer": ">= 2.1.2 < 3.0.0" | |
2495 | + }, | |
2496 | + "engines": { | |
2497 | + "node": ">=0.10.0" | |
2498 | + } | |
2499 | + }, | |
2500 | + "node_modules/negotiator": { | |
2501 | + "version": "0.6.3", | |
2502 | + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", | |
2503 | + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", | |
2504 | + "engines": { | |
2505 | + "node": ">= 0.6" | |
2506 | + } | |
2507 | + }, | |
2508 | + "node_modules/neo-async": { | |
2509 | + "version": "2.6.2", | |
2510 | + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", | |
2511 | + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" | |
2512 | + }, | |
2513 | + "node_modules/new-line": { | |
2514 | + "version": "1.1.1", | |
2515 | + "resolved": "https://registry.npmjs.org/new-line/-/new-line-1.1.1.tgz", | |
2516 | + "integrity": "sha512-BHhU5J48wv56aU2DaYnR0brR7PDTaJOeZW/R1koEt03ygvmX/WDnsXsxAq4JLK15vJeP4HHQHBGCfg3npp7onQ==" | |
2517 | + }, | |
2518 | + "node_modules/node-releases": { | |
2519 | + "version": "2.0.13", | |
2520 | + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", | |
2521 | + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==" | |
2522 | + }, | |
2523 | + "node_modules/normalize-path": { | |
2524 | + "version": "3.0.0", | |
2525 | + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", | |
2526 | + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", | |
2527 | + "optional": true, | |
2528 | + "engines": { | |
2529 | + "node": ">=0.10.0" | |
2530 | + } | |
2531 | + }, | |
2532 | + "node_modules/object-inspect": { | |
2533 | + "version": "1.13.0", | |
2534 | + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.0.tgz", | |
2535 | + "integrity": "sha512-HQ4J+ic8hKrgIt3mqk6cVOVrW2ozL4KdvHlqpBv9vDYWx9ysAgENAdvy4FoGF+KFdhR7nQTNm5J0ctAeOwn+3g==", | |
2536 | + "funding": { | |
2537 | + "url": "https://github.com/sponsors/ljharb" | |
2538 | + } | |
2539 | + }, | |
2540 | + "node_modules/on-finished": { | |
2541 | + "version": "2.4.1", | |
2542 | + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", | |
2543 | + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", | |
2544 | + "dependencies": { | |
2545 | + "ee-first": "1.1.1" | |
2546 | + }, | |
2547 | + "engines": { | |
2548 | + "node": ">= 0.8" | |
2549 | + } | |
2550 | + }, | |
2551 | + "node_modules/once": { | |
2552 | + "version": "1.4.0", | |
2553 | + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", | |
2554 | + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", | |
2555 | + "dependencies": { | |
2556 | + "wrappy": "1" | |
2557 | + } | |
2558 | + }, | |
2559 | + "node_modules/p-limit": { | |
2560 | + "version": "2.3.0", | |
2561 | + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", | |
2562 | + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", | |
2563 | + "dependencies": { | |
2564 | + "p-try": "^2.0.0" | |
2565 | + }, | |
2566 | + "engines": { | |
2567 | + "node": ">=6" | |
2568 | + }, | |
2569 | + "funding": { | |
2570 | + "url": "https://github.com/sponsors/sindresorhus" | |
2571 | + } | |
2572 | + }, | |
2573 | + "node_modules/p-locate": { | |
2574 | + "version": "4.1.0", | |
2575 | + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", | |
2576 | + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", | |
2577 | + "dependencies": { | |
2578 | + "p-limit": "^2.2.0" | |
2579 | + }, | |
2580 | + "engines": { | |
2581 | + "node": ">=8" | |
2582 | + } | |
2583 | + }, | |
2584 | + "node_modules/p-try": { | |
2585 | + "version": "2.2.0", | |
2586 | + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", | |
2587 | + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", | |
2588 | + "engines": { | |
2589 | + "node": ">=6" | |
2590 | + } | |
2591 | + }, | |
2592 | + "node_modules/packet-reader": { | |
2593 | + "version": "1.0.0", | |
2594 | + "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", | |
2595 | + "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" | |
2596 | + }, | |
2597 | + "node_modules/parse-node-version": { | |
2598 | + "version": "1.0.1", | |
2599 | + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", | |
2600 | + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", | |
2601 | + "dev": true, | |
2602 | + "engines": { | |
2603 | + "node": ">= 0.10" | |
2604 | + } | |
2605 | + }, | |
2606 | + "node_modules/parseurl": { | |
2607 | + "version": "1.3.3", | |
2608 | + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", | |
2609 | + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", | |
2610 | + "engines": { | |
2611 | + "node": ">= 0.8" | |
2612 | + } | |
2613 | + }, | |
2614 | + "node_modules/path-exists": { | |
2615 | + "version": "4.0.0", | |
2616 | + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", | |
2617 | + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", | |
2618 | + "engines": { | |
2619 | + "node": ">=8" | |
2620 | + } | |
2621 | + }, | |
2622 | + "node_modules/path-is-absolute": { | |
2623 | + "version": "1.0.1", | |
2624 | + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | |
2625 | + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", | |
2626 | + "engines": { | |
2627 | + "node": ">=0.10.0" | |
2628 | + } | |
2629 | + }, | |
2630 | + "node_modules/path-key": { | |
2631 | + "version": "3.1.1", | |
2632 | + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", | |
2633 | + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", | |
2634 | + "engines": { | |
2635 | + "node": ">=8" | |
2636 | + } | |
2637 | + }, | |
2638 | + "node_modules/path-parse": { | |
2639 | + "version": "1.0.7", | |
2640 | + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", | |
2641 | + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" | |
2642 | + }, | |
2643 | + "node_modules/path-to-regexp": { | |
2644 | + "version": "0.1.7", | |
2645 | + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", | |
2646 | + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" | |
2647 | + }, | |
2648 | + "node_modules/pg": { | |
2649 | + "version": "8.8.0", | |
2650 | + "resolved": "https://registry.npmjs.org/pg/-/pg-8.8.0.tgz", | |
2651 | + "integrity": "sha512-UXYN0ziKj+AeNNP7VDMwrehpACThH7LUl/p8TDFpEUuSejCUIwGSfxpHsPvtM6/WXFy6SU4E5RG4IJV/TZAGjw==", | |
2652 | + "dependencies": { | |
2653 | + "buffer-writer": "2.0.0", | |
2654 | + "packet-reader": "1.0.0", | |
2655 | + "pg-connection-string": "^2.5.0", | |
2656 | + "pg-pool": "^3.5.2", | |
2657 | + "pg-protocol": "^1.5.0", | |
2658 | + "pg-types": "^2.1.0", | |
2659 | + "pgpass": "1.x" | |
2660 | + }, | |
2661 | + "engines": { | |
2662 | + "node": ">= 8.0.0" | |
2663 | + }, | |
2664 | + "peerDependencies": { | |
2665 | + "pg-native": ">=3.0.1" | |
2666 | + }, | |
2667 | + "peerDependenciesMeta": { | |
2668 | + "pg-native": { | |
2669 | + "optional": true | |
2670 | + } | |
2671 | + } | |
2672 | + }, | |
2673 | + "node_modules/pg-connection-string": { | |
2674 | + "version": "2.6.2", | |
2675 | + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.6.2.tgz", | |
2676 | + "integrity": "sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==" | |
2677 | + }, | |
2678 | + "node_modules/pg-int8": { | |
2679 | + "version": "1.0.1", | |
2680 | + "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", | |
2681 | + "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==", | |
2682 | + "engines": { | |
2683 | + "node": ">=4.0.0" | |
2684 | + } | |
2685 | + }, | |
2686 | + "node_modules/pg-pool": { | |
2687 | + "version": "3.6.1", | |
2688 | + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.6.1.tgz", | |
2689 | + "integrity": "sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==", | |
2690 | + "peerDependencies": { | |
2691 | + "pg": ">=8.0" | |
2692 | + } | |
2693 | + }, | |
2694 | + "node_modules/pg-protocol": { | |
2695 | + "version": "1.6.0", | |
2696 | + "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.6.0.tgz", | |
2697 | + "integrity": "sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==" | |
2698 | + }, | |
2699 | + "node_modules/pg-types": { | |
2700 | + "version": "2.2.0", | |
2701 | + "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz", | |
2702 | + "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==", | |
2703 | + "dependencies": { | |
2704 | + "pg-int8": "1.0.1", | |
2705 | + "postgres-array": "~2.0.0", | |
2706 | + "postgres-bytea": "~1.0.0", | |
2707 | + "postgres-date": "~1.0.4", | |
2708 | + "postgres-interval": "^1.1.0" | |
2709 | + }, | |
2710 | + "engines": { | |
2711 | + "node": ">=4" | |
2712 | + } | |
2713 | + }, | |
2714 | + "node_modules/pgpass": { | |
2715 | + "version": "1.0.5", | |
2716 | + "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz", | |
2717 | + "integrity": "sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==", | |
2718 | + "dependencies": { | |
2719 | + "split2": "^4.1.0" | |
2720 | + } | |
2721 | + }, | |
2722 | + "node_modules/picocolors": { | |
2723 | + "version": "1.0.0", | |
2724 | + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", | |
2725 | + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" | |
2726 | + }, | |
2727 | + "node_modules/picomatch": { | |
2728 | + "version": "2.3.1", | |
2729 | + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", | |
2730 | + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", | |
2731 | + "optional": true, | |
2732 | + "engines": { | |
2733 | + "node": ">=8.6" | |
2734 | + }, | |
2735 | + "funding": { | |
2736 | + "url": "https://github.com/sponsors/jonschlinkert" | |
2737 | + } | |
2738 | + }, | |
2739 | + "node_modules/pify": { | |
2740 | + "version": "4.0.1", | |
2741 | + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", | |
2742 | + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", | |
2743 | + "engines": { | |
2744 | + "node": ">=6" | |
2745 | + } | |
2746 | + }, | |
2747 | + "node_modules/pkg-dir": { | |
2748 | + "version": "4.2.0", | |
2749 | + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", | |
2750 | + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", | |
2751 | + "dependencies": { | |
2752 | + "find-up": "^4.0.0" | |
2753 | + }, | |
2754 | + "engines": { | |
2755 | + "node": ">=8" | |
2756 | + } | |
2757 | + }, | |
2758 | + "node_modules/postcss": { | |
2759 | + "version": "8.4.31", | |
2760 | + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", | |
2761 | + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", | |
2762 | + "funding": [ | |
2763 | + { | |
2764 | + "type": "opencollective", | |
2765 | + "url": "https://opencollective.com/postcss/" | |
2766 | + }, | |
2767 | + { | |
2768 | + "type": "tidelift", | |
2769 | + "url": "https://tidelift.com/funding/github/npm/postcss" | |
2770 | + }, | |
2771 | + { | |
2772 | + "type": "github", | |
2773 | + "url": "https://github.com/sponsors/ai" | |
2774 | + } | |
2775 | + ], | |
2776 | + "dependencies": { | |
2777 | + "nanoid": "^3.3.6", | |
2778 | + "picocolors": "^1.0.0", | |
2779 | + "source-map-js": "^1.0.2" | |
2780 | + }, | |
2781 | + "engines": { | |
2782 | + "node": "^10 || ^12 || >=14" | |
2783 | + } | |
2784 | + }, | |
2785 | + "node_modules/postcss-modules-extract-imports": { | |
2786 | + "version": "3.0.0", | |
2787 | + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", | |
2788 | + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", | |
2789 | + "engines": { | |
2790 | + "node": "^10 || ^12 || >= 14" | |
2791 | + }, | |
2792 | + "peerDependencies": { | |
2793 | + "postcss": "^8.1.0" | |
2794 | + } | |
2795 | + }, | |
2796 | + "node_modules/postcss-modules-local-by-default": { | |
2797 | + "version": "4.0.3", | |
2798 | + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz", | |
2799 | + "integrity": "sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==", | |
2800 | + "dependencies": { | |
2801 | + "icss-utils": "^5.0.0", | |
2802 | + "postcss-selector-parser": "^6.0.2", | |
2803 | + "postcss-value-parser": "^4.1.0" | |
2804 | + }, | |
2805 | + "engines": { | |
2806 | + "node": "^10 || ^12 || >= 14" | |
2807 | + }, | |
2808 | + "peerDependencies": { | |
2809 | + "postcss": "^8.1.0" | |
2810 | + } | |
2811 | + }, | |
2812 | + "node_modules/postcss-modules-scope": { | |
2813 | + "version": "3.0.0", | |
2814 | + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", | |
2815 | + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", | |
2816 | + "dependencies": { | |
2817 | + "postcss-selector-parser": "^6.0.4" | |
2818 | + }, | |
2819 | + "engines": { | |
2820 | + "node": "^10 || ^12 || >= 14" | |
2821 | + }, | |
2822 | + "peerDependencies": { | |
2823 | + "postcss": "^8.1.0" | |
2824 | + } | |
2825 | + }, | |
2826 | + "node_modules/postcss-modules-values": { | |
2827 | + "version": "4.0.0", | |
2828 | + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", | |
2829 | + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", | |
2830 | + "dependencies": { | |
2831 | + "icss-utils": "^5.0.0" | |
2832 | + }, | |
2833 | + "engines": { | |
2834 | + "node": "^10 || ^12 || >= 14" | |
2835 | + }, | |
2836 | + "peerDependencies": { | |
2837 | + "postcss": "^8.1.0" | |
2838 | + } | |
2839 | + }, | |
2840 | + "node_modules/postcss-selector-parser": { | |
2841 | + "version": "6.0.13", | |
2842 | + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", | |
2843 | + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", | |
2844 | + "dependencies": { | |
2845 | + "cssesc": "^3.0.0", | |
2846 | + "util-deprecate": "^1.0.2" | |
2847 | + }, | |
2848 | + "engines": { | |
2849 | + "node": ">=4" | |
2850 | + } | |
2851 | + }, | |
2852 | + "node_modules/postcss-value-parser": { | |
2853 | + "version": "4.2.0", | |
2854 | + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", | |
2855 | + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" | |
2856 | + }, | |
2857 | + "node_modules/postgres-array": { | |
2858 | + "version": "2.0.0", | |
2859 | + "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", | |
2860 | + "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==", | |
2861 | + "engines": { | |
2862 | + "node": ">=4" | |
2863 | + } | |
2864 | + }, | |
2865 | + "node_modules/postgres-bytea": { | |
2866 | + "version": "1.0.0", | |
2867 | + "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz", | |
2868 | + "integrity": "sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==", | |
2869 | + "engines": { | |
2870 | + "node": ">=0.10.0" | |
2871 | + } | |
2872 | + }, | |
2873 | + "node_modules/postgres-date": { | |
2874 | + "version": "1.0.7", | |
2875 | + "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz", | |
2876 | + "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==", | |
2877 | + "engines": { | |
2878 | + "node": ">=0.10.0" | |
2879 | + } | |
2880 | + }, | |
2881 | + "node_modules/postgres-interval": { | |
2882 | + "version": "1.2.0", | |
2883 | + "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz", | |
2884 | + "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==", | |
2885 | + "dependencies": { | |
2886 | + "xtend": "^4.0.0" | |
2887 | + }, | |
2888 | + "engines": { | |
2889 | + "node": ">=0.10.0" | |
2890 | + } | |
2891 | + }, | |
2892 | + "node_modules/process": { | |
2893 | + "version": "0.11.10", | |
2894 | + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", | |
2895 | + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", | |
2896 | + "engines": { | |
2897 | + "node": ">= 0.6.0" | |
2898 | + } | |
2899 | + }, | |
2900 | + "node_modules/proxy-addr": { | |
2901 | + "version": "2.0.7", | |
2902 | + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", | |
2903 | + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", | |
2904 | + "dependencies": { | |
2905 | + "forwarded": "0.2.0", | |
2906 | + "ipaddr.js": "1.9.1" | |
2907 | + }, | |
2908 | + "engines": { | |
2909 | + "node": ">= 0.10" | |
2910 | + } | |
2911 | + }, | |
2912 | + "node_modules/proxy-from-env": { | |
2913 | + "version": "1.1.0", | |
2914 | + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", | |
2915 | + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" | |
2916 | + }, | |
2917 | + "node_modules/prr": { | |
2918 | + "version": "1.0.1", | |
2919 | + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", | |
2920 | + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", | |
2921 | + "dev": true, | |
2922 | + "optional": true | |
2923 | + }, | |
2924 | + "node_modules/punycode": { | |
2925 | + "version": "2.3.0", | |
2926 | + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", | |
2927 | + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", | |
2928 | + "engines": { | |
2929 | + "node": ">=6" | |
2930 | + } | |
2931 | + }, | |
2932 | + "node_modules/qs": { | |
2933 | + "version": "6.10.3", | |
2934 | + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", | |
2935 | + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", | |
2936 | + "dependencies": { | |
2937 | + "side-channel": "^1.0.4" | |
2938 | + }, | |
2939 | + "engines": { | |
2940 | + "node": ">=0.6" | |
2941 | + }, | |
2942 | + "funding": { | |
2943 | + "url": "https://github.com/sponsors/ljharb" | |
2944 | + } | |
2945 | + }, | |
2946 | + "node_modules/randombytes": { | |
2947 | + "version": "2.1.0", | |
2948 | + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", | |
2949 | + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", | |
2950 | + "dependencies": { | |
2951 | + "safe-buffer": "^5.1.0" | |
2952 | + } | |
2953 | + }, | |
2954 | + "node_modules/range-parser": { | |
2955 | + "version": "1.2.1", | |
2956 | + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", | |
2957 | + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", | |
2958 | + "engines": { | |
2959 | + "node": ">= 0.6" | |
2960 | + } | |
2961 | + }, | |
2962 | + "node_modules/raw-body": { | |
2963 | + "version": "2.5.1", | |
2964 | + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", | |
2965 | + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", | |
2966 | + "dependencies": { | |
2967 | + "bytes": "3.1.2", | |
2968 | + "http-errors": "2.0.0", | |
2969 | + "iconv-lite": "0.4.24", | |
2970 | + "unpipe": "1.0.0" | |
2971 | + }, | |
2972 | + "engines": { | |
2973 | + "node": ">= 0.8" | |
2974 | + } | |
2975 | + }, | |
2976 | + "node_modules/readdirp": { | |
2977 | + "version": "3.6.0", | |
2978 | + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", | |
2979 | + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", | |
2980 | + "optional": true, | |
2981 | + "dependencies": { | |
2982 | + "picomatch": "^2.2.1" | |
2983 | + }, | |
2984 | + "engines": { | |
2985 | + "node": ">=8.10.0" | |
2986 | + } | |
2987 | + }, | |
2988 | + "node_modules/rechoir": { | |
2989 | + "version": "0.7.1", | |
2990 | + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", | |
2991 | + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", | |
2992 | + "dependencies": { | |
2993 | + "resolve": "^1.9.0" | |
2994 | + }, | |
2995 | + "engines": { | |
2996 | + "node": ">= 0.10" | |
2997 | + } | |
2998 | + }, | |
2999 | + "node_modules/regenerator-runtime": { | |
3000 | + "version": "0.12.1", | |
3001 | + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", | |
3002 | + "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" | |
3003 | + }, | |
3004 | + "node_modules/resolve": { | |
3005 | + "version": "1.22.8", | |
3006 | + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", | |
3007 | + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", | |
3008 | + "dependencies": { | |
3009 | + "is-core-module": "^2.13.0", | |
3010 | + "path-parse": "^1.0.7", | |
3011 | + "supports-preserve-symlinks-flag": "^1.0.0" | |
3012 | + }, | |
3013 | + "bin": { | |
3014 | + "resolve": "bin/resolve" | |
3015 | + }, | |
3016 | + "funding": { | |
3017 | + "url": "https://github.com/sponsors/ljharb" | |
3018 | + } | |
3019 | + }, | |
3020 | + "node_modules/resolve-cwd": { | |
3021 | + "version": "3.0.0", | |
3022 | + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", | |
3023 | + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", | |
3024 | + "dependencies": { | |
3025 | + "resolve-from": "^5.0.0" | |
3026 | + }, | |
3027 | + "engines": { | |
3028 | + "node": ">=8" | |
3029 | + } | |
3030 | + }, | |
3031 | + "node_modules/resolve-from": { | |
3032 | + "version": "5.0.0", | |
3033 | + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", | |
3034 | + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", | |
3035 | + "engines": { | |
3036 | + "node": ">=8" | |
3037 | + } | |
3038 | + }, | |
3039 | + "node_modules/safe-buffer": { | |
3040 | + "version": "5.2.1", | |
3041 | + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", | |
3042 | + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", | |
3043 | + "funding": [ | |
3044 | + { | |
3045 | + "type": "github", | |
3046 | + "url": "https://github.com/sponsors/feross" | |
3047 | + }, | |
3048 | + { | |
3049 | + "type": "patreon", | |
3050 | + "url": "https://www.patreon.com/feross" | |
3051 | + }, | |
3052 | + { | |
3053 | + "type": "consulting", | |
3054 | + "url": "https://feross.org/support" | |
3055 | + } | |
3056 | + ] | |
3057 | + }, | |
3058 | + "node_modules/safer-buffer": { | |
3059 | + "version": "2.1.2", | |
3060 | + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", | |
3061 | + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" | |
3062 | + }, | |
3063 | + "node_modules/sax": { | |
3064 | + "version": "1.3.0", | |
3065 | + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", | |
3066 | + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", | |
3067 | + "dev": true, | |
3068 | + "optional": true | |
3069 | + }, | |
3070 | + "node_modules/schema-utils": { | |
3071 | + "version": "2.7.1", | |
3072 | + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", | |
3073 | + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", | |
3074 | + "dependencies": { | |
3075 | + "@types/json-schema": "^7.0.5", | |
3076 | + "ajv": "^6.12.4", | |
3077 | + "ajv-keywords": "^3.5.2" | |
3078 | + }, | |
3079 | + "engines": { | |
3080 | + "node": ">= 8.9.0" | |
3081 | + }, | |
3082 | + "funding": { | |
3083 | + "type": "opencollective", | |
3084 | + "url": "https://opencollective.com/webpack" | |
3085 | + } | |
3086 | + }, | |
3087 | + "node_modules/semver": { | |
3088 | + "version": "6.3.1", | |
3089 | + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", | |
3090 | + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", | |
3091 | + "bin": { | |
3092 | + "semver": "bin/semver.js" | |
3093 | + } | |
3094 | + }, | |
3095 | + "node_modules/send": { | |
3096 | + "version": "0.18.0", | |
3097 | + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", | |
3098 | + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", | |
3099 | + "dependencies": { | |
3100 | + "debug": "2.6.9", | |
3101 | + "depd": "2.0.0", | |
3102 | + "destroy": "1.2.0", | |
3103 | + "encodeurl": "~1.0.2", | |
3104 | + "escape-html": "~1.0.3", | |
3105 | + "etag": "~1.8.1", | |
3106 | + "fresh": "0.5.2", | |
3107 | + "http-errors": "2.0.0", | |
3108 | + "mime": "1.6.0", | |
3109 | + "ms": "2.1.3", | |
3110 | + "on-finished": "2.4.1", | |
3111 | + "range-parser": "~1.2.1", | |
3112 | + "statuses": "2.0.1" | |
3113 | + }, | |
3114 | + "engines": { | |
3115 | + "node": ">= 0.8.0" | |
3116 | + } | |
3117 | + }, | |
3118 | + "node_modules/send/node_modules/debug": { | |
3119 | + "version": "2.6.9", | |
3120 | + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | |
3121 | + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", | |
3122 | + "dependencies": { | |
3123 | + "ms": "2.0.0" | |
3124 | + } | |
3125 | + }, | |
3126 | + "node_modules/send/node_modules/debug/node_modules/ms": { | |
3127 | + "version": "2.0.0", | |
3128 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | |
3129 | + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" | |
3130 | + }, | |
3131 | + "node_modules/send/node_modules/ms": { | |
3132 | + "version": "2.1.3", | |
3133 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", | |
3134 | + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" | |
3135 | + }, | |
3136 | + "node_modules/serialize-javascript": { | |
3137 | + "version": "6.0.1", | |
3138 | + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", | |
3139 | + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", | |
3140 | + "dependencies": { | |
3141 | + "randombytes": "^2.1.0" | |
3142 | + } | |
3143 | + }, | |
3144 | + "node_modules/serve-static": { | |
3145 | + "version": "1.15.0", | |
3146 | + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", | |
3147 | + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", | |
3148 | + "dependencies": { | |
3149 | + "encodeurl": "~1.0.2", | |
3150 | + "escape-html": "~1.0.3", | |
3151 | + "parseurl": "~1.3.3", | |
3152 | + "send": "0.18.0" | |
3153 | + }, | |
3154 | + "engines": { | |
3155 | + "node": ">= 0.8.0" | |
3156 | + } | |
3157 | + }, | |
3158 | + "node_modules/setprototypeof": { | |
3159 | + "version": "1.2.0", | |
3160 | + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", | |
3161 | + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" | |
3162 | + }, | |
3163 | + "node_modules/shallow-clone": { | |
3164 | + "version": "3.0.1", | |
3165 | + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", | |
3166 | + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", | |
3167 | + "dependencies": { | |
3168 | + "kind-of": "^6.0.2" | |
3169 | + }, | |
3170 | + "engines": { | |
3171 | + "node": ">=8" | |
3172 | + } | |
3173 | + }, | |
3174 | + "node_modules/shebang-command": { | |
3175 | + "version": "2.0.0", | |
3176 | + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", | |
3177 | + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", | |
3178 | + "dependencies": { | |
3179 | + "shebang-regex": "^3.0.0" | |
3180 | + }, | |
3181 | + "engines": { | |
3182 | + "node": ">=8" | |
3183 | + } | |
3184 | + }, | |
3185 | + "node_modules/shebang-regex": { | |
3186 | + "version": "3.0.0", | |
3187 | + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", | |
3188 | + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", | |
3189 | + "engines": { | |
3190 | + "node": ">=8" | |
3191 | + } | |
3192 | + }, | |
3193 | + "node_modules/side-channel": { | |
3194 | + "version": "1.0.4", | |
3195 | + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", | |
3196 | + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", | |
3197 | + "dependencies": { | |
3198 | + "call-bind": "^1.0.0", | |
3199 | + "get-intrinsic": "^1.0.2", | |
3200 | + "object-inspect": "^1.9.0" | |
3201 | + }, | |
3202 | + "funding": { | |
3203 | + "url": "https://github.com/sponsors/ljharb" | |
3204 | + } | |
3205 | + }, | |
3206 | + "node_modules/slash": { | |
3207 | + "version": "2.0.0", | |
3208 | + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", | |
3209 | + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", | |
3210 | + "engines": { | |
3211 | + "node": ">=6" | |
3212 | + } | |
3213 | + }, | |
3214 | + "node_modules/slick-carousel": { | |
3215 | + "version": "1.8.1", | |
3216 | + "resolved": "https://registry.npmjs.org/slick-carousel/-/slick-carousel-1.8.1.tgz", | |
3217 | + "integrity": "sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==", | |
3218 | + "peerDependencies": { | |
3219 | + "jquery": ">=1.8.0" | |
3220 | + } | |
3221 | + }, | |
3222 | + "node_modules/source-map": { | |
3223 | + "version": "0.6.1", | |
3224 | + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", | |
3225 | + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", | |
3226 | + "engines": { | |
3227 | + "node": ">=0.10.0" | |
3228 | + } | |
3229 | + }, | |
3230 | + "node_modules/source-map-js": { | |
3231 | + "version": "1.0.2", | |
3232 | + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", | |
3233 | + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", | |
3234 | + "engines": { | |
3235 | + "node": ">=0.10.0" | |
3236 | + } | |
3237 | + }, | |
3238 | + "node_modules/source-map-support": { | |
3239 | + "version": "0.5.21", | |
3240 | + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", | |
3241 | + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", | |
3242 | + "dependencies": { | |
3243 | + "buffer-from": "^1.0.0", | |
3244 | + "source-map": "^0.6.0" | |
3245 | + } | |
3246 | + }, | |
3247 | + "node_modules/sourcemap-codec": { | |
3248 | + "version": "1.4.8", | |
3249 | + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", | |
3250 | + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", | |
3251 | + "deprecated": "Please use @jridgewell/sourcemap-codec instead" | |
3252 | + }, | |
3253 | + "node_modules/split2": { | |
3254 | + "version": "4.2.0", | |
3255 | + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", | |
3256 | + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", | |
3257 | + "engines": { | |
3258 | + "node": ">= 10.x" | |
3259 | + } | |
3260 | + }, | |
3261 | + "node_modules/statuses": { | |
3262 | + "version": "2.0.1", | |
3263 | + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", | |
3264 | + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", | |
3265 | + "engines": { | |
3266 | + "node": ">= 0.8" | |
3267 | + } | |
3268 | + }, | |
3269 | + "node_modules/supports-color": { | |
3270 | + "version": "5.5.0", | |
3271 | + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | |
3272 | + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | |
3273 | + "dependencies": { | |
3274 | + "has-flag": "^3.0.0" | |
3275 | + }, | |
3276 | + "engines": { | |
3277 | + "node": ">=4" | |
3278 | + } | |
3279 | + }, | |
3280 | + "node_modules/supports-preserve-symlinks-flag": { | |
3281 | + "version": "1.0.0", | |
3282 | + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", | |
3283 | + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", | |
3284 | + "engines": { | |
3285 | + "node": ">= 0.4" | |
3286 | + }, | |
3287 | + "funding": { | |
3288 | + "url": "https://github.com/sponsors/ljharb" | |
3289 | + } | |
3290 | + }, | |
3291 | + "node_modules/swiper": { | |
3292 | + "version": "10.3.1", | |
3293 | + "resolved": "https://registry.npmjs.org/swiper/-/swiper-10.3.1.tgz", | |
3294 | + "integrity": "sha512-24Wk3YUdZHxjc9faID97GTu6xnLNia+adMt6qMTZG/HgdSUt4fS0REsGUXJOgpTED0Amh/j+gRGQxsLayJUlBQ==", | |
3295 | + "funding": [ | |
3296 | + { | |
3297 | + "type": "patreon", | |
3298 | + "url": "https://www.patreon.com/swiperjs" | |
3299 | + }, | |
3300 | + { | |
3301 | + "type": "open_collective", | |
3302 | + "url": "http://opencollective.com/swiper" | |
3303 | + } | |
3304 | + ], | |
3305 | + "engines": { | |
3306 | + "node": ">= 4.7.0" | |
3307 | + } | |
3308 | + }, | |
3309 | + "node_modules/tapable": { | |
3310 | + "version": "2.2.1", | |
3311 | + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", | |
3312 | + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", | |
3313 | + "engines": { | |
3314 | + "node": ">=6" | |
3315 | + } | |
3316 | + }, | |
3317 | + "node_modules/terser": { | |
3318 | + "version": "5.22.0", | |
3319 | + "resolved": "https://registry.npmjs.org/terser/-/terser-5.22.0.tgz", | |
3320 | + "integrity": "sha512-hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw==", | |
3321 | + "dependencies": { | |
3322 | + "@jridgewell/source-map": "^0.3.3", | |
3323 | + "acorn": "^8.8.2", | |
3324 | + "commander": "^2.20.0", | |
3325 | + "source-map-support": "~0.5.20" | |
3326 | + }, | |
3327 | + "bin": { | |
3328 | + "terser": "bin/terser" | |
3329 | + }, | |
3330 | + "engines": { | |
3331 | + "node": ">=10" | |
3332 | + } | |
3333 | + }, | |
3334 | + "node_modules/terser-webpack-plugin": { | |
3335 | + "version": "5.3.9", | |
3336 | + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", | |
3337 | + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", | |
3338 | + "dependencies": { | |
3339 | + "@jridgewell/trace-mapping": "^0.3.17", | |
3340 | + "jest-worker": "^27.4.5", | |
3341 | + "schema-utils": "^3.1.1", | |
3342 | + "serialize-javascript": "^6.0.1", | |
3343 | + "terser": "^5.16.8" | |
3344 | + }, | |
3345 | + "engines": { | |
3346 | + "node": ">= 10.13.0" | |
3347 | + }, | |
3348 | + "funding": { | |
3349 | + "type": "opencollective", | |
3350 | + "url": "https://opencollective.com/webpack" | |
3351 | + }, | |
3352 | + "peerDependencies": { | |
3353 | + "webpack": "^5.1.0" | |
3354 | + }, | |
3355 | + "peerDependenciesMeta": { | |
3356 | + "@swc/core": { | |
3357 | + "optional": true | |
3358 | + }, | |
3359 | + "esbuild": { | |
3360 | + "optional": true | |
3361 | + }, | |
3362 | + "uglify-js": { | |
3363 | + "optional": true | |
3364 | + } | |
3365 | + } | |
3366 | + }, | |
3367 | + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { | |
3368 | + "version": "3.3.0", | |
3369 | + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", | |
3370 | + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", | |
3371 | + "dependencies": { | |
3372 | + "@types/json-schema": "^7.0.8", | |
3373 | + "ajv": "^6.12.5", | |
3374 | + "ajv-keywords": "^3.5.2" | |
3375 | + }, | |
3376 | + "engines": { | |
3377 | + "node": ">= 10.13.0" | |
3378 | + }, | |
3379 | + "funding": { | |
3380 | + "type": "opencollective", | |
3381 | + "url": "https://opencollective.com/webpack" | |
3382 | + } | |
3383 | + }, | |
3384 | + "node_modules/terser/node_modules/commander": { | |
3385 | + "version": "2.20.3", | |
3386 | + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", | |
3387 | + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" | |
3388 | + }, | |
3389 | + "node_modules/to-fast-properties": { | |
3390 | + "version": "2.0.0", | |
3391 | + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", | |
3392 | + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", | |
3393 | + "engines": { | |
3394 | + "node": ">=4" | |
3395 | + } | |
3396 | + }, | |
3397 | + "node_modules/to-regex-range": { | |
3398 | + "version": "5.0.1", | |
3399 | + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", | |
3400 | + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", | |
3401 | + "optional": true, | |
3402 | + "dependencies": { | |
3403 | + "is-number": "^7.0.0" | |
3404 | + }, | |
3405 | + "engines": { | |
3406 | + "node": ">=8.0" | |
3407 | + } | |
3408 | + }, | |
3409 | + "node_modules/toidentifier": { | |
3410 | + "version": "1.0.1", | |
3411 | + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", | |
3412 | + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", | |
3413 | + "engines": { | |
3414 | + "node": ">=0.6" | |
3415 | + } | |
3416 | + }, | |
3417 | + "node_modules/tslib": { | |
3418 | + "version": "2.6.2", | |
3419 | + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", | |
3420 | + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", | |
3421 | + "dev": true | |
3422 | + }, | |
3423 | + "node_modules/type-is": { | |
3424 | + "version": "1.6.18", | |
3425 | + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", | |
3426 | + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", | |
3427 | + "dependencies": { | |
3428 | + "media-typer": "0.3.0", | |
3429 | + "mime-types": "~2.1.24" | |
3430 | + }, | |
3431 | + "engines": { | |
3432 | + "node": ">= 0.6" | |
3433 | + } | |
3434 | + }, | |
3435 | + "node_modules/undici-types": { | |
3436 | + "version": "5.25.3", | |
3437 | + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz", | |
3438 | + "integrity": "sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==" | |
3439 | + }, | |
3440 | + "node_modules/unpipe": { | |
3441 | + "version": "1.0.0", | |
3442 | + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", | |
3443 | + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", | |
3444 | + "engines": { | |
3445 | + "node": ">= 0.8" | |
3446 | + } | |
3447 | + }, | |
3448 | + "node_modules/update-browserslist-db": { | |
3449 | + "version": "1.0.13", | |
3450 | + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", | |
3451 | + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", | |
3452 | + "funding": [ | |
3453 | + { | |
3454 | + "type": "opencollective", | |
3455 | + "url": "https://opencollective.com/browserslist" | |
3456 | + }, | |
3457 | + { | |
3458 | + "type": "tidelift", | |
3459 | + "url": "https://tidelift.com/funding/github/npm/browserslist" | |
3460 | + }, | |
3461 | + { | |
3462 | + "type": "github", | |
3463 | + "url": "https://github.com/sponsors/ai" | |
3464 | + } | |
3465 | + ], | |
3466 | + "dependencies": { | |
3467 | + "escalade": "^3.1.1", | |
3468 | + "picocolors": "^1.0.0" | |
3469 | + }, | |
3470 | + "bin": { | |
3471 | + "update-browserslist-db": "cli.js" | |
3472 | + }, | |
3473 | + "peerDependencies": { | |
3474 | + "browserslist": ">= 4.21.0" | |
3475 | + } | |
3476 | + }, | |
3477 | + "node_modules/uri-js": { | |
3478 | + "version": "4.4.1", | |
3479 | + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", | |
3480 | + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", | |
3481 | + "dependencies": { | |
3482 | + "punycode": "^2.1.0" | |
3483 | + } | |
3484 | + }, | |
3485 | + "node_modules/url-loader": { | |
3486 | + "version": "4.1.1", | |
3487 | + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", | |
3488 | + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", | |
3489 | + "dependencies": { | |
3490 | + "loader-utils": "^2.0.0", | |
3491 | + "mime-types": "^2.1.27", | |
3492 | + "schema-utils": "^3.0.0" | |
3493 | + }, | |
3494 | + "engines": { | |
3495 | + "node": ">= 10.13.0" | |
3496 | + }, | |
3497 | + "funding": { | |
3498 | + "type": "opencollective", | |
3499 | + "url": "https://opencollective.com/webpack" | |
3500 | + }, | |
3501 | + "peerDependencies": { | |
3502 | + "file-loader": "*", | |
3503 | + "webpack": "^4.0.0 || ^5.0.0" | |
3504 | + }, | |
3505 | + "peerDependenciesMeta": { | |
3506 | + "file-loader": { | |
3507 | + "optional": true | |
3508 | + } | |
3509 | + } | |
3510 | + }, | |
3511 | + "node_modules/url-loader/node_modules/schema-utils": { | |
3512 | + "version": "3.3.0", | |
3513 | + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", | |
3514 | + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", | |
3515 | + "dependencies": { | |
3516 | + "@types/json-schema": "^7.0.8", | |
3517 | + "ajv": "^6.12.5", | |
3518 | + "ajv-keywords": "^3.5.2" | |
3519 | + }, | |
3520 | + "engines": { | |
3521 | + "node": ">= 10.13.0" | |
3522 | + }, | |
3523 | + "funding": { | |
3524 | + "type": "opencollective", | |
3525 | + "url": "https://opencollective.com/webpack" | |
3526 | + } | |
3527 | + }, | |
3528 | + "node_modules/util-deprecate": { | |
3529 | + "version": "1.0.2", | |
3530 | + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", | |
3531 | + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" | |
3532 | + }, | |
3533 | + "node_modules/utils-merge": { | |
3534 | + "version": "1.0.1", | |
3535 | + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", | |
3536 | + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", | |
3537 | + "engines": { | |
3538 | + "node": ">= 0.4.0" | |
3539 | + } | |
3540 | + }, | |
3541 | + "node_modules/vary": { | |
3542 | + "version": "1.1.2", | |
3543 | + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", | |
3544 | + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", | |
3545 | + "engines": { | |
3546 | + "node": ">= 0.8" | |
3547 | + } | |
3548 | + }, | |
3549 | + "node_modules/vue": { | |
3550 | + "version": "3.2.40", | |
3551 | + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.40.tgz", | |
3552 | + "integrity": "sha512-1mGHulzUbl2Nk3pfvI5aXYYyJUs1nm4kyvuz38u4xlQkLUn1i2R7nDbI4TufECmY8v1qNBHYy62bCaM+3cHP2A==", | |
3553 | + "dependencies": { | |
3554 | + "@vue/compiler-dom": "3.2.40", | |
3555 | + "@vue/compiler-sfc": "3.2.40", | |
3556 | + "@vue/runtime-dom": "3.2.40", | |
3557 | + "@vue/server-renderer": "3.2.40", | |
3558 | + "@vue/shared": "3.2.40" | |
3559 | + } | |
3560 | + }, | |
3561 | + "node_modules/vue-carousel": { | |
3562 | + "version": "0.18.0", | |
3563 | + "resolved": "https://registry.npmjs.org/vue-carousel/-/vue-carousel-0.18.0.tgz", | |
3564 | + "integrity": "sha512-a2zxh7QJioDxNMguqcuJ7TPbfgK5bGDaAXIia7NWxPAWsEvNE4ZtHgsGu40L5Aha4uyjmNKXvleB14QAXFoKig==", | |
3565 | + "dependencies": { | |
3566 | + "global": "^4.3.2", | |
3567 | + "regenerator-runtime": "^0.12.1", | |
3568 | + "vue": "^2.5.17" | |
3569 | + } | |
3570 | + }, | |
3571 | + "node_modules/vue-carousel/node_modules/@vue/compiler-sfc": { | |
3572 | + "version": "2.7.14", | |
3573 | + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", | |
3574 | + "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", | |
3575 | + "dependencies": { | |
3576 | + "@babel/parser": "^7.18.4", | |
3577 | + "postcss": "^8.4.14", | |
3578 | + "source-map": "^0.6.1" | |
3579 | + } | |
3580 | + }, | |
3581 | + "node_modules/vue-carousel/node_modules/csstype": { | |
3582 | + "version": "3.1.2", | |
3583 | + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", | |
3584 | + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" | |
3585 | + }, | |
3586 | + "node_modules/vue-carousel/node_modules/vue": { | |
3587 | + "version": "2.7.14", | |
3588 | + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", | |
3589 | + "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", | |
3590 | + "dependencies": { | |
3591 | + "@vue/compiler-sfc": "2.7.14", | |
3592 | + "csstype": "^3.1.0" | |
3593 | + } | |
3594 | + }, | |
3595 | + "node_modules/vue-loader": { | |
3596 | + "version": "17.3.0", | |
3597 | + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-17.3.0.tgz", | |
3598 | + "integrity": "sha512-VUURABiN0TIUz0yvJJ/V/rZjGUh10JZtD+IDI5bXFslzFi9mV6ebKkPzoqiSi8e0vh8Ip7JHJx+I0AzAG0KsCA==", | |
3599 | + "dependencies": { | |
3600 | + "chalk": "^4.1.0", | |
3601 | + "hash-sum": "^2.0.0", | |
3602 | + "watchpack": "^2.4.0" | |
3603 | + }, | |
3604 | + "peerDependencies": { | |
3605 | + "webpack": "^4.1.0 || ^5.0.0-0" | |
3606 | + }, | |
3607 | + "peerDependenciesMeta": { | |
3608 | + "@vue/compiler-sfc": { | |
3609 | + "optional": true | |
3610 | + }, | |
3611 | + "vue": { | |
3612 | + "optional": true | |
3613 | + } | |
3614 | + } | |
3615 | + }, | |
3616 | + "node_modules/vue-loader/node_modules/ansi-styles": { | |
3617 | + "version": "4.3.0", | |
3618 | + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", | |
3619 | + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", | |
3620 | + "dependencies": { | |
3621 | + "color-convert": "^2.0.1" | |
3622 | + }, | |
3623 | + "engines": { | |
3624 | + "node": ">=8" | |
3625 | + }, | |
3626 | + "funding": { | |
3627 | + "url": "https://github.com/chalk/ansi-styles?sponsor=1" | |
3628 | + } | |
3629 | + }, | |
3630 | + "node_modules/vue-loader/node_modules/chalk": { | |
3631 | + "version": "4.1.2", | |
3632 | + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", | |
3633 | + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", | |
3634 | + "dependencies": { | |
3635 | + "ansi-styles": "^4.1.0", | |
3636 | + "supports-color": "^7.1.0" | |
3637 | + }, | |
3638 | + "engines": { | |
3639 | + "node": ">=10" | |
3640 | + }, | |
3641 | + "funding": { | |
3642 | + "url": "https://github.com/chalk/chalk?sponsor=1" | |
3643 | + } | |
3644 | + }, | |
3645 | + "node_modules/vue-loader/node_modules/color-convert": { | |
3646 | + "version": "2.0.1", | |
3647 | + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", | |
3648 | + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", | |
3649 | + "dependencies": { | |
3650 | + "color-name": "~1.1.4" | |
3651 | + }, | |
3652 | + "engines": { | |
3653 | + "node": ">=7.0.0" | |
3654 | + } | |
3655 | + }, | |
3656 | + "node_modules/vue-loader/node_modules/color-name": { | |
3657 | + "version": "1.1.4", | |
3658 | + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", | |
3659 | + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" | |
3660 | + }, | |
3661 | + "node_modules/vue-loader/node_modules/has-flag": { | |
3662 | + "version": "4.0.0", | |
3663 | + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", | |
3664 | + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", | |
3665 | + "engines": { | |
3666 | + "node": ">=8" | |
3667 | + } | |
3668 | + }, | |
3669 | + "node_modules/vue-loader/node_modules/supports-color": { | |
3670 | + "version": "7.2.0", | |
3671 | + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", | |
3672 | + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", | |
3673 | + "dependencies": { | |
3674 | + "has-flag": "^4.0.0" | |
3675 | + }, | |
3676 | + "engines": { | |
3677 | + "node": ">=8" | |
3678 | + } | |
3679 | + }, | |
3680 | + "node_modules/vue-router": { | |
3681 | + "version": "4.1.5", | |
3682 | + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.5.tgz", | |
3683 | + "integrity": "sha512-IsvoF5D2GQ/EGTs/Th4NQms9gd2NSqV+yylxIyp/OYp8xOwxmU8Kj/74E9DTSYAyH5LX7idVUngN3JSj1X4xcQ==", | |
3684 | + "dependencies": { | |
3685 | + "@vue/devtools-api": "^6.1.4" | |
3686 | + }, | |
3687 | + "funding": { | |
3688 | + "url": "https://github.com/sponsors/posva" | |
3689 | + }, | |
3690 | + "peerDependencies": { | |
3691 | + "vue": "^3.2.0" | |
3692 | + } | |
3693 | + }, | |
3694 | + "node_modules/vue-slick": { | |
3695 | + "version": "1.2.0", | |
3696 | + "resolved": "https://registry.npmjs.org/vue-slick/-/vue-slick-1.2.0.tgz", | |
3697 | + "integrity": "sha512-1hjZsKyBbnOQPwyoJqAmnEs7d24CHACC+R0fKOaOsycB2g7K1JIYqsLpK0N2SRLcJBhfno9YrOYfEPiPZVCjCA==", | |
3698 | + "dependencies": { | |
3699 | + "slick-carousel": "^1.8.1" | |
3700 | + }, | |
3701 | + "peerDependencies": { | |
3702 | + "jquery": "*" | |
3703 | + } | |
3704 | + }, | |
3705 | + "node_modules/vue-style-loader": { | |
3706 | + "version": "4.1.3", | |
3707 | + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", | |
3708 | + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", | |
3709 | + "dependencies": { | |
3710 | + "hash-sum": "^1.0.2", | |
3711 | + "loader-utils": "^1.0.2" | |
3712 | + } | |
3713 | + }, | |
3714 | + "node_modules/vue-style-loader/node_modules/hash-sum": { | |
3715 | + "version": "1.0.2", | |
3716 | + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", | |
3717 | + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==" | |
3718 | + }, | |
3719 | + "node_modules/vue-style-loader/node_modules/json5": { | |
3720 | + "version": "1.0.2", | |
3721 | + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", | |
3722 | + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", | |
3723 | + "dependencies": { | |
3724 | + "minimist": "^1.2.0" | |
3725 | + }, | |
3726 | + "bin": { | |
3727 | + "json5": "lib/cli.js" | |
3728 | + } | |
3729 | + }, | |
3730 | + "node_modules/vue-style-loader/node_modules/loader-utils": { | |
3731 | + "version": "1.4.2", | |
3732 | + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", | |
3733 | + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", | |
3734 | + "dependencies": { | |
3735 | + "big.js": "^5.2.2", | |
3736 | + "emojis-list": "^3.0.0", | |
3737 | + "json5": "^1.0.1" | |
3738 | + }, | |
3739 | + "engines": { | |
3740 | + "node": ">=4.0.0" | |
3741 | + } | |
3742 | + }, | |
3743 | + "node_modules/vue3-sfc-loader": { | |
3744 | + "version": "0.8.4", | |
3745 | + "resolved": "https://registry.npmjs.org/vue3-sfc-loader/-/vue3-sfc-loader-0.8.4.tgz", | |
3746 | + "integrity": "sha512-eziaIrk/N9f9OCpyFEkR6vMsZUHcF5mQslXjffwcb5Iq6EuU74QrlpBeJqA04MvAGT7f5O8la2v9k3NtQnJb3Q==" | |
3747 | + }, | |
3748 | + "node_modules/vueperslides": { | |
3749 | + "version": "3.5.1", | |
3750 | + "resolved": "https://registry.npmjs.org/vueperslides/-/vueperslides-3.5.1.tgz", | |
3751 | + "integrity": "sha512-g/Lauv1svlSaERzLNeys0oeLmpDFiXkIa+lxg+lJma6m6wXqJKzKKVIi8Kvc95XPnl42n7PYYJyr0+FMV6WZGw==", | |
3752 | + "funding": { | |
3753 | + "url": "https://github.com/sponsors/antoniandre" | |
3754 | + }, | |
3755 | + "peerDependencies": { | |
3756 | + "vue": "^2.6.14 || ^3.2.0" | |
3757 | + } | |
3758 | + }, | |
3759 | + "node_modules/vuex": { | |
3760 | + "version": "4.1.0", | |
3761 | + "resolved": "https://registry.npmjs.org/vuex/-/vuex-4.1.0.tgz", | |
3762 | + "integrity": "sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ==", | |
3763 | + "dependencies": { | |
3764 | + "@vue/devtools-api": "^6.0.0-beta.11" | |
3765 | + }, | |
3766 | + "peerDependencies": { | |
3767 | + "vue": "^3.2.0" | |
3768 | + } | |
3769 | + }, | |
3770 | + "node_modules/watchpack": { | |
3771 | + "version": "2.4.0", | |
3772 | + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", | |
3773 | + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", | |
3774 | + "dependencies": { | |
3775 | + "glob-to-regexp": "^0.4.1", | |
3776 | + "graceful-fs": "^4.1.2" | |
3777 | + }, | |
3778 | + "engines": { | |
3779 | + "node": ">=10.13.0" | |
3780 | + } | |
3781 | + }, | |
3782 | + "node_modules/webpack": { | |
3783 | + "version": "5.74.0", | |
3784 | + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz", | |
3785 | + "integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==", | |
3786 | + "dependencies": { | |
3787 | + "@types/eslint-scope": "^3.7.3", | |
3788 | + "@types/estree": "^0.0.51", | |
3789 | + "@webassemblyjs/ast": "1.11.1", | |
3790 | + "@webassemblyjs/wasm-edit": "1.11.1", | |
3791 | + "@webassemblyjs/wasm-parser": "1.11.1", | |
3792 | + "acorn": "^8.7.1", | |
3793 | + "acorn-import-assertions": "^1.7.6", | |
3794 | + "browserslist": "^4.14.5", | |
3795 | + "chrome-trace-event": "^1.0.2", | |
3796 | + "enhanced-resolve": "^5.10.0", | |
3797 | + "es-module-lexer": "^0.9.0", | |
3798 | + "eslint-scope": "5.1.1", | |
3799 | + "events": "^3.2.0", | |
3800 | + "glob-to-regexp": "^0.4.1", | |
3801 | + "graceful-fs": "^4.2.9", | |
3802 | + "json-parse-even-better-errors": "^2.3.1", | |
3803 | + "loader-runner": "^4.2.0", | |
3804 | + "mime-types": "^2.1.27", | |
3805 | + "neo-async": "^2.6.2", | |
3806 | + "schema-utils": "^3.1.0", | |
3807 | + "tapable": "^2.1.1", | |
3808 | + "terser-webpack-plugin": "^5.1.3", | |
3809 | + "watchpack": "^2.4.0", | |
3810 | + "webpack-sources": "^3.2.3" | |
3811 | + }, | |
3812 | + "bin": { | |
3813 | + "webpack": "bin/webpack.js" | |
3814 | + }, | |
3815 | + "engines": { | |
3816 | + "node": ">=10.13.0" | |
3817 | + }, | |
3818 | + "funding": { | |
3819 | + "type": "opencollective", | |
3820 | + "url": "https://opencollective.com/webpack" | |
3821 | + }, | |
3822 | + "peerDependenciesMeta": { | |
3823 | + "webpack-cli": { | |
3824 | + "optional": true | |
3825 | + } | |
3826 | + } | |
3827 | + }, | |
3828 | + "node_modules/webpack-cli": { | |
3829 | + "version": "4.10.0", | |
3830 | + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", | |
3831 | + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", | |
3832 | + "dependencies": { | |
3833 | + "@discoveryjs/json-ext": "^0.5.0", | |
3834 | + "@webpack-cli/configtest": "^1.2.0", | |
3835 | + "@webpack-cli/info": "^1.5.0", | |
3836 | + "@webpack-cli/serve": "^1.7.0", | |
3837 | + "colorette": "^2.0.14", | |
3838 | + "commander": "^7.0.0", | |
3839 | + "cross-spawn": "^7.0.3", | |
3840 | + "fastest-levenshtein": "^1.0.12", | |
3841 | + "import-local": "^3.0.2", | |
3842 | + "interpret": "^2.2.0", | |
3843 | + "rechoir": "^0.7.0", | |
3844 | + "webpack-merge": "^5.7.3" | |
3845 | + }, | |
3846 | + "bin": { | |
3847 | + "webpack-cli": "bin/cli.js" | |
3848 | + }, | |
3849 | + "engines": { | |
3850 | + "node": ">=10.13.0" | |
3851 | + }, | |
3852 | + "funding": { | |
3853 | + "type": "opencollective", | |
3854 | + "url": "https://opencollective.com/webpack" | |
3855 | + }, | |
3856 | + "peerDependencies": { | |
3857 | + "webpack": "4.x.x || 5.x.x" | |
3858 | + }, | |
3859 | + "peerDependenciesMeta": { | |
3860 | + "@webpack-cli/generators": { | |
3861 | + "optional": true | |
3862 | + }, | |
3863 | + "@webpack-cli/migrate": { | |
3864 | + "optional": true | |
3865 | + }, | |
3866 | + "webpack-bundle-analyzer": { | |
3867 | + "optional": true | |
3868 | + }, | |
3869 | + "webpack-dev-server": { | |
3870 | + "optional": true | |
3871 | + } | |
3872 | + } | |
3873 | + }, | |
3874 | + "node_modules/webpack-cli/node_modules/commander": { | |
3875 | + "version": "7.2.0", | |
3876 | + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", | |
3877 | + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", | |
3878 | + "engines": { | |
3879 | + "node": ">= 10" | |
3880 | + } | |
3881 | + }, | |
3882 | + "node_modules/webpack-merge": { | |
3883 | + "version": "5.10.0", | |
3884 | + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", | |
3885 | + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", | |
3886 | + "dependencies": { | |
3887 | + "clone-deep": "^4.0.1", | |
3888 | + "flat": "^5.0.2", | |
3889 | + "wildcard": "^2.0.0" | |
3890 | + }, | |
3891 | + "engines": { | |
3892 | + "node": ">=10.0.0" | |
3893 | + } | |
3894 | + }, | |
3895 | + "node_modules/webpack-sources": { | |
3896 | + "version": "3.2.3", | |
3897 | + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", | |
3898 | + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", | |
3899 | + "engines": { | |
3900 | + "node": ">=10.13.0" | |
3901 | + } | |
3902 | + }, | |
3903 | + "node_modules/webpack/node_modules/schema-utils": { | |
3904 | + "version": "3.3.0", | |
3905 | + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", | |
3906 | + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", | |
3907 | + "dependencies": { | |
3908 | + "@types/json-schema": "^7.0.8", | |
3909 | + "ajv": "^6.12.5", | |
3910 | + "ajv-keywords": "^3.5.2" | |
3911 | + }, | |
3912 | + "engines": { | |
3913 | + "node": ">= 10.13.0" | |
3914 | + }, | |
3915 | + "funding": { | |
3916 | + "type": "opencollective", | |
3917 | + "url": "https://opencollective.com/webpack" | |
3918 | + } | |
3919 | + }, | |
3920 | + "node_modules/which": { | |
3921 | + "version": "2.0.2", | |
3922 | + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", | |
3923 | + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", | |
3924 | + "dependencies": { | |
3925 | + "isexe": "^2.0.0" | |
3926 | + }, | |
3927 | + "bin": { | |
3928 | + "node-which": "bin/node-which" | |
3929 | + }, | |
3930 | + "engines": { | |
3931 | + "node": ">= 8" | |
3932 | + } | |
3933 | + }, | |
3934 | + "node_modules/wildcard": { | |
3935 | + "version": "2.0.1", | |
3936 | + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", | |
3937 | + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" | |
3938 | + }, | |
3939 | + "node_modules/wrappy": { | |
3940 | + "version": "1.0.2", | |
3941 | + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", | |
3942 | + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" | |
3943 | + }, | |
3944 | + "node_modules/xtend": { | |
3945 | + "version": "4.0.2", | |
3946 | + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", | |
3947 | + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", | |
3948 | + "engines": { | |
3949 | + "node": ">=0.4" | |
3950 | + } | |
3951 | + }, | |
3952 | + "node_modules/yallist": { | |
3953 | + "version": "3.1.1", | |
3954 | + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", | |
3955 | + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" | |
3956 | + } | |
3957 | + } | |
3958 | +} |
+++ package.json
... | ... | @@ -0,0 +1,48 @@ |
1 | +{ | |
2 | + "dependencies": { | |
3 | + "@babel/cli": "7.19.3", | |
4 | + "@babel/core": "7.19.3", | |
5 | + "@fortawesome/fontawesome-svg-core": "^6.4.2", | |
6 | + "@fortawesome/free-brands-svg-icons": "^6.4.2", | |
7 | + "@fortawesome/free-regular-svg-icons": "^6.4.2", | |
8 | + "@fortawesome/free-solid-svg-icons": "^6.4.2", | |
9 | + "@fortawesome/vue-fontawesome": "^3.0.3", | |
10 | + "axios": "^1.5.1", | |
11 | + "babel-loader": "8.2.5", | |
12 | + "css-loader": "6.7.1", | |
13 | + "express": "4.18.1", | |
14 | + "express-http-proxy": "^2.0.0", | |
15 | + "file-loader": "6.2.0", | |
16 | + "fs": "0.0.1-security", | |
17 | + "git": "^0.1.5", | |
18 | + "new-line": "^1.1.1", | |
19 | + "pg": "8.8.0", | |
20 | + "swiper": "^10.3.1", | |
21 | + "url-loader": "4.1.1", | |
22 | + "vue": "3.2.40", | |
23 | + "vue-carousel": "^0.18.0", | |
24 | + "vue-loader": "^17.0.0", | |
25 | + "vue-router": "4.1.5", | |
26 | + "vue-slick": "^1.2.0", | |
27 | + "vue-style-loader": "4.1.3", | |
28 | + "vue3-sfc-loader": "^0.8.4", | |
29 | + "vueperslides": "^3.5.1", | |
30 | + "vuex": "^4.1.0", | |
31 | + "webpack": "5.74.0", | |
32 | + "webpack-cli": "4.10.0" | |
33 | + }, | |
34 | + "scripts": { | |
35 | + "prod": "set NODE_ENV=production&&node ./server/modules/web/server.js", | |
36 | + "dev": "set NODE_ENV=development&&node ./server/modules/web/server.js", | |
37 | + "windows-prod": "set NODE_ENV=production&&node ./server/modules/web/server.js", | |
38 | + "windows-dev": "set NODE_ENV=development&&node ./server/modules/web/server.js", | |
39 | + "linux-prod": "export NODE_ENV=production&&node ./server/modules/web/server.js", | |
40 | + "linux-dev": "export NODE_ENV=development&&node ./server/modules/web/server.js", | |
41 | + "webpack-build": "webpack", | |
42 | + "webpack-build-watch": "webpack --watch" | |
43 | + }, | |
44 | + "devDependencies": { | |
45 | + "less": "^4.2.0", | |
46 | + "less-loader": "^11.1.3" | |
47 | + } | |
48 | +} |
+++ server/modules/db/mysql/MysqlConnection.js
... | ... | @@ -0,0 +1,62 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.10.21 | |
4 | + * @dscription : Mysql DB Connection Pool 생성 관리 모듈 입니다. (private와 public object 환경 구성) | |
5 | + */ | |
6 | + const MysqlConnection = (function () { | |
7 | + | |
8 | + //Mysql DB Connection 라이브러리 모듈 | |
9 | + const mysql = require('mysql'); | |
10 | + | |
11 | + //Connection Pool 객체 - private object(변수) | |
12 | + const connectionPool = mysql.createPool({ | |
13 | + host: 'localhost', | |
14 | + user: 'root', | |
15 | + password: '1234', | |
16 | + database: 'test', | |
17 | + ssl: false, | |
18 | + port: 3306, | |
19 | + max: 10, | |
20 | + }); | |
21 | + | |
22 | + return { | |
23 | + getConnectionPool: function () { | |
24 | + return connectionPool; | |
25 | + }, | |
26 | + queryExcute: function (sql, params) { | |
27 | + const result = new Promise((resolve, reject) => { | |
28 | + connectionPool.getConnection(function (connectionError, connection) { | |
29 | + if (!connectionError) { | |
30 | + try { | |
31 | + connection.query(sql, params, function (queryError, rows, columns) { | |
32 | + if (!queryError) { | |
33 | + resolve({'rows': rows, 'columns': columns}); | |
34 | + } else { | |
35 | + reject(queryError); | |
36 | + } | |
37 | + }) | |
38 | + } catch (proccessError) { | |
39 | + reject(proccessError); | |
40 | + } finally { | |
41 | + connection.release(); | |
42 | + } | |
43 | + } else { | |
44 | + reject(connectionError); | |
45 | + } | |
46 | + }) | |
47 | + | |
48 | + /* connectionPool.getConnection().then(async (connection) => { | |
49 | + let queryResult = await connection.query(sql); | |
50 | + resolve(queryResult); | |
51 | + connection.release(); | |
52 | + }).catch((error) => { | |
53 | + reject(error); | |
54 | + }); */ | |
55 | + }) | |
56 | + return result; | |
57 | + }, | |
58 | + } | |
59 | + | |
60 | +})(); | |
61 | + | |
62 | +module.exports = MysqlConnection;(파일 끝에 줄바꿈 문자 없음) |
+++ server/modules/db/oracle/OracleConnection.js
... | ... | @@ -0,0 +1,62 @@ |
1 | +/** | |
2 | + * @author : 방선주 | |
3 | + * @since : 2022.09.22 | |
4 | + * @dscription : Oracle DB Connection Pool 생성 관리 모듈 입니다. | |
5 | + * | |
6 | + * @modifier : 최정우 | |
7 | + * @modified : 2022.10.30 | |
8 | + */ | |
9 | + const { BASE_DIR } = require('../../../../Global'); | |
10 | + | |
11 | + const OracleConnection = function () { | |
12 | + //오라클 라이브러리 import | |
13 | + const oracledb = require('oracledb'); | |
14 | + //라이브러리 초기화(oracle client setting) | |
15 | + oracledb.initOracleClient({ libDir: `${BASE_DIR}/server/modules/db/oracle/client/client_19.16` }); | |
16 | + | |
17 | + //DB Connection Pool | |
18 | + let connectionPool = null; | |
19 | + | |
20 | + //DB Connection Pool 생성 | |
21 | + oracledb.createPool({ | |
22 | + user: 'ajin_data', | |
23 | + password: 'ajinvldosvl1121', // myhrpw contains the hr schema password | |
24 | + connectString: '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 211.216.206.147)(PORT = 1521)))(CONNECT_DATA = (SID = XE)))', | |
25 | + poolMin: 0, | |
26 | + poolMax: 20, | |
27 | + //poolAlias: 'ajin_odbcp'//poolAlias가 정의되지 않으면, default pool로 정의됨 | |
28 | + }).then((result) => { | |
29 | + connectionPool = result; | |
30 | + console.log("Successfully connected to Oracle Database"); | |
31 | + }).catch((error) => { | |
32 | + console.error(error); | |
33 | + }); | |
34 | + | |
35 | + return { | |
36 | + getConnectionPool: function () { | |
37 | + return connectionPool; | |
38 | + }, | |
39 | + getConnection: function () { | |
40 | + return oracledb.getConnection(); | |
41 | + }, | |
42 | + queryExcute: function (sql, params) { | |
43 | + const result = new Promise((resolve, reject) => { | |
44 | + oracledb.getConnection().then(async (connection) => { | |
45 | + let queryResult = null; | |
46 | + if (!params) { | |
47 | + queryResult = await connection.execute(sql); | |
48 | + } else { | |
49 | + queryResult = await connection.execute(sql, params); | |
50 | + } | |
51 | + resolve(queryResult); | |
52 | + connection.close(); | |
53 | + }).catch((error) => { | |
54 | + reject(error); | |
55 | + }); | |
56 | + }) | |
57 | + return result; | |
58 | + }, | |
59 | + } | |
60 | + }(); | |
61 | + | |
62 | + module.exports = OracleConnection;(파일 끝에 줄바꿈 문자 없음) |
+++ server/modules/db/oracle/client/client_19.16/BASIC_LICENSE
... | ... | @@ -0,0 +1,123 @@ |
1 | +Oracle Free Use Terms and Conditions | |
2 | + | |
3 | +Definitions | |
4 | + | |
5 | +"Oracle" refers to Oracle America, Inc. "You" and "Your" refers to (a) | |
6 | +a company or organization (each an "Entity") accessing the Programs, | |
7 | +if use of the Programs will be on behalf of such Entity; or (b) an | |
8 | +individual accessing the Programs, if use of the Programs will not be | |
9 | +on behalf of an Entity. "Program(s)" refers to Oracle software | |
10 | +provided by Oracle pursuant to the following terms and any updates, | |
11 | +error corrections, and/or Program Documentation provided by | |
12 | +Oracle. "Program Documentation" refers to Program user manuals and | |
13 | +Program installation manuals, if any. If available, Program | |
14 | +Documentation may be delivered with the Programs and/or may be | |
15 | +accessed from www.oracle.com/documentation. "Separate Terms" refers to | |
16 | +separate license terms that are specified in the Program | |
17 | +Documentation, readmes or notice files and that apply to Separately | |
18 | +Licensed Technology. "Separately Licensed Technology" refers to Oracle | |
19 | +or third party technology that is licensed under Separate Terms and | |
20 | +not under the terms of this license. | |
21 | + | |
22 | +Separately Licensed Technology | |
23 | + | |
24 | +Oracle may provide certain notices to You in Program Documentation, | |
25 | +readmes or notice files in connection with Oracle or third party | |
26 | +technology provided as or with the Programs. If specified in the | |
27 | +Program Documentation, readmes or notice files, such technology will | |
28 | +be licensed to You under Separate Terms. Your rights to use Separately | |
29 | +Licensed Technology under Separate Terms are not restricted in any way | |
30 | +by the terms herein. For clarity, notwithstanding the existence of a | |
31 | +notice, third party technology that is not Separately Licensed | |
32 | +Technology shall be deemed part of the Programs licensed to You under | |
33 | +the terms of this license. | |
34 | + | |
35 | +Source Code for Open Source Software | |
36 | + | |
37 | +For software that You receive from Oracle in binary form that is | |
38 | +licensed under an open source license that gives You the right to | |
39 | +receive the source code for that binary, You can obtain a copy of the | |
40 | +applicable source code from https://oss.oracle.com/sources/ or | |
41 | +http://www.oracle.com/goto/opensourcecode. If the source code for such | |
42 | +software was not provided to You with the binary, You can also receive | |
43 | +a copy of the source code on physical media by submitting a written | |
44 | +request pursuant to the instructions in the "Written Offer for Source | |
45 | +Code" section of the latter website. | |
46 | + | |
47 | +------------------------------------------------------------------------------- | |
48 | + | |
49 | +The following license terms apply to those Programs that are not | |
50 | +provided to You under Separate Terms. | |
51 | + | |
52 | +License Rights and Restrictions | |
53 | + | |
54 | +Oracle grants to You, as a recipient of this Program, a nonexclusive, | |
55 | +nontransferable, limited license to, subject to the conditions stated | |
56 | +herein, (a) internally use the unmodified Programs for the purposes of | |
57 | +developing, testing, prototyping and demonstrating your applications, | |
58 | +and running the Programs for your own internal business operations; | |
59 | +and (b) redistribute unmodified Programs and Programs Documentation, | |
60 | +under the terms of this License, provided that You do not charge Your | |
61 | +end users any additional fees for the use of the Programs. You may | |
62 | +make copies of the Programs to the extent reasonably necessary for | |
63 | +exercising the license rights granted herein and for backup | |
64 | +purposes. You are granted the right to use the Programs to provide | |
65 | +third party training in the use of the Programs and associated | |
66 | +Separately Licensed Technology only if there is express authorization | |
67 | +of such use by Oracle on the Program's download page or in the Program | |
68 | +Documentation. | |
69 | + | |
70 | +Your license is contingent on Your compliance with the following conditions: | |
71 | + | |
72 | + - You include a copy of this license with any distribution by You | |
73 | + of the Programs; | |
74 | + | |
75 | + - You do not remove markings or notices of either Oracle's or a | |
76 | + licensor's proprietary rights from the Programs or Program | |
77 | + Documentation; | |
78 | + | |
79 | + - You comply with all U.S. and applicable export control and | |
80 | + economic sanctions laws and regulations that govern Your use of | |
81 | + the Programs (including technical data); | |
82 | + | |
83 | + - You do not cause or permit reverse engineering, disassembly or | |
84 | + decompilation of the Programs (except as allowed by law) by You | |
85 | + nor allow an associated party to do so. | |
86 | + | |
87 | +For clarity, any source code that may be included in the distribution | |
88 | +with the Programs is provided solely for reference purposes and may | |
89 | +not be modified, unless such source code is under Separate Terms | |
90 | +permitting modification. | |
91 | + | |
92 | +Ownership | |
93 | + | |
94 | +Oracle or its licensors retain all ownership and intellectual property | |
95 | +rights to the Programs. | |
96 | + | |
97 | +Information Collection | |
98 | + | |
99 | +The Programs' installation and/or auto-update processes, if any, may | |
100 | +transmit a limited amount of data to Oracle or its service provider | |
101 | +about those processes to help Oracle understand and optimize | |
102 | +them. Oracle does not associate the data with personally identifiable | |
103 | +information. Refer to Oracle's Privacy Policy at | |
104 | +www.oracle.com/privacy. | |
105 | + | |
106 | +Disclaimer of Warranties; Limitation of Liability | |
107 | + | |
108 | +THE PROGRAMS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. ORACLE | |
109 | +FURTHER DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING | |
110 | +WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS | |
111 | +FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. | |
112 | + | |
113 | +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL ORACLE BE LIABLE TO | |
114 | +YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR | |
115 | +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE | |
116 | +PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING | |
117 | +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A | |
118 | +FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF | |
119 | +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH | |
120 | +DAMAGES. | |
121 | + | |
122 | +Last updated: 8 October 2018 | |
123 | + |
+++ server/modules/db/oracle/client/client_19.16/BASIC_README
... | ... | @@ -0,0 +1,30 @@ |
1 | +Basic Package Information | |
2 | +========================= | |
3 | +Sun Jul 17 14:46:23 MDT 2022 | |
4 | +Client Shared Library 64-bit - 19.16.0.0.0 | |
5 | + | |
6 | +Windows NT Version V6.2 | |
7 | +CPU : 4 - type 86644 physical cores | |
8 | +Process Affinity : 0x0000000000000000 | |
9 | +Memory (Avail/Total): Ph:10181M/16381M, Ph+PgF:12546M/18813M | |
10 | + | |
11 | + | |
12 | +TIMEZONE INFORMATION | |
13 | +-------------------- | |
14 | +Operating in ORACLE_HOME environment. | |
15 | + | |
16 | +Small timezone file = timezone_32.dat | |
17 | +Large timezone file = timezlrg_32.dat | |
18 | + | |
19 | +LICENSE AGREEMENT | |
20 | +----------------------------- | |
21 | +Your use of this copy of Oracle Instant Client software product is subject to, and may not exceed the conditions of use for which you are authorized under one of the following: | |
22 | + | |
23 | +(i) the license or cloud services terms that you accepted when you obtained the right to use Oracle Instant Client software; or | |
24 | +(ii) the license terms that you agreed to when you placed your order with Oracle for an Oracle product containing Oracle Instant Client software; or | |
25 | +(iii) the Oracle Instant Client software license terms, if any, included with the hardware that you acquired from Oracle; or | |
26 | +(iv) the Oracle Technology Network License Agreement (which you acknowledge you have read and agree to) available at http://www.oracle.com/technetwork/licenses/distribution-license-152002.html; or, if (i), (ii), (iii), and or (iv) are not applicable, then, | |
27 | +(v) the Oracle Free Use Terms and Conditions available at BASIC_LICENSE. | |
28 | + | |
29 | +Oracle's obligations with respect to your use of the Oracle Instant Client, including, without limitation, obligations to indemnify you, if any, shall only be as set forth in the specific license under which you are authorized and choose to use Oracle Instant Client. | |
30 | + |
+++ server/modules/db/oracle/client/client_19.16/adrci.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/adrci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/genezi.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/genezi.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oci.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ocijdbc19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ocijdbc19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ociw32.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ociw32.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ojdbc8.jar
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oramysql19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oramysql19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/orannzsbb19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/orannzsbb19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraocci19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraocci19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraocci19d.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraocci19d.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraociei19.dll
This file is too big to display. |
+++ server/modules/db/oracle/client/client_19.16/oraociei19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/oraons.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/orasql19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/orasql19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/ucp.jar
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/uidrvci.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/uidrvci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/vc14/oraocci19.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/vc14/oraocci19.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/vc14/oraocci19d.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/vc14/oraocci19d.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_19.16/xstreams.jar
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/BASIC_LICENSE
... | ... | @@ -0,0 +1,123 @@ |
1 | +Oracle Free Use Terms and Conditions | |
2 | + | |
3 | +Definitions | |
4 | + | |
5 | +"Oracle" refers to Oracle America, Inc. "You" and "Your" refers to (a) | |
6 | +a company or organization (each an "Entity") accessing the Programs, | |
7 | +if use of the Programs will be on behalf of such Entity; or (b) an | |
8 | +individual accessing the Programs, if use of the Programs will not be | |
9 | +on behalf of an Entity. "Program(s)" refers to Oracle software | |
10 | +provided by Oracle pursuant to the following terms and any updates, | |
11 | +error corrections, and/or Program Documentation provided by | |
12 | +Oracle. "Program Documentation" refers to Program user manuals and | |
13 | +Program installation manuals, if any. If available, Program | |
14 | +Documentation may be delivered with the Programs and/or may be | |
15 | +accessed from www.oracle.com/documentation. "Separate Terms" refers to | |
16 | +separate license terms that are specified in the Program | |
17 | +Documentation, readmes or notice files and that apply to Separately | |
18 | +Licensed Technology. "Separately Licensed Technology" refers to Oracle | |
19 | +or third party technology that is licensed under Separate Terms and | |
20 | +not under the terms of this license. | |
21 | + | |
22 | +Separately Licensed Technology | |
23 | + | |
24 | +Oracle may provide certain notices to You in Program Documentation, | |
25 | +readmes or notice files in connection with Oracle or third party | |
26 | +technology provided as or with the Programs. If specified in the | |
27 | +Program Documentation, readmes or notice files, such technology will | |
28 | +be licensed to You under Separate Terms. Your rights to use Separately | |
29 | +Licensed Technology under Separate Terms are not restricted in any way | |
30 | +by the terms herein. For clarity, notwithstanding the existence of a | |
31 | +notice, third party technology that is not Separately Licensed | |
32 | +Technology shall be deemed part of the Programs licensed to You under | |
33 | +the terms of this license. | |
34 | + | |
35 | +Source Code for Open Source Software | |
36 | + | |
37 | +For software that You receive from Oracle in binary form that is | |
38 | +licensed under an open source license that gives You the right to | |
39 | +receive the source code for that binary, You can obtain a copy of the | |
40 | +applicable source code from https://oss.oracle.com/sources/ or | |
41 | +http://www.oracle.com/goto/opensourcecode. If the source code for such | |
42 | +software was not provided to You with the binary, You can also receive | |
43 | +a copy of the source code on physical media by submitting a written | |
44 | +request pursuant to the instructions in the "Written Offer for Source | |
45 | +Code" section of the latter website. | |
46 | + | |
47 | +------------------------------------------------------------------------------- | |
48 | + | |
49 | +The following license terms apply to those Programs that are not | |
50 | +provided to You under Separate Terms. | |
51 | + | |
52 | +License Rights and Restrictions | |
53 | + | |
54 | +Oracle grants to You, as a recipient of this Program, a nonexclusive, | |
55 | +nontransferable, limited license to, subject to the conditions stated | |
56 | +herein, (a) internally use the unmodified Programs for the purposes of | |
57 | +developing, testing, prototyping and demonstrating your applications, | |
58 | +and running the Programs for your own internal business operations; | |
59 | +and (b) redistribute unmodified Programs and Programs Documentation, | |
60 | +under the terms of this License, provided that You do not charge Your | |
61 | +end users any additional fees for the use of the Programs. You may | |
62 | +make copies of the Programs to the extent reasonably necessary for | |
63 | +exercising the license rights granted herein and for backup | |
64 | +purposes. You are granted the right to use the Programs to provide | |
65 | +third party training in the use of the Programs and associated | |
66 | +Separately Licensed Technology only if there is express authorization | |
67 | +of such use by Oracle on the Program's download page or in the Program | |
68 | +Documentation. | |
69 | + | |
70 | +Your license is contingent on Your compliance with the following conditions: | |
71 | + | |
72 | + - You include a copy of this license with any distribution by You | |
73 | + of the Programs; | |
74 | + | |
75 | + - You do not remove markings or notices of either Oracle's or a | |
76 | + licensor's proprietary rights from the Programs or Program | |
77 | + Documentation; | |
78 | + | |
79 | + - You comply with all U.S. and applicable export control and | |
80 | + economic sanctions laws and regulations that govern Your use of | |
81 | + the Programs (including technical data); | |
82 | + | |
83 | + - You do not cause or permit reverse engineering, disassembly or | |
84 | + decompilation of the Programs (except as allowed by law) by You | |
85 | + nor allow an associated party to do so. | |
86 | + | |
87 | +For clarity, any source code that may be included in the distribution | |
88 | +with the Programs is provided solely for reference purposes and may | |
89 | +not be modified, unless such source code is under Separate Terms | |
90 | +permitting modification. | |
91 | + | |
92 | +Ownership | |
93 | + | |
94 | +Oracle or its licensors retain all ownership and intellectual property | |
95 | +rights to the Programs. | |
96 | + | |
97 | +Information Collection | |
98 | + | |
99 | +The Programs' installation and/or auto-update processes, if any, may | |
100 | +transmit a limited amount of data to Oracle or its service provider | |
101 | +about those processes to help Oracle understand and optimize | |
102 | +them. Oracle does not associate the data with personally identifiable | |
103 | +information. Refer to Oracle's Privacy Policy at | |
104 | +www.oracle.com/privacy. | |
105 | + | |
106 | +Disclaimer of Warranties; Limitation of Liability | |
107 | + | |
108 | +THE PROGRAMS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. ORACLE | |
109 | +FURTHER DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING | |
110 | +WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS | |
111 | +FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. | |
112 | + | |
113 | +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL ORACLE BE LIABLE TO | |
114 | +YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR | |
115 | +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE | |
116 | +PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING | |
117 | +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A | |
118 | +FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF | |
119 | +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH | |
120 | +DAMAGES. | |
121 | + | |
122 | +Last updated: 8 October 2018 | |
123 | + |
+++ server/modules/db/oracle/client/client_21.6/BASIC_README
... | ... | @@ -0,0 +1,30 @@ |
1 | +Basic Package Information | |
2 | +========================= | |
3 | +Fri May 27 02:14:20 MDT 2022 | |
4 | +Client Shared Library 64-bit - 21.6.0.0.0 | |
5 | + | |
6 | +Windows NT Version V6.3 OS Build 9600 | |
7 | +CPU : 4 - type 86644 physical cores | |
8 | +Process Affinity : 0x0000000000000000 | |
9 | +Memory (Avail/Total): Ph:10006M/16381M, Ph+PgF:12115M/18813M | |
10 | + | |
11 | + | |
12 | +TIMEZONE INFORMATION | |
13 | +-------------------- | |
14 | +Operating in ORACLE_HOME environment. | |
15 | + | |
16 | +Small timezone file = timezone_35.dat | |
17 | +Large timezone file = timezlrg_35.dat | |
18 | + | |
19 | +LICENSE AGREEMENT | |
20 | +----------------------------- | |
21 | +Your use of this copy of Oracle Instant Client software product is subject to, and may not exceed the conditions of use for which you are authorized under one of the following: | |
22 | + | |
23 | +(i) the license or cloud services terms that you accepted when you obtained the right to use Oracle Instant Client software; or | |
24 | +(ii) the license terms that you agreed to when you placed your order with Oracle for an Oracle product containing Oracle Instant Client software; or | |
25 | +(iii) the Oracle Instant Client software license terms, if any, included with the hardware that you acquired from Oracle; or | |
26 | +(iv) the Oracle Technology Network License Agreement (which you acknowledge you have read and agree to) available at http://www.oracle.com/technetwork/licenses/distribution-license-152002.html; or, if (i), (ii), (iii), and or (iv) are not applicable, then, | |
27 | +(v) the Oracle Free Use Terms and Conditions available at BASIC_LICENSE. | |
28 | + | |
29 | +Oracle's obligations with respect to your use of the Oracle Instant Client, including, without limitation, obligations to indemnify you, if any, shall only be as set forth in the specific license under which you are authorized and choose to use Oracle Instant Client. | |
30 | + |
+++ server/modules/db/oracle/client/client_21.6/adrci.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/adrci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/genezi.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/genezi.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/network/admin/README
... | ... | @@ -0,0 +1,9 @@ |
1 | +============================================================================= | |
2 | +This is the default directory for Oracle Network and Oracle Client | |
3 | +configuration files. You can place files such as tnsnames.ora, sqlnet.ora | |
4 | +and oraaccess.xml in this directory. | |
5 | +NOTE: | |
6 | +If you set an environment variable TNS_ADMIN to another directory containing | |
7 | +configuration files, they will be used instead of the files in this default | |
8 | +directory. | |
9 | +============================================================================= |
+++ server/modules/db/oracle/client/client_21.6/oci.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ocijdbc21.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ocijdbc21.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ociw32.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ociw32.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ojdbc8.jar
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oramysql.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oramysql.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/orannzsbb.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/orannzsbb.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oraocci21.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oraocci21.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oraocci21d.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oraocci21d.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/oraociei.dll
This file is too big to display. |
+++ server/modules/db/oracle/client/client_21.6/oraociei.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/orasql.dll
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/orasql.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/ucp.jar
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/uidrvci.exe
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/uidrvci.sym
Binary file is not shown |
+++ server/modules/db/oracle/client/client_21.6/xstreams.jar
Binary file is not shown |
+++ server/modules/db/postgresql/PostgresqlConnection.js
... | ... | @@ -0,0 +1,41 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.09.20 | |
4 | + * @dscription : PostgreSQL DB Connection Pool 생성 관리 모듈 입니다. (private와 public object 환경 구성) | |
5 | + */ | |
6 | +const PostgresqlConnection = (function () { | |
7 | + | |
8 | + //PostgreSQL DB Connection 라이브러리 모듈 | |
9 | + const pg = require('pg'); | |
10 | + | |
11 | + //Connection Pool 객체 - private object(변수) | |
12 | + const connectionPool = new pg.Pool({ | |
13 | + //host: 'localhost', | |
14 | + host: '192.168.0.250', | |
15 | + user: 'test_user', | |
16 | + password: '1234', | |
17 | + database: 'test_db', | |
18 | + ssl: false, | |
19 | + port: 5432, | |
20 | + max: 10, | |
21 | + }); | |
22 | + | |
23 | + //public object | |
24 | + return { | |
25 | + getConnectionPool: function () { | |
26 | + return connectionPool; | |
27 | + }, | |
28 | + getConnectionPoolClient: function () { | |
29 | + return connectionPool.connect(); | |
30 | + }, | |
31 | + queryExcute: function (sql, params) { | |
32 | + return connectionPool.query(sql, params); | |
33 | + }, | |
34 | + } | |
35 | + | |
36 | +})(); | |
37 | + | |
38 | +//Module Export | |
39 | +module.exports = PostgresqlConnection; | |
40 | + | |
41 | + |
+++ server/modules/log/Logger.js
... | ... | @@ -0,0 +1,131 @@ |
1 | +const { LOG_BASE_DIR, SERVICE_STATUS } = require('../../../Global'); | |
2 | +const fs = require('fs'); | |
3 | +const Queue = require('../util/Queue'); | |
4 | + | |
5 | +/** | |
6 | + * @author : 최정우 | |
7 | + * @since : 2022.09.21 | |
8 | + * @dscription : Log 생성기 모듈 입니다. | |
9 | + */ | |
10 | +const Logger = (function () { | |
11 | + | |
12 | + /* let testInterval = setInterval(() => { | |
13 | + const date = new Date(); | |
14 | + var now = `${date.getFullYear()}.${(date.getMonth()+1)}.${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}.${date.getMilliseconds()}`; | |
15 | + console.log('now :', now); | |
16 | + }, 1000) */ | |
17 | + | |
18 | + //로그 쓰기 전, 대기 저장소 | |
19 | + const eventQueue = new Queue(); | |
20 | + //로그 쓰는 중인지 아닌지 상태값 | |
21 | + let isLogging = false; | |
22 | + | |
23 | + /** | |
24 | + * @author : 최정우 | |
25 | + * @since : 2022.09.21 | |
26 | + * @dscription : Log 처리 | |
27 | + */ | |
28 | + const logging = (message) => { | |
29 | + const date = new Date(); | |
30 | + let year = date.getFullYear(); | |
31 | + let month = prefixZero((date.getMonth() + 1), 2); | |
32 | + let day = prefixZero(date.getDate(), 2); | |
33 | + let hour = prefixZero(date.getHours(), 2); | |
34 | + let minute = prefixZero(date.getMinutes(), 2); | |
35 | + let second = prefixZero(date.getSeconds(), 2); | |
36 | + let millisecond = prefixZero(date.getMilliseconds(), 3); | |
37 | + | |
38 | + //로그에 쓰일 정보 | |
39 | + const logMessage = { | |
40 | + message: message, | |
41 | + datetime: `${year}.${month}.${day} ${hour}:${minute}:${second}.${millisecond}`, | |
42 | + logFolderDir: `${LOG_BASE_DIR}/${year}${month}`,//log 폴더 경로 | |
43 | + logFileName: `log-${year}${month}${day}.log`//log 파일명 | |
44 | + } | |
45 | + | |
46 | + //로그 쓰는 중이면, 대기 저장소에 등록 | |
47 | + if (isLogging == true) { | |
48 | + eventQueue.push(logMessage); | |
49 | + } else {//로그 쓰는 중이 아니면, 로그 쓰는 중인 상태로 변경 후, 로그 쓰기 | |
50 | + isLogging = true; | |
51 | + | |
52 | + try { | |
53 | + //log 폴더 생성 | |
54 | + if (!fs.existsSync(logMessage.logFolderDir)) { | |
55 | + fs.mkdirSync(logMessage.logFolderDir, { recursive: true/*재귀적 폴더 생성*/ }); | |
56 | + } | |
57 | + | |
58 | + //log 파일 Full Path | |
59 | + let logFileFullPath = `${logMessage.logFolderDir}/${logMessage.logFileName}`; | |
60 | + //log 내용 | |
61 | + let logContent = `[${logMessage.datetime}] ${logMessage.message}`; | |
62 | + | |
63 | + //log 내용 쓰기 | |
64 | + writeLogFile(logFileFullPath, logContent); | |
65 | + } catch (error) { | |
66 | + console.log('logging error : ', error); | |
67 | + } finally { | |
68 | + isLogging = false; | |
69 | + } | |
70 | + } | |
71 | + } | |
72 | + | |
73 | + /** | |
74 | + * @author : 최정우 | |
75 | + * @since : 2022.09.21 | |
76 | + * @dscription : Log 내용 쓰기 | |
77 | + */ | |
78 | + const writeLogFile = (path, content) => { | |
79 | + if (SERVICE_STATUS == 'development') { | |
80 | + console.log(content); | |
81 | + } | |
82 | + | |
83 | + //파일 쓰기 | |
84 | + fs.appendFileSync(path, `${content}\n`, 'utf8'); | |
85 | + | |
86 | + //로그 쓰기 저장소에서 로그 메세지 꺼내기 | |
87 | + let logMessage = eventQueue.pop(); | |
88 | + //메세지가 존재하면 => Log 내용 쓰기 (재귀 호출) | |
89 | + if (logMessage != undefined) { | |
90 | + //log 파일 Full Path | |
91 | + let logFileFullPath = `${logMessage.logFolderDir}/${logMessage.logFileName}`; | |
92 | + //log 내용 | |
93 | + let logContent = `[${logMessage.datetime}] ${logMessage.message}`; | |
94 | + //Log 내용 쓰기 (재귀 호출) | |
95 | + writeLogFile(logFileFullPath, logContent); | |
96 | + } else { | |
97 | + return; | |
98 | + } | |
99 | + } | |
100 | + | |
101 | + /** | |
102 | + * @author : 최정우 | |
103 | + * @since : 2022.09.21 | |
104 | + * @dscription : 특정 길이만큼 앞에 '0' 붙이기 | |
105 | + */ | |
106 | + const prefixZero = (target, length) => { | |
107 | + let zero = ''; | |
108 | + let suffix = target; | |
109 | + let result = ''; | |
110 | + | |
111 | + if ((typeof target) === "number") { | |
112 | + suffix = target.toString(); | |
113 | + } | |
114 | + if (suffix.length < length) { | |
115 | + for (i = 0; i < length - suffix.length; i++) { | |
116 | + zero += '0'; | |
117 | + } | |
118 | + } | |
119 | + result = zero + suffix; | |
120 | + return result; | |
121 | + } | |
122 | + | |
123 | + | |
124 | + return { | |
125 | + logging: logging | |
126 | + } | |
127 | + | |
128 | +})(); | |
129 | + | |
130 | +//Module Export | |
131 | +module.exports = Logger;(파일 끝에 줄바꿈 문자 없음) |
+++ server/modules/util/Queue.js
... | ... | @@ -0,0 +1,32 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.09.21 | |
4 | + * @dscription : Queue(선입선출) 자료형 객체 입니다. | |
5 | + */ | |
6 | +class Queue { | |
7 | + constructor() { | |
8 | + this._arr = []; | |
9 | + } | |
10 | + | |
11 | + //입력 | |
12 | + push (item) { | |
13 | + this._arr.push(item); | |
14 | + } | |
15 | + | |
16 | + //출력 후, 제거 | |
17 | + pop () { | |
18 | + return this._arr.shift(); | |
19 | + } | |
20 | + | |
21 | + //출력 대기 중인 item return | |
22 | + peek () { | |
23 | + return this._arr[0]; | |
24 | + } | |
25 | + | |
26 | + //확인 | |
27 | + showQueue () { | |
28 | + console.log('Queue : ', this._arr); | |
29 | + } | |
30 | +} | |
31 | + | |
32 | +module.exports = Queue;(파일 끝에 줄바꿈 문자 없음) |
+++ server/modules/web/Server.js
... | ... | @@ -0,0 +1,118 @@ |
1 | +/** | |
2 | + * @author : 하석형 | |
3 | + * @since : 2023.08.24 | |
4 | + * @dscription : Express 라이브러리 활용 HTTP Web Server 모듈입니다. | |
5 | + */ | |
6 | +const { BASE_DIR, PORT, API_SERVER_HOST } = require('../../../Global'); | |
7 | +const Logger = require('../log/Logger');//Logger(필수) | |
8 | + | |
9 | +const express = require('express'); | |
10 | +const webServer = express(); | |
11 | +const expressProxy = require('express-http-proxy'); | |
12 | + | |
13 | +//파일 시스템 관련 라이브러리 | |
14 | +const FS = require('fs'); | |
15 | +//stream: 특정 자원을 Streaming 하기 위한 라이브러리 => Transform: Streaming 중인 자원의 Data에 Data 수정 및 추가를 지원해주는 객체 | |
16 | +const Transform = require('stream').Transform; | |
17 | +//Streaming 중인 자원에 새로운 데이터를 stream 공간에 추가하기 위한 라이브러리 | |
18 | +const newLineStream = require('new-line'); | |
19 | + | |
20 | +/** | |
21 | + * @author : 하석형 | |
22 | + * @since : 2023.08.24 | |
23 | + * @dscription : HTTP Server start | |
24 | + */ | |
25 | +webServer.listen(PORT, function () { | |
26 | + Logger.logging(`★★★ Node.js를 활용한 Web Server 구동(Port:${PORT}) ★★★`); | |
27 | +}) | |
28 | + | |
29 | +/** | |
30 | + * @author : 하석형 | |
31 | + * @since : 2023.08.24 | |
32 | + * @dscription : Intercepter 역할을 하는 미들웨어 기능 | |
33 | + */ | |
34 | +webServer.use(function (request, response, next) { | |
35 | + let ip = request.headers['x-forwarded-for'] || request.socket.remoteAddress; | |
36 | + Logger.logging(`[HTTP] ${request.url} (Method: ${request.method}, IP: ${ip})`); | |
37 | + next(); | |
38 | +}); | |
39 | + | |
40 | + | |
41 | + | |
42 | +/** | |
43 | + * @author : 하석형 | |
44 | + * @since : 2023.08.24 | |
45 | + * @dscription : ROOT URL -> index.html | |
46 | + */ | |
47 | +webServer.get('/', function (request, response) { | |
48 | + //response.sendFile을 통한 HTTP html reponse (html내용 Streaming) | |
49 | + response.sendFile(`${BASE_DIR}/client/views/index.html`); | |
50 | +}) | |
51 | + | |
52 | +/** | |
53 | + * @author : 하석형 | |
54 | + * @since : 2023.08.24 | |
55 | + * @dscription : 화면요청 URL 처리 | |
56 | + */ | |
57 | +webServer.get('*.page', function (request, response, next) { | |
58 | + //index.html 내용을 직접 Streaming하여 Response, Streaming 중간에 내용 수정 | |
59 | + //수정 내용 : URL 요청이 아닌, 브라우저에 표시된 URL만 변경하여, 해당하는 URL PATH의 Vue Component를 routing하기 위함 | |
60 | + const StreamTransform = new Transform(); | |
61 | + StreamTransform._transform = function (data, encoding, done) { | |
62 | + let fileContent = data.toString(); | |
63 | + let replaceBeforeContent = `<script id="app-start-vue-page">const APP_USER_HTTP_REQUEST_URL = '/';</script>`; | |
64 | + let replaceAfterContent = `<script id="app-start-vue-page">const APP_USER_HTTP_REQUEST_URL = '${request.params['0']}.page';</script>`; | |
65 | + fileContent.replace(replaceBeforeContent, replaceAfterContent); | |
66 | + this.push(fileContent); | |
67 | + done(); | |
68 | + } | |
69 | + //Streaming 진행 | |
70 | + FS.createReadStream(`${BASE_DIR}/client/views/index.html`).pipe(newLineStream()).pipe(StreamTransform).pipe(response); | |
71 | +}) | |
72 | + | |
73 | +/** | |
74 | + * @author : 하석형 | |
75 | + * @since : 2023.08.24 | |
76 | + * @dscription : REST API 서버에 데이터 요청 보내기(Proxy) | |
77 | + */ | |
78 | +webServer.use('*.json', expressProxy(API_SERVER_HOST, { | |
79 | + proxyReqPathResolver: function (request) { | |
80 | + //console.log('request : ', request.url, request.params[0]); | |
81 | + return `${request.params['0']}.json`; | |
82 | + } | |
83 | +})); | |
84 | + | |
85 | +/** | |
86 | + * @author : 하석형 | |
87 | + * @since : 2023.08.24 | |
88 | + * @dscription : REST API 서버에 데이터 요청 보내기(Proxy) | |
89 | + */ | |
90 | +webServer.use('*.file', expressProxy(API_SERVER_HOST, { | |
91 | + parseReqBody : false, | |
92 | + proxyReqPathResolver: function (request) { | |
93 | + console.log('request : ', request.url, request.params[0]); | |
94 | + return `${request.params['0']}.file`; | |
95 | + } | |
96 | +})); | |
97 | + | |
98 | +/** | |
99 | + * @author : 하석형 | |
100 | + * @since : 2023.08.24 | |
101 | + * @dscription : ROOT URL, Router's, 화면요청 URL 등.. 이 외 나머지 정적 자원에 대한 처리 기능 | |
102 | + */ | |
103 | +webServer.get('*.*', function (request, response, next) { | |
104 | + response.sendFile(`${BASE_DIR}${request.params['0']}.${request.params['1']}`); | |
105 | +}) | |
106 | + | |
107 | +/** | |
108 | + * @author : 하석형 | |
109 | + * @since : 2023.08.24 | |
110 | + * @dscription : Global Error Handler (*맨 마지막에 적용해야됨) | |
111 | + */ | |
112 | +webServer.use(function (error, request, response, next) { | |
113 | + const errorCode = !error.statusCode ? 500 : error.statusCode; | |
114 | + response.status(errorCode).send('에러가 발생하였습니다. 관리자에게 문의바랍니다.'); | |
115 | + let message = `[Error:${errorCode}] ${request.url}/n ${error.stack}/n`; | |
116 | + Logger.logging(message); | |
117 | + //next(); | |
118 | +})(파일 끝에 줄바꿈 문자 없음) |
+++ server/service/test/model/TestDAO.js
... | ... | @@ -0,0 +1,190 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.09.20 | |
4 | + * @dscription : 테스트용 DB 접근을 담당하는 모듈 입니다. | |
5 | + */ | |
6 | + const TestDAO = (function () { | |
7 | + | |
8 | + //PostgreSQL DB Connection 객체 - private object(변수) | |
9 | + const PostgresqlConnection = require('../../../modules/db/postgresql/PostgresqlConnection'); | |
10 | + //console.log('PostgresqlConnection : ', PostgresqlConnection); | |
11 | + const connectionPool = PostgresqlConnection.getConnectionPool(); | |
12 | + | |
13 | + //public object | |
14 | + return { | |
15 | + | |
16 | + /** | |
17 | + * @author : 최정우 | |
18 | + * @since : 2022.09.20 | |
19 | + * @dscription : 테스트 데이터 목록 조회 | |
20 | + */ | |
21 | + testSelectList: function (param) { | |
22 | + return connectionPool.query('SELECT * FROM test_schema.test_table'); | |
23 | + }, | |
24 | + | |
25 | + /** | |
26 | + * @author : 최정우 | |
27 | + * @since : 2022.09.20 | |
28 | + * @dscription : 테스트 데이터 상세 조회 | |
29 | + */ | |
30 | + testSelectOne: function (param) { | |
31 | + return connectionPool.query('SELECT * FROM test_schema.test_table WHERE test_seq = $1', param); | |
32 | + }, | |
33 | + | |
34 | + /** | |
35 | + * @author : 최정우 | |
36 | + * @since : 2022.09.20 | |
37 | + * @dscription : 테스트 데이터 등록 | |
38 | + */ | |
39 | + testInsertOne: function (param) { | |
40 | + return connectionPool.query( | |
41 | + //RETURNING <*||COLUMN NAME1,COLUMN NAME2,...> : 등록한 Data return 받는 기능 | |
42 | + //ex1) RETURNING * : 모든 컬럼 다 return 함 | |
43 | + //ex2) RETURNING name : 컬럼명이 'name'인 데이터만 return 함 | |
44 | + `INSERT INTO test_schema.test_table ( | |
45 | + test_seq | |
46 | + , test_title | |
47 | + , test_content | |
48 | + , test_create_datetime | |
49 | + , test_create_user | |
50 | + ) VALUES ( | |
51 | + (SELECT COALESCE(MAX(test_seq), 0) + 1 FROM test_schema.test_table) | |
52 | + , $1 | |
53 | + , $2 | |
54 | + , current_timestamp | |
55 | + , 1 | |
56 | + ) RETURNING test_seq`, | |
57 | + param | |
58 | + ); | |
59 | + }, | |
60 | + | |
61 | + /** | |
62 | + * @author : 최정우 | |
63 | + * @since : 2022.09.20 | |
64 | + * @dscription : 테스트 데이터 수정 | |
65 | + */ | |
66 | + testUpdateOne: function (param) { | |
67 | + return connectionPool.query( | |
68 | + `UPDATE | |
69 | + test_schema.test_table | |
70 | + SET | |
71 | + test_title = $2 | |
72 | + , test_content = $3 | |
73 | + , test_update_datetime = current_timestamp | |
74 | + , test_update_user = 1 | |
75 | + WHERE | |
76 | + test_seq = $1`, | |
77 | + param | |
78 | + ); | |
79 | + }, | |
80 | + | |
81 | + /** | |
82 | + * @author : 최정우 | |
83 | + * @since : 2022.09.20 | |
84 | + * @dscription : 테스트 데이터 삭제 | |
85 | + */ | |
86 | + testDeleteOne: function (param) { | |
87 | + return connectionPool.query( | |
88 | + `DELETE | |
89 | + FROM | |
90 | + test_schema.test_table | |
91 | + WHERE | |
92 | + test_seq = $1`, | |
93 | + param | |
94 | + ); | |
95 | + }, | |
96 | + | |
97 | + | |
98 | + /** | |
99 | + * @author : 최정우 | |
100 | + * @since : 2022.09.20 | |
101 | + * @dscription : 테스트 트랜젝션 처리 | |
102 | + * | |
103 | + * 트랜잭션 작업 진행 시나리오 | |
104 | + * 1. connection pool 한 개 받아오기 | |
105 | + * 2. BEGIN(트랜잭션 시작 처리) | |
106 | + * 3. [※작업내용1] 데이터 등록 | |
107 | + * 4. [※작업내용2] 등록한 데이터 수정 | |
108 | + * 5. *작업 완료시, 실행(dispatch)한 모든 쿼리를 COMMIT(커밋) | |
109 | + * *에러 발생시, 실행(dispatch)한 모든 쿼리를 ROLLBACK(롤백) | |
110 | + * 6. 받아온 connection pool 반납(해제) - 필수(반납하지 않으면 해당 pool을 사용하는 query는 트랜잭션에 계속 매달려있음) | |
111 | + */ | |
112 | + testTransaction: function (param) { | |
113 | + return new Promise((resolve, reject) => { | |
114 | + //1. connection pool 한 개 받아오기 | |
115 | + const poolClient = PostgresqlConnection.getConnectionPoolClient(); | |
116 | + poolClient.then(async(client) => {//async 처리 | |
117 | + try { | |
118 | + //2. BEGIN(트랜잭션 시작 처리) | |
119 | + await client.query('BEGIN'); | |
120 | + | |
121 | + //처리 3초 지연 | |
122 | + //await client.query('SELECT pg_sleep(3);'); | |
123 | + | |
124 | + //3. [※작업내용1] 데이터 등록 | |
125 | + let insertResultData = await client.query( | |
126 | + `INSERT INTO test_schema.test_table ( | |
127 | + test_seq | |
128 | + , test_title | |
129 | + , test_content | |
130 | + , test_create_datetime | |
131 | + , test_create_user | |
132 | + ) VALUES ( | |
133 | + (SELECT COALESCE(MAX(test_seq), 0) + 1 FROM test_schema.test_table) | |
134 | + , $1 | |
135 | + , $2 | |
136 | + , current_timestamp | |
137 | + , 1 | |
138 | + ) RETURNING test_seq`, | |
139 | + param | |
140 | + ); | |
141 | + //console.log('등록 결과 정보 insertResultData : ', insertResultData); | |
142 | + | |
143 | + //throw '트랜잭션 처리중 Error 강제로 발생시킴'; | |
144 | + | |
145 | + //4. [※작업내용2] 등록한 데이터 수정 | |
146 | + let updateResultData = await client.query( | |
147 | + `UPDATE | |
148 | + test_schema.test_table | |
149 | + SET | |
150 | + test_title = 'title transaction update' | |
151 | + , test_content = 'content transaction update' | |
152 | + , test_update_datetime = current_timestamp 1231ㄱㄹㅇㄴ | |
153 | + , test_update_user = 1 | |
154 | + WHERE | |
155 | + test_seq = ${insertResultData.rows[0].test_seq}` | |
156 | + ); | |
157 | + //console.log('수정 결과 정보 updateResultData : ', updateResultData); | |
158 | + | |
159 | + throw '트랜잭션 처리중 Error 강제로 발생시킴'; | |
160 | + | |
161 | + //5. *작업 완료시, 실행(dispatch)한 모든 쿼리를 COMMIT(커밋) | |
162 | + let commitResultData = await client.query('COMMIT'); | |
163 | + //console.log('커밋 결과 정보 commitResultData : ', commitResultData); | |
164 | + | |
165 | + //Promise resolve 처리 | |
166 | + resolve(commitResultData); | |
167 | + } catch (error) { | |
168 | + //5. *에러 완료시, 실행(dispatch)한 모든 쿼리를 COMMIT(커밋) | |
169 | + let rollbackResultData = await client.query('ROLLBACK'); | |
170 | + console.log('롤백 결과 정보 rollbackResultData : ', rollbackResultData); | |
171 | + | |
172 | + //Promise reject 처리 | |
173 | + reject(error); | |
174 | + } finally { | |
175 | + //6. 받아온 connection pool 반납(해제) - 필수(반납하지 않으면 해당 pool을 사용하는 query는 트랜잭션에 계속 매달려있음) | |
176 | + client.release(); | |
177 | + } | |
178 | + }).catch((error) => { | |
179 | + //Promise reject 처리 | |
180 | + reject(error); | |
181 | + }) | |
182 | + }); | |
183 | + },//testTransaction() end | |
184 | + | |
185 | + }//return end | |
186 | + | |
187 | + })(); | |
188 | + | |
189 | + //Module Export | |
190 | + module.exports = TestDAO;(파일 끝에 줄바꿈 문자 없음) |
+++ server/service/test/model/TestService.js
... | ... | @@ -0,0 +1,138 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.09.20 | |
4 | + * @dscription : 테스트용 서비스 로직을 담당하는 모듈 입니다. | |
5 | + */ | |
6 | + const TestService = (function () { | |
7 | + | |
8 | + //DAO | |
9 | + const TestDAO = require('./TestDAO'); | |
10 | + | |
11 | + //public object | |
12 | + return { | |
13 | + | |
14 | + /** | |
15 | + * @author : 최정우 | |
16 | + * @since : 2022.09.20 | |
17 | + * @dscription : 테스트 데이터 목록 조회 | |
18 | + * @callback : parameter -> {data: Object, error: Object} | |
19 | + */ | |
20 | + testSelectList: function (callback, param) { | |
21 | + //Data Access 접근 | |
22 | + let dataAccessResult = TestDAO.testSelectList(param); | |
23 | + //Data Access 결과 | |
24 | + dataAccessResult.then((data) => { | |
25 | + console.log('TestService testSelectList connect dataAccessResult : ', data); | |
26 | + callback({data: data, error: null});//Router에 결과 전달 | |
27 | + }).catch((error) => { | |
28 | + callback({data: null, error: error});//Router에 Error 전달 | |
29 | + }) | |
30 | + }, | |
31 | + | |
32 | + /** | |
33 | + * @author : 최정우 | |
34 | + * @since : 2022.09.20 | |
35 | + * @dscription : 테스트 데이터 상세 조회 | |
36 | + */ | |
37 | + testSelectOne: function (callback, param) { | |
38 | + param = [1]; | |
39 | + //Data Access 접근 | |
40 | + let dataAccessResult = TestDAO.testSelectOne(param); | |
41 | + //Data Access 결과 | |
42 | + dataAccessResult.then((data) => { | |
43 | + console.log('TestService testSelectOne connect dataAccessResult : ', data); | |
44 | + callback({data: data, error: null});//Router에 결과 전달 | |
45 | + }).catch((error) => { | |
46 | + callback({data: null, error: error});//Router에 Error 전달 | |
47 | + }) | |
48 | + }, | |
49 | + | |
50 | + /** | |
51 | + * @author : 최정우 | |
52 | + * @since : 2022.09.20 | |
53 | + * @dscription : 테스트 데이터 등록 | |
54 | + */ | |
55 | + testInsertOne: function (callback, param) { | |
56 | + param = ['test title', 'test content']; | |
57 | + //Data Access 접근 | |
58 | + let dataAccessResult = TestDAO.testInsertOne(param); | |
59 | + //Data Access 결과 | |
60 | + dataAccessResult.then((data) => { | |
61 | + console.log('TestService testInsertOne connect dataAccessResult : ', data.rows[0]['test_seq']); | |
62 | + callback({data: data, error: null});//Router에 결과 전달 | |
63 | + }).catch((error) => { | |
64 | + callback({data: null, error: error});//Router에 Error 전달 | |
65 | + }) | |
66 | + }, | |
67 | + | |
68 | + /** | |
69 | + * @author : 최정우 | |
70 | + * @since : 2022.09.20 | |
71 | + * @dscription : 테스트 데이터 수정 | |
72 | + */ | |
73 | + testUpdateOne: function (callback, param) { | |
74 | + param = [1, 'test title update', 'test content update']; | |
75 | + //Data Access 접근 | |
76 | + let dataAccessResult = TestDAO.testUpdateOne(param); | |
77 | + //Data Access 결과 | |
78 | + dataAccessResult.then((data) => { | |
79 | + console.log('TestService testUpdateOne connect dataAccessResult : ', data); | |
80 | + callback({data: data, error: null});//Router에 결과 전달 | |
81 | + }).catch((error) => { | |
82 | + callback({data: null, error: error});//Router에 Error 전달 | |
83 | + }) | |
84 | + }, | |
85 | + | |
86 | + /** | |
87 | + * @author : 최정우 | |
88 | + * @since : 2022.09.20 | |
89 | + * @dscription : 테스트 데이터 삭제 | |
90 | + */ | |
91 | + testDeleteOne: function (callback, param) { | |
92 | + param = [10]; | |
93 | + //Data Access 접근 | |
94 | + let dataAccessResult = TestDAO.testDeleteOne(param); | |
95 | + //Data Access 결과 | |
96 | + dataAccessResult.then((data) => { | |
97 | + console.log('TestService testDeleteOne connect dataAccessResult : ', data); | |
98 | + callback({data: data, error: null});//Router에 결과 전달 | |
99 | + }).catch((error) => { | |
100 | + callback({data: null, error: error});//Router에 Error 전달 | |
101 | + }) | |
102 | + }, | |
103 | + | |
104 | + /** | |
105 | + * @author : 최정우 | |
106 | + * @since : 2022.09.20 | |
107 | + * @dscription : 테스트 트랜젝션 처리 | |
108 | + * | |
109 | + * 트랜잭션 작업 진행 시나리오 | |
110 | + * 1. connection pool 한 개 받아오기 | |
111 | + * 2. BEGIN(트랜잭션 시작 처리) | |
112 | + * 3. [※작업내용1] 데이터 등록 | |
113 | + * 4. [※작업내용2] 등록한 데이터 수정 | |
114 | + * 5. *작업 완료시, 실행(dispatch)한 모든 쿼리를 COMMIT(커밋) | |
115 | + * *에러 발생시, 실행(dispatch)한 모든 쿼리를 ROLLBACK(롤백) | |
116 | + * 6. 받아온 connection pool 반납(해제) - 필수(반납하지 않으면 해당 pool을 사용하는 query는 트랜잭션에 계속 매달려있음) | |
117 | + */ | |
118 | + testTransaction: function (callback, param) { | |
119 | + param = ['test title', 'test content']; | |
120 | + //Data Access 접근 | |
121 | + let dataAccessResult = TestDAO.testTransaction(param); | |
122 | + //Data Access 결과 | |
123 | + dataAccessResult.then((data) => { | |
124 | + console.log('TestService testTransaction connect dataAccessResult : ', data); | |
125 | + callback({data: data, error: null});//Router에 결과 전달 | |
126 | + }).catch((error) => { | |
127 | + callback({data: null, error: error});//Router에 Error 전달 | |
128 | + }) | |
129 | + }, | |
130 | + | |
131 | + | |
132 | + } | |
133 | + | |
134 | + })(); | |
135 | + | |
136 | + //Module Export | |
137 | + module.exports = TestService; | |
138 | + (파일 끝에 줄바꿈 문자 없음) |
+++ server/service/test/router/TestRouter.js
... | ... | @@ -0,0 +1,119 @@ |
1 | +/** | |
2 | + * @author : 최정우 | |
3 | + * @since : 2022.09.20 | |
4 | + * @dscription : 테스트용 Router(Controller) 모듈 입니다. | |
5 | + */ | |
6 | +const express = require('express'); | |
7 | +const router = express.Router(); | |
8 | + | |
9 | +//Service | |
10 | +const TestService = require('../model/TestService'); | |
11 | + | |
12 | + | |
13 | +/** | |
14 | + * @author : 최정우 | |
15 | + * @since : 2022.09.20 | |
16 | + * @dscription : 테스트 데이터 목록 조회(POST) | |
17 | + */ | |
18 | +router.get('/testSelectList.json', function (request, response, next) { | |
19 | + //Callback 함수 Parameter result = {data: Object, error: Object} | |
20 | + TestService.testSelectList((result) => { | |
21 | + if (!result.error) { | |
22 | + response.send(result.data); | |
23 | + } else { | |
24 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
25 | + } | |
26 | + }); | |
27 | +}) | |
28 | + | |
29 | +/** | |
30 | + * @author : 최정우 | |
31 | + * @since : 2022.09.20 | |
32 | + * @dscription : 테스트 데이터 상세 조회(POST) | |
33 | + */ | |
34 | +router.get('/testSelectOne.json', function (request, response, next) { | |
35 | + //Callback 함수 Parameter -> result = {data: Object, error: Object} | |
36 | + TestService.testSelectOne((result) => { | |
37 | + if (!result.error) { | |
38 | + response.send(result.data); | |
39 | + } else { | |
40 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
41 | + } | |
42 | + }); | |
43 | +}) | |
44 | + | |
45 | +/** | |
46 | + * @author : 최정우 | |
47 | + * @since : 2022.09.20 | |
48 | + * @dscription : 테스트 데이터 등록 (POST) | |
49 | + */ | |
50 | +router.get('/testInsertOne.json', function (request, response, next) { | |
51 | + //Callback 함수 Parameter -> result = {data: Object, error: Object} | |
52 | + TestService.testInsertOne((result) => { | |
53 | + if (!result.error) { | |
54 | + response.send(result.data); | |
55 | + } else { | |
56 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
57 | + } | |
58 | + }) | |
59 | +}) | |
60 | + | |
61 | +/** | |
62 | + * @author : 최정우 | |
63 | + * @since : 2022.09.20 | |
64 | + * @dscription : 테스트 데이터 수정 (POST) | |
65 | + */ | |
66 | +router.get('/testUpdateOne.json', function (request, response, next) { | |
67 | + //Callback 함수 Parameter -> result = {data: Object, error: Object} | |
68 | + TestService.testUpdateOne((result) => { | |
69 | + if (!result.error) { | |
70 | + response.send(result.data); | |
71 | + } else { | |
72 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
73 | + } | |
74 | + }) | |
75 | +}) | |
76 | + | |
77 | +/** | |
78 | + * @author : 최정우 | |
79 | + * @since : 2022.09.20 | |
80 | + * @dscription : 테스트 데이터 삭제 (POST) | |
81 | + */ | |
82 | +router.get('/testDeleteOne.json', function (request, response, next) { | |
83 | + //Callback 함수 Parameter -> result = {data: Object, error: Object} | |
84 | + TestService.testDeleteOne((result) => { | |
85 | + if (!result.error) { | |
86 | + response.send(result.data); | |
87 | + } else { | |
88 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
89 | + } | |
90 | + }) | |
91 | +}) | |
92 | + | |
93 | +/** | |
94 | + * @author : 최정우 | |
95 | + * @since : 2022.09.20 | |
96 | + * @dscription : 테스트 트랜젝션 처리 | |
97 | + * | |
98 | + * 트랜잭션 작업 진행 시나리오 | |
99 | + * 1. connection pool 한 개 받아오기 | |
100 | + * 2. BEGIN(트랜잭션 시작 처리) | |
101 | + * 3. [※작업내용1] 데이터 등록 | |
102 | + * 4. [※작업내용2] 등록한 데이터 수정 | |
103 | + * 5. *작업 완료시, 실행(dispatch)한 모든 쿼리를 COMMIT(커밋) | |
104 | + * *에러 발생시, 실행(dispatch)한 모든 쿼리를 ROLLBACK(롤백) | |
105 | + * 6. 받아온 connection pool 반납(해제) - 필수(반납하지 않으면 해당 pool을 사용하는 query는 트랜잭션에 계속 매달려있음) | |
106 | + */ | |
107 | +router.get('/testTransaction.json', function (request, response, next) { | |
108 | + //Callback 함수 Parameter -> result = {data: Object, error: Object} | |
109 | + TestService.testTransaction((result) => { | |
110 | + if (!result.error) { | |
111 | + response.send(result.data); | |
112 | + } else { | |
113 | + next(result.error);//Global Error Handler에게 예외상황 맡기기 | |
114 | + } | |
115 | + }) | |
116 | +}) | |
117 | + | |
118 | +//Module Export | |
119 | +module.exports = router;(파일 끝에 줄바꿈 문자 없음) |
+++ webpack.config.js
... | ... | @@ -0,0 +1,42 @@ |
1 | +const { VueLoaderPlugin } = require("vue-loader"); | |
2 | + | |
3 | +const {PROJECT_NAME, BASE_DIR, SERVICE_STATUS} = require('./Global'); | |
4 | + | |
5 | +module.exports = { | |
6 | + name: PROJECT_NAME, | |
7 | + mode: SERVICE_STATUS, | |
8 | + devtool: 'eval', | |
9 | + | |
10 | + entry: { | |
11 | + app: [`${BASE_DIR}/client/views/index.js`] | |
12 | + }, | |
13 | + | |
14 | + module: { | |
15 | + rules: [{ | |
16 | + test: /\.vue?$/, | |
17 | + loader: 'vue-loader', | |
18 | + }, { | |
19 | + test: /\.(js|jsx)?$/, | |
20 | + loader: 'babel-loader', | |
21 | + }, { | |
22 | + test: /\.css$/, | |
23 | + use: ['vue-style-loader', 'css-loader'] | |
24 | + }, { | |
25 | + test: /\.(jpe?g|png|gif|svg|ttf|eot|woff|woff2)$/i, | |
26 | + use: [{ | |
27 | + loader:'url-loader', | |
28 | + options:{ | |
29 | + limit:8192, | |
30 | + fallback:require.resolve('file-loader') | |
31 | + } | |
32 | + }] | |
33 | + }], | |
34 | + }, | |
35 | + | |
36 | + plugins: [new VueLoaderPlugin()], | |
37 | + | |
38 | + output: { | |
39 | + path: `${BASE_DIR}/client/build`, // __dirname: webpack.config.js 파일이 위치한 경로 | |
40 | + filename: 'bundle.js' | |
41 | + }, | |
42 | +}(파일 끝에 줄바꿈 문자 없음) |
+++ yarn-error.log
... | ... | @@ -0,0 +1,75 @@ |
1 | +Arguments: | |
2 | + C:\takensoft\dev\Nodejs\node.exe C:\Program Files (x86)\Yarn\bin\yarn.js add 'vue-awesome-swiper' --save-dev | |
3 | + | |
4 | +PATH: | |
5 | + C:\takensoft\tools\nodejs\;C:\Program Files (x86)\Yarn\bin\;C:\Program Files\Git\cmd;C:\Windows\System32;C:\takensoft\tools\nodejs;C:\takensoft\dev\Nodejs\;C:\takensoft\tools\jdk\jdk-15\bin\;C:\takensoft\download\Maven\apache-maven-3.9.0-bin\apache-maven-3.9.0\bin\;C:\takensoft\download\apache-tomcat-9.0.73\bin\;C:\Users\mycom\AppData\Local\Microsoft\WindowsApps;C:\takensoft\tools\intellij\IntelliJ IDEA 2020.1.2\bin;;C:\Users\mycom\AppData\Local\GitHubDesktop\bin;C:\Users\mycom\AppData\Local\Yarn\bin;C:\takensoft\tools\vscode\bin;C:\Users\mycom\AppData\Roaming\npm | |
6 | + | |
7 | +Yarn version: | |
8 | + 1.22.19 | |
9 | + | |
10 | +Node version: | |
11 | + 18.16.1 | |
12 | + | |
13 | +Platform: | |
14 | + win32 x64 | |
15 | + | |
16 | +Trace: | |
17 | + Error: https://registry.yarnpkg.com/%27vue-awesome-swiper%27: Not found | |
18 | + at params.callback [as _callback] (C:\Program Files (x86)\Yarn\lib\cli.js:66145:18) | |
19 | + at self.callback (C:\Program Files (x86)\Yarn\lib\cli.js:140890:22) | |
20 | + at Request.emit (node:events:513:28) | |
21 | + at Request.<anonymous> (C:\Program Files (x86)\Yarn\lib\cli.js:141862:10) | |
22 | + at Request.emit (node:events:513:28) | |
23 | + at IncomingMessage.<anonymous> (C:\Program Files (x86)\Yarn\lib\cli.js:141784:12) | |
24 | + at Object.onceWrapper (node:events:627:28) | |
25 | + at IncomingMessage.emit (node:events:525:35) | |
26 | + at endReadableNT (node:internal/streams/readable:1359:12) | |
27 | + at process.processTicksAndRejections (node:internal/process/task_queues:82:21) | |
28 | + | |
29 | +npm manifest: | |
30 | + { | |
31 | + "dependencies": { | |
32 | + "@babel/cli": "7.19.3", | |
33 | + "@babel/core": "7.19.3", | |
34 | + "@fortawesome/fontawesome-svg-core": "^6.4.2", | |
35 | + "@fortawesome/free-brands-svg-icons": "^6.4.2", | |
36 | + "@fortawesome/free-regular-svg-icons": "^6.4.2", | |
37 | + "@fortawesome/free-solid-svg-icons": "^6.4.2", | |
38 | + "@fortawesome/vue-fontawesome": "^3.0.3", | |
39 | + "axios": "^1.5.1", | |
40 | + "babel-loader": "8.2.5", | |
41 | + "css-loader": "6.7.1", | |
42 | + "express": "4.18.1", | |
43 | + "express-http-proxy": "^2.0.0", | |
44 | + "file-loader": "6.2.0", | |
45 | + "fs": "0.0.1-security", | |
46 | + "new-line": "^1.1.1", | |
47 | + "pg": "8.8.0", | |
48 | + "swiper": "^5.3.7", | |
49 | + "url-loader": "4.1.1", | |
50 | + "vue": "3.2.40", | |
51 | + "vue-loader": "^17.0.0", | |
52 | + "vue-router": "4.1.5", | |
53 | + "vue-style-loader": "4.1.3", | |
54 | + "vue3-sfc-loader": "^0.8.4", | |
55 | + "vuex": "^4.1.0", | |
56 | + "webpack": "5.74.0", | |
57 | + "webpack-cli": "4.10.0" | |
58 | + }, | |
59 | + "scripts": { | |
60 | + "prod": "set NODE_ENV=production&&node ./server/modules/web/server.js", | |
61 | + "dev": "set NODE_ENV=development&&node ./server/modules/web/server.js", | |
62 | + "windows-prod": "set NODE_ENV=production&&node ./server/modules/web/server.js", | |
63 | + "windows-dev": "set NODE_ENV=development&&node ./server/modules/web/server.js", | |
64 | + "linux-prod": "export NODE_ENV=production&&node ./server/modules/web/server.js", | |
65 | + "linux-dev": "export NODE_ENV=development&&node ./server/modules/web/server.js", | |
66 | + "webpack-build": "webpack", | |
67 | + "webpack-build-watch": "webpack --watch" | |
68 | + } | |
69 | + } | |
70 | + | |
71 | +yarn manifest: | |
72 | + No manifest | |
73 | + | |
74 | +Lockfile: | |
75 | + No lockfile |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?