realchart 0.9.2 → 0.9.4

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/dist/index.d.ts CHANGED
@@ -31,6 +31,7 @@ declare abstract class RcEventProvider<T> extends RcObject {
31
31
  }
32
32
 
33
33
  type Path = string | any[];
34
+ type RtPercentSize = string | number;
34
35
  type SizeValue = string | number;
35
36
  interface SVGStyles {
36
37
  fill?: string;
@@ -58,6 +59,10 @@ declare enum SectionDir {
58
59
  BOTTOM = 2,
59
60
  RIGHT = 3
60
61
  }
62
+ declare enum AlignBase {
63
+ CHART = "chart",
64
+ PLOT = "plot"
65
+ }
61
66
 
62
67
  interface ISize {
63
68
  width: number;
@@ -110,6 +115,7 @@ declare abstract class RcControl extends RcWrappableObject {
110
115
  dom(): HTMLElement;
111
116
  width(): number;
112
117
  height(): number;
118
+ setData(data: string, value: any, container?: boolean): void;
113
119
  clearDefs(): void;
114
120
  clearTemporaryDefs(): void;
115
121
  appendDom(elt: HTMLElement): void;
@@ -129,7 +135,8 @@ declare abstract class RcControl extends RcWrappableObject {
129
135
  clipBounds(x?: number, y?: number, width?: number, height?: number, rd?: number): ClipElement;
130
136
  clipRect(r: IRect): ClipElement;
131
137
  clipPath(): ClipPathElement;
132
- removeDef(element: RcElement): void;
138
+ addDef(element: Element): void;
139
+ removeDef(element: Element | string): void;
133
140
  containerToElement(element: RcElement, x: number, y: number): IPoint;
134
141
  abstract useImage(src: string): void;
135
142
  protected _setTesting(): void;
@@ -141,7 +148,6 @@ declare abstract class RcControl extends RcWrappableObject {
141
148
  private $_initControl;
142
149
  protected _initDefs(doc: Document, defs: SVGElement): void;
143
150
  protected _render(): void;
144
- private $_invalidateElement;
145
151
  private $_requestRender;
146
152
  updateNow(): void;
147
153
  private $_render;
@@ -238,25 +244,32 @@ declare class RcElement extends RcObject {
238
244
  appendDom(dom: Node): Node;
239
245
  insertDom(dom: Node, before: Node): Node;
240
246
  clearDom(): void;
247
+ internalClearStyles(): void;
241
248
  clearStyles(): boolean;
242
249
  clearStyle(props: string[]): boolean;
250
+ internalSetStyles(styles: any): void;
243
251
  setStyles(styles: any): boolean;
244
252
  resetStyles(styles: any): boolean;
245
253
  protected _resetClass(): void;
246
254
  clearStyleAndClass(): void;
255
+ internalClearStyleAndClass(): void;
247
256
  setStyleOrClass(style: SVGStyleOrClass): void;
257
+ internalSetStyleOrClass(style: SVGStyleOrClass): void;
248
258
  addStyleOrClass(style: SVGStyleOrClass): void;
249
- setStyleName(value: string): void;
259
+ setClass(value: string): void;
250
260
  setStyle(prop: string, value: string): boolean;
261
+ internalSetStyle(prop: string, value: string): void;
251
262
  putStyles(styles: any, buff?: any): any;
252
263
  putStyle(prop: string, value: string, buff?: any): any;
253
264
  setData(data: string, value?: string): void;
254
265
  unsetData(data: string): void;
255
- removeLater(moveToFirst?: boolean, duration?: number): RcElement;
256
- fadeout(removeDelay: number, startOpacity: number): RcElement;
266
+ setBoolData(data: string, value: boolean): void;
267
+ removeLater(delay: number, callback?: (v: RcElement) => void): RcElement;
268
+ hide(delay: number): RcElement;
257
269
  clipRect(x: number, y: number, width: number, height: number, rd?: number): ClipElement;
258
270
  setClip(cr?: ClipElement | ClipPathElement | string): void;
259
271
  setTemporary(): RcElement;
272
+ setCursor(cursor: string): void;
260
273
  protected _testing(): boolean;
261
274
  protected _doAttached(parent: RcElement): void;
262
275
  protected _doDetached(parent: RcElement): void;
@@ -288,6 +301,28 @@ declare class ClipPathElement extends RcElement {
288
301
  setPath(path: Path): void;
289
302
  }
290
303
 
304
+ interface IAssetItem {
305
+ id: string;
306
+ }
307
+ declare abstract class AssetItem<T extends IAssetItem> {
308
+ source: T;
309
+ constructor(source: T);
310
+ abstract getEelement(doc: Document): Element;
311
+ }
312
+ interface IAssetOwner {
313
+ addDef(element: Element): void;
314
+ removeDef(element: string): void;
315
+ }
316
+ declare class AssetCollection {
317
+ private _items;
318
+ get count(): number;
319
+ get(index: number): AssetItem<IAssetItem>;
320
+ load(source: any): void;
321
+ register(doc: Document, owner: IAssetOwner): void;
322
+ unregister(doc: Document, owner: IAssetOwner): void;
323
+ private $_loadItem;
324
+ }
325
+
291
326
  declare enum TextAnchor {
292
327
  START = "start",
293
328
  MIDDLE = "middle",
@@ -337,6 +372,32 @@ declare class TextElement extends RcElement {
337
372
  }
338
373
 
339
374
  type RichTextParamCallback = (target: any, param: string) => string;
375
+ declare class Word {
376
+ text: string;
377
+ private _literals;
378
+ get type(): string;
379
+ parse(str: string): Word;
380
+ getText(target: any, callback: RichTextParamCallback): string;
381
+ prepareSpan(span: SVGTSpanElement, target: any, domain: RichTextParamCallback): SVGTSpanElement;
382
+ protected _doParse(str: string): Word;
383
+ }
384
+ declare class SvgLine {
385
+ private _words;
386
+ get words(): Word[];
387
+ parse(s: string): SvgLine;
388
+ getText(target: any, domain: RichTextParamCallback): string;
389
+ }
390
+ declare class SvgRichText {
391
+ private _format;
392
+ lineHeight: number;
393
+ private _lines;
394
+ constructor(format?: string);
395
+ get format(): string;
396
+ set format(value: string);
397
+ get lines(): SvgLine[];
398
+ build(view: TextElement, target: any, domain: RichTextParamCallback): void;
399
+ $_parse(fmt: string): void;
400
+ }
340
401
 
341
402
  declare abstract class ChartItem extends RcObject {
342
403
  readonly chart: IChart;
@@ -372,7 +433,7 @@ declare abstract class FormattableText extends ChartText {
372
433
  private _text;
373
434
  private _numSymbols;
374
435
  private _numberFormatter;
375
- private _richTextImpl;
436
+ protected _richTextImpl: SvgRichText;
376
437
  constructor(chart: IChart, visible: boolean);
377
438
  prefix: string;
378
439
  suffix: string;
@@ -383,7 +444,10 @@ declare abstract class FormattableText extends ChartText {
383
444
  offset: number;
384
445
  get text(): string;
385
446
  set text(value: string);
447
+ setText(value: string): FormattableText;
448
+ isVisible(): boolean;
386
449
  buildSvg(view: TextElement, target: any, callback: RichTextParamCallback): void;
450
+ setLineHeight(v: number): void;
387
451
  protected _doLoadSimple(source: any): boolean;
388
452
  private $_getNumberText;
389
453
  protected _getText(text: string, value: any, useSymbols: boolean, forceSymbols?: boolean): string;
@@ -402,6 +466,16 @@ declare class Crosshair extends ChartItem {
402
466
  labelStyles: SVGStyleOrClass;
403
467
  }
404
468
 
469
+ declare enum Shape {
470
+ CIRCLE = "circle",
471
+ DIAMOND = "diamond",
472
+ RECTANGLE = "rectangle",
473
+ SQUARE = "square",
474
+ TRIANGLE = "triangle",
475
+ ITRIANGLE = "itriangle",
476
+ STAR = "star"
477
+ }
478
+
405
479
  declare enum LineType {
406
480
  DEFAULT = "default",
407
481
  SPLINE = "spline",
@@ -417,6 +491,7 @@ declare class DataPoint {
417
491
  static swap(pts: IPointPos[]): IPointPos[];
418
492
  source: any;
419
493
  index: number;
494
+ vindex: number;
420
495
  x: any;
421
496
  y: any;
422
497
  readonly pid: number;
@@ -445,25 +520,24 @@ declare class DataPoint {
445
520
  protected _readSingle(v: any): void;
446
521
  }
447
522
  declare class DataPointCollection {
448
- private _owner;
523
+ protected _owner: ISeries;
449
524
  private _points;
450
525
  constructor(owner: ISeries);
451
526
  get count(): number;
452
527
  isEmpty(): boolean;
453
528
  get(index: number): DataPoint;
529
+ contains(p: DataPoint): boolean;
454
530
  load(source: any): void;
455
531
  getProps(prop: string | number): any[];
456
532
  getValues(axis: string): any[];
457
533
  forEach(callback: (p: DataPoint, i?: number) => any): void;
458
534
  getPoints(): DataPoint[];
459
- getVisibles(): DataPoint[];
460
535
  }
461
536
 
462
537
  interface ILegendSource {
463
538
  visible: boolean;
464
539
  legendColor(): string;
465
540
  legendLabel(): string;
466
- legendVisible(): boolean;
467
541
  }
468
542
  declare class LegendItem extends ChartItem {
469
543
  legend: Legend;
@@ -479,10 +553,6 @@ declare enum LegendPosition {
479
553
  PLOT = "plot",
480
554
  SUBPLOT = "subplot"
481
555
  }
482
- declare enum LegendAlignBase {
483
- CHART = "chart",
484
- PLOT = "plot"
485
- }
486
556
  declare enum LegendLayout {
487
557
  AUTO = "auto",
488
558
  HORIZONTAL = "horizontal",
@@ -490,22 +560,34 @@ declare enum LegendLayout {
490
560
  }
491
561
  declare class Legend extends ChartItem {
492
562
  private _items;
563
+ private _maxWidthDim;
564
+ private _maxHeightDim;
565
+ private _position;
493
566
  constructor(chart: IChart);
494
567
  position: LegendPosition;
495
568
  layout: LegendLayout;
496
- alignBase: LegendAlignBase;
569
+ alignBase: AlignBase;
497
570
  left: number;
498
571
  right: number;
499
572
  top: number;
500
573
  bottom: number;
574
+ gap: number;
501
575
  itemGap: number;
502
576
  markerGap: number;
503
577
  backgroundStyles: SVGStyleOrClass;
578
+ itemsPerLine: number;
579
+ lineGap: number;
580
+ maxWidth: RtPercentSize;
581
+ maxHeight: RtPercentSize;
504
582
  items(): LegendItem[];
505
583
  isEmpty(): boolean;
506
584
  isVisible(): boolean;
585
+ getPosition(): LegendPosition;
507
586
  getLayout(): LegendLayout;
508
- prepareRender(): void;
587
+ getMaxWidth(domain: number): number;
588
+ getMaxHeight(domain: number): number;
589
+ protected _doLoad(src: any): void;
590
+ protected _doPrepareRender(chart: IChart): void;
509
591
  private $_collectItems;
510
592
  }
511
593
 
@@ -535,6 +617,7 @@ declare enum PointItemPosition {
535
617
  declare class DataPointLabel extends FormattableText {
536
618
  position: PointItemPosition;
537
619
  offset: number;
620
+ distance: number;
538
621
  constructor(chart: IChart);
539
622
  getText(value: any): string;
540
623
  }
@@ -627,6 +710,20 @@ interface ISeries extends IPlottingItem {
627
710
  getValue(point: DataPoint, axis: IAxis): number;
628
711
  isVisible(p: DataPoint): boolean;
629
712
  }
713
+ interface IPointStyleArgs {
714
+ series: string | number;
715
+ count: number;
716
+ vcount: number;
717
+ yMin: number;
718
+ yMax: number;
719
+ index: number;
720
+ vindex: number;
721
+ x: any;
722
+ y: any;
723
+ xValue: any;
724
+ yValue: any;
725
+ }
726
+ type PointStyleCallback = (args: IPointStyleArgs) => SVGStyleOrClass;
630
727
  declare abstract class Series extends ChartItem implements ISeries, ILegendSource {
631
728
  static _loadSeries(chart: IChart, src: any, defType?: string): Series;
632
729
  readonly name: string;
@@ -639,10 +736,12 @@ declare abstract class Series extends ChartItem implements ISeries, ILegendSourc
639
736
  _xAxisObj: IAxis;
640
737
  _yAxisObj: IAxis;
641
738
  protected _points: DataPointCollection;
642
- _visPoints: DataPoint[];
739
+ _runPoints: DataPoint[];
643
740
  _minValue: number;
644
741
  _maxValue: number;
645
742
  _referents: Series[];
743
+ _calcedColor: string;
744
+ protected _pointArgs: IPointStyleArgs;
646
745
  constructor(chart: IChart, name?: string);
647
746
  abstract _type(): string;
648
747
  zOrder: number;
@@ -652,14 +751,17 @@ declare abstract class Series extends ChartItem implements ISeries, ILegendSourc
652
751
  yField: string | number;
653
752
  colorField: string;
654
753
  dataProp: string;
655
- xStart: number;
754
+ xStart: number | string;
656
755
  xStep: number | string;
657
756
  color: string;
658
757
  pointColors: boolean | string[];
659
758
  clipped: boolean;
759
+ pointStyleCallback: PointStyleCallback;
760
+ contains(p: DataPoint): boolean;
660
761
  getPoints(): DataPointCollection;
661
762
  getLabeledPoints(): DataPoint[];
662
763
  getVisiblePoints(): DataPoint[];
764
+ pointLabelCount(): number;
663
765
  isEmpty(): boolean;
664
766
  needAxes(): boolean;
665
767
  canCategorized(): boolean;
@@ -668,12 +770,13 @@ declare abstract class Series extends ChartItem implements ISeries, ILegendSourc
668
770
  displayName(): string;
669
771
  legendColor(): string;
670
772
  legendLabel(): string;
671
- legendVisible(): boolean;
672
773
  ignoreAxisBase(axis: IAxis): boolean;
673
774
  canMixWith(other: IPlottingItem): boolean;
674
775
  getBaseValue(axis: IAxis): number;
675
776
  canMinPadding(axis: IAxis): boolean;
676
777
  canMaxPadding(axis: IAxis): boolean;
778
+ hasMarker(): boolean;
779
+ setShape(shape: Shape): void;
677
780
  protected _createPoint(source: any): DataPoint;
678
781
  createPoints(source: any[]): DataPoint[];
679
782
  getXStart(): number;
@@ -682,6 +785,7 @@ declare abstract class Series extends ChartItem implements ISeries, ILegendSourc
682
785
  prepareRender(): void;
683
786
  collectCategories(axis: IAxis): string[];
684
787
  collectValues(axis: IAxis, vals: number[]): void;
788
+ collectVisibles(): DataPoint[];
685
789
  pointValuesPrepared(axis: IAxis): void;
686
790
  reference(other: Series, axis: IAxis): void;
687
791
  isVisible(point: DataPoint): boolean;
@@ -689,9 +793,14 @@ declare abstract class Series extends ChartItem implements ISeries, ILegendSourc
689
793
  getLabelPosition(p: PointItemPosition): PointItemPosition;
690
794
  getLabelOff(off: number): number;
691
795
  referBy(ref: Series): void;
796
+ setPointVisible(p: DataPoint, visible: boolean): void;
797
+ protected _createPointArgs(): IPointStyleArgs;
798
+ protected _preparePointArgs(args: IPointStyleArgs): void;
799
+ protected _getPointStyleArgs(args: IPointStyleArgs, p: DataPoint): void;
800
+ getPointStyle(p: DataPoint): any;
692
801
  _referOtherSeries(series: Series): boolean;
693
802
  protected _getField(axis: IAxis): any;
694
- protected _colorByPoint(): boolean;
803
+ _colorByPoint(): boolean;
695
804
  protected _doLoad(src: any): void;
696
805
  protected _loadData(src: any): any;
697
806
  protected _doLoadPoints(src: any[]): void;
@@ -705,11 +814,13 @@ declare class PlottingItemCollection {
705
814
  private _visibles;
706
815
  private _series;
707
816
  private _visibleSeries;
817
+ private _widget;
708
818
  constructor(chart: IChart);
709
819
  get first(): IPlottingItem;
710
820
  get firstSeries(): Series;
711
821
  get firstVisible(): IPlottingItem;
712
822
  get firstVisibleSeries(): Series;
823
+ isWidget(): boolean;
713
824
  isEmpty(): boolean;
714
825
  items(): IPlottingItem[];
715
826
  visibles(): IPlottingItem[];
@@ -717,6 +828,7 @@ declare class PlottingItemCollection {
717
828
  visibleSeries(): Series[];
718
829
  needAxes(): boolean;
719
830
  get(name: string): Series;
831
+ seriesByPoint(point: DataPoint): Series;
720
832
  getLegendSources(): ILegendSource[];
721
833
  load(src: any): void;
722
834
  prepareRender(): void;
@@ -785,6 +897,7 @@ interface IAxis {
785
897
  getValue(value: any): number;
786
898
  parseValue(value: any): number;
787
899
  contains(value: number): boolean;
900
+ incStep(value: number, step: any): number;
788
901
  getPosition(length: number, value: number, point?: boolean): number;
789
902
  getUnitLength(length: number, value: number): number;
790
903
  }
@@ -813,7 +926,7 @@ declare class AxisGrid extends AxisItem {
813
926
  declare class AxisGuideLabel extends FormattableText {
814
927
  constructor(chart: IChart);
815
928
  align: Align;
816
- valign: VerticalAlign;
929
+ verticalAlign: VerticalAlign;
817
930
  }
818
931
  declare abstract class AxisGuide extends AxisItem {
819
932
  readonly label: AxisGuideLabel;
@@ -888,8 +1001,8 @@ declare abstract class Axis extends ChartItem implements IAxis {
888
1001
  abstract type(): string;
889
1002
  position: AxisPosition;
890
1003
  reversed: boolean;
891
- min: number;
892
- max: number;
1004
+ minValue: number;
1005
+ maxValue: number;
893
1006
  marginNear: number;
894
1007
  marginFar: number;
895
1008
  isEmpty(): boolean;
@@ -910,6 +1023,7 @@ declare abstract class Axis extends ChartItem implements IAxis {
910
1023
  abstract getUnitLength(length: number, value: number): number;
911
1024
  getLabelLength(length: number, value: number): number;
912
1025
  getValue(value: any): number;
1026
+ incStep(value: number, step: any): number;
913
1027
  parseValue(value: any): number;
914
1028
  contains(value: number): boolean;
915
1029
  protected _doLoadProp(prop: string, value: any): boolean;
@@ -932,7 +1046,7 @@ declare class AxisCollection {
932
1046
  get items(): Axis[];
933
1047
  load(src: any): void;
934
1048
  contains(axis: Axis): boolean;
935
- get(name: string): Axis;
1049
+ get(name: string | number): Axis;
936
1050
  disconnect(): void;
937
1051
  collectValues(): void;
938
1052
  collectReferentsValues(): void;
@@ -975,8 +1089,15 @@ declare class Body extends ChartItem {
975
1089
  protected _doPrepareRender(chart: IChart): void;
976
1090
  }
977
1091
 
1092
+ declare enum PaletteMode {
1093
+ NORMAL = "normal",
1094
+ MIXED = "mixed",
1095
+ RANDOM = "random"
1096
+ }
1097
+
978
1098
  declare class Title extends ChartItem {
979
1099
  text: string;
1100
+ alignBase: AlignBase;
980
1101
  align: Align;
981
1102
  backgroundStyle: SVGStyleOrClass;
982
1103
  isVisible(): boolean;
@@ -990,7 +1111,7 @@ declare enum SubtitlePosition {
990
1111
  }
991
1112
  declare class Subtitle extends Title {
992
1113
  position: SubtitlePosition;
993
- valign: VerticalAlign;
1114
+ verticalAlign: VerticalAlign;
994
1115
  text: string;
995
1116
  }
996
1117
 
@@ -1003,7 +1124,7 @@ interface IChart {
1003
1124
  xAxis: IAxis;
1004
1125
  yAxis: IAxis;
1005
1126
  colors: string[];
1006
- _polar: boolean;
1127
+ isPolar(): boolean;
1007
1128
  isInverted(): boolean;
1008
1129
  animatable(): boolean;
1009
1130
  startAngle(): number;
@@ -1020,20 +1141,35 @@ interface IChart {
1020
1141
  _connectSeries(series: IPlottingItem, isX: boolean): Axis;
1021
1142
  _getLegendSources(): ILegendSource[];
1022
1143
  _visibleChanged(item: ChartItem): void;
1144
+ _pointVisibleChanged(series: Series, point: DataPoint): void;
1023
1145
  _modelChanged(item: ChartItem): void;
1024
1146
  }
1147
+ declare class Credits extends ChartItem {
1148
+ text: string;
1149
+ url: string;
1150
+ floating: boolean;
1151
+ align: Align;
1152
+ verticalAlign: VerticalAlign;
1153
+ offsetX: number;
1154
+ offsetY: number;
1155
+ }
1025
1156
  declare class ChartOptions extends ChartItem {
1026
- polar: boolean;
1157
+ theme: string;
1158
+ palette: string;
1159
+ paletteMode: PaletteMode;
1027
1160
  animatable: boolean;
1028
- xStart: number;
1029
- xStep: number;
1161
+ xStart: number | string;
1162
+ xStep: number | string;
1030
1163
  axisGap: number;
1031
- style: SVGStyleOrClass;
1164
+ credits: Credits;
1032
1165
  }
1033
1166
  interface IChartEventListener {
1034
1167
  onVisibleChanged?(chart: Chart, item: ChartItem): void;
1168
+ onPointVisibleChange?(chart: Chart, series: Series, point: DataPoint): void;
1035
1169
  }
1036
1170
  declare class Chart extends RcEventProvider<IChartEventListener> implements IChart {
1171
+ private _assets;
1172
+ private _themes;
1037
1173
  private _options;
1038
1174
  private _title;
1039
1175
  private _subtitle;
@@ -1043,15 +1179,18 @@ declare class Chart extends RcEventProvider<IChartEventListener> implements ICha
1043
1179
  private _yAxes;
1044
1180
  private _body;
1045
1181
  private _inverted;
1046
- _polar: boolean;
1182
+ private _polar;
1047
1183
  colors: string[];
1048
1184
  constructor(source?: any);
1049
1185
  startAngle(): number;
1050
1186
  get xStart(): number;
1051
1187
  get xStep(): number;
1188
+ get xStepUnit(): string;
1052
1189
  animatable(): boolean;
1053
1190
  type: string;
1191
+ polar: boolean;
1054
1192
  inverted: boolean;
1193
+ get assets(): AssetCollection;
1055
1194
  get options(): ChartOptions;
1056
1195
  get title(): Title;
1057
1196
  get subtitle(): Subtitle;
@@ -1065,9 +1204,12 @@ declare class Chart extends RcEventProvider<IChartEventListener> implements ICha
1065
1204
  _getSeries(): PlottingItemCollection;
1066
1205
  _getXAxes(): AxisCollection;
1067
1206
  _getYAxes(): AxisCollection;
1207
+ isPolar(): boolean;
1208
+ isWidget(): boolean;
1068
1209
  isInverted(): boolean;
1069
1210
  isEmpty(): boolean;
1070
1211
  seriesByName(series: string): Series;
1212
+ seriesByPoint(point: DataPoint): Series;
1071
1213
  axisByName(axis: string): Axis;
1072
1214
  containsAxis(axis: Axis): boolean;
1073
1215
  getAxes(dir: SectionDir): Axis[];
@@ -1084,6 +1226,7 @@ declare class Chart extends RcEventProvider<IChartEventListener> implements ICha
1084
1226
  _getAxisType(type: string): any;
1085
1227
  getAxesGap(): number;
1086
1228
  _visibleChanged(item: ChartItem): void;
1229
+ _pointVisibleChanged(series: Series, point: DataPoint): void;
1087
1230
  _modelChanged(item: ChartItem): void;
1088
1231
  }
1089
1232
 
@@ -1181,16 +1324,17 @@ declare class ElementPool<T extends RcElement> extends RcObject {
1181
1324
  get(index: number): T;
1182
1325
  getAll(): T[];
1183
1326
  elementOf(dom: Element): T;
1327
+ find(matcher: (v: T) => boolean): T;
1328
+ setRemoveDelay(v: number): ElementPool<T>;
1329
+ removeLater(v: RcElement, duration: number): void;
1184
1330
  private $_create;
1185
1331
  prepare(count: number, visitor?: Visitor<T>, initor?: Visitor<T>): ElementPool<T>;
1186
1332
  reprepare(viewProp: string, objs: RcObject[], objProp: string, cleaner?: Visitor<T>, initor?: Visitor<T>, visitor?: Visitor<T>): ElementPool<T>;
1187
1333
  borrow(): T;
1188
1334
  free(element: T, removeDelay?: number): void;
1189
1335
  freeAll(elements: T[], removeDelay?: number): void;
1190
- fadeout(element: T, removeDelay: number, startOpacity?: number): void;
1191
1336
  forEach(visitor: (v: T, i?: number, count?: number) => void): void;
1192
1337
  visit(visitor: (v: T, i: number, count: number) => boolean): boolean;
1193
- find(visitor: (v: T) => boolean): T;
1194
1338
  sort(compare: (v1: T, v2: T) => number): ElementPool<T>;
1195
1339
  map(callback: (v: T) => any): any[];
1196
1340
  }
@@ -1206,6 +1350,7 @@ declare abstract class RcAnimation {
1206
1350
  private _timer;
1207
1351
  private _handler;
1208
1352
  start(): void;
1353
+ stop(): void;
1209
1354
  protected _start(duration: number, delay?: number, easing?: string): void;
1210
1355
  protected _stop(): void;
1211
1356
  protected _doStart(): void;
@@ -1236,16 +1381,15 @@ declare class PointLabelView extends LabelElement {
1236
1381
  moving: boolean;
1237
1382
  constructor(doc: Document);
1238
1383
  }
1239
- declare class PointLabelContainer extends GroupElement {
1384
+ declare class PointLabelContainer extends LayerElement {
1240
1385
  private _labels;
1241
1386
  private _maps;
1242
1387
  constructor(doc: Document);
1243
1388
  clear(): void;
1244
1389
  prepareLabel(doc: Document, view: PointLabelView, index: number, p: DataPoint, model: DataPointLabel): void;
1245
- prepare(doc: Document, model: Series): void;
1390
+ prepare(doc: Document, owner: SeriesView<Series>): void;
1246
1391
  get(point: DataPoint, index: number): PointLabelView;
1247
- borrow(index: number): PointLabelView;
1248
- free(index: number, view: PointLabelView, removeDelay?: number): void;
1392
+ removePoint(p: DataPoint, delay: number): void;
1249
1393
  }
1250
1394
  declare class PointContainer extends LayerElement {
1251
1395
  inverted: boolean;
@@ -1263,29 +1407,38 @@ type LabelLayoutInfo = {
1263
1407
  labelOff: number;
1264
1408
  };
1265
1409
  declare abstract class SeriesView<T extends Series> extends ChartElement<T> {
1266
- static readonly POINT_CLASS = "rct-data-point";
1410
+ static readonly POINT_CLASS = "rct-point";
1267
1411
  static readonly DATA_FOUCS = "focus";
1268
1412
  protected _pointContainer: PointContainer;
1269
- private _labelContainer;
1413
+ protected _labelContainer: PointLabelContainer;
1270
1414
  private _trendLineView;
1415
+ protected _visPoints: DataPoint[];
1271
1416
  protected _inverted: boolean;
1272
1417
  protected _animatable: boolean;
1273
1418
  private _viewRate;
1274
1419
  constructor(doc: Document, styleName: string);
1420
+ invertable(): boolean;
1275
1421
  getClipContainer(): RcElement;
1276
1422
  setViewRate(rate: number): void;
1423
+ setPosRate(rate: number): void;
1424
+ isPointVisible(p: DataPoint): boolean;
1277
1425
  protected _doViewRateChanged(rate: number): void;
1278
1426
  _setChartOptions(inverted: boolean, animatable: boolean): void;
1279
1427
  _animationStarted(ani: Animation): void;
1280
1428
  _animationFinished(ani: Animation): void;
1281
1429
  protected abstract _getPointPool(): ElementPool<RcElement>;
1282
1430
  pointByDom(elt: Element): IPointView;
1431
+ findPointView(p: DataPoint): RcElement;
1283
1432
  clicked(elt: Element): void;
1284
1433
  protected _doPointClicked(view: IPointView): void;
1434
+ protected _getColor(): string;
1285
1435
  protected _doMeasure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): ISize;
1286
1436
  protected _doLayout(): void;
1287
1437
  protected abstract _prepareSeries(doc: Document, model: T): void;
1288
1438
  protected abstract _renderSeries(width: number, height: number): void;
1439
+ protected _prepareVisPoints(model: T): DataPoint[];
1440
+ private $_setColorIndex;
1441
+ protected _setPointStyle(v: RcElement, p: DataPoint, styles?: any[]): void;
1289
1442
  protected _labelViews(): PointLabelContainer;
1290
1443
  protected _getViewRate(): number;
1291
1444
  protected _animating(): boolean;
@@ -1333,7 +1486,7 @@ declare class AxisGuideContainer extends LayerElement {
1333
1486
  add(child: AxisGuideView<AxisGuide>): RcElement;
1334
1487
  }
1335
1488
  interface IPlottingOwner {
1336
- clipSeries(view: RcElement, x: number, y: number, w: number, h: number): void;
1489
+ clipSeries(view: RcElement, x: number, y: number, w: number, h: number, invertable: boolean): void;
1337
1490
  showTooltip(series: Series, point: DataPoint): void;
1338
1491
  hideTooltip(): void;
1339
1492
  }
@@ -1361,6 +1514,7 @@ declare class BodyView extends ChartElement<Body> {
1361
1514
  pointerMoved(p: IPoint, target: EventTarget): void;
1362
1515
  private $_setFocused;
1363
1516
  seriesByDom(elt: Element): SeriesView<Series>;
1517
+ findSeries(ser: Series): SeriesView<Series>;
1364
1518
  protected _doMeasure(doc: Document, model: Body, hintWidth: number, hintHeight: number, phase: number): ISize;
1365
1519
  protected _doLayout(): void;
1366
1520
  private $_createSeriesView;
@@ -1382,6 +1536,13 @@ declare class TitleView extends BoundableElement<Title> {
1382
1536
 
1383
1537
  declare class EmptyView extends GroupElement {
1384
1538
  }
1539
+ declare class CreditView extends ChartElement<Credits> {
1540
+ private _textView;
1541
+ constructor(doc: Document);
1542
+ clicked(dom: Element): void;
1543
+ protected _doMeasure(doc: Document, model: Credits, intWidth: number, hintHeight: number, phase: number): ISize;
1544
+ protected _doLayout(param: any): void;
1545
+ }
1385
1546
  declare class ChartView extends RcElement {
1386
1547
  private _model;
1387
1548
  _inverted: boolean;
@@ -1392,9 +1553,10 @@ declare class ChartView extends RcElement {
1392
1553
  private _polarView;
1393
1554
  private _currBody;
1394
1555
  private _axisSectionViews;
1556
+ private _creditView;
1395
1557
  private _tooltipView;
1396
1558
  private _seriesClip;
1397
- private _org;
1559
+ _org: IPoint;
1398
1560
  private _plotWidth;
1399
1561
  private _plotHeight;
1400
1562
  constructor(doc: Document);
@@ -1407,7 +1569,9 @@ declare class ChartView extends RcElement {
1407
1569
  hideTooltip(): void;
1408
1570
  legendByDom(dom: Element): LegendItem;
1409
1571
  seriesByDom(dom: Element): SeriesView<Series>;
1410
- clipSeries(view: RcElement, x: number, y: number, w: number, h: number): void;
1572
+ findSeriesView(series: Series): SeriesView<Series>;
1573
+ creditByDom(dom: Element): CreditView;
1574
+ clipSeries(view: RcElement, x: number, y: number, w: number, h: number, invertable: boolean): void;
1411
1575
  protected _doAttached(parent: RcElement): void;
1412
1576
  private $_checkEmpty;
1413
1577
  private $_prepareBody;
@@ -1421,24 +1585,32 @@ declare class ChartControl extends RcControl implements IChartEventListener {
1421
1585
  private _chartView;
1422
1586
  constructor(doc: Document, container: string | HTMLDivElement);
1423
1587
  onVisibleChanged(chart: Chart, item: ChartItem): void;
1588
+ onPointVisibleChanged(chart: Chart, series: Series, point: DataPoint): void;
1424
1589
  get model(): Chart;
1425
1590
  set model(value: Chart);
1426
1591
  chartView(): ChartView;
1427
1592
  refresh(): void;
1428
- update(config: any, loadAnimation?: boolean): void;
1593
+ load(config: any, loadAnimation?: boolean): void;
1429
1594
  useImage(src: string): void;
1430
1595
  protected _doRender(bounds: IRect): void;
1431
1596
  protected _doRenderBackground(elt: HTMLDivElement, width: number, height: number): void;
1432
1597
  }
1433
1598
 
1599
+ declare class RcChartControl {
1600
+ private _proxy;
1601
+ constructor(control: ChartControl);
1602
+ load(config: any, animate?: boolean): void;
1603
+ refresh(): void;
1604
+ }
1605
+
1434
1606
  declare class Globals {
1435
1607
  static getVersion(): string;
1436
1608
  static setDebugging(debug: boolean): void;
1437
- static createChart(doc: Document, container: string | HTMLDivElement, config: any): ChartControl;
1609
+ static createChart(doc: Document, container: string | HTMLDivElement, config: any): RcChartControl;
1438
1610
  }
1439
1611
 
1440
1612
  declare const getVersion: typeof Globals.getVersion;
1441
1613
  declare const setDebugging: typeof Globals.setDebugging;
1442
1614
  declare const createChart: typeof Globals.createChart;
1443
1615
 
1444
- export { Chart, ChartControl, createChart, getVersion, setDebugging };
1616
+ export { RcChartControl, createChart, getVersion, setDebugging };