fed8b2eed7
Backend release / release (push) Waiting to run
Bandit Security Scan / bandit_scan (push) Waiting to run
Build and push multi-arch DocsGPT Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Waiting to run
Build and push multi-arch DocsGPT Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Waiting to run
Build and push multi-arch DocsGPT Docker image / manifest (push) Blocked by required conditions
Build and push DocsGPT FE Docker image for development / build (linux/amd64, ubuntu-latest, amd64) (push) Waiting to run
Build and push DocsGPT FE Docker image for development / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Waiting to run
Build and push DocsGPT FE Docker image for development / manifest (push) Blocked by required conditions
Python linting / ruff (push) Waiting to run
Run python tests with pytest / Run tests and count coverage (3.12) (push) Waiting to run
React Widget Build / build (push) Waiting to run
25 lines
754 B
TypeScript
25 lines
754 B
TypeScript
// happy-dom's localStorage lives on `window`; slices read the bare
|
|
// global at module-load. Install a Map-backed shim on globalThis.
|
|
const store = new Map<string, string>();
|
|
const shim = {
|
|
getItem: (k: string) => (store.has(k) ? store.get(k)! : null),
|
|
setItem: (k: string, v: string) => {
|
|
store.set(k, String(v));
|
|
},
|
|
removeItem: (k: string) => {
|
|
store.delete(k);
|
|
},
|
|
clear: () => store.clear(),
|
|
key: (i: number) => Array.from(store.keys())[i] ?? null,
|
|
get length() {
|
|
return store.size;
|
|
},
|
|
};
|
|
// Force-override: some happy-dom versions expose a Storage stub
|
|
// without getItem, so simple assignment isn't enough.
|
|
Object.defineProperty(globalThis, 'localStorage', {
|
|
value: shim,
|
|
writable: true,
|
|
configurable: true,
|
|
});
|