@canplot/react 0.1.0 → 0.1.3
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/README.md +37 -5
- package/dist/CanPlot.d.ts +9 -0
- package/dist/CanPlot.d.ts.map +1 -0
- package/dist/axes.d.ts +18 -0
- package/dist/axes.d.ts.map +1 -0
- package/dist/canplot.cjs +4 -4
- package/dist/canplot.cjs.map +1 -1
- package/dist/canplot.mjs +47 -47
- package/dist/canplot.mjs.map +1 -1
- package/dist/defaults.d.ts +12 -0
- package/dist/defaults.d.ts.map +1 -0
- package/dist/frameContext.d.ts +18 -0
- package/dist/frameContext.d.ts.map +1 -0
- package/dist/helpers.d.ts +14 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/interactions/AxisOverlay.d.ts +5 -0
- package/dist/interactions/AxisOverlay.d.ts.map +1 -0
- package/dist/interactions/ChartAreaInteractions.d.ts +22 -0
- package/dist/interactions/ChartAreaInteractions.d.ts.map +1 -0
- package/dist/interactions/CrossHair.d.ts +9 -0
- package/dist/interactions/CrossHair.d.ts.map +1 -0
- package/dist/interactions/SelectBox.d.ts +7 -0
- package/dist/interactions/SelectBox.d.ts.map +1 -0
- package/dist/interactions/TooltipsX.d.ts +23 -0
- package/dist/interactions/TooltipsX.d.ts.map +1 -0
- package/dist/interactions/TooltipsXY.d.ts +23 -0
- package/dist/interactions/TooltipsXY.d.ts.map +1 -0
- package/dist/interactions/interactionsBus.d.ts +73 -0
- package/dist/interactions/interactionsBus.d.ts.map +1 -0
- package/dist/interactions/positioning.d.ts +14 -0
- package/dist/interactions/positioning.d.ts.map +1 -0
- package/dist/interactions/types.d.ts +118 -0
- package/dist/interactions/types.d.ts.map +1 -0
- package/dist/plot/AnnotationX.d.ts +6 -0
- package/dist/plot/AnnotationX.d.ts.map +1 -0
- package/dist/plot/AreaPlot.d.ts +13 -0
- package/dist/plot/AreaPlot.d.ts.map +1 -0
- package/dist/plot/BarPlot.d.ts +16 -0
- package/dist/plot/BarPlot.d.ts.map +1 -0
- package/dist/plot/LinePlot.d.ts +13 -0
- package/dist/plot/LinePlot.d.ts.map +1 -0
- package/dist/plot/ScatterPlot.d.ts +14 -0
- package/dist/plot/ScatterPlot.d.ts.map +1 -0
- package/dist/plot/SparklinePlot.d.ts +14 -0
- package/dist/plot/SparklinePlot.d.ts.map +1 -0
- package/dist/time.d.ts +14 -0
- package/dist/time.d.ts.map +1 -0
- package/dist/types.d.ts +86 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils.d.ts +7 -0
- package/dist/utils.d.ts.map +1 -0
- package/package.json +3 -2
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
export type PlotConfiguration = {
|
|
2
|
+
padding: PlotPadding;
|
|
3
|
+
scales: PlotScaleConfig[];
|
|
4
|
+
};
|
|
5
|
+
export type PlotDrawFrame = {
|
|
6
|
+
ctx: CanvasRenderingContext2D;
|
|
7
|
+
dpr: number;
|
|
8
|
+
chartAreaCanvasPX: {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
13
|
+
};
|
|
14
|
+
chartAreaCSS: {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
};
|
|
20
|
+
padding: PlotPadding;
|
|
21
|
+
scales: PlotDrawScaleConfig[];
|
|
22
|
+
};
|
|
23
|
+
export type PlotPadding = {
|
|
24
|
+
top: number;
|
|
25
|
+
bottom: number;
|
|
26
|
+
left: number;
|
|
27
|
+
right: number;
|
|
28
|
+
};
|
|
29
|
+
export type PlotScaleLinearConfig = {
|
|
30
|
+
type: "linear";
|
|
31
|
+
id: string;
|
|
32
|
+
min: number;
|
|
33
|
+
max: number;
|
|
34
|
+
origin: "x" | "y";
|
|
35
|
+
axis: null | PlotAxisLinear;
|
|
36
|
+
};
|
|
37
|
+
export type PlotScaleTimeConfig = {
|
|
38
|
+
type: "time";
|
|
39
|
+
id: string;
|
|
40
|
+
min: number;
|
|
41
|
+
max: number;
|
|
42
|
+
origin: "x" | "y";
|
|
43
|
+
axis: null | PlotAxisTime;
|
|
44
|
+
timeZone: string;
|
|
45
|
+
locale?: string;
|
|
46
|
+
};
|
|
47
|
+
export type PlotScaleConfig = PlotScaleLinearConfig | PlotScaleTimeConfig;
|
|
48
|
+
export type Rect = {
|
|
49
|
+
x: number;
|
|
50
|
+
y: number;
|
|
51
|
+
width: number;
|
|
52
|
+
height: number;
|
|
53
|
+
};
|
|
54
|
+
export type PlotDrawScaleLinearConfig = PlotScaleLinearConfig & {
|
|
55
|
+
axis: null | (PlotAxisLinear & {
|
|
56
|
+
cssRect: Rect;
|
|
57
|
+
canvasRect: Rect;
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
export type PlotDrawScaleTimeConfig = PlotScaleTimeConfig & {
|
|
61
|
+
axis: null | (PlotAxisTime & {
|
|
62
|
+
cssRect: Rect;
|
|
63
|
+
canvasRect: Rect;
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
export type PlotDrawScaleConfig = PlotDrawScaleLinearConfig | PlotDrawScaleTimeConfig;
|
|
67
|
+
export type PlotAxisLinear = {
|
|
68
|
+
position: "left" | "right" | "top" | "bottom";
|
|
69
|
+
size: number;
|
|
70
|
+
tickSpace?: number;
|
|
71
|
+
};
|
|
72
|
+
export type PlotAxisTime = {
|
|
73
|
+
position: "left" | "right" | "top" | "bottom";
|
|
74
|
+
size: number;
|
|
75
|
+
tickSpace?: number;
|
|
76
|
+
showTimezone?: boolean;
|
|
77
|
+
};
|
|
78
|
+
export type PlotSize = {
|
|
79
|
+
width: number;
|
|
80
|
+
height: number;
|
|
81
|
+
};
|
|
82
|
+
export type Style = {
|
|
83
|
+
fillStyle?: CanvasFillStrokeStyles["fillStyle"];
|
|
84
|
+
strokeStyle?: CanvasFillStrokeStyles["strokeStyle"];
|
|
85
|
+
} & Partial<Pick<CanvasPathDrawingStyles, "lineCap" | "lineDashOffset" | "lineJoin" | "lineWidth" | "miterLimit">> & Partial<CanvasTextDrawingStyles>;
|
|
86
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const clamp: (val: number, min: number, max: number) => number;
|
|
2
|
+
export type DeepPartial<T> = {
|
|
3
|
+
[P in keyof T]?: T[P] extends (infer U)[] ? DeepPartial<U>[] : T[P] extends Readonly<infer U>[] ? Readonly<DeepPartial<U>>[] : DeepPartial<T[P]>;
|
|
4
|
+
};
|
|
5
|
+
export declare const sum: (input: (number | undefined)[]) => number;
|
|
6
|
+
export declare const findClosestIndex: (arr: number[], val: number) => number;
|
|
7
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,WAE1D,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACrC,WAAW,CAAC,CAAC,CAAC,EAAE,GAChB,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,GAChC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,GAC1B,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,GAAG,GAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,KAAG,MAEnD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,EAAE,KAAK,MAAM,WAS1D,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@canplot/react",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "A high-performance React charting library built on Canvas",
|
|
5
5
|
"author": "jedzej",
|
|
6
6
|
"license": "MIT",
|
|
@@ -58,7 +58,8 @@
|
|
|
58
58
|
"react-dom": "^18.0.0 || ^19.0.0"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"zustand": "^5.0.8"
|
|
61
|
+
"zustand": "^5.0.8",
|
|
62
|
+
"react-merge-refs": "^3.0.2"
|
|
62
63
|
},
|
|
63
64
|
"devDependencies": {
|
|
64
65
|
"@chromatic-com/storybook": "^4.1.2",
|