feat(platform): add vehicle data management console

This commit is contained in:
lingniu
2026-07-03 20:55:54 +08:00
parent 0d8916df47
commit 859bc3e9ee
45 changed files with 6837 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
import '@testing-library/jest-dom/vitest';
Object.defineProperty(HTMLCanvasElement.prototype, 'getContext', {
value: () => ({
fillStyle: '',
fillRect: () => undefined,
clearRect: () => undefined,
getImageData: () => ({ data: new Uint8ClampedArray(4) }),
putImageData: () => undefined,
createImageData: () => ({ data: new Uint8ClampedArray(4) }),
setTransform: () => undefined,
drawImage: () => undefined,
save: () => undefined,
fillText: () => undefined,
restore: () => undefined,
beginPath: () => undefined,
moveTo: () => undefined,
lineTo: () => undefined,
closePath: () => undefined,
stroke: () => undefined,
translate: () => undefined,
scale: () => undefined,
rotate: () => undefined,
arc: () => undefined,
fill: () => undefined,
measureText: () => ({ width: 0 }),
transform: () => undefined,
rect: () => undefined,
clip: () => undefined
})
});
class TestResizeObserver {
observe() {
return undefined;
}
unobserve() {
return undefined;
}
disconnect() {
return undefined;
}
}
Object.defineProperty(window, 'ResizeObserver', { value: TestResizeObserver });
Object.defineProperty(globalThis, 'ResizeObserver', { value: TestResizeObserver });
Object.defineProperty(window, 'matchMedia', {
value: (query: string) => ({
matches: false,
media: query,
onchange: null,
addListener: () => undefined,
removeListener: () => undefined,
addEventListener: () => undefined,
removeEventListener: () => undefined,
dispatchEvent: () => false
})
});
document.createRange = () => ({
setStart: () => undefined,
setEnd: () => undefined,
selectNodeContents: () => undefined,
detach: () => undefined,
commonAncestorContainer: document.body,
getBoundingClientRect: () => ({
bottom: 0,
height: 0,
left: 0,
right: 0,
top: 0,
width: 0,
x: 0,
y: 0,
toJSON: () => undefined
}),
getClientRects: () => ({
length: 0,
item: () => null,
[Symbol.iterator]: function* iterator() {
return undefined;
}
})
} as unknown as Range);