@amcharts/amcharts5 5.16.1 → 5.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/.internal/charts/hierarchy/Hierarchy.d.ts +21 -0
  2. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  3. package/.internal/charts/hierarchy/Hierarchy.js +60 -3
  4. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  5. package/.internal/charts/hierarchy/HierarchyDefaultTheme.d.ts.map +1 -1
  6. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js +1 -0
  7. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js.map +1 -1
  8. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts +1 -0
  9. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
  10. package/.internal/charts/hierarchy/LinkedHierarchy.js +9 -9
  11. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  12. package/.internal/charts/hierarchy/Tree.d.ts +20 -0
  13. package/.internal/charts/hierarchy/Tree.d.ts.map +1 -1
  14. package/.internal/charts/hierarchy/Tree.js +11 -1
  15. package/.internal/charts/hierarchy/Tree.js.map +1 -1
  16. package/.internal/charts/xy/axes/ValueAxis.d.ts +15 -2
  17. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  18. package/.internal/charts/xy/axes/ValueAxis.js +102 -79
  19. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  20. package/.internal/charts/xy/series/XYSeries.js +1 -1
  21. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  22. package/.internal/core/Registry.js +1 -1
  23. package/.internal/core/Registry.js.map +1 -1
  24. package/.internal/core/util/PopulateString.d.ts +23 -1
  25. package/.internal/core/util/PopulateString.d.ts.map +1 -1
  26. package/.internal/core/util/PopulateString.js +19 -5
  27. package/.internal/core/util/PopulateString.js.map +1 -1
  28. package/CHANGELOG.md +15 -0
  29. package/README.md +12 -0
  30. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  31. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  32. package/examples/javascript/flow-chord/package.json +1 -1
  33. package/examples/javascript/flow-chord-directed/package.json +1 -1
  34. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  35. package/examples/javascript/flow-sankey/package.json +1 -1
  36. package/examples/javascript/gantt/package.json +1 -1
  37. package/examples/javascript/gantt-multilevel/package.json +1 -1
  38. package/examples/javascript/gantt-simple/package.json +1 -1
  39. package/examples/javascript/gauge/package.json +1 -1
  40. package/examples/javascript/gauge-bands/package.json +1 -1
  41. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  42. package/examples/javascript/hierarchy-pack/package.json +1 -1
  43. package/examples/javascript/hierarchy-partition/package.json +1 -1
  44. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  45. package/examples/javascript/hierarchy-tree/package.json +1 -1
  46. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  47. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  48. package/examples/javascript/jest/package.json +1 -1
  49. package/examples/javascript/json-pie/package.json +1 -1
  50. package/examples/javascript/json-xy/package.json +1 -1
  51. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  52. package/examples/javascript/map-clustered-points/package.json +1 -1
  53. package/examples/javascript/map-day-and-night/package.json +1 -1
  54. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  55. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  56. package/examples/javascript/map-with-bubbles/package.json +1 -1
  57. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  58. package/examples/javascript/misc-40-charts/package.json +1 -1
  59. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  60. package/examples/javascript/pie-chart/package.json +1 -1
  61. package/examples/javascript/pie-donut-chart/package.json +1 -1
  62. package/examples/javascript/pie-variable-radius/package.json +1 -1
  63. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  64. package/examples/javascript/radar-heat-map/package.json +1 -1
  65. package/examples/javascript/radar-line/package.json +1 -1
  66. package/examples/javascript/radar-time-line/package.json +1 -1
  67. package/examples/javascript/sliced-funnel/package.json +1 -1
  68. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  69. package/examples/javascript/sliced-pyramid/package.json +1 -1
  70. package/examples/javascript/stock-chart/package.json +1 -1
  71. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  72. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  73. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  74. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  75. package/examples/javascript/stock-chart-live/package.json +1 -1
  76. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  77. package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
  78. package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
  79. package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
  80. package/examples/javascript/timeline-spiral-chart/package.json +1 -1
  81. package/examples/javascript/venn-diagram/package.json +1 -1
  82. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  83. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  84. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  85. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  86. package/examples/javascript/xy-bubble/package.json +1 -1
  87. package/examples/javascript/xy-candlestick/package.json +1 -1
  88. package/examples/javascript/xy-clustered-column/package.json +1 -1
  89. package/examples/javascript/xy-column/package.json +1 -1
  90. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  91. package/examples/javascript/xy-data-grouping/package.json +1 -1
  92. package/examples/javascript/xy-draggable-range/package.json +1 -1
  93. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  94. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  95. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  96. package/examples/javascript/xy-line/package.json +1 -1
  97. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  98. package/examples/javascript/xy-live-data/package.json +1 -1
  99. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  100. package/examples/javascript/xy-ohlc/package.json +1 -1
  101. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  102. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  103. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  104. package/examples/javascript/xy-stacked-column/package.json +1 -1
  105. package/examples/javascript/xy-stacked-step/package.json +1 -1
  106. package/examples/javascript/xy-stock/package.json +1 -1
  107. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  108. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  109. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  110. package/examples/typescript/flow-chord/package.json +1 -1
  111. package/examples/typescript/flow-chord-directed/package.json +1 -1
  112. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  113. package/examples/typescript/flow-sankey/package.json +1 -1
  114. package/examples/typescript/gantt/package.json +1 -1
  115. package/examples/typescript/gantt-multilevel/package.json +1 -1
  116. package/examples/typescript/gantt-simple/package.json +1 -1
  117. package/examples/typescript/gauge/package.json +1 -1
  118. package/examples/typescript/gauge-bands/package.json +1 -1
  119. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  120. package/examples/typescript/hierarchy-pack/package.json +1 -1
  121. package/examples/typescript/hierarchy-partition/package.json +1 -1
  122. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  123. package/examples/typescript/hierarchy-tree/package.json +1 -1
  124. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  125. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  126. package/examples/typescript/jest/package.json +1 -1
  127. package/examples/typescript/json-pie/package.json +1 -1
  128. package/examples/typescript/json-xy/package.json +1 -1
  129. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  130. package/examples/typescript/map-clustered-points/package.json +1 -1
  131. package/examples/typescript/map-day-and-night/package.json +1 -1
  132. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  133. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  134. package/examples/typescript/map-with-bubbles/package.json +1 -1
  135. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  136. package/examples/typescript/misc-40-charts/package.json +1 -1
  137. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  138. package/examples/typescript/pie-chart/package.json +1 -1
  139. package/examples/typescript/pie-donut-chart/package.json +1 -1
  140. package/examples/typescript/pie-variable-radius/package.json +1 -1
  141. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  142. package/examples/typescript/radar-heat-map/package.json +1 -1
  143. package/examples/typescript/radar-line/package.json +1 -1
  144. package/examples/typescript/radar-time-line/package.json +1 -1
  145. package/examples/typescript/sliced-funnel/package.json +1 -1
  146. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  147. package/examples/typescript/sliced-pyramid/package.json +1 -1
  148. package/examples/typescript/stock-chart/package.json +1 -1
  149. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  150. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  151. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  152. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  153. package/examples/typescript/stock-chart-live/package.json +1 -1
  154. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  155. package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
  156. package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
  157. package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
  158. package/examples/typescript/timeline-spiral-chart/package.json +1 -1
  159. package/examples/typescript/venn-diagram/package.json +1 -1
  160. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  161. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  162. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  163. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  164. package/examples/typescript/xy-bubble/package.json +1 -1
  165. package/examples/typescript/xy-candlestick/package.json +1 -1
  166. package/examples/typescript/xy-clustered-column/package.json +1 -1
  167. package/examples/typescript/xy-column/package.json +1 -1
  168. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  169. package/examples/typescript/xy-data-grouping/package.json +1 -1
  170. package/examples/typescript/xy-draggable-range/package.json +1 -1
  171. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  172. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  173. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  174. package/examples/typescript/xy-line/package.json +1 -1
  175. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  176. package/examples/typescript/xy-live-data/package.json +1 -1
  177. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  178. package/examples/typescript/xy-ohlc/package.json +1 -1
  179. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  180. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  181. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  182. package/examples/typescript/xy-stacked-column/package.json +1 -1
  183. package/examples/typescript/xy-stacked-step/package.json +1 -1
  184. package/examples/typescript/xy-stock/package.json +1 -1
  185. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  186. package/index.d.ts +1 -0
  187. package/index.d.ts.map +1 -1
  188. package/index.js +1 -0
  189. package/index.js.map +1 -1
  190. package/package.json +1 -1
@@ -6,7 +6,7 @@ export class Registry {
6
6
  /**
7
7
  * Currently running version of amCharts.
8
8
  */
9
- this.version = "5.16.1";
9
+ this.version = "5.16.2";
10
10
  /**
11
11
  * List of applied licenses.
12
12
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../../src/.internal/core/Registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAArB;QACC;;WAEG;QACM,YAAO,GAAW,QAAQ,CAAC;QAEpC;;;WAGG;QACH,aAAQ,GAAa,EAAE,CAAC;QAExB;;WAEG;QACH,iBAAY,GAA6B,EAAE,CAAC;QAE5C;;WAEG;QACH,iBAAY,GAAU,EAAE,CAAC;QAEzB;;;;WAIG;QACH,gBAAW,GAAY,KAAK,CAAC;IAC9B,CAAC;CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAEvC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACrC,IAAI,IAAI,CAAC;IACT,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;KACf;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACrC,IAAI,KAAK,CAAC;IACV,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;YACtB,KAAK,GAAG,IAAI,CAAC;SACb;IACF,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC","sourcesContent":["/**\n * @ignore\n */\nexport class Registry {\n\t/**\n\t * Currently running version of amCharts.\n\t */\n\treadonly version: string = \"5.16.1\";\n\n\t/**\n\t * List of applied licenses.\n\t * @ignore\n\t */\n\tlicenses: String[] = [];\n\n\t/**\n\t * Entities that have their `id` setting set.\n\t */\n\tentitiesById: { [index: string]: any } = {};\n\n\t/**\n\t * All created [[Root]] elements.\n\t */\n\trootElements: any[] = [];\n\n\t/**\n\t * Automatically dispose a [[Root]] element if it exists in the target container.\n\t *\n\t * @since 5.14.4\n\t */\n\tautoDispose: boolean = false;\n}\n\n/**\n * @ignore\n */\nexport const registry = new Registry();\n\n/**\n * Adds a license, e.g.:\n *\n * ```TypeScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n * ```JavaScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n *\n * Multiple licenses can be added to cover for multiple products.\n *\n * @param license License key\n */\nexport function addLicense(license: string): void {\n\tregistry.licenses.push(license);\n}\n\n/**\n * Disposes all [[Root]] elements.\n */\nexport function disposeAllRootElements(): void {\n\tlet root;\n\twhile ((root = registry.rootElements.pop())) {\n\t\troot.dispose();\n\t}\n}\n\n/**\n * Finds and returns a `Root` element assigned to a container with `id`.\n *\n * @param id Container ID\n * @return Root\n * @since 5.9.2\n */\nexport function getRootById(id: string): any {\n\tlet found;\n\tregistry.rootElements.forEach((item) => {\n\t\tif (item.dom.id == id) {\n\t\t\tfound = item;\n\t\t}\n\t});\n\treturn found;\n}\n"]}
1
+ {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../../src/.internal/core/Registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAArB;QACC;;WAEG;QACM,YAAO,GAAW,QAAQ,CAAC;QAEpC;;;WAGG;QACH,aAAQ,GAAa,EAAE,CAAC;QAExB;;WAEG;QACH,iBAAY,GAA6B,EAAE,CAAC;QAE5C;;WAEG;QACH,iBAAY,GAAU,EAAE,CAAC;QAEzB;;;;WAIG;QACH,gBAAW,GAAY,KAAK,CAAC;IAC9B,CAAC;CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAEvC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACrC,IAAI,IAAI,CAAC;IACT,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;KACf;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACrC,IAAI,KAAK,CAAC;IACV,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;YACtB,KAAK,GAAG,IAAI,CAAC;SACb;IACF,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC","sourcesContent":["/**\n * @ignore\n */\nexport class Registry {\n\t/**\n\t * Currently running version of amCharts.\n\t */\n\treadonly version: string = \"5.16.2\";\n\n\t/**\n\t * List of applied licenses.\n\t * @ignore\n\t */\n\tlicenses: String[] = [];\n\n\t/**\n\t * Entities that have their `id` setting set.\n\t */\n\tentitiesById: { [index: string]: any } = {};\n\n\t/**\n\t * All created [[Root]] elements.\n\t */\n\trootElements: any[] = [];\n\n\t/**\n\t * Automatically dispose a [[Root]] element if it exists in the target container.\n\t *\n\t * @since 5.14.4\n\t */\n\tautoDispose: boolean = false;\n}\n\n/**\n * @ignore\n */\nexport const registry = new Registry();\n\n/**\n * Adds a license, e.g.:\n *\n * ```TypeScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n * ```JavaScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n *\n * Multiple licenses can be added to cover for multiple products.\n *\n * @param license License key\n */\nexport function addLicense(license: string): void {\n\tregistry.licenses.push(license);\n}\n\n/**\n * Disposes all [[Root]] elements.\n */\nexport function disposeAllRootElements(): void {\n\tlet root;\n\twhile ((root = registry.rootElements.pop())) {\n\t\troot.dispose();\n\t}\n}\n\n/**\n * Finds and returns a `Root` element assigned to a container with `id`.\n *\n * @param id Container ID\n * @return Root\n * @since 5.9.2\n */\nexport function getRootById(id: string): any {\n\tlet found;\n\tregistry.rootElements.forEach((item) => {\n\t\tif (item.dom.id == id) {\n\t\t\tfound = item;\n\t\t}\n\t});\n\treturn found;\n}\n"]}
@@ -1,9 +1,31 @@
1
1
  /** @ignore */ /** */
2
2
  import { Sprite } from "../render/Sprite";
3
3
  /**
4
- * @ignore
4
+ * Populates the curly-bracket placeholders with actual values from a [[Sprite]].
5
+ *
6
+ * @param target Target Sprite
7
+ * @param string Target text
8
+ * @returns Populated text
5
9
  */
6
10
  export declare function populateString(target: Sprite, string: string): string;
11
+ /**
12
+ * Returns an abstract value from the target [[Sprite]]'s data item, settings,
13
+ * properties or parents.
14
+ *
15
+ * @param target Target Sprite
16
+ * @param tagName Tage to extract value for
17
+ * @param format Format for the value
18
+ * @returns Value
19
+ */
20
+ export declare function getTagValue(target: Sprite, tagName: string, format?: string): string;
21
+ /**
22
+ * Returns a value from target [[Sprite]]'s `customData`.
23
+ *
24
+ * @param target Target Sprite
25
+ * @param prop Key
26
+ * @returns Value
27
+ */
28
+ export declare function getCustomDataValue(target: Sprite, prop: string): any;
7
29
  /**
8
30
  * @ignore
9
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PopulateString.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/PopulateString.ts"],"names":[],"mappings":"AAAA,cAAc,CAAA,MAAM;AAIpB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA0BrE;AAuID;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAkIrG"}
1
+ {"version":3,"file":"PopulateString.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/PopulateString.ts"],"names":[],"mappings":"AAAA,cAAc,CAAA,MAAM;AAIpB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA0BrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAsHpF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,GAAG,CAKpE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAkIrG"}
@@ -4,7 +4,11 @@ import * as $utils from "./Utils";
4
4
  import { Sprite } from "../render/Sprite";
5
5
  import { TextFormatter } from "./TextFormatter";
6
6
  /**
7
- * @ignore
7
+ * Populates the curly-bracket placeholders with actual values from a [[Sprite]].
8
+ *
9
+ * @param target Target Sprite
10
+ * @param string Target text
11
+ * @returns Populated text
8
12
  */
9
13
  export function populateString(target, string) {
10
14
  if (string != null) {
@@ -31,9 +35,15 @@ export function populateString(target, string) {
31
35
  return string;
32
36
  }
33
37
  /**
34
- * @ignore
38
+ * Returns an abstract value from the target [[Sprite]]'s data item, settings,
39
+ * properties or parents.
40
+ *
41
+ * @param target Target Sprite
42
+ * @param tagName Tage to extract value for
43
+ * @param format Format for the value
44
+ * @returns Value
35
45
  */
36
- function getTagValue(target, tagName, format) {
46
+ export function getTagValue(target, tagName, format) {
37
47
  let value;
38
48
  const dataItem = target.dataItem;
39
49
  // Parse parts
@@ -133,9 +143,13 @@ function getTagValue(target, tagName, format) {
133
143
  return value;
134
144
  }
135
145
  /**
136
- * @ignore
146
+ * Returns a value from target [[Sprite]]'s `customData`.
147
+ *
148
+ * @param target Target Sprite
149
+ * @param prop Key
150
+ * @returns Value
137
151
  */
138
- function getCustomDataValue(target, prop) {
152
+ export function getCustomDataValue(target, prop) {
139
153
  const customData = target.getPrivate("customData");
140
154
  if ($type.isObject(customData)) {
141
155
  return customData[prop];
@@ -1 +1 @@
1
- {"version":3,"file":"PopulateString.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/PopulateString.ts"],"names":[],"mappings":"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","sourcesContent":["/** @ignore *//** */\n\nimport * as $type from \"./Type\";\nimport * as $utils from \"./Utils\";\nimport { Sprite } from \"../render/Sprite\";\nimport { TextFormatter } from \"./TextFormatter\";\n\n/**\n * @ignore\n */\nexport function populateString(target: Sprite, string: string): string {\n\tif (string != null) {\n\t\tstring = \"\" + string;\n\t\tstring = TextFormatter.escape(string);\n\t\tlet tags = string.match(/\\{([^}]+)\\}/g);\n\t\tlet i;\n\t\tif (tags) {\n\t\t\tfor (i = 0; i < tags.length; i++) {\n\t\t\t\tlet tag = tags[i].replace(/\\{([^}]+)\\}/, \"$1\");\n\t\t\t\tlet value = getTagValue(target, tag, \"\");\n\n\t\t\t\tif (value == null) {\n\t\t\t\t\tvalue = \"\";\n\t\t\t\t}\n\n\t\t\t\tstring = string.split(tags[i]).join(value);\n\t\t\t}\n\t\t}\n\t\tstring = TextFormatter.unescape(string);\n\t}\n\telse {\n\t\tstring = \"\";\n\t}\n\n\t// TODO: apply adapter?\n\treturn string;\n}\n\n/**\n * @ignore\n */\nfunction getTagValue(target: Sprite, tagName: string, format?: string): string {\n\tlet value: any;\n\tconst dataItem = target.dataItem;\n\n\t// Parse parts\n\tlet parts: any[] = [];\n\tlet reg = /(format[a-zA-Z]*)\\((.*)\\)|([^.]+)/g;\n\tlet matches;\n\n\twhile (true) {\n\t\tmatches = reg.exec(tagName);\n\n\t\tif (matches === null) {\n\t\t\tbreak;\n\t\t}\n\n\t\tif (matches[3]) {\n\t\t\t// Simple property\n\t\t\tparts.push({\n\t\t\t\tprop: matches[3]\n\t\t\t});\n\n\t\t\t// Check if maybe we should force a formatter on this value\n\t\t\tconst dateFields = target.getDateFormatter().get(\"dateFields\", []);\n\t\t\tconst numericFields = target.getNumberFormatter().get(\"numericFields\", []);\n\t\t\tconst durationFields = target.getDurationFormatter().get(\"durationFields\", []);\n\t\t\tif ((<any>dateFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatDate\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t\telse if ((<any>numericFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatNumber\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t\telse if ((<any>durationFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatDuration\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Method\n\t\t\t// Parse parameters\n\t\t\tlet params: any[] = [];\n\t\t\tif ($utils.trim(matches[2]) != \"\") {\n\t\t\t\tlet reg2 = /'([^']*)'|\"([^\"]*)\"|([0-9\\-]+)/g;\n\t\t\t\tlet matches2;\n\n\t\t\t\twhile (true) {\n\t\t\t\t\tmatches2 = reg2.exec(matches[2]);\n\n\t\t\t\t\tif (matches2 === null) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tparams.push(matches2[1] || matches2[2] || matches2[3])\n\t\t\t\t}\n\t\t\t}\n\t\t\tparts.push({\n\t\t\t\tmethod: matches[1],\n\t\t\t\tparams: params\n\t\t\t})\n\t\t}\n\t}\n\n\t// Check if we can retrieve the value from data item\n\tif (dataItem) {\n\n\n\t\t// Check values\n\t\tvalue = getTagValueFromObject(target, parts, dataItem._settings);\n\n\t\t// Check properties\n\t\tif (value == null || $type.isObject(value)) { // isObject helps to solve problem with date axis, as for example dateX will get dateX from values object and won't get to the dateX date.\n\t\t\tvalue = getTagValueFromObject(target, parts, dataItem);\n\t\t}\n\n\t\t// Check data context\n\t\tlet dataContext: any = dataItem.dataContext;\n\n\t\tif (value == null && dataContext) {\n\t\t\tvalue = getTagValueFromObject(target, parts, dataContext);\n\n\t\t\t// Maybe it's a literal dot-separated name of the key in dataContext?\n\t\t\tif (value == null) {\n\t\t\t\tvalue = getTagValueFromObject(target, [{\n\t\t\t\t\tprop: tagName\n\t\t\t\t}], dataContext);\n\t\t\t}\n\n\t\t\t// scond data context level sometimes exist (tree map)\n\t\t\tif (value == null && dataContext.dataContext) {\n\t\t\t\tvalue = getTagValueFromObject(target, parts, dataContext.dataContext);\n\t\t\t}\n\t\t}\n\n\t\t// Check component's data item\n\t\tif (value == null && dataItem.component && dataItem.component.dataItem !== dataItem) {\n\t\t\tvalue = getTagValue(dataItem.component, tagName, format);\n\t\t}\n\t}\n\n\t// Check sprite's properties\n\tif (value == null) {\n\t\tvalue = getTagValueFromObject(target, parts, target);\n\t}\n\n\t// Finally, check the parent\n\tif (value == null && target.parent) {\n\t\tvalue = getTagValue(target.parent, tagName, format);\n\t}\n\n\treturn value;\n}\n\n/**\n * @ignore\n */\nfunction getCustomDataValue(target: Sprite, prop: string): any {\n\tconst customData = target.getPrivate(\"customData\");\n\tif ($type.isObject(customData)) {\n\t\treturn (<any>customData)[prop];\n\t}\n}\n\n/**\n * @ignore\n */\nexport function getTagValueFromObject(target: Sprite, parts: any[], object: any, format?: string): any {\n\tlet current: any = object;\n\tlet formatApplied = false;\n\tfor (let i = 0, len = parts.length; i < len; i++) {\n\t\tlet part = parts[i];\n\t\tif (part.prop) {\n\t\t\t// Regular property\n\t\t\tif (current instanceof Sprite) {\n\t\t\t\tlet tmp = current.get(part.prop);\n\t\t\t\tif (tmp == null) tmp = current.getPrivate(part.prop);\n\t\t\t\tif (tmp == null) tmp = getCustomDataValue(current, part.prop);\n\t\t\t\tif (tmp == null) tmp = (<any>current)[part.prop];\n\t\t\t\tcurrent = tmp;\n\t\t\t}\n\t\t\telse if (current.get) {\n\t\t\t\tlet tmp = current.get(part.prop);\n\t\t\t\tif (tmp == null) tmp = (<any>current)[part.prop];\n\t\t\t\tcurrent = tmp;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tcurrent = current[part.prop];\n\t\t\t}\n\n\t\t\tif (current == null) {\n\t\t\t\t// Not set, return undefined\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Method\n\n\t\t\tswitch (part.method) {\n\t\t\t\tcase \"formatNumber\":\n\t\t\t\t\tlet numberValue = $type.toNumber(current);\n\t\t\t\t\tif (numberValue != null) {\n\t\t\t\t\t\tcurrent = target.getNumberFormatter().format(\n\t\t\t\t\t\t\tnumberValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"formatDate\":\n\t\t\t\t\tlet dateValue = $type.toDate(current);\n\t\t\t\t\tif (!$type.isDate(dateValue) || $type.isNaN(dateValue.getTime())) {\n\t\t\t\t\t\t// Was not able to get date out of value, quitting and letting\n\t\t\t\t\t\t// calling method try another value\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif (dateValue != null) {\n\t\t\t\t\t\tcurrent = target.getDateFormatter().format(\n\t\t\t\t\t\t\tdateValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"formatDuration\":\n\t\t\t\t\tlet durationValue = $type.toNumber(current);\n\t\t\t\t\tif (durationValue != null) {\n\t\t\t\t\t\tcurrent = target.getDurationFormatter().format(\n\t\t\t\t\t\t\tdurationValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined,\n\t\t\t\t\t\t\tpart.params[1] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"urlEncode\":\n\t\t\t\tcase \"encodeURIComponent\":\n\t\t\t\t\tcurrent = encodeURIComponent(current);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (current[part.method]) {\n\t\t\t\t\t\tcurrent[part.method].apply(object, part.params);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Apply default format if it wasn't applied explicitly\n\tif (!formatApplied) {\n\n\t\tlet formatParts = [{\n\t\t\tmethod: \"\",\n\t\t\tparams: format\n\t\t}];\n\n\t\tif (format == null) {\n\n\t\t\t// Format is not set\n\t\t\t// Determine from the type of the value\n\t\t\tif ($type.isNumber(current)) {\n\t\t\t\tformatParts[0].method = \"formatNumber\";\n\t\t\t\tformatParts[0].params = \"\";\n\t\t\t}\n\t\t\telse if ($type.isDate(current)) {\n\t\t\t\tformatParts[0].method = \"formatDate\";\n\t\t\t\tformatParts[0].params = \"\";\n\t\t\t}\n\n\t\t}\n\t\telse {\n\n\t\t\t// Format set\n\t\t\t// Try to determine formatter based on the format\n\t\t\tlet formatterType: string = $utils.getFormat(format);\n\n\t\t\t// format\n\t\t\tif (formatterType === \"number\") {\n\t\t\t\tformatParts[0].method = \"formatNumber\";\n\t\t\t}\n\t\t\telse if (formatterType === \"date\") {\n\t\t\t\tformatParts[0].method = \"formatDate\";\n\t\t\t}\n\t\t\telse if (formatterType === \"duration\") {\n\t\t\t\tformatParts[0].method = \"formatDuration\";\n\t\t\t}\n\n\t\t}\n\n\t\t// Apply format\n\t\tif (formatParts[0].method) {\n\t\t\tcurrent = getTagValueFromObject(target, formatParts, current);\n\t\t}\n\n\t}\n\n\treturn current;\n}"]}
1
+ {"version":3,"file":"PopulateString.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/PopulateString.ts"],"names":[],"mappings":"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","sourcesContent":["/** @ignore *//** */\n\nimport * as $type from \"./Type\";\nimport * as $utils from \"./Utils\";\nimport { Sprite } from \"../render/Sprite\";\nimport { TextFormatter } from \"./TextFormatter\";\n\n/**\n * Populates the curly-bracket placeholders with actual values from a [[Sprite]].\n *\n * @param target Target Sprite\n * @param string Target text\n * @returns Populated text\n */\nexport function populateString(target: Sprite, string: string): string {\n\tif (string != null) {\n\t\tstring = \"\" + string;\n\t\tstring = TextFormatter.escape(string);\n\t\tlet tags = string.match(/\\{([^}]+)\\}/g);\n\t\tlet i;\n\t\tif (tags) {\n\t\t\tfor (i = 0; i < tags.length; i++) {\n\t\t\t\tlet tag = tags[i].replace(/\\{([^}]+)\\}/, \"$1\");\n\t\t\t\tlet value = getTagValue(target, tag, \"\");\n\n\t\t\t\tif (value == null) {\n\t\t\t\t\tvalue = \"\";\n\t\t\t\t}\n\n\t\t\t\tstring = string.split(tags[i]).join(value);\n\t\t\t}\n\t\t}\n\t\tstring = TextFormatter.unescape(string);\n\t}\n\telse {\n\t\tstring = \"\";\n\t}\n\n\t// TODO: apply adapter?\n\treturn string;\n}\n\n/**\n * Returns an abstract value from the target [[Sprite]]'s data item, settings,\n * properties or parents.\n *\n * @param target Target Sprite\n * @param tagName Tage to extract value for\n * @param format Format for the value\n * @returns Value\n */\nexport function getTagValue(target: Sprite, tagName: string, format?: string): string {\n\tlet value: any;\n\tconst dataItem = target.dataItem;\n\n\t// Parse parts\n\tlet parts: any[] = [];\n\tlet reg = /(format[a-zA-Z]*)\\((.*)\\)|([^.]+)/g;\n\tlet matches;\n\n\twhile (true) {\n\t\tmatches = reg.exec(tagName);\n\n\t\tif (matches === null) {\n\t\t\tbreak;\n\t\t}\n\n\t\tif (matches[3]) {\n\t\t\t// Simple property\n\t\t\tparts.push({\n\t\t\t\tprop: matches[3]\n\t\t\t});\n\n\t\t\t// Check if maybe we should force a formatter on this value\n\t\t\tconst dateFields = target.getDateFormatter().get(\"dateFields\", []);\n\t\t\tconst numericFields = target.getNumberFormatter().get(\"numericFields\", []);\n\t\t\tconst durationFields = target.getDurationFormatter().get(\"durationFields\", []);\n\t\t\tif ((<any>dateFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatDate\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t\telse if ((<any>numericFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatNumber\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t\telse if ((<any>durationFields).indexOf(matches[3]) !== -1) {\n\t\t\t\tparts.push({\n\t\t\t\t\tmethod: \"formatDuration\",\n\t\t\t\t\tparams: []\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Method\n\t\t\t// Parse parameters\n\t\t\tlet params: any[] = [];\n\t\t\tif ($utils.trim(matches[2]) != \"\") {\n\t\t\t\tlet reg2 = /'([^']*)'|\"([^\"]*)\"|([0-9\\-]+)/g;\n\t\t\t\tlet matches2;\n\n\t\t\t\twhile (true) {\n\t\t\t\t\tmatches2 = reg2.exec(matches[2]);\n\n\t\t\t\t\tif (matches2 === null) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tparams.push(matches2[1] || matches2[2] || matches2[3])\n\t\t\t\t}\n\t\t\t}\n\t\t\tparts.push({\n\t\t\t\tmethod: matches[1],\n\t\t\t\tparams: params\n\t\t\t})\n\t\t}\n\t}\n\n\t// Check if we can retrieve the value from data item\n\tif (dataItem) {\n\n\n\t\t// Check values\n\t\tvalue = getTagValueFromObject(target, parts, dataItem._settings);\n\n\t\t// Check properties\n\t\tif (value == null || $type.isObject(value)) { // isObject helps to solve problem with date axis, as for example dateX will get dateX from values object and won't get to the dateX date.\n\t\t\tvalue = getTagValueFromObject(target, parts, dataItem);\n\t\t}\n\n\t\t// Check data context\n\t\tlet dataContext: any = dataItem.dataContext;\n\n\t\tif (value == null && dataContext) {\n\t\t\tvalue = getTagValueFromObject(target, parts, dataContext);\n\n\t\t\t// Maybe it's a literal dot-separated name of the key in dataContext?\n\t\t\tif (value == null) {\n\t\t\t\tvalue = getTagValueFromObject(target, [{\n\t\t\t\t\tprop: tagName\n\t\t\t\t}], dataContext);\n\t\t\t}\n\n\t\t\t// scond data context level sometimes exist (tree map)\n\t\t\tif (value == null && dataContext.dataContext) {\n\t\t\t\tvalue = getTagValueFromObject(target, parts, dataContext.dataContext);\n\t\t\t}\n\t\t}\n\n\t\t// Check component's data item\n\t\tif (value == null && dataItem.component && dataItem.component.dataItem !== dataItem) {\n\t\t\tvalue = getTagValue(dataItem.component, tagName, format);\n\t\t}\n\t}\n\n\t// Check sprite's properties\n\tif (value == null) {\n\t\tvalue = getTagValueFromObject(target, parts, target);\n\t}\n\n\t// Finally, check the parent\n\tif (value == null && target.parent) {\n\t\tvalue = getTagValue(target.parent, tagName, format);\n\t}\n\n\treturn value;\n}\n\n/**\n * Returns a value from target [[Sprite]]'s `customData`.\n *\n * @param target Target Sprite\n * @param prop Key\n * @returns Value\n */\nexport function getCustomDataValue(target: Sprite, prop: string): any {\n\tconst customData = target.getPrivate(\"customData\");\n\tif ($type.isObject(customData)) {\n\t\treturn (<any>customData)[prop];\n\t}\n}\n\n/**\n * @ignore\n */\nexport function getTagValueFromObject(target: Sprite, parts: any[], object: any, format?: string): any {\n\tlet current: any = object;\n\tlet formatApplied = false;\n\tfor (let i = 0, len = parts.length; i < len; i++) {\n\t\tlet part = parts[i];\n\t\tif (part.prop) {\n\t\t\t// Regular property\n\t\t\tif (current instanceof Sprite) {\n\t\t\t\tlet tmp = current.get(part.prop);\n\t\t\t\tif (tmp == null) tmp = current.getPrivate(part.prop);\n\t\t\t\tif (tmp == null) tmp = getCustomDataValue(current, part.prop);\n\t\t\t\tif (tmp == null) tmp = (<any>current)[part.prop];\n\t\t\t\tcurrent = tmp;\n\t\t\t}\n\t\t\telse if (current.get) {\n\t\t\t\tlet tmp = current.get(part.prop);\n\t\t\t\tif (tmp == null) tmp = (<any>current)[part.prop];\n\t\t\t\tcurrent = tmp;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tcurrent = current[part.prop];\n\t\t\t}\n\n\t\t\tif (current == null) {\n\t\t\t\t// Not set, return undefined\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Method\n\n\t\t\tswitch (part.method) {\n\t\t\t\tcase \"formatNumber\":\n\t\t\t\t\tlet numberValue = $type.toNumber(current);\n\t\t\t\t\tif (numberValue != null) {\n\t\t\t\t\t\tcurrent = target.getNumberFormatter().format(\n\t\t\t\t\t\t\tnumberValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"formatDate\":\n\t\t\t\t\tlet dateValue = $type.toDate(current);\n\t\t\t\t\tif (!$type.isDate(dateValue) || $type.isNaN(dateValue.getTime())) {\n\t\t\t\t\t\t// Was not able to get date out of value, quitting and letting\n\t\t\t\t\t\t// calling method try another value\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif (dateValue != null) {\n\t\t\t\t\t\tcurrent = target.getDateFormatter().format(\n\t\t\t\t\t\t\tdateValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"formatDuration\":\n\t\t\t\t\tlet durationValue = $type.toNumber(current);\n\t\t\t\t\tif (durationValue != null) {\n\t\t\t\t\t\tcurrent = target.getDurationFormatter().format(\n\t\t\t\t\t\t\tdurationValue,\n\t\t\t\t\t\t\tformat || part.params[0] || undefined,\n\t\t\t\t\t\t\tpart.params[1] || undefined\n\t\t\t\t\t\t);\n\t\t\t\t\t\tformatApplied = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"urlEncode\":\n\t\t\t\tcase \"encodeURIComponent\":\n\t\t\t\t\tcurrent = encodeURIComponent(current);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (current[part.method]) {\n\t\t\t\t\t\tcurrent[part.method].apply(object, part.params);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Apply default format if it wasn't applied explicitly\n\tif (!formatApplied) {\n\n\t\tlet formatParts = [{\n\t\t\tmethod: \"\",\n\t\t\tparams: format\n\t\t}];\n\n\t\tif (format == null) {\n\n\t\t\t// Format is not set\n\t\t\t// Determine from the type of the value\n\t\t\tif ($type.isNumber(current)) {\n\t\t\t\tformatParts[0].method = \"formatNumber\";\n\t\t\t\tformatParts[0].params = \"\";\n\t\t\t}\n\t\t\telse if ($type.isDate(current)) {\n\t\t\t\tformatParts[0].method = \"formatDate\";\n\t\t\t\tformatParts[0].params = \"\";\n\t\t\t}\n\n\t\t}\n\t\telse {\n\n\t\t\t// Format set\n\t\t\t// Try to determine formatter based on the format\n\t\t\tlet formatterType: string = $utils.getFormat(format);\n\n\t\t\t// format\n\t\t\tif (formatterType === \"number\") {\n\t\t\t\tformatParts[0].method = \"formatNumber\";\n\t\t\t}\n\t\t\telse if (formatterType === \"date\") {\n\t\t\t\tformatParts[0].method = \"formatDate\";\n\t\t\t}\n\t\t\telse if (formatterType === \"duration\") {\n\t\t\t\tformatParts[0].method = \"formatDuration\";\n\t\t\t}\n\n\t\t}\n\n\t\t// Apply format\n\t\tif (formatParts[0].method) {\n\t\t\tcurrent = getTagValueFromObject(target, formatParts, current);\n\t\t}\n\n\t}\n\n\treturn current;\n}\n"]}
package/CHANGELOG.md CHANGED
@@ -5,6 +5,21 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
5
5
  Please note, that this project, while following numbering syntax, it DOES NOT
6
6
  adhere to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) rules.
7
7
 
8
+ ## [5.16.2] - 2026-03-17
9
+
10
+ ## Added
11
+ - `syncZeros` added to `ValueAxis`. It will work only if `syncWithAxis` is set and zero is within min/max of axis.
12
+ - Exposing standalone functions via `index`/`am5`: `populateString()`, `getTagValue()`, `getCustomDataValue()`.
13
+ - `nodeSeparation` setting added to `Tree`. Allows custom separation function between nodes, receiving two data items and returning a numeric value.
14
+ - `setFlatData()` method added to `Hierarchy`. Accepts flat array data with parent ID references and converts it to nested hierarchy format. Works with new `parentIdField` setting.
15
+ - `clustered` setting added to `Tree`. When set to `true`, uses cluster layout (dendrogram) where all leaf nodes are placed at the same depth.
16
+
17
+ ## Fixed
18
+ - `minBulletDistance` was not showing/hiding bullets if set dynamically after series was already initialized.
19
+ - Axis syncing algorithm fixed, performance of syncing improved.
20
+ - `Tree` and `ForceDirected` charts with very deep structures were having performance issues.
21
+
22
+
8
23
  ## [5.16.1] - 2026-03-03
9
24
 
10
25
  ## Changed
package/README.md CHANGED
@@ -41,6 +41,18 @@ Those are available via separate package:
41
41
  * [ZIP download](https://www.amcharts.com/download/download/)
42
42
 
43
43
 
44
+ ### amCharts + AI
45
+
46
+ amCharts works nicely with all major AI models (Claude, ChatGPT, Gemini,
47
+ etc.). For even better results, we provide the following resources:
48
+
49
+ * [amCharts 5 + AI documentation](https://www.amcharts.com/docs/v5/ai/)
50
+ * [amCharts 5 Skill on GitHub](https://github.com/amcharts/amcharts5-skill)
51
+ * [amCharts 5 MCP Server on GitHub](https://github.com/amcharts/amcharts5-mcp)
52
+ * [amCharts 5 MCP Server on npm](https://www.npmjs.com/package/@amcharts/amcharts5-mcp)
53
+ * [amCharts 5 .cursorrules file](https://github.com/amcharts/amcharts5-skill/blob/main/cursorrules)
54
+
55
+
44
56
  ### License
45
57
 
46
58
  If you have a commercial amCharts 5 license, this software is covered by your
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-arc-horizontal",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-arc-vertical",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord-directed",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord-non-ribbon",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-sankey",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gantt",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gantt-multilevel",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gantt-simple",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gauge",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gauge-bands",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-force-directed",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-pack",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-partition",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-sunburst",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-tree",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-treemap",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-voronoi-treemap",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-jest",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-json-pie",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-json-xy",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-animating-along-lines",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-clustered-points",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-day-and-night",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-globe-rotate-to-country",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-globe-with-projected-circles",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-with-bubbles",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-zoom-to-country",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "@amcharts/amcharts5-geodata": "^5.1.5",
8
8
  "source-map-loader": "^4.0.1",
9
9
  "webpack": "^5.1.3",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-misc-40-charts",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-misc-microchart-grid",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-pie-chart",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-pie-donut-chart",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-pie-variable-radius",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-radar-column-iwatch-style",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-radar-heat-map",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-radar-line",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-radar-time-line",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.16.1",
6
+ "@amcharts/amcharts5": "^5.16.2",
7
7
  "source-map-loader": "^4.0.1",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^5.1.1",