Create src/lib/grabber/useSites.ts

#4
Files changed (1) hide show
  1. src/lib/grabber/useSites.ts +26 -0
src/lib/grabber/useSites.ts ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { useState, useEffect } from 'react';
2
+ import { SiteConfig } from './sites';
3
+
4
+ const KEY = 'grabber.sites.v1';
5
+
6
+ export function useSites() {
7
+ const [sites, setSites] = useState<SiteConfig[]>([]);
8
+
9
+ useEffect(() => {
10
+ const saved = localStorage.getItem(KEY);
11
+ if (saved) setSites(JSON.parse(saved));
12
+ }, []);
13
+
14
+ const addSite = (site: SiteConfig) => {
15
+ const newSites = [...sites, site];
16
+ setSites(newSites);
17
+ localStorage.setItem(KEY, JSON.stringify(newSites));
18
+ };
19
+
20
+ return { sites, addSite };
21
+ }
22
+
23
+
24
+
25
+
26
+