@@ -3,6 +3,7 @@ import * as React from 'react';
33import { localStorageStore } from './localStorageStore' ;
44import { StoreContextProvider } from './StoreContextProvider' ;
55import { useStore } from './useStore' ;
6+ import { useStoreContext } from './useStoreContext' ;
67
78export default {
89 title : 'ra-core/store/localStorage' ,
@@ -54,3 +55,46 @@ export const Basic = () => {
5455 </ StoreContextProvider >
5556 ) ;
5657} ;
58+
59+ const StoreList = ( ) => {
60+ const store = useStoreContext ( ) ;
61+ const [ items , setItems ] = React . useState ( { } ) ;
62+ return (
63+ < >
64+ < div style = { { display : 'flex' , gap : '8px' } } >
65+ < button
66+ type = "button"
67+ onClick = { ( ) => setItems ( store . listItems ( ) ) }
68+ >
69+ Get all items
70+ </ button >
71+ < button
72+ type = "button"
73+ onClick = { ( ) => setItems ( store . listItems ( 'foo.' ) ) }
74+ >
75+ Get items with prefix
76+ </ button >
77+ </ div >
78+ < pre > { JSON . stringify ( items , null , 2 ) } </ pre >
79+ </ >
80+ ) ;
81+ } ;
82+ export const ListItems = ( ) => {
83+ return (
84+ < StoreContextProvider value = { localStorageStore ( ) } >
85+ < h1 > Values</ h1 >
86+ < dl >
87+ < StoreReader name = "foo.bar" />
88+ < StoreReader name = "foo.baz" />
89+ < StoreReader name = "bar.baz" />
90+ </ dl >
91+ < h1 > Setter</ h1 >
92+ < dl >
93+ < StoreSetter name = "foo.bar" />
94+ < StoreSetter name = "foo.baz" />
95+ < StoreSetter name = "bar.baz" />
96+ </ dl >
97+ < StoreList />
98+ </ StoreContextProvider >
99+ ) ;
100+ } ;
0 commit comments