diff options
-rw-r--r-- | subprojects/frontend/index.html | 262 | ||||
-rw-r--r-- | subprojects/frontend/package.json | 4 | ||||
-rw-r--r-- | subprojects/frontend/src/index.tsx | 10 | ||||
-rw-r--r-- | subprojects/frontend/src/theme/ThemeProvider.tsx | 3 | ||||
-rw-r--r-- | subprojects/frontend/vite.config.ts | 23 | ||||
-rw-r--r-- | yarn.lock | 131 |
6 files changed, 412 insertions, 21 deletions
diff --git a/subprojects/frontend/index.html b/subprojects/frontend/index.html index 92cc94c7..e14e8d30 100644 --- a/subprojects/frontend/index.html +++ b/subprojects/frontend/index.html | |||
@@ -12,6 +12,268 @@ | |||
12 | <link rel="mask-icon" href="/mask-icon.svg" type="image/svg+xml" color="#038a99"> | 12 | <link rel="mask-icon" href="/mask-icon.svg" type="image/svg+xml" color="#038a99"> |
13 | <meta name="theme-color" media="(prefers-color-scheme: dark)" content="#21252b"> | 13 | <meta name="theme-color" media="(prefers-color-scheme: dark)" content="#21252b"> |
14 | <meta name="theme-color" media="(prefers-color-scheme: light)" content="#fafafa"> | 14 | <meta name="theme-color" media="(prefers-color-scheme: light)" content="#fafafa"> |
15 | <style> | ||
16 | @import '@fontsource/jetbrains-mono/variable.css'; | ||
17 | @import '@fontsource/jetbrains-mono/variable-italic.css'; | ||
18 | |||
19 | /* roboto-cyrillic-ext-300-normal*/ | ||
20 | @font-face { | ||
21 | font-family: 'Roboto'; | ||
22 | font-style: normal; | ||
23 | font-display: swap; | ||
24 | font-weight: 300; | ||
25 | src: url('@fontsource/roboto/files/roboto-cyrillic-ext-300-normal.woff2') format('woff2'); | ||
26 | unicode-range: U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; | ||
27 | } | ||
28 | /* roboto-cyrillic-300-normal*/ | ||
29 | @font-face { | ||
30 | font-family: 'Roboto'; | ||
31 | font-style: normal; | ||
32 | font-display: swap; | ||
33 | font-weight: 300; | ||
34 | src: url('@fontsource/roboto/files/roboto-cyrillic-300-normal.woff2') format('woff2'); | ||
35 | unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; | ||
36 | } | ||
37 | /* roboto-greek-ext-300-normal*/ | ||
38 | @font-face { | ||
39 | font-family: 'Roboto'; | ||
40 | font-style: normal; | ||
41 | font-display: swap; | ||
42 | font-weight: 300; | ||
43 | src: url('@fontsource/roboto/files/roboto-greek-ext-300-normal.woff2') format('woff2'); | ||
44 | unicode-range: U+1F00-1FFF; | ||
45 | } | ||
46 | /* roboto-greek-300-normal*/ | ||
47 | @font-face { | ||
48 | font-family: 'Roboto'; | ||
49 | font-style: normal; | ||
50 | font-display: swap; | ||
51 | font-weight: 300; | ||
52 | src: url('@fontsource/roboto/files/roboto-greek-300-normal.woff2') format('woff2'); | ||
53 | unicode-range: U+0370-03FF; | ||
54 | } | ||
55 | /* roboto-vietnamese-300-normal*/ | ||
56 | @font-face { | ||
57 | font-family: 'Roboto'; | ||
58 | font-style: normal; | ||
59 | font-display: swap; | ||
60 | font-weight: 300; | ||
61 | src: url('@fontsource/roboto/files/roboto-vietnamese-300-normal.woff2') format('woff2'); | ||
62 | unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB; | ||
63 | } | ||
64 | /* roboto-latin-ext-300-normal*/ | ||
65 | @font-face { | ||
66 | font-family: 'Roboto'; | ||
67 | font-style: normal; | ||
68 | font-display: swap; | ||
69 | font-weight: 300; | ||
70 | src: url('@fontsource/roboto/files/roboto-latin-ext-300-normal.woff2') format('woff2'); | ||
71 | unicode-range: U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF; | ||
72 | } | ||
73 | /* roboto-latin-300-normal*/ | ||
74 | @font-face { | ||
75 | font-family: 'Roboto'; | ||
76 | font-style: normal; | ||
77 | font-display: swap; | ||
78 | font-weight: 300; | ||
79 | src: url('@fontsource/roboto/files/roboto-latin-300-normal.woff2') format('woff2'); | ||
80 | unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; | ||
81 | } | ||
82 | /* roboto-cyrillic-ext-400-normal*/ | ||
83 | @font-face { | ||
84 | font-family: 'Roboto'; | ||
85 | font-style: normal; | ||
86 | font-display: swap; | ||
87 | font-weight: 400; | ||
88 | src: url('@fontsource/roboto/files/roboto-cyrillic-ext-400-normal.woff2') format('woff2'); | ||
89 | unicode-range: U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; | ||
90 | } | ||
91 | /* roboto-cyrillic-400-normal*/ | ||
92 | @font-face { | ||
93 | font-family: 'Roboto'; | ||
94 | font-style: normal; | ||
95 | font-display: swap; | ||
96 | font-weight: 400; | ||
97 | src: url('@fontsource/roboto/files/roboto-cyrillic-400-normal.woff2') format('woff2'); | ||
98 | unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; | ||
99 | } | ||
100 | /* roboto-greek-ext-400-normal*/ | ||
101 | @font-face { | ||
102 | font-family: 'Roboto'; | ||
103 | font-style: normal; | ||
104 | font-display: swap; | ||
105 | font-weight: 400; | ||
106 | src: url('@fontsource/roboto/files/roboto-greek-ext-400-normal.woff2') format('woff2'); | ||
107 | unicode-range: U+1F00-1FFF; | ||
108 | } | ||
109 | /* roboto-greek-400-normal*/ | ||
110 | @font-face { | ||
111 | font-family: 'Roboto'; | ||
112 | font-style: normal; | ||
113 | font-display: swap; | ||
114 | font-weight: 400; | ||
115 | src: url('@fontsource/roboto/files/roboto-greek-400-normal.woff2') format('woff2'); | ||
116 | unicode-range: U+0370-03FF; | ||
117 | } | ||
118 | /* roboto-vietnamese-400-normal*/ | ||
119 | @font-face { | ||
120 | font-family: 'Roboto'; | ||
121 | font-style: normal; | ||
122 | font-display: swap; | ||
123 | font-weight: 400; | ||
124 | src: url('@fontsource/roboto/files/roboto-vietnamese-400-normal.woff2') format('woff2'); | ||
125 | unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB; | ||
126 | } | ||
127 | /* roboto-latin-ext-400-normal*/ | ||
128 | @font-face { | ||
129 | font-family: 'Roboto'; | ||
130 | font-style: normal; | ||
131 | font-display: swap; | ||
132 | font-weight: 400; | ||
133 | src: url('@fontsource/roboto/files/roboto-latin-ext-400-normal.woff2') format('woff2'); | ||
134 | unicode-range: U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF; | ||
135 | } | ||
136 | /* roboto-latin-400-normal*/ | ||
137 | @font-face { | ||
138 | font-family: 'Roboto'; | ||
139 | font-style: normal; | ||
140 | font-display: swap; | ||
141 | font-weight: 400; | ||
142 | src: url('@fontsource/roboto/files/roboto-latin-400-normal.woff2') format('woff2'); | ||
143 | unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; | ||
144 | } | ||
145 | /* roboto-cyrillic-ext-500-normal*/ | ||
146 | @font-face { | ||
147 | font-family: 'Roboto'; | ||
148 | font-style: normal; | ||
149 | font-display: swap; | ||
150 | font-weight: 500; | ||
151 | src: url('@fontsource/roboto/files/roboto-cyrillic-ext-500-normal.woff2') format('woff2'); | ||
152 | unicode-range: U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; | ||
153 | } | ||
154 | /* roboto-cyrillic-500-normal*/ | ||
155 | @font-face { | ||
156 | font-family: 'Roboto'; | ||
157 | font-style: normal; | ||
158 | font-display: swap; | ||
159 | font-weight: 500; | ||
160 | src: url('@fontsource/roboto/files/roboto-cyrillic-500-normal.woff2') format('woff2'); | ||
161 | unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; | ||
162 | } | ||
163 | /* roboto-greek-ext-500-normal*/ | ||
164 | @font-face { | ||
165 | font-family: 'Roboto'; | ||
166 | font-style: normal; | ||
167 | font-display: swap; | ||
168 | font-weight: 500; | ||
169 | src: url('@fontsource/roboto/files/roboto-greek-ext-500-normal.woff2') format('woff2'); | ||
170 | unicode-range: U+1F00-1FFF; | ||
171 | } | ||
172 | /* roboto-greek-500-normal*/ | ||
173 | @font-face { | ||
174 | font-family: 'Roboto'; | ||
175 | font-style: normal; | ||
176 | font-display: swap; | ||
177 | font-weight: 500; | ||
178 | src: url('@fontsource/roboto/files/roboto-greek-500-normal.woff2') format('woff2'); | ||
179 | unicode-range: U+0370-03FF; | ||
180 | } | ||
181 | /* roboto-vietnamese-500-normal*/ | ||
182 | @font-face { | ||
183 | font-family: 'Roboto'; | ||
184 | font-style: normal; | ||
185 | font-display: swap; | ||
186 | font-weight: 500; | ||
187 | src: url('@fontsource/roboto/files/roboto-vietnamese-500-normal.woff2') format('woff2'); | ||
188 | unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB; | ||
189 | } | ||
190 | /* roboto-latin-ext-500-normal*/ | ||
191 | @font-face { | ||
192 | font-family: 'Roboto'; | ||
193 | font-style: normal; | ||
194 | font-display: swap; | ||
195 | font-weight: 500; | ||
196 | src: url('@fontsource/roboto/files/roboto-latin-ext-500-normal.woff2') format('woff2'); | ||
197 | unicode-range: U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF; | ||
198 | } | ||
199 | /* roboto-latin-500-normal*/ | ||
200 | @font-face { | ||
201 | font-family: 'Roboto'; | ||
202 | font-style: normal; | ||
203 | font-display: swap; | ||
204 | font-weight: 500; | ||
205 | src: url('@fontsource/roboto/files/roboto-latin-500-normal.woff2') format('woff2'); | ||
206 | unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; | ||
207 | } | ||
208 | /* roboto-cyrillic-ext-700-normal*/ | ||
209 | @font-face { | ||
210 | font-family: 'Roboto'; | ||
211 | font-style: normal; | ||
212 | font-display: swap; | ||
213 | font-weight: 700; | ||
214 | src: url('@fontsource/roboto/files/roboto-cyrillic-ext-700-normal.woff2') format('woff2'); | ||
215 | unicode-range: U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; | ||
216 | } | ||
217 | /* roboto-cyrillic-700-normal*/ | ||
218 | @font-face { | ||
219 | font-family: 'Roboto'; | ||
220 | font-style: normal; | ||
221 | font-display: swap; | ||
222 | font-weight: 700; | ||
223 | src: url('@fontsource/roboto/files/roboto-cyrillic-700-normal.woff2') format('woff2'); | ||
224 | unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; | ||
225 | } | ||
226 | /* roboto-greek-ext-700-normal*/ | ||
227 | @font-face { | ||
228 | font-family: 'Roboto'; | ||
229 | font-style: normal; | ||
230 | font-display: swap; | ||
231 | font-weight: 700; | ||
232 | src: url('@fontsource/roboto/files/roboto-greek-ext-700-normal.woff2') format('woff2'); | ||
233 | unicode-range: U+1F00-1FFF; | ||
234 | } | ||
235 | /* roboto-greek-700-normal*/ | ||
236 | @font-face { | ||
237 | font-family: 'Roboto'; | ||
238 | font-style: normal; | ||
239 | font-display: swap; | ||
240 | font-weight: 700; | ||
241 | src: url('@fontsource/roboto/files/roboto-greek-700-normal.woff2') format('woff2'); | ||
242 | unicode-range: U+0370-03FF; | ||
243 | } | ||
244 | /* roboto-vietnamese-700-normal*/ | ||
245 | @font-face { | ||
246 | font-family: 'Roboto'; | ||
247 | font-style: normal; | ||
248 | font-display: swap; | ||
249 | font-weight: 700; | ||
250 | src: url('@fontsource/roboto/files/roboto-vietnamese-700-normal.woff2') format('woff2'); | ||
251 | unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB; | ||
252 | } | ||
253 | /* roboto-latin-ext-700-normal*/ | ||
254 | @font-face { | ||
255 | font-family: 'Roboto'; | ||
256 | font-style: normal; | ||
257 | font-display: swap; | ||
258 | font-weight: 700; | ||
259 | src: url('@fontsource/roboto/files/roboto-latin-ext-700-normal.woff2') format('woff2'); | ||
260 | unicode-range: U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF; | ||
261 | } | ||
262 | /* roboto-latin-700-normal*/ | ||
263 | @font-face { | ||
264 | font-family: 'Roboto'; | ||
265 | font-style: normal; | ||
266 | font-display: swap; | ||
267 | font-weight: 700; | ||
268 | src: url('@fontsource/roboto/files/roboto-latin-700-normal.woff2') format('woff2'); | ||
269 | unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; | ||
270 | } | ||
271 | |||
272 | body { | ||
273 | color: #ebebff; | ||
274 | background: #282c34; | ||
275 | } | ||
276 | </style> | ||
15 | </head> | 277 | </head> |
16 | <body> | 278 | <body> |
17 | <noscript> | 279 | <noscript> |
diff --git a/subprojects/frontend/package.json b/subprojects/frontend/package.json index 693f3d06..aa453cd0 100644 --- a/subprojects/frontend/package.json +++ b/subprojects/frontend/package.json | |||
@@ -55,7 +55,8 @@ | |||
55 | "devDependencies": { | 55 | "devDependencies": { |
56 | "@lezer/generator": "^1.1.1", | 56 | "@lezer/generator": "^1.1.1", |
57 | "@types/eslint": "^8.4.6", | 57 | "@types/eslint": "^8.4.6", |
58 | "@types/node": "^18.7.7", | 58 | "@types/html-minifier-terser": "^7.0.0", |
59 | "@types/node": "^18.7.8", | ||
59 | "@types/prettier": "^2.7.0", | 60 | "@types/prettier": "^2.7.0", |
60 | "@types/react": "^18.0.17", | 61 | "@types/react": "^18.0.17", |
61 | "@types/react-dom": "^18.0.6", | 62 | "@types/react-dom": "^18.0.6", |
@@ -73,6 +74,7 @@ | |||
73 | "eslint-plugin-prettier": "^4.2.1", | 74 | "eslint-plugin-prettier": "^4.2.1", |
74 | "eslint-plugin-react": "^7.30.1", | 75 | "eslint-plugin-react": "^7.30.1", |
75 | "eslint-plugin-react-hooks": "^4.6.0", | 76 | "eslint-plugin-react-hooks": "^4.6.0", |
77 | "html-minifier-terser": "^7.0.0", | ||
76 | "prettier": "^2.7.1", | 78 | "prettier": "^2.7.1", |
77 | "typescript": "~4.7.4", | 79 | "typescript": "~4.7.4", |
78 | "vite": "^3.0.9", | 80 | "vite": "^3.0.9", |
diff --git a/subprojects/frontend/src/index.tsx b/subprojects/frontend/src/index.tsx index b108df6d..a65821ef 100644 --- a/subprojects/frontend/src/index.tsx +++ b/subprojects/frontend/src/index.tsx | |||
@@ -1,14 +1,4 @@ | |||
1 | import CssBaseline from '@mui/material/CssBaseline'; | 1 | import CssBaseline from '@mui/material/CssBaseline'; |
2 | import '@fontsource/jetbrains-mono/400.css'; | ||
3 | import '@fontsource/jetbrains-mono/400-italic.css'; | ||
4 | import '@fontsource/jetbrains-mono/700.css'; | ||
5 | import '@fontsource/jetbrains-mono/700-italic.css'; | ||
6 | import '@fontsource/jetbrains-mono/variable.css'; | ||
7 | import '@fontsource/jetbrains-mono/variable-italic.css'; | ||
8 | import '@fontsource/roboto/300.css'; | ||
9 | import '@fontsource/roboto/400.css'; | ||
10 | import '@fontsource/roboto/500.css'; | ||
11 | import '@fontsource/roboto/700.css'; | ||
12 | import { SnackbarProvider } from 'notistack'; | 2 | import { SnackbarProvider } from 'notistack'; |
13 | import React, { Suspense, lazy } from 'react'; | 3 | import React, { Suspense, lazy } from 'react'; |
14 | import { createRoot } from 'react-dom/client'; | 4 | import { createRoot } from 'react-dom/client'; |
diff --git a/subprojects/frontend/src/theme/ThemeProvider.tsx b/subprojects/frontend/src/theme/ThemeProvider.tsx index 5bc14704..3a0703fe 100644 --- a/subprojects/frontend/src/theme/ThemeProvider.tsx +++ b/subprojects/frontend/src/theme/ThemeProvider.tsx | |||
@@ -64,7 +64,8 @@ declare module '@mui/material/styles' { | |||
64 | 64 | ||
65 | const typography: TypographyVariantsOptions = { | 65 | const typography: TypographyVariantsOptions = { |
66 | editor: { | 66 | editor: { |
67 | fontFamily: '"JetBrains MonoVariable", "JetBrains Mono", monospace', | 67 | fontFamily: |
68 | '"JetBrains MonoVariable", "JetBrains Mono", "Cascadia Code", "Fira Code", monospace', | ||
68 | fontFeatureSettings: '"liga", "calt"', | 69 | fontFeatureSettings: '"liga", "calt"', |
69 | fontSize: '1rem', | 70 | fontSize: '1rem', |
70 | fontWeight: 400, | 71 | fontWeight: 400, |
diff --git a/subprojects/frontend/vite.config.ts b/subprojects/frontend/vite.config.ts index bb421788..6ec2d513 100644 --- a/subprojects/frontend/vite.config.ts +++ b/subprojects/frontend/vite.config.ts | |||
@@ -4,7 +4,8 @@ import { fileURLToPath } from 'node:url'; | |||
4 | 4 | ||
5 | import { lezer } from '@lezer/generator/rollup'; | 5 | import { lezer } from '@lezer/generator/rollup'; |
6 | import react from '@vitejs/plugin-react'; | 6 | import react from '@vitejs/plugin-react'; |
7 | import { defineConfig } from 'vite'; | 7 | import { minify } from 'html-minifier-terser'; |
8 | import { defineConfig, PluginOption } from 'vite'; | ||
8 | import injectPreload from 'vite-plugin-inject-preload'; | 9 | import injectPreload from 'vite-plugin-inject-preload'; |
9 | import { VitePWA } from 'vite-plugin-pwa'; | 10 | import { VitePWA } from 'vite-plugin-pwa'; |
10 | 11 | ||
@@ -33,12 +34,32 @@ const { name: packageName, version: packageVersion } = JSON.parse( | |||
33 | process.env.VITE_PACKAGE_NAME ??= packageName; | 34 | process.env.VITE_PACKAGE_NAME ??= packageName; |
34 | process.env.VITE_PACKAGE_VERSION ??= packageVersion; | 35 | process.env.VITE_PACKAGE_VERSION ??= packageVersion; |
35 | 36 | ||
37 | const minifyPlugin: PluginOption = { | ||
38 | name: 'minify-html', | ||
39 | enforce: 'post', | ||
40 | async transformIndexHtml(html) { | ||
41 | if (isDevelopment) { | ||
42 | return html; | ||
43 | } | ||
44 | return minify(html, { | ||
45 | collapseWhitespace: true, | ||
46 | collapseBooleanAttributes: true, | ||
47 | minifyCSS: true, | ||
48 | removeComments: true, | ||
49 | removeAttributeQuotes: true, | ||
50 | removeRedundantAttributes: true, | ||
51 | sortAttributes: true, | ||
52 | }); | ||
53 | }, | ||
54 | }; | ||
55 | |||
36 | export default defineConfig({ | 56 | export default defineConfig({ |
37 | logLevel: 'info', | 57 | logLevel: 'info', |
38 | mode, | 58 | mode, |
39 | root: thisDir, | 59 | root: thisDir, |
40 | cacheDir: path.join(thisDir, 'build/vite/cache'), | 60 | cacheDir: path.join(thisDir, 'build/vite/cache'), |
41 | plugins: [ | 61 | plugins: [ |
62 | minifyPlugin, | ||
42 | react({ | 63 | react({ |
43 | babel: { | 64 | babel: { |
44 | // Gets rid of deoptimization warnings for large chunks. | 65 | // Gets rid of deoptimization warnings for large chunks. |
@@ -2009,7 +2009,8 @@ __metadata: | |||
2009 | "@mui/icons-material": 5.8.4 | 2009 | "@mui/icons-material": 5.8.4 |
2010 | "@mui/material": 5.10.1 | 2010 | "@mui/material": 5.10.1 |
2011 | "@types/eslint": ^8.4.6 | 2011 | "@types/eslint": ^8.4.6 |
2012 | "@types/node": ^18.7.7 | 2012 | "@types/html-minifier-terser": ^7.0.0 |
2013 | "@types/node": ^18.7.8 | ||
2013 | "@types/prettier": ^2.7.0 | 2014 | "@types/prettier": ^2.7.0 |
2014 | "@types/react": ^18.0.17 | 2015 | "@types/react": ^18.0.17 |
2015 | "@types/react-dom": ^18.0.6 | 2016 | "@types/react-dom": ^18.0.6 |
@@ -2029,6 +2030,7 @@ __metadata: | |||
2029 | eslint-plugin-prettier: ^4.2.1 | 2030 | eslint-plugin-prettier: ^4.2.1 |
2030 | eslint-plugin-react: ^7.30.1 | 2031 | eslint-plugin-react: ^7.30.1 |
2031 | eslint-plugin-react-hooks: ^4.6.0 | 2032 | eslint-plugin-react-hooks: ^4.6.0 |
2033 | html-minifier-terser: ^7.0.0 | ||
2032 | loglevel: ^1.8.0 | 2034 | loglevel: ^1.8.0 |
2033 | loglevel-plugin-prefix: ^0.8.4 | 2035 | loglevel-plugin-prefix: ^0.8.4 |
2034 | mobx: ^6.6.1 | 2036 | mobx: ^6.6.1 |
@@ -2157,6 +2159,13 @@ __metadata: | |||
2157 | languageName: node | 2159 | languageName: node |
2158 | linkType: hard | 2160 | linkType: hard |
2159 | 2161 | ||
2162 | "@types/html-minifier-terser@npm:^7.0.0": | ||
2163 | version: 7.0.0 | ||
2164 | resolution: "@types/html-minifier-terser@npm:7.0.0" | ||
2165 | checksum: a7a42816bdacf507c9df764c0de6b55b00bfc341e69b8a2adb936aa68da8c7eb73c3d58957d9fd74610198893bce1c73f40fdbb47f468b2621eb4ccdbc3c9ba1 | ||
2166 | languageName: node | ||
2167 | linkType: hard | ||
2168 | |||
2160 | "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.9": | 2169 | "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.9": |
2161 | version: 7.0.11 | 2170 | version: 7.0.11 |
2162 | resolution: "@types/json-schema@npm:7.0.11" | 2171 | resolution: "@types/json-schema@npm:7.0.11" |
@@ -2171,10 +2180,10 @@ __metadata: | |||
2171 | languageName: node | 2180 | languageName: node |
2172 | linkType: hard | 2181 | linkType: hard |
2173 | 2182 | ||
2174 | "@types/node@npm:*, @types/node@npm:^18.7.7": | 2183 | "@types/node@npm:*, @types/node@npm:^18.7.8": |
2175 | version: 18.7.7 | 2184 | version: 18.7.8 |
2176 | resolution: "@types/node@npm:18.7.7" | 2185 | resolution: "@types/node@npm:18.7.8" |
2177 | checksum: 5681ab6ed2a82f4b84d4f92901d5ed270e33234f500fa594153426dd5a2a865775a68875a12d9a5dded9d8619a8c3c876fd9fd16ebc7eb7488f51352164b367a | 2186 | checksum: e0125efefa896083c05f549d93166109959ffdd68cb626aad0d660c0ce9de888fe405b4763b4a3c3e0968560409c272413e0ad07204522543c688e162a617ecb |
2178 | languageName: node | 2187 | languageName: node |
2179 | linkType: hard | 2188 | linkType: hard |
2180 | 2189 | ||
@@ -2779,6 +2788,16 @@ __metadata: | |||
2779 | languageName: node | 2788 | languageName: node |
2780 | linkType: hard | 2789 | linkType: hard |
2781 | 2790 | ||
2791 | "camel-case@npm:^4.1.2": | ||
2792 | version: 4.1.2 | ||
2793 | resolution: "camel-case@npm:4.1.2" | ||
2794 | dependencies: | ||
2795 | pascal-case: ^3.1.2 | ||
2796 | tslib: ^2.0.3 | ||
2797 | checksum: bcbd25cd253b3cbc69be3f535750137dbf2beb70f093bdc575f73f800acc8443d34fd52ab8f0a2413c34f1e8203139ffc88428d8863e4dfe530cfb257a379ad6 | ||
2798 | languageName: node | ||
2799 | linkType: hard | ||
2800 | |||
2782 | "caniuse-lite@npm:^1.0.30001370": | 2801 | "caniuse-lite@npm:^1.0.30001370": |
2783 | version: 1.0.30001370 | 2802 | version: 1.0.30001370 |
2784 | resolution: "caniuse-lite@npm:1.0.30001370" | 2803 | resolution: "caniuse-lite@npm:1.0.30001370" |
@@ -2814,6 +2833,15 @@ __metadata: | |||
2814 | languageName: node | 2833 | languageName: node |
2815 | linkType: hard | 2834 | linkType: hard |
2816 | 2835 | ||
2836 | "clean-css@npm:5.2.0": | ||
2837 | version: 5.2.0 | ||
2838 | resolution: "clean-css@npm:5.2.0" | ||
2839 | dependencies: | ||
2840 | source-map: ~0.6.0 | ||
2841 | checksum: ccb63b244b200abf53a005429b50132845a49b994fb6a2889a7eb775d53fbde7cb0d0b13655e435b0c3a6788d5d0fbcd2f56ccf32da852ef21ae933198dcad24 | ||
2842 | languageName: node | ||
2843 | linkType: hard | ||
2844 | |||
2817 | "clean-stack@npm:^2.0.0": | 2845 | "clean-stack@npm:^2.0.0": |
2818 | version: 2.2.0 | 2846 | version: 2.2.0 |
2819 | resolution: "clean-stack@npm:2.2.0" | 2847 | resolution: "clean-stack@npm:2.2.0" |
@@ -2876,6 +2904,13 @@ __metadata: | |||
2876 | languageName: node | 2904 | languageName: node |
2877 | linkType: hard | 2905 | linkType: hard |
2878 | 2906 | ||
2907 | "commander@npm:^9.4.0": | ||
2908 | version: 9.4.0 | ||
2909 | resolution: "commander@npm:9.4.0" | ||
2910 | checksum: a322de584a6ccd1ea83c24f6a660e52d16ffbe2613fcfbb8d2cc68bc9dec637492456d754fe8bb5b039ad843ed8e04fb0b107e581a75f62cde9e1a0ab1546e09 | ||
2911 | languageName: node | ||
2912 | linkType: hard | ||
2913 | |||
2879 | "common-tags@npm:^1.8.0": | 2914 | "common-tags@npm:^1.8.0": |
2880 | version: 1.8.2 | 2915 | version: 1.8.2 |
2881 | resolution: "common-tags@npm:1.8.2" | 2916 | resolution: "common-tags@npm:1.8.2" |
@@ -3106,6 +3141,16 @@ __metadata: | |||
3106 | languageName: node | 3141 | languageName: node |
3107 | linkType: hard | 3142 | linkType: hard |
3108 | 3143 | ||
3144 | "dot-case@npm:^3.0.4": | ||
3145 | version: 3.0.4 | ||
3146 | resolution: "dot-case@npm:3.0.4" | ||
3147 | dependencies: | ||
3148 | no-case: ^3.0.4 | ||
3149 | tslib: ^2.0.3 | ||
3150 | checksum: a65e3519414856df0228b9f645332f974f2bf5433370f544a681122eab59e66038fc3349b4be1cdc47152779dac71a5864f1ccda2f745e767c46e9c6543b1169 | ||
3151 | languageName: node | ||
3152 | linkType: hard | ||
3153 | |||
3109 | "ejs@npm:^3.1.6": | 3154 | "ejs@npm:^3.1.6": |
3110 | version: 3.1.8 | 3155 | version: 3.1.8 |
3111 | resolution: "ejs@npm:3.1.8" | 3156 | resolution: "ejs@npm:3.1.8" |
@@ -3157,6 +3202,13 @@ __metadata: | |||
3157 | languageName: node | 3202 | languageName: node |
3158 | linkType: hard | 3203 | linkType: hard |
3159 | 3204 | ||
3205 | "entities@npm:^4.3.1": | ||
3206 | version: 4.3.1 | ||
3207 | resolution: "entities@npm:4.3.1" | ||
3208 | checksum: e8f6d2bac238494b2355e90551893882d2675142be7e7bdfcb15248ed0652a630678ba0e3a8dc750693e736cb6011f504c27dabeb4cd3330560092e88b105090 | ||
3209 | languageName: node | ||
3210 | linkType: hard | ||
3211 | |||
3160 | "env-paths@npm:^2.2.0": | 3212 | "env-paths@npm:^2.2.0": |
3161 | version: 2.2.1 | 3213 | version: 2.2.1 |
3162 | resolution: "env-paths@npm:2.2.1" | 3214 | resolution: "env-paths@npm:2.2.1" |
@@ -4246,6 +4298,23 @@ __metadata: | |||
4246 | languageName: node | 4298 | languageName: node |
4247 | linkType: hard | 4299 | linkType: hard |
4248 | 4300 | ||
4301 | "html-minifier-terser@npm:^7.0.0": | ||
4302 | version: 7.0.0 | ||
4303 | resolution: "html-minifier-terser@npm:7.0.0" | ||
4304 | dependencies: | ||
4305 | camel-case: ^4.1.2 | ||
4306 | clean-css: 5.2.0 | ||
4307 | commander: ^9.4.0 | ||
4308 | entities: ^4.3.1 | ||
4309 | param-case: ^3.0.4 | ||
4310 | relateurl: ^0.2.7 | ||
4311 | terser: ^5.14.2 | ||
4312 | bin: | ||
4313 | html-minifier-terser: cli.js | ||
4314 | checksum: eabd3b4835d9663bf7c30ea0f1c57870b0d8f7dc27b9fa17852ea57bfdd5fdc0ed9b7b83a7f13edd8626ccf98d3082e347764754278a661cab291469fd37dced | ||
4315 | languageName: node | ||
4316 | linkType: hard | ||
4317 | |||
4249 | "http-cache-semantics@npm:^4.1.0": | 4318 | "http-cache-semantics@npm:^4.1.0": |
4250 | version: 4.1.0 | 4319 | version: 4.1.0 |
4251 | resolution: "http-cache-semantics@npm:4.1.0" | 4320 | resolution: "http-cache-semantics@npm:4.1.0" |
@@ -4833,6 +4902,15 @@ __metadata: | |||
4833 | languageName: node | 4902 | languageName: node |
4834 | linkType: hard | 4903 | linkType: hard |
4835 | 4904 | ||
4905 | "lower-case@npm:^2.0.2": | ||
4906 | version: 2.0.2 | ||
4907 | resolution: "lower-case@npm:2.0.2" | ||
4908 | dependencies: | ||
4909 | tslib: ^2.0.3 | ||
4910 | checksum: 83a0a5f159ad7614bee8bf976b96275f3954335a84fad2696927f609ddae902802c4f3312d86668722e668bef41400254807e1d3a7f2e8c3eede79691aa1f010 | ||
4911 | languageName: node | ||
4912 | linkType: hard | ||
4913 | |||
4836 | "lru-cache@npm:^6.0.0": | 4914 | "lru-cache@npm:^6.0.0": |
4837 | version: 6.0.0 | 4915 | version: 6.0.0 |
4838 | resolution: "lru-cache@npm:6.0.0" | 4916 | resolution: "lru-cache@npm:6.0.0" |
@@ -5103,6 +5181,16 @@ __metadata: | |||
5103 | languageName: node | 5181 | languageName: node |
5104 | linkType: hard | 5182 | linkType: hard |
5105 | 5183 | ||
5184 | "no-case@npm:^3.0.4": | ||
5185 | version: 3.0.4 | ||
5186 | resolution: "no-case@npm:3.0.4" | ||
5187 | dependencies: | ||
5188 | lower-case: ^2.0.2 | ||
5189 | tslib: ^2.0.3 | ||
5190 | checksum: 0b2ebc113dfcf737d48dde49cfebf3ad2d82a8c3188e7100c6f375e30eafbef9e9124aadc3becef237b042fd5eb0aad2fd78669c20972d045bbe7fea8ba0be5c | ||
5191 | languageName: node | ||
5192 | linkType: hard | ||
5193 | |||
5106 | "node-gyp@npm:latest": | 5194 | "node-gyp@npm:latest": |
5107 | version: 8.4.1 | 5195 | version: 8.4.1 |
5108 | resolution: "node-gyp@npm:8.4.1" | 5196 | resolution: "node-gyp@npm:8.4.1" |
@@ -5336,6 +5424,16 @@ __metadata: | |||
5336 | languageName: node | 5424 | languageName: node |
5337 | linkType: hard | 5425 | linkType: hard |
5338 | 5426 | ||
5427 | "param-case@npm:^3.0.4": | ||
5428 | version: 3.0.4 | ||
5429 | resolution: "param-case@npm:3.0.4" | ||
5430 | dependencies: | ||
5431 | dot-case: ^3.0.4 | ||
5432 | tslib: ^2.0.3 | ||
5433 | checksum: b34227fd0f794e078776eb3aa6247442056cb47761e9cd2c4c881c86d84c64205f6a56ef0d70b41ee7d77da02c3f4ed2f88e3896a8fefe08bdfb4deca037c687 | ||
5434 | languageName: node | ||
5435 | linkType: hard | ||
5436 | |||
5339 | "parent-module@npm:^1.0.0": | 5437 | "parent-module@npm:^1.0.0": |
5340 | version: 1.0.1 | 5438 | version: 1.0.1 |
5341 | resolution: "parent-module@npm:1.0.1" | 5439 | resolution: "parent-module@npm:1.0.1" |
@@ -5357,6 +5455,16 @@ __metadata: | |||
5357 | languageName: node | 5455 | languageName: node |
5358 | linkType: hard | 5456 | linkType: hard |
5359 | 5457 | ||
5458 | "pascal-case@npm:^3.1.2": | ||
5459 | version: 3.1.2 | ||
5460 | resolution: "pascal-case@npm:3.1.2" | ||
5461 | dependencies: | ||
5462 | no-case: ^3.0.4 | ||
5463 | tslib: ^2.0.3 | ||
5464 | checksum: ba98bfd595fc91ef3d30f4243b1aee2f6ec41c53b4546bfa3039487c367abaa182471dcfc830a1f9e1a0df00c14a370514fa2b3a1aacc68b15a460c31116873e | ||
5465 | languageName: node | ||
5466 | linkType: hard | ||
5467 | |||
5360 | "path-exists@npm:^3.0.0": | 5468 | "path-exists@npm:^3.0.0": |
5361 | version: 3.0.0 | 5469 | version: 3.0.0 |
5362 | resolution: "path-exists@npm:3.0.0" | 5470 | resolution: "path-exists@npm:3.0.0" |
@@ -5664,6 +5772,13 @@ __metadata: | |||
5664 | languageName: node | 5772 | languageName: node |
5665 | linkType: hard | 5773 | linkType: hard |
5666 | 5774 | ||
5775 | "relateurl@npm:^0.2.7": | ||
5776 | version: 0.2.7 | ||
5777 | resolution: "relateurl@npm:0.2.7" | ||
5778 | checksum: 5891e792eae1dfc3da91c6fda76d6c3de0333a60aa5ad848982ebb6dccaa06e86385fb1235a1582c680a3d445d31be01c6bfc0804ebbcab5aaf53fa856fde6b6 | ||
5779 | languageName: node | ||
5780 | linkType: hard | ||
5781 | |||
5667 | "require-from-string@npm:^2.0.2": | 5782 | "require-from-string@npm:^2.0.2": |
5668 | version: 2.0.2 | 5783 | version: 2.0.2 |
5669 | resolution: "require-from-string@npm:2.0.2" | 5784 | resolution: "require-from-string@npm:2.0.2" |
@@ -5975,7 +6090,7 @@ __metadata: | |||
5975 | languageName: node | 6090 | languageName: node |
5976 | linkType: hard | 6091 | linkType: hard |
5977 | 6092 | ||
5978 | "source-map@npm:^0.6.0": | 6093 | "source-map@npm:^0.6.0, source-map@npm:~0.6.0": |
5979 | version: 0.6.1 | 6094 | version: 0.6.1 |
5980 | resolution: "source-map@npm:0.6.1" | 6095 | resolution: "source-map@npm:0.6.1" |
5981 | checksum: 59ce8640cf3f3124f64ac289012c2b8bd377c238e316fb323ea22fbfe83da07d81e000071d7242cad7a23cd91c7de98e4df8830ec3f133cb6133a5f6e9f67bc2 | 6096 | checksum: 59ce8640cf3f3124f64ac289012c2b8bd377c238e316fb323ea22fbfe83da07d81e000071d7242cad7a23cd91c7de98e4df8830ec3f133cb6133a5f6e9f67bc2 |
@@ -6195,7 +6310,7 @@ __metadata: | |||
6195 | languageName: node | 6310 | languageName: node |
6196 | linkType: hard | 6311 | linkType: hard |
6197 | 6312 | ||
6198 | "terser@npm:^5.0.0": | 6313 | "terser@npm:^5.0.0, terser@npm:^5.14.2": |
6199 | version: 5.14.2 | 6314 | version: 5.14.2 |
6200 | resolution: "terser@npm:5.14.2" | 6315 | resolution: "terser@npm:5.14.2" |
6201 | dependencies: | 6316 | dependencies: |
@@ -6270,7 +6385,7 @@ __metadata: | |||
6270 | languageName: node | 6385 | languageName: node |
6271 | linkType: hard | 6386 | linkType: hard |
6272 | 6387 | ||
6273 | "tslib@npm:^2.4.0": | 6388 | "tslib@npm:^2.0.3, tslib@npm:^2.4.0": |
6274 | version: 2.4.0 | 6389 | version: 2.4.0 |
6275 | resolution: "tslib@npm:2.4.0" | 6390 | resolution: "tslib@npm:2.4.0" |
6276 | checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 | 6391 | checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 |