@fintatech/fintachart 3.1.0 → 3.1.1

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 (37) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +6 -6
  3. package/THIRD_PARTY_NOTICES.md +1 -1
  4. package/basic-objects.html +2 -6
  5. package/css/FintaChart.min.css +1 -1
  6. package/custom-indicator.html +2 -6
  7. package/d.ts/FintaChart.d.ts +490 -179
  8. package/d.ts/frameworks/bootstrap.v3.datetimepicker.d.ts +3 -3
  9. package/d.ts/frameworks/html2canvas.d.ts +0 -2
  10. package/d.ts/frameworks-modified/autocolumnlist.d.ts +8 -0
  11. package/d.ts/frameworks-modified/spectrum.d.ts +17 -26
  12. package/d.ts/frameworks-modified/toastr.d.ts +9 -10
  13. package/htmldialogs/Toolbar.html +2 -2
  14. package/index-dark.html +2 -6
  15. package/index.html +2 -6
  16. package/multiple-charts.html +2 -6
  17. package/package.json +1 -1
  18. package/scripts/FintaChart.min.js +2 -2
  19. package/scripts/frameworks/bootstrap.v3.datetimepicker.min.js +10 -10
  20. package/scripts/frameworks-modified/autocolumnlist.js +48 -0
  21. package/scripts/frameworks-modified/spectrum.js +187 -6
  22. package/scripts/frameworks-modified/switchery.js +1 -1
  23. package/scripts/frameworks-modified/toastr.js +283 -382
  24. package/d.ts/frameworks/jquery-i18next.d.ts +0 -14
  25. package/d.ts/frameworks/jquery-ui.d.ts +0 -1914
  26. package/d.ts/frameworks/jquery.d.ts +0 -3779
  27. package/d.ts/frameworks/jquery.ui.touch-punch.d.ts +0 -12
  28. package/d.ts/frameworks-modified/bootstrap-select.d.ts +0 -18
  29. package/d.ts/frameworks-modified/jquery.autocolumnlist.d.ts +0 -17
  30. package/d.ts/frameworks-modified/jquery.resizable.d.ts +0 -20
  31. package/scripts/frameworks/jquery-i18next.min.js +0 -1
  32. package/scripts/frameworks/jquery-ui.min.js +0 -8
  33. package/scripts/frameworks/jquery.min.js +0 -3
  34. package/scripts/frameworks/jquery.ui.touch-punch.min.js +0 -1
  35. package/scripts/frameworks-modified/bootstrap-select.js +0 -1024
  36. package/scripts/frameworks-modified/jquery.autocolumnlist.js +0 -48
  37. package/scripts/frameworks-modified/jquery.resizable.js +0 -229
@@ -1,19 +1,13 @@
1
- /// <reference path="./frameworks/jquery.d.ts" />
2
- /// <reference path="./frameworks/jquery-ui.d.ts" />
3
1
  /// <reference path="./frameworks/Intl.d.ts" />
4
2
  /// <reference path="./frameworks/moment.d.ts" />
5
3
  /// <reference path="./frameworks/detectizr.d.ts" />
6
4
  /// <reference path="./frameworks/dom-to-image-more.d.ts" />
7
5
  /// <reference path="./frameworks/i18nextXHRBackend.d.ts" />
8
- /// <reference path="./frameworks/jquery-i18next.d.ts" />
9
- /// <reference path="./frameworks/jquery.ui.touch-punch.d.ts" />
10
- /// <reference path="./frameworks-modified/bootstrap-select.d.ts" />
11
6
  /// <reference path="./frameworks-modified/i18next.d.ts" />
12
- /// <reference path="./frameworks-modified/jquery.autocolumnlist.d.ts" />
13
- /// <reference path="./frameworks-modified/jquery.resizable.d.ts" />
14
7
  /// <reference path="./frameworks-modified/spectrum.d.ts" />
15
8
  /// <reference path="./frameworks-modified/switchery.d.ts" />
16
9
  /// <reference path="./frameworks-modified/toastr.d.ts" />
10
+ /// <reference path="./frameworks-modified/autocolumnlist.d.ts" />
17
11
  declare module FintaChart {
18
12
  /**
19
13
  * Interface contains method to cleanup internal resources
@@ -353,6 +347,8 @@ interface Document {
353
347
  msFullscreenElement?: Element;
354
348
  msFullscreenEnabled?: boolean;
355
349
  webkitFullscreenEnabled?: boolean;
350
+ querySelector<E extends Element = any>(selectors: string): E | null;
351
+ querySelectorAll<E extends Element = any>(selectors: string): NodeListOf<E>;
356
352
  mozCancelFullScreen(): any;
357
353
  msExitFullscreen(): any;
358
354
  webkitExitFullscreen(): any;
@@ -361,10 +357,16 @@ interface Element {
361
357
  ALLOW_KEYBOARD_INPUT?: number;
362
358
  mozFullScreenElement: any;
363
359
  msFullscreenElement: any;
360
+ querySelector<E extends Element = any>(selectors: string): E | null;
361
+ querySelectorAll<E extends Element = any>(selectors: string): NodeListOf<E>;
362
+ closest<E extends Element = any>(selectors: string): E | null;
364
363
  mozRequestFullScreen(): any;
365
364
  msRequestFullscreen(): any;
366
365
  webkitRequestFullscreen(flag?: number): any;
367
366
  }
367
+ interface Event {
368
+ key?: string;
369
+ }
368
370
  declare module FintaChart {
369
371
  /**
370
372
  * Represents html extensions
@@ -403,35 +405,35 @@ declare module FintaChart {
403
405
  * @param value
404
406
  * @return
405
407
  */
406
- static cleanupHtmlCode(value: string | JQuery): JQuery;
408
+ static cleanupHtmlCode(value: string | HTMLElement): HTMLElement;
407
409
  /**
408
410
  * Sets back ground color
409
411
  *
410
412
  * @param control
411
413
  * @param backgroundColors
412
414
  */
413
- static background(control: JQuery, backgroundColors: string[] | string): void;
415
+ static background(control: HTMLElement, backgroundColors: string[] | string): void;
414
416
  /**
415
417
  * Sets back ground color
416
418
  *
417
419
  * @param control
418
420
  * @param color
419
421
  */
420
- static backgroundColor(control: JQuery, color: string): void;
422
+ static backgroundColor(control: HTMLElement, color: string): void;
421
423
  /**
422
424
  * Set background color with gradient
423
425
  *
424
426
  * @param control
425
427
  * @param colors
426
428
  */
427
- static gradientBackground(control: JQuery, colors: string[]): void;
429
+ static gradientBackground(control: HTMLElement, colors: string[]): void;
428
430
  /**
429
431
  * Sets visibility
430
432
  *
431
433
  * @param control
432
434
  * @param visible
433
435
  */
434
- static visibility(control: JQuery, visible: boolean): void;
436
+ static visibility(control: HTMLElement, visible: boolean): void;
435
437
  /**
436
438
  * Updates canvas size
437
439
  *
@@ -444,23 +446,298 @@ declare module FintaChart {
444
446
  static downloadFile(data: string, fileName: string, fileType?: string): void;
445
447
  }
446
448
  }
447
- interface JQuery {
448
- jqAppend(tag: string, ...classes: string[]): JQuery;
449
- jqAppendCanvas(): JQuery;
450
- jqBorder(border: string, theme: FintaChart.IStrokeTheme): JQuery;
451
- jqClientToLocalPoint(clientX: number, clientY: number): FintaChart.IPoint;
452
- jqContentSize(): FintaChart.ISize;
453
- jqFill(theme: FintaChart.IFillTheme): JQuery;
454
- jqFrame(frame: FintaChart.IBounds): void;
455
- jqLocalToClientPoint(clientX: number, clientY: number): FintaChart.IPoint;
456
- jqLocalize(key: string, defaultValue?: string): JQuery;
457
- jqPosition(left: number, top: number): JQuery;
458
- jqPrepend(tag: string, ...classes: string[]): JQuery;
459
- jqSize(): FintaChart.ISize;
460
- jqTextStyle(theme: FintaChart.ITextTheme): JQuery;
461
- jqTop(offset: string): JQuery;
449
+ declare module FintaChart {
450
+ /**
451
+ * Native DOM utility functions replacing legacy patterns.
452
+ *
453
+ * @category Utils
454
+ */
455
+ class DomUtils {
456
+ /**
457
+ * Creates an HTMLElement from an HTML string.
458
+ * If the string contains multiple root elements, wraps them in a div.
459
+ *
460
+ * @param html The HTML string to parse.
461
+ * @return The created element.
462
+ */
463
+ static createElement(html: string): HTMLElement;
464
+ /**
465
+ * Creates an array of HTMLElements from an HTML string.
466
+ * Unlike createElement, this preserves multiple root elements
467
+ * without wrapping them in a container div.
468
+ *
469
+ * @param html The HTML string to parse.
470
+ * @return Array of created elements.
471
+ */
472
+ static createElements(html: string): HTMLElement[];
473
+ /**
474
+ * Creates and appends a child element with optional CSS classes.
475
+ *
476
+ * @param parent The parent element.
477
+ * @param tag The tag name for the new element.
478
+ * @param classes CSS classes to add.
479
+ * @return The created element.
480
+ */
481
+ static appendElement(parent: HTMLElement, tag: string, ...classes: string[]): HTMLElement;
482
+ /**
483
+ * Creates and prepends a child element with optional CSS classes.
484
+ *
485
+ * @param parent The parent element.
486
+ * @param tag The tag name for the new element.
487
+ * @param classes CSS classes to add.
488
+ * @return The created element.
489
+ */
490
+ static prependElement(parent: HTMLElement, tag: string, ...classes: string[]): HTMLElement;
491
+ /**
492
+ * Creates and appends an absolutely-positioned canvas element.
493
+ *
494
+ * @param parent The parent element.
495
+ * @return The created canvas element.
496
+ */
497
+ static appendCanvas(parent: HTMLElement): HTMLCanvasElement;
498
+ /**
499
+ * Applies border style from a stroke theme.
500
+ *
501
+ * @param el The target element.
502
+ * @param border The CSS border property name (e.g. 'border', 'border-top').
503
+ * @param theme The stroke theme.
504
+ */
505
+ static applyBorder(el: HTMLElement, border: string, theme: IStrokeTheme): void;
506
+ /**
507
+ * Applies border style with fixed 0.05em width from a stroke theme.
508
+ *
509
+ * @param el The target element.
510
+ * @param border The CSS border property name.
511
+ * @param theme The stroke theme.
512
+ */
513
+ static applyBorderBFT(el: HTMLElement, border: string, theme: IStrokeTheme): void;
514
+ /**
515
+ * Applies fill background color from a fill theme.
516
+ *
517
+ * @param el The target element.
518
+ * @param theme The fill theme.
519
+ */
520
+ static applyFill(el: HTMLElement, theme: IFillTheme): void;
521
+ /**
522
+ * Applies text style from a text theme.
523
+ *
524
+ * @param el The target element.
525
+ * @param theme The text theme.
526
+ */
527
+ static applyTextStyle(el: HTMLElement, theme: ITextTheme): void;
528
+ /**
529
+ * Sets a CSS property on an element.
530
+ *
531
+ * @param el The target element.
532
+ * @param prop The CSS property name.
533
+ * @param value The CSS property value.
534
+ */
535
+ static css(el: HTMLElement, prop: string, value: string | number): void;
536
+ /**
537
+ * Converts client (viewport) coordinates to local element coordinates.
538
+ *
539
+ * @param el The reference element.
540
+ * @param clientX Client X coordinate.
541
+ * @param clientY Client Y coordinate.
542
+ * @return Local point coordinates.
543
+ */
544
+ static clientToLocalPoint(el: HTMLElement, clientX: number, clientY: number): IPoint;
545
+ /**
546
+ * Converts local element coordinates to client (viewport) coordinates.
547
+ *
548
+ * @param el The reference element.
549
+ * @param localX Local X coordinate.
550
+ * @param localY Local Y coordinate.
551
+ * @return Client point coordinates.
552
+ */
553
+ static localToClientPoint(el: HTMLElement, localX: number, localY: number): IPoint;
554
+ /**
555
+ * Returns the content size (inner dimensions excluding borders, including padding).
556
+ * Equivalent to legacy innerWidth/innerHeight helpers.
557
+ *
558
+ * @param el The element.
559
+ * @return The content size.
560
+ */
561
+ static contentSize(el: HTMLElement): ISize;
562
+ /**
563
+ * Returns the outer size including borders.
564
+ * Equivalent to legacy outerWidth/outerHeight helpers.
565
+ *
566
+ * @param el The element.
567
+ * @return The outer size.
568
+ */
569
+ static outerSize(el: HTMLElement): ISize;
570
+ /**
571
+ * Sets the position and size of an element.
572
+ *
573
+ * @param el The target element.
574
+ * @param frame The bounds to apply.
575
+ */
576
+ static setFrame(el: HTMLElement, frame: IBounds): void;
577
+ /**
578
+ * Sets the CSS position (left, top) of an element.
579
+ *
580
+ * @param el The target element.
581
+ * @param left Left offset in pixels.
582
+ * @param top Top offset in pixels.
583
+ */
584
+ static setPosition(el: HTMLElement, left: number, top: number): void;
585
+ /**
586
+ * Centers element horizontally in the viewport with a given top offset.
587
+ * Replaces legacy jqTop extension.
588
+ *
589
+ * @param el The target element.
590
+ * @param topOffset The top CSS value (e.g. '6rem').
591
+ */
592
+ static centerHorizontally(el: HTMLElement, topOffset: string): void;
593
+ /**
594
+ * Shows an element by clearing its display style.
595
+ *
596
+ * @param el The element to show.
597
+ */
598
+ static show(el: HTMLElement | null): void;
599
+ /**
600
+ * Hides an element by setting display to none.
601
+ *
602
+ * @param el The element to hide.
603
+ */
604
+ static hide(el: HTMLElement | null): void;
605
+ /**
606
+ * Toggles element visibility.
607
+ *
608
+ * @param el The element to toggle.
609
+ * @param visible If provided, forces visible/hidden state.
610
+ */
611
+ static toggle(el: HTMLElement | null, visible?: boolean): void;
612
+ /**
613
+ * Sets the i18n data attribute and optional default text.
614
+ *
615
+ * @param el The target element.
616
+ * @param key The i18n key.
617
+ * @param defaultValue Optional default text.
618
+ */
619
+ static localize(el: HTMLElement, key: string, defaultValue?: string): void;
620
+ /**
621
+ * Finds a single descendant matching the selector.
622
+ *
623
+ * @param el The parent element.
624
+ * @param selector CSS selector.
625
+ * @return The matching element or null.
626
+ */
627
+ static find(el: HTMLElement, selector: string): HTMLElement | null;
628
+ /**
629
+ * Finds all descendants matching the selector.
630
+ *
631
+ * @param el The parent element.
632
+ * @param selector CSS selector.
633
+ * @return Array of matching elements.
634
+ */
635
+ static findAll(el: HTMLElement, selector: string): HTMLElement[];
636
+ /**
637
+ * Removes all child elements matching a tag from an element.
638
+ * Used for HTML sanitization.
639
+ *
640
+ * @param el The parent element.
641
+ * @param tags Tag names to remove.
642
+ */
643
+ static removeChildrenByTag(el: HTMLElement, ...tags: string[]): void;
644
+ /**
645
+ * Inserts an element after a reference element.
646
+ *
647
+ * @param newElement The element to insert.
648
+ * @param referenceElement The reference element.
649
+ * @return The inserted element.
650
+ */
651
+ static insertAfter(newElement: HTMLElement, referenceElement: HTMLElement): HTMLElement;
652
+ /**
653
+ * Deep clones an object. Replaces $.extend(true, {}, obj).
654
+ *
655
+ * @param obj The object to clone.
656
+ * @return The cloned object.
657
+ */
658
+ static deepClone<T>(obj: T): T;
659
+ }
462
660
  }
463
661
  declare module FintaChart {
662
+ /**
663
+ * Draggable position info passed to callbacks.
664
+ */
665
+ interface IDraggablePosition {
666
+ left: number;
667
+ top: number;
668
+ }
669
+ /**
670
+ * Configuration options for makeDraggable.
671
+ */
672
+ interface IDraggableOptions {
673
+ /** Element used as drag handle. If not set, the element itself is the handle. */
674
+ handle?: HTMLElement | string;
675
+ /** Constrains dragging within the given element, or "window" for viewport. */
676
+ containment?: HTMLElement | string;
677
+ /** Restricts dragging to a single axis: 'x' or 'y'. */
678
+ axis?: 'x' | 'y';
679
+ /** Called when dragging starts. */
680
+ onStart?: () => void;
681
+ /** Called during dragging. */
682
+ onDrag?: (position: IDraggablePosition) => void;
683
+ /** Called when dragging stops. */
684
+ onStop?: (position: IDraggablePosition) => void;
685
+ }
686
+ /**
687
+ * Controller returned by makeDraggable for managing the draggable instance.
688
+ */
689
+ interface IDraggableController {
690
+ /** Destroys the draggable behavior, removing all event listeners. */
691
+ destroy(): void;
692
+ /** Enables or disables dragging. */
693
+ setEnabled(enabled: boolean): void;
694
+ }
695
+ /**
696
+ * Makes an element draggable using native pointer events.
697
+ * Replaces legacy UI .draggable().
698
+ *
699
+ * @param el The element to make draggable.
700
+ * @param options Configuration options.
701
+ * @return A controller for managing the draggable.
702
+ */
703
+ function makeDraggable(el: HTMLElement, options?: IDraggableOptions): IDraggableController;
704
+ }
705
+ declare module FintaChart {
706
+ /**
707
+ * Configuration options for makeResizable.
708
+ */
709
+ interface IResizableOptions {
710
+ /** Direction of resizing: 'horizontal' or 'vertical'. */
711
+ direction: 'horizontal' | 'vertical';
712
+ /** Minimum width in pixels (for horizontal). */
713
+ minWidth?: number;
714
+ /** Minimum height in pixels (for vertical). */
715
+ minHeight?: number;
716
+ /** Container element for boundary constraints. */
717
+ container?: HTMLElement;
718
+ /** Called when resizing starts. */
719
+ onStart?: () => void;
720
+ /** Called during resizing. */
721
+ onResize?: () => void;
722
+ /** Called when resizing stops. */
723
+ onStop?: () => void;
724
+ }
725
+ /**
726
+ * Controller returned by makeResizable for managing the resizable instance.
727
+ */
728
+ interface IResizableController {
729
+ /** Destroys the resizable behavior, removing all event listeners. */
730
+ destroy(): void;
731
+ }
732
+ /**
733
+ * Makes an element resizable by adding drag handles on its edges.
734
+ * Replaces legacy UI .resizable() with custom implementation.
735
+ *
736
+ * @param el The element to make resizable.
737
+ * @param options Configuration options.
738
+ * @return A controller for managing the resizable.
739
+ */
740
+ function makeResizable(el: HTMLElement, options: IResizableOptions): IResizableController;
464
741
  }
465
742
  declare module FintaChart {
466
743
  }
@@ -485,9 +762,6 @@ declare module FintaChart {
485
762
  declare module FintaChart {
486
763
  function createChart(container: HTMLElement, config: IChartConfig): Chart;
487
764
  }
488
- interface JQuery {
489
- FintaChart(config: FintaChart.IChartConfig): FintaChart.Chart;
490
- }
491
765
  declare module FintaChart {
492
766
  /**
493
767
  * Represents string padding options.
@@ -531,15 +805,12 @@ declare module FintaChart {
531
805
  static reverse(str: string): string;
532
806
  }
533
807
  }
534
- interface JQuery {
535
- tcd(): FintaChart.ITcdJQuery;
536
- }
537
808
  declare module FintaChart {
538
809
  /**
539
- * Represents jQuery
810
+ * Represents a chainable DOM helper
540
811
  *
541
812
  */
542
- interface ITcdJQuery {
813
+ interface ITcdDomHelper {
543
814
  /**
544
815
  * Returns shape settings drag panel
545
816
  *
@@ -588,7 +859,7 @@ declare module FintaChart {
588
859
  * @param config
589
860
  * @return
590
861
  */
591
- numericField(config: INumericFieldConfig): JQuery;
862
+ numericField(config: INumericFieldConfig): HTMLElement;
592
863
  /**
593
864
  * Returns scroll bar
594
865
  *
@@ -637,6 +908,10 @@ declare module FintaChart {
637
908
  */
638
909
  waitingBar(chart: Chart): IWaitingBar;
639
910
  }
911
+ /**
912
+ * Standalone native-element factory. Replaces $(el).tcd() pattern.
913
+ */
914
+ function tcd(el: HTMLElement): ITcdDomHelper;
640
915
  }
641
916
  declare module FintaChart {
642
917
  type TDataRowsValue = Date | number;
@@ -2113,7 +2388,7 @@ declare module FintaChart {
2113
2388
  /**
2114
2389
  * Event object
2115
2390
  */
2116
- evt: JQueryEventObject;
2391
+ evt: Event;
2117
2392
  /**
2118
2393
  * Pane
2119
2394
  */
@@ -2987,12 +3262,14 @@ declare module FintaChart {
2987
3262
  private _inFullWindowMode;
2988
3263
  private _scrollbar;
2989
3264
  private _toolbar;
3265
+ private _onFullscreenChanged;
3266
+ private _onFullWindowChanged;
2990
3267
  /**
2991
3268
  * Creates an instance of ChartContainer.
2992
3269
  *
2993
3270
  * @param parent
2994
3271
  */
2995
- constructor(parent: JQuery);
3272
+ constructor(parent: HTMLElement);
2996
3273
  /**
2997
3274
  * Get shape settings drag pane
2998
3275
  */
@@ -3013,7 +3290,7 @@ declare module FintaChart {
3013
3290
  /**
3014
3291
  * Get parent
3015
3292
  */
3016
- get parent(): JQuery;
3293
+ get parent(): HTMLElement;
3017
3294
  /**
3018
3295
  * Get scroll bar
3019
3296
  */
@@ -3061,10 +3338,18 @@ declare module FintaChart {
3061
3338
  * Loads html resource.
3062
3339
  *
3063
3340
  * @param relativePath The path to the resource relative to the root HTML dialogs path.
3064
- * @param clone The flag that indicates whether resulting JQuery element should be cloned.
3065
- * @return Promise which will be resolved with JQuery element.
3341
+ * @param clone The flag that indicates whether resulting element should be cloned.
3342
+ * @return Promise which will be resolved with HTMLElement.
3343
+ */
3344
+ static loadHtml(relativePath: string, clone?: boolean): Promise<HTMLElement>;
3345
+ /**
3346
+ * Loads html resource as native HTMLElement.
3347
+ *
3348
+ * @param relativePath The path to the resource relative to the root HTML dialogs path.
3349
+ * @param clone The flag that indicates whether resulting element should be cloned.
3350
+ * @return Promise which will be resolved with HTMLElement.
3066
3351
  */
3067
- static loadHtml(relativePath: string, clone?: boolean): Promise<JQuery>;
3352
+ static loadHtmlElement(relativePath: string, clone?: boolean): Promise<HTMLElement>;
3068
3353
  private static getUri;
3069
3354
  }
3070
3355
  }
@@ -3085,7 +3370,13 @@ declare module FintaChart {
3085
3370
  * @param chart The chart.
3086
3371
  * @param element The element to localize.
3087
3372
  */
3088
- static localize(chart: Chart, element?: JQuery): Promise<void>;
3373
+ static localize(chart: Chart, element?: HTMLElement): Promise<void>;
3374
+ /**
3375
+ * Localizes an HTMLElement using the internal localization adapter.
3376
+ *
3377
+ * @param element The element to localize.
3378
+ */
3379
+ static localizeElement(element: HTMLElement): void;
3089
3380
  /**
3090
3381
  * @description Localizes text
3091
3382
  * @static
@@ -3126,6 +3417,9 @@ declare module FintaChart {
3126
3417
  private static isInitialized;
3127
3418
  private static init;
3128
3419
  private static prepare;
3420
+ private static _localizeElement;
3421
+ private static _applyLocalization;
3422
+ private static _applyLocalizedValue;
3129
3423
  private static _localize;
3130
3424
  }
3131
3425
  }
@@ -3188,7 +3482,7 @@ declare module FintaChart {
3188
3482
  private static readonly _svgClass;
3189
3483
  private static readonly _svgPerName;
3190
3484
  private static readonly _htmlElementsPerSvgName;
3191
- private static _container;
3485
+ private static _nativeContainer;
3192
3486
  private static _config;
3193
3487
  /**
3194
3488
  * Initializes
@@ -3201,12 +3495,14 @@ declare module FintaChart {
3201
3495
  *
3202
3496
  * @param htmlElement The HTML element.
3203
3497
  */
3204
- static load(htmlElement?: JQuery): void;
3498
+ static load(htmlElement?: HTMLElement): void;
3205
3499
  private static getPath;
3206
3500
  private static getContainer;
3207
3501
  private static subscribe;
3502
+ private static resolveNativeElement;
3208
3503
  private static loadElement;
3209
3504
  private static loadFile;
3505
+ private static sanitizeSvg;
3210
3506
  private static updateElements;
3211
3507
  private static updateElement;
3212
3508
  }
@@ -4302,7 +4598,7 @@ declare module FintaChart {
4302
4598
  /**
4303
4599
  * The parent element.
4304
4600
  */
4305
- parent: JQuery;
4601
+ parent: HTMLElement;
4306
4602
  /**
4307
4603
  * The size of the canvas.
4308
4604
  */
@@ -4313,17 +4609,17 @@ declare module FintaChart {
4313
4609
  *
4314
4610
  */
4315
4611
  class CanvasLayer extends Component {
4316
- private _canvas;
4317
- private _parent;
4612
+ private _canvasEl;
4613
+ private _parentEl;
4318
4614
  private _renderer;
4319
4615
  /**
4320
4616
  * The canvas element.
4321
4617
  */
4322
- get canvas(): JQuery;
4618
+ get canvas(): HTMLCanvasElement;
4323
4619
  /**
4324
4620
  * The parent container.
4325
4621
  */
4326
- get parent(): JQuery;
4622
+ get parent(): HTMLElement;
4327
4623
  /**
4328
4624
  * The renderer.
4329
4625
  */
@@ -4375,7 +4671,7 @@ declare module FintaChart {
4375
4671
  /**
4376
4672
  * The parent html container.
4377
4673
  */
4378
- readonly container: JQuery;
4674
+ readonly container: HTMLElement;
4379
4675
  /**
4380
4676
  * Refreshes component.
4381
4677
  */
@@ -4386,14 +4682,14 @@ declare module FintaChart {
4386
4682
  */
4387
4683
  abstract class HtmlComponent extends VisualComponent implements IHtmlComponent {
4388
4684
  private _container;
4389
- get container(): JQuery;
4685
+ get container(): HTMLElement;
4390
4686
  dispose(): void;
4391
4687
  resize(): void;
4392
4688
  refresh(): void;
4393
4689
  /**
4394
4690
  * Creates html component's container.
4395
4691
  */
4396
- protected abstract createContainer(): JQuery;
4692
+ protected abstract createContainer(): HTMLElement;
4397
4693
  /**
4398
4694
  * Destroy html component's container
4399
4695
  */
@@ -4510,7 +4806,7 @@ declare module FintaChart {
4510
4806
  /**
4511
4807
  * The parent container.
4512
4808
  */
4513
- container: JQuery;
4809
+ container: HTMLElement;
4514
4810
  /**
4515
4811
  * The frame rectangle.
4516
4812
  */
@@ -4522,8 +4818,8 @@ declare module FintaChart {
4522
4818
  abstract class HtmlControl extends Control implements IHtmlControl {
4523
4819
  private _frame;
4524
4820
  private _container;
4525
- get container(): JQuery;
4526
- protected set container(value: JQuery);
4821
+ get container(): HTMLElement;
4822
+ protected set container(value: HTMLElement);
4527
4823
  get frame(): Bounds;
4528
4824
  dispose(): void;
4529
4825
  hitTest(point: IPoint): boolean;
@@ -4533,7 +4829,7 @@ declare module FintaChart {
4533
4829
  *
4534
4830
  * @return Container element.
4535
4831
  */
4536
- protected abstract createContainer(): JQuery;
4832
+ protected abstract createContainer(): HTMLElement;
4537
4833
  /**
4538
4834
  * Removes container element.
4539
4835
  */
@@ -4629,7 +4925,7 @@ declare module FintaChart {
4629
4925
  *
4630
4926
  * @param container
4631
4927
  */
4632
- constructor(container: JQuery);
4928
+ constructor(container: HTMLElement);
4633
4929
  dispose(): void;
4634
4930
  /**
4635
4931
  * Finds SIMPLE Dropdown item
@@ -4662,32 +4958,6 @@ declare module FintaChart {
4662
4958
  private refresh;
4663
4959
  }
4664
4960
  }
4665
- /**
4666
- * Represents Extended JQuery
4667
- */
4668
- interface JQuery {
4669
- /**
4670
- * Extended JQuery numeric field
4671
- *
4672
- * @return Numeric field
4673
- */
4674
- jqNumericField(): JQuery;
4675
- /**
4676
- * Extended JQuery numeric field
4677
- *
4678
- * @param method
4679
- * @param params
4680
- * @return Numeric field
4681
- */
4682
- jqNumericField(method: string, ...params: unknown[]): unknown;
4683
- /**
4684
- * Extended JQuery numeric field
4685
- *
4686
- * @param settings
4687
- * @return Numeric field
4688
- */
4689
- jqNumericField(settings: object): JQuery;
4690
- }
4691
4961
  declare module FintaChart {
4692
4962
  /**
4693
4963
  * Represents Numeric Field Config
@@ -4724,11 +4994,20 @@ declare module FintaChart {
4724
4994
  * @param value
4725
4995
  * @param obj
4726
4996
  */
4727
- onChange(value: number, obj: JQuery): void;
4997
+ onChange(value: number, obj: HTMLInputElement): void;
4728
4998
  }
4729
4999
  class NumericField {
4730
- static getValue(control: JQuery): number;
4731
- static setValue(control: JQuery, value: number): void;
5000
+ /**
5001
+ * Initializes a numeric field on the given HTMLInputElement.
5002
+ */
5003
+ static init(el: HTMLInputElement, options: Partial<INumericFieldConfig>): void;
5004
+ static getValue(control: HTMLElement): number;
5005
+ static setValue(control: HTMLElement, value: number): void;
5006
+ static enable(control: HTMLElement): void;
5007
+ static disable(control: HTMLElement): void;
5008
+ static highlightInvalid(control: HTMLElement): void;
5009
+ static nohighlightInvalid(control: HTMLElement): void;
5010
+ static setBounds(control: HTMLElement, min: number, max: number): void;
4732
5011
  }
4733
5012
  }
4734
5013
  declare module FintaChart {
@@ -4760,7 +5039,7 @@ declare module FintaChart {
4760
5039
  /**
4761
5040
  * Context Menu Config menu container
4762
5041
  */
4763
- menuContainer?: JQuery;
5042
+ menuContainer?: HTMLElement;
4764
5043
  /**
4765
5044
  * Is show Context Menu on click
4766
5045
  */
@@ -4771,7 +5050,7 @@ declare module FintaChart {
4771
5050
  * @param selectedMenu
4772
5051
  * @param isChecked
4773
5052
  */
4774
- onItemSelected(selectedMenu: JQuery, isChecked?: boolean): void;
5053
+ onItemSelected(selectedMenu: HTMLElement, isChecked?: boolean): void;
4775
5054
  /**
4776
5055
  * On Context Menu show
4777
5056
  */
@@ -4782,9 +5061,13 @@ declare module FintaChart {
4782
5061
  *
4783
5062
  */
4784
5063
  class ContextMenu<TConfig extends IContextMenuConfig> implements IDisposable {
4785
- private static Id;
4786
- private _eventSuffix;
4787
5064
  private _isShown;
5065
+ private _docClickHandler;
5066
+ private _docTouchHandler;
5067
+ private _winScrollHandler;
5068
+ private _winResizeHandler;
5069
+ private _bodyMenuOpenHandler;
5070
+ private _menuClickTouchHandler;
4788
5071
  /**
4789
5072
  * Context Menu's config
4790
5073
  */
@@ -4792,14 +5075,14 @@ declare module FintaChart {
4792
5075
  /**
4793
5076
  * Get Context Menu's container
4794
5077
  */
4795
- get container(): JQuery;
5078
+ get container(): HTMLElement;
4796
5079
  /**
4797
5080
  * Creates an instance of ContextMenu.
4798
5081
  *
4799
5082
  * @param config
4800
5083
  * @param targetDomObject
4801
5084
  */
4802
- constructor(config: TConfig, targetDomObject?: JQuery);
5085
+ constructor(config: TConfig, targetDomObject?: HTMLElement);
4803
5086
  dispose(): void;
4804
5087
  /**
4805
5088
  * Hides Context Menu
@@ -4810,7 +5093,7 @@ declare module FintaChart {
4810
5093
  *
4811
5094
  * @param event
4812
5095
  */
4813
- show(event: JQueryEventObject): void;
5096
+ show(event: Event): void;
4814
5097
  private static _getSubMenuPosition;
4815
5098
  private static _toggleSubMenu;
4816
5099
  private calculateMenuPosition;
@@ -4850,7 +5133,7 @@ declare module FintaChart {
4850
5133
  * @param targetDomObject
4851
5134
  * @param config
4852
5135
  */
4853
- constructor(targetDomObject: JQuery, config: IChartContextMenuConfig);
5136
+ constructor(targetDomObject: HTMLElement, config: IChartContextMenuConfig);
4854
5137
  dispose(): void;
4855
5138
  private init;
4856
5139
  private onShow;
@@ -4877,10 +5160,11 @@ declare module FintaChart {
4877
5160
  * @param domObjects
4878
5161
  * @param config
4879
5162
  */
4880
- constructor(domObjects: JQuery, config: Spectrum.Options);
4881
- static get(control: JQuery): string;
4882
- static set(control: JQuery, color: string): void;
4883
- static enable(control: JQuery, enable: boolean): void;
5163
+ constructor(domObjects: HTMLElement, config: Spectrum.Options);
5164
+ static get(control: HTMLElement): string;
5165
+ static set(control: HTMLElement, color: string): void;
5166
+ static hide(control: HTMLElement): void;
5167
+ static enable(control: HTMLElement, enable: boolean): void;
4884
5168
  enable(value?: boolean): void;
4885
5169
  private static initParams;
4886
5170
  private static palette;
@@ -4896,11 +5180,11 @@ declare module FintaChart {
4896
5180
  /**
4897
5181
  * Control Drag Pane Config container
4898
5182
  */
4899
- container?: JQuery;
5183
+ container?: HTMLElement;
4900
5184
  /**
4901
5185
  * Control Drag Pane Config root container
4902
5186
  */
4903
- rootContainer?: JQuery;
5187
+ rootContainer?: HTMLElement;
4904
5188
  }
4905
5189
  /**
4906
5190
  * Provides model of Control Drag Pane
@@ -4910,11 +5194,19 @@ declare module FintaChart {
4910
5194
  /**
4911
5195
  * Control Drag Pane's container
4912
5196
  */
4913
- protected container: JQuery;
5197
+ protected container: HTMLElement;
4914
5198
  /**
4915
5199
  * Control Drag Pane's root container
4916
5200
  */
4917
- protected rootContainer: JQuery;
5201
+ protected rootContainer: HTMLElement;
5202
+ /**
5203
+ * Draggable controller instance
5204
+ */
5205
+ private _draggableController;
5206
+ /**
5207
+ * Bound resize handler reference for cleanup
5208
+ */
5209
+ private _resizeHandler;
4918
5210
  get visible(): boolean;
4919
5211
  /**
4920
5212
  * Creates an instance of DragPane.
@@ -5163,7 +5455,7 @@ declare module FintaChart {
5163
5455
  *
5164
5456
  * @param selector
5165
5457
  */
5166
- constructor(selector: JQuery);
5458
+ constructor(selector: HTMLElement);
5167
5459
  /**
5168
5460
  * Retrieves selected Text Style Selector state
5169
5461
  *
@@ -5242,7 +5534,7 @@ declare module FintaChart {
5242
5534
  * @param rootContainer
5243
5535
  * @param config
5244
5536
  */
5245
- constructor(rootContainer: JQuery, config: IInstrumentSearchConfig);
5537
+ constructor(rootContainer: HTMLElement, config: IInstrumentSearchConfig);
5246
5538
  /**
5247
5539
  * Retrieves Instrument Search's by symbol
5248
5540
  *
@@ -5263,6 +5555,7 @@ declare module FintaChart {
5263
5555
  set(instrument?: IInstrument): void;
5264
5556
  enable(): void;
5265
5557
  disable(): void;
5558
+ private static escapeHtml;
5266
5559
  private static generateListElement;
5267
5560
  private generateExchangeFilters;
5268
5561
  private generateSearchResults;
@@ -5454,7 +5747,7 @@ declare module FintaChart {
5454
5747
  * @param rootElement
5455
5748
  * @param config
5456
5749
  */
5457
- constructor(rootElement: JQuery, config: ITemplatesConfig);
5750
+ constructor(rootElement: HTMLElement, config: ITemplatesConfig);
5458
5751
  /**
5459
5752
  * Set Templates Manager's new chart
5460
5753
  */
@@ -5504,13 +5797,17 @@ declare module FintaChart {
5504
5797
  private _hasCustomPicker;
5505
5798
  private _isActive;
5506
5799
  private _last;
5800
+ private _windowScrollHandler;
5801
+ private _windowResizeHandler;
5802
+ private _bodyClickHandler;
5803
+ private _bodyTouchHandler;
5507
5804
  /**
5508
5805
  * Creates an instance of TimeFramePicker.
5509
5806
  *
5510
5807
  * @param rootContainer
5511
5808
  * @param config
5512
5809
  */
5513
- constructor(rootContainer: JQuery, config: ITimeFramePickerConfig);
5810
+ constructor(rootContainer: HTMLElement, config: ITimeFramePickerConfig);
5514
5811
  /**
5515
5812
  * Get Time Frame Picker's chart
5516
5813
  */
@@ -5553,7 +5850,7 @@ declare module FintaChart {
5553
5850
  /**
5554
5851
  * Toolbar Config parent
5555
5852
  */
5556
- parent: JQuery;
5853
+ parent: HTMLElement;
5557
5854
  /**
5558
5855
  * Is show view mode
5559
5856
  */
@@ -5568,6 +5865,7 @@ declare module FintaChart {
5568
5865
  private _container;
5569
5866
  private _controls;
5570
5867
  private _draggableElements;
5868
+ private _draggableControllers;
5571
5869
  private _leftToolbarScroll;
5572
5870
  private _rootContainer;
5573
5871
  private _toolbarScroll;
@@ -5594,13 +5892,13 @@ declare module FintaChart {
5594
5892
  /**
5595
5893
  * Get Toolbar's container
5596
5894
  */
5597
- get container(): JQuery;
5895
+ get container(): HTMLElement;
5598
5896
  /**
5599
5897
  * Toolbar's activate button
5600
5898
  *
5601
5899
  * @param draggable
5602
5900
  */
5603
- activateButton(draggable: JQuery): void;
5901
+ activateButton(draggable: HTMLElement): void;
5604
5902
  getBottomToolbarRightSide(): HTMLElement;
5605
5903
  /**
5606
5904
  * Activates Toolbar's draggable by it self
@@ -5616,7 +5914,7 @@ declare module FintaChart {
5616
5914
  *
5617
5915
  * @param container
5618
5916
  */
5619
- prependTo(container: JQuery): void;
5917
+ prependTo(container: HTMLElement): void;
5620
5918
  /**
5621
5919
  * Shows Toolbar's supported time frames
5622
5920
  */
@@ -5748,13 +6046,14 @@ declare module FintaChart {
5748
6046
  private _itemsContainer;
5749
6047
  private _itemsWrapper;
5750
6048
  private _isDisabled;
6049
+ private _hoverCloseTimer;
5751
6050
  /**
5752
6051
  * Creates an instance of ToolbarDropDownButton.
5753
6052
  *
5754
6053
  * @param rootElement
5755
6054
  * @param config
5756
6055
  */
5757
- constructor(rootElement: JQuery, config: IToolbarDropDownButtonConfig);
6056
+ constructor(rootElement: HTMLElement, config: IToolbarDropDownButtonConfig);
5758
6057
  /**
5759
6058
  * Get Toolbar Drop Down Button's chart
5760
6059
  */
@@ -5766,7 +6065,7 @@ declare module FintaChart {
5766
6065
  * @param templateDropdown
5767
6066
  * @param chart
5768
6067
  */
5769
- alignDropdown(templateDropdown: JQuery, chart: Chart): void;
6068
+ alignDropdown(templateDropdown: HTMLElement, chart: Chart): void;
5770
6069
  /**
5771
6070
  * Activates Toolbar Drop Down Button
5772
6071
  */
@@ -5788,9 +6087,11 @@ declare module FintaChart {
5788
6087
  private activeIcon;
5789
6088
  private deactivateButton;
5790
6089
  private fireFromHead;
6090
+ private scheduleHoverClose;
5791
6091
  private hideDropDown;
5792
6092
  private init;
5793
6093
  private setValue;
6094
+ private showDropDownForHover;
5794
6095
  private showDropDown;
5795
6096
  private toggleButton;
5796
6097
  private toggleDropDown;
@@ -7031,7 +7332,7 @@ declare module FintaChart {
7031
7332
  * @param crossHair
7032
7333
  */
7033
7334
  constructor(crossHair?: CrossHair);
7034
- protected createContainer(): JQuery;
7335
+ protected createContainer(): HTMLElement;
7035
7336
  applyTheme(): void;
7036
7337
  resize(): void;
7037
7338
  refresh(): void;
@@ -7096,11 +7397,11 @@ declare module FintaChart {
7096
7397
  *
7097
7398
  * @param container
7098
7399
  */
7099
- constructor(container: JQuery);
7400
+ constructor(container: HTMLElement);
7100
7401
  /**
7101
7402
  * Get Keyboard Setting's container
7102
7403
  */
7103
- set container(container: JQuery);
7404
+ set container(container: HTMLElement);
7104
7405
  /**
7105
7406
  * Initializes Keyboard Settings
7106
7407
  *
@@ -7115,6 +7416,7 @@ declare module FintaChart {
7115
7416
  * Set default Keyboard Setting
7116
7417
  */
7117
7418
  resetToDefaults(): void;
7419
+ private _keydownHandler;
7118
7420
  /**
7119
7421
  * Subscribes
7120
7422
  */
@@ -7134,6 +7436,15 @@ declare module FintaChart {
7134
7436
  ALT: number;
7135
7437
  ESC: number;
7136
7438
  };
7439
+ /** Minimal event shape needed by hotkey matching. */
7440
+ interface IKeyLike {
7441
+ ctrlKey?: boolean;
7442
+ metaKey?: boolean;
7443
+ altKey?: boolean;
7444
+ shiftKey?: boolean;
7445
+ keyCode?: number;
7446
+ type: string;
7447
+ }
7137
7448
  /**
7138
7449
  * Describes all the actions to hotkeys in the chart.
7139
7450
  * Also lead to description translations
@@ -7215,7 +7526,7 @@ declare module FintaChart {
7215
7526
  * @param chart The chart.
7216
7527
  * @param event
7217
7528
  */
7218
- action?(chart: Chart, event?: JQueryEventObject): void;
7529
+ action?(chart: Chart, event?: KeyboardEvent): void;
7219
7530
  }
7220
7531
  interface IHotkeysHandler extends IChartComponent, IStateable<HotkeyCombination[]> {
7221
7532
  /**
@@ -7247,15 +7558,16 @@ declare module FintaChart {
7247
7558
  *
7248
7559
  * @param event
7249
7560
  */
7250
- onEvent(event: JQueryEventObject): void;
7561
+ onEvent(event: KeyboardEvent): void;
7251
7562
  }
7252
7563
  /**
7253
7564
  * Represents hotkeys handler.
7254
7565
  */
7255
7566
  class HotkeysHandler extends ChartComponent implements IHotkeysHandler {
7256
- lastEvent: JQueryEventObject;
7567
+ lastEvent: IKeyLike;
7257
7568
  lastEventTime: number;
7258
7569
  private _hotkeys;
7570
+ private _boundOnEvent;
7259
7571
  private readonly _eventDelay;
7260
7572
  /**
7261
7573
  * Creates an instance of [[HotkeysHandler]].
@@ -7263,16 +7575,16 @@ declare module FintaChart {
7263
7575
  * @param config The configuration.
7264
7576
  */
7265
7577
  constructor(config: IChartComponentConfig);
7266
- onEvent(event: JQueryEventObject): void;
7267
- isEventSimultaneous(event: JQueryEventObject): boolean;
7578
+ onEvent(event: KeyboardEvent): void;
7579
+ isEventSimultaneous(event: IKeyLike): boolean;
7268
7580
  resetToDefaults(): void;
7269
7581
  all(): HotkeyCombination[];
7270
7582
  findById(id: ChartHotkeyType): HotkeyCombination;
7271
7583
  add(hotkey: HotkeyCombination): boolean;
7272
7584
  saveState(): HotkeyCombination[];
7273
7585
  restoreState(state: HotkeyCombination[]): void;
7274
- static eventMatchHotkey<T>(hotkey: HotkeyCombination<T>, event: JQueryEventObject): boolean;
7275
- static getEventCodeCombination(event: JQueryEventObject): string;
7586
+ static eventMatchHotkey<T>(hotkey: HotkeyCombination<T>, event: IKeyLike): boolean;
7587
+ static getEventCodeCombination(event: IKeyLike): string;
7276
7588
  static onCopySnapshotToClipboard(chart: Chart): void;
7277
7589
  static onTogglePercentScale(chart: Chart): void;
7278
7590
  static onMoveFurtherLeft(chart: Chart): void;
@@ -7290,8 +7602,8 @@ declare module FintaChart {
7290
7602
  static onDelete(chart: Chart): void;
7291
7603
  static onUndo(chart: Chart): void;
7292
7604
  static onRedo(chart: Chart): void;
7293
- static onTimeFrameChange(chart: Chart, event: JQueryEventObject): void;
7294
- static onInstrumentChange(chart: Chart, event: JQueryEventObject): void;
7605
+ static onTimeFrameChange(chart: Chart, event: KeyboardEvent): void;
7606
+ static onInstrumentChange(chart: Chart, event: KeyboardEvent): void;
7295
7607
  static onHideInstrumentChange(chart: Chart): void;
7296
7608
  static onOpenIndicators(chart: Chart): void;
7297
7609
  static onToggleLogarithmicScale(chart: Chart): void;
@@ -8280,14 +8592,14 @@ declare module FintaChart {
8280
8592
  * @param name
8281
8593
  * @param container
8282
8594
  */
8283
- protected updateTitle(name: string, container: JQuery): Promise<void>;
8595
+ protected updateTitle(name: string, container: HTMLElement): Promise<void>;
8284
8596
  /**
8285
8597
  * Set localization attribute
8286
8598
  *
8287
8599
  * @param container
8288
8600
  * @param key
8289
8601
  */
8290
- protected updateTitleAttribute(container: JQuery, key: string): Promise<void>;
8602
+ protected updateTitleAttribute(container: HTMLElement, key: string): Promise<void>;
8291
8603
  /**
8292
8604
  * Shift to the future data rows
8293
8605
  *
@@ -9107,7 +9419,7 @@ declare module FintaChart {
9107
9419
  private _supportedTimeFrames;
9108
9420
  private _indicator;
9109
9421
  constructor(indicator: Indicator, initialValue: boolean);
9110
- createHtmlElement(): Promise<JQuery>;
9422
+ createHtmlElement(): Promise<HTMLElement>;
9111
9423
  values(): Record<string, unknown>;
9112
9424
  onLocaleChanged(): Promise<void>;
9113
9425
  private static getTimeFrameLocalizationKey;
@@ -12087,22 +12399,12 @@ declare module FintaChart {
12087
12399
  * @param targetDomObject
12088
12400
  * @param config
12089
12401
  */
12090
- constructor(targetDomObject: JQuery, config: IIndicatorContextMenuConfig);
12402
+ constructor(targetDomObject: HTMLElement, config: IIndicatorContextMenuConfig);
12091
12403
  private applyText;
12092
12404
  private initMenu;
12093
12405
  private static toggleClass;
12094
12406
  }
12095
12407
  }
12096
- /**
12097
- * @ignore
12098
- */
12099
- declare type ISortHandlerFunction = (left: HTMLElement, right: HTMLElement) => number;
12100
- /**
12101
- * @ignore
12102
- */
12103
- interface JQuery {
12104
- sort(fn: ISortHandlerFunction): number;
12105
- }
12106
12408
  declare module FintaChart {
12107
12409
  }
12108
12410
  declare module FintaChart {
@@ -12207,11 +12509,9 @@ declare module FintaChart {
12207
12509
  private _element;
12208
12510
  private _inp_search;
12209
12511
  private _resultContainer;
12210
- private _searchDelayTimer;
12211
12512
  private _currentText;
12212
12513
  private _noResults;
12213
12514
  private _resultsCount;
12214
- private _inputValueOnInit;
12215
12515
  private _selectedFilters;
12216
12516
  private _page;
12217
12517
  private _size;
@@ -12583,7 +12883,7 @@ declare module FintaChart {
12583
12883
  *
12584
12884
  * @param visibility
12585
12885
  */
12586
- toggleVisibility(visibility: JQuery): void;
12886
+ toggleVisibility(visibility: HTMLElement): void;
12587
12887
  /**
12588
12888
  * Refreshes Instrument Compare Settings
12589
12889
  */
@@ -12646,7 +12946,7 @@ declare module FintaChart {
12646
12946
  * @param targetDomObject
12647
12947
  * @param config
12648
12948
  */
12649
- constructor(targetDomObject: JQuery, config: ICompareInstrumentContextMenuConfig);
12949
+ constructor(targetDomObject: HTMLElement, config: ICompareInstrumentContextMenuConfig);
12650
12950
  private init;
12651
12951
  private static toggleClass;
12652
12952
  }
@@ -13110,7 +13410,7 @@ declare module FintaChart {
13110
13410
  cancelAutoScaling(): void;
13111
13411
  verticalAxisLabelMaxWidth(verticalAxis: VerticalAxis): number;
13112
13412
  applyLogoWatermark(): void;
13113
- protected createContainer(): JQuery;
13413
+ protected createContainer(): HTMLElement;
13114
13414
  protected initMotionEvents(): MotionEventArray;
13115
13415
  /**
13116
13416
  * Subscribes
@@ -13525,7 +13825,7 @@ declare module FintaChart {
13525
13825
  * @return
13526
13826
  */
13527
13827
  totalPanesHeight(): number;
13528
- protected createContainer(): JQuery;
13828
+ protected createContainer(): HTMLElement;
13529
13829
  protected initMotionEvents(): MotionEventArray;
13530
13830
  protected subscribe(): void;
13531
13831
  protected unsubscribe(): void;
@@ -13582,7 +13882,7 @@ declare module FintaChart {
13582
13882
  invalidateTheme(): void;
13583
13883
  hitTest(point: IPoint): boolean;
13584
13884
  resize(frame: Bounds): void;
13585
- protected createContainer(): JQuery;
13885
+ protected createContainer(): HTMLElement;
13586
13886
  protected initMotionEvents(): MotionEventArray;
13587
13887
  private applyTheme;
13588
13888
  private onMouseHover;
@@ -14114,7 +14414,7 @@ declare module FintaChart {
14114
14414
  * Provides model of Pane Watermark
14115
14415
  */
14116
14416
  abstract class PaneWatermark extends PaneHtmlComponent {
14117
- protected createContainer(): JQuery;
14417
+ protected createContainer(): HTMLElement;
14118
14418
  }
14119
14419
  }
14120
14420
  declare module FintaChart {
@@ -14149,7 +14449,7 @@ declare module FintaChart {
14149
14449
  applyText(): void;
14150
14450
  applyTheme(): void;
14151
14451
  refresh(): void;
14152
- protected createContainer(): JQuery;
14452
+ protected createContainer(): HTMLElement;
14153
14453
  protected subscribe(): void;
14154
14454
  protected unsubscribe(): void;
14155
14455
  }
@@ -14245,7 +14545,7 @@ declare module FintaChart {
14245
14545
  * @category Market events
14246
14546
  */
14247
14547
  interface IMarketEventPopupBuilder {
14248
- createPopupElement(event: IMarketEvent, chart: Chart): Promise<JQuery>;
14548
+ createPopupElement(event: IMarketEvent, chart: Chart): Promise<HTMLElement>;
14249
14549
  }
14250
14550
  }
14251
14551
  declare module FintaChart {
@@ -14533,6 +14833,7 @@ declare module FintaChart {
14533
14833
  class LocalStorageChartStateHandler extends ChartComponent implements IChartStateHandler {
14534
14834
  autoLoad: boolean;
14535
14835
  autoSave: boolean;
14836
+ private _boundOnBeforeUnload;
14536
14837
  /**
14537
14838
  * Creates an instance of [[LocalStorageChartStateHandler]].
14538
14839
  *
@@ -14545,7 +14846,6 @@ declare module FintaChart {
14545
14846
  protected subscribe(): void;
14546
14847
  protected unsubscribe(): void;
14547
14848
  private static makeKey;
14548
- private static onBeforeUnloadWindow;
14549
14849
  private autoSaveState;
14550
14850
  }
14551
14851
  }
@@ -14586,7 +14886,7 @@ declare module FintaChart {
14586
14886
  /**
14587
14887
  * Scrollbar Config parent
14588
14888
  */
14589
- parent: JQuery;
14889
+ parent: HTMLElement;
14590
14890
  }
14591
14891
  /**
14592
14892
  * Provides model of Scrollbar
@@ -14598,6 +14898,8 @@ declare module FintaChart {
14598
14898
  private _scrollingPaneMinWidth;
14599
14899
  private _scrollingPaneWidth;
14600
14900
  private _isLocked;
14901
+ private _draggableController;
14902
+ private _resizableController;
14601
14903
  /**
14602
14904
  * The parent chart.
14603
14905
  */
@@ -14622,7 +14924,7 @@ declare module FintaChart {
14622
14924
  *
14623
14925
  * @param container The container to append scrollbar to.
14624
14926
  */
14625
- appendTo(container: JQuery): void;
14927
+ appendTo(container: HTMLElement): void;
14626
14928
  lock(): void;
14627
14929
  private init;
14628
14930
  animateScrollingToLastBar(): void;
@@ -14738,6 +15040,8 @@ declare module FintaChart {
14738
15040
  private _mode;
14739
15041
  private _preFullWindowSize;
14740
15042
  private _prevMode;
15043
+ private _boundOnFullScreenChanged;
15044
+ private _boundOnWindowResize;
14741
15045
  constructor(config: IChartComponentConfig);
14742
15046
  private get isInFullWindowMode();
14743
15047
  get mode(): WindowMode;
@@ -14751,8 +15055,6 @@ declare module FintaChart {
14751
15055
  private enterFullScreen;
14752
15056
  private exitFullScreen;
14753
15057
  private onFullScreenChange;
14754
- private static onFullScreenChanged;
14755
- private static onWindowResize;
14756
15058
  private static updateDropDownItemIcon;
14757
15059
  private updateDropdown;
14758
15060
  private toggleWindowMode;
@@ -16218,7 +16520,7 @@ declare module FintaChart {
16218
16520
  */
16219
16521
  layoutPane(frameInChart: Bounds, isTopPane: boolean): Bounds;
16220
16522
  lock(): void;
16221
- protected createContainer(): JQuery;
16523
+ protected createContainer(): HTMLElement;
16222
16524
  protected initMotionEvents(): MotionEventArray;
16223
16525
  private clientHeight;
16224
16526
  private onDoubleClick;
@@ -17173,7 +17475,7 @@ declare module FintaChart {
17173
17475
  */
17174
17476
  getWidth(): number;
17175
17477
  resize(frame: Bounds, isLeftPane?: boolean): Bounds;
17176
- protected createContainer(): JQuery;
17478
+ protected createContainer(): HTMLElement;
17177
17479
  }
17178
17480
  }
17179
17481
  declare module FintaChart {
@@ -18926,6 +19228,7 @@ declare module FintaChart {
18926
19228
  * @category Shapes
18927
19229
  */
18928
19230
  abstract class MultiPointShape extends Shape {
19231
+ private _enterPressHandler;
18929
19232
  constructor(config: IShapeConfig);
18930
19233
  dispose(): void;
18931
19234
  /**
@@ -20687,6 +20990,7 @@ declare module FintaChart {
20687
20990
  private _tabItemsContainer;
20688
20991
  private _tabPanesContainer;
20689
20992
  private _lineColorInput;
20993
+ private _lineColorPicker;
20690
20994
  private _lineStyleInput;
20691
20995
  private _lineWidthInput;
20692
20996
  private _buyColorInput;
@@ -20718,7 +21022,7 @@ declare module FintaChart {
20718
21022
  private _input_stopPriceHTMLObj;
20719
21023
  private _input_entryPriceHTMLObj;
20720
21024
  private _visibilityConfig;
20721
- constructor(container: JQuery);
21025
+ constructor(container: HTMLElement);
20722
21026
  show(config: IPositionShapeSettingsConfig): void;
20723
21027
  hide(): void;
20724
21028
  /**
@@ -21374,7 +21678,7 @@ declare module FintaChart {
21374
21678
  * @param config The context menu configuration.
21375
21679
  * @param targetDomObject The target DOM element.
21376
21680
  */
21377
- constructor(config: IShapeContextMenu, targetDomObject?: JQuery);
21681
+ constructor(config: IShapeContextMenu, targetDomObject?: HTMLElement);
21378
21682
  }
21379
21683
  }
21380
21684
  declare module FintaChart {
@@ -21388,14 +21692,16 @@ declare module FintaChart {
21388
21692
  }
21389
21693
  class ShapeTemplateSettings {
21390
21694
  private _container;
21695
+ private _initList;
21391
21696
  private _chart;
21392
21697
  private _selectedShape;
21393
21698
  private _currentListTemplates;
21394
21699
  private _setExternalValues;
21700
+ private _bodyClickHandler;
21395
21701
  set selectedShape(shape: Shape | null);
21396
21702
  get selectedShape(): Shape | null;
21397
21703
  get selectedShapeType(): string;
21398
- constructor(container: JQuery, chart: Chart, setValues: (key?: string) => void);
21704
+ constructor(container: HTMLElement, chart: Chart, setValues: (key?: string) => void);
21399
21705
  private init;
21400
21706
  private generateList;
21401
21707
  deleteTemplate(key: string): void;
@@ -21474,6 +21780,7 @@ declare module FintaChart {
21474
21780
  private generateLockItem;
21475
21781
  private generatePaneContainer;
21476
21782
  private generatePaneItem;
21783
+ private appendChildrenFrom;
21477
21784
  private generateSettingsItem;
21478
21785
  private generateSizeItem;
21479
21786
  private generateStickItem;
@@ -21482,6 +21789,7 @@ declare module FintaChart {
21482
21789
  private applyThemeChanges;
21483
21790
  private onChartChanged;
21484
21791
  private handleUIEvents;
21792
+ private onContainerClick;
21485
21793
  private hideAllPaneItems;
21486
21794
  private init;
21487
21795
  private initControls;
@@ -22611,10 +22919,10 @@ declare module FintaChart {
22611
22919
  * @constructor
22612
22920
  * @param {Chart} chart
22613
22921
  * @param {any} config
22614
- * @param {JQuery} [targetDomObject]
22922
+ * @param {HTMLElement} [targetDomObject]
22615
22923
  * @memberof TradingContextMenu
22616
22924
  */
22617
- constructor(chart: Chart, config: any, targetDomObject?: JQuery);
22925
+ constructor(chart: Chart, config: any, targetDomObject?: HTMLElement);
22618
22926
  _calculatePrices(event: IWindowEvent, scaleCoordinateMapper: ScaleCoordinateMapper): void;
22619
22927
  private _addIndicatorAlertMenuItem;
22620
22928
  getMenuList(): void;
@@ -22708,7 +23016,6 @@ declare module FintaChart {
22708
23016
  get removeButton(): Button;
22709
23017
  set removeButton(value: Button);
22710
23018
  private _closeBtnHover;
22711
- private _elementPopup;
22712
23019
  private _isShownPopup;
22713
23020
  constructor(config: IAlertLabelConfig);
22714
23021
  protected _handleMotionEventPencilDevice(gesture: MoveMotionEvent, event: IWindowEvent): boolean;
@@ -22834,15 +23141,6 @@ declare module FintaChart {
22834
23141
  private _drawAlertLine;
22835
23142
  }
22836
23143
  }
22837
- /**
22838
- * @ignore
22839
- */
22840
- interface JQueryEventObject {
22841
- /**
22842
- * Converted JQuery to HTMLElement
22843
- */
22844
- toElement: HTMLElement;
22845
- }
22846
23144
  declare module FintaChart {
22847
23145
  interface IChartObject {
22848
23146
  readonly type?: string;
@@ -22875,9 +23173,11 @@ declare module FintaChart {
22875
23173
  */
22876
23174
  barsCount?: number;
22877
23175
  /**
22878
- * Chart container
23176
+ * Chart container — either an already-resolved HTMLElement, or a CSS
23177
+ * selector string (for parity with the legacy jQuery-era API that the
23178
+ * HTML examples rely on: `container: '#chartContainer'`).
22879
23179
  */
22880
- container?: HTMLElement;
23180
+ container?: HTMLElement | string;
22881
23181
  /**
22882
23182
  * Cross hair type
22883
23183
  */
@@ -23302,7 +23602,7 @@ declare module FintaChart {
23302
23602
  hoveredObject: IChartObject;
23303
23603
  isMoving: boolean;
23304
23604
  _suppressMeasureTool: boolean;
23305
- multiChartRootContainer: JQuery;
23605
+ multiChartRootContainer: HTMLElement;
23306
23606
  preventMouseEvents: boolean;
23307
23607
  selectedObject: SelectedObject;
23308
23608
  showShapeTooltips: boolean;
@@ -23338,6 +23638,9 @@ declare module FintaChart {
23338
23638
  private _options;
23339
23639
  private _panesFrame;
23340
23640
  private _rootDiv;
23641
+ private _boundMouseEvents;
23642
+ private _boundOnLocalize;
23643
+ private _subscribedEvents;
23341
23644
  private _verticalScales;
23342
23645
  private _state;
23343
23646
  private _timeFrame;
@@ -23470,10 +23773,14 @@ declare module FintaChart {
23470
23773
  * Set chart default hot keys
23471
23774
  */
23472
23775
  set defaultHotkeys(combinations: HotkeyCombination[]);
23776
+ /**
23777
+ * Get chart container element (native)
23778
+ */
23779
+ get containerEl(): HTMLElement;
23473
23780
  /**
23474
23781
  * Get chart container
23475
23782
  */
23476
- get container(): JQuery;
23783
+ get container(): HTMLElement;
23477
23784
  /**
23478
23785
  * Get chart cross hair
23479
23786
  */
@@ -23595,10 +23902,14 @@ declare module FintaChart {
23595
23902
  * Get chart replay mode manager
23596
23903
  */
23597
23904
  get replayMode(): ReplayModeManager;
23905
+ /**
23906
+ * Get chart root div element (native)
23907
+ */
23908
+ get rootDivEl(): HTMLElement;
23598
23909
  /**
23599
23910
  * Get chart root div
23600
23911
  */
23601
- get rootDiv(): JQuery;
23912
+ get rootDiv(): HTMLElement;
23602
23913
  /**
23603
23914
  * Get chart horizontal scale
23604
23915
  */
@@ -23726,7 +24037,7 @@ declare module FintaChart {
23726
24037
  * @param event
23727
24038
  * @return Is event handled
23728
24039
  */
23729
- onMouseEvents(event: JQueryEventObject): boolean;
24040
+ onMouseEvents(event: Event): boolean;
23730
24041
  /**
23731
24042
  * Scrolling chart to real time arrow
23732
24043
  */
@@ -23942,11 +24253,11 @@ declare module FintaChart {
23942
24253
  restoreState(state: string | IChartState, preserveObjects?: boolean, toDefault?: boolean): void;
23943
24254
  restoreVisibleRange(recordsState: IRecordsState): void;
23944
24255
  /**
23945
- * Localizes JQuery element
24256
+ * Localizes target element
23946
24257
  *
23947
24258
  * @param element
23948
24259
  */
23949
- localize(element?: JQuery): void;
24260
+ localize(element?: HTMLElement): void;
23950
24261
  /**
23951
24262
  * Localizes text
23952
24263
  *