@@ -4,14 +4,15 @@ const dataPath: string = "./src/data/frontendConfiguration.json";
44const expression : string =
55 "https?://(www.)?[-a-zA-Z0-9@:%._+~#=]{1,256}.[a-zA-Z0-9()]{1,6}([-a-zA-Z0-9()@:%_+.~#?&//=]*)" ;
66const regex = new RegExp ( expression ) ;
7+ import { FrontendConfig } from "../typings/frontendConfig" ;
78
89///////////////////////////////////////////////////////////////
910// Hide Containers:
1011async function hideContainer ( containerName : string ) {
1112 try {
1213 const data = await readData ( ) ;
1314 const containerIndex = data . findIndex (
14- ( container : any ) => container . name === containerName ,
15+ ( container ) => container . name === containerName ,
1516 ) ;
1617
1718 if ( containerIndex !== - 1 ) {
@@ -21,27 +22,27 @@ async function hideContainer(containerName: string) {
2122 data . push ( { name : containerName , hidden : true } ) ;
2223 await saveData ( data ) ;
2324 }
24- } catch ( error : any ) {
25- logger . error ( error ) ;
26- throw new Error ( error ) ;
25+ } catch ( error : unknown ) {
26+ logger . error ( error as Error ) ;
27+ throw new Error ( error as string ) ;
2728 }
2829}
2930
3031async function unhideContainer ( containerName : string ) {
3132 try {
3233 const data = await readData ( ) ;
3334 const containerIndex = data . findIndex (
34- ( container : any ) => container . name === containerName ,
35+ ( container ) => container . name === containerName ,
3536 ) ;
3637
3738 if ( containerIndex !== - 1 ) {
3839 delete data [ containerIndex ] . hidden ;
3940 await saveData ( data ) ;
4041 cleanupData ( ) ;
4142 }
42- } catch ( error : any ) {
43- logger . error ( error ) ;
44- throw new Error ( error ) ;
43+ } catch ( error : unknown ) {
44+ logger . error ( error as Error ) ;
45+ throw new Error ( error as string ) ;
4546 }
4647}
4748
@@ -51,7 +52,7 @@ async function addTagToContainer(containerName: string, tag: string) {
5152 try {
5253 const data = await readData ( ) ;
5354 const containerIndex = data . findIndex (
54- ( container : any ) => container . name === containerName ,
55+ ( container ) => container . name === containerName ,
5556 ) ;
5657
5758 if ( containerIndex !== - 1 ) {
@@ -64,39 +65,39 @@ async function addTagToContainer(containerName: string, tag: string) {
6465 data . push ( { name : containerName , tags : [ tag ] } ) ;
6566 await saveData ( data ) ;
6667 }
67- } catch ( error : any ) {
68- logger . error ( error ) ;
69- throw new Error ( error ) ;
68+ } catch ( error : unknown ) {
69+ logger . error ( error as Error ) ;
70+ throw new Error ( error as string ) ;
7071 }
7172}
7273
7374async function removeTagFromContainer ( containerName : string , tag : string ) {
7475 try {
7576 const data = await readData ( ) ;
7677 const containerIndex = data . findIndex (
77- ( container : any ) => container . name === containerName ,
78+ ( container ) => container . name === containerName ,
7879 ) ;
7980
8081 if ( containerIndex !== - 1 && data [ containerIndex ] . tags ) {
8182 data [ containerIndex ] . tags = data [ containerIndex ] . tags . filter (
82- ( t : any ) => t !== tag ,
83+ ( t ) => t !== tag ,
8384 ) ;
8485 await saveData ( data ) ;
8586 cleanupData ( ) ;
8687 }
87- } catch ( error : any ) {
88+ } catch ( error : unknown ) {
8889 logger . error ( error ) ;
89- throw new Error ( error ) ;
90+ throw new Error ( error as string ) ;
9091 }
9192}
9293
9394///////////////////////////////////////////////////////////////
9495// Pin containers
9596async function pinContainer ( containerName : string ) {
9697 try {
97- const data : any = await readData ( ) ;
98- const containerIndex : number = data . findIndex (
99- ( container : any ) => container . name === containerName ,
98+ const data = await readData ( ) ;
99+ const containerIndex = data . findIndex (
100+ ( container ) => container . name === containerName ,
100101 ) ;
101102
102103 if ( containerIndex !== - 1 ) {
@@ -106,27 +107,27 @@ async function pinContainer(containerName: string) {
106107 data . push ( { name : containerName , pinned : true } ) ;
107108 await saveData ( data ) ;
108109 }
109- } catch ( error : any ) {
110- logger . error ( error ) ;
111- throw new Error ( error ) ;
110+ } catch ( error : unknown ) {
111+ logger . error ( error as Error ) ;
112+ throw new Error ( error as string ) ;
112113 }
113114}
114115
115116async function unpinContainer ( containerName : string ) {
116117 try {
117118 const data = await readData ( ) ;
118119 const containerIndex = data . findIndex (
119- ( container : any ) => container . name === containerName ,
120+ ( container ) => container . name === containerName ,
120121 ) ;
121122
122123 if ( containerIndex !== - 1 ) {
123124 delete data [ containerIndex ] . pinned ;
124125 await saveData ( data ) ;
125126 cleanupData ( ) ;
126127 }
127- } catch ( error : any ) {
128- logger . error ( error ) ;
129- throw new Error ( error ) ;
128+ } catch ( error : unknown ) {
129+ logger . error ( error as Error ) ;
130+ throw new Error ( error as string ) ;
130131 }
131132}
132133
@@ -135,9 +136,9 @@ async function unpinContainer(containerName: string) {
135136async function setLink ( containerName : string , link : string ) {
136137 if ( link . match ( regex ) ) {
137138 try {
138- const data : any = await readData ( ) ;
139- const containerIndex : any = data . findIndex (
140- ( container : any ) => container . name === containerName ,
139+ const data = await readData ( ) ;
140+ const containerIndex = data . findIndex (
141+ ( container ) => container . name === containerName ,
141142 ) ;
142143
143144 if ( containerIndex !== - 1 ) {
@@ -147,9 +148,9 @@ async function setLink(containerName: string, link: string) {
147148 data . push ( { name : containerName , link : `${ link } ` } ) ;
148149 await saveData ( data ) ;
149150 }
150- } catch ( error : any ) {
151+ } catch ( error : unknown ) {
151152 logger . error ( error ) ;
152- throw new Error ( error ) ;
153+ throw new Error ( error as string ) ;
153154 }
154155 } else {
155156 logger . error ( `Provided link is not valid: ${ link } ` ) ;
@@ -161,17 +162,17 @@ async function removeLink(containerName: string) {
161162 try {
162163 const data = await readData ( ) ;
163164 const containerIndex = data . findIndex (
164- ( container : any ) => container . name === containerName ,
165+ ( container ) => container . name === containerName ,
165166 ) ;
166167
167168 if ( containerIndex !== - 1 ) {
168169 delete data [ containerIndex ] . link ;
169170 await saveData ( data ) ;
170171 cleanupData ( ) ;
171172 }
172- } catch ( error : any ) {
173- logger . error ( error ) ;
174- throw new Error ( error ) ;
173+ } catch ( error : unknown ) {
174+ logger . error ( error as Error ) ;
175+ throw new Error ( error as string ) ;
175176 }
176177}
177178
@@ -181,7 +182,7 @@ async function setIcon(containerName: string, icon: string, custom: boolean) {
181182 try {
182183 const data = await readData ( ) ;
183184 const containerIndex : number = data . findIndex (
184- ( container : any ) => container . name === containerName ,
185+ ( container ) => container . name === containerName ,
185186 ) ;
186187
187188 if ( custom === true ) {
@@ -199,39 +200,41 @@ async function setIcon(containerName: string, icon: string, custom: boolean) {
199200 data . push ( { name : containerName , icon : `${ icon } ` } ) ;
200201 await saveData ( data ) ;
201202 }
202- } catch ( error : any ) {
203- logger . error ( error ) ;
204- throw new Error ( error ) ;
203+ } catch ( error : unknown ) {
204+ logger . error ( error as Error ) ;
205+ throw new Error ( error as string ) ;
205206 }
206207}
207208
208209async function removeIcon ( containerName : string ) {
209210 try {
210211 const data = await readData ( ) ;
211212 const containerIndex = data . findIndex (
212- ( container : any ) => container . name === containerName ,
213+ ( container ) => container . name === containerName ,
213214 ) ;
214215
215216 if ( containerIndex !== - 1 ) {
216217 delete data [ containerIndex ] . icon ;
217218 await saveData ( data ) ;
218219 cleanupData ( ) ;
219220 }
220- } catch ( error : any ) {
221- logger . error ( error ) ;
222- throw new Error ( error ) ;
221+ } catch ( error : unknown ) {
222+ logger . error ( error as Error ) ;
223+ throw new Error ( error as string ) ;
223224 }
224225}
225226
226227///////////////////////////////////////////////////////////////
227228// Data specific functionss
228229async function readData ( ) {
229230 try {
230- const data = await fs . promises . readFile ( dataPath , "utf-8" ) ;
231- return JSON . parse ( data ) ;
232- } catch ( error : any ) {
233- console . error ( "readData" ) ;
234- if ( error . code === "ENOENT" ) {
231+ const data : FrontendConfig = JSON . parse (
232+ await fs . promises . readFile ( dataPath , "utf-8" ) ,
233+ ) ;
234+ return data ;
235+ } catch ( error : unknown ) {
236+ console . error ( `Error while reading ${ dataPath } : ${ error as Error } ` ) ;
237+ if ( error as Error ) {
235238 await saveData ( [ ] ) ;
236239 return [ ] ;
237240 } else {
@@ -240,23 +243,23 @@ async function readData() {
240243 }
241244}
242245
243- async function saveData ( data : any ) {
246+ async function saveData ( data : FrontendConfig ) {
244247 try {
245248 await fs . promises . writeFile (
246249 dataPath ,
247250 JSON . stringify ( data , null , 2 ) ,
248251 "utf-8" ,
249252 ) ;
250253 logger . info ( "Succesfully wrote to file" ) ;
251- } catch ( error : any ) {
252- logger . error ( error ) ;
254+ } catch ( error : unknown ) {
255+ logger . error ( error as Error ) ;
253256 }
254257}
255258
256259async function cleanupData ( ) {
257260 try {
258261 const data = await readData ( ) ;
259- let cleanedData = [ ] ;
262+ let cleanedData : FrontendConfig = [ ] ;
260263
261264 if ( data && Array . isArray ( data ) ) {
262265 cleanedData = data . filter ( ( container ) => {
@@ -273,8 +276,8 @@ async function cleanupData() {
273276 }
274277
275278 await saveData ( cleanedData ) ;
276- } catch ( error : any ) {
277- logger . error ( error ) ;
279+ } catch ( error : unknown ) {
280+ logger . error ( error as Error ) ;
278281 }
279282}
280283
0 commit comments