@nstudio/ncharts 1.0.3 → 1.1.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.
Files changed (127) hide show
  1. package/angular/fesm2022/nstudio-ncharts-angular.mjs +14 -280
  2. package/angular/fesm2022/nstudio-ncharts-angular.mjs.map +1 -1
  3. package/angular/types/nstudio-ncharts-angular.d.ts +8 -36
  4. package/charts/bar-chart.android.d.ts +12 -1
  5. package/charts/bar-chart.android.js +123 -16
  6. package/charts/bar-chart.android.js.map +1 -1
  7. package/charts/bar-chart.ios.d.ts +12 -1
  8. package/charts/bar-chart.ios.js +122 -26
  9. package/charts/bar-chart.ios.js.map +1 -1
  10. package/charts/bubble-chart.android.d.ts +3 -1
  11. package/charts/bubble-chart.android.js +11 -3
  12. package/charts/bubble-chart.android.js.map +1 -1
  13. package/charts/bubble-chart.ios.d.ts +3 -1
  14. package/charts/bubble-chart.ios.js +21 -15
  15. package/charts/bubble-chart.ios.js.map +1 -1
  16. package/charts/candlestick-chart.android.d.ts +3 -1
  17. package/charts/candlestick-chart.android.js +11 -3
  18. package/charts/candlestick-chart.android.js.map +1 -1
  19. package/charts/candlestick-chart.ios.d.ts +3 -1
  20. package/charts/candlestick-chart.ios.js +21 -15
  21. package/charts/candlestick-chart.ios.js.map +1 -1
  22. package/charts/chart-paging-detector/chart-paging-detector-base.d.ts +30 -0
  23. package/charts/chart-paging-detector/chart-paging-detector-base.js +115 -0
  24. package/charts/chart-paging-detector/chart-paging-detector-base.js.map +1 -0
  25. package/charts/chart-paging-detector/chart-paging-detector.android.d.ts +28 -0
  26. package/charts/chart-paging-detector/chart-paging-detector.android.js +136 -0
  27. package/charts/chart-paging-detector/chart-paging-detector.android.js.map +1 -0
  28. package/charts/chart-paging-detector/chart-paging-detector.ios.d.ts +34 -0
  29. package/charts/chart-paging-detector/chart-paging-detector.ios.js +88 -0
  30. package/charts/chart-paging-detector/chart-paging-detector.ios.js.map +1 -0
  31. package/charts/combined-chart.android.d.ts +13 -1
  32. package/charts/combined-chart.android.js +163 -13
  33. package/charts/combined-chart.android.js.map +1 -1
  34. package/charts/combined-chart.ios.d.ts +13 -1
  35. package/charts/combined-chart.ios.js +222 -72
  36. package/charts/combined-chart.ios.js.map +1 -1
  37. package/charts/default-marker.android.d.ts +29 -0
  38. package/charts/default-marker.android.js +133 -0
  39. package/charts/default-marker.android.js.map +1 -0
  40. package/charts/default-marker.ios.d.ts +21 -0
  41. package/charts/default-marker.ios.js +119 -0
  42. package/charts/default-marker.ios.js.map +1 -0
  43. package/charts/formatters/custom-labels-array-formatter.android.d.ts +7 -0
  44. package/charts/formatters/custom-labels-array-formatter.android.js +26 -0
  45. package/charts/formatters/custom-labels-array-formatter.android.js.map +1 -0
  46. package/charts/formatters/custom-labels-array-formatter.ios.d.ts +16 -0
  47. package/charts/formatters/custom-labels-array-formatter.ios.js +53 -0
  48. package/charts/formatters/custom-labels-array-formatter.ios.js.map +1 -0
  49. package/charts/formatters/date-formatters.android.d.ts +34 -0
  50. package/charts/formatters/date-formatters.android.js +74 -0
  51. package/charts/formatters/date-formatters.android.js.map +1 -0
  52. package/charts/formatters/date-formatters.ios.d.ts +33 -0
  53. package/charts/formatters/date-formatters.ios.js +75 -0
  54. package/charts/formatters/date-formatters.ios.js.map +1 -0
  55. package/charts/formatters/decimal-value-formatter.android.d.ts +13 -0
  56. package/charts/formatters/decimal-value-formatter.android.js +64 -0
  57. package/charts/formatters/decimal-value-formatter.android.js.map +1 -0
  58. package/charts/formatters/suffix-value-formatter.android.d.ts +13 -0
  59. package/charts/formatters/suffix-value-formatter.android.js +78 -0
  60. package/charts/formatters/suffix-value-formatter.android.js.map +1 -0
  61. package/charts/formatters/suffix-value-formatter.ios.d.ts +15 -0
  62. package/charts/formatters/suffix-value-formatter.ios.js +76 -0
  63. package/charts/formatters/suffix-value-formatter.ios.js.map +1 -0
  64. package/charts/formatters/value-formatter-helpers.d.ts +1 -0
  65. package/charts/formatters/value-formatter-helpers.js +29 -0
  66. package/charts/formatters/value-formatter-helpers.js.map +1 -0
  67. package/charts/line-chart.android.d.ts +12 -1
  68. package/charts/line-chart.android.js +121 -11
  69. package/charts/line-chart.android.js.map +1 -1
  70. package/charts/line-chart.ios.d.ts +12 -1
  71. package/charts/line-chart.ios.js +120 -21
  72. package/charts/line-chart.ios.js.map +1 -1
  73. package/charts/pie-chart.android.d.ts +23 -4
  74. package/charts/pie-chart.android.js +166 -55
  75. package/charts/pie-chart.android.js.map +1 -1
  76. package/charts/pie-chart.ios.d.ts +23 -4
  77. package/charts/pie-chart.ios.js +182 -90
  78. package/charts/pie-chart.ios.js.map +1 -1
  79. package/charts/radar-chart.android.d.ts +4 -1
  80. package/charts/radar-chart.android.js +16 -3
  81. package/charts/radar-chart.android.js.map +1 -1
  82. package/charts/radar-chart.ios.d.ts +4 -1
  83. package/charts/radar-chart.ios.js +27 -15
  84. package/charts/radar-chart.ios.js.map +1 -1
  85. package/charts/renderers/bar-chart-renderer.android.d.ts +19 -0
  86. package/charts/renderers/bar-chart-renderer.android.js +118 -0
  87. package/charts/renderers/bar-chart-renderer.android.js.map +1 -0
  88. package/charts/renderers/bar-chart-renderer.ios.d.ts +48 -0
  89. package/charts/renderers/bar-chart-renderer.ios.js +152 -0
  90. package/charts/renderers/bar-chart-renderer.ios.js.map +1 -0
  91. package/charts/renderers/combined-chart-renderer.android.d.ts +13 -0
  92. package/charts/renderers/combined-chart-renderer.android.js +57 -0
  93. package/charts/renderers/combined-chart-renderer.android.js.map +1 -0
  94. package/charts/renderers/combined-chart-renderer.ios.d.ts +12 -0
  95. package/charts/renderers/combined-chart-renderer.ios.js +66 -0
  96. package/charts/renderers/combined-chart-renderer.ios.js.map +1 -0
  97. package/charts/renderers/line-chart-plotbands-renderer.android.d.ts +13 -0
  98. package/charts/renderers/line-chart-plotbands-renderer.android.js +37 -0
  99. package/charts/renderers/line-chart-plotbands-renderer.android.js.map +1 -0
  100. package/charts/renderers/line-chart-plotbands-renderer.ios.d.ts +10 -0
  101. package/charts/renderers/line-chart-plotbands-renderer.ios.js +34 -0
  102. package/charts/renderers/line-chart-plotbands-renderer.ios.js.map +1 -0
  103. package/charts/renderers/plotband-drawer.android.d.ts +33 -0
  104. package/charts/renderers/plotband-drawer.android.js +200 -0
  105. package/charts/renderers/plotband-drawer.android.js.map +1 -0
  106. package/charts/renderers/plotband-drawer.ios.d.ts +15 -0
  107. package/charts/renderers/plotband-drawer.ios.js +183 -0
  108. package/charts/renderers/plotband-drawer.ios.js.map +1 -0
  109. package/charts/scatter-chart.android.d.ts +3 -1
  110. package/charts/scatter-chart.android.js +11 -3
  111. package/charts/scatter-chart.android.js.map +1 -1
  112. package/charts/scatter-chart.ios.d.ts +3 -1
  113. package/charts/scatter-chart.ios.js +21 -15
  114. package/charts/scatter-chart.ios.js.map +1 -1
  115. package/charts/style-helpers.android.d.ts +7 -5
  116. package/charts/style-helpers.android.js +125 -5
  117. package/charts/style-helpers.android.js.map +1 -1
  118. package/charts/style-helpers.ios.d.ts +7 -5
  119. package/charts/style-helpers.ios.js +138 -5
  120. package/charts/style-helpers.ios.js.map +1 -1
  121. package/common.d.ts +56 -2
  122. package/common.js +181 -14
  123. package/common.js.map +1 -1
  124. package/package.json +2 -2
  125. package/types/android!MPAndroidChart.d.ts +7955 -0
  126. package/types/objc!DGCharts.d.ts +5265 -0
  127. package/types.d.ts +67 -3
@@ -1,4 +1,9 @@
1
+ import { NCharts } from '../common';
2
+ import { NChartsDefaultMarker } from './default-marker.ios';
1
3
  import { toUIColor } from './utils';
4
+ import { NSDateAxisValueFormatter } from './formatters/date-formatters.ios';
5
+ import { NSCustomLabelsArrayAxisValueFormatter } from './formatters/custom-labels-array-formatter.ios';
6
+ import { NSSuffixValueFormatter } from './formatters/suffix-value-formatter.ios';
2
7
  export function applyNoDataTextColorIOS(nativeChart, noDataTextColor) {
3
8
  if (!nativeChart || !noDataTextColor)
4
9
  return;
@@ -76,6 +81,22 @@ export function applyLegendIOS(nativeChart, legend) {
76
81
  };
77
82
  nativeLegend.form = formMap[legend.form] ?? 2 /* ChartLegendForm.Default */;
78
83
  }
84
+ if (legend.custom) {
85
+ const labels = Array.isArray(legend.custom.labels) ? legend.custom.labels : [];
86
+ const colors = Array.isArray(legend.custom.colors) ? legend.custom.colors : [];
87
+ const count = Math.max(labels.length, colors.length);
88
+ const entries = [];
89
+ for (let i = 0; i < count; i++) {
90
+ const entry = ChartLegendEntry.new();
91
+ entry.label = labels[i] ?? '';
92
+ const color = toUIColor(colors[i]);
93
+ if (color) {
94
+ entry.formColor = color;
95
+ }
96
+ entries.push(entry);
97
+ }
98
+ nativeLegend.setCustomWithEntries(entries);
99
+ }
79
100
  }
80
101
  /**
81
102
  * Resolve a `valueFormatter` config value to an iOS Charts axis value formatter.
@@ -147,7 +168,7 @@ function formatLargeValue(value) {
147
168
  function trimFractional(value) {
148
169
  return Number.isInteger(value) ? `${value}` : value.toFixed(1);
149
170
  }
150
- export function applyXAxisIOS(nativeChart, xAxis) {
171
+ export function applyXAxisIOS(nativeChart, xAxis, retainedChartObjects) {
151
172
  if (!nativeChart || !xAxis)
152
173
  return;
153
174
  const nativeXAxis = nativeChart.xAxis;
@@ -176,6 +197,19 @@ export function applyXAxisIOS(nativeChart, xAxis) {
176
197
  }
177
198
  if (xAxis.gridLineWidth !== undefined)
178
199
  nativeXAxis.gridLineWidth = xAxis.gridLineWidth;
200
+ if (xAxis.gridDashedLine !== undefined) {
201
+ if (xAxis.gridDashedLine.lineLength && xAxis.gridDashedLine.spaceLength) {
202
+ nativeXAxis.gridLineDashLengths = NSArray.arrayWithArray([xAxis.gridDashedLine.lineLength, xAxis.gridDashedLine.spaceLength]);
203
+ }
204
+ if (xAxis.gridDashedLine.phase) {
205
+ nativeXAxis.gridLineDashPhase = xAxis.gridDashedLine.phase;
206
+ }
207
+ }
208
+ else {
209
+ // optional: clear dashed style when not configured
210
+ nativeXAxis.gridLineDashLengths = null;
211
+ nativeXAxis.gridLineDashPhase = 0;
212
+ }
179
213
  if (xAxis.axisLineColor) {
180
214
  const axisLineColor = toUIColor(xAxis.axisLineColor);
181
215
  if (axisLineColor)
@@ -209,8 +243,18 @@ export function applyXAxisIOS(nativeChart, xAxis) {
209
243
  };
210
244
  nativeXAxis.labelPosition = positionMap[xAxis.position] ?? 1 /* XAxisLabelPosition.Bottom */;
211
245
  }
246
+ if (Array.isArray(xAxis.valueFormatter)) {
247
+ const formatter = NSCustomLabelsArrayAxisValueFormatter.initWithLabels(xAxis.valueFormatter);
248
+ nativeXAxis.valueFormatter = formatter;
249
+ retainedChartObjects?.push(formatter);
250
+ }
251
+ else if (xAxis.valueFormatter === 'date') {
252
+ const formatter = NSDateAxisValueFormatter.initWithPattern(xAxis.valueFormatterPattern, xAxis.valueFormatterTransformExpression);
253
+ nativeXAxis.valueFormatter = formatter;
254
+ retainedChartObjects?.push(formatter);
255
+ }
212
256
  }
213
- export function applyYAxisIOS(axis, config) {
257
+ export function applyYAxisIOS(axis, retainedChartObjects, config) {
214
258
  if (!axis || !config)
215
259
  return;
216
260
  if (config.enabled !== undefined)
@@ -236,6 +280,18 @@ export function applyYAxisIOS(axis, config) {
236
280
  }
237
281
  if (config.gridLineWidth !== undefined)
238
282
  axis.gridLineWidth = config.gridLineWidth;
283
+ if (config.gridDashedLine !== undefined) {
284
+ if (config.gridDashedLine.lineLength && config.gridDashedLine.spaceLength) {
285
+ axis.gridLineDashLengths = NSArray.arrayWithArray([config.gridDashedLine.lineLength, config.gridDashedLine.spaceLength]);
286
+ }
287
+ if (config.gridDashedLine.phase) {
288
+ axis.gridLineDashPhase = config.gridDashedLine.phase;
289
+ }
290
+ }
291
+ else {
292
+ axis.gridLineDashLengths = null;
293
+ axis.gridLineDashPhase = 0;
294
+ }
239
295
  if (config.axisLineColor) {
240
296
  const axisLineColor = toUIColor(config.axisLineColor);
241
297
  if (axisLineColor)
@@ -279,16 +335,72 @@ export function applyYAxisIOS(axis, config) {
279
335
  axis.zeroLineColor = zeroLineColor;
280
336
  }
281
337
  }
338
+ if (config.drawLimitLinesBehindData !== undefined) {
339
+ axis.drawLimitLinesBehindDataEnabled = config.drawLimitLinesBehindData;
340
+ }
341
+ // always clean up before setting new lines
342
+ axis.removeAllLimitLines();
343
+ if (Array.isArray(config.limitLines) && config.limitLines.length) {
344
+ for (const llCfg of config.limitLines) {
345
+ if (llCfg.limit == null)
346
+ continue;
347
+ const label = llCfg.label ?? '';
348
+ const ll = ChartLimitLine.alloc().initWithLimitLabel(llCfg.limit, label);
349
+ if (llCfg.lineWidth !== undefined)
350
+ ll.lineWidth = llCfg.lineWidth;
351
+ if (llCfg.lineColor) {
352
+ const c = toUIColor(llCfg.lineColor);
353
+ if (c)
354
+ ll.lineColor = c;
355
+ }
356
+ // dashed
357
+ if (Array.isArray(llCfg.lineDashLengths) && llCfg.lineDashLengths.length >= 2) {
358
+ ll.lineDashLengths = NSArray.arrayWithArray(llCfg.lineDashLengths);
359
+ if (llCfg.lineDashPhase !== undefined)
360
+ ll.lineDashPhase = llCfg.lineDashPhase;
361
+ }
362
+ else {
363
+ ll.lineDashLengths = null;
364
+ ll.lineDashPhase = 0;
365
+ }
366
+ // label text styling
367
+ if (llCfg.valueTextColor) {
368
+ const tc = toUIColor(llCfg.valueTextColor);
369
+ if (tc)
370
+ ll.valueTextColor = tc;
371
+ }
372
+ if (llCfg.valueTextSize !== undefined) {
373
+ ll.valueFont = UIFont.systemFontOfSize(llCfg.valueTextSize);
374
+ }
375
+ if (llCfg.labelPosition) {
376
+ const posMap = {
377
+ RIGHT_TOP: 2 /* ChartLimitLabelPosition.RightTop */,
378
+ RIGHT_BOTTOM: 3 /* ChartLimitLabelPosition.RightBottom */,
379
+ LEFT_TOP: 0 /* ChartLimitLabelPosition.LeftTop */,
380
+ LEFT_BOTTOM: 1 /* ChartLimitLabelPosition.LeftBottom */,
381
+ };
382
+ ll.labelPosition = posMap[llCfg.labelPosition] ?? 2 /* ChartLimitLabelPosition.RightTop */;
383
+ }
384
+ axis.addLimitLine(ll);
385
+ }
386
+ }
387
+ if (config.valueFormatter === 'percent' || config.valueFormatter === 'suffix') {
388
+ const formatter = NSSuffixValueFormatter.initWithPattern(config.valueFormatterPattern, config.valueFormatterTransformExpression);
389
+ axis.valueFormatter = formatter;
390
+ retainedChartObjects.push(formatter);
391
+ }
282
392
  }
283
- export function applyYAxisDualIOS(nativeChart, yAxis) {
393
+ export function applyYAxisDualIOS(nativeChart, yAxis, retainedChartObjects) {
284
394
  if (!nativeChart || !yAxis)
285
395
  return;
286
- applyYAxisIOS(nativeChart.leftAxis, yAxis.left);
287
- applyYAxisIOS(nativeChart.rightAxis, yAxis.right);
396
+ applyYAxisIOS(nativeChart.leftAxis, retainedChartObjects, yAxis.left);
397
+ applyYAxisIOS(nativeChart.rightAxis, retainedChartObjects, yAxis.right);
288
398
  }
289
399
  export function applyDescriptionIOS(nativeChart, description) {
290
400
  if (!nativeChart || !description || !nativeChart.chartDescription)
291
401
  return;
402
+ if (description.enabled !== undefined)
403
+ nativeChart.chartDescription.enabled = description.enabled;
292
404
  const nativeDescription = nativeChart.chartDescription;
293
405
  if (description.text !== undefined)
294
406
  nativeDescription.text = description.text;
@@ -300,4 +412,25 @@ export function applyDescriptionIOS(nativeChart, description) {
300
412
  if (description.textSize !== undefined)
301
413
  nativeDescription.font = nativeDescription.font.fontWithSize(description.textSize);
302
414
  }
415
+ export function applyMarkerIOS(chart, cfg, retainedChartObjects) {
416
+ if (!chart)
417
+ return;
418
+ if (cfg.enabled !== true) {
419
+ chart.marker = null;
420
+ return;
421
+ }
422
+ if (cfg.markerId) {
423
+ const markerFactory = NCharts._getMarkerFactory(cfg.markerId);
424
+ if (markerFactory) {
425
+ const marker = markerFactory(chart, cfg);
426
+ chart.marker = marker;
427
+ retainedChartObjects.push(marker);
428
+ }
429
+ }
430
+ else {
431
+ const marker = NChartsDefaultMarker.create(chart, cfg);
432
+ chart.marker = marker;
433
+ retainedChartObjects.push(marker);
434
+ }
435
+ }
303
436
  //# sourceMappingURL=style-helpers.ios.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style-helpers.ios.js","sourceRoot":"","sources":["../../../../packages/ncharts/charts/style-helpers.ios.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,UAAU,uBAAuB,CAAC,WAAgB,EAAE,eAA4B;IACpF,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe;QAAE,OAAO;IAC7C,MAAM,KAAK,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IACzC,IAAI,KAAK;QAAE,WAAW,CAAC,eAAe,GAAG,KAAK,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,WAAgB,EAAE,MAAoB;IACnE,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpC,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IACxC,IAAI,CAAC,YAAY;QAAE,OAAO;IAE1B,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;QAAE,YAAY,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACxE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS;YAAE,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;IACpD,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvG,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS;QAAE,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAChG,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS;QAAE,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC7F,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;QAAE,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACjF,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC3E,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACpF,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACpF,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS;QAAE,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAEhG,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAC/B,MAAM,aAAa,GAA2B;YAC5C,IAAI,6CAAqC;YACzC,MAAM,+CAAuC;YAC7C,KAAK,8CAAsC;SAC5C,CAAC;QACF,YAAY,CAAC,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC,+CAAuC,CAAC;IACtH,CAAC;IAED,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC7B,MAAM,WAAW,GAA2B;YAC1C,GAAG,0CAAkC;YACrC,MAAM,6CAAqC;YAC3C,MAAM,6CAAqC;SAC5C,CAAC;QACF,YAAY,CAAC,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,+CAAuC,CAAC;IAChH,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,cAAc,GAA2B;YAC7C,UAAU,2CAAmC;YAC7C,QAAQ,yCAAiC;SAC1C,CAAC;QACF,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,6CAAqC,CAAC;IACrG,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,YAAY,GAA2B;YAC3C,aAAa,0CAAkC;YAC/C,aAAa,0CAAkC;SAChD,CAAC;QACF,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,4CAAoC,CAAC;IAC9F,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,OAAO,GAA2B;YACtC,IAAI,8BAAsB;YAC1B,KAAK,+BAAuB;YAC5B,OAAO,iCAAyB;YAChC,MAAM,gCAAwB;YAC9B,MAAM,gCAAwB;YAC9B,IAAI,8BAAsB;SAC3B,CAAC;QACF,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mCAA2B,CAAC;IACtE,CAAC;AACH,CAAC;AAQD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAoB;IAC/D,MAAM,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC;IAC/E,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAEnD,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,OAAO,4BAA4B,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,cAAqB,CAAC,CAAC;IACpF,CAAC;IAED,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,YAAY;YACf,OAAO,8BAA8B,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1G,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;YACzD,eAAe,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,gCAAgC;YACjE,eAAe,CAAC,qBAAqB,GAAG,CAAC,CAAC;YAC1C,OAAO,8BAA8B,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,KAAa,EAAE,EAAE;gBAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;gBAC3F,OAAO,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;YACrD,aAAa,CAAC,UAAU,GAAG,qBAAqB,IAAI,aAAa,CAAC;YAClE,OAAO,8BAA8B,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,KAAa,EAAE,EAAE;gBAC5E,MAAM,IAAI,GAAG,MAAM,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;gBACzD,OAAO,aAAa,CAAC,cAAc,CAAC,IAAuB,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;YACzC,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAClF,OAAO,8BAA8B,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,KAAa,EAAE,EAAE;gBAC5E,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC;QACD;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,UAAe,EAAE,MAAoB;IACvE,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS;QAAE,OAAO;IAChD,MAAM,SAAS,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACvD,IAAI,SAAS;QAAE,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,GAAG,IAAI,UAAa;QAAE,OAAO,GAAG,cAAc,CAAC,KAAK,GAAG,UAAa,CAAC,GAAG,CAAC;IAC7E,IAAI,GAAG,IAAI,OAAS;QAAE,OAAO,GAAG,cAAc,CAAC,KAAK,GAAG,OAAS,CAAC,GAAG,CAAC;IACrE,IAAI,GAAG,IAAI,IAAK;QAAE,OAAO,GAAG,cAAc,CAAC,KAAK,GAAG,IAAK,CAAC,GAAG,CAAC;IAC7D,OAAO,GAAG,KAAK,EAAE,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,WAAgB,EAAE,KAAkB;IAChE,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK;QAAE,OAAO;IAEnC,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC;IACtC,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACrE,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;QAAE,WAAW,CAAC,oBAAoB,GAAG,KAAK,CAAC,aAAa,CAAC;IAC9F,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;QAAE,WAAW,CAAC,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC;IAC3F,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,WAAW,CAAC,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC;IACrF,0BAA0B,CAAC,WAAW,EAAE,KAAqB,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,SAAS;YAAE,WAAW,CAAC,cAAc,GAAG,SAAS,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7G,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,SAAS;YAAE,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;IACnD,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;QAAE,WAAW,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IACvF,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,aAAa;YAAE,WAAW,CAAC,aAAa,GAAG,aAAa,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;QAAE,WAAW,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IACvF,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACjF,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACjF,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,CAAC;IACrH,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACjF,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS;QAAE,WAAW,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;IACtG,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS;QAAE,WAAW,CAAC,uBAAuB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IACvG,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS;QAAE,WAAW,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;IACtG,IAAI,KAAK,CAAC,sBAAsB,KAAK,SAAS;QAAE,WAAW,CAAC,6BAA6B,GAAG,KAAK,CAAC,sBAAsB,CAAC;IAEzH,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,WAAW,GAA2B;YAC1C,GAAG,gCAAwB;YAC3B,MAAM,mCAA2B;YACjC,UAAU,sCAA8B;YACxC,UAAU,sCAA8B;YACxC,aAAa,yCAAiC;SAC/C,CAAC;QACF,WAAW,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,qCAA6B,CAAC;IACvF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAS,EAAE,MAAoB;IAC3D,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO;IAE7B,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChE,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;QAAE,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,aAAa,CAAC;IACzF,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;QAAE,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,YAAY,CAAC;IACtF,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC;IAChF,0BAA0B,CAAC,IAAI,EAAE,MAAsB,CAAC,CAAC;IACzD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IACjD,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjG,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5C,CAAC;IACD,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;QAAE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAClF,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,aAAa;YAAE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACxD,CAAC;IACD,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;QAAE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAClF,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAC5E,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAC5E,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC,CAAC;IACjH,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAC5E,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS;QAAE,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;IACjG,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;QAAE,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAClG,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACnE,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACnE,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAE5E,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,WAAW,GAA2B;YAC1C,aAAa,yCAAiC;YAC9C,YAAY,wCAAgC;SAC7C,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,2CAAmC,CAAC;IACvF,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC9F,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5F,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAI,aAAa;gBAAE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACxD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,WAAgB,EAAE,KAAsB;IACxE,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK;QAAE,OAAO;IACnC,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAgB,EAAE,WAA6B;IACjF,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,gBAAgB;QAAE,OAAO;IAE1E,MAAM,iBAAiB,GAAG,WAAW,CAAC,gBAAgB,CAAC;IACvD,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;QAAE,iBAAiB,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAC9E,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,SAAS;YAAE,iBAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;IACzD,CAAC;IACD,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;QAAE,iBAAiB,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC7H,CAAC"}
1
+ {"version":3,"file":"style-helpers.ios.js","sourceRoot":"","sources":["../../../../packages/ncharts/charts/style-helpers.ios.ts"],"names":[],"mappings":"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"}
package/common.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { View, Property, Color } from '@nativescript/core';
2
- import type { ChartAnimation, LegendConfig, XAxisConfig, YAxisConfigDual, YAxisConfig, ChartDescription, MarkerConfig, Highlight, LineChartData, BarChartData, PieChartData, ScatterChartData, BubbleChartData, CandleChartData, RadarChartData, CombinedChartData, ChartColor } from './types';
2
+ import type { ChartAnimation, LegendConfig, XAxisConfig, YAxisConfigDual, YAxisConfig, ChartDescription, MarkerConfig, Highlight, LineChartData, BarChartData, PieChartData, ScatterChartData, BubbleChartData, CandleChartData, RadarChartData, CombinedChartData, ChartColor, ViewPortOffset } from './types';
3
3
  export * from './types';
4
+ export type MarkerFactory = (chartView: any, cfg: MarkerConfig) => any;
5
+ export type { PageEventData } from './charts/chart-paging-detector/chart-paging-detector';
4
6
  /**
5
7
  * Global configuration for @nstudio/ncharts
6
8
  */
@@ -11,6 +13,34 @@ export declare class NCharts {
11
13
  * @default false
12
14
  */
13
15
  static debug: boolean;
16
+ /** User defined marker factories */
17
+ private static _markerFactories;
18
+ /**
19
+ * Register a marker factory for custom markers.
20
+ *
21
+ * Example: register a marker from main.ts (see NChartsDefaultMarker in this repo)
22
+ *
23
+ * ```ts
24
+ * import { NCharts } from '@nstudio/ncharts';
25
+ * import { NChartsCustomMarker } from './custom';
26
+ *
27
+ * NCharts.registerMarkerFactory('custom-marker', (chartView, cfg) => {
28
+ * return NChartsCustomMarker.create(chartView, cfg);
29
+ * });
30
+ *
31
+ * // chart config
32
+ * marker: {
33
+ * enabled: true,
34
+ * markerId: 'custom-marker',
35
+ * markerCustomData: { /* your payload *\/ }
36
+ * }
37
+ * ```
38
+ */
39
+ static registerMarkerFactory(markerId: string, factory: MarkerFactory): void;
40
+ /** Unregister a previously registered marker factory. */
41
+ static unregisterMarkerFactory(markerId: string): void;
42
+ /** @internal */
43
+ static _getMarkerFactory(markerId?: string): MarkerFactory | undefined;
14
44
  }
15
45
  /**
16
46
  * Internal logging helper - only logs when NCharts.debug is true
@@ -72,6 +102,8 @@ export declare abstract class ChartViewBase extends View {
72
102
  static deselectEvent: string;
73
103
  /** Gesture event name */
74
104
  static gestureEvent: string;
105
+ /** Page event name */
106
+ static pageEvent: string;
75
107
  /**
76
108
  * Get the native chart instance
77
109
  */
@@ -148,6 +180,8 @@ export declare abstract class BarLineChartViewBase extends ChartViewBase {
148
180
  pinchZoom: boolean;
149
181
  /** Enable double tap zoom */
150
182
  doubleTapToZoomEnabled: boolean;
183
+ /** Extra offsets */
184
+ extraOffsets: ViewPortOffset;
151
185
  /** Y-axis configuration */
152
186
  yAxis: YAxisConfigDual | undefined;
153
187
  protected abstract _applyYAxis(yAxis: YAxisConfigDual): void;
@@ -291,10 +325,30 @@ export declare const dataProperty: Property<ChartViewBase, any>;
291
325
  export declare const animationProperty: Property<ChartViewBase, ChartAnimation>;
292
326
  export declare const legendProperty: Property<ChartViewBase, LegendConfig>;
293
327
  export declare const xAxisProperty: Property<ChartViewBase, XAxisConfig>;
294
- export declare const yAxisProperty: Property<BarLineChartViewBase, YAxisConfigDual>;
295
328
  export declare const chartDescriptionProperty: Property<ChartViewBase, ChartDescription>;
296
329
  export declare const markerProperty: Property<ChartViewBase, MarkerConfig>;
297
330
  export declare const highlightsProperty: Property<ChartViewBase, Highlight[]>;
331
+ export declare const touchEnabledProperty: Property<ChartViewBase, boolean>;
332
+ export declare const highlightPerTapEnabledProperty: Property<ChartViewBase, boolean>;
333
+ export declare const extraOffsetsProperty: Property<ChartViewBase, ViewPortOffset>;
334
+ export declare const yAxisProperty: Property<BarLineChartViewBase, YAxisConfigDual>;
335
+ export declare const dragEnabledProperty: Property<BarLineChartViewBase, boolean>;
336
+ export declare const scaleEnabledProperty: Property<BarLineChartViewBase, boolean>;
337
+ export declare const pinchZoomProperty: Property<BarLineChartViewBase, boolean>;
338
+ export declare const highlightPerDragEnabledProperty: Property<BarLineChartViewBase, boolean>;
298
339
  export declare const drawHoleProperty: Property<PieChartBase, boolean>;
299
340
  export declare const holeRadiusProperty: Property<PieChartBase, number>;
341
+ export declare const transparentCircleRadiusProperty: Property<PieChartBase, number>;
342
+ export declare const holeColorProperty: Property<PieChartBase, ChartColor>;
343
+ export declare const transparentCircleColorProperty: Property<PieChartBase, ChartColor>;
344
+ export declare const drawCenterTextProperty: Property<PieChartBase, boolean>;
345
+ export declare const centerTextProperty: Property<PieChartBase, string>;
346
+ export declare const centerTextColorProperty: Property<PieChartBase, ChartColor>;
347
+ export declare const centerTextSizeProperty: Property<PieChartBase, number>;
348
+ export declare const drawSliceTextProperty: Property<PieChartBase, boolean>;
349
+ export declare const sliceTextSizeProperty: Property<PieChartBase, number>;
350
+ export declare const sliceTextColorProperty: Property<PieChartBase, ChartColor>;
351
+ export declare const usePercentValuesProperty: Property<PieChartBase, boolean>;
352
+ export declare const maxAngleProperty: Property<PieChartBase, number>;
353
+ export declare const rotationEnabledProperty: Property<PieRadarChartViewBase, boolean>;
300
354
  export declare const rotationAngleProperty: Property<PieRadarChartViewBase, number>;
package/common.js CHANGED
@@ -4,6 +4,42 @@ export * from './types';
4
4
  * Global configuration for @nstudio/ncharts
5
5
  */
6
6
  export class NCharts {
7
+ /**
8
+ * Register a marker factory for custom markers.
9
+ *
10
+ * Example: register a marker from main.ts (see NChartsDefaultMarker in this repo)
11
+ *
12
+ * ```ts
13
+ * import { NCharts } from '@nstudio/ncharts';
14
+ * import { NChartsCustomMarker } from './custom';
15
+ *
16
+ * NCharts.registerMarkerFactory('custom-marker', (chartView, cfg) => {
17
+ * return NChartsCustomMarker.create(chartView, cfg);
18
+ * });
19
+ *
20
+ * // chart config
21
+ * marker: {
22
+ * enabled: true,
23
+ * markerId: 'custom-marker',
24
+ * markerCustomData: { /* your payload *\/ }
25
+ * }
26
+ * ```
27
+ */
28
+ static registerMarkerFactory(markerId, factory) {
29
+ if (!markerId || typeof factory !== 'function') {
30
+ nchartsError('[ncharts] markerId is required and factory must be a function');
31
+ return;
32
+ }
33
+ NCharts._markerFactories.set(markerId, factory);
34
+ }
35
+ /** Unregister a previously registered marker factory. */
36
+ static unregisterMarkerFactory(markerId) {
37
+ NCharts._markerFactories.delete(markerId);
38
+ }
39
+ /** @internal */
40
+ static _getMarkerFactory(markerId) {
41
+ return markerId ? NCharts._markerFactories.get(markerId) : undefined;
42
+ }
7
43
  }
8
44
  /**
9
45
  * Enable debug logging for the ncharts plugin.
@@ -11,6 +47,8 @@ export class NCharts {
11
47
  * @default false
12
48
  */
13
49
  NCharts.debug = false;
50
+ /** User defined marker factories */
51
+ NCharts._markerFactories = new Map();
14
52
  /**
15
53
  * Internal logging helper - only logs when NCharts.debug is true
16
54
  */
@@ -141,6 +179,8 @@ ChartViewBase.selectEvent = 'select';
141
179
  ChartViewBase.deselectEvent = 'deselect';
142
180
  /** Gesture event name */
143
181
  ChartViewBase.gestureEvent = 'gesture';
182
+ /** Page event name */
183
+ ChartViewBase.pageEvent = 'page';
144
184
  ChartViewBase = __decorate([
145
185
  CSSType('ChartViewBase')
146
186
  ], ChartViewBase);
@@ -181,6 +221,8 @@ let BarLineChartViewBase = class BarLineChartViewBase extends ChartViewBase {
181
221
  this.pinchZoom = true;
182
222
  /** Enable double tap zoom */
183
223
  this.doubleTapToZoomEnabled = true;
224
+ /** Extra offsets */
225
+ this.extraOffsets = undefined;
184
226
  }
185
227
  onYAxisChange() {
186
228
  if (this.yAxis && this.nativeChart) {
@@ -367,6 +409,7 @@ CombinedChartBase = __decorate([
367
409
  CSSType('CombinedChart')
368
410
  ], CombinedChartBase);
369
411
  export { CombinedChartBase };
412
+ ////////////////////////////////////////////////////////////////////////////////////////
370
413
  // Data property for all chart types
371
414
  export const dataProperty = new Property({
372
415
  name: 'data',
@@ -401,14 +444,6 @@ export const xAxisProperty = new Property({
401
444
  },
402
445
  });
403
446
  xAxisProperty.register(ChartViewBase);
404
- // YAxis property for BarLine charts
405
- export const yAxisProperty = new Property({
406
- name: 'yAxis',
407
- valueChanged(target, oldValue, newValue) {
408
- target.onYAxisChange();
409
- },
410
- });
411
- yAxisProperty.register(BarLineChartViewBase);
412
447
  // Description property
413
448
  export const chartDescriptionProperty = new Property({
414
449
  name: 'chartDescription',
@@ -433,25 +468,157 @@ export const highlightsProperty = new Property({
433
468
  },
434
469
  });
435
470
  highlightsProperty.register(ChartViewBase);
471
+ // touchEnabled property
472
+ export const touchEnabledProperty = new Property({
473
+ name: 'touchEnabled',
474
+ defaultValue: true,
475
+ valueConverter: (v) => String(v) === 'true',
476
+ });
477
+ touchEnabledProperty.register(ChartViewBase);
478
+ // highlightPerTapEnabled property
479
+ export const highlightPerTapEnabledProperty = new Property({
480
+ name: 'highlightPerTapEnabled',
481
+ defaultValue: true,
482
+ valueConverter: (v) => String(v) === 'true',
483
+ });
484
+ highlightPerTapEnabledProperty.register(ChartViewBase);
485
+ // extraOffsets property
486
+ export const extraOffsetsProperty = new Property({
487
+ name: 'extraOffsets',
488
+ defaultValue: null,
489
+ affectsLayout: false,
490
+ });
491
+ extraOffsetsProperty.register(ChartViewBase);
492
+ ////////////////////////////////////////////////////////////////////////////////////////
493
+ // YAxis property
494
+ export const yAxisProperty = new Property({
495
+ name: 'yAxis',
496
+ valueChanged(target, oldValue, newValue) {
497
+ target.onYAxisChange();
498
+ },
499
+ });
500
+ yAxisProperty.register(BarLineChartViewBase);
501
+ // Drag enabled property
502
+ export const dragEnabledProperty = new Property({
503
+ name: 'dragEnabled',
504
+ defaultValue: true,
505
+ valueConverter: (v) => String(v) === 'true',
506
+ });
507
+ dragEnabledProperty.register(BarLineChartViewBase);
508
+ // Scale enabled property
509
+ export const scaleEnabledProperty = new Property({
510
+ name: 'scaleEnabled',
511
+ defaultValue: true,
512
+ valueConverter: (v) => String(v) === 'true',
513
+ });
514
+ scaleEnabledProperty.register(BarLineChartViewBase);
515
+ // Pinch zoom property
516
+ export const pinchZoomProperty = new Property({
517
+ name: 'pinchZoom',
518
+ defaultValue: true,
519
+ valueConverter: (v) => String(v) === 'true',
520
+ });
521
+ pinchZoomProperty.register(BarLineChartViewBase);
522
+ // Highlight per drag property
523
+ export const highlightPerDragEnabledProperty = new Property({
524
+ name: 'highlightPerDragEnabled',
525
+ defaultValue: true,
526
+ valueConverter: (v) => String(v) === 'true',
527
+ });
528
+ highlightPerDragEnabledProperty.register(BarLineChartViewBase);
529
+ ////////////////////////////////////////////////////////////////////////////////////////
436
530
  // Pie Chart specific properties
437
531
  export const drawHoleProperty = new Property({
438
532
  name: 'drawHole',
439
533
  defaultValue: true,
440
534
  valueConverter: (v) => String(v) === 'true',
441
- valueChanged(target, oldValue, newValue) {
442
- target.onDrawHoleChange?.();
443
- },
444
535
  });
445
536
  drawHoleProperty.register(PieChartBase);
446
537
  export const holeRadiusProperty = new Property({
447
538
  name: 'holeRadius',
448
539
  defaultValue: 50,
449
540
  valueConverter: (v) => parseFloat(v),
450
- valueChanged(target, oldValue, newValue) {
451
- target.onHoleRadiusChange?.();
452
- },
453
541
  });
454
542
  holeRadiusProperty.register(PieChartBase);
543
+ export const transparentCircleRadiusProperty = new Property({
544
+ name: 'transparentCircleRadius',
545
+ defaultValue: 55,
546
+ valueConverter: (v) => parseFloat(v),
547
+ });
548
+ transparentCircleRadiusProperty.register(PieChartBase);
549
+ export const holeColorProperty = new Property({
550
+ name: 'holeColor',
551
+ defaultValue: undefined,
552
+ valueConverter: (v) => v,
553
+ });
554
+ holeColorProperty.register(PieChartBase);
555
+ export const transparentCircleColorProperty = new Property({
556
+ name: 'transparentCircleColor',
557
+ defaultValue: undefined,
558
+ valueConverter: (v) => v,
559
+ });
560
+ transparentCircleColorProperty.register(PieChartBase);
561
+ export const drawCenterTextProperty = new Property({
562
+ name: 'drawCenterText',
563
+ defaultValue: false,
564
+ valueConverter: (v) => String(v) === 'true',
565
+ });
566
+ drawCenterTextProperty.register(PieChartBase);
567
+ export const centerTextProperty = new Property({
568
+ name: 'centerText',
569
+ defaultValue: '',
570
+ valueConverter: (v) => v,
571
+ });
572
+ centerTextProperty.register(PieChartBase);
573
+ export const centerTextColorProperty = new Property({
574
+ name: 'centerTextColor',
575
+ defaultValue: undefined,
576
+ valueConverter: (v) => v,
577
+ });
578
+ centerTextColorProperty.register(PieChartBase);
579
+ export const centerTextSizeProperty = new Property({
580
+ name: 'centerTextSize',
581
+ defaultValue: 12,
582
+ valueConverter: (v) => parseFloat(v),
583
+ });
584
+ centerTextSizeProperty.register(PieChartBase);
585
+ export const drawSliceTextProperty = new Property({
586
+ name: 'drawSliceText',
587
+ defaultValue: false,
588
+ valueConverter: (v) => String(v) === 'true',
589
+ });
590
+ drawSliceTextProperty.register(PieChartBase);
591
+ export const sliceTextSizeProperty = new Property({
592
+ name: 'sliceTextSize',
593
+ defaultValue: 13,
594
+ valueConverter: (v) => parseFloat(v),
595
+ });
596
+ sliceTextSizeProperty.register(PieChartBase);
597
+ export const sliceTextColorProperty = new Property({
598
+ name: 'sliceTextColor',
599
+ defaultValue: undefined,
600
+ valueConverter: (v) => v,
601
+ });
602
+ sliceTextColorProperty.register(PieChartBase);
603
+ export const usePercentValuesProperty = new Property({
604
+ name: 'usePercentValues',
605
+ defaultValue: false,
606
+ valueConverter: (v) => String(v) === 'true',
607
+ });
608
+ usePercentValuesProperty.register(PieChartBase);
609
+ export const maxAngleProperty = new Property({
610
+ name: 'maxAngle',
611
+ defaultValue: 360,
612
+ valueConverter: (v) => parseFloat(v),
613
+ });
614
+ maxAngleProperty.register(PieChartBase);
615
+ ////////////////////////////////////////////////////////////////////////////////////////
616
+ export const rotationEnabledProperty = new Property({
617
+ name: 'rotationEnabled',
618
+ defaultValue: true,
619
+ valueConverter: (v) => String(v) === 'true',
620
+ });
621
+ rotationEnabledProperty.register(PieRadarChartViewBase);
455
622
  export const rotationAngleProperty = new Property({
456
623
  name: 'rotationAngle',
457
624
  defaultValue: 270,