@@ -29,6 +29,7 @@ import Podcasts from '../routes/Podcasts';
2929import RecentEpisodes from '../routes/RecentEpisodes' ;
3030import Search from '../routes/Search' ;
3131import { Core } from '../services/core' ;
32+ import { setStorageItem , StorageKey } from '../services/storage' ;
3233import { themes } from '../themes' ;
3334
3435export function AppWrapper ( ) : VNode {
@@ -59,6 +60,16 @@ export default function App(): VNode {
5960
6061 // Core.health().then((res) => console.log(res));
6162
63+ Core . podcastIndex . fetchCategories ( ) . then ( ( res ) =>
64+ setStorageItem (
65+ StorageKey . Categories ,
66+ res . reduce ( ( acc , val ) => {
67+ acc [ val . id ] = val . name ;
68+ return acc ;
69+ } , { } as { [ key : number ] : string } )
70+ )
71+ ) ;
72+
6273 // Ensure default filters exist
6374 Core . filters . queryAll ( ) . then ( ( res ) => {
6475 if ( res . length === 0 ) {
@@ -103,24 +114,15 @@ export default function App(): VNode {
103114 // Theme
104115 const theme = themes . find ( ( a ) => a . id === settings . theme ) || themes [ 0 ] ;
105116 for ( const id in theme . values ) {
106- document . documentElement . style . setProperty (
107- `--${ kebabcase ( id ) } ` ,
108- theme . values [ id ]
109- ) ;
117+ document . documentElement . style . setProperty ( `--${ kebabcase ( id ) } ` , theme . values [ id ] ) ;
110118 }
111- document . documentElement . style . setProperty (
112- '--app-accent-color' ,
113- `#${ settings . accentColor } `
114- ) ;
119+ document . documentElement . style . setProperty ( '--app-accent-color' , `#${ settings . accentColor } ` ) ;
115120 document
116121 . querySelector ( 'meta[name="theme-color"]' )
117122 ?. setAttribute ( 'content' , theme . values . headerBgColor ) ;
118123
119124 if ( theme . settings . accentText ) {
120- document . documentElement . style . setProperty (
121- '--accent-text-color' ,
122- `#${ settings . accentColor } `
123- ) ;
125+ document . documentElement . style . setProperty ( '--accent-text-color' , `#${ settings . accentColor } ` ) ;
124126 }
125127 if ( theme . settings . accentHighlight ) {
126128 document . documentElement . style . setProperty (
@@ -129,10 +131,7 @@ export default function App(): VNode {
129131 ) ;
130132 }
131133 if ( theme . settings . accentHeader ) {
132- document . documentElement . style . setProperty (
133- '--header-bg-color' ,
134- `#${ settings . accentColor } `
135- ) ;
134+ document . documentElement . style . setProperty ( '--header-bg-color' , `#${ settings . accentColor } ` ) ;
136135 document
137136 . querySelector ( 'meta[name="theme-color"]' )
138137 ?. setAttribute ( 'content' , `#${ settings . accentColor } ` ) ;
0 commit comments