@obitrain/charts 0.9.2

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 (116) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +125 -0
  3. package/lib/commonjs/Charts/BottomAxis/AxisLine.js +38 -0
  4. package/lib/commonjs/Charts/BottomAxis/AxisLine.js.map +1 -0
  5. package/lib/commonjs/Charts/BottomAxis/BottomAxis.js +45 -0
  6. package/lib/commonjs/Charts/BottomAxis/BottomAxis.js.map +1 -0
  7. package/lib/commonjs/Charts/BottomAxis/Tick.js +43 -0
  8. package/lib/commonjs/Charts/BottomAxis/Tick.js.map +1 -0
  9. package/lib/commonjs/Charts/BottomAxis/index.js +27 -0
  10. package/lib/commonjs/Charts/BottomAxis/index.js.map +1 -0
  11. package/lib/commonjs/Charts/Cursor.js +50 -0
  12. package/lib/commonjs/Charts/Cursor.js.map +1 -0
  13. package/lib/commonjs/Charts/Linechart/index.js +55 -0
  14. package/lib/commonjs/Charts/Linechart/index.js.map +1 -0
  15. package/lib/commonjs/Charts/ZoomableLinechart/ScalablePath.js +43 -0
  16. package/lib/commonjs/Charts/ZoomableLinechart/ScalablePath.js.map +1 -0
  17. package/lib/commonjs/Charts/ZoomableLinechart/index.js +43 -0
  18. package/lib/commonjs/Charts/ZoomableLinechart/index.js.map +1 -0
  19. package/lib/commonjs/Charts/gesture.js +185 -0
  20. package/lib/commonjs/Charts/gesture.js.map +1 -0
  21. package/lib/commonjs/Charts/graphUtils.js +131 -0
  22. package/lib/commonjs/Charts/graphUtils.js.map +1 -0
  23. package/lib/commonjs/Charts/index.js +151 -0
  24. package/lib/commonjs/Charts/index.js.map +1 -0
  25. package/lib/commonjs/Charts/maths.js +195 -0
  26. package/lib/commonjs/Charts/maths.js.map +1 -0
  27. package/lib/commonjs/Charts/types.js +6 -0
  28. package/lib/commonjs/Charts/types.js.map +1 -0
  29. package/lib/commonjs/dateUtils.js +151 -0
  30. package/lib/commonjs/dateUtils.js.map +1 -0
  31. package/lib/commonjs/index.js +39 -0
  32. package/lib/commonjs/index.js.map +1 -0
  33. package/lib/commonjs/package.json +1 -0
  34. package/lib/commonjs/textUtils.js +21 -0
  35. package/lib/commonjs/textUtils.js.map +1 -0
  36. package/lib/module/Charts/BottomAxis/AxisLine.js +34 -0
  37. package/lib/module/Charts/BottomAxis/AxisLine.js.map +1 -0
  38. package/lib/module/Charts/BottomAxis/BottomAxis.js +40 -0
  39. package/lib/module/Charts/BottomAxis/BottomAxis.js.map +1 -0
  40. package/lib/module/Charts/BottomAxis/Tick.js +37 -0
  41. package/lib/module/Charts/BottomAxis/Tick.js.map +1 -0
  42. package/lib/module/Charts/BottomAxis/index.js +6 -0
  43. package/lib/module/Charts/BottomAxis/index.js.map +1 -0
  44. package/lib/module/Charts/Cursor.js +46 -0
  45. package/lib/module/Charts/Cursor.js.map +1 -0
  46. package/lib/module/Charts/Linechart/index.js +50 -0
  47. package/lib/module/Charts/Linechart/index.js.map +1 -0
  48. package/lib/module/Charts/ZoomableLinechart/ScalablePath.js +39 -0
  49. package/lib/module/Charts/ZoomableLinechart/ScalablePath.js.map +1 -0
  50. package/lib/module/Charts/ZoomableLinechart/index.js +33 -0
  51. package/lib/module/Charts/ZoomableLinechart/index.js.map +1 -0
  52. package/lib/module/Charts/gesture.js +176 -0
  53. package/lib/module/Charts/gesture.js.map +1 -0
  54. package/lib/module/Charts/graphUtils.js +121 -0
  55. package/lib/module/Charts/graphUtils.js.map +1 -0
  56. package/lib/module/Charts/index.js +10 -0
  57. package/lib/module/Charts/index.js.map +1 -0
  58. package/lib/module/Charts/maths.js +187 -0
  59. package/lib/module/Charts/maths.js.map +1 -0
  60. package/lib/module/Charts/types.js +4 -0
  61. package/lib/module/Charts/types.js.map +1 -0
  62. package/lib/module/dateUtils.js +142 -0
  63. package/lib/module/dateUtils.js.map +1 -0
  64. package/lib/module/index.js +6 -0
  65. package/lib/module/index.js.map +1 -0
  66. package/lib/module/textUtils.js +16 -0
  67. package/lib/module/textUtils.js.map +1 -0
  68. package/lib/typescript/src/Charts/BottomAxis/AxisLine.d.ts +15 -0
  69. package/lib/typescript/src/Charts/BottomAxis/AxisLine.d.ts.map +1 -0
  70. package/lib/typescript/src/Charts/BottomAxis/BottomAxis.d.ts +17 -0
  71. package/lib/typescript/src/Charts/BottomAxis/BottomAxis.d.ts.map +1 -0
  72. package/lib/typescript/src/Charts/BottomAxis/Tick.d.ts +14 -0
  73. package/lib/typescript/src/Charts/BottomAxis/Tick.d.ts.map +1 -0
  74. package/lib/typescript/src/Charts/BottomAxis/index.d.ts +4 -0
  75. package/lib/typescript/src/Charts/BottomAxis/index.d.ts.map +1 -0
  76. package/lib/typescript/src/Charts/Cursor.d.ts +14 -0
  77. package/lib/typescript/src/Charts/Cursor.d.ts.map +1 -0
  78. package/lib/typescript/src/Charts/Linechart/index.d.ts +25 -0
  79. package/lib/typescript/src/Charts/Linechart/index.d.ts.map +1 -0
  80. package/lib/typescript/src/Charts/ZoomableLinechart/ScalablePath.d.ts +14 -0
  81. package/lib/typescript/src/Charts/ZoomableLinechart/ScalablePath.d.ts.map +1 -0
  82. package/lib/typescript/src/Charts/ZoomableLinechart/index.d.ts +23 -0
  83. package/lib/typescript/src/Charts/ZoomableLinechart/index.d.ts.map +1 -0
  84. package/lib/typescript/src/Charts/gesture.d.ts +54 -0
  85. package/lib/typescript/src/Charts/gesture.d.ts.map +1 -0
  86. package/lib/typescript/src/Charts/graphUtils.d.ts +43 -0
  87. package/lib/typescript/src/Charts/graphUtils.d.ts.map +1 -0
  88. package/lib/typescript/src/Charts/index.d.ts +14 -0
  89. package/lib/typescript/src/Charts/index.d.ts.map +1 -0
  90. package/lib/typescript/src/Charts/maths.d.ts +19 -0
  91. package/lib/typescript/src/Charts/maths.d.ts.map +1 -0
  92. package/lib/typescript/src/Charts/types.d.ts +14 -0
  93. package/lib/typescript/src/Charts/types.d.ts.map +1 -0
  94. package/lib/typescript/src/dateUtils.d.ts +37 -0
  95. package/lib/typescript/src/dateUtils.d.ts.map +1 -0
  96. package/lib/typescript/src/index.d.ts +5 -0
  97. package/lib/typescript/src/index.d.ts.map +1 -0
  98. package/lib/typescript/src/textUtils.d.ts +3 -0
  99. package/lib/typescript/src/textUtils.d.ts.map +1 -0
  100. package/package.json +226 -0
  101. package/src/Charts/BottomAxis/AxisLine.tsx +40 -0
  102. package/src/Charts/BottomAxis/BottomAxis.tsx +41 -0
  103. package/src/Charts/BottomAxis/Tick.tsx +54 -0
  104. package/src/Charts/BottomAxis/index.tsx +3 -0
  105. package/src/Charts/Cursor.tsx +51 -0
  106. package/src/Charts/Linechart/index.tsx +79 -0
  107. package/src/Charts/ZoomableLinechart/ScalablePath.tsx +49 -0
  108. package/src/Charts/ZoomableLinechart/index.tsx +47 -0
  109. package/src/Charts/gesture.ts +254 -0
  110. package/src/Charts/graphUtils.ts +198 -0
  111. package/src/Charts/index.tsx +32 -0
  112. package/src/Charts/maths.ts +245 -0
  113. package/src/Charts/types.ts +16 -0
  114. package/src/dateUtils.ts +163 -0
  115. package/src/index.tsx +4 -0
  116. package/src/textUtils.ts +21 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PathVerb","vec","round","value","precision","p","Math","pow","cuberoot","x","y","abs","solveCubic","a","b","c","d","D","sqrt","q","roots","concat","u","t","acos","k","PI","cos","i","length","cubicSolve","p0","p1","p2","p3","cubicBezierYForX","pa","pb","pc","pd","ts","map","root","filter","selectCurve","cmds","from","cmd","undefined","Move","Cubic","c1","c2","to","commandsToBezier","normCmds","currCmd","Error","normCmd","Line","push","getYForX","cmdsNorm","magnitude","normalize","m"],"sourceRoot":"../../../src","sources":["Charts/maths.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["Charts/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+
3
+ export const getMonthInterval = function (month, nbMonths) {
4
+ if (month <= 0) throw new Error('Months should start at 1');
5
+ return (month - month % nbMonths + 1).toString().padStart(2, '0');
6
+ };
7
+
8
+ /**
9
+ * Get the date interval based on the date range.
10
+ * For example, for the date 2021-01-01:
11
+ * - day: 2021-01-01
12
+ * - month: 2021-01
13
+ * - trimester: 2021-01
14
+ * - year: 2021
15
+ * @param date
16
+ * @param dateRange
17
+ * @returns
18
+ */
19
+ export const getDateInterval = function (date, dateRange) {
20
+ const year = date.getFullYear();
21
+ const month = date.getMonth() + 1;
22
+ const day = date.getDate().toString().padStart(2, '0');
23
+ const monthStr = month.toString().padStart(2, '0');
24
+ switch (dateRange) {
25
+ case 'day':
26
+ return `${year}-${monthStr}-${day}`;
27
+ case 'month':
28
+ return `${year}-${monthStr}`;
29
+ case 'trimester':
30
+ return `${year}-${getMonthInterval(month, 3)}`;
31
+ case 'year':
32
+ return `${year}`;
33
+ }
34
+ throw new Error('Invalid date range');
35
+ };
36
+
37
+ //@ts-ignore
38
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
39
+ const fmtData = function (data, dateRange) {
40
+ const _dataFmt = new Map();
41
+ for (const [date, value] of data) {
42
+ const _dateStr = getDateInterval(date, dateRange);
43
+ if (!_dataFmt.has(_dateStr)) _dataFmt.set(_dateStr, [date.getTime(), value]);
44
+ }
45
+ return [..._dataFmt.values()];
46
+ };
47
+
48
+ /**
49
+ * Groups an array of Date objects by a specific time interval (day, month, trimester, year)
50
+ * and calculates the earliest and latest dates within each interval.
51
+ * For instance, given the dates [2021-01-01, 2021-01-25, 2021-03-01, 2021-10-01]:
52
+ * - month: { '2021-01': [2021-01-01, 2021-01-25],
53
+ * '2021-03': [2021-03-01, 2021-03-01],
54
+ '2021-10': [2021-10-01, 2021-10-01] }
55
+
56
+ * @param {Date[]} dates - An array of dates to group and find boundary dates for.
57
+ * @returns {Map<string, [Date, Date]>} - A map where each key represents an interval
58
+ * as a string (formatted according to the interval type, e.g., '2021', '2021-03', '2021-01-01'),
59
+ * and each value is a tuple containing the earliest and latest dates within that interval.
60
+ */
61
+ export function getDateBoundaries(dates, dateRange) {
62
+ const ranges = new Map();
63
+ for (const date of dates) {
64
+ const _dateStr = getDateInterval(date, dateRange);
65
+ const _range = ranges.get(_dateStr);
66
+ if (!_range) ranges.set(_dateStr, [date, date]);else if (date > _range[1]) ranges.set(_dateStr, [_range[0], date]);
67
+ }
68
+ return ranges;
69
+ }
70
+ export function sampleDates(dates, sampleSize, indexOffset = 0) {
71
+ if (sampleSize <= 0 || dates.length === 0) {
72
+ return {
73
+ dates: [],
74
+ indexes: []
75
+ };
76
+ }
77
+ if (sampleSize >= dates.length) {
78
+ return {
79
+ dates,
80
+ indexes: Array.from({
81
+ length: dates.length
82
+ }, (_, i) => indexOffset + i)
83
+ };
84
+ }
85
+
86
+ // Calculate total time span and interval
87
+ const firstItem = dates[0];
88
+ const lastItem = dates[dates.length - 1];
89
+ const startTime = firstItem.getTime();
90
+ const endTime = lastItem.getTime();
91
+ const timeSpan = endTime - startTime;
92
+ const timeInterval = timeSpan / (sampleSize - 1);
93
+ const sampledDates = [firstItem]; // Always include the first date
94
+ const sampledIndexes = [0];
95
+ let nextTime = startTime + timeInterval;
96
+
97
+ // Select dates closest to each time interval
98
+ for (let i = 1; i < sampleSize - 1; i++) {
99
+ let closestDate = dates[0];
100
+ let minDiff = Math.abs(startTime - nextTime);
101
+ let closestIndex = 0;
102
+ for (let j = 1; j < dates.length; j++) {
103
+ const diff = Math.abs(dates[j].getTime() - nextTime);
104
+ if (diff < minDiff) {
105
+ closestDate = dates[j];
106
+ closestIndex = j;
107
+ minDiff = diff;
108
+ }
109
+ }
110
+ sampledDates.push(closestDate);
111
+ sampledIndexes.push(closestIndex);
112
+ nextTime += timeInterval;
113
+ }
114
+ sampledDates.push(lastItem); // Always include the last date
115
+ sampledIndexes.push(dates.length - 1);
116
+ return {
117
+ dates: sampledDates,
118
+ indexes: sampledIndexes.map(x => indexOffset + x)
119
+ };
120
+ }
121
+ export function sampleDatesByRange(dates, sampleSize, dateRange) {
122
+ const boundaries = getDateBoundaries(dates, dateRange);
123
+ const rangedData = new Map();
124
+ for (let i = 0; i < dates.length; i++) {
125
+ let date = dates[i];
126
+ for (const [key, [minDate, maxDate]] of boundaries) {
127
+ if (date >= minDate && date <= maxDate) {
128
+ if (!rangedData.has(key)) rangedData.set(key, []);
129
+ rangedData.get(key).push(date);
130
+ break;
131
+ }
132
+ }
133
+ }
134
+ const sampledData = new Map();
135
+ let offset = 0;
136
+ for (const [key, value] of rangedData) {
137
+ sampledData.set(key, sampleDates(value, sampleSize, offset));
138
+ offset += value.length;
139
+ }
140
+ return sampledData;
141
+ }
142
+ //# sourceMappingURL=dateUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getMonthInterval","month","nbMonths","Error","toString","padStart","getDateInterval","date","dateRange","year","getFullYear","getMonth","day","getDate","monthStr","fmtData","data","_dataFmt","Map","value","_dateStr","has","set","getTime","values","getDateBoundaries","dates","ranges","_range","get","sampleDates","sampleSize","indexOffset","length","indexes","Array","from","_","i","firstItem","lastItem","startTime","endTime","timeSpan","timeInterval","sampledDates","sampledIndexes","nextTime","closestDate","minDiff","Math","abs","closestIndex","j","diff","push","map","x","sampleDatesByRange","boundaries","rangedData","key","minDate","maxDate","sampledData","offset"],"sourceRoot":"../../src","sources":["dateUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export * from './Charts';
4
+ export * from './dateUtils';
5
+ export * from './textUtils';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,aAAa;AAE3B,cAAc,aAAa","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ import { useDerivedValue, useSharedValue } from 'react-native-reanimated';
4
+ const textToString = function (value) {
5
+ 'worklet';
6
+
7
+ return value.toFixed(0).toString();
8
+ };
9
+ export const useSharedNumberToStr = function (initValue = 0) {
10
+ const value = useSharedValue(initValue);
11
+ const valueStr = useDerivedValue(() => {
12
+ return textToString(value.value);
13
+ }, [value]);
14
+ return [value, valueStr];
15
+ };
16
+ //# sourceMappingURL=textUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useDerivedValue","useSharedValue","textToString","value","toFixed","toString","useSharedNumberToStr","initValue","valueStr"],"sourceRoot":"../../src","sources":["textUtils.ts"],"mappings":";;AAAA,SACEA,eAAe,EACfC,cAAc,QAET,yBAAyB;AAEhC,MAAMC,YAAY,GAAG,SAAAA,CAAUC,KAAa,EAAE;EAC5C,SAAS;;EACT,OAAOA,KAAK,CAACC,OAAO,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAG,SAAAA,CAClCC,SAAiB,GAAG,CAAC,EACuB;EAC5C,MAAMJ,KAAK,GAAGF,cAAc,CAASM,SAAS,CAAC;EAC/C,MAAMC,QAAQ,GAAGR,eAAe,CAAC,MAAM;IACrC,OAAOE,YAAY,CAACC,KAAK,CAACA,KAAK,CAAC;EAClC,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,OAAO,CAACA,KAAK,EAAEK,QAAQ,CAAC;AAC1B,CAAC","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { type Color } from '@shopify/react-native-skia';
2
+ import { type FC } from 'react';
3
+ import { type SharedValue } from 'react-native-reanimated';
4
+ export type AxisLineProps = {
5
+ width: number;
6
+ focalX: SharedValue<number>;
7
+ scale: SharedValue<number>;
8
+ offsetX: SharedValue<number>;
9
+ strokeWidth?: number;
10
+ offsetY?: number;
11
+ color?: Color;
12
+ };
13
+ declare const AxisLine: FC<AxisLineProps>;
14
+ export { AxisLine };
15
+ //# sourceMappingURL=AxisLine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AxisLine.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/BottomAxis/AxisLine.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG5E,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,EAAE,CAAC,aAAa,CAqB/B,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type SkFont } from '@shopify/react-native-skia';
2
+ import { type FC } from 'react';
3
+ import { type StyleProp, type ViewStyle } from 'react-native';
4
+ import type { SharedValue } from 'react-native-reanimated';
5
+ export type BottomAxisProps = {
6
+ labels: string[];
7
+ width: number;
8
+ scale: SharedValue<number>;
9
+ focalX: SharedValue<number>;
10
+ offsetX: SharedValue<number>;
11
+ offsetY?: number;
12
+ style?: StyleProp<ViewStyle>;
13
+ font: SkFont;
14
+ };
15
+ declare const BottomAxis: FC<BottomAxisProps>;
16
+ export { BottomAxis };
17
+ //# sourceMappingURL=BottomAxis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BottomAxis.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/BottomAxis/BottomAxis.tsx"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAkBnC,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { type SkFont } from '@shopify/react-native-skia';
2
+ import React from 'react';
3
+ import { type SharedValue } from 'react-native-reanimated';
4
+ export type TickProps = {
5
+ initPosition: number;
6
+ label: string;
7
+ scale: SharedValue<number>;
8
+ focalX: SharedValue<number>;
9
+ offsetX: SharedValue<number>;
10
+ offsetY?: number;
11
+ font: SkFont;
12
+ };
13
+ export declare const Tick: React.FC<TickProps>;
14
+ //# sourceMappingURL=Tick.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tick.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/BottomAxis/Tick.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG5E,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAgCpC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { AxisLine, type AxisLineProps } from './AxisLine';
2
+ export { BottomAxis, type BottomAxisProps } from './BottomAxis';
3
+ export { Tick, type TickProps } from './Tick';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/BottomAxis/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { type PathCommand } from '@shopify/react-native-skia';
2
+ import type { FC } from 'react';
3
+ import { type SharedValue } from 'react-native-reanimated';
4
+ export type CursorProps = {
5
+ commands?: SharedValue<PathCommand[]>;
6
+ positionX: SharedValue<number>;
7
+ size?: number;
8
+ color?: string;
9
+ currentValue?: SharedValue<number> | SharedValue<undefined>;
10
+ translateY?: SharedValue<number | undefined>;
11
+ };
12
+ declare const Cursor: FC<CursorProps>;
13
+ export { Cursor };
14
+ //# sourceMappingURL=Cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cursor.d.ts","sourceRoot":"","sources":["../../../../src/Charts/Cursor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAK5E,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IACtC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC9C,CAAC;AAEF,QAAA,MAAM,MAAM,EAAE,EAAE,CAAC,WAAW,CAgC3B,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { type SkPath } from '@shopify/react-native-skia';
2
+ import type { FC } from 'react';
3
+ import React from 'react';
4
+ import type { StyleProp, ViewStyle } from 'react-native';
5
+ import type { SharedValue } from 'react-native-reanimated';
6
+ export type LinePath = {
7
+ path: SkPath | SharedValue<SkPath>;
8
+ color: string;
9
+ id?: string;
10
+ };
11
+ export type LineChartProps = {
12
+ path?: SkPath | SharedValue<SkPath>;
13
+ paths?: LinePath[];
14
+ height: number;
15
+ width: number;
16
+ style?: StyleProp<ViewStyle>;
17
+ color?: string;
18
+ offsetY?: number;
19
+ offsetX?: number;
20
+ background?: React.ReactNode;
21
+ children?: React.ReactNode;
22
+ };
23
+ declare const LineChart: FC<LineChartProps>;
24
+ export { LineChart };
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/Linechart/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAmDjC,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Path, type SkPath } from '@shopify/react-native-skia';
2
+ import { type FC } from 'react';
3
+ import { type SharedValue } from 'react-native-reanimated';
4
+ export type ScalablePathProps = {
5
+ path: SharedValue<SkPath>;
6
+ scale: SharedValue<number>;
7
+ focalX: SharedValue<number>;
8
+ offsetX: SharedValue<number>;
9
+ color?: string;
10
+ pathProps?: Omit<React.ComponentProps<typeof Path>, 'color'>;
11
+ };
12
+ declare const ScalablePath: FC<ScalablePathProps>;
13
+ export { ScalablePath };
14
+ //# sourceMappingURL=ScalablePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScalablePath.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/ZoomableLinechart/ScalablePath.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAGJ,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG5E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;CAC9D,CAAC;AAEF,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CA2BvC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type SkPath } from '@shopify/react-native-skia';
2
+ import type { FC } from 'react';
3
+ import React from 'react';
4
+ import type { StyleProp, ViewStyle } from 'react-native';
5
+ import type { SharedValue } from 'react-native-reanimated';
6
+ import { ScalablePath, type ScalablePathProps } from './ScalablePath';
7
+ export { ScalablePath };
8
+ export type { ScalablePathProps };
9
+ export type ZoomableLineChartProps = {
10
+ height: number;
11
+ width: number;
12
+ offsetX: SharedValue<number>;
13
+ scale: SharedValue<number>;
14
+ focalX: SharedValue<number>;
15
+ offsetY?: number;
16
+ style?: StyleProp<ViewStyle>;
17
+ path: SharedValue<SkPath>;
18
+ children?: React.ReactNode;
19
+ color?: string;
20
+ };
21
+ declare const ZoomableLineChart: FC<ZoomableLineChartProps>;
22
+ export { ZoomableLineChart };
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/Charts/ZoomableLinechart/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,QAAA,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAmBjD,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,54 @@
1
+ import { type PanGesture, type PinchGesture } from 'react-native-gesture-handler';
2
+ import { type SharedValue } from 'react-native-reanimated';
3
+ import type { DataPoint } from './types';
4
+ /**
5
+ * Get the position of a point on the axis,
6
+ * given the current focal, scale and offset
7
+ */
8
+ export declare const getPositionWl: (position: number, focalX: number, scale: number, offsetX: number) => number;
9
+ export type AxisGestureProps = {
10
+ width: number;
11
+ startOffset?: number;
12
+ startScale?: number;
13
+ };
14
+ export type ScalableGesture = {
15
+ scale: SharedValue<number>;
16
+ focalX: SharedValue<number>;
17
+ pinchGesture: PinchGesture;
18
+ panGesture: PanGesture;
19
+ offsetX: SharedValue<number>;
20
+ reset: () => void;
21
+ };
22
+ /**
23
+ * Return utilities for zooming and panning the axis
24
+ */
25
+ export declare const useScalableGesture: (props: AxisGestureProps) => ScalableGesture;
26
+ export type UpdateAxisProps = {
27
+ scale: SharedValue<number>;
28
+ scales: number[];
29
+ onScaleChange?: (index: number) => void;
30
+ };
31
+ export declare const useUpdateAxis: (props: UpdateAxisProps) => {
32
+ currentIndex: SharedValue<number>;
33
+ };
34
+ export type UseCursorGestureProps = {
35
+ width: number;
36
+ height: number;
37
+ points?: SharedValue<DataPoint[]>;
38
+ closestDataPoint?: SharedValue<DataPoint>;
39
+ isContinuous?: boolean;
40
+ };
41
+ /**
42
+ * Get the closest point for a given x value
43
+ */
44
+ export declare const getClosestPoint: (x: number, dataPoints: DataPoint[]) => DataPoint;
45
+ /**
46
+ * Get gesture utilities for the cursor
47
+ */
48
+ export declare const useCursorGesture: (props: UseCursorGestureProps) => {
49
+ panGesture: import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture;
50
+ tapGesture: import("react-native-gesture-handler/lib/typescript/handlers/gestures/tapGesture").TapGesture;
51
+ xPosition: SharedValue<number>;
52
+ yPosition: SharedValue<number>;
53
+ };
54
+ //# sourceMappingURL=gesture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gesture.d.ts","sourceRoot":"","sources":["../../../../src/Charts/gesture.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAMH,KAAK,WAAW,EACnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,OAAO,MAAM,EACb,SAAS,MAAM,WAIhB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,gBAAgB,KAAG,eA+F5D,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAa,OAAO,eAAe;;CA4B5D,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;IAClC,gBAAgB,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,GAAG,MAAM,EACT,YAAY,SAAS,EAAE,KACtB,SAiBF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAa,OAAO,qBAAqB;;;;;CAuCrE,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { type PathCommand, type SkPath } from '@shopify/react-native-skia';
2
+ import { type ScaleLinear } from 'd3-scale';
3
+ import * as shape from 'd3-shape';
4
+ import { type SharedValue } from 'react-native-reanimated';
5
+ import type { AnimatedDot, DataPoint } from './types';
6
+ export type Config = {
7
+ minX?: number;
8
+ maxX?: number;
9
+ minY?: number;
10
+ maxY?: number;
11
+ curve?: shape.CurveFactory | shape.CurveFactoryLineOnly;
12
+ };
13
+ export type GraphData = {
14
+ data: [number, number][];
15
+ minY: number;
16
+ maxY: number;
17
+ path: string;
18
+ skiaPath: SkPath;
19
+ dataPoints: DataPoint[];
20
+ scaleX: ScaleLinear<number, number, never>;
21
+ scaleY: ScaleLinear<number, number, never>;
22
+ };
23
+ export declare const buildGraph: (data: [number, number][], width: number, height: number, config?: Config) => GraphData;
24
+ /**
25
+ * For now, only support commands of type:
26
+ * - PathVerb.Move
27
+ * - PathVerb.Cubic
28
+ * - PathVerb.Quad
29
+ * - PathVerb.Line
30
+ */
31
+ export declare const scaleCommands: (commands: PathCommand[], scaleX: SharedValue<number>, focalX: SharedValue<number>, offsetX: SharedValue<number>, scaleY?: SharedValue<number>) => PathCommand[];
32
+ export type UseDotAnimationProps = {
33
+ currentGraph: SharedValue<number>;
34
+ path: SharedValue<SkPath>;
35
+ dataPoints: DataPoint[][];
36
+ dots: AnimatedDot[];
37
+ opacityWl?: (opacity: number) => number;
38
+ translateWl?: (position: number) => number;
39
+ };
40
+ export declare const defaultOpacityTransitionWl: (opacity: number) => number;
41
+ export declare const defaultTranslateTransitionWl: (position: number) => number;
42
+ export declare const useDotsTransition: (props: UseDotAnimationProps) => void;
43
+ //# sourceMappingURL=graphUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphUtils.d.ts","sourceRoot":"","sources":["../../../../src/Charts/graphUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,UAAU,CAAC;AAClC,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,oBAAoB,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;CAC5C,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EACxB,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,SAAS,MAAM,KACd,SAoCF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GACxB,UAAU,WAAW,EAAE,EACvB,QAAQ,WAAW,CAAC,MAAM,CAAC,EAC3B,QAAQ,WAAW,CAAC,MAAM,CAAC,EAC3B,SAAS,WAAW,CAAC,MAAM,CAAC,EAC5B,SAAS,WAAW,CAAC,MAAM,CAAC,KAC3B,WAAW,EAgDb,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC;IAC1B,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAa,SAAS,MAAM,WAGlE,CAAC;AACF,eAAO,MAAM,4BAA4B,GAAa,UAAU,MAAM,WAGrE,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAa,OAAO,oBAAoB,SAoCrE,CAAC"}
@@ -0,0 +1,14 @@
1
+ export { AxisLine, BottomAxis, Tick } from './BottomAxis';
2
+ export { Cursor } from './Cursor';
3
+ export type { CursorProps } from './Cursor';
4
+ export { LineChart } from './Linechart';
5
+ export type { LineChartProps, LinePath } from './Linechart';
6
+ export { ScalablePath, ZoomableLineChart } from './ZoomableLinechart';
7
+ export type { ZoomableLineChartProps } from './ZoomableLinechart';
8
+ export { getClosestPoint, getPositionWl, useCursorGesture, useScalableGesture, useUpdateAxis, } from './gesture';
9
+ export type { UseCursorGestureProps } from './gesture';
10
+ export { buildGraph, defaultOpacityTransitionWl, defaultTranslateTransitionWl, scaleCommands, useDotsTransition, } from './graphUtils';
11
+ export type { Config, GraphData, UseDotAnimationProps } from './graphUtils';
12
+ export { commandsToBezier, cubicBezierYForX, getYForX, magnitude, normalize, selectCurve, } from './maths';
13
+ export type { AnimatedDot, DataPoint, LineGraphType } from './types';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Charts/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtE,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EACL,UAAU,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,aAAa,EACb,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { PathCommand, Vector } from '@shopify/react-native-skia';
2
+ export declare const cubicBezierYForX: (x: number, a: Vector, b: Vector, c: Vector, d: Vector, precision?: number) => number;
3
+ interface Cubic {
4
+ from: Vector;
5
+ c1: Vector;
6
+ c2: Vector;
7
+ to: Vector;
8
+ }
9
+ export declare const selectCurve: (cmds: PathCommand[], x: number) => Cubic | undefined;
10
+ /**
11
+ * Convert commands to cubic bezier
12
+ */
13
+ export declare const commandsToBezier: (cmds: PathCommand[]) => PathCommand[];
14
+ export declare const getYForX: (cmds: PathCommand[], x: number, precision?: number) => number | undefined;
15
+ import { type SkPoint } from '@shopify/react-native-skia';
16
+ export declare const magnitude: (p: SkPoint) => number;
17
+ export declare const normalize: (p: SkPoint) => SkPoint;
18
+ export {};
19
+ //# sourceMappingURL=maths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maths.d.ts","sourceRoot":"","sources":["../../../../src/Charts/maths.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAqHtE,eAAO,MAAM,gBAAgB,GAC3B,GAAG,MAAM,EACT,GAAG,MAAM,EACT,GAAG,MAAM,EACT,GAAG,MAAM,EACT,GAAG,MAAM,EACT,kBAAa,KACZ,MAcF,CAAC;AAEF,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,eAAO,MAAM,WAAW,GACtB,MAAM,WAAW,EAAE,EACnB,GAAG,MAAM,KACR,KAAK,GAAG,SA6BV,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,WAAW,EAAE,KAAG,WAAW,EAmCjE,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,MAAM,WAAW,EAAE,EACnB,GAAG,MAAM,EACT,kBAAa,KACZ,MAAM,GAAG,SAOX,CAAC;AAIF,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,MACL,CAAC;AAEnC,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAEG,OACtC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { SharedValue } from 'react-native-reanimated';
2
+ import type { GraphData } from './graphUtils';
3
+ export type LineGraphType = GraphData;
4
+ export type DataPoint = {
5
+ x: number;
6
+ y: number;
7
+ value: number;
8
+ };
9
+ export type AnimatedDot = {
10
+ x: SharedValue<number>;
11
+ y: SharedValue<number>;
12
+ opacity: SharedValue<number>;
13
+ };
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/Charts/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC;AAEtC,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,37 @@
1
+ export type DateRange = 'day' | 'month' | 'trimester' | 'year' | 'all';
2
+ export declare const getMonthInterval: (month: number, nbMonths: number) => string;
3
+ /**
4
+ * Get the date interval based on the date range.
5
+ * For example, for the date 2021-01-01:
6
+ * - day: 2021-01-01
7
+ * - month: 2021-01
8
+ * - trimester: 2021-01
9
+ * - year: 2021
10
+ * @param date
11
+ * @param dateRange
12
+ * @returns
13
+ */
14
+ export declare const getDateInterval: (date: Date, dateRange: DateRange) => string;
15
+ /**
16
+ * Groups an array of Date objects by a specific time interval (day, month, trimester, year)
17
+ * and calculates the earliest and latest dates within each interval.
18
+ * For instance, given the dates [2021-01-01, 2021-01-25, 2021-03-01, 2021-10-01]:
19
+ * - month: { '2021-01': [2021-01-01, 2021-01-25],
20
+ * '2021-03': [2021-03-01, 2021-03-01],
21
+ '2021-10': [2021-10-01, 2021-10-01] }
22
+
23
+ * @param {Date[]} dates - An array of dates to group and find boundary dates for.
24
+ * @returns {Map<string, [Date, Date]>} - A map where each key represents an interval
25
+ * as a string (formatted according to the interval type, e.g., '2021', '2021-03', '2021-01-01'),
26
+ * and each value is a tuple containing the earliest and latest dates within that interval.
27
+ */
28
+ export declare function getDateBoundaries(dates: Date[], dateRange: DateRange): Map<string, [Date, Date]>;
29
+ export declare function sampleDates(dates: Date[], sampleSize: number, indexOffset?: number): {
30
+ dates: Date[];
31
+ indexes: number[];
32
+ };
33
+ export declare function sampleDatesByRange(dates: Date[], sampleSize: number, dateRange: DateRange): Map<string, {
34
+ dates: Date[];
35
+ indexes: number[];
36
+ }>;
37
+ //# sourceMappingURL=dateUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dateUtils.d.ts","sourceRoot":"","sources":["../../../src/dateUtils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAEvE,eAAO,MAAM,gBAAgB,GAC3B,OAAO,MAAM,EACb,UAAU,MAAM,KACf,MAGF,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,IAAI,EACV,WAAW,SAAS,KACnB,MAkBF,CAAC;AAeF;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,6BAUpE;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,IAAI,EAAE,EACb,UAAU,EAAE,MAAM,EAClB,WAAW,GAAE,MAAU,GACtB;IAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAiDtC;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,IAAI,EAAE,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,SAAS,GACnB,GAAG,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqBnD"}
@@ -0,0 +1,5 @@
1
+ export * from './Charts';
2
+ export * from './dateUtils';
3
+ export type { DateRange } from './dateUtils';
4
+ export * from './textUtils';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,cAAc,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type SharedValue } from 'react-native-reanimated';
2
+ export declare const useSharedNumberToStr: (initValue?: number) => [SharedValue<number>, SharedValue<string>];
3
+ //# sourceMappingURL=textUtils.d.ts.map