@amcharts/amcharts5 5.2.11 → 5.2.14

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 (188) hide show
  1. package/.internal/charts/hierarchy/Hierarchy.d.ts +1 -1
  2. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  3. package/.internal/charts/hierarchy/Hierarchy.js +6 -4
  4. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  5. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
  6. package/.internal/charts/hierarchy/LinkedHierarchy.js +0 -1
  7. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  8. package/.internal/charts/pie/PieChart.d.ts +1 -1
  9. package/.internal/charts/pie/PieChart.d.ts.map +1 -1
  10. package/.internal/charts/pie/PieChart.js.map +1 -1
  11. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  12. package/.internal/charts/pie/PieSeries.js +8 -0
  13. package/.internal/charts/pie/PieSeries.js.map +1 -1
  14. package/.internal/charts/xy/XYChart.js +3 -3
  15. package/.internal/charts/xy/XYChart.js.map +1 -1
  16. package/.internal/charts/xy/XYChartDefaultTheme.js +1 -0
  17. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
  18. package/.internal/charts/xy/axes/Axis.d.ts +2 -2
  19. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  20. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  21. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  22. package/.internal/charts/xy/axes/DateAxis.js +7 -1
  23. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  24. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  25. package/.internal/charts/xy/series/LineSeries.js +9 -4
  26. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  27. package/.internal/core/Root.d.ts.map +1 -1
  28. package/.internal/core/Root.js +29 -32
  29. package/.internal/core/Root.js.map +1 -1
  30. package/.internal/core/render/Component.d.ts +1 -1
  31. package/.internal/core/render/Component.d.ts.map +1 -1
  32. package/.internal/core/render/Component.js.map +1 -1
  33. package/.internal/core/render/Container.d.ts.map +1 -1
  34. package/.internal/core/render/Container.js +7 -0
  35. package/.internal/core/render/Container.js.map +1 -1
  36. package/.internal/core/render/Label.d.ts.map +1 -1
  37. package/.internal/core/render/Label.js +10 -0
  38. package/.internal/core/render/Label.js.map +1 -1
  39. package/.internal/core/render/Scrollbar.js +1 -1
  40. package/.internal/core/render/Scrollbar.js.map +1 -1
  41. package/.internal/core/render/Sprite.d.ts.map +1 -1
  42. package/.internal/core/render/Sprite.js +2 -1
  43. package/.internal/core/render/Sprite.js.map +1 -1
  44. package/.internal/core/render/Tooltip.d.ts +9 -1
  45. package/.internal/core/render/Tooltip.d.ts.map +1 -1
  46. package/.internal/core/render/Tooltip.js +34 -0
  47. package/.internal/core/render/Tooltip.js.map +1 -1
  48. package/.internal/core/util/Animation.d.ts.map +1 -1
  49. package/.internal/core/util/Animation.js +4 -4
  50. package/.internal/core/util/Animation.js.map +1 -1
  51. package/.internal/core/util/DateFormatter.js +1 -1
  52. package/.internal/core/util/DateFormatter.js.map +1 -1
  53. package/.internal/core/util/Entity.d.ts +8 -5
  54. package/.internal/core/util/Entity.d.ts.map +1 -1
  55. package/.internal/core/util/Entity.js +21 -21
  56. package/.internal/core/util/Entity.js.map +1 -1
  57. package/CHANGELOG.md +30 -0
  58. package/examples/javascript/flow-chord/package.json +1 -1
  59. package/examples/javascript/flow-chord-directed/package.json +1 -1
  60. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  61. package/examples/javascript/flow-sankey/package.json +1 -1
  62. package/examples/javascript/gauge/package.json +1 -1
  63. package/examples/javascript/gauge-bands/package.json +1 -1
  64. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  65. package/examples/javascript/hierarchy-pack/package.json +1 -1
  66. package/examples/javascript/hierarchy-partition/package.json +1 -1
  67. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  68. package/examples/javascript/hierarchy-tree/package.json +1 -1
  69. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  70. package/examples/javascript/json/package.json +1 -1
  71. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  72. package/examples/javascript/map-day-and-night/package.json +1 -1
  73. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  74. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  75. package/examples/javascript/map-with-bubbles/package.json +1 -1
  76. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  77. package/examples/javascript/misc-40-charts/package.json +1 -1
  78. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  79. package/examples/javascript/pie-chart/package.json +1 -1
  80. package/examples/javascript/pie-donut-chart/package.json +1 -1
  81. package/examples/javascript/pie-variable-radius/package.json +1 -1
  82. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  83. package/examples/javascript/radar-heat-map/package.json +1 -1
  84. package/examples/javascript/radar-line/package.json +1 -1
  85. package/examples/javascript/radar-time-line/package.json +1 -1
  86. package/examples/javascript/sliced-funnel/package.json +1 -1
  87. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  88. package/examples/javascript/sliced-pyramid/package.json +1 -1
  89. package/examples/javascript/stock-chart/package.json +1 -1
  90. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  91. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  92. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  93. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  94. package/examples/javascript/stock-chart-live/package.json +1 -1
  95. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  96. package/examples/javascript/venn-diagram/package.json +1 -1
  97. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  98. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  99. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  100. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  101. package/examples/javascript/xy-bubble/package.json +1 -1
  102. package/examples/javascript/xy-candlestick/package.json +1 -1
  103. package/examples/javascript/xy-clustered-column/package.json +1 -1
  104. package/examples/javascript/xy-column/package.json +1 -1
  105. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  106. package/examples/javascript/xy-data-grouping/package.json +1 -1
  107. package/examples/javascript/xy-draggable-range/package.json +1 -1
  108. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  109. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  110. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  111. package/examples/javascript/xy-line/package.json +1 -1
  112. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  113. package/examples/javascript/xy-live-data/package.json +1 -1
  114. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  115. package/examples/javascript/xy-ohlc/package.json +1 -1
  116. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  117. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  118. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  119. package/examples/javascript/xy-stacked-column/package.json +1 -1
  120. package/examples/javascript/xy-stacked-step/package.json +1 -1
  121. package/examples/javascript/xy-stock/package.json +1 -1
  122. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  123. package/examples/typescript/flow-chord/package.json +1 -1
  124. package/examples/typescript/flow-chord-directed/package.json +1 -1
  125. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  126. package/examples/typescript/flow-sankey/package.json +1 -1
  127. package/examples/typescript/gauge/package.json +1 -1
  128. package/examples/typescript/gauge-bands/package.json +1 -1
  129. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  130. package/examples/typescript/hierarchy-pack/package.json +1 -1
  131. package/examples/typescript/hierarchy-partition/package.json +1 -1
  132. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  133. package/examples/typescript/hierarchy-tree/package.json +1 -1
  134. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  135. package/examples/typescript/json/package.json +1 -1
  136. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  137. package/examples/typescript/map-day-and-night/package.json +1 -1
  138. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  139. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  140. package/examples/typescript/map-with-bubbles/package.json +1 -1
  141. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  142. package/examples/typescript/misc-40-charts/package.json +1 -1
  143. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  144. package/examples/typescript/pie-chart/package.json +1 -1
  145. package/examples/typescript/pie-donut-chart/package.json +1 -1
  146. package/examples/typescript/pie-variable-radius/package.json +1 -1
  147. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  148. package/examples/typescript/radar-heat-map/package.json +1 -1
  149. package/examples/typescript/radar-line/package.json +1 -1
  150. package/examples/typescript/radar-time-line/package.json +1 -1
  151. package/examples/typescript/sliced-funnel/package.json +1 -1
  152. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  153. package/examples/typescript/sliced-pyramid/package.json +1 -1
  154. package/examples/typescript/stock-chart/package.json +1 -1
  155. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  156. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  157. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  158. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  159. package/examples/typescript/stock-chart-live/package.json +1 -1
  160. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  161. package/examples/typescript/venn-diagram/package.json +1 -1
  162. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  163. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  164. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  165. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  166. package/examples/typescript/xy-bubble/package.json +1 -1
  167. package/examples/typescript/xy-candlestick/package.json +1 -1
  168. package/examples/typescript/xy-clustered-column/package.json +1 -1
  169. package/examples/typescript/xy-column/package.json +1 -1
  170. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  171. package/examples/typescript/xy-data-grouping/package.json +1 -1
  172. package/examples/typescript/xy-draggable-range/package.json +1 -1
  173. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  174. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  175. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  176. package/examples/typescript/xy-line/package.json +1 -1
  177. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  178. package/examples/typescript/xy-live-data/package.json +1 -1
  179. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  180. package/examples/typescript/xy-ohlc/package.json +1 -1
  181. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  182. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  183. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  184. package/examples/typescript/xy-stacked-column/package.json +1 -1
  185. package/examples/typescript/xy-stacked-step/package.json +1 -1
  186. package/examples/typescript/xy-stock/package.json +1 -1
  187. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  188. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Settings } from \"../util/Entity\";\nimport { Container, IContainerSettings, IContainerPrivate, IContainerEvents } from \"./Container\";\nimport { ListData } from \"../util/Data\";\nimport * as $array from \"../util/Array\";\nimport * as $object from \"../util/Object\";\nimport type * as $ease from \"../util/Ease\";\nimport type { Bullet } from \"./Bullet\";\n\n/**\n * A base element that holds data bit (data item) for any [[Component]].\n */\nexport class DataItem<P extends IComponentDataItem> extends Settings {\n\tdeclare public _settings: P;\n\n\t/**\n\t * A data item's owener [[Component]].\n\t */\n\tpublic component: Component;\n\n\t/**\n\t * A reference to actual item in source data this item is based on.\n\t */\n\tpublic dataContext: unknown;\n\n\t/**\n\t * @todo requires description\n\t */\n\tpublic bullets: Array<Bullet> | undefined;\n\n\t/**\n\t * A set of \"open\" values.\n\t */\n\tpublic open: { [index: string]: any } | undefined;\n\n\t/**\n\t * A set of \"close\" values.\n\t */\n\tpublic close: { [index: string]: any } | undefined;\n\n\tconstructor(component: Component, dataContext: unknown, settings: P) {\n\t\tsuper(settings);\n\n\t\tthis.dataContext = dataContext;\n\t\tthis.component = component;\n\t\tthis._settings.visible = true;\n\t\tthis._checkDirty();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tthis.component.markDirtyValues(this);\n\t}\n\n\tprotected _startAnimation(): void {\n\t\tthis.component._root._addAnimation(this);\n\t}\n\n\tprotected _animationTime(): number | null {\n\t\treturn this.component._root.animationTime;\n\t}\n\n\tprotected _dispose() {\n\t\tif (this.component) {\n\t\t\tthis.component.disposeDataItem(this);\n\t\t}\n\t\tsuper._dispose();\n\t}\n\n\t/**\n\t * Shows a data item that's currently hidden.\n\t */\n\tpublic show(duration?: number) {\n\t\tthis.setRaw(\"visible\", true);\n\t\tif (this.component) {\n\t\t\tthis.component.showDataItem(this, duration);\n\t\t}\n\t}\n\n\t/**\n\t * Hides a data item that's currently visible.\n\t */\n\tpublic hide(duration?: number) {\n\t\tthis.setRaw(\"visible\", false);\n\t\tif (this.component) {\n\t\t\tthis.component.hideDataItem(this, duration);\n\t\t}\n\t}\n\n\tpublic isHidden() {\n\t\treturn !this.get(\"visible\");\n\t}\n}\n\n\nexport interface IComponentDataItem {\n\tvisible?: boolean;\n}\n\nexport interface IComponentSettings extends IContainerSettings {\n\n\t/**\n\t * A duration of the animation from one setting value to another, in\n\t * milliseconds.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animating_data_values} for more info\n\t */\n\tinterpolationDuration?: number;\n\n\t/**\n\t * Easing function to use for cross setting value animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t */\n\tinterpolationEasing?: $ease.Easing;\n\n}\n\nexport interface IComponentPrivate extends IContainerPrivate {\n}\n\nexport interface IComponentEvents extends IContainerEvents {\n\tdatavalidated: {}\n}\n\n/**\n * A base class for elements that make use of data.\n */\nexport abstract class Component extends Container {\n\tpublic static className: string = \"Component\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Component.className]);\n\n\tdeclare public _settings: IComponentSettings;\n\tdeclare public _privateSettings: IComponentPrivate;\n\tdeclare public _dataItemSettings: IComponentDataItem;\n\tdeclare public _events: IComponentEvents;\n\n\tprotected _data: ListData<unknown> = new ListData();\n\n\tprotected _dataItems: Array<DataItem<this[\"_dataItemSettings\"]>> = [];\n\n\tpublic _mainDataItems = this._dataItems;\n\n\tprotected valueFields: Array<string> = [];\n\tprotected fields: Array<string> = [\"id\"];\n\n\tprotected _valueFields!: Array<string>;\n\tprotected _valueFieldsF!: { [index: string]: { fieldKey: string, workingKey: string } };\n\n\tprotected _fields!: Array<string>;\n\tprotected _fieldsF!: { [index: string]: string };\n\n\tpublic _valuesDirty: boolean = false;\n\n\tprotected _dataChanged: boolean = false;\n\n\tprotected _dataGrouped = false;\n\n\t/**\n\t * Indicates if the component has already been initialized.\n\t */\n\tpublic inited: boolean = false;\n\n\t/**\n\t * Component's data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/data/} for more info\n\t */\n\tpublic set data(data: ListData<unknown>) {\n\t\tdata.incrementRef();\n\t\tthis._data.decrementRef();\n\t\tthis._data = data;\n\t}\n\n\t/**\n\t * @return Data\n\t */\n\tpublic get data(): ListData<unknown> {\n\t\treturn this._data;\n\t}\n\n\tprotected _dispose() {\n\t\tsuper._dispose();\n\t\tthis._data.decrementRef();\n\t}\n\n\tprotected _onDataClear() {\n\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._data.incrementRef();\n\t\tthis._updateFields();\n\n\t\tthis._disposers.push(this.data.events.onAll((change) => {\n\t\t\tconst dataItems = this._mainDataItems;\n\t\t\tthis.markDirtyValues();\n\t\t\tthis._markDirtyGroup();\n\t\t\tthis._dataChanged = true;\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(dataItems, (dataItem) => {\n\t\t\t\t\tdataItem.dispose();\n\t\t\t\t});\n\n\t\t\t\tdataItems.length = 0;\n\t\t\t\tthis._onDataClear();\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tconst dataItem = new DataItem(this, change.newValue, this._makeDataItem(change.newValue));\n\t\t\t\tdataItems.push(dataItem);\n\t\t\t\tthis.processDataItem(dataItem);\n\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.index];\n\t\t\t\tconst properties = this._makeDataItem(change.newValue);\n\n\t\t\t\t$object.keys(properties).forEach((key) => {\n\t\t\t\t\tdataItem.animate({\n\t\t\t\t\t\tkey: key,\n\t\t\t\t\t\tto: properties[key],\n\t\t\t\t\t\tduration: this.get(\"interpolationDuration\", 0),\n\t\t\t\t\t\teasing: this.get(\"interpolationEasing\"),\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tdataItem.dataContext = change.newValue;\n\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tconst dataItem = new DataItem(this, change.newValue, this._makeDataItem(change.newValue));\n\t\t\t\tdataItems.splice(change.index, 0, dataItem);\n\t\t\t\tthis.processDataItem(dataItem);\n\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.index];\n\t\t\t\tdataItem.dispose();\n\t\t\t\tdataItems.splice(change.index, 1);\n\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.oldIndex];\n\t\t\t\tdataItems.splice(change.oldIndex, 1);\n\t\t\t\tdataItems.splice(change.newIndex, 0, dataItem);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IStreamEvent type\");\n\t\t\t}\n\n\t\t\tthis._afterDataChange();\n\t\t}));\n\t}\n\n\tprotected _updateFields() {\n\t\tif (this.valueFields) {\n\t\t\tthis._valueFields = [];\n\t\t\tthis._valueFieldsF = {};\n\n\t\t\t$array.each(this.valueFields as Array<keyof this[\"_settings\"]>, (key) => {\n\t\t\t\tconst field = this.get(<any>(key + \"Field\"));\n\t\t\t\tif (field) {\n\t\t\t\t\tthis._valueFields.push(<any>key);\n\t\t\t\t\tthis._valueFieldsF[key as string] = { fieldKey: key + \"Field\", workingKey: key + \"Working\" };\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (this.fields) {\n\t\t\tthis._fields = [];\n\t\t\tthis._fieldsF = {};\n\n\t\t\t$array.each(this.fields as Array<keyof this[\"_settings\"]>, (key) => {\n\t\t\t\tconst field = this.get(<any>(key + \"Field\"));\n\t\t\t\tif (field) {\n\t\t\t\t\tthis._fields.push(<any>key);\n\t\t\t\t\tthis._fieldsF[key as string] = key + \"Field\";\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * A list of component's data items.\n\t *\n\t * @return Data items\n\t */\n\tpublic get dataItems(): Array<DataItem<this[\"_dataItemSettings\"]>> {\n\t\treturn this._dataItems;\n\t}\n\n\tprotected processDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) { }\n\n\n\tpublic _makeDataItem(data: unknown): this[\"_dataItemSettings\"] {\n\t\t//const output: this[\"_dataItemSettings\"] = {};\n\t\tconst output: any = {}; // temporary to solve error\n\t\tif (this._valueFields) {\n\t\t\t$array.each(this._valueFields, (key) => {\n\t\t\t\tconst field = this.get(<any>(this._valueFieldsF[key].fieldKey));\n\t\t\t\toutput[key] = (data as any)[field];\n\n\t\t\t\toutput[this._valueFieldsF[key].workingKey] = output[key];\n\t\t\t});\n\t\t}\n\t\tif (this._fields) {\n\t\t\t$array.each(this._fields, (key) => {\n\t\t\t\tconst field = this.get(<any>(this._fieldsF[key]));\n\t\t\t\toutput[key] = (data as any)[field];\n\t\t\t});\n\t\t}\n\n\t\treturn output;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeDataItem(data: this[\"_dataItemSettings\"]): DataItem<this[\"_dataItemSettings\"]> {\n\t\tlet dataItem = new DataItem(this, undefined, data);\n\t\tthis.processDataItem(dataItem);\n\t\treturn dataItem;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic pushDataItem(data: this[\"_dataItemSettings\"]): DataItem<this[\"_dataItemSettings\"]> {\n\t\tconst dataItem = this.makeDataItem(data);\n\t\tthis._mainDataItems.push(dataItem);\n\t\treturn dataItem;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) { }\n\n\t/**\n\t * Shows component's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param _duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, _duration?: number): Promise<void> {\n\t\tdataItem.set(\"visible\", true);\n\t}\n\n\t/**\n\t * Hides component's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param _duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, _duration?: number): Promise<void> {\n\t\tdataItem.set(\"visible\", false);\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._valuesDirty = false;\n\t}\n\n\tprotected _afterDataChange() {\n\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tif (this._dataChanged) {\n\t\t\tconst type = \"datavalidated\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\t\t\tthis._dataChanged = false;\t\t\t\n\t\t}\n\n\t\tthis.inited = true;\n\t}\n\n\t/**\n\t * Forces a repaint of the element which relies on data.\n\t *\n\t * @since 5.0.21\n\t */\n\tpublic markDirtyValues(_dataItem?: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tthis.markDirty();\n\t\tthis._valuesDirty = true;\n\t}\n\n\tpublic _markDirtyGroup() {\n\t\tthis._dataGrouped = false;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtySize() {\n\t\tthis._sizeDirty = true;\n\t\tthis.markDirty();\n\t}\n\n}\n"]}
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Settings } from \"../util/Entity\";\nimport { Container, IContainerSettings, IContainerPrivate, IContainerEvents } from \"./Container\";\nimport { ListData } from \"../util/Data\";\nimport * as $array from \"../util/Array\";\nimport * as $object from \"../util/Object\";\nimport type * as $ease from \"../util/Ease\";\nimport type { Bullet } from \"./Bullet\";\n\n/**\n * A base element that holds data bit (data item) for any [[Component]].\n */\nexport class DataItem<P extends IComponentDataItem> extends Settings {\n\tdeclare public _settings: P;\n\n\t/**\n\t * A data item's owener [[Component]].\n\t */\n\tpublic component: Component;\n\n\t/**\n\t * A reference to actual item in source data this item is based on.\n\t */\n\tpublic dataContext: unknown;\n\n\t/**\n\t * @todo requires description\n\t */\n\tpublic bullets: Array<Bullet> | undefined;\n\n\t/**\n\t * A set of \"open\" values.\n\t */\n\tpublic open: { [index: string]: any } | undefined;\n\n\t/**\n\t * A set of \"close\" values.\n\t */\n\tpublic close: { [index: string]: any } | undefined;\n\n\tconstructor(component: Component, dataContext: unknown, settings: P) {\n\t\tsuper(settings);\n\n\t\tthis.dataContext = dataContext;\n\t\tthis.component = component;\n\t\tthis._settings.visible = true;\n\t\tthis._checkDirty();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tthis.component.markDirtyValues(this);\n\t}\n\n\tpublic _startAnimation(): void {\n\t\tthis.component._root._addAnimation(this);\n\t}\n\n\tprotected _animationTime(): number | null {\n\t\treturn this.component._root.animationTime;\n\t}\n\n\tprotected _dispose() {\n\t\tif (this.component) {\n\t\t\tthis.component.disposeDataItem(this);\n\t\t}\n\t\tsuper._dispose();\n\t}\n\n\t/**\n\t * Shows a data item that's currently hidden.\n\t */\n\tpublic show(duration?: number) {\n\t\tthis.setRaw(\"visible\", true);\n\t\tif (this.component) {\n\t\t\tthis.component.showDataItem(this, duration);\n\t\t}\n\t}\n\n\t/**\n\t * Hides a data item that's currently visible.\n\t */\n\tpublic hide(duration?: number) {\n\t\tthis.setRaw(\"visible\", false);\n\t\tif (this.component) {\n\t\t\tthis.component.hideDataItem(this, duration);\n\t\t}\n\t}\n\n\tpublic isHidden() {\n\t\treturn !this.get(\"visible\");\n\t}\n}\n\n\nexport interface IComponentDataItem {\n\tvisible?: boolean;\n}\n\nexport interface IComponentSettings extends IContainerSettings {\n\n\t/**\n\t * A duration of the animation from one setting value to another, in\n\t * milliseconds.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animating_data_values} for more info\n\t */\n\tinterpolationDuration?: number;\n\n\t/**\n\t * Easing function to use for cross setting value animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t */\n\tinterpolationEasing?: $ease.Easing;\n\n}\n\nexport interface IComponentPrivate extends IContainerPrivate {\n}\n\nexport interface IComponentEvents extends IContainerEvents {\n\tdatavalidated: {}\n}\n\n/**\n * A base class for elements that make use of data.\n */\nexport abstract class Component extends Container {\n\tpublic static className: string = \"Component\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Component.className]);\n\n\tdeclare public _settings: IComponentSettings;\n\tdeclare public _privateSettings: IComponentPrivate;\n\tdeclare public _dataItemSettings: IComponentDataItem;\n\tdeclare public _events: IComponentEvents;\n\n\tprotected _data: ListData<unknown> = new ListData();\n\n\tprotected _dataItems: Array<DataItem<this[\"_dataItemSettings\"]>> = [];\n\n\tpublic _mainDataItems = this._dataItems;\n\n\tprotected valueFields: Array<string> = [];\n\tprotected fields: Array<string> = [\"id\"];\n\n\tprotected _valueFields!: Array<string>;\n\tprotected _valueFieldsF!: { [index: string]: { fieldKey: string, workingKey: string } };\n\n\tprotected _fields!: Array<string>;\n\tprotected _fieldsF!: { [index: string]: string };\n\n\tpublic _valuesDirty: boolean = false;\n\n\tprotected _dataChanged: boolean = false;\n\n\tprotected _dataGrouped = false;\n\n\t/**\n\t * Indicates if the component has already been initialized.\n\t */\n\tpublic inited: boolean = false;\n\n\t/**\n\t * Component's data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/data/} for more info\n\t */\n\tpublic set data(data: ListData<unknown>) {\n\t\tdata.incrementRef();\n\t\tthis._data.decrementRef();\n\t\tthis._data = data;\n\t}\n\n\t/**\n\t * @return Data\n\t */\n\tpublic get data(): ListData<unknown> {\n\t\treturn this._data;\n\t}\n\n\tprotected _dispose() {\n\t\tsuper._dispose();\n\t\tthis._data.decrementRef();\n\t}\n\n\tprotected _onDataClear() {\n\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._data.incrementRef();\n\t\tthis._updateFields();\n\n\t\tthis._disposers.push(this.data.events.onAll((change) => {\n\t\t\tconst dataItems = this._mainDataItems;\n\t\t\tthis.markDirtyValues();\n\t\t\tthis._markDirtyGroup();\n\t\t\tthis._dataChanged = true;\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(dataItems, (dataItem) => {\n\t\t\t\t\tdataItem.dispose();\n\t\t\t\t});\n\n\t\t\t\tdataItems.length = 0;\n\t\t\t\tthis._onDataClear();\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tconst dataItem = new DataItem(this, change.newValue, this._makeDataItem(change.newValue));\n\t\t\t\tdataItems.push(dataItem);\n\t\t\t\tthis.processDataItem(dataItem);\n\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.index];\n\t\t\t\tconst properties = this._makeDataItem(change.newValue);\n\n\t\t\t\t$object.keys(properties).forEach((key) => {\n\t\t\t\t\tdataItem.animate({\n\t\t\t\t\t\tkey: key,\n\t\t\t\t\t\tto: properties[key],\n\t\t\t\t\t\tduration: this.get(\"interpolationDuration\", 0),\n\t\t\t\t\t\teasing: this.get(\"interpolationEasing\"),\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tdataItem.dataContext = change.newValue;\n\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tconst dataItem = new DataItem(this, change.newValue, this._makeDataItem(change.newValue));\n\t\t\t\tdataItems.splice(change.index, 0, dataItem);\n\t\t\t\tthis.processDataItem(dataItem);\n\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.index];\n\t\t\t\tdataItem.dispose();\n\t\t\t\tdataItems.splice(change.index, 1);\n\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tconst dataItem = dataItems[change.oldIndex];\n\t\t\t\tdataItems.splice(change.oldIndex, 1);\n\t\t\t\tdataItems.splice(change.newIndex, 0, dataItem);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IStreamEvent type\");\n\t\t\t}\n\n\t\t\tthis._afterDataChange();\n\t\t}));\n\t}\n\n\tprotected _updateFields() {\n\t\tif (this.valueFields) {\n\t\t\tthis._valueFields = [];\n\t\t\tthis._valueFieldsF = {};\n\n\t\t\t$array.each(this.valueFields as Array<keyof this[\"_settings\"]>, (key) => {\n\t\t\t\tconst field = this.get(<any>(key + \"Field\"));\n\t\t\t\tif (field) {\n\t\t\t\t\tthis._valueFields.push(<any>key);\n\t\t\t\t\tthis._valueFieldsF[key as string] = { fieldKey: key + \"Field\", workingKey: key + \"Working\" };\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (this.fields) {\n\t\t\tthis._fields = [];\n\t\t\tthis._fieldsF = {};\n\n\t\t\t$array.each(this.fields as Array<keyof this[\"_settings\"]>, (key) => {\n\t\t\t\tconst field = this.get(<any>(key + \"Field\"));\n\t\t\t\tif (field) {\n\t\t\t\t\tthis._fields.push(<any>key);\n\t\t\t\t\tthis._fieldsF[key as string] = key + \"Field\";\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * A list of component's data items.\n\t *\n\t * @return Data items\n\t */\n\tpublic get dataItems(): Array<DataItem<this[\"_dataItemSettings\"]>> {\n\t\treturn this._dataItems;\n\t}\n\n\tprotected processDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) { }\n\n\n\tpublic _makeDataItem(data: unknown): this[\"_dataItemSettings\"] {\n\t\t//const output: this[\"_dataItemSettings\"] = {};\n\t\tconst output: any = {}; // temporary to solve error\n\t\tif (this._valueFields) {\n\t\t\t$array.each(this._valueFields, (key) => {\n\t\t\t\tconst field = this.get(<any>(this._valueFieldsF[key].fieldKey));\n\t\t\t\toutput[key] = (data as any)[field];\n\n\t\t\t\toutput[this._valueFieldsF[key].workingKey] = output[key];\n\t\t\t});\n\t\t}\n\t\tif (this._fields) {\n\t\t\t$array.each(this._fields, (key) => {\n\t\t\t\tconst field = this.get(<any>(this._fieldsF[key]));\n\t\t\t\toutput[key] = (data as any)[field];\n\t\t\t});\n\t\t}\n\n\t\treturn output;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeDataItem(data: this[\"_dataItemSettings\"]): DataItem<this[\"_dataItemSettings\"]> {\n\t\tlet dataItem = new DataItem(this, undefined, data);\n\t\tthis.processDataItem(dataItem);\n\t\treturn dataItem;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic pushDataItem(data: this[\"_dataItemSettings\"]): DataItem<this[\"_dataItemSettings\"]> {\n\t\tconst dataItem = this.makeDataItem(data);\n\t\tthis._mainDataItems.push(dataItem);\n\t\treturn dataItem;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) { }\n\n\t/**\n\t * Shows component's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param _duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, _duration?: number): Promise<void> {\n\t\tdataItem.set(\"visible\", true);\n\t}\n\n\t/**\n\t * Hides component's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param _duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, _duration?: number): Promise<void> {\n\t\tdataItem.set(\"visible\", false);\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._valuesDirty = false;\n\t}\n\n\tprotected _afterDataChange() {\n\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tif (this._dataChanged) {\n\t\t\tconst type = \"datavalidated\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\t\t\tthis._dataChanged = false;\n\t\t}\n\n\t\tthis.inited = true;\n\t}\n\n\t/**\n\t * Forces a repaint of the element which relies on data.\n\t *\n\t * @since 5.0.21\n\t */\n\tpublic markDirtyValues(_dataItem?: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tthis.markDirty();\n\t\tthis._valuesDirty = true;\n\t}\n\n\tpublic _markDirtyGroup() {\n\t\tthis._dataGrouped = false;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtySize() {\n\t\tthis._sizeDirty = true;\n\t\tthis.markDirty();\n\t}\n\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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"}
@@ -118,6 +118,9 @@ var Container = /** @class */ (function (_super) {
118
118
  $array.eachReverse(this.allChildren(), function (child) {
119
119
  child.dispose();
120
120
  });
121
+ if (this.getPrivate("htmlElement")) {
122
+ this._root._removeHTMLContent(this);
123
+ }
121
124
  _super.prototype._dispose.call(this);
122
125
  }
123
126
  });
@@ -165,6 +168,7 @@ var Container = /** @class */ (function (_super) {
165
168
  childrenDisplay.removeChild(contentMask._display);
166
169
  childrenDisplay.mask = null;
167
170
  contentMask.dispose();
171
+ this._contentMask = undefined;
168
172
  }
169
173
  }
170
174
  }
@@ -546,6 +550,9 @@ var Container = /** @class */ (function (_super) {
546
550
  if (this._vsbd1) {
547
551
  this._vsbd1.dispose();
548
552
  }
553
+ var childrenDisplay = this._childrenDisplay;
554
+ childrenDisplay.y = 0;
555
+ this.setPrivate("height", undefined);
549
556
  this.set("maskContent", false);
550
557
  this.set("paddingRight", undefined);
551
558
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Graphics } from \"./Graphics\";\nimport type { Layout } from \"./Layout\";\nimport type { IContainer } from \"./backend/Renderer\";\nimport type { IBounds } from \"../util/IBounds\";\nimport type { Scrollbar } from \"./Scrollbar\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Children } from \"../util/Children\";\nimport { Percent } from \"../util/Percent\";\nimport { Sprite, ISpriteSettings, ISpritePrivate, ISpriteEvents } from \"./Sprite\";\nimport { Rectangle } from \"./Rectangle\";\nimport { HorizontalLayout } from \"./HorizontalLayout\";\nimport { VerticalLayout } from \"./VerticalLayout\";\nimport { GridLayout } from \"./GridLayout\";\nimport { populateString } from \"../util/PopulateString\";\nimport type { IDisposer } from \"../util/Disposer\";\n\nimport * as $array from \"../util/Array\";\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IContainerSettings extends ISpriteSettings {\n\n\t/**\n\t * Left padding in pixels.\n\t */\n\tpaddingLeft?: number;\n\n\t/**\n\t * Right padding in pixels.\n\t */\n\tpaddingRight?: number;\n\n\t/**\n\t * Top padding in pixels.\n\t */\n\tpaddingTop?: number;\n\n\t/**\n\t * Bottom padding in pixels.\n\t */\n\tpaddingBottom?: number;\n\n\t/**\n\t * Background element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Background} for more info\n\t */\n\tbackground?: Graphics;\n\n\t/**\n\t * A method to layout\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Layout} for more info\n\t */\n\tlayout?: Layout | null;\n\n\t/**\n\t * An element to use as a container's mask (clipping region).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Masks} for more info\n\t */\n\tmask?: Graphics | null;\n\n\t/**\n\t * If set to `true` all content going outside the bounds of the container\n\t * will be clipped.\n\t */\n\tmaskContent?: boolean;\n\n\t/**\n\t * If set to `true` all descendants - not just direct children, but every\n\t * element in it - will become \"interactive\".\n\t */\n\tinteractiveChildren?: boolean;\n\n\t/**\n\t * If set to `true`, applying a state on a container will also apply the same\n\t * state on its children.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#States} for more info\n\t */\n\tsetStateOnChildren?: boolean;\n\n\t/**\n\t * Setting this to an instance of [[Scrollbar]] will enable vertical\n\t * scrolling of content if it does not fit into the Container.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Scrollbar} for more info\n\t */\n\tverticalScrollbar?: Scrollbar;\n\n\t/**\n\t * If set to `true` its children will be laid out in opposite order.\n\t *\n\t * @since 5.1.1\n\t */\n\treverseChildren?: boolean;\n\n\thtml?: string;\n\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\nexport interface IContainerPrivate extends ISpritePrivate {\n\t/**\n\t * @todo review\n\t */\n\thtmlElement?: HTMLDivElement;\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\n/**\n * A basic element that can have child elements, maintain their layout, and\n * have a background.\n *\n * It can have any [[Sprite]] element as a child, from very basic shapes, to\n * full-fledged charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n * @important\n */\nexport class Container extends Sprite {\n\n\tdeclare public _settings: IContainerSettings;\n\tdeclare public _privateSettings: IContainerPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tpublic _display: IContainer = this._root._renderer.makeContainer();\n\n\tpublic _childrenDisplay: IContainer = this._root._renderer.makeContainer();\n\n\t/**\n\t * List of Container's child elements.\n\t */\n\tpublic children: Children<Sprite> = new Children(this);\n\n\tpublic _percentageSizeChildren: Array<Sprite> = [];\n\tpublic _percentagePositionChildren: Array<Sprite> = [];\n\n\tpublic static className: string = \"Container\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Container.className]);\n\n\tpublic _prevWidth: number = 0;\n\tpublic _prevHeight: number = 0;\n\n\tprotected _contentWidth: number = 0;\n\tprotected _contentHeight: number = 0;\n\n\tprotected _contentMask: Rectangle | undefined;\n\n\tprotected _vsbd0: IDisposer | undefined;\n\tprotected _vsbd1: IDisposer | undefined;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._display.addChild(this._childrenDisplay);\n\t}\n\n\tprotected _dispose() {\n\t\t$array.eachReverse(this.allChildren(), (child) => {\n\t\t\tchild.dispose();\n\t\t});\n\n\t\tsuper._dispose();\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this.isDirty(\"interactiveChildren\")) {\n\t\t\tthis._display.interactiveChildren = this.get(\"interactiveChildren\", false);\n\t\t}\n\n\t\tif (this.isDirty(\"layout\")) {\n\t\t\tthis._prevWidth = 0;\n\t\t\tthis._prevHeight = 0;\n\t\t\tthis.markDirtyBounds();\n\t\t\tif (this._prevSettings.layout) {\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tchild.removePrivate(\"x\");\n\t\t\t\t\tchild.removePrivate(\"y\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"paddingTop\") || this.isDirty(\"paddingBottom\") || this.isDirty(\"paddingLeft\") || this.isDirty(\"paddingRight\")) {\n\t\t\tthis.children.each((child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"maskContent\")) {\n\n\t\t\tconst childrenDisplay = this._childrenDisplay;\n\n\t\t\tlet contentMask = this._contentMask;\n\t\t\tif (this.get(\"maskContent\")) {\n\t\t\t\tif (!contentMask) {\n\t\t\t\t\tcontentMask = Rectangle.new(this._root, {\n\t\t\t\t\t\twidth: this.width(),\n\t\t\t\t\t\theight: this.height()\n\t\t\t\t\t});\n\t\t\t\t\tthis._contentMask = contentMask;\n\t\t\t\t\tchildrenDisplay.addChildAt(contentMask._display, 0);\n\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (contentMask) {\n\t\t\t\t\tchildrenDisplay.removeChild(contentMask._display);\n\t\t\t\t\tchildrenDisplay.mask = null;\n\t\t\t\t\tcontentMask.dispose();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"html\")) {\n\t\t\tconst html = this.get(\"html\");\n\t\t\tif (html && html !== \"\") {\n\t\t\t\tthis._root._setHTMLContent(this, populateString(this, this.get(\"html\", \"\")));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._root._removeHTMLContent(this);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\n\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\tchild.markDirtyPosition();\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\tthis.updateBackground();\n\t}\n\n\tprotected updateBackground() {\n\t\tconst background = this.get(\"background\");\n\t\tlet bounds = this._localBounds;\n\n\t\tif (bounds && !this.isHidden()) {\n\t\t\tlet x = bounds.left;\n\t\t\tlet y = bounds.top;\n\t\t\tlet w = bounds.right - x;\n\t\t\tlet h = bounds.bottom - y;\n\n\t\t\tlet width = this.width();\n\t\t\tlet height = this.height();\n\n\t\t\tif (background) {\n\t\t\t\tbackground.setAll({ width: w, height: h, x: x, y: y });\n\t\t\t\tif (this._display.interactive) {\n\t\t\t\t\tbackground._display.interactive = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst contentMask = this._contentMask;\n\t\t\tif (contentMask) {\n\t\t\t\tcontentMask.setAll({ width, height });\n\t\t\t}\n\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar.set(\"height\", height);\n\t\t\t\tverticalScrollbar.set(\"x\", width - verticalScrollbar.width() - verticalScrollbar.get(\"marginRight\", 0));\n\t\t\t\tverticalScrollbar.set(\"end\", verticalScrollbar.get(\"start\", 0) + height / this._contentHeight);\n\n\t\t\t\tconst bg = verticalScrollbar.get(\"background\");\n\t\t\t\tif (bg) {\n\t\t\t\t\tbg.setAll({ width: verticalScrollbar.width(), height: height })\n\t\t\t\t}\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (this._contentHeight <= height) {\n\t\t\t\t\tvisible = false;\n\t\t\t\t}\n\t\t\t\tverticalScrollbar.setPrivate(\"visible\", visible);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _applyThemes(): boolean {\n\t\tif (super._applyThemes()) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild._applyThemes();\n\t\t\t});\n\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic _applyState(name: string): void {\n\t\tsuper._applyState(name);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.apply(name);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic _applyStateAnimated(name: string, duration?: number): void {\n\t\tsuper._applyStateAnimated(name, duration);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.applyAnimate(name, duration);\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Returns container's inner width (width without padding) in pixels.\n\t *\n\t * @return Inner width (px)\n\t */\n\tpublic innerWidth(): number {\n\t\treturn this.width() - this.get(\"paddingRight\", 0) - this.get(\"paddingLeft\", 0);\n\t}\n\n\t/**\n\t * Returns container's inner height (height without padding) in pixels.\n\t *\n\t * @return Inner height (px)\n\t */\n\tpublic innerHeight(): number {\n\t\treturn this.height() - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0);\n\t}\n\n\tprotected _getBounds() {\n\n\t\tlet width = this.get(\"width\");\n\t\tlet height = this.get(\"height\");\n\t\tlet pWidth = this.getPrivate(\"width\");\n\t\tlet pHeight = this.getPrivate(\"height\");\n\n\t\tlet bounds: IBounds = {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: this.width(),\n\t\t\tbottom: this.height(),\n\t\t};\n\n\t\tlet layout = this.get(\"layout\");\n\t\tlet horizontal = false;\n\t\tlet vertical = false;\n\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\thorizontal = true;\n\t\t}\n\n\t\tif (layout instanceof VerticalLayout) {\n\t\t\tvertical = true;\n\t\t}\n\n\t\tif ((width != null || pWidth != null) && (height != null || pHeight != null) && !this.get(\"verticalScrollbar\")) {\n\t\t\t// void\n\t\t}\n\t\telse {\n\t\t\tlet m = Number.MAX_VALUE;\n\n\t\t\tlet l = m;\n\t\t\tlet r = -m;\n\t\t\tlet t = m;\n\t\t\tlet b = -m;\n\n\t\t\tconst paddingLeft = this.get(\"paddingLeft\", 0);\n\t\t\tconst paddingTop = this.get(\"paddingTop\", 0);\n\t\t\tconst paddingRight = this.get(\"paddingRight\", 0);\n\t\t\tconst paddingBottom = this.get(\"paddingBottom\", 0);\n\n\t\t\tthis.children.each((child) => {\n\t\t\t\tif (child.get(\"position\") != \"absolute\" && child.get(\"isMeasured\")) {\n\t\t\t\t\tlet childBounds = child.adjustedLocalBounds();\n\t\t\t\t\tlet childX = child.x();\n\t\t\t\t\tlet childY = child.y();\n\t\t\t\t\tlet cl = childX + childBounds.left;\n\t\t\t\t\tlet cr = childX + childBounds.right;\n\t\t\t\t\tlet ct = childY + childBounds.top;\n\t\t\t\t\tlet cb = childY + childBounds.bottom;\n\n\t\t\t\t\tif (horizontal) {\n\t\t\t\t\t\tcl -= child.get(\"marginLeft\", 0);\n\t\t\t\t\t\tcr += child.get(\"marginRight\", 0);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\tct -= child.get(\"marginTop\", 0);\n\t\t\t\t\t\tcb += child.get(\"marginBottom\", 0);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (cl < l) {\n\t\t\t\t\t\tl = cl;\n\t\t\t\t\t}\n\t\t\t\t\tif (cr > r) {\n\t\t\t\t\t\tr = cr;\n\t\t\t\t\t}\n\t\t\t\t\tif (ct < t) {\n\t\t\t\t\t\tt = ct;\n\t\t\t\t\t}\n\t\t\t\t\tif (cb > b) {\n\t\t\t\t\t\tb = cb;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif (l == m) {\n\t\t\t\tl = 0;\n\t\t\t}\n\n\t\t\tif (r == -m) {\n\t\t\t\tr = 0;\n\t\t\t}\n\n\t\t\tif (t == m) {\n\t\t\t\tt = 0;\n\t\t\t}\n\n\t\t\tif (b == -m) {\n\t\t\t\tb = 0;\n\t\t\t}\n\n\t\t\tbounds.left = l - paddingLeft;\n\t\t\tbounds.top = t - paddingTop;\n\t\t\tbounds.right = r + paddingRight;\n\t\t\tbounds.bottom = b + paddingBottom;\n\t\t}\n\n\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\n\t\tif ($type.isNumber(width)) {\n\t\t\tbounds.left = 0;\n\t\t\tbounds.right = width;\n\t\t}\n\n\t\tif ($type.isNumber(pWidth)) {\n\t\t\tbounds.left = 0;\n\t\t\tbounds.right = pWidth;\n\t\t}\n\n\t\tif ($type.isNumber(height)) {\n\t\t\tbounds.top = 0;\n\t\t\tbounds.bottom = height;\n\t\t}\n\n\t\tif ($type.isNumber(pHeight)) {\n\t\t\tbounds.top = 0;\n\t\t\tbounds.bottom = pHeight;\n\t\t}\n\n\t\tthis._localBounds = bounds;\n\t}\n\n\tpublic _updateBounds() {\n\t\tconst layout = this.get(\"layout\");\n\n\t\tif (layout) {\n\t\t\tlayout.updateContainer(this);\n\t\t}\n\n\t\tsuper._updateBounds();\n\n\t\tthis.updateBackground();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tsuper.markDirty();\n\t\tthis._root._addDirtyParent(this);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tconst innerWidth = this.innerWidth();\n\t\tconst innerHeight = this.innerHeight();\n\n\t\tif (innerWidth != this._prevWidth || innerHeight != this._prevHeight) {\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout) {\n\t\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\t\thorizontal = true;\n\t\t\t\t}\n\t\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\t\tvertical = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\t\tif (!horizontal) {\n\t\t\t\t\tlet width = child.get(\"width\");\n\t\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"width\", width.value * innerWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!vertical) {\n\t\t\t\t\tlet height = child.get(\"height\");\n\t\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"height\", height.value * innerHeight);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t\tchild.markDirtyBounds();\n\t\t\t})\n\n\t\t\tthis._prevWidth = innerWidth;\n\t\t\tthis._prevHeight = innerHeight;\n\n\t\t\tthis._sizeDirty = true;\n\t\t\tthis.updateBackground();\n\t\t}\n\n\t\tthis._handleStates();\n\t}\n\n\tpublic _updateChildren() {\n\n\t\tif (this.isDirty(\"verticalScrollbar\")) {\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar._setParent(this);\n\t\t\t\tverticalScrollbar.children.removeValue(verticalScrollbar.startGrip);\n\t\t\t\tverticalScrollbar.children.removeValue(verticalScrollbar.endGrip);\n\n\t\t\t\tthis.set(\"maskContent\", true);\n\t\t\t\tthis.set(\"paddingRight\", verticalScrollbar.width() + verticalScrollbar.get(\"marginRight\", 0) + verticalScrollbar.get(\"marginLeft\", 0));\n\n\t\t\t\tlet background = this.get(\"background\");\n\n\t\t\t\tif (!background) {\n\t\t\t\t\tbackground = this.set(\"background\", Rectangle.new(this._root, {\n\t\t\t\t\t\tthemeTags: [\"background\"],\n\t\t\t\t\t\tfillOpacity: 0,\n\t\t\t\t\t\tfill: this._root.interfaceColors.get(\"alternativeBackground\")\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tthis._vsbd0 = this.events.on(\"wheel\", (event) => {\n\t\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t\t// some page element is over the chart.\n\t\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst shiftY = wheelEvent.deltaY / 5000;\n\t\t\t\t\tconst start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\t\tconst end = verticalScrollbar.get(\"end\", 1);\n\t\t\t\t\tif (start + shiftY > 0 && end + shiftY < 1) {\n\t\t\t\t\t\tverticalScrollbar.set(\"start\", start + shiftY);\n\t\t\t\t\t\tverticalScrollbar.set(\"end\", end + shiftY);\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd0);\n\n\t\t\t\tthis._vsbd1 = verticalScrollbar.events.on(\"rangechanged\", () => {\n\t\t\t\t\tlet h = this._contentHeight;\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tconst contentMask = this._contentMask;\n\n\t\t\t\t\tchildrenDisplay.y = -verticalScrollbar.get(\"start\") * h;\n\t\t\t\t\tchildrenDisplay.markDirtyLayer();\n\n\t\t\t\t\tif (contentMask) {\n\t\t\t\t\t\tcontentMask._display.y = -childrenDisplay.y;\n\t\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd1);\n\n\t\t\t\tthis._display.addChild(verticalScrollbar._display);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst previous = this._prevSettings.verticalScrollbar\n\t\t\t\tif (previous) {\n\t\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\t\tif (this._vsbd0) {\n\t\t\t\t\t\tthis._vsbd0.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tif (this._vsbd1) {\n\t\t\t\t\t\tthis._vsbd1.dispose();\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.set(\"maskContent\", false);\n\t\t\t\t\tthis.set(\"paddingRight\", undefined);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"background\")) {\n\t\t\t// TODO maybe this should dispose ?\n\t\t\tconst previous = this._prevSettings[\"background\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t}\n\n\t\t\tconst background = this.get(\"background\");\n\t\t\tif (background instanceof Sprite) {\n\t\t\t\tbackground.set(\"isMeasured\", false);\n\t\t\t\tbackground._setParent(this);\n\t\t\t\tthis._display.addChildAt(background._display, 0);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"mask\")) {\n\n\t\t\tconst mask = this.get(\"mask\");\n\n\t\t\tconst previous = this._prevSettings[\"mask\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\tif (previous != mask) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (mask) {\n\t\t\t\tvar parent = mask.parent;\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.removeValue(mask);\n\t\t\t\t}\n\n\t\t\t\tmask._setParent(this);\n\t\t\t\tthis._display.addChildAt(mask._display, 0);\n\t\t\t\tthis._childrenDisplay.mask = mask._display;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _processTemplateField(): void {\n\t\tsuper._processTemplateField();\n\t\tthis.children.each((child) => {\n\t\t\tchild._processTemplateField();\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic walkChildren(f: (child: Sprite) => void): void {\n\t\tthis.children.each((child) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic eachChildren(f: (child: Sprite) => void): void {\n\t\tconst background = this.get(\"background\");\n\t\tif (background) {\n\t\t\tf(background);\n\t\t}\n\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\");\n\t\tif (verticalScrollbar) {\n\t\t\tf(verticalScrollbar);\n\t\t}\n\n\t\tconst mask = this.get(\"mask\");\n\t\tif (mask) {\n\t\t\tf(mask);\n\t\t}\n\n\t\tthis.children.values.forEach((child) => {\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic allChildren(): Array<Sprite> {\n\t\tconst output: Array<Sprite> = [];\n\n\t\tthis.eachChildren((x) => {\n\t\t\toutput.push(x);\n\t\t});\n\n\t\treturn output;\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tconst updated = (dataItem !== this._dataItem);\n\t\tsuper._setDataItem(dataItem);\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\" && updated) {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t}\n}"]}
1
+ {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Graphics } from \"./Graphics\";\nimport type { Layout } from \"./Layout\";\nimport type { IContainer } from \"./backend/Renderer\";\nimport type { IBounds } from \"../util/IBounds\";\nimport type { Scrollbar } from \"./Scrollbar\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Children } from \"../util/Children\";\nimport { Percent } from \"../util/Percent\";\nimport { Sprite, ISpriteSettings, ISpritePrivate, ISpriteEvents } from \"./Sprite\";\nimport { Rectangle } from \"./Rectangle\";\nimport { HorizontalLayout } from \"./HorizontalLayout\";\nimport { VerticalLayout } from \"./VerticalLayout\";\nimport { GridLayout } from \"./GridLayout\";\nimport { populateString } from \"../util/PopulateString\";\nimport type { IDisposer } from \"../util/Disposer\";\n\nimport * as $array from \"../util/Array\";\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IContainerSettings extends ISpriteSettings {\n\n\t/**\n\t * Left padding in pixels.\n\t */\n\tpaddingLeft?: number;\n\n\t/**\n\t * Right padding in pixels.\n\t */\n\tpaddingRight?: number;\n\n\t/**\n\t * Top padding in pixels.\n\t */\n\tpaddingTop?: number;\n\n\t/**\n\t * Bottom padding in pixels.\n\t */\n\tpaddingBottom?: number;\n\n\t/**\n\t * Background element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Background} for more info\n\t */\n\tbackground?: Graphics;\n\n\t/**\n\t * A method to layout\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Layout} for more info\n\t */\n\tlayout?: Layout | null;\n\n\t/**\n\t * An element to use as a container's mask (clipping region).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Masks} for more info\n\t */\n\tmask?: Graphics | null;\n\n\t/**\n\t * If set to `true` all content going outside the bounds of the container\n\t * will be clipped.\n\t */\n\tmaskContent?: boolean;\n\n\t/**\n\t * If set to `true` all descendants - not just direct children, but every\n\t * element in it - will become \"interactive\".\n\t */\n\tinteractiveChildren?: boolean;\n\n\t/**\n\t * If set to `true`, applying a state on a container will also apply the same\n\t * state on its children.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#States} for more info\n\t */\n\tsetStateOnChildren?: boolean;\n\n\t/**\n\t * Setting this to an instance of [[Scrollbar]] will enable vertical\n\t * scrolling of content if it does not fit into the Container.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Scrollbar} for more info\n\t */\n\tverticalScrollbar?: Scrollbar;\n\n\t/**\n\t * If set to `true` its children will be laid out in opposite order.\n\t *\n\t * @since 5.1.1\n\t */\n\treverseChildren?: boolean;\n\n\thtml?: string;\n\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\nexport interface IContainerPrivate extends ISpritePrivate {\n\t/**\n\t * @todo review\n\t */\n\thtmlElement?: HTMLDivElement;\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\n/**\n * A basic element that can have child elements, maintain their layout, and\n * have a background.\n *\n * It can have any [[Sprite]] element as a child, from very basic shapes, to\n * full-fledged charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n * @important\n */\nexport class Container extends Sprite {\n\n\tdeclare public _settings: IContainerSettings;\n\tdeclare public _privateSettings: IContainerPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tpublic _display: IContainer = this._root._renderer.makeContainer();\n\n\tpublic _childrenDisplay: IContainer = this._root._renderer.makeContainer();\n\n\t/**\n\t * List of Container's child elements.\n\t */\n\tpublic children: Children<Sprite> = new Children(this);\n\n\tpublic _percentageSizeChildren: Array<Sprite> = [];\n\tpublic _percentagePositionChildren: Array<Sprite> = [];\n\n\tpublic static className: string = \"Container\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Container.className]);\n\n\tpublic _prevWidth: number = 0;\n\tpublic _prevHeight: number = 0;\n\n\tprotected _contentWidth: number = 0;\n\tprotected _contentHeight: number = 0;\n\n\tprotected _contentMask: Rectangle | undefined;\n\n\tprotected _vsbd0: IDisposer | undefined;\n\tprotected _vsbd1: IDisposer | undefined;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._display.addChild(this._childrenDisplay);\n\t}\n\n\tprotected _dispose() {\n\t\t$array.eachReverse(this.allChildren(), (child) => {\n\t\t\tchild.dispose();\n\t\t});\n\n\t\tif (this.getPrivate(\"htmlElement\")) {\n\t\t\tthis._root._removeHTMLContent(this);\n\t\t}\n\n\t\tsuper._dispose();\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this.isDirty(\"interactiveChildren\")) {\n\t\t\tthis._display.interactiveChildren = this.get(\"interactiveChildren\", false);\n\t\t}\n\n\t\tif (this.isDirty(\"layout\")) {\n\t\t\tthis._prevWidth = 0;\n\t\t\tthis._prevHeight = 0;\n\t\t\tthis.markDirtyBounds();\n\t\t\tif (this._prevSettings.layout) {\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tchild.removePrivate(\"x\");\n\t\t\t\t\tchild.removePrivate(\"y\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"paddingTop\") || this.isDirty(\"paddingBottom\") || this.isDirty(\"paddingLeft\") || this.isDirty(\"paddingRight\")) {\n\t\t\tthis.children.each((child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"maskContent\")) {\n\n\t\t\tconst childrenDisplay = this._childrenDisplay;\n\n\t\t\tlet contentMask = this._contentMask;\n\t\t\tif (this.get(\"maskContent\")) {\n\t\t\t\tif (!contentMask) {\n\t\t\t\t\tcontentMask = Rectangle.new(this._root, {\n\t\t\t\t\t\twidth: this.width(),\n\t\t\t\t\t\theight: this.height()\n\t\t\t\t\t});\n\t\t\t\t\tthis._contentMask = contentMask;\n\t\t\t\t\tchildrenDisplay.addChildAt(contentMask._display, 0);\n\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (contentMask) {\n\t\t\t\t\tchildrenDisplay.removeChild(contentMask._display);\n\t\t\t\t\tchildrenDisplay.mask = null;\t\t\t\t\t\n\t\t\t\t\tcontentMask.dispose();\n\t\t\t\t\tthis._contentMask = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"html\")) {\n\t\t\tconst html = this.get(\"html\");\n\t\t\tif (html && html !== \"\") {\n\t\t\t\tthis._root._setHTMLContent(this, populateString(this, this.get(\"html\", \"\")));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._root._removeHTMLContent(this);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\n\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\tchild.markDirtyPosition();\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\tthis.updateBackground();\n\t}\n\n\tprotected updateBackground() {\n\t\tconst background = this.get(\"background\");\n\t\tlet bounds = this._localBounds;\n\n\t\tif (bounds && !this.isHidden()) {\n\t\t\tlet x = bounds.left;\n\t\t\tlet y = bounds.top;\n\t\t\tlet w = bounds.right - x;\n\t\t\tlet h = bounds.bottom - y;\n\n\t\t\tlet width = this.width();\n\t\t\tlet height = this.height();\n\n\t\t\tif (background) {\n\t\t\t\tbackground.setAll({ width: w, height: h, x: x, y: y });\n\t\t\t\tif (this._display.interactive) {\n\t\t\t\t\tbackground._display.interactive = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst contentMask = this._contentMask;\n\t\t\tif (contentMask) {\n\t\t\t\tcontentMask.setAll({ width, height });\n\t\t\t}\n\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar.set(\"height\", height);\n\t\t\t\tverticalScrollbar.set(\"x\", width - verticalScrollbar.width() - verticalScrollbar.get(\"marginRight\", 0));\n\t\t\t\tverticalScrollbar.set(\"end\", verticalScrollbar.get(\"start\", 0) + height / this._contentHeight);\n\n\t\t\t\tconst bg = verticalScrollbar.get(\"background\");\n\t\t\t\tif (bg) {\n\t\t\t\t\tbg.setAll({ width: verticalScrollbar.width(), height: height })\n\t\t\t\t}\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (this._contentHeight <= height) {\n\t\t\t\t\tvisible = false;\n\t\t\t\t}\n\t\t\t\tverticalScrollbar.setPrivate(\"visible\", visible);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _applyThemes(): boolean {\n\t\tif (super._applyThemes()) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild._applyThemes();\n\t\t\t});\n\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic _applyState(name: string): void {\n\t\tsuper._applyState(name);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.apply(name);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic _applyStateAnimated(name: string, duration?: number): void {\n\t\tsuper._applyStateAnimated(name, duration);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.applyAnimate(name, duration);\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Returns container's inner width (width without padding) in pixels.\n\t *\n\t * @return Inner width (px)\n\t */\n\tpublic innerWidth(): number {\n\t\treturn this.width() - this.get(\"paddingRight\", 0) - this.get(\"paddingLeft\", 0);\n\t}\n\n\t/**\n\t * Returns container's inner height (height without padding) in pixels.\n\t *\n\t * @return Inner height (px)\n\t */\n\tpublic innerHeight(): number {\n\t\treturn this.height() - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0);\n\t}\n\n\tprotected _getBounds() {\n\n\t\tlet width = this.get(\"width\");\n\t\tlet height = this.get(\"height\");\n\t\tlet pWidth = this.getPrivate(\"width\");\n\t\tlet pHeight = this.getPrivate(\"height\");\n\n\t\tlet bounds: IBounds = {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: this.width(),\n\t\t\tbottom: this.height(),\n\t\t};\n\n\t\tlet layout = this.get(\"layout\");\n\t\tlet horizontal = false;\n\t\tlet vertical = false;\n\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\thorizontal = true;\n\t\t}\n\n\t\tif (layout instanceof VerticalLayout) {\n\t\t\tvertical = true;\n\t\t}\n\n\t\tif ((width != null || pWidth != null) && (height != null || pHeight != null) && !this.get(\"verticalScrollbar\")) {\n\t\t\t// void\n\t\t}\n\t\telse {\n\t\t\tlet m = Number.MAX_VALUE;\n\n\t\t\tlet l = m;\n\t\t\tlet r = -m;\n\t\t\tlet t = m;\n\t\t\tlet b = -m;\n\n\t\t\tconst paddingLeft = this.get(\"paddingLeft\", 0);\n\t\t\tconst paddingTop = this.get(\"paddingTop\", 0);\n\t\t\tconst paddingRight = this.get(\"paddingRight\", 0);\n\t\t\tconst paddingBottom = this.get(\"paddingBottom\", 0);\n\n\t\t\tthis.children.each((child) => {\n\t\t\t\tif (child.get(\"position\") != \"absolute\" && child.get(\"isMeasured\")) {\n\t\t\t\t\tlet childBounds = child.adjustedLocalBounds();\n\t\t\t\t\tlet childX = child.x();\n\t\t\t\t\tlet childY = child.y();\n\t\t\t\t\tlet cl = childX + childBounds.left;\n\t\t\t\t\tlet cr = childX + childBounds.right;\n\t\t\t\t\tlet ct = childY + childBounds.top;\n\t\t\t\t\tlet cb = childY + childBounds.bottom;\n\n\t\t\t\t\tif (horizontal) {\n\t\t\t\t\t\tcl -= child.get(\"marginLeft\", 0);\n\t\t\t\t\t\tcr += child.get(\"marginRight\", 0);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\tct -= child.get(\"marginTop\", 0);\n\t\t\t\t\t\tcb += child.get(\"marginBottom\", 0);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (cl < l) {\n\t\t\t\t\t\tl = cl;\n\t\t\t\t\t}\n\t\t\t\t\tif (cr > r) {\n\t\t\t\t\t\tr = cr;\n\t\t\t\t\t}\n\t\t\t\t\tif (ct < t) {\n\t\t\t\t\t\tt = ct;\n\t\t\t\t\t}\n\t\t\t\t\tif (cb > b) {\n\t\t\t\t\t\tb = cb;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif (l == m) {\n\t\t\t\tl = 0;\n\t\t\t}\n\n\t\t\tif (r == -m) {\n\t\t\t\tr = 0;\n\t\t\t}\n\n\t\t\tif (t == m) {\n\t\t\t\tt = 0;\n\t\t\t}\n\n\t\t\tif (b == -m) {\n\t\t\t\tb = 0;\n\t\t\t}\n\n\t\t\tbounds.left = l - paddingLeft;\n\t\t\tbounds.top = t - paddingTop;\n\t\t\tbounds.right = r + paddingRight;\n\t\t\tbounds.bottom = b + paddingBottom;\n\t\t}\n\n\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\n\t\tif ($type.isNumber(width)) {\n\t\t\tbounds.left = 0;\n\t\t\tbounds.right = width;\n\t\t}\n\n\t\tif ($type.isNumber(pWidth)) {\n\t\t\tbounds.left = 0;\n\t\t\tbounds.right = pWidth;\n\t\t}\n\n\t\tif ($type.isNumber(height)) {\n\t\t\tbounds.top = 0;\n\t\t\tbounds.bottom = height;\n\t\t}\n\n\t\tif ($type.isNumber(pHeight)) {\n\t\t\tbounds.top = 0;\n\t\t\tbounds.bottom = pHeight;\n\t\t}\n\n\t\tthis._localBounds = bounds;\n\t}\n\n\tpublic _updateBounds() {\n\t\tconst layout = this.get(\"layout\");\n\n\t\tif (layout) {\n\t\t\tlayout.updateContainer(this);\n\t\t}\n\n\t\tsuper._updateBounds();\n\n\t\tthis.updateBackground();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tsuper.markDirty();\n\t\tthis._root._addDirtyParent(this);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tconst innerWidth = this.innerWidth();\n\t\tconst innerHeight = this.innerHeight();\n\n\t\tif (innerWidth != this._prevWidth || innerHeight != this._prevHeight) {\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout) {\n\t\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\t\thorizontal = true;\n\t\t\t\t}\n\t\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\t\tvertical = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\t\tif (!horizontal) {\n\t\t\t\t\tlet width = child.get(\"width\");\n\t\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"width\", width.value * innerWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!vertical) {\n\t\t\t\t\tlet height = child.get(\"height\");\n\t\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"height\", height.value * innerHeight);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t\tchild.markDirtyBounds();\n\t\t\t})\n\n\t\t\tthis._prevWidth = innerWidth;\n\t\t\tthis._prevHeight = innerHeight;\n\n\t\t\tthis._sizeDirty = true;\n\t\t\tthis.updateBackground();\n\t\t}\n\n\t\tthis._handleStates();\n\t}\n\n\tpublic _updateChildren() {\n\n\t\tif (this.isDirty(\"verticalScrollbar\")) {\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar._setParent(this);\n\t\t\t\tverticalScrollbar.children.removeValue(verticalScrollbar.startGrip);\n\t\t\t\tverticalScrollbar.children.removeValue(verticalScrollbar.endGrip);\n\n\t\t\t\tthis.set(\"maskContent\", true);\n\t\t\t\tthis.set(\"paddingRight\", verticalScrollbar.width() + verticalScrollbar.get(\"marginRight\", 0) + verticalScrollbar.get(\"marginLeft\", 0));\n\n\t\t\t\tlet background = this.get(\"background\");\n\n\t\t\t\tif (!background) {\n\t\t\t\t\tbackground = this.set(\"background\", Rectangle.new(this._root, {\n\t\t\t\t\t\tthemeTags: [\"background\"],\n\t\t\t\t\t\tfillOpacity: 0,\n\t\t\t\t\t\tfill: this._root.interfaceColors.get(\"alternativeBackground\")\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tthis._vsbd0 = this.events.on(\"wheel\", (event) => {\n\t\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t\t// some page element is over the chart.\n\t\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst shiftY = wheelEvent.deltaY / 5000;\n\t\t\t\t\tconst start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\t\tconst end = verticalScrollbar.get(\"end\", 1);\n\t\t\t\t\tif (start + shiftY > 0 && end + shiftY < 1) {\n\t\t\t\t\t\tverticalScrollbar.set(\"start\", start + shiftY);\n\t\t\t\t\t\tverticalScrollbar.set(\"end\", end + shiftY);\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd0);\n\n\t\t\t\tthis._vsbd1 = verticalScrollbar.events.on(\"rangechanged\", () => {\n\t\t\t\t\tlet h = this._contentHeight;\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tconst contentMask = this._contentMask;\n\n\t\t\t\t\tchildrenDisplay.y = -verticalScrollbar.get(\"start\") * h;\n\t\t\t\t\tchildrenDisplay.markDirtyLayer();\n\n\t\t\t\t\tif (contentMask) {\n\t\t\t\t\t\tcontentMask._display.y = -childrenDisplay.y;\n\t\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd1);\n\n\t\t\t\tthis._display.addChild(verticalScrollbar._display);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst previous = this._prevSettings.verticalScrollbar\n\t\t\t\tif (previous) {\n\t\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\t\tif (this._vsbd0) {\n\t\t\t\t\t\tthis._vsbd0.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tif (this._vsbd1) {\n\t\t\t\t\t\tthis._vsbd1.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tchildrenDisplay.y = 0;\n\n\t\t\t\t\tthis.setPrivate(\"height\", undefined);\n\t\t\t\t\tthis.set(\"maskContent\", false);\n\t\t\t\t\tthis.set(\"paddingRight\", undefined);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"background\")) {\n\t\t\t// TODO maybe this should dispose ?\n\t\t\tconst previous = this._prevSettings[\"background\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t}\n\n\t\t\tconst background = this.get(\"background\");\n\t\t\tif (background instanceof Sprite) {\n\t\t\t\tbackground.set(\"isMeasured\", false);\n\t\t\t\tbackground._setParent(this);\n\t\t\t\tthis._display.addChildAt(background._display, 0);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"mask\")) {\n\n\t\t\tconst mask = this.get(\"mask\");\n\n\t\t\tconst previous = this._prevSettings[\"mask\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\tif (previous != mask) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (mask) {\n\t\t\t\tvar parent = mask.parent;\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.removeValue(mask);\n\t\t\t\t}\n\n\t\t\t\tmask._setParent(this);\n\t\t\t\tthis._display.addChildAt(mask._display, 0);\n\t\t\t\tthis._childrenDisplay.mask = mask._display;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _processTemplateField(): void {\n\t\tsuper._processTemplateField();\n\t\tthis.children.each((child) => {\n\t\t\tchild._processTemplateField();\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic walkChildren(f: (child: Sprite) => void): void {\n\t\tthis.children.each((child) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic eachChildren(f: (child: Sprite) => void): void {\n\t\tconst background = this.get(\"background\");\n\t\tif (background) {\n\t\t\tf(background);\n\t\t}\n\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\");\n\t\tif (verticalScrollbar) {\n\t\t\tf(verticalScrollbar);\n\t\t}\n\n\t\tconst mask = this.get(\"mask\");\n\t\tif (mask) {\n\t\t\tf(mask);\n\t\t}\n\n\t\tthis.children.values.forEach((child) => {\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic allChildren(): Array<Sprite> {\n\t\tconst output: Array<Sprite> = [];\n\n\t\tthis.eachChildren((x) => {\n\t\t\toutput.push(x);\n\t\t});\n\n\t\treturn output;\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tconst updated = (dataItem !== this._dataItem);\n\t\tsuper._setDataItem(dataItem);\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\" && updated) {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t}\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,9 @@ var Label = /** @class */ (function (_super) {
85
85
  _this._text.set(property, propValue);
86
86
  }
87
87
  });
88
+ if (this.get("html", "") !== "") {
89
+ this._text.set("text", "");
90
+ }
88
91
  this.onPrivate("maxWidth", function () {
89
92
  _this._setMaxDimentions();
90
93
  });
@@ -120,6 +123,13 @@ var Label = /** @class */ (function (_super) {
120
123
  if (this.isDirty("rotation")) {
121
124
  this._setMaxDimentions();
122
125
  }
126
+ // Do not show regular text if HTML is used
127
+ if (this.get("html", "") !== "") {
128
+ this._text.set("text", "");
129
+ }
130
+ else {
131
+ this._text.set("text", this.get("text"));
132
+ }
123
133
  if (this.isDirty("textAlign") || this.isDirty("width")) {
124
134
  var textAlign = this.get("textAlign");
125
135
  var x = void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Percent } from \"../util/Percent\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Text } from \"../render/Text\";\nimport { p50, p100 } from \"../util/Percent\";\nimport { Container, IContainerPrivate, IContainerSettings } from \"./Container\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\n\nexport interface ILabelSettings extends IContainerSettings {\n\n\t/**\n\t * Labels' text.\n\t */\n\ttext?: string;\n\n\t/**\n\t * Text color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Alignment.\n\t */\n\ttextAlign?: \"start\" | \"end\" | \"left\" | \"right\" | \"center\";\n\n\t/**\n\t * Font family to use for the label.\n\t *\n\t * Multiple fonts can be separated by commas.\n\t */\n\tfontFamily?: string;\n\n\t/**\n\t * Font size in misc any supported CSS format (pixel, point, em, etc.).\n\t */\n\tfontSize?: string | number;\n\n\t/**\n\t * Font weight.\n\t */\n\tfontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\n\n\t/**\n\t * Font style.\n\t */\n\tfontStyle?: \"normal\" | \"italic\" | \"oblique\";\n\n\t/**\n\t * Font variant.\n\t */\n\tfontVariant?: \"normal\" | \"small-caps\";\n\n\t/**\n\t * Text decoration.\n\t *\n\t * Supported options `\"underline\"`, `\"line-through\"`.\n\t *\n\t * @since 5.0.15\n\t */\n\ttextDecoration?: \"underline\" | \"line-through\";\n\n\t/**\n\t * Line height in percent or absolute pixels.\n\t */\n\tlineHeight?: Percent | number;\n\n\t/**\n\t * How mouch of the height should be considered to go below baseline.\n\t *\n\t * @default 0.19\n\t */\n\tbaselineRatio?: number;\n\n\t/**\n\t * Opacity of the label.\n\t *\n\t * 0 - fully transparent; 1 - fully opaque.\n\t */\n\topacity?: number;\n\n\t/**\n\t * Text direction.\n\t *\n\t * @default \"ltr\"\n\t */\n\tdirection?: \"ltr\" | \"rtl\";\n\n\t/**\n\t * A base line to use when aligning text chunks vertically.\n\t */\n\ttextBaseline?: \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\n\n\t/**\n\t * How to handle labels that do not fit into its designated space.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Oversized_text} for more info\n\t */\n\toversizedBehavior?: \"none\" | \"hide\" | \"fit\" | \"wrap\" | \"truncate\";\n\n\t/**\n\t * Whether words can be broken when truncating or wrapping text.\n\t *\n\t * @default false\n\t */\n\tbreakWords?: boolean;\n\n\t/**\n\t * Ellipsis characters to use when truncating text.\n\t *\n\t * Will use Unicode ellipsis symbol (`\"…\"`) by default, which might not be\n\t * available in all fonts. If ellipsis looks broken, use different\n\t * characters. E.g.:\n\t *\n\t * ```TypeScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t * ```JavaScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t *\n\t *\n\t * @default \"…\"\n\t */\n\tellipsis?: string;\n\n\t/**\n\t * Minimum relative scale allowed for label when scaling down\n\t * when `oversizedBehavior` is set to `\"fit\"`.\n\t *\n\t * If fitting the label would require it to scale beyond `minScale` it would\n\t * be hidden instead.\n\t */\n\tminScale?: number;\n\n\t/**\n\t * If set to `true` the label will parse `text` for data placeholders and\n\t * will try to populate them with actual data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Data_placeholders} for more info\n\t */\n\tpopulateText?: boolean;\n\n\t/**\n\t * If set to `true`, will ignore in-line formatting blocks and will display\n\t * text exactly as it is.\n\t *\n\t * @default false\n\t */\n\tignoreFormatting?: boolean;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t// The following migh be supported some day:\n\t// padding?: number;\n\t// stroke?: number;\n\t// strokeThickness?: number;\n\t// trim?: number;\n\t// wordWrap?: boolean;\n\t// leading?: number;\n\t// letterSpacing?: number;\n}\n\nexport interface ILabelPrivate extends IContainerPrivate {\n}\n\n/**\n * Creates a label with support for in-line styling and data bindings.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/} for more info\n */\nexport class Label extends Container {\n\n\tdeclare public _settings: ILabelSettings;\n\tdeclare public _privateSettings: ILabelPrivate;\n\n\tprotected _text!: Text;\n\n\tprotected _textKeys: Array<string> = [\n\t\t\"text\",\n\t\t\"fill\",\n\t\t\"textAlign\",\n\t\t\"fontFamily\",\n\t\t\"fontSize\",\n\t\t\"fontStyle\",\n\t\t\"fontWeight\",\n\t\t\"fontStyle\",\n\t\t\"fontVariant\",\n\t\t\"textDecoration\",\n\t\t\"shadowColor\",\n\t\t\"shadowBlur\",\n\t\t\"shadowOffsetX\",\n\t\t\"shadowOffsetY\",\n\t\t\"shadowOpacity\",\n\t\t// \"leading\",\n\t\t// \"letterSpacing\",\n\t\t\"lineHeight\",\n\t\t\"baselineRatio\",\n\t\t//\"padding\",\n\t\t// \"stroke\",\n\t\t// \"strokeThickness\",\n\t\t// \"trim\",\n\t\t// \"wordWrap\",\n\t\t\"direction\",\n\t\t\"textBaseline\",\n\t\t\"oversizedBehavior\",\n\t\t\"breakWords\",\n\t\t\"ellipsis\",\n\t\t\"minScale\",\n\t\t\"populateText\",\n\t\t\"role\",\n\t\t\"ignoreFormatting\"\n\t];\n\n\tpublic static className: string = \"Label\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Label.className]);\n\n\t/**\n\t * @ignore Text is not to be used directly\n\t */\n\tpublic get text(): Text {\n\t\treturn this._text;\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._makeText();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tconst propValue = this.get(property as any);\n\t\t\tif (propValue != undefined) {\n\t\t\t\tthis._text.set(property as any, propValue);\n\t\t\t}\n\t\t});\n\n\t\tthis.onPrivate(\"maxWidth\", () => {\n\t\t\tthis._setMaxDimentions();\n\t\t});\n\n\t\tthis.onPrivate(\"maxHeight\", () => {\n\t\t\tthis._setMaxDimentions();\n\t\t});\n\t}\n\n\tpublic _makeText() {\n\t\tthis._text = this.children.push(Text.new(this._root, {}));\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tthis._text.set(property as any, this.get(property as any));\n\t\t})\n\n\t\tif (this.isDirty(\"maxWidth\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"maxHeight\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"rotation\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"textAlign\") || this.isDirty(\"width\")) {\n\t\t\tconst textAlign = this.get(\"textAlign\");\n\t\t\tlet x: number | Percent | undefined;\n\t\t\tif (this.get(\"width\") != null) {\n\t\t\t\tif (textAlign == \"right\") {\n\t\t\t\t\tx = p100;\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"center\") {\n\t\t\t\t\tx = p50;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tx = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (textAlign == \"left\" || textAlign == \"start\") {\n\t\t\t\t\tx = this.get(\"paddingLeft\");\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"right\" || textAlign == \"end\") {\n\t\t\t\t\tx = -this.get(\"paddingRight\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.text.set(\"x\", x);\n\t\t}\n\t}\n\n\tprotected _setMaxDimentions() {\n\t\tconst rotation = this.get(\"rotation\");\n\t\tconst vertical = rotation == 90 || rotation == 270;\n\n\t\tconst maxWidth = this.get(\"maxWidth\", this.getPrivate(\"maxWidth\", Infinity));\n\t\tif ($type.isNumber(maxWidth)) {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", maxWidth - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", undefined);\n\t\t}\n\n\t\tconst maxHeight = this.get(\"maxHeight\", this.getPrivate(\"maxHeight\", Infinity));\n\t\tif ($type.isNumber(maxHeight)) {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", maxHeight - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", undefined);\n\t\t}\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tsuper._setDataItem(dataItem);\n\t\tthis._markDirtyKey(\"text\")\n\t\tif (this.text.get(\"populateText\")) {\n\t\t\tthis.text.markDirtyText();\n\t\t}\n\t}\n\n\t/**\n\t * Returns text with populated placeholders and formatting if `populateText` is\n\t * set to `true`.\n\t *\n\t * @return Populated text\n\t */\n\tpublic getText(): string {\n\t\treturn this._text._getText();\n\t}\n}\n"]}
1
+ {"version":3,"file":"Label.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Percent } from \"../util/Percent\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Text } from \"../render/Text\";\nimport { p50, p100 } from \"../util/Percent\";\nimport { Container, IContainerPrivate, IContainerSettings } from \"./Container\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\n\nexport interface ILabelSettings extends IContainerSettings {\n\n\t/**\n\t * Labels' text.\n\t */\n\ttext?: string;\n\n\t/**\n\t * Text color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Alignment.\n\t */\n\ttextAlign?: \"start\" | \"end\" | \"left\" | \"right\" | \"center\";\n\n\t/**\n\t * Font family to use for the label.\n\t *\n\t * Multiple fonts can be separated by commas.\n\t */\n\tfontFamily?: string;\n\n\t/**\n\t * Font size in misc any supported CSS format (pixel, point, em, etc.).\n\t */\n\tfontSize?: string | number;\n\n\t/**\n\t * Font weight.\n\t */\n\tfontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\n\n\t/**\n\t * Font style.\n\t */\n\tfontStyle?: \"normal\" | \"italic\" | \"oblique\";\n\n\t/**\n\t * Font variant.\n\t */\n\tfontVariant?: \"normal\" | \"small-caps\";\n\n\t/**\n\t * Text decoration.\n\t *\n\t * Supported options `\"underline\"`, `\"line-through\"`.\n\t *\n\t * @since 5.0.15\n\t */\n\ttextDecoration?: \"underline\" | \"line-through\";\n\n\t/**\n\t * Line height in percent or absolute pixels.\n\t */\n\tlineHeight?: Percent | number;\n\n\t/**\n\t * How mouch of the height should be considered to go below baseline.\n\t *\n\t * @default 0.19\n\t */\n\tbaselineRatio?: number;\n\n\t/**\n\t * Opacity of the label.\n\t *\n\t * 0 - fully transparent; 1 - fully opaque.\n\t */\n\topacity?: number;\n\n\t/**\n\t * Text direction.\n\t *\n\t * @default \"ltr\"\n\t */\n\tdirection?: \"ltr\" | \"rtl\";\n\n\t/**\n\t * A base line to use when aligning text chunks vertically.\n\t */\n\ttextBaseline?: \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\n\n\t/**\n\t * How to handle labels that do not fit into its designated space.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Oversized_text} for more info\n\t */\n\toversizedBehavior?: \"none\" | \"hide\" | \"fit\" | \"wrap\" | \"truncate\";\n\n\t/**\n\t * Whether words can be broken when truncating or wrapping text.\n\t *\n\t * @default false\n\t */\n\tbreakWords?: boolean;\n\n\t/**\n\t * Ellipsis characters to use when truncating text.\n\t *\n\t * Will use Unicode ellipsis symbol (`\"…\"`) by default, which might not be\n\t * available in all fonts. If ellipsis looks broken, use different\n\t * characters. E.g.:\n\t *\n\t * ```TypeScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t * ```JavaScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t *\n\t *\n\t * @default \"…\"\n\t */\n\tellipsis?: string;\n\n\t/**\n\t * Minimum relative scale allowed for label when scaling down\n\t * when `oversizedBehavior` is set to `\"fit\"`.\n\t *\n\t * If fitting the label would require it to scale beyond `minScale` it would\n\t * be hidden instead.\n\t */\n\tminScale?: number;\n\n\t/**\n\t * If set to `true` the label will parse `text` for data placeholders and\n\t * will try to populate them with actual data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Data_placeholders} for more info\n\t */\n\tpopulateText?: boolean;\n\n\t/**\n\t * If set to `true`, will ignore in-line formatting blocks and will display\n\t * text exactly as it is.\n\t *\n\t * @default false\n\t */\n\tignoreFormatting?: boolean;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t// The following migh be supported some day:\n\t// padding?: number;\n\t// stroke?: number;\n\t// strokeThickness?: number;\n\t// trim?: number;\n\t// wordWrap?: boolean;\n\t// leading?: number;\n\t// letterSpacing?: number;\n}\n\nexport interface ILabelPrivate extends IContainerPrivate {\n}\n\n/**\n * Creates a label with support for in-line styling and data bindings.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/} for more info\n */\nexport class Label extends Container {\n\n\tdeclare public _settings: ILabelSettings;\n\tdeclare public _privateSettings: ILabelPrivate;\n\n\tprotected _text!: Text;\n\n\tprotected _textKeys: Array<string> = [\n\t\t\"text\",\n\t\t\"fill\",\n\t\t\"textAlign\",\n\t\t\"fontFamily\",\n\t\t\"fontSize\",\n\t\t\"fontStyle\",\n\t\t\"fontWeight\",\n\t\t\"fontStyle\",\n\t\t\"fontVariant\",\n\t\t\"textDecoration\",\n\t\t\"shadowColor\",\n\t\t\"shadowBlur\",\n\t\t\"shadowOffsetX\",\n\t\t\"shadowOffsetY\",\n\t\t\"shadowOpacity\",\n\t\t// \"leading\",\n\t\t// \"letterSpacing\",\n\t\t\"lineHeight\",\n\t\t\"baselineRatio\",\n\t\t//\"padding\",\n\t\t// \"stroke\",\n\t\t// \"strokeThickness\",\n\t\t// \"trim\",\n\t\t// \"wordWrap\",\n\t\t\"direction\",\n\t\t\"textBaseline\",\n\t\t\"oversizedBehavior\",\n\t\t\"breakWords\",\n\t\t\"ellipsis\",\n\t\t\"minScale\",\n\t\t\"populateText\",\n\t\t\"role\",\n\t\t\"ignoreFormatting\"\n\t];\n\n\tpublic static className: string = \"Label\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Label.className]);\n\n\t/**\n\t * @ignore Text is not to be used directly\n\t */\n\tpublic get text(): Text {\n\t\treturn this._text;\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._makeText();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tconst propValue = this.get(property as any);\n\t\t\tif (propValue != undefined) {\n\t\t\t\tthis._text.set(property as any, propValue);\n\t\t\t}\n\t\t});\n\n\t\tif (this.get(\"html\", \"\") !== \"\") {\n\t\t\tthis._text.set(\"text\", \"\");\n\t\t}\n\n\t\tthis.onPrivate(\"maxWidth\", () => {\n\t\t\tthis._setMaxDimentions();\n\t\t});\n\n\t\tthis.onPrivate(\"maxHeight\", () => {\n\t\t\tthis._setMaxDimentions();\n\t\t});\n\t}\n\n\tpublic _makeText() {\n\t\tthis._text = this.children.push(Text.new(this._root, {}));\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tthis._text.set(property as any, this.get(property as any));\n\t\t})\n\n\t\tif (this.isDirty(\"maxWidth\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"maxHeight\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"rotation\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\t// Do not show regular text if HTML is used\n\t\tif (this.get(\"html\", \"\") !== \"\") {\n\t\t\tthis._text.set(\"text\", \"\");\n\t\t}\n\t\telse {\n\t\t\tthis._text.set(\"text\", this.get(\"text\"));\n\t\t}\n\n\t\tif (this.isDirty(\"textAlign\") || this.isDirty(\"width\")) {\n\t\t\tconst textAlign = this.get(\"textAlign\");\n\t\t\tlet x: number | Percent | undefined;\n\t\t\tif (this.get(\"width\") != null) {\n\t\t\t\tif (textAlign == \"right\") {\n\t\t\t\t\tx = p100;\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"center\") {\n\t\t\t\t\tx = p50;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tx = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (textAlign == \"left\" || textAlign == \"start\") {\n\t\t\t\t\tx = this.get(\"paddingLeft\");\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"right\" || textAlign == \"end\") {\n\t\t\t\t\tx = -this.get(\"paddingRight\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.text.set(\"x\", x);\n\t\t}\n\t}\n\n\tprotected _setMaxDimentions() {\n\t\tconst rotation = this.get(\"rotation\");\n\t\tconst vertical = rotation == 90 || rotation == 270;\n\n\t\tconst maxWidth = this.get(\"maxWidth\", this.getPrivate(\"maxWidth\", Infinity));\n\t\tif ($type.isNumber(maxWidth)) {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", maxWidth - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", undefined);\n\t\t}\n\n\t\tconst maxHeight = this.get(\"maxHeight\", this.getPrivate(\"maxHeight\", Infinity));\n\t\tif ($type.isNumber(maxHeight)) {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", maxHeight - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", undefined);\n\t\t}\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tsuper._setDataItem(dataItem);\n\t\tthis._markDirtyKey(\"text\")\n\t\tif (this.text.get(\"populateText\")) {\n\t\t\tthis.text.markDirtyText();\n\t\t}\n\t}\n\n\t/**\n\t * Returns text with populated placeholders and formatting if `populateText` is\n\t * set to `true`.\n\t *\n\t * @return Populated text\n\t */\n\tpublic getText(): string {\n\t\treturn this._text._getText();\n\t}\n}\n"]}
@@ -167,7 +167,7 @@ var Scrollbar = /** @class */ (function (_super) {
167
167
  }
168
168
  else {
169
169
  _this.thumb.set(key, newCoordinate);
170
- _this._root.events.on("frameended", function () {
170
+ _this._root.events.once("frameended", function () {
171
171
  _this.setPrivateRaw("isBusy", false);
172
172
  });
173
173
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Scrollbar.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Scrollbar.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Animation } from \"../util/Entity\";\nimport type { Time } from \"../util/Animation\";\n\nimport { RoundedRectangle } from \"../render/RoundedRectangle\";\nimport { Container, IContainerPrivate, IContainerSettings, IContainerEvents } from \"./Container\";\nimport { Graphics } from \"./Graphics\";\nimport { Button } from \"./Button\";\n\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IScrollbarSettings extends IContainerSettings {\n\n\t/**\n\t * Orientation of the scrollbar.\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * Relative start of the selected range, with 0 meaning beginning, and 1 the\n\t * end.\n\t */\n\tstart?: number;\n\n\t/**\n\t * Relative end of the selected range, with 0 meaning beginning, and 1 the\n\t * end.\n\t */\n\tend?: number;\n\n\t/**\n\t * Number of milliseconds to play scroll animations for.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * Easing function to use for animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t */\n\tanimationEasing?: (t: Time) => Time;\n\n}\n\nexport interface IScrollbarPrivate extends IContainerPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tisBusy?: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\tpositionTextFunction?: (position: number) => string;\n\n}\n\nexport interface IScrollbarEvents extends IContainerEvents {\n\n\t/**\n\t * Invoked when range of the selection changes.\n\t */\n\trangechanged: { start: number, end: number, grip?: \"start\" | \"end\" };\n\n}\n\n/**\n * A control that allows zooming chart's axes, or other uses requiring range\n * selection.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/scrollbars/} for more info\n */\nexport class Scrollbar extends Container {\n\n\tpublic _addOrientationClass() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"scrollbar\", this._settings.orientation]);\n\t\tif (!this._settings.background) {\n\t\t\tthis._settings.background = RoundedRectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this._settings.themeTags, [\"main\", \"background\"])\n\t\t\t});\n\t\t}\n\t}\n\n\tdeclare public _settings: IScrollbarSettings;\n\tdeclare public _privateSettings: IScrollbarPrivate;\n\tdeclare public _events: IScrollbarEvents;\n\n\tpublic static className: string = \"Scrollbar\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Scrollbar.className]);\n\n\t/**\n\t * A thumb elment - a draggable square between the grips, used for panning\n\t * the selection.\n\t */\n\tpublic thumb: RoundedRectangle = this._makeThumb();\n\n\t/**\n\t * Start grip button.\n\t */\n\tpublic startGrip: Button = this._makeButton();\n\n\t/**\n\t * End grip button.\n\t */\n\tpublic endGrip: Button = this._makeButton();\n\n\tprotected _thumbBusy: boolean = false;\n\n\tprotected _startDown: boolean = false;\n\n\tprotected _endDown: boolean = false;\n\n\tprotected _thumbDown: boolean = false;\n\n\tprotected _gripDown?: \"start\" | \"end\";\n\n\tprotected _makeButton(): Button {\n\t\treturn this.children.push(Button.new(this._root, {\n\t\t\tthemeTags: [\"resize\", \"button\", this.get(\"orientation\")], icon: Graphics.new(this._root, {\n\t\t\t\tthemeTags: [\"icon\"]\n\t\t\t})\n\t\t}));\n\t}\n\n\tprotected _makeThumb(): RoundedRectangle {\n\t\treturn this.children.push(RoundedRectangle.new(this._root, {\n\t\t\tthemeTags: [\"thumb\", this.get(\"orientation\")]\n\t\t}));\n\t}\n\n\tprotected _handleAnimation(animation: Animation<any>) {\n\t\tif (animation) {\n\t\t\tthis._disposers.push(\n\t\t\t\tanimation.events.on(\"stopped\", () => {\n\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t\t\tthis._thumbBusy = false;\n\t\t\t\t})\n\t\t\t)\n\t\t}\n\t}\n\n\tprotected _afterNew() {\n\t\tthis._addOrientationClass();\n\t\tsuper._afterNew();\n\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\t\tconst thumb = this.thumb;\n\t\tconst background = this.get(\"background\");\n\n\t\tif (background) {\n\t\t\tthis._disposers.push(\n\t\t\t\tbackground.events.on(\"click\", (event) => {\n\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\t\t\tconst point = this._display.toLocal(event.point);\n\n\t\t\t\t\tconst w = this.width();\n\t\t\t\t\tconst h = this.height();\n\n\t\t\t\t\tconst orientation = this.get(\"orientation\");\n\n\t\t\t\t\tlet newMiddle: number;\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tnewMiddle = (point.y - thumb.height() / 2) / h;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnewMiddle = (point.x - thumb.width() / 2) / w;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet newCoordinate: number;\n\t\t\t\t\tlet key: \"x\" | \"y\";\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tnewCoordinate = newMiddle * h;\n\t\t\t\t\t\tkey = \"y\";\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnewCoordinate = newMiddle * w;\n\t\t\t\t\t\tkey = \"x\";\n\t\t\t\t\t}\n\n\n\t\t\t\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\t\t\t\tif (duration > 0) {\n\t\t\t\t\t\tthis._thumbBusy = true;\n\t\t\t\t\t\tthis._handleAnimation(this.thumb.animate({ key: key, to: newCoordinate, duration: duration, easing: this.get(\"animationEasing\") }));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.thumb.set(key, newCoordinate);\n\t\t\t\t\t\tthis._root.events.on(\"frameended\", () => {\n\t\t\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t)\n\t\t}\n\n\t\tthis._disposers.push(thumb.events.on(\"dblclick\", (event) => {\n\n\t\t\tif (!$utils.isLocalEvent(event.originalEvent, this)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\t\tconst easing = this.get(\"animationEasing\");\n\n\t\t\tthis.animate({ key: \"start\", to: 0, duration: duration, easing: easing });\n\t\t\tthis.animate({ key: \"end\", to: 1, duration: duration, easing: easing });\n\t\t}));\n\n\t\tthis._disposers.push(startGrip.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._startDown = true;\n\t\t\tthis._gripDown = \"start\";\n\t\t}))\n\n\t\tthis._disposers.push(endGrip.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._endDown = true;\n\t\t\tthis._gripDown = \"end\";\n\t\t}))\n\n\t\tthis._disposers.push(thumb.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._thumbDown = true;\n\t\t\tthis._gripDown = undefined;\n\t\t}))\n\n\t\tthis._disposers.push(startGrip.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._startDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._startDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(endGrip.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._endDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._endDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(thumb.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._thumbDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._thumbDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(startGrip.on(\"x\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(endGrip.on(\"x\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(startGrip.on(\"y\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(endGrip.on(\"y\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(thumb.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateGripsByThumb();\n\t\t}));\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tstartGrip.set(\"x\", 0);\n\t\t\tendGrip.set(\"x\", 0);\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height() - thumb.height()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height()), 0);\n\t\t\t}))\n\t\t}\n\t\telse {\n\t\t\tstartGrip.set(\"y\", 0);\n\t\t\tendGrip.set(\"y\", 0);\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width() - thumb.width()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width()), 0);\n\t\t\t}))\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tif (this.isDirty(\"end\") || this.isDirty(\"start\") || this._sizeDirty) {\n\t\t\tthis.updateGrips();\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\t\tif (this.isDirty(\"start\") || this.isDirty(\"end\")) {\n\t\t\tconst eventType = \"rangechanged\";\n\t\t\tif (this.events.isEnabled(eventType)) {\n\t\t\t\tthis.events.dispatch(eventType, { type: eventType, target: this, start: this.get(\"start\", 0), end: this.get(\"end\", 1), grip: this._gripDown });\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateGrips() {\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst height = this.height();\n\t\tconst width = this.width();\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tstartGrip.set(\"y\", height * this.get(\"start\", 0));\n\t\t\tendGrip.set(\"y\", height * this.get(\"end\", 1));\n\t\t}\n\t\telse {\n\t\t\tstartGrip.set(\"x\", width * this.get(\"start\", 0));\n\t\t\tendGrip.set(\"x\", width * this.get(\"end\", 1));\n\t\t}\n\n\t\tconst valueFunction = this.getPrivate(\"positionTextFunction\");\n\t\tconst from = Math.round(this.get(\"start\", 0) * 100);\n\t\tconst to = Math.round(this.get(\"end\", 0) * 100);\n\t\tlet fromValue: string;\n\t\tlet toValue: string;\n\t\tif (valueFunction) {\n\t\t\tfromValue = valueFunction.call(this, this.get(\"start\", 0));\n\t\t\ttoValue = valueFunction.call(this, this.get(\"end\", 0));\n\t\t}\n\t\telse {\n\t\t\tfromValue = from + \"%\";\n\t\t\ttoValue = to + \"%\";\n\t\t}\n\n\t\tstartGrip.set(\"ariaLabel\", this._t(\"From %1\", undefined, fromValue));\n\t\tstartGrip.set(\"ariaValueNow\", \"\" + from);\n\t\tstartGrip.set(\"ariaValueText\", from + \"%\");\n\n\t\tstartGrip.set(\"ariaValueMin\", \"0\");\n\t\tstartGrip.set(\"ariaValueMax\", \"100\");\n\n\t\tendGrip.set(\"ariaLabel\", this._t(\"To %1\", undefined, toValue));\n\t\tendGrip.set(\"ariaValueNow\", \"\" + to);\n\t\tendGrip.set(\"ariaValueText\", to + \"%\");\n\n\t\tendGrip.set(\"ariaValueMin\", \"0\");\n\t\tendGrip.set(\"ariaValueMax\", \"100\");\n\t}\n\n\tprotected _updateThumb() {\n\t\tconst thumb = this.thumb;\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tconst height = this.height();\n\t\tconst width = this.width();\n\n\t\tlet x0 = startGrip.x();\n\t\tlet x1 = endGrip.x();\n\n\t\tlet y0 = startGrip.y();\n\t\tlet y1 = endGrip.y();\n\n\t\tlet start: number = 0;\n\t\tlet end: number = 1;\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tif ($type.isNumber(y0) && $type.isNumber(y1)) {\n\t\t\t\tif (!this._thumbBusy && !thumb.isDragging()) {\n\t\t\t\t\tthumb.set(\"height\", y1 - y0);\n\t\t\t\t\tthumb.set(\"y\", y0);\n\t\t\t\t}\n\t\t\t\tstart = y0 / height;\n\t\t\t\tend = y1 / height;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif ($type.isNumber(x0) && $type.isNumber(x1)) {\n\t\t\t\tif (!this._thumbBusy && !thumb.isDragging()) {\n\t\t\t\t\tthumb.set(\"width\", x1 - x0);\n\t\t\t\t\tthumb.set(\"x\", x0);\n\t\t\t\t}\n\t\t\t\tstart = x0 / width;\n\t\t\t\tend = x1 / width;\n\t\t\t}\n\t\t}\n\n\t\tif (this.getPrivate(\"isBusy\") && (this.get(\"start\") != start || this.get(\"end\") != end)) {\n\t\t\tthis.set(\"start\", start);\n\t\t\tthis.set(\"end\", end);\n\t\t}\n\n\t\tconst valueFunction = this.getPrivate(\"positionTextFunction\");\n\t\tconst from = Math.round(this.get(\"start\", 0) * 100);\n\t\tconst to = Math.round(this.get(\"end\", 0) * 100);\n\t\tlet fromValue: string;\n\t\tlet toValue: string;\n\t\tif (valueFunction) {\n\t\t\tfromValue = valueFunction.call(this, this.get(\"start\", 0));\n\t\t\ttoValue = valueFunction.call(this, this.get(\"end\", 0));\n\t\t}\n\t\telse {\n\t\t\tfromValue = from + \"%\";\n\t\t\ttoValue = to + \"%\";\n\t\t}\n\n\t\tthumb.set(\"ariaLabel\", this._t(\"From %1 to %2\", undefined, fromValue, toValue));\n\t\tthumb.set(\"ariaValueNow\", \"\" + from);\n\t\tthumb.set(\"ariaValueText\", from + \"%\");\n\t}\n\n\n\tprotected _updateGripsByThumb() {\n\n\t\tconst thumb = this.thumb;\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tconst thumbSize = thumb.height();\n\t\t\tstartGrip.set(\"y\", thumb.y());\n\t\t\tendGrip.set(\"y\", thumb.y() + thumbSize);\n\t\t}\n\t\telse {\n\t\t\tconst thumbSize = thumb.width();\n\t\t\tstartGrip.set(\"x\", thumb.x());\n\t\t\tendGrip.set(\"x\", thumb.x() + thumbSize);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Scrollbar.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Scrollbar.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Animation } from \"../util/Entity\";\nimport type { Time } from \"../util/Animation\";\n\nimport { RoundedRectangle } from \"../render/RoundedRectangle\";\nimport { Container, IContainerPrivate, IContainerSettings, IContainerEvents } from \"./Container\";\nimport { Graphics } from \"./Graphics\";\nimport { Button } from \"./Button\";\n\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IScrollbarSettings extends IContainerSettings {\n\n\t/**\n\t * Orientation of the scrollbar.\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * Relative start of the selected range, with 0 meaning beginning, and 1 the\n\t * end.\n\t */\n\tstart?: number;\n\n\t/**\n\t * Relative end of the selected range, with 0 meaning beginning, and 1 the\n\t * end.\n\t */\n\tend?: number;\n\n\t/**\n\t * Number of milliseconds to play scroll animations for.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * Easing function to use for animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t */\n\tanimationEasing?: (t: Time) => Time;\n\n}\n\nexport interface IScrollbarPrivate extends IContainerPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tisBusy?: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\tpositionTextFunction?: (position: number) => string;\n\n}\n\nexport interface IScrollbarEvents extends IContainerEvents {\n\n\t/**\n\t * Invoked when range of the selection changes.\n\t */\n\trangechanged: { start: number, end: number, grip?: \"start\" | \"end\" };\n\n}\n\n/**\n * A control that allows zooming chart's axes, or other uses requiring range\n * selection.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/scrollbars/} for more info\n */\nexport class Scrollbar extends Container {\n\n\tpublic _addOrientationClass() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"scrollbar\", this._settings.orientation]);\n\t\tif (!this._settings.background) {\n\t\t\tthis._settings.background = RoundedRectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this._settings.themeTags, [\"main\", \"background\"])\n\t\t\t});\n\t\t}\n\t}\n\n\tdeclare public _settings: IScrollbarSettings;\n\tdeclare public _privateSettings: IScrollbarPrivate;\n\tdeclare public _events: IScrollbarEvents;\n\n\tpublic static className: string = \"Scrollbar\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Scrollbar.className]);\n\n\t/**\n\t * A thumb elment - a draggable square between the grips, used for panning\n\t * the selection.\n\t */\n\tpublic thumb: RoundedRectangle = this._makeThumb();\n\n\t/**\n\t * Start grip button.\n\t */\n\tpublic startGrip: Button = this._makeButton();\n\n\t/**\n\t * End grip button.\n\t */\n\tpublic endGrip: Button = this._makeButton();\n\n\tprotected _thumbBusy: boolean = false;\n\n\tprotected _startDown: boolean = false;\n\n\tprotected _endDown: boolean = false;\n\n\tprotected _thumbDown: boolean = false;\n\n\tprotected _gripDown?: \"start\" | \"end\";\n\n\tprotected _makeButton(): Button {\n\t\treturn this.children.push(Button.new(this._root, {\n\t\t\tthemeTags: [\"resize\", \"button\", this.get(\"orientation\")], icon: Graphics.new(this._root, {\n\t\t\t\tthemeTags: [\"icon\"]\n\t\t\t})\n\t\t}));\n\t}\n\n\tprotected _makeThumb(): RoundedRectangle {\n\t\treturn this.children.push(RoundedRectangle.new(this._root, {\n\t\t\tthemeTags: [\"thumb\", this.get(\"orientation\")]\n\t\t}));\n\t}\n\n\tprotected _handleAnimation(animation: Animation<any>) {\n\t\tif (animation) {\n\t\t\tthis._disposers.push(\n\t\t\t\tanimation.events.on(\"stopped\", () => {\n\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t\t\tthis._thumbBusy = false;\n\t\t\t\t})\n\t\t\t)\n\t\t}\n\t}\n\n\tprotected _afterNew() {\n\t\tthis._addOrientationClass();\n\t\tsuper._afterNew();\n\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\t\tconst thumb = this.thumb;\n\t\tconst background = this.get(\"background\");\n\n\t\tif (background) {\n\t\t\tthis._disposers.push(\n\t\t\t\tbackground.events.on(\"click\", (event) => {\n\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\t\t\tconst point = this._display.toLocal(event.point);\n\n\t\t\t\t\tconst w = this.width();\n\t\t\t\t\tconst h = this.height();\n\n\t\t\t\t\tconst orientation = this.get(\"orientation\");\n\n\t\t\t\t\tlet newMiddle: number;\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tnewMiddle = (point.y - thumb.height() / 2) / h;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnewMiddle = (point.x - thumb.width() / 2) / w;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet newCoordinate: number;\n\t\t\t\t\tlet key: \"x\" | \"y\";\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tnewCoordinate = newMiddle * h;\n\t\t\t\t\t\tkey = \"y\";\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tnewCoordinate = newMiddle * w;\n\t\t\t\t\t\tkey = \"x\";\n\t\t\t\t\t}\n\n\n\t\t\t\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\t\t\t\tif (duration > 0) {\n\t\t\t\t\t\tthis._thumbBusy = true;\n\t\t\t\t\t\tthis._handleAnimation(this.thumb.animate({ key: key, to: newCoordinate, duration: duration, easing: this.get(\"animationEasing\") }));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.thumb.set(key, newCoordinate);\n\t\t\t\t\t\tthis._root.events.once(\"frameended\", () => {\n\t\t\t\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t)\n\t\t}\n\n\t\tthis._disposers.push(thumb.events.on(\"dblclick\", (event) => {\n\n\t\t\tif (!$utils.isLocalEvent(event.originalEvent, this)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\t\tconst easing = this.get(\"animationEasing\");\n\n\t\t\tthis.animate({ key: \"start\", to: 0, duration: duration, easing: easing });\n\t\t\tthis.animate({ key: \"end\", to: 1, duration: duration, easing: easing });\n\t\t}));\n\n\t\tthis._disposers.push(startGrip.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._startDown = true;\n\t\t\tthis._gripDown = \"start\";\n\t\t}))\n\n\t\tthis._disposers.push(endGrip.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._endDown = true;\n\t\t\tthis._gripDown = \"end\";\n\t\t}))\n\n\t\tthis._disposers.push(thumb.events.on(\"pointerdown\", () => {\n\t\t\tthis.setPrivateRaw(\"isBusy\", true);\n\t\t\tthis._thumbDown = true;\n\t\t\tthis._gripDown = undefined;\n\t\t}))\n\n\t\tthis._disposers.push(startGrip.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._startDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._startDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(endGrip.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._endDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._endDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(thumb.events.on(\"globalpointerup\", () => {\n\t\t\tif (this._thumbDown) {\n\t\t\t\tthis.setPrivateRaw(\"isBusy\", false);\n\t\t\t}\n\t\t\tthis._thumbDown = false;\n\t\t}))\n\n\t\tthis._disposers.push(startGrip.on(\"x\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(endGrip.on(\"x\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(startGrip.on(\"y\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(endGrip.on(\"y\", () => {\n\t\t\tthis._updateThumb();\n\t\t}));\n\n\t\tthis._disposers.push(thumb.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateGripsByThumb();\n\t\t}));\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tstartGrip.set(\"x\", 0);\n\t\t\tendGrip.set(\"x\", 0);\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height() - thumb.height()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"x\", (_value) => {\n\t\t\t\treturn this.width() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"y\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.height()), 0);\n\t\t\t}))\n\t\t}\n\t\telse {\n\t\t\tstartGrip.set(\"y\", 0);\n\t\t\tendGrip.set(\"y\", 0);\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width() - thumb.width()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(thumb.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"y\", (_value) => {\n\t\t\t\treturn this.height() / 2;\n\t\t\t}))\n\n\t\t\tthis._disposers.push(startGrip.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width()), 0);\n\t\t\t}))\n\n\t\t\tthis._disposers.push(endGrip.adapters.add(\"x\", (value) => {\n\t\t\t\treturn Math.max(Math.min(Number(value), this.width()), 0);\n\t\t\t}))\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tif (this.isDirty(\"end\") || this.isDirty(\"start\") || this._sizeDirty) {\n\t\t\tthis.updateGrips();\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\t\tif (this.isDirty(\"start\") || this.isDirty(\"end\")) {\n\t\t\tconst eventType = \"rangechanged\";\n\t\t\tif (this.events.isEnabled(eventType)) {\n\t\t\t\tthis.events.dispatch(eventType, { type: eventType, target: this, start: this.get(\"start\", 0), end: this.get(\"end\", 1), grip: this._gripDown });\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateGrips() {\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst height = this.height();\n\t\tconst width = this.width();\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tstartGrip.set(\"y\", height * this.get(\"start\", 0));\n\t\t\tendGrip.set(\"y\", height * this.get(\"end\", 1));\n\t\t}\n\t\telse {\n\t\t\tstartGrip.set(\"x\", width * this.get(\"start\", 0));\n\t\t\tendGrip.set(\"x\", width * this.get(\"end\", 1));\n\t\t}\n\n\t\tconst valueFunction = this.getPrivate(\"positionTextFunction\");\n\t\tconst from = Math.round(this.get(\"start\", 0) * 100);\n\t\tconst to = Math.round(this.get(\"end\", 0) * 100);\n\t\tlet fromValue: string;\n\t\tlet toValue: string;\n\t\tif (valueFunction) {\n\t\t\tfromValue = valueFunction.call(this, this.get(\"start\", 0));\n\t\t\ttoValue = valueFunction.call(this, this.get(\"end\", 0));\n\t\t}\n\t\telse {\n\t\t\tfromValue = from + \"%\";\n\t\t\ttoValue = to + \"%\";\n\t\t}\n\n\t\tstartGrip.set(\"ariaLabel\", this._t(\"From %1\", undefined, fromValue));\n\t\tstartGrip.set(\"ariaValueNow\", \"\" + from);\n\t\tstartGrip.set(\"ariaValueText\", from + \"%\");\n\n\t\tstartGrip.set(\"ariaValueMin\", \"0\");\n\t\tstartGrip.set(\"ariaValueMax\", \"100\");\n\n\t\tendGrip.set(\"ariaLabel\", this._t(\"To %1\", undefined, toValue));\n\t\tendGrip.set(\"ariaValueNow\", \"\" + to);\n\t\tendGrip.set(\"ariaValueText\", to + \"%\");\n\n\t\tendGrip.set(\"ariaValueMin\", \"0\");\n\t\tendGrip.set(\"ariaValueMax\", \"100\");\n\t}\n\n\tprotected _updateThumb() {\n\t\tconst thumb = this.thumb;\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tconst height = this.height();\n\t\tconst width = this.width();\n\n\t\tlet x0 = startGrip.x();\n\t\tlet x1 = endGrip.x();\n\n\t\tlet y0 = startGrip.y();\n\t\tlet y1 = endGrip.y();\n\n\t\tlet start: number = 0;\n\t\tlet end: number = 1;\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tif ($type.isNumber(y0) && $type.isNumber(y1)) {\n\t\t\t\tif (!this._thumbBusy && !thumb.isDragging()) {\n\t\t\t\t\tthumb.set(\"height\", y1 - y0);\n\t\t\t\t\tthumb.set(\"y\", y0);\n\t\t\t\t}\n\t\t\t\tstart = y0 / height;\n\t\t\t\tend = y1 / height;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif ($type.isNumber(x0) && $type.isNumber(x1)) {\n\t\t\t\tif (!this._thumbBusy && !thumb.isDragging()) {\n\t\t\t\t\tthumb.set(\"width\", x1 - x0);\n\t\t\t\t\tthumb.set(\"x\", x0);\n\t\t\t\t}\n\t\t\t\tstart = x0 / width;\n\t\t\t\tend = x1 / width;\n\t\t\t}\n\t\t}\n\n\t\tif (this.getPrivate(\"isBusy\") && (this.get(\"start\") != start || this.get(\"end\") != end)) {\n\t\t\tthis.set(\"start\", start);\n\t\t\tthis.set(\"end\", end);\n\t\t}\n\n\t\tconst valueFunction = this.getPrivate(\"positionTextFunction\");\n\t\tconst from = Math.round(this.get(\"start\", 0) * 100);\n\t\tconst to = Math.round(this.get(\"end\", 0) * 100);\n\t\tlet fromValue: string;\n\t\tlet toValue: string;\n\t\tif (valueFunction) {\n\t\t\tfromValue = valueFunction.call(this, this.get(\"start\", 0));\n\t\t\ttoValue = valueFunction.call(this, this.get(\"end\", 0));\n\t\t}\n\t\telse {\n\t\t\tfromValue = from + \"%\";\n\t\t\ttoValue = to + \"%\";\n\t\t}\n\n\t\tthumb.set(\"ariaLabel\", this._t(\"From %1 to %2\", undefined, fromValue, toValue));\n\t\tthumb.set(\"ariaValueNow\", \"\" + from);\n\t\tthumb.set(\"ariaValueText\", from + \"%\");\n\t}\n\n\n\tprotected _updateGripsByThumb() {\n\n\t\tconst thumb = this.thumb;\n\t\tconst startGrip = this.startGrip;\n\t\tconst endGrip = this.endGrip;\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tconst thumbSize = thumb.height();\n\t\t\tstartGrip.set(\"y\", thumb.y());\n\t\t\tendGrip.set(\"y\", thumb.y() + thumbSize);\n\t\t}\n\t\telse {\n\t\t\tconst thumbSize = thumb.width();\n\t\t\tstartGrip.set(\"x\", thumb.x());\n\t\t\tendGrip.set(\"x\", thumb.x() + thumbSize);\n\t\t}\n\t}\n}\n"]}