uplot-webgpu 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +0 -17
- package/index.ts +5 -0
- package/package.json +4 -69
- package/paths/ts/bars.ts +253 -0
- package/paths/ts/catmullRomCentrip.ts +127 -0
- package/paths/ts/index.ts +9 -0
- package/paths/ts/linear.ts +172 -0
- package/paths/ts/monotoneCubic.ts +70 -0
- package/paths/ts/points.ts +70 -0
- package/paths/ts/spline.ts +105 -0
- package/paths/ts/stepped.ts +126 -0
- package/paths/ts/types.ts +143 -0
- package/paths/ts/utils.ts +303 -0
- package/scripts/ts/uPlot.ts +3732 -0
- package/scripts/ts/utils/dom.ts +124 -0
- package/scripts/ts/utils/domClasses.ts +22 -0
- package/scripts/ts/utils/feats.ts +13 -0
- package/scripts/ts/utils/fmtDate.ts +398 -0
- package/scripts/ts/utils/opts.ts +844 -0
- package/scripts/ts/utils/strings.ts +22 -0
- package/scripts/ts/utils/sync.ts +27 -0
- package/scripts/ts/utils/utils.ts +692 -0
- package/scripts/{webgpu → ts/webgpu}/GPUPath.ts +92 -41
- package/scripts/{webgpu → ts/webgpu}/WebGPURenderer.ts +176 -84
- package/scripts/ts/webgpu/exporters.ts +221 -0
- package/scripts/ts/webgpu/index.ts +31 -0
- package/scripts/{webgpu → ts/webgpu}/shaders.ts +0 -1
- package/scripts/uPlot.js +0 -2
- package/scripts/webgpu/GPUPath.js +513 -606
- package/scripts/webgpu/WebGPURenderer.js +3484 -4018
- package/scripts/webgpu/exporters.js +191 -201
- package/scripts/webgpu/index.js +12 -0
- package/scripts/webgpu/shaders.js +6 -3
- package/tinybuild.config.js +6 -6
- package/tsconfig.json +64 -0
- package/scripts/uPlot.d.ts +0 -26
- package/scripts/webgpu/GPUPath.d.ts +0 -46
- package/scripts/webgpu/WebGPURenderer.d.ts +0 -176
- package/scripts/webgpu/exporters.d.ts +0 -8
- package/scripts/webgpu/shaders.d.ts +0 -2
- package/scripts/webgpu/smokeTest.d.ts +0 -2
- package/scripts/webgpu/webgpu-ambient.d.ts +0 -41
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
import { GPUPath } from './GPUPath.js';
|
|
2
|
-
|
|
3
|
-
export type RGBA = [number, number, number, number];
|
|
4
|
-
|
|
5
|
-
export type WebGPUMemoryMode = 'low' | 'balanced' | 'throughput';
|
|
6
|
-
|
|
7
|
-
export interface WebGPURendererOptions {
|
|
8
|
-
sharedRuntime?: boolean;
|
|
9
|
-
alpha?: boolean;
|
|
10
|
-
colorSpace?: PredefinedColorSpace;
|
|
11
|
-
desynchronized?: boolean;
|
|
12
|
-
memory?: WebGPUMemoryMode;
|
|
13
|
-
memoryMode?: WebGPUMemoryMode;
|
|
14
|
-
retainCommands?: boolean;
|
|
15
|
-
retainCommandsForReadback?: boolean;
|
|
16
|
-
releaseCommandsAfterPresent?: boolean;
|
|
17
|
-
maxRetainedUploadBytes?: number;
|
|
18
|
-
maxRetainedVertexBufferBytes?: number;
|
|
19
|
-
maxTextureBytes?: number;
|
|
20
|
-
maxTextureRecords?: number;
|
|
21
|
-
maxColorCacheEntries?: number;
|
|
22
|
-
maxTextMeasureCacheEntries?: number;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export interface WebGPURendererFrameStats {
|
|
26
|
-
cpuMs: number;
|
|
27
|
-
prepMs: number;
|
|
28
|
-
uploadMs: number;
|
|
29
|
-
submitMs: number;
|
|
30
|
-
drawCalls: number;
|
|
31
|
-
vertices: number;
|
|
32
|
-
bytes: number;
|
|
33
|
-
writes: number;
|
|
34
|
-
images: number;
|
|
35
|
-
clips: number;
|
|
36
|
-
retainedCPUBytes?: number;
|
|
37
|
-
retainedGPUBytes?: number;
|
|
38
|
-
textureBytes?: number;
|
|
39
|
-
commandsReleased?: boolean;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export interface WebGPURendererMemoryStats {
|
|
43
|
-
mode: WebGPUMemoryMode;
|
|
44
|
-
commands: number;
|
|
45
|
-
commandsReleased: boolean;
|
|
46
|
-
retainedCPUBytes: number;
|
|
47
|
-
retainedGPUBytes: number;
|
|
48
|
-
solidUploadBytes: number;
|
|
49
|
-
imageUploadBytes: number;
|
|
50
|
-
solidBufferBytes: number;
|
|
51
|
-
imageBufferBytes: number;
|
|
52
|
-
textureBytes: number;
|
|
53
|
-
textureRecords: number;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export interface WebGPUWarmupStats {
|
|
57
|
-
ok: boolean;
|
|
58
|
-
ms: number;
|
|
59
|
-
submitted?: boolean;
|
|
60
|
-
sharedRuntime?: boolean;
|
|
61
|
-
error?: string;
|
|
62
|
-
runtime?: WebGPURuntimeStats;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export interface WebGPURuntimeStats {
|
|
66
|
-
enabled?: boolean;
|
|
67
|
-
active?: boolean;
|
|
68
|
-
refs?: number;
|
|
69
|
-
adapterInfo?: Record<string, unknown>;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export interface CanvasGradientLike {
|
|
73
|
-
addColorStop(offset: number, color: string): void;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export interface CanvasPatternLike {
|
|
77
|
-
setTransform?(transform?: DOMMatrix2DInit): void;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
export declare class WebGPURenderer {
|
|
81
|
-
constructor(canvas: HTMLCanvasElement | OffscreenCanvas, options?: WebGPURendererOptions | null);
|
|
82
|
-
|
|
83
|
-
canvas: HTMLCanvasElement | OffscreenCanvas;
|
|
84
|
-
options: WebGPURendererOptions;
|
|
85
|
-
initPromise: Promise<void>;
|
|
86
|
-
|
|
87
|
-
fillStyle: string | CanvasGradientLike | CanvasPatternLike;
|
|
88
|
-
strokeStyle: string | CanvasGradientLike | CanvasPatternLike;
|
|
89
|
-
lineWidth: number;
|
|
90
|
-
lineJoin: CanvasLineJoin;
|
|
91
|
-
lineCap: CanvasLineCap;
|
|
92
|
-
font: string;
|
|
93
|
-
textAlign: CanvasTextAlign;
|
|
94
|
-
textBaseline: CanvasTextBaseline;
|
|
95
|
-
globalAlpha: number;
|
|
96
|
-
globalCompositeOperation: GlobalCompositeOperation;
|
|
97
|
-
lineDashOffset: number;
|
|
98
|
-
miterLimit: number;
|
|
99
|
-
direction: CanvasDirection | 'inherit';
|
|
100
|
-
filter: string;
|
|
101
|
-
fontKerning: string;
|
|
102
|
-
fontStretch: string;
|
|
103
|
-
fontVariantCaps: string;
|
|
104
|
-
letterSpacing: string;
|
|
105
|
-
textRendering: string;
|
|
106
|
-
wordSpacing: string;
|
|
107
|
-
imageSmoothingEnabled: boolean;
|
|
108
|
-
imageSmoothingQuality: ImageSmoothingQuality;
|
|
109
|
-
shadowColor: string;
|
|
110
|
-
shadowBlur: number;
|
|
111
|
-
shadowOffsetX: number;
|
|
112
|
-
shadowOffsetY: number;
|
|
113
|
-
|
|
114
|
-
static setSharedRuntimeEnabled(enabled: boolean): void;
|
|
115
|
-
static prewarm(options?: {sharedRuntime?: boolean; width?: number; height?: number; canvas?: HTMLCanvasElement | OffscreenCanvas} | null): Promise<WebGPUWarmupStats>;
|
|
116
|
-
static getSharedRuntimeStats(): WebGPURuntimeStats;
|
|
117
|
-
|
|
118
|
-
init(): Promise<void>;
|
|
119
|
-
mount(wrapper: Element, canvas: HTMLCanvasElement | OffscreenCanvas): void;
|
|
120
|
-
destroy(): void;
|
|
121
|
-
resize(width?: number, height?: number): void;
|
|
122
|
-
flush(): Promise<void>;
|
|
123
|
-
present(): void;
|
|
124
|
-
getLastFrameStats(): WebGPURendererFrameStats;
|
|
125
|
-
getMemoryStats(): WebGPURendererMemoryStats;
|
|
126
|
-
trimMemory(): WebGPURendererMemoryStats;
|
|
127
|
-
getDevice(): GPUDevice | null;
|
|
128
|
-
getRuntime(): unknown;
|
|
129
|
-
getCanvasContext(): GPUCanvasContext | null;
|
|
130
|
-
|
|
131
|
-
save(): void;
|
|
132
|
-
restore(): void;
|
|
133
|
-
resetTransform(): void;
|
|
134
|
-
setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
|
135
|
-
transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
|
136
|
-
translate(x: number, y: number): void;
|
|
137
|
-
scale(x: number, y: number): void;
|
|
138
|
-
rotate(angle: number): void;
|
|
139
|
-
|
|
140
|
-
beginPath(): void;
|
|
141
|
-
closePath(): void;
|
|
142
|
-
moveTo(x: number, y: number): void;
|
|
143
|
-
lineTo(x: number, y: number): void;
|
|
144
|
-
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
|
|
145
|
-
bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
|
|
146
|
-
arc(cx: number, cy: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
|
|
147
|
-
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
|
|
148
|
-
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
|
|
149
|
-
roundRect(x: number, y: number, width: number, height: number, radii?: number | number[] | DOMPointInit | DOMPointInit[]): void;
|
|
150
|
-
rect(x: number, y: number, width: number, height: number): void;
|
|
151
|
-
clip(path?: GPUPath | CanvasFillRule, fillRule?: CanvasFillRule): void;
|
|
152
|
-
fill(path?: GPUPath | CanvasFillRule, fillRule?: CanvasFillRule): void;
|
|
153
|
-
stroke(path?: GPUPath): void;
|
|
154
|
-
fillRect(x: number, y: number, width: number, height: number): void;
|
|
155
|
-
strokeRect(x: number, y: number, width: number, height: number): void;
|
|
156
|
-
clearRect(x: number, y: number, width: number, height: number): void;
|
|
157
|
-
fillText(text: string, x: number, y: number, maxWidth?: number): void;
|
|
158
|
-
strokeText(text: string, x: number, y: number, maxWidth?: number): void;
|
|
159
|
-
measureText(text: string): TextMetrics;
|
|
160
|
-
createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradientLike;
|
|
161
|
-
createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradientLike;
|
|
162
|
-
createConicGradient(startAngle: number, x: number, y: number): CanvasGradientLike;
|
|
163
|
-
createPattern(image: CanvasImageSource | ImageBitmap, repetition?: string): CanvasPatternLike | null;
|
|
164
|
-
createImageData(width: number, height: number): ImageData;
|
|
165
|
-
putImageData(imageData: ImageData, dx: number, dy: number, dirtyX?: number, dirtyY?: number, dirtyWidth?: number, dirtyHeight?: number): void;
|
|
166
|
-
getImageData(sx?: number, sy?: number, sw?: number, sh?: number): ImageData;
|
|
167
|
-
getImageDataAsync(sx?: number, sy?: number, sw?: number, sh?: number): Promise<ImageData>;
|
|
168
|
-
setLineDash(segments: number[]): void;
|
|
169
|
-
getLineDash(): number[];
|
|
170
|
-
drawImage(image: CanvasImageSource | ImageBitmap, dx: number, dy: number): void;
|
|
171
|
-
drawImage(image: CanvasImageSource | ImageBitmap, dx: number, dy: number, dWidth: number, dHeight: number): void;
|
|
172
|
-
drawImage(image: CanvasImageSource | ImageBitmap, sx: number, sy: number, sWidth: number, sHeight: number, dx: number, dy: number, dWidth: number, dHeight: number): void;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
export declare const WebGPURendererInternals: Record<string, unknown>;
|
|
176
|
-
export default WebGPURenderer;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export function normalizeExportType(type?: string): string;
|
|
2
|
-
export function rgbaImageDataToBmpBytes(imageData: ImageData | {width: number; height: number; data: Uint8ClampedArray | Uint8Array}): Uint8Array;
|
|
3
|
-
export function rgbaImageDataToPngBytes(imageData: ImageData | {width: number; height: number; data: Uint8ClampedArray | Uint8Array}): Uint8Array;
|
|
4
|
-
export function bytesToBase64(bytes: Uint8Array): string;
|
|
5
|
-
export function bytesToBlob(bytes: Uint8Array, type: string): Blob | {type: string; size: number; arrayBuffer(): Promise<ArrayBuffer>};
|
|
6
|
-
export function textToBlob(text: string, type: string): Blob | {type: string; size: number; arrayBuffer(): Promise<ArrayBuffer>};
|
|
7
|
-
export function escapeXmlAttr(value: unknown): string;
|
|
8
|
-
export function encodeTextBase64(text: string): string;
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
// Minimal WebGPU ambient declarations for TypeScript installs whose DOM lib does not include WebGPU yet.
|
|
2
|
-
type GPUDevice = any;
|
|
3
|
-
type GPUAdapter = any;
|
|
4
|
-
type GPUCanvasContext = any;
|
|
5
|
-
type GPUTextureFormat = string;
|
|
6
|
-
type GPUBuffer = any;
|
|
7
|
-
type GPURenderPipeline = any;
|
|
8
|
-
type GPUComputePipeline = any;
|
|
9
|
-
type GPUBindGroup = any;
|
|
10
|
-
type GPUBindGroupLayout = any;
|
|
11
|
-
type GPUPipelineLayout = any;
|
|
12
|
-
type GPUSampler = any;
|
|
13
|
-
type GPUTexture = any;
|
|
14
|
-
type GPUTextureView = any;
|
|
15
|
-
type GPUQueue = any;
|
|
16
|
-
type GPUCommandEncoder = any;
|
|
17
|
-
type GPURenderPassEncoder = any;
|
|
18
|
-
type GPUShaderModule = any;
|
|
19
|
-
type GPUBufferUsageFlags = number;
|
|
20
|
-
type GPUTextureUsageFlags = number;
|
|
21
|
-
type GPUShaderStageFlags = number;
|
|
22
|
-
type GPUMapModeFlags = number;
|
|
23
|
-
type GPUPowerPreference = 'low-power' | 'high-performance';
|
|
24
|
-
type GPUColor = any;
|
|
25
|
-
type GPUColorDict = any;
|
|
26
|
-
type GPUBlendState = any;
|
|
27
|
-
type GPUPrimitiveState = any;
|
|
28
|
-
type GPUVertexBufferLayout = any;
|
|
29
|
-
type GPUCanvasConfiguration = any;
|
|
30
|
-
type GPURequestAdapterOptions = any;
|
|
31
|
-
type GPUDeviceDescriptor = any;
|
|
32
|
-
type GPUAdapterInfo = Record<string, unknown>;
|
|
33
|
-
|
|
34
|
-
declare const GPUBufferUsage: any;
|
|
35
|
-
declare const GPUTextureUsage: any;
|
|
36
|
-
declare const GPUShaderStage: any;
|
|
37
|
-
declare const GPUMapMode: any;
|
|
38
|
-
|
|
39
|
-
interface Navigator {
|
|
40
|
-
gpu?: any;
|
|
41
|
-
}
|