(options)
| 74 | const queries = queryModules(api); |
| 75 | const queryHooks = { |
| 76 | useQuery(options) { |
| 77 | const [, render] = react.useState(0); |
| 78 | const key = JSON.stringify(options.queryKey); |
| 79 | react.useEffect(() => queries.client.getQueryCache().subscribe((event) => { |
| 80 | if (JSON.stringify(event.query.queryKey) === key) render((n) => n + 1); |
| 81 | }), [key]); |
| 82 | react.useEffect(() => { |
| 83 | if (options.enabled !== false) void queries.client.fetchQuery(options).catch(() => {}); |
| 84 | }, [key, options.enabled]); |
| 85 | const state = queries.client.getQueryState(options.queryKey); |
| 86 | return { data: state?.data, error: state?.error, isPending: !state || state.status === "pending" }; |
| 87 | }, |
| 88 | }; |
| 89 | function loadHook(name) { |
| 90 | const source = readFileSync(new URL(`../src/${name}.ts`, import.meta.url), "utf8"); |
no test coverage detected