chartgpu 0.2.3 → 0.2.5

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.
Files changed (47) hide show
  1. package/README.md +106 -176
  2. package/dist/ChartGPU.d.ts +23 -6
  3. package/dist/ChartGPU.d.ts.map +1 -1
  4. package/dist/config/OptionResolver.d.ts.map +1 -1
  5. package/dist/config/types.d.ts +26 -1
  6. package/dist/config/types.d.ts.map +1 -1
  7. package/dist/core/GPUContext.d.ts +2 -2
  8. package/dist/core/GPUContext.d.ts.map +1 -1
  9. package/dist/core/createRenderCoordinator.d.ts +3 -2
  10. package/dist/core/createRenderCoordinator.d.ts.map +1 -1
  11. package/dist/core/renderCoordinator/data/computeVisibleSlice.d.ts +10 -12
  12. package/dist/core/renderCoordinator/data/computeVisibleSlice.d.ts.map +1 -1
  13. package/dist/core/renderCoordinator/render/renderAnnotationLabels.d.ts +1 -1
  14. package/dist/core/renderCoordinator/render/renderAnnotationLabels.d.ts.map +1 -1
  15. package/dist/core/renderCoordinator/render/renderAxisLabels.d.ts +1 -1
  16. package/dist/core/renderCoordinator/render/renderAxisLabels.d.ts.map +1 -1
  17. package/dist/core/renderCoordinator/render/renderSeries.d.ts.map +1 -1
  18. package/dist/core/renderCoordinator/utils/axisUtils.d.ts +1 -1
  19. package/dist/core/renderCoordinator/utils/boundsComputation.d.ts.map +1 -1
  20. package/dist/data/cartesianData.d.ts +72 -0
  21. package/dist/data/cartesianData.d.ts.map +1 -0
  22. package/dist/data/createDataStore.d.ts +4 -12
  23. package/dist/data/createDataStore.d.ts.map +1 -1
  24. package/dist/data/sampleSeries.d.ts +19 -2
  25. package/dist/data/sampleSeries.d.ts.map +1 -1
  26. package/dist/index.cjs +1270 -0
  27. package/dist/index.cjs.map +1 -0
  28. package/dist/index.d.ts +2 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +5181 -5155
  31. package/dist/index.js.map +1 -1
  32. package/dist/interaction/createAnnotationAuthoring.d.ts.map +1 -1
  33. package/dist/interaction/createAnnotationDragHandler.d.ts.map +1 -1
  34. package/dist/interaction/createAnnotationHitTester.d.ts.map +1 -1
  35. package/dist/interaction/createChartSync.d.ts +17 -2
  36. package/dist/interaction/createChartSync.d.ts.map +1 -1
  37. package/dist/interaction/findNearestPoint.d.ts.map +1 -1
  38. package/dist/interaction/findPointsAtX.d.ts.map +1 -1
  39. package/dist/renderers/createAreaRenderer.d.ts +2 -1
  40. package/dist/renderers/createAreaRenderer.d.ts.map +1 -1
  41. package/dist/renderers/createBarRenderer.d.ts.map +1 -1
  42. package/dist/renderers/createHighlightRenderer.d.ts +1 -1
  43. package/dist/renderers/createHighlightRenderer.d.ts.map +1 -1
  44. package/dist/renderers/createLineRenderer.d.ts.map +1 -1
  45. package/dist/renderers/createScatterRenderer.d.ts +2 -1
  46. package/dist/renderers/createScatterRenderer.d.ts.map +1 -1
  47. package/package.json +4 -4
@@ -8,18 +8,17 @@
8
8
  * - Binary search slicing for O(log n) performance on sorted data
9
9
  * - WeakMap caching of monotonicity checks to avoid O(n) scans
10
10
  * - Separate implementations for cartesian (x-based) and OHLC (timestamp-based) data
11
- * - Support for both tuple and object data formats
11
+ * - Support for DataPoint[], XYArraysData, and InterleavedXYData formats
12
12
  */
13
- import type { DataPoint, DataPointTuple, OHLCDataPoint, OHLCDataPointTuple } from '../../../config/types';
14
- type TuplePoint = DataPointTuple;
15
- export declare function isTuplePoint(p: DataPoint): p is TuplePoint;
16
- export declare function isTupleDataArray(data: ReadonlyArray<DataPoint>): data is ReadonlyArray<TuplePoint>;
13
+ import type { CartesianSeriesData, OHLCDataPoint, OHLCDataPointTuple } from '../../../config/types';
17
14
  export declare function isTupleOHLCDataPoint(p: OHLCDataPoint): p is OHLCDataPointTuple;
18
15
  /**
19
16
  * Checks if cartesian data is monotonic non-decreasing by X coordinate with all finite values.
20
17
  * Results are cached in a WeakMap to avoid repeated O(n) scans.
18
+ *
19
+ * Supports all CartesianSeriesData formats: DataPoint[], XYArraysData, InterleavedXYData.
21
20
  */
22
- export declare function isMonotonicNonDecreasingFiniteX(data: ReadonlyArray<DataPoint>, isTuple: boolean): boolean;
21
+ export declare function isMonotonicNonDecreasingFiniteX(data: CartesianSeriesData): boolean;
23
22
  /**
24
23
  * Checks if OHLC data is monotonic non-decreasing by timestamp with all finite values.
25
24
  * Results are cached in a WeakMap to avoid repeated O(n) scans.
@@ -31,24 +30,24 @@ export declare function isMonotonicNonDecreasingFiniteTimestamp(data: ReadonlyAr
31
30
  * Uses binary search (O(log n)) when data is monotonic by X;
32
31
  * otherwise falls back to linear filtering (O(n)).
33
32
  *
34
- * @param data - Cartesian data points (tuple or object format)
33
+ * @param data - Cartesian data in any supported format
35
34
  * @param xMin - Minimum X value (inclusive)
36
35
  * @param xMax - Maximum X value (inclusive)
37
- * @returns Sliced data array containing only points within [xMin, xMax]
36
+ * @returns Sliced data in the same format as input
38
37
  */
39
- export declare function sliceVisibleRangeByX(data: ReadonlyArray<DataPoint>, xMin: number, xMax: number): ReadonlyArray<DataPoint>;
38
+ export declare function sliceVisibleRangeByX(data: CartesianSeriesData, xMin: number, xMax: number): CartesianSeriesData;
40
39
  /**
41
40
  * Finds the index range of visible points in cartesian data.
42
41
  *
43
42
  * Returns { start, end } indices suitable for slicing or iteration.
44
43
  * Only works correctly when data is monotonic; returns full range otherwise.
45
44
  *
46
- * @param data - Cartesian data points (tuple or object format)
45
+ * @param data - Cartesian data in any supported format
47
46
  * @param xMin - Minimum X value (inclusive)
48
47
  * @param xMax - Maximum X value (inclusive)
49
48
  * @returns Index range { start, end } for visible data
50
49
  */
51
- export declare function findVisibleRangeIndicesByX(data: ReadonlyArray<DataPoint>, xMin: number, xMax: number): {
50
+ export declare function findVisibleRangeIndicesByX(data: CartesianSeriesData, xMin: number, xMax: number): {
52
51
  readonly start: number;
53
52
  readonly end: number;
54
53
  };
@@ -64,5 +63,4 @@ export declare function findVisibleRangeIndicesByX(data: ReadonlyArray<DataPoint
64
63
  * @returns Sliced data array containing only points within [xMin, xMax]
65
64
  */
66
65
  export declare function sliceVisibleRangeByOHLC(data: ReadonlyArray<OHLCDataPoint>, xMin: number, xMax: number): ReadonlyArray<OHLCDataPoint>;
67
- export {};
68
66
  //# sourceMappingURL=computeVisibleSlice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"computeVisibleSlice.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/data/computeVisibleSlice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,aAAa,EACb,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAK/B,KAAK,UAAU,GAAG,cAAc,CAAC;AAKjC,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,IAAI,UAAU,CAE1D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,aAAa,CAAC,UAAU,CAAC,CAElG;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,IAAI,kBAAkB,CAE9E;AAMD;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAuCzG;AAED;;;GAGG;AACH,wBAAgB,uCAAuC,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,OAAO,CAqBnG;AAoGD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,aAAa,CAAC,SAAS,CAAC,CA8B1B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAuBlD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,aAAa,CAAC,aAAa,CAAC,CA8B9B"}
1
+ {"version":3,"file":"computeVisibleSlice.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/data/computeVisibleSlice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,mBAAmB,EAEnB,aAAa,EACb,kBAAkB,EAInB,MAAM,uBAAuB,CAAC;AAK/B,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,IAAI,kBAAkB,CAE9E;AAOD;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CA2BlF;AAED;;;GAGG;AACH,wBAAgB,uCAAuC,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,OAAO,CAqBnG;AAgLD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,mBAAmB,CA2BrB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAkBlD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,aAAa,CAAC,aAAa,CAAC,CA8B9B"}
@@ -20,7 +20,7 @@ export interface AnnotationLabelRenderContext {
20
20
  plotTopCss: number;
21
21
  plotWidthCss: number;
22
22
  plotHeightCss: number;
23
- canvas: HTMLCanvasElement | OffscreenCanvas;
23
+ canvas: HTMLCanvasElement;
24
24
  }
25
25
  /**
26
26
  * Renders annotation labels to the text overlay.
@@ -1 +1 @@
1
- {"version":3,"file":"renderAnnotationLabels.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderAnnotationLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,uCAAuC,CAAC;AAK5F,MAAM,WAAW,4BAA4B;IAC3C,cAAc,EAAE,uBAAuB,CAAC;IACxC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,4BAA4B,EAAE,MAAM,CAAC;IACrC,6BAA6B,EAAE,MAAM,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,iBAAiB,GAAG,eAAe,CAAC;CAC7C;AAyED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,WAAW,GAAG,IAAI,EACrC,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,OAAO,EAAE,4BAA4B,GACpC,IAAI,CAuMN"}
1
+ {"version":3,"file":"renderAnnotationLabels.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderAnnotationLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,uCAAuC,CAAC;AAK5F,MAAM,WAAW,4BAA4B;IAC3C,cAAc,EAAE,uBAAuB,CAAC;IACxC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,4BAA4B,EAAE,MAAM,CAAC;IACrC,6BAA6B,EAAE,MAAM,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAyED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,WAAW,GAAG,IAAI,EACrC,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,OAAO,EAAE,4BAA4B,GACpC,IAAI,CAuMN"}
@@ -12,7 +12,7 @@ import type { LinearScale } from '../../../utils/scales';
12
12
  import type { TextOverlay } from '../../../components/createTextOverlay';
13
13
  export interface AxisLabelRenderContext {
14
14
  gpuContext: {
15
- canvas: HTMLCanvasElement | OffscreenCanvas | null;
15
+ canvas: HTMLCanvasElement | null;
16
16
  };
17
17
  currentOptions: ResolvedChartGPUOptions;
18
18
  xScale: LinearScale;
@@ -1 +1 @@
1
- {"version":3,"file":"renderAxisLabels.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderAxisLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,uCAAuC,CAAC;AAW5F,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE;QACV,MAAM,EAAE,iBAAiB,GAAG,eAAe,GAAG,IAAI,CAAC;KACpD,CAAC;IACF,cAAc,EAAE,uBAAuB,CAAC;IACxC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,eAAe,EAAE,MAAM,CAAC;CACzB;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CA6HN"}
1
+ {"version":3,"file":"renderAxisLabels.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderAxisLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,uCAAuC,CAAC;AAW5F,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE;QACV,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;KAClC,CAAC;IACF,cAAc,EAAE,uBAAuB,CAAC;IACxC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,eAAe,EAAE,MAAM,CAAC;CACzB;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,gBAAgB,EAAE,WAAW,GAAG,IAAI,EACpC,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CA6HN"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderSeries.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderSeries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderSeries.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/render/renderSeries.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ import type { GridArea } from '../../../renderers/createGridRenderer';
16
16
  * GridArea uses:
17
17
  * - Margins (left, right, top, bottom) in CSS pixels
18
18
  * - Canvas dimensions (canvasWidth, canvasHeight) in DEVICE pixels
19
- * - devicePixelRatio for CSS-to-device conversion (worker-compatible)
19
+ * - devicePixelRatio for CSS-to-device conversion
20
20
  *
21
21
  * @param gpuContext - GPU context with canvas and device pixel ratio
22
22
  * @param options - Resolved chart options with grid margins
@@ -1 +1 @@
1
- {"version":3,"file":"boundsComputation.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/utils/boundsComputation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAG9E;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE1F;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,aAAa,CAAC,SAAS,CAAC,KAAG,MAAM,GAAG,IAwBlF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,GAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,QAAQ,aAAa,CAAC,SAAS,CAAC,KAAG,MAAM,GAAG,IA8B7G,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,QAAQ,aAAa,CAAC,aAAa,CAAC,KAAG,MAAM,GAAG,IA8BrH,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,uBAAuB,CAAC,QAAQ,CAAC,EACzC,0BAA0B,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,KAC5D,MAuGF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,cAAc,MAAM,EACpB,cAAc,MAAM,KACnB;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAkB9C,CAAC"}
1
+ {"version":3,"file":"boundsComputation.d.ts","sourceRoot":"","sources":["../../../../src/core/renderCoordinator/utils/boundsComputation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAI9E;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE1F;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,aAAa,CAAC,SAAS,CAAC,KAAG,MAAM,GAAG,IAwBlF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,GAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,QAAQ,aAAa,CAAC,SAAS,CAAC,KAAG,MAAM,GAAG,IA8B7G,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,QAAQ,aAAa,CAAC,aAAa,CAAC,KAAG,MAAM,GAAG,IA8BrH,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,uBAAuB,CAAC,QAAQ,CAAC,EACzC,0BAA0B,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,KAC5D,MAuGF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,cAAc,MAAM,EACpB,cAAc,MAAM,KACnB;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAkB9C,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Internal cartesian data abstraction for CartesianSeriesData.
3
+ *
4
+ * Provides high-performance, allocation-minimizing primitives to support all three cartesian formats:
5
+ * - ReadonlyArray<DataPoint> (tuple or object)
6
+ * - XYArraysData (separate x/y/size arrays)
7
+ * - InterleavedXYData (typed array view with [x0,y0,x1,y1,...] layout)
8
+ *
9
+ * DO NOT export from public entrypoint (src/index.ts). This is internal-only.
10
+ *
11
+ * @module cartesianData
12
+ * @internal
13
+ */
14
+ import type { CartesianSeriesData } from '../config/types';
15
+ /**
16
+ * Bounds type for min/max x and y values.
17
+ */
18
+ export type Bounds = Readonly<{
19
+ xMin: number;
20
+ xMax: number;
21
+ yMin: number;
22
+ yMax: number;
23
+ }>;
24
+ /**
25
+ * Returns the number of points in the CartesianSeriesData.
26
+ */
27
+ export declare function getPointCount(data: CartesianSeriesData): number;
28
+ /**
29
+ * Returns the x-coordinate of the point at index i.
30
+ * Returns NaN if the point is undefined, null, or non-object (for DataPoint[] format).
31
+ * This allows callers using `Number.isFinite()` to naturally skip missing points.
32
+ */
33
+ export declare function getX(data: CartesianSeriesData, i: number): number;
34
+ /**
35
+ * Returns the y-coordinate of the point at index i.
36
+ * Returns NaN if the point is undefined, null, or non-object (for DataPoint[] format).
37
+ * This allows callers using `Number.isFinite()` to naturally skip missing points.
38
+ */
39
+ export declare function getY(data: CartesianSeriesData, i: number): number;
40
+ /**
41
+ * Returns the size value of the point at index i, or undefined if not available.
42
+ * Returns undefined if the point is undefined, null, or non-object (for DataPoint[] format).
43
+ * Note: InterleavedXYData does NOT support interleaved size (use XYArraysData.size if needed).
44
+ */
45
+ export declare function getSize(data: CartesianSeriesData, i: number): number | undefined;
46
+ /**
47
+ * Packs XY coordinates from CartesianSeriesData into a Float32Array in interleaved layout.
48
+ *
49
+ * Writes `pointCount` points starting at `srcPointOffset` in the source data
50
+ * into `out` starting at `outFloatOffset` (measured in float32 elements, not bytes).
51
+ *
52
+ * Each point writes 2 floats: [x - xOffset, y].
53
+ * Size dimension is NOT packed (use getSize() separately if needed).
54
+ *
55
+ * @param out - Target Float32Array to write into
56
+ * @param outFloatOffset - Starting offset in `out` (in float32 elements)
57
+ * @param src - Source CartesianSeriesData
58
+ * @param srcPointOffset - Starting point index in source
59
+ * @param pointCount - Number of points to pack
60
+ * @param xOffset - Value to subtract from x coordinates (for Float32 precision preservation)
61
+ */
62
+ export declare function packXYInto(out: Float32Array, outFloatOffset: number, src: CartesianSeriesData, srcPointOffset: number, pointCount: number, xOffset: number): void;
63
+ /**
64
+ * Computes xMin/xMax/yMin/yMax bounds from CartesianSeriesData.
65
+ * Skips non-finite x or y values. Returns null if no finite points found.
66
+ * Ensures xMin !== xMax and yMin !== yMax for scale derivation (expands max by +1 if needed).
67
+ *
68
+ * @param data - CartesianSeriesData in any supported format
69
+ * @returns Bounds object or null if no finite points
70
+ */
71
+ export declare function computeRawBoundsFromCartesianData(data: CartesianSeriesData): Bounds | null;
72
+ //# sourceMappingURL=cartesianData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cartesianData.d.ts","sourceRoot":"","sources":["../../src/data/cartesianData.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAA8C,MAAM,iBAAiB,CAAC;AAEvG;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAqD1F;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAmB/D;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBjE;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBjE;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBhF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,YAAY,EACjB,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,mBAAmB,EACxB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,IAAI,CA6DN;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAkE1F"}
@@ -1,6 +1,6 @@
1
- import type { DataPoint } from '../config/types';
1
+ import type { CartesianSeriesData } from '../config/types';
2
2
  export interface DataStore {
3
- setSeries(index: number, data: ReadonlyArray<DataPoint>, options?: Readonly<{
3
+ setSeries(index: number, data: CartesianSeriesData, options?: Readonly<{
4
4
  xOffset?: number;
5
5
  }>): void;
6
6
  /**
@@ -8,11 +8,11 @@ export interface DataStore {
8
8
  *
9
9
  * - Reuses the same geometric growth policy as `setSeries`.
10
10
  * - When no reallocation is needed, writes only the appended byte range via `queue.writeBuffer(...)`.
11
- * - Maintains `pointCount` and a CPU-side combined data array so `getSeriesData(...)` remains correct.
11
+ * - Maintains `pointCount` for render path queries.
12
12
  *
13
13
  * Throws if the series has not been set yet.
14
14
  */
15
- appendSeries(index: number, newPoints: ReadonlyArray<DataPoint>): void;
15
+ appendSeries(index: number, newPoints: CartesianSeriesData): void;
16
16
  removeSeries(index: number): void;
17
17
  getSeriesBuffer(index: number): GPUBuffer;
18
18
  /**
@@ -21,14 +21,6 @@ export interface DataStore {
21
21
  * Throws if the series has not been set yet.
22
22
  */
23
23
  getSeriesPointCount(index: number): number;
24
- /**
25
- * Returns the last CPU-side data set for the given series index.
26
- *
27
- * This is intended for internal metadata/hit-testing paths that need the same
28
- * input array that was packed into the GPU buffer (without re-threading it
29
- * through other state). Throws if the series has not been set yet.
30
- */
31
- getSeriesData(index: number): ReadonlyArray<DataPoint>;
32
24
  dispose(): void;
33
25
  }
34
26
  export declare function createDataStore(device: GPUDevice): DataStore;
@@ -1 +1 @@
1
- {"version":3,"file":"createDataStore.d.ts","sourceRoot":"","sources":["../../src/data/createDataStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,iBAAiB,CAAC;AAGjE,MAAM,WAAW,SAAS;IACxB,SAAS,CACP,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACvC,IAAI,CAAC;IACR;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IACvE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C;;;;OAIG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3C;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACvD,OAAO,IAAI,IAAI,CAAC;CACjB;AAsDD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAgP5D"}
1
+ {"version":3,"file":"createDataStore.d.ts","sourceRoot":"","sources":["../../src/data/createDataStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,MAAM,WAAW,SAAS;IACxB,SAAS,CACP,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,mBAAmB,EACzB,OAAO,CAAC,EAAE,QAAQ,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACvC,IAAI,CAAC;IACR;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAClE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C;;;;OAIG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3C,OAAO,IAAI,IAAI,CAAC;CACjB;AAyDD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CA2O5D"}
@@ -1,3 +1,20 @@
1
- import type { DataPoint, SeriesSampling } from '../config/types';
2
- export declare function sampleSeriesDataPoints(data: ReadonlyArray<DataPoint>, sampling: SeriesSampling, samplingThreshold: number): ReadonlyArray<DataPoint>;
1
+ import type { CartesianSeriesData, SeriesSampling } from '../config/types';
2
+ /**
3
+ * Samples CartesianSeriesData using the specified sampling strategy.
4
+ *
5
+ * Returns the ORIGINAL data reference when:
6
+ * - `sampling === 'none'`
7
+ * - `samplingThreshold` is invalid/non-positive
8
+ * - Point count <= threshold
9
+ *
10
+ * When sampling occurs:
11
+ * - For `lttb`:
12
+ * - Float32Array interleaved → returns sampled Float32Array
13
+ * - Other interleaved typed array → packs to Float32Array, returns sampled Float32Array
14
+ * - DataPoint[] → returns sampled DataPoint[]
15
+ * - XYArraysData → packs to Float32Array, returns sampled Float32Array
16
+ * - For `average`/`max`/`min`:
17
+ * - Returns DataPointTuple[] for all input formats
18
+ */
19
+ export declare function sampleSeriesDataPoints(data: CartesianSeriesData, sampling: SeriesSampling, samplingThreshold: number): CartesianSeriesData;
3
20
  //# sourceMappingURL=sampleSeries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sampleSeries.d.ts","sourceRoot":"","sources":["../../src/data/sampleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA+GjF,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAC9B,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,MAAM,GACxB,aAAa,CAAC,SAAS,CAAC,CAsB1B"}
1
+ {"version":3,"file":"sampleSeries.d.ts","sourceRoot":"","sources":["../../src/data/sampleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAoM3F;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,mBAAmB,EACzB,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,MAAM,GACxB,mBAAmB,CA8CrB"}