tickup 1.0.34 → 1.0.37

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 (33) hide show
  1. package/README.md +52 -31
  2. package/dist/components/Canvas/ChartCanvas.d.ts +0 -2
  3. package/dist/components/Canvas/TickUpStage.d.ts +1 -1
  4. package/dist/hooks/useChartData.d.ts +8 -2
  5. package/dist/tickup-full.cjs.js +7 -4
  6. package/dist/tickup-full.cjs.js.map +1 -1
  7. package/dist/tickup-full.es.js +91 -88
  8. package/dist/tickup-full.es.js.map +1 -1
  9. package/dist/tickup.cjs.js +6 -3
  10. package/dist/tickup.cjs.js.map +1 -1
  11. package/dist/tickup.es.js +86 -83
  12. package/dist/tickup.es.js.map +1 -1
  13. package/documentation/00-getting-started.md +130 -0
  14. package/documentation/01-glossary.md +53 -33
  15. package/documentation/01-introduction.md +39 -7
  16. package/documentation/02-installation.md +16 -14
  17. package/documentation/03-quick-start.md +13 -21
  18. package/documentation/04-products-and-layout.md +10 -16
  19. package/documentation/05-props-and-chart-options.md +41 -51
  20. package/documentation/06-imperative-api.md +40 -66
  21. package/documentation/07-data-and-live-updates.md +40 -28
  22. package/documentation/08-drawings-and-shapes.md +30 -76
  23. package/documentation/09-settings-modal.md +17 -26
  24. package/documentation/10-toolbar-and-interactions.md +80 -49
  25. package/documentation/11-exports-and-advanced.md +48 -106
  26. package/documentation/12-overlays-and-indicators.md +27 -28
  27. package/documentation/13-internationalization-and-axes.md +23 -33
  28. package/documentation/14-legal-and-policies.md +13 -15
  29. package/documentation/16-api-reference.md +422 -0
  30. package/documentation/17-interval-schema-and-debugging.md +86 -0
  31. package/documentation/18-comparison-showcase.md +56 -0
  32. package/documentation/README.md +48 -30
  33. package/package.json +3 -2
package/README.md CHANGED
@@ -6,43 +6,44 @@
6
6
  [![License](https://img.shields.io/badge/license-MIT-yellow.svg)](https://github.com/BARDAMRI/tickup-charts/blob/main/LICENSE)
7
7
  [![Bundle Size](https://img.shields.io/bundlephobia/minzip/tickup)](https://bundlephobia.com/package/tickup)
8
8
 
9
- High-performance, canvas-based financial charting engine for React.
9
+ ## Standard Edition vs TickUp Prime (Pro)
10
10
 
11
- ![TickUp Interaction Demo](https://raw.githubusercontent.com/BARDAMRI/tickup-charts/main/assets/showcase/interaction-demo.gif)
11
+ | | **TickUp Core (Standard Edition)** | **TickUp Prime (Pro)** |
12
+ | :--- | :--- | :--- |
13
+ | **Rendering** | HTML5 Canvas 2D | WebGL 2.0 |
14
+ | **Live updates** | 1 Hz (1 second) throttling | ~60 FPS pipeline |
15
+ | **History depth** | Up to **5,000** candles (generous Standard cap) | Unlimited (product-dependent) |
16
+ | **Indicators** | Up to **3** overlays | Unlimited |
17
+ | **Advanced UX** | — | Magnetic snapping, VWAP Pro, premium visuals |
18
+ | **License** | MIT (this repo) | Commercial |
12
19
 
13
- ## Feature Highlights
20
+ TickUp **Core** is the MIT **Standard Edition**: a production-quality charting stack for **dashboards**, **internal tools**, and **simple market UIs**. It uses a **generous but limited** history window (currently **5,000** candles) so performance stays predictable while Prime remains the path for boundless scale.
14
21
 
15
- - Canvas 2D rendering optimized for smooth pan/zoom and large data streams.
16
- - Built-in indicators and overlays for practical market analysis workflows.
17
- - RTL-ready chart interfaces for multilingual financial products.
18
- - TypeScript-first API with imperative controls for advanced integrations.
22
+ **Power users** and **trading-grade products** should evaluate **[TickUp Prime](https://github.com/BARDAMRI/tickup-prime)** for WebGL throughput, deep history, and professional interaction tooling. Try it live in the **[Prime Showcase](https://bardamri.github.io/tickup-charts/)**.
19
23
 
20
- ## TickUp Lite (Core) vs TickUp Prime
24
+ ![TickUp Interaction Demo](https://raw.githubusercontent.com/BARDAMRI/tickup-charts/main/assets/showcase/interaction-demo.gif)
21
25
 
22
- | Feature | Standard (MIT) | Prime (Pro) |
23
- | :--- | :--- | :--- |
24
- | Engine | ✅ High-Speed Canvas 2D | 🚀 Ultra-Low Latency Rendering |
25
- | Visuals | ✅ Standard Financial Styles | 💎 Neon Rendering Engine |
26
- | Indicators | ✅ Core Indicator Set | 💎 Advanced Indicators (Fibonacci, Elliott) |
27
- | Localization | ✅ LTR Support | 🚀 Full RTL + Professional i18n Workflows |
28
- | License | ✅ MIT Open Source | 💎 Commercial License |
26
+ ## What you get in Standard Edition
29
27
 
30
- ## Prime Evaluation State
28
+ - Canvas 2D OHLCV charts (candlestick, line, area, bar) with pan, zoom, crosshair, and drawings.
29
+ - TypeScript-first APIs and an imperative ref for live data and snapshots.
30
+ - **Standard Tier guardrails** built into the library: **5,000-bar** series cap, **1 Hz** live-update throttling (unless you use the licensed Prime shell path), and **three** simultaneous overlay indicators—with clear in-app messaging when a limit applies.
31
+ - “**Powered by TickUp**” attribution enforced in Standard layouts (visibility guarded in the host).
31
32
 
32
- When you run the Prime tier without an active license key, TickUp stays fully interactive for evaluation but clearly marks the session:
33
+ ## Why upgrade to Prime?
33
34
 
34
- - An **Evaluation** badge appears in the Prime shell.
35
- - The Prime view keeps a visible evaluation/watermark treatment until a valid key is applied.
35
+ - You need **more than 5,000** bars, **faster** than 1 Hz updates, or **more than three** studies without caps.
36
+ - You want **WebGL**-class density and Prime-only interaction and analysis features.
36
37
 
37
- This makes demos easy while keeping production licensing explicit.
38
+ ## How to upgrade
38
39
 
39
- ## How to Upgrade
40
+ 1. Read the **[TickUp Prime documentation](https://github.com/BARDAMRI/tickup-prime)**.
41
+ 2. Explore the **[Prime Showcase](https://bardamri.github.io/tickup-charts/)**.
42
+ 3. Use the **[Prime repository](https://github.com/BARDAMRI/tickup-prime)** for licensing and integration.
40
43
 
41
- Ready for the Pro/Luxury Prime tier?
44
+ ## Prime evaluation (separate product)
42
45
 
43
- 1. Explore the Prime offering: [TickUp Prime Repository](https://github.com/BARDAMRI/tickup-prime)
44
- 2. Try the live experience: [Prime Showcase](https://bardamri.github.io/tickup-charts/)
45
- 3. Request a commercial license key for production use.
46
+ The **`TickUpPrimeTier`** shell in this package is for **evaluating** the Prime product shape: evaluation chrome when no license key is set. **Standard Tier guardrails** in this open-source core (including the **5,000**-candle cap) still apply to data throughput and indicator counts unless you run against a fully licensed Prime deployment.
46
47
 
47
48
  ## Pricing & Licensing
48
49
 
@@ -68,11 +69,31 @@ export function App() {
68
69
 
69
70
  ## Documentation
70
71
 
71
- - [Documentation Hub](https://github.com/BARDAMRI/tickup-charts/blob/main/documentation/README.md)
72
- - [Quick Start Guide](https://github.com/BARDAMRI/tickup-charts/blob/main/documentation/03-quick-start.md)
73
- - [Imperative API Reference](https://github.com/BARDAMRI/tickup-charts/blob/main/documentation/06-imperative-api.md)
74
- - [Live Data & Updates](https://github.com/BARDAMRI/tickup-charts/blob/main/documentation/07-data-and-live-updates.md)
72
+ - **[Getting started — Grand Tour](./documentation/00-getting-started.md)** — Install from scratch + copy-paste Hello World (no prior charting experience assumed).
73
+ - **[Documentation hub](./documentation/README.md)** — Full index (guides 00–18).
74
+ - **[API reference](./documentation/16-api-reference.md)** — `TickUpHost` props, `TickUpRenderEngine`, and `chartOptions` tables.
75
+ - **[OHLC schema & debugging](./documentation/17-interval-schema-and-debugging.md)** — Data format and common “chart not showing” fixes.
76
+ - **[Comparison showcase](./documentation/18-comparison-showcase.md)** — **`#/compare`** to audit Core vs Prime before choosing a tier.
77
+ - [Quick start](./documentation/03-quick-start.md) · [Imperative API](./documentation/06-imperative-api.md) · [Data & live updates](./documentation/07-data-and-live-updates.md)
78
+
79
+ ## TickUp Prime
80
+
81
+ Interested in **TickUp Prime**? Start with the **[Prime documentation](https://github.com/BARDAMRI/tickup-prime)** and try the **[Showcase](https://bardamri.github.io/tickup-charts/)**.
82
+
83
+ ## Legacy support
84
+
85
+ **npm versions below `1.0.36` are deprecated and unsupported.** That line predates the current **Generous Standard** architecture (clean **TickUp Core** vs **Prime** separation, documented Standard Tier guardrails, and security fixes). Do not build new integrations on older tarballs.
75
86
 
76
- ## Prime CTA
87
+ **Standard Tier stability:** From **1.0.36** onward, the **5,000-bar** history cap and the **~1 Hz** live-update throttle on Standard shells are **mandatory** parts of the supported Standard Tier model—they keep dashboards predictable and are not optional “suggestions” for production use.
77
88
 
78
- Interested in TickUp Prime? Visit the live [Showcase](https://bardamri.github.io/tickup-charts/) to test it now, or review the [Prime repository](https://github.com/BARDAMRI/tickup-prime) for integration details.
89
+ **Deprecate older releases on npm** (run while logged in as a maintainer; repeats are safe):
90
+
91
+ ```bash
92
+ npm deprecate tickup@"< 1.0.36" "Legacy architecture. Please upgrade to v1.0.36+ for stable Core/Prime separation and security patches."
93
+ ```
94
+
95
+ Optional: confirm what npm will match:
96
+
97
+ ```bash
98
+ npm view tickup versions --json
99
+ ```
@@ -22,8 +22,6 @@ interface ChartCanvasProps {
22
22
  windowSpread: WindowSpreadOptions;
23
23
  /** Draw bundled TickUp marks inside plot / histogram (no DOM footer). */
24
24
  showBrandWatermark?: boolean;
25
- /** Prime-licensed sessions bypass source-level history limits. */
26
- isPrimeLicensed?: boolean;
27
25
  /** Matches chart `base.theme` for choosing light / dark / grey mark artwork. */
28
26
  brandTheme?: ChartTheme;
29
27
  }
@@ -44,7 +44,7 @@ export interface TickUpStageProps {
44
44
  /** Sync with app chart theme for fullscreen modals */
45
45
  themeVariant?: ChartTheme;
46
46
  showBrandWatermark?: boolean;
47
- /** Prime-licensed sessions bypass core throttles/limits. */
47
+ /** When true (licensed Prime shell), live interval updates are not 1 Hz–throttled; bar count is still capped in Core. */
48
48
  isPrimeLicensed?: boolean;
49
49
  /** Search/validation flow for interval changes (e.g. swap data feed). */
50
50
  onIntervalSearch?: (tf: string) => void | boolean | Promise<void | boolean>;
@@ -5,13 +5,19 @@ type VisibleRangeInput = TimeRange & Partial<{
5
5
  startIndex: number;
6
6
  endIndex: number;
7
7
  }>;
8
- export declare const MAX_CORE_CANDLES = 2000;
8
+ export declare const MAX_CORE_CANDLES = 5000;
9
9
  export declare const CORE_TICK_THROTTLE_MS = 1000;
10
- export declare function useChartData(intervalsArray: Interval[], isPrimeLicensed: boolean, visibleRange: VisibleRangeInput, currentPoint: {
10
+ /**
11
+ * Standard Tier guardrail: never keep more than MAX_CORE_CANDLES for render or downstream math.
12
+ * Call sites should use this for every ingest path (props, live merge, history refresh).
13
+ */
14
+ export declare function clampIntervalsToStandardTier(intervals: Interval[]): Interval[];
15
+ export declare function useChartData(intervalsArray: Interval[], visibleRange: VisibleRangeInput, currentPoint: {
11
16
  x: number;
12
17
  y: number;
13
18
  } | null, canvasWidth: number, canvasHeight: number): {
14
19
  renderContext: ChartRenderContext | null;
15
20
  intervalSeconds: number;
21
+ effectiveIntervals: Interval[];
16
22
  };
17
23
  export {};