| 1242 | [checkpointId] |
| 1243 | ); |
| 1244 | var useCreatePersister = (store, create, createDeps = EMPTY_ARRAY, then, thenDeps = EMPTY_ARRAY, destroy, destroyDeps = EMPTY_ARRAY) => { |
| 1245 | const [, rerender] = useState(); |
| 1246 | const [persister, setPersister] = useState(); |
| 1247 | useEffect( |
| 1248 | () => { |
| 1249 | (async () => { |
| 1250 | const persister2 = store ? await create(store) : void 0; |
| 1251 | setPersister(persister2); |
| 1252 | if (persister2 && then) { |
| 1253 | (async () => { |
| 1254 | await then(persister2); |
| 1255 | rerender([]); |
| 1256 | })(); |
| 1257 | } |
| 1258 | })(); |
| 1259 | }, |
| 1260 | // eslint-disable-next-line react-hooks/exhaustive-deps |
| 1261 | [store, ...createDeps, ...thenDeps] |
| 1262 | ); |
| 1263 | useEffect( |
| 1264 | () => () => { |
| 1265 | if (persister) { |
| 1266 | persister.destroy(); |
| 1267 | destroy?.(persister); |
| 1268 | } |
| 1269 | }, |
| 1270 | // eslint-disable-next-line react-hooks/exhaustive-deps |
| 1271 | [persister, ...destroyDeps] |
| 1272 | ); |
| 1273 | return persister; |
| 1274 | }; |
| 1275 | var usePersisterIds = () => useThingIds(OFFSET_PERSISTER); |
| 1276 | var usePersister = (id) => useThing(id, OFFSET_PERSISTER); |
| 1277 | var usePersisterOrPersisterById = (persisterOrPersisterId) => useThingOrThingById(persisterOrPersisterId, OFFSET_PERSISTER); |