@mathstack/viz 0.0.1-beta.0

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 (300) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +0 -0
  3. package/fesm2022/mathstack-viz.mjs +11049 -0
  4. package/fesm2022/mathstack-viz.mjs.map +1 -0
  5. package/index.d.ts +5 -0
  6. package/lib/axes/base/config/xy-axis-builder.d.ts +38 -0
  7. package/lib/axes/base/config/xy-axis-config.d.ts +18 -0
  8. package/lib/axes/base/config/xy-axis-options.d.ts +10 -0
  9. package/lib/axes/base/xy-axis-base.d.ts +49 -0
  10. package/lib/axes/baseline/axis-baseline-builder.d.ts +31 -0
  11. package/lib/axes/baseline/axis-baseline-options.d.ts +7 -0
  12. package/lib/axes/baseline/axis-baseline.d.ts +9 -0
  13. package/lib/axes/grid/grid-builder.d.ts +29 -0
  14. package/lib/axes/grid/grid-config.d.ts +8 -0
  15. package/lib/axes/grid/grid-options.d.ts +6 -0
  16. package/lib/axes/index.d.ts +13 -0
  17. package/lib/axes/label/axis-label-builder.d.ts +63 -0
  18. package/lib/axes/label/axis-label-options.d.ts +11 -0
  19. package/lib/axes/label/axis-label.d.ts +13 -0
  20. package/lib/axes/ordinal/ordinal-axis-config.d.ts +38 -0
  21. package/lib/axes/ordinal/ordinal-axis.d.ts +43 -0
  22. package/lib/axes/quantitative/quantitative-axis-config.d.ts +38 -0
  23. package/lib/axes/quantitative/quantitative-axis.d.ts +51 -0
  24. package/lib/axes/ticks/tick-wrap/tick-wrap-builder.d.ts +64 -0
  25. package/lib/axes/ticks/tick-wrap/tick-wrap-options.d.ts +8 -0
  26. package/lib/axes/ticks/tick-wrap/tick-wrap.d.ts +13 -0
  27. package/lib/axes/ticks/ticks-builder.d.ts +172 -0
  28. package/lib/axes/ticks/ticks-options.d.ts +22 -0
  29. package/lib/axes/ticks/ticks.d.ts +24 -0
  30. package/lib/axes/x/x-axis-config.d.ts +42 -0
  31. package/lib/axes/x/x-axis.d.ts +47 -0
  32. package/lib/axes/x-ordinal/x-ordinal-axis-builder.d.ts +29 -0
  33. package/lib/axes/x-ordinal/x-ordinal-axis-config.d.ts +25 -0
  34. package/lib/axes/x-ordinal/x-ordinal-axis.component.d.ts +88 -0
  35. package/lib/axes/x-quantitative/x-quantitative-axis-builder.d.ts +29 -0
  36. package/lib/axes/x-quantitative/x-quantitative-axis-config.d.ts +25 -0
  37. package/lib/axes/x-quantitative/x-quantitative-axis.component.d.ts +53 -0
  38. package/lib/axes/xy-axis.module.d.ts +10 -0
  39. package/lib/axes/y/y-axis-config.d.ts +42 -0
  40. package/lib/axes/y/y-axis.d.ts +53 -0
  41. package/lib/axes/y-ordinal/y-ordinal-axis-builder.d.ts +29 -0
  42. package/lib/axes/y-ordinal/y-ordinal-axis-config.d.ts +25 -0
  43. package/lib/axes/y-ordinal/y-ordinal-axis.component.d.ts +89 -0
  44. package/lib/axes/y-quantitative-axis/y-quantitative-axis-builder.d.ts +29 -0
  45. package/lib/axes/y-quantitative-axis/y-quantitative-axis-config.d.ts +25 -0
  46. package/lib/axes/y-quantitative-axis/y-quantitative-axis.component.d.ts +54 -0
  47. package/lib/bars/bars.component.d.ts +91 -0
  48. package/lib/bars/bars.module.d.ts +8 -0
  49. package/lib/bars/config/backgrounds/bars-backgrounds-builder.d.ts +27 -0
  50. package/lib/bars/config/backgrounds/bars-backgrounds-options.d.ts +4 -0
  51. package/lib/bars/config/backgrounds/bars-backgrounds.d.ts +6 -0
  52. package/lib/bars/config/bars-builder.d.ts +132 -0
  53. package/lib/bars/config/bars-config.d.ts +27 -0
  54. package/lib/bars/config/bars-dimensions.d.ts +11 -0
  55. package/lib/bars/config/bars-options.d.ts +16 -0
  56. package/lib/bars/config/labels/bars-labels-builder.d.ts +48 -0
  57. package/lib/bars/config/labels/bars-labels-options.d.ts +9 -0
  58. package/lib/bars/config/labels/bars-labels.d.ts +11 -0
  59. package/lib/bars/events/actions/bars-click-actions.d.ts +8 -0
  60. package/lib/bars/events/actions/bars-hover-actions.d.ts +12 -0
  61. package/lib/bars/events/actions/bars-hover-move-actions.d.ts +8 -0
  62. package/lib/bars/events/bars-events.directive.d.ts +38 -0
  63. package/lib/bars/events/bars-interaction-output.d.ts +16 -0
  64. package/lib/bars/events/bars-tooltip-positioner.d.ts +13 -0
  65. package/lib/bars/index.d.ts +12 -0
  66. package/lib/charts/chart/chart.component.d.ts +73 -0
  67. package/lib/charts/chart/chart.d.ts +4 -0
  68. package/lib/charts/chart/chart.token.d.ts +3 -0
  69. package/lib/charts/chart/config/chart-builder.d.ts +94 -0
  70. package/lib/charts/chart/config/chart-config.d.ts +16 -0
  71. package/lib/charts/chart/config/chart-options.d.ts +10 -0
  72. package/lib/charts/chart.module.d.ts +9 -0
  73. package/lib/charts/index.d.ts +8 -0
  74. package/lib/charts/map-chart/map-chart.component.d.ts +40 -0
  75. package/lib/charts/xy-chart/xy-chart.component.d.ts +40 -0
  76. package/lib/core/common-behaviors/constructor.d.ts +2 -0
  77. package/lib/core/index.d.ts +5 -0
  78. package/lib/core/types/layout.d.ts +24 -0
  79. package/lib/core/types/scale.d.ts +5 -0
  80. package/lib/core/types/values.d.ts +7 -0
  81. package/lib/core/utilities/colors.d.ts +13 -0
  82. package/lib/core/utilities/fill-utilities.d.ts +7 -0
  83. package/lib/core/utilities/type-guards.d.ts +6 -0
  84. package/lib/core/utilities/value-format.d.ts +11 -0
  85. package/lib/core/utilities/values.d.ts +16 -0
  86. package/lib/data-dimensions/continuous-quantitative/date-chart-position/date-chart-position-builder.d.ts +39 -0
  87. package/lib/data-dimensions/continuous-quantitative/date-chart-position/date-chart-position-options.d.ts +18 -0
  88. package/lib/data-dimensions/continuous-quantitative/date-chart-position/date-chart-position.d.ts +38 -0
  89. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/concrete-domain-padding.d.ts +5 -0
  90. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/domain-padding.d.ts +20 -0
  91. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/percent-over/percent-over-options.d.ts +3 -0
  92. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/percent-over/percent-over.d.ts +9 -0
  93. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/pixel/pixel-options.d.ts +3 -0
  94. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/pixel/pixel.d.ts +10 -0
  95. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/round-to-interval/round-to-interval-options.d.ts +3 -0
  96. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/round-to-interval/round-to-interval.d.ts +8 -0
  97. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/round-to-sig-fig/round-to-sig-fig-options.d.ts +3 -0
  98. package/lib/data-dimensions/continuous-quantitative/number-chart-position/domain-padding/round-to-sig-fig/round-to-sig-fig.d.ts +8 -0
  99. package/lib/data-dimensions/continuous-quantitative/number-chart-position/number-chart-position-builder.d.ts +71 -0
  100. package/lib/data-dimensions/continuous-quantitative/number-chart-position/number-chart-position-options.d.ts +5 -0
  101. package/lib/data-dimensions/continuous-quantitative/number-chart-position/number-chart-position.d.ts +30 -0
  102. package/lib/data-dimensions/continuous-quantitative/number-dimension/number-dimension-options.d.ts +8 -0
  103. package/lib/data-dimensions/continuous-quantitative/number-dimension/number-dimension.d.ts +28 -0
  104. package/lib/data-dimensions/continuous-quantitative/number-visual-value/number-visual-value-builder.d.ts +69 -0
  105. package/lib/data-dimensions/continuous-quantitative/number-visual-value/number-visual-value-options.d.ts +6 -0
  106. package/lib/data-dimensions/continuous-quantitative/number-visual-value/number-visual-value.d.ts +29 -0
  107. package/lib/data-dimensions/dimension-builder.d.ts +21 -0
  108. package/lib/data-dimensions/dimension-options.d.ts +11 -0
  109. package/lib/data-dimensions/dimension.d.ts +16 -0
  110. package/lib/data-dimensions/index.d.ts +9 -0
  111. package/lib/data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position-builder.d.ts +53 -0
  112. package/lib/data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position-options.d.ts +8 -0
  113. package/lib/data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position.d.ts +44 -0
  114. package/lib/data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value-builder.d.ts +45 -0
  115. package/lib/data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value-options.d.ts +7 -0
  116. package/lib/data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value.d.ts +38 -0
  117. package/lib/data-export/data-export-config.d.ts +50 -0
  118. package/lib/data-export/data-export.d.ts +7 -0
  119. package/lib/data-export/index.d.ts +2 -0
  120. package/lib/dots/config/dots-builder.d.ts +110 -0
  121. package/lib/dots/config/dots-config.d.ts +26 -0
  122. package/lib/dots/config/dots-options.d.ts +17 -0
  123. package/lib/dots/dots.component.d.ts +55 -0
  124. package/lib/dots/dots.module.d.ts +8 -0
  125. package/lib/dots/events/actions/dots-hover-actions.d.ts +6 -0
  126. package/lib/dots/events/actions/dots-hover-move-actions.d.ts +10 -0
  127. package/lib/dots/events/dots-events.directive.d.ts +37 -0
  128. package/lib/dots/events/dots-interaction-output.d.ts +14 -0
  129. package/lib/dots/events/dots-tooltip-positioner.d.ts +13 -0
  130. package/lib/dots/index.d.ts +9 -0
  131. package/lib/events/events.directive.d.ts +43 -0
  132. package/lib/events/events.types.d.ts +34 -0
  133. package/lib/events/index.d.ts +4 -0
  134. package/lib/events/interaction-output.d.ts +33 -0
  135. package/lib/events/tooltip-positioner.d.ts +6 -0
  136. package/lib/fill-definitions/fill-definitions.d.ts +4 -0
  137. package/lib/fill-definitions/index.d.ts +1 -0
  138. package/lib/geographies/config/geographies-builder.d.ts +80 -0
  139. package/lib/geographies/config/geographies-config.d.ts +19 -0
  140. package/lib/geographies/config/geographies-options.d.ts +13 -0
  141. package/lib/geographies/config/layers/attribute-data-layer/attribute-data-layer-builder.d.ts +63 -0
  142. package/lib/geographies/config/layers/attribute-data-layer/attribute-data-layer-options.d.ts +16 -0
  143. package/lib/geographies/config/layers/attribute-data-layer/attribute-data-layer.d.ts +30 -0
  144. package/lib/geographies/config/layers/attribute-data-layer/dimensions/attribute-data/attribute-data-dimension-builder.d.ts +40 -0
  145. package/lib/geographies/config/layers/attribute-data-layer/dimensions/attribute-data/attribute-data-dimension-options.d.ts +8 -0
  146. package/lib/geographies/config/layers/attribute-data-layer/dimensions/attribute-data/attribute-data-dimension.d.ts +18 -0
  147. package/lib/geographies/config/layers/attribute-data-layer/dimensions/attribute-data-bin-enums.d.ts +10 -0
  148. package/lib/geographies/config/layers/attribute-data-layer/dimensions/attribute-data-bin-types.d.ts +8 -0
  149. package/lib/geographies/config/layers/attribute-data-layer/dimensions/calculated-bins/calculated-bins-builder.d.ts +10 -0
  150. package/lib/geographies/config/layers/attribute-data-layer/dimensions/calculated-bins/calculated-bins-options.d.ts +4 -0
  151. package/lib/geographies/config/layers/attribute-data-layer/dimensions/calculated-bins/calculated-bins.d.ts +8 -0
  152. package/lib/geographies/config/layers/attribute-data-layer/dimensions/categorical-bins/categorical-bins-builder.d.ts +14 -0
  153. package/lib/geographies/config/layers/attribute-data-layer/dimensions/categorical-bins/categorical-bins-options.d.ts +4 -0
  154. package/lib/geographies/config/layers/attribute-data-layer/dimensions/categorical-bins/categorical-bins.d.ts +20 -0
  155. package/lib/geographies/config/layers/attribute-data-layer/dimensions/custom-breaks/custom-breaks-bins-builder.d.ts +29 -0
  156. package/lib/geographies/config/layers/attribute-data-layer/dimensions/custom-breaks/custom-breaks-bins-options.d.ts +5 -0
  157. package/lib/geographies/config/layers/attribute-data-layer/dimensions/custom-breaks/custom-breaks-bins.d.ts +23 -0
  158. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-frequencies-bins/equal-frequencies-bins-builder.d.ts +16 -0
  159. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-frequencies-bins/equal-frequencies-bins-options.d.ts +4 -0
  160. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-frequencies-bins/equal-frequencies-bins.d.ts +18 -0
  161. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-value-ranges-bins/equal-value-ranges-bins-builder.d.ts +21 -0
  162. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-value-ranges-bins/equal-value-ranges-bins-options.d.ts +5 -0
  163. package/lib/geographies/config/layers/attribute-data-layer/dimensions/equal-value-ranges-bins/equal-value-ranges-bins.d.ts +24 -0
  164. package/lib/geographies/config/layers/attribute-data-layer/dimensions/no-bins/no-bins-builder.d.ts +26 -0
  165. package/lib/geographies/config/layers/attribute-data-layer/dimensions/no-bins/no-bins-options.d.ts +5 -0
  166. package/lib/geographies/config/layers/attribute-data-layer/dimensions/no-bins/no-bins.d.ts +12 -0
  167. package/lib/geographies/config/layers/geographies-layer/geographies-layer-builder.d.ts +52 -0
  168. package/lib/geographies/config/layers/geographies-layer/geographies-layer-options.d.ts +16 -0
  169. package/lib/geographies/config/layers/geographies-layer/geographies-layer.d.ts +29 -0
  170. package/lib/geographies/config/layers/geojson-properties-layer/geojson-properties-layer-builder.d.ts +25 -0
  171. package/lib/geographies/config/layers/geojson-properties-layer/geojson-properties-layer-options.d.ts +11 -0
  172. package/lib/geographies/config/layers/geojson-properties-layer/geojson-properties-layer.d.ts +16 -0
  173. package/lib/geographies/config/layers/labels/geographies-labels-builder.d.ts +97 -0
  174. package/lib/geographies/config/layers/labels/geographies-labels-options.d.ts +33 -0
  175. package/lib/geographies/config/layers/labels/geographies-labels.d.ts +20 -0
  176. package/lib/geographies/events/actions/geographies-click-actions.d.ts +7 -0
  177. package/lib/geographies/events/actions/geographies-hover-actions.d.ts +7 -0
  178. package/lib/geographies/events/actions/geographies-hover-move-actions.d.ts +7 -0
  179. package/lib/geographies/events/geographies-events.directive.d.ts +38 -0
  180. package/lib/geographies/events/geographies-interaction-output.d.ts +16 -0
  181. package/lib/geographies/events/geographies-tooltip-positioner.d.ts +13 -0
  182. package/lib/geographies/geographies-feature.d.ts +5 -0
  183. package/lib/geographies/geographies.component.d.ts +36 -0
  184. package/lib/geographies/geographies.module.d.ts +8 -0
  185. package/lib/geographies/index.d.ts +32 -0
  186. package/lib/grouped-bars/config/grouped-bars-builder.d.ts +29 -0
  187. package/lib/grouped-bars/config/grouped-bars-config.d.ts +10 -0
  188. package/lib/grouped-bars/config/grouped-bars-options.d.ts +5 -0
  189. package/lib/grouped-bars/events/grouped-bars-events.directive.d.ts +35 -0
  190. package/lib/grouped-bars/grouped-bars.component.d.ts +19 -0
  191. package/lib/grouped-bars/grouped-bars.module.d.ts +8 -0
  192. package/lib/grouped-bars/index.d.ts +7 -0
  193. package/lib/image-download/image-download-config.d.ts +31 -0
  194. package/lib/image-download/image-download-enums.d.ts +6 -0
  195. package/lib/image-download/image-download-options.d.ts +14 -0
  196. package/lib/image-download/image-download.service.d.ts +16 -0
  197. package/lib/image-download/index.d.ts +4 -0
  198. package/lib/lines/config/area-fills/area-fills-builder.d.ts +45 -0
  199. package/lib/lines/config/area-fills/area-fills-options.d.ts +7 -0
  200. package/lib/lines/config/area-fills/area-fills.d.ts +9 -0
  201. package/lib/lines/config/lines-builder.d.ts +101 -0
  202. package/lib/lines/config/lines-config.d.ts +37 -0
  203. package/lib/lines/config/lines-options.d.ts +18 -0
  204. package/lib/lines/config/stroke/lines-stroke-builder.d.ts +59 -0
  205. package/lib/lines/config/stroke/lines-stroke-options.d.ts +5 -0
  206. package/lib/lines/config/stroke/lines-stroke.d.ts +7 -0
  207. package/lib/lines/events/actions/lines-click-actions.d.ts +6 -0
  208. package/lib/lines/events/actions/lines-hover-move-actions.d.ts +41 -0
  209. package/lib/lines/events/actions/lines-marker-click-actions.d.ts +6 -0
  210. package/lib/lines/events/lines-events.directive.d.ts +49 -0
  211. package/lib/lines/events/lines-interaction-output.d.ts +16 -0
  212. package/lib/lines/events/lines-tooltip-positioner.d.ts +13 -0
  213. package/lib/lines/index.d.ts +11 -0
  214. package/lib/lines/lines.component.d.ts +53 -0
  215. package/lib/lines/lines.module.d.ts +8 -0
  216. package/lib/map-legend/continuous-legend/continuous-legend.component.d.ts +18 -0
  217. package/lib/map-legend/discontinuous-legend/discontinuous-legend.component.d.ts +12 -0
  218. package/lib/map-legend/index.d.ts +2 -0
  219. package/lib/map-legend/map-legend-base.d.ts +33 -0
  220. package/lib/map-legend/map-legend.component.d.ts +27 -0
  221. package/lib/map-legend/map-legend.module.d.ts +7 -0
  222. package/lib/marks/aux-marks/aux-marks.d.ts +10 -0
  223. package/lib/marks/aux-marks/config/aux-marks-builder.d.ts +11 -0
  224. package/lib/marks/aux-marks/config/aux-marks-config.d.ts +4 -0
  225. package/lib/marks/config/marks-config.d.ts +9 -0
  226. package/lib/marks/config/marks-options.d.ts +8 -0
  227. package/lib/marks/index.d.ts +15 -0
  228. package/lib/marks/map-marks/map-aux-marks/map-aux-marks.d.ts +17 -0
  229. package/lib/marks/map-marks/map-primary-marks/map-primary-marks.d.ts +20 -0
  230. package/lib/marks/marks.d.ts +31 -0
  231. package/lib/marks/primary-marks/config/primary-marks-builder.d.ts +32 -0
  232. package/lib/marks/primary-marks/config/primary-marks-config.d.ts +5 -0
  233. package/lib/marks/primary-marks/primary-marks.d.ts +23 -0
  234. package/lib/marks/xy-marks/xy-aux-marks/xy-aux-marks.d.ts +16 -0
  235. package/lib/marks/xy-marks/xy-marks-config.d.ts +4 -0
  236. package/lib/marks/xy-marks/xy-marks.d.ts +6 -0
  237. package/lib/marks/xy-marks/xy-primary-marks/xy-primary-marks-config.d.ts +4 -0
  238. package/lib/marks/xy-marks/xy-primary-marks/xy-primary-marks.d.ts +20 -0
  239. package/lib/point-markers/index.d.ts +2 -0
  240. package/lib/point-markers/point-markers-builder.d.ts +47 -0
  241. package/lib/point-markers/point-markers-options.d.ts +6 -0
  242. package/lib/point-markers/point-markers.d.ts +8 -0
  243. package/lib/quantitative-rules/config/labels/quantitative-rules-labels-builder.d.ts +60 -0
  244. package/lib/quantitative-rules/config/labels/quantitative-rules-labels-options.d.ts +9 -0
  245. package/lib/quantitative-rules/config/labels/quantitative-rules-labels.d.ts +11 -0
  246. package/lib/quantitative-rules/config/quantitative-rules-builder.d.ts +52 -0
  247. package/lib/quantitative-rules/config/quantitative-rules-config.d.ts +12 -0
  248. package/lib/quantitative-rules/config/quantitative-rules-dimensions.d.ts +8 -0
  249. package/lib/quantitative-rules/config/quantitative-rules-options.d.ts +10 -0
  250. package/lib/quantitative-rules/index.d.ts +6 -0
  251. package/lib/quantitative-rules/quantitative-rules.component.d.ts +27 -0
  252. package/lib/quantitative-rules/quantitative-rules.module.d.ts +7 -0
  253. package/lib/stacked-area/config/stacked-area-builder.d.ts +85 -0
  254. package/lib/stacked-area/config/stacked-area-config.d.ts +36 -0
  255. package/lib/stacked-area/config/stacked-area-options.d.ts +21 -0
  256. package/lib/stacked-area/events/actions/stacked-area-hover-move-actions.d.ts +7 -0
  257. package/lib/stacked-area/events/stacked-area-events.directive.d.ts +38 -0
  258. package/lib/stacked-area/events/stacked-area-interaction-output.d.ts +28 -0
  259. package/lib/stacked-area/events/stacked-area-tooltip-positioner.d.ts +16 -0
  260. package/lib/stacked-area/index.d.ts +7 -0
  261. package/lib/stacked-area/stacked-area.component.d.ts +51 -0
  262. package/lib/stacked-area/stacked-area.module.d.ts +8 -0
  263. package/lib/stacked-bars/config/stacked-bars-builder.d.ts +26 -0
  264. package/lib/stacked-bars/config/stacked-bars-config.d.ts +16 -0
  265. package/lib/stacked-bars/config/stacked-bars-options.d.ts +7 -0
  266. package/lib/stacked-bars/events/actions/stacked-bars-click-actions.d.ts +8 -0
  267. package/lib/stacked-bars/events/actions/stacked-bars-hover-actions.d.ts +8 -0
  268. package/lib/stacked-bars/events/actions/stacked-bars-hover-move-actions.d.ts +8 -0
  269. package/lib/stacked-bars/events/stacked-bars-events.directive.d.ts +39 -0
  270. package/lib/stacked-bars/index.d.ts +10 -0
  271. package/lib/stacked-bars/stacked-bars.component.d.ts +26 -0
  272. package/lib/stacked-bars/stacked-bars.module.d.ts +8 -0
  273. package/lib/stroke/base/stroke-base-options.d.ts +7 -0
  274. package/lib/stroke/base/stroke-base.d.ts +8 -0
  275. package/lib/stroke/index.d.ts +2 -0
  276. package/lib/stroke/stroke-builder.d.ts +56 -0
  277. package/lib/stroke/stroke-options.d.ts +4 -0
  278. package/lib/stroke/stroke.d.ts +6 -0
  279. package/lib/svg-text-wrap/index.d.ts +2 -0
  280. package/lib/svg-text-wrap/svg-text-wrap-builder.d.ts +58 -0
  281. package/lib/svg-text-wrap/svg-text-wrap-options.d.ts +8 -0
  282. package/lib/svg-text-wrap/svg-text-wrap.d.ts +13 -0
  283. package/lib/tooltips/config/tooltip.d.ts +5 -0
  284. package/lib/tooltips/html-tooltip/config/html-tooltip-builder.d.ts +57 -0
  285. package/lib/tooltips/html-tooltip/config/html-tooltip-config.d.ts +15 -0
  286. package/lib/tooltips/html-tooltip/config/html-tooltip-options.d.ts +11 -0
  287. package/lib/tooltips/html-tooltip/config/position/tooltip-position-builder.d.ts +34 -0
  288. package/lib/tooltips/html-tooltip/config/position/tooltip-position.d.ts +23 -0
  289. package/lib/tooltips/html-tooltip/config/size/tooltip-size-builder.d.ts +16 -0
  290. package/lib/tooltips/html-tooltip/config/size/tooltip-size-options.d.ts +8 -0
  291. package/lib/tooltips/html-tooltip/config/size/tooltip-size.d.ts +10 -0
  292. package/lib/tooltips/html-tooltip/html-tooltip.directive.d.ts +43 -0
  293. package/lib/tooltips/html-tooltip/html-tooltip.module.d.ts +10 -0
  294. package/lib/tooltips/html-tooltip/tooltip-triangle/tooltip-triangle.component.d.ts +7 -0
  295. package/lib/tooltips/index.d.ts +11 -0
  296. package/lib/xy-background/index.d.ts +2 -0
  297. package/lib/xy-background/xy-background.component.d.ts +9 -0
  298. package/lib/xy-background/xy-background.module.d.ts +7 -0
  299. package/package.json +40 -0
  300. package/public-api.d.ts +23 -0
@@ -0,0 +1,45 @@
1
+ import { DataValue, VisualValue } from '../../../core/types/values';
2
+ import { DataDimensionBuilder } from '../../dimension-builder';
3
+ import { OrdinalVisualValueDimension } from './ordinal-visual-value';
4
+ export declare class OrdinalVisualValueDimensionBuilder<Datum, Domain extends DataValue, Range extends VisualValue> extends DataDimensionBuilder<Datum, Domain> {
5
+ private _domain;
6
+ private _range;
7
+ private _scale;
8
+ constructor();
9
+ /**
10
+ * OPTIONAL. Sets an array of categorical values that will be used to define the domain of the scale.
11
+ *
12
+ * If not provided, the domain will be determined by the data.
13
+ */
14
+ domain(domain: null): this;
15
+ domain(domain: Domain[]): this;
16
+ /**
17
+ * OPTIONAL. Sets an array of visual values that will be the output from D3 scale ordinal.
18
+ *
19
+ * For example, this could be an array of colors or sizes.
20
+ *
21
+ * To have all marks use the same visual value, use an array with a single element.
22
+ *
23
+ * Will not be used if `scale` is set by the user.
24
+ *
25
+ * @default d3.schemeTableau10
26
+ */
27
+ range(range: null): this;
28
+ range(range: Range[]): this;
29
+ /**
30
+ * OPTIONAL. Sets a user-defined function that transforms a categorical value into a visual value.
31
+ *
32
+ * User must also provide their own implementation of `valueAccessor`.
33
+ *
34
+ * If a custom valueAccessor function is not provided, this function will not be used even if provided (due to default value of `valueAccessor`).
35
+ */
36
+ scale(scale: null): this;
37
+ scale(scale: (category: Domain) => Range): this;
38
+ /**
39
+ * @internal This method is not intended to be used by consumers of this library.
40
+ *
41
+ * @param dimensionName A user-intelligible name for the dimension being built. Used for error messages. Should be title cased.
42
+ */
43
+ _build(dimensionName: string): OrdinalVisualValueDimension<Datum, Domain, Range>;
44
+ private validateDimension;
45
+ }
@@ -0,0 +1,7 @@
1
+ import { DataValue, VisualValue } from '../../../core/types/values';
2
+ import { DataDimensionOptions } from '../../dimension-options';
3
+ export interface OrdinalVisualValueDimensionOptions<Datum, Domain extends DataValue, Range extends VisualValue> extends DataDimensionOptions<Datum, Domain> {
4
+ domain: Domain[];
5
+ range: Range[];
6
+ scale: (category: Domain) => Range;
7
+ }
@@ -0,0 +1,38 @@
1
+ import { DataValue, VisualValue } from '../../../core/types/values';
2
+ import { DataDimension } from '../../dimension';
3
+ import { OrdinalVisualValueDimensionOptions } from './ordinal-visual-value-options';
4
+ /**
5
+ * A dimension that transforms string / number / Date values into a value of type number or string.
6
+ *
7
+ * This dimension is intended to be used to set a visual property of an element in a chart.
8
+ *
9
+ * The first generic is the type of the data that will be passed to the dimension. The second generic is the type of the value that will be used to set the visual property. The third generic is the type of the range of the scale / the output value.
10
+ *
11
+ * TESTABLE FUNCTIONALITY
12
+ *
13
+ * - It extracts values for the dimension from data.
14
+ * - tested in: ordinal-visual-value.cy.ts
15
+ * - It sets the domain of the dimension.
16
+ * - tested in: ordinal-visual-value.cy.ts
17
+ * - It checks if a value is in the domain.
18
+ * - The domain can be set by the user passing in an array of values.
19
+ * - tested in: ordinal-chart-position.spec.ts
20
+ * - The domain will be unique values from the data if no custom domain is given by the user.
21
+ * - tested in: ordinal-chart-position.spec.ts
22
+ * - The domain will always contain only unique values.
23
+ * - tested in: ordinal-chart-position.spec.ts
24
+ */
25
+ export declare class OrdinalVisualValueDimension<Datum, Domain extends DataValue, Range extends VisualValue> extends DataDimension<Datum, Domain> {
26
+ private _calculatedDomain;
27
+ private readonly domain;
28
+ private internSetDomain;
29
+ readonly range: Range[];
30
+ private scale;
31
+ constructor(options: OrdinalVisualValueDimensionOptions<Datum, Domain, Range>);
32
+ get calculatedDomain(): Domain[];
33
+ getScale(): (category: Domain) => Range;
34
+ setPropertiesFromData(data: Datum[]): void;
35
+ protected setDomain(): void;
36
+ private setScale;
37
+ domainIncludes(value: Domain): boolean;
38
+ }
@@ -0,0 +1,50 @@
1
+ export declare class VicColumnConfig {
2
+ title: string;
3
+ valueAccessor: (x: any) => any;
4
+ constructor(options?: Partial<VicColumnConfig>);
5
+ }
6
+ export declare class VicDataExportConfig {
7
+ data: unknown[];
8
+ /**
9
+ * If true, the data will be flipped.
10
+ * Data: {a: 1, b: 2}, {a: 3, b: 4}
11
+ * Output CSV:
12
+ * a | 1 | 3
13
+ * b | 2 | 4
14
+ */
15
+ flipped: boolean;
16
+ /**
17
+ * If provided, the flipped data's header will be set.
18
+ * Data: {a: 1, b: 2, category: shrimp}, {a: 3, b: 4, category: lobster}
19
+ * Output CSV:
20
+ * shrimp | lobster
21
+ * a | 1 | 3
22
+ * b | 2 | 4
23
+ */
24
+ flippedHeaderKey: string;
25
+ /**
26
+ * Specifies the keys on each object to include in the csv,
27
+ * using default titles (converts thisIsAKey to This Is A Key) and values (object.thisIsAKey).
28
+ * Data: {myKey: 1, otherKey: 2}, {myKey: 3, otherKey: 4}
29
+ * defaultColumnList: [myKey]
30
+ * Output CSV:
31
+ * My Key
32
+ * 1
33
+ * 3
34
+ */
35
+ defaultColumnList: string[];
36
+ /**
37
+ * If true, all keys from the first object in the data array
38
+ * are used to populate defaultColumnList
39
+ */
40
+ includeAllKeysAsDefault: boolean;
41
+ /**
42
+ * A ColumnConfig needs to be provided for any column that can't use defaults
43
+ * e.g. if there's a special title, the data needs to be formatted in some way,
44
+ * sometimes certain fields are suppressed, etc.
45
+ */
46
+ columns: VicColumnConfig[];
47
+ marginBottom: number;
48
+ constructor(config?: Partial<VicDataExportConfig>);
49
+ convertToTitle(key: string): string;
50
+ }
@@ -0,0 +1,7 @@
1
+ import { VicDataExportConfig } from './data-export-config';
2
+ import * as i0 from "@angular/core";
3
+ export declare class VicDataExport {
4
+ saveCSV(name: string, dataConfigs: VicDataExportConfig[]): void;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<VicDataExport, never>;
6
+ static ɵprov: i0.ɵɵInjectableDeclaration<VicDataExport>;
7
+ }
@@ -0,0 +1,2 @@
1
+ export * from './data-export';
2
+ export * from './data-export-config';
@@ -0,0 +1,110 @@
1
+ import { DataValue } from '../../core';
2
+ import { DateChartPositionDimensionBuilder } from '../../data-dimensions/continuous-quantitative/date-chart-position/date-chart-position-builder';
3
+ import { NumberChartPositionDimensionBuilder } from '../../data-dimensions/continuous-quantitative/number-chart-position/number-chart-position-builder';
4
+ import { NumberVisualValueDimensionBuilder } from '../../data-dimensions/continuous-quantitative/number-visual-value/number-visual-value-builder';
5
+ import { OrdinalChartPositionDimensionBuilder } from '../../data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position-builder';
6
+ import { OrdinalVisualValueDimensionBuilder } from '../../data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value-builder';
7
+ import { PrimaryMarksBuilder } from '../../marks/primary-marks/config/primary-marks-builder';
8
+ import { StrokeBuilder } from '../../stroke/stroke-builder';
9
+ import { DotsConfig } from './dots-config';
10
+ import * as i0 from "@angular/core";
11
+ export declare class VicDotsConfigBuilder<Datum, XOrdinalDomain extends DataValue = string, YOrdinalDomain extends DataValue = string> extends PrimaryMarksBuilder<Datum> {
12
+ private _opacity;
13
+ private _pointerDetectionRadius;
14
+ private fillBuilderCategorical;
15
+ private fillBuilderNumber;
16
+ private fillBuilderConst;
17
+ private radiusBuilderCategorical;
18
+ private radiusBuilderNumber;
19
+ private radiusBuilderConst;
20
+ private strokeBuilder;
21
+ private xBuilderNumeric;
22
+ private xBuilderDate;
23
+ private xBuilderOrdinal;
24
+ private yBuilderNumeric;
25
+ private yBuilderDate;
26
+ private yBuilderOrdinal;
27
+ constructor();
28
+ /**
29
+ * OPTIONAL. Sets the appearance of the fill for the dots using a color string.
30
+ *
31
+ * If a string is passed, it will be used as the color for all dots.
32
+ *
33
+ * @default 'schemeTableau10[0]'
34
+ */
35
+ fill(fill: null): this;
36
+ fill(fill: string): this;
37
+ /**
38
+ * OPTIONAL. Sets the appearance of the fill for the dots using a categorical dimension.
39
+ *
40
+ */
41
+ fillCategorical(fill: null): this;
42
+ fillCategorical(fill: (fill: OrdinalVisualValueDimensionBuilder<Datum, string, string>) => void): this;
43
+ fillNumeric(fill: null): this;
44
+ fillNumeric(fill: (fill: NumberVisualValueDimensionBuilder<Datum, string>) => void): this;
45
+ private initFillBuilderNumber;
46
+ /**
47
+ * OPTIONAL. Sets the opacity of the dots.
48
+ *
49
+ * @default 1
50
+ */
51
+ opacity(opacity: number): this;
52
+ /**
53
+ * OPTIONAL. The size of the radius of the dots
54
+ *
55
+ * This is temporarily a constant.
56
+ *
57
+ * @default 2
58
+ */
59
+ radius(radius: null): this;
60
+ radius(radius: number): this;
61
+ radiusCategorical(radius: null): this;
62
+ radiusCategorical(radius: (radius: OrdinalVisualValueDimensionBuilder<Datum, string, number>) => void): this;
63
+ radiusNumeric(radius: null): this;
64
+ radiusNumeric(radius: (radius: NumberVisualValueDimensionBuilder<Datum, number>) => void): this;
65
+ /**
66
+ * OPTIONAL. Sets the appearance of the stroke for the dots.
67
+ */
68
+ stroke(stroke: null): this;
69
+ stroke(stroke: (stroke: StrokeBuilder) => void): this;
70
+ private initStrokeBuilder;
71
+ /**
72
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
73
+ */
74
+ xDate(x: null): this;
75
+ xDate(x: (x: DateChartPositionDimensionBuilder<Datum>) => void): this;
76
+ /**
77
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
78
+ */
79
+ xNumeric(x: null): this;
80
+ xNumeric(x: (x: NumberChartPositionDimensionBuilder<Datum>) => void): this;
81
+ /**
82
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
83
+ */
84
+ xOrdinal(x: null): this;
85
+ xOrdinal(x: (x: OrdinalChartPositionDimensionBuilder<Datum, XOrdinalDomain>) => void): this;
86
+ /**
87
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
88
+ */
89
+ yDate(y: null): this;
90
+ yDate(y: (y: DateChartPositionDimensionBuilder<Datum>) => void): this;
91
+ /**
92
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
93
+ */
94
+ yNumeric(y: null): this;
95
+ yNumeric(y: (y: NumberChartPositionDimensionBuilder<Datum>) => void): this;
96
+ /**
97
+ * REQUIRED. A config for the behavior of the chart's x dimension when using numeric data.
98
+ */
99
+ yOrdinal(y: null): this;
100
+ yOrdinal(y: (y: OrdinalChartPositionDimensionBuilder<Datum, YOrdinalDomain>) => void): this;
101
+ /**
102
+ * REQUIRED. Validates and builds the configuration object for the bars that can be passed to BarsComponent.
103
+ *
104
+ * The user must call this at the end of the chain of methods to build the configuration object.
105
+ */
106
+ getConfig(): DotsConfig<Datum, XOrdinalDomain, YOrdinalDomain>;
107
+ protected validateBuilder(): void;
108
+ static ɵfac: i0.ɵɵFactoryDeclaration<VicDotsConfigBuilder<any, any, any>, never>;
109
+ static ɵprov: i0.ɵɵInjectableDeclaration<VicDotsConfigBuilder<any, any, any>>;
110
+ }
@@ -0,0 +1,26 @@
1
+ import { DataValue } from '../../core';
2
+ import { DateChartPositionDimension } from '../../data-dimensions/continuous-quantitative/date-chart-position/date-chart-position';
3
+ import { NumberChartPositionDimension } from '../../data-dimensions/continuous-quantitative/number-chart-position/number-chart-position';
4
+ import { NumberDimension } from '../../data-dimensions/continuous-quantitative/number-dimension/number-dimension';
5
+ import { NumberVisualValueDimension } from '../../data-dimensions/continuous-quantitative/number-visual-value/number-visual-value';
6
+ import { DataDimension } from '../../data-dimensions/dimension';
7
+ import { OrdinalChartPositionDimension } from '../../data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position';
8
+ import { OrdinalVisualValueDimension } from '../../data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value';
9
+ import { XyPrimaryMarksConfig } from '../../marks/xy-marks/xy-primary-marks/xy-primary-marks-config';
10
+ import { Stroke } from '../../stroke/stroke';
11
+ import { DotsOptions } from './dots-options';
12
+ export declare class DotsConfig<Datum, XOrdinalDomain extends DataValue = string, YOrdinalDomain extends DataValue = string> extends XyPrimaryMarksConfig<Datum> implements DotsOptions<Datum, XOrdinalDomain, YOrdinalDomain> {
13
+ fill: OrdinalVisualValueDimension<Datum, string, string> | NumberVisualValueDimension<Datum, string>;
14
+ opacity: number;
15
+ pointerDetectionRadius: number;
16
+ radius: OrdinalVisualValueDimension<Datum, string, number> | NumberVisualValueDimension<Datum, number>;
17
+ stroke: Stroke;
18
+ x: NumberChartPositionDimension<Datum> | DateChartPositionDimension<Datum> | OrdinalChartPositionDimension<Datum, XOrdinalDomain>;
19
+ y: NumberChartPositionDimension<Datum> | DateChartPositionDimension<Datum> | OrdinalChartPositionDimension<Datum, YOrdinalDomain>;
20
+ constructor(options: DotsOptions<Datum, XOrdinalDomain, YOrdinalDomain>);
21
+ protected initPropertiesFromData(): void;
22
+ protected setDimensionPropertiesFromData(): void;
23
+ protected setValueIndices(): void;
24
+ private isValidValue;
25
+ isContinuousQuantitativeDimension(dimension: DataDimension<Datum, DataValue>): dimension is NumberDimension<Datum>;
26
+ }
@@ -0,0 +1,17 @@
1
+ import { DataValue } from '../../core';
2
+ import { DateChartPositionDimension } from '../../data-dimensions/continuous-quantitative/date-chart-position/date-chart-position';
3
+ import { NumberChartPositionDimension } from '../../data-dimensions/continuous-quantitative/number-chart-position/number-chart-position';
4
+ import { NumberVisualValueDimension } from '../../data-dimensions/continuous-quantitative/number-visual-value/number-visual-value';
5
+ import { OrdinalChartPositionDimension } from '../../data-dimensions/ordinal/ordinal-chart-position/ordinal-chart-position';
6
+ import { OrdinalVisualValueDimension } from '../../data-dimensions/ordinal/ordinal-visual-value/ordinal-visual-value';
7
+ import { DataMarksOptions } from '../../marks/config/marks-options';
8
+ import { Stroke } from '../../stroke/stroke';
9
+ export interface DotsOptions<Datum, XOrdinalDomain extends DataValue = string, YOrdinalDomain extends DataValue = string> extends DataMarksOptions<Datum> {
10
+ fill: OrdinalVisualValueDimension<Datum, string, string> | NumberVisualValueDimension<Datum, string>;
11
+ opacity: number;
12
+ pointerDetectionRadius: number;
13
+ radius: OrdinalVisualValueDimension<Datum, string, number> | NumberVisualValueDimension<Datum, number>;
14
+ stroke: Stroke;
15
+ x: NumberChartPositionDimension<Datum> | DateChartPositionDimension<Datum> | OrdinalChartPositionDimension<Datum, XOrdinalDomain>;
16
+ y: NumberChartPositionDimension<Datum> | DateChartPositionDimension<Datum> | OrdinalChartPositionDimension<Datum, YOrdinalDomain>;
17
+ }
@@ -0,0 +1,55 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { Selection } from 'd3-selection';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import { XyChartScales } from '../charts/xy-chart/xy-chart.component';
5
+ import { DataValue, GenericScale } from '../core';
6
+ import { NumberDimension } from '../data-dimensions/continuous-quantitative/number-dimension/number-dimension';
7
+ import { DataDimension } from '../data-dimensions/dimension';
8
+ import { VicXyPrimaryMarks } from '../marks/xy-marks/xy-primary-marks/xy-primary-marks';
9
+ import { DotsConfig } from './config/dots-config';
10
+ import * as i0 from "@angular/core";
11
+ export declare const DOTS: InjectionToken<DotsComponent<unknown>>;
12
+ export type DotGroupSelection = Selection<SVGGElement, DotDatum, SVGGElement, unknown>;
13
+ export type DotSelection = Selection<SVGCircleElement, DotDatum, SVGGElement, DotDatum>;
14
+ export type DotLabelSelection = Selection<SVGTextElement, DotDatum, SVGGElement, DotDatum>;
15
+ export type DotDatum = {
16
+ index: number;
17
+ x: DataValue;
18
+ y: DataValue;
19
+ fill: string | number;
20
+ radius: string | number;
21
+ };
22
+ export interface DotsTooltipDatum<Datum> {
23
+ datum: Datum;
24
+ values: {
25
+ x: string;
26
+ y: string;
27
+ fill: string | number;
28
+ radius: string | number;
29
+ };
30
+ color: string;
31
+ }
32
+ type DotsSvgElement = 'g' | 'dot';
33
+ export declare class DotsComponent<Datum> extends VicXyPrimaryMarks<Datum, DotsConfig<Datum>> {
34
+ dotGroups: DotGroupSelection;
35
+ dots: BehaviorSubject<DotSelection>;
36
+ dots$: import("rxjs").Observable<DotSelection>;
37
+ scales: {
38
+ fill: GenericScale<any, any>;
39
+ radius: GenericScale<any, any>;
40
+ } & XyChartScales;
41
+ private elRef;
42
+ private zone;
43
+ get class(): Record<DotsSvgElement, string>;
44
+ setChartScalesFromRanges(useTransition: boolean): void;
45
+ drawMarks(): void;
46
+ drawDots(transitionDuration: number): void;
47
+ getDotDatumFromIndex(index: number): DotDatum;
48
+ updateDotElements(): void;
49
+ getTooltipData(dotDatum: DotDatum): DotsTooltipDatum<Datum>;
50
+ getFormattedValue(dimension: 'x' | 'y', datum: Datum): string;
51
+ isContinuousNumericDimension(dimension: DataDimension<Datum, DataValue>): dimension is NumberDimension<Datum>;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<DotsComponent<any>, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<DotsComponent<any>, "[vic-primary-marks-dots]", never, {}, {}, never, never, true, never>;
54
+ }
55
+ export {};
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./dots.component";
3
+ import * as i2 from "./events/dots-events.directive";
4
+ export declare class VicDotsModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<VicDotsModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<VicDotsModule, never, [typeof i1.DotsComponent, typeof i2.DotsEventsDirective], [typeof i1.DotsComponent, typeof i2.DotsEventsDirective]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<VicDotsModule>;
8
+ }
@@ -0,0 +1,6 @@
1
+ import { EventAction } from '../../../events';
2
+ import { DotsHost } from '../dots-events.directive';
3
+ export declare class DotsHoverDefaultStyles<Datum> implements EventAction<DotsHost<Datum>> {
4
+ onStart(host: DotsHost<Datum>): void;
5
+ onEnd(host: DotsHost<Datum>): void;
6
+ }
@@ -0,0 +1,10 @@
1
+ import { HoverMoveAction } from '../../../events';
2
+ import { DotsHost } from '../dots-events.directive';
3
+ export declare class DotsHoverMoveDefaultStyles<Datum> implements HoverMoveAction<DotsHost<Datum>> {
4
+ onStart(host: DotsHost<Datum>): void;
5
+ onEnd(host: DotsHost<Datum>): void;
6
+ }
7
+ export declare class DotsHoverMoveEmitTooltipData<Datum> implements HoverMoveAction<DotsHost<Datum>> {
8
+ onStart(host: DotsHost<Datum>): void;
9
+ onEnd(host: DotsHost<Datum>): void;
10
+ }
@@ -0,0 +1,37 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { EventAction, EventsDirective, EventType, HoverMoveAction, InputEventAction, MarksHost, UnlistenFunction } from '../../events';
4
+ import { DotDatum, DotsComponent } from '../dots.component';
5
+ import { DotsInteractionOutput } from './dots-interaction-output';
6
+ import * as i0 from "@angular/core";
7
+ export interface DotsHost<Datum, TDotsComponent extends DotsComponent<Datum> = DotsComponent<Datum>> extends MarksHost<DotsInteractionOutput<Datum>, TDotsComponent> {
8
+ getDotDatum(): DotDatum | null;
9
+ }
10
+ export declare class DotsEventsDirective<Datum, TDotsComponent extends DotsComponent<Datum> = DotsComponent<Datum>> extends EventsDirective<DotsHost<Datum>> {
11
+ dots: TDotsComponent;
12
+ hoverActions: EventAction<DotsHost<Datum>, DotsInteractionOutput<Datum>>[] | null;
13
+ hoverMoveActions: HoverMoveAction<DotsHost<Datum>, DotsInteractionOutput<Datum>>[] | null;
14
+ clickActions: EventAction<DotsHost<Datum>, DotsInteractionOutput<Datum>>[] | null;
15
+ inputEventActions: InputEventAction<DotsHost<Datum>, DotsInteractionOutput<Datum>>[];
16
+ interactionOutput: EventEmitter<DotsInteractionOutput<Datum>>;
17
+ dotDatum: DotDatum;
18
+ origin: SVGCircleElement;
19
+ constructor(dots: TDotsComponent);
20
+ get marks(): DotsComponent<Datum>;
21
+ getElements(): Observable<Element[]>;
22
+ getDotDatum(): DotDatum | null;
23
+ setupListeners(elements: Element[]): UnlistenFunction[];
24
+ onEnter(_: PointerEvent, el: Element): void;
25
+ onMove(event: PointerEvent, _: Element): void;
26
+ onLeave(_: PointerEvent, __: Element): void;
27
+ onClick(event: PointerEvent, el: Element): void;
28
+ onClickRemove(): void;
29
+ onInputEvent(inputValue: unknown): void;
30
+ initFromElement(el: Element): void;
31
+ setPositionsFromElement(): void;
32
+ getInteractionOutput(type: EventType): DotsInteractionOutput<Datum>;
33
+ emitInteractionOutput(output: DotsInteractionOutput<Datum>): void;
34
+ private resetDirective;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<DotsEventsDirective<any, any>, never>;
36
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DotsEventsDirective<any, any>, "[vicDotsEvents]", never, { "hoverActions": { "alias": "hoverActions"; "required": false; }; "hoverMoveActions": { "alias": "hoverMoveActions"; "required": false; }; "clickActions": { "alias": "clickActions"; "required": false; }; "inputEventActions": { "alias": "inputEventActions"; "required": false; }; }, { "interactionOutput": "interactionOutput"; }, never, never, true, never>;
37
+ }
@@ -0,0 +1,14 @@
1
+ import { InteractionOutput } from '../../events/interaction-output';
2
+ import { HtmlTooltipCdkManagedPosition } from '../../tooltips';
3
+ import { DotsTooltipDatum } from '../dots.component';
4
+ export interface DotsInteractionOutput<Datum> extends DotsTooltipDatum<Datum>, InteractionOutput {
5
+ /**
6
+ * A method that returns a position for the tooltip above the pointer for HoverMove or Click actions or above the center of the dot for Hover actions.
7
+ *
8
+ * @param yOffset - Optional offset from the pointer's y position.
9
+ */
10
+ fromAnchor: (offset?: Partial<{
11
+ x: number;
12
+ y: number;
13
+ }>) => HtmlTooltipCdkManagedPosition;
14
+ }
@@ -0,0 +1,13 @@
1
+ import { TooltipPositioner } from '../../events/tooltip-positioner';
2
+ import { HtmlTooltipCdkManagedPosition } from '../../tooltips';
3
+ export declare class DotsTooltipPositioner extends TooltipPositioner {
4
+ private anchor;
5
+ constructor(anchor: {
6
+ x: number;
7
+ y: number;
8
+ });
9
+ fromAnchor(offset: {
10
+ x: number;
11
+ y: number;
12
+ }): HtmlTooltipCdkManagedPosition;
13
+ }
@@ -0,0 +1,9 @@
1
+ export * from './config/dots-builder';
2
+ export * from './config/dots-config';
3
+ export * from './config/dots-options';
4
+ export * from './dots.component';
5
+ export * from './dots.module';
6
+ export * from './events/actions/dots-hover-actions';
7
+ export * from './events/actions/dots-hover-move-actions';
8
+ export * from './events/dots-events.directive';
9
+ export * from './events/dots-interaction-output';
@@ -0,0 +1,43 @@
1
+ import { AfterViewInit, DestroyRef, OnDestroy, Renderer2 } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { ActionHost, EventAction, EventType, UnlistenFunction } from './events.types';
4
+ import * as i0 from "@angular/core";
5
+ export declare abstract class EventsDirective<Host extends ActionHost<unknown> = any> implements AfterViewInit, OnDestroy {
6
+ clickRemoveEvent$: Observable<void>;
7
+ inputEvent$: Observable<unknown>;
8
+ protected destroyRef: DestroyRef;
9
+ protected renderer: Renderer2;
10
+ protected abstract getElements(): Observable<Element[]>;
11
+ protected abstract onClickRemove(): void;
12
+ protected abstract onInputEvent(inputValue: unknown): void;
13
+ protected abstract setPositionsFromElement(): void;
14
+ protected abstract setupListeners(elements: Element[]): UnlistenFunction[];
15
+ protected unlistenFns: UnlistenFunction[];
16
+ protected events: EventType[];
17
+ preventAction: Record<EventType, boolean>;
18
+ positionX: number;
19
+ positionY: number;
20
+ ngAfterViewInit(): void;
21
+ ngOnDestroy(): void;
22
+ protected buildInteractionListeners(handlers: Partial<Record<EventType, Partial<{
23
+ pointerenter: (e: PointerEvent, el: Element) => void;
24
+ pointermove: (e: PointerEvent, el: Element) => void;
25
+ pointerleave: (e: PointerEvent, el: Element) => void;
26
+ click: (e: PointerEvent, el: Element) => void;
27
+ }>>>): Record<string, (e: PointerEvent, el: Element) => void>;
28
+ protected bindEventListeners(elements: Element[], handlers: Partial<{
29
+ pointerenter: (event: PointerEvent, el: Element) => void;
30
+ pointermove: (event: PointerEvent, el: Element) => void;
31
+ pointerleave: (event: PointerEvent, el: Element) => void;
32
+ click: (event: PointerEvent, el: Element) => void;
33
+ }>): UnlistenFunction[];
34
+ disableOtherActions(eventType: EventType): void;
35
+ resumeOtherActions(eventType: EventType, cancelCurrentActions?: boolean): void;
36
+ setPositionsFromPointer(event: PointerEvent): void;
37
+ protected runActions<T extends EventAction<Host>>(actions: T[] | null | undefined, fn: (action: T) => void): void;
38
+ protected hasEvent(event: EventType): boolean;
39
+ protected isEventAllowed(event: EventType): boolean;
40
+ protected asHost(): Host;
41
+ static ɵfac: i0.ɵɵFactoryDeclaration<EventsDirective<any>, never>;
42
+ static ɵdir: i0.ɵɵDirectiveDeclaration<EventsDirective<any>, never, never, { "clickRemoveEvent$": { "alias": "clickRemoveEvent$"; "required": false; }; "inputEvent$": { "alias": "inputEvent$"; "required": false; }; }, {}, never, never, true, never>;
43
+ }
@@ -0,0 +1,34 @@
1
+ import { Renderer2 } from '@angular/core';
2
+ export type UnlistenFunction = () => void;
3
+ export type ListenElement = HTMLElement | SVGElement;
4
+ export declare enum EventType {
5
+ Click = "click",
6
+ Hover = "hover",
7
+ HoverMove = "hoverMove",
8
+ Input = "input"
9
+ }
10
+ export interface EventAction<Host extends ActionHost<Output>, Output = unknown> {
11
+ onStart: (host: Host) => void;
12
+ onEnd: (host: Host) => void;
13
+ }
14
+ export interface HoverMoveAction<Host extends ActionHost<Output>, Output = unknown> extends EventAction<Host> {
15
+ initialize?: (host: Host) => void;
16
+ }
17
+ export interface InputEventAction<Host extends ActionHost<Output>, Output = unknown> {
18
+ onStart: (host: Host, ...args: any[]) => void;
19
+ onEnd: (host: Host, ...args: any[]) => void;
20
+ }
21
+ export interface ActionHost<Output> {
22
+ getInteractionOutput(type: EventType): Output;
23
+ setPositionsFromElement(): void;
24
+ setPositionsFromPointer(event: PointerEvent): void;
25
+ disableOtherActions(eventType: EventType): void;
26
+ resumeOtherActions(eventType: EventType, cancelCurrentActions?: boolean): void;
27
+ emitInteractionOutput(output: Output): void;
28
+ }
29
+ export interface MarksHost<Output, MarksComponent = unknown> extends ActionHost<Output> {
30
+ marks: MarksComponent;
31
+ }
32
+ export interface EventStrategy {
33
+ bindTo(elements: Element[], renderer: Renderer2): UnlistenFunction[];
34
+ }
@@ -0,0 +1,4 @@
1
+ export * from './events.directive';
2
+ export * from './events.types';
3
+ export * from './interaction-output';
4
+ export * from './tooltip-positioner';
@@ -0,0 +1,33 @@
1
+ import { EventType } from '../events';
2
+ import { HtmlTooltipCdkManagedPosition, TooltipPosition } from '../tooltips';
3
+ export interface InteractionOutput<Anchor = {
4
+ x: number;
5
+ y: number;
6
+ }> {
7
+ /**
8
+ * If used with Hover actions, the coordinates of the center of the origin element relative to the top left corner of the origin.
9
+ *
10
+ * If used with HoverMove actions, the position of the pointer relative to the top left corner of the origin element.
11
+ */
12
+ anchor: Anchor;
13
+ /**
14
+ * The origin element of the tooltip.
15
+ */
16
+ origin: SVGGraphicsElement;
17
+ /**
18
+ * The type of the event that triggered the interaction.
19
+ */
20
+ type: EventType;
21
+ /**
22
+ * The default position of the tooltip.
23
+ */
24
+ defaultPosition: HtmlTooltipCdkManagedPosition;
25
+ /**
26
+ * A method that positions the tooltip with a user specified offset from the tooltip's anchor point.
27
+ */
28
+ fromAnchor: (...args: any[]) => HtmlTooltipCdkManagedPosition;
29
+ /**
30
+ * A method that allows a user to provide custom positions for the tooltip.
31
+ */
32
+ customPosition: (positions: TooltipPosition[]) => HtmlTooltipCdkManagedPosition;
33
+ }
@@ -0,0 +1,6 @@
1
+ import { HtmlTooltipCdkManagedPosition, TooltipPosition } from '../tooltips/html-tooltip/config/position/tooltip-position';
2
+ export declare const DEFAULT_TOOLTIP_Y_OFFSET = 2;
3
+ export declare abstract class TooltipPositioner {
4
+ abstract fromAnchor(...args: any): HtmlTooltipCdkManagedPosition;
5
+ customPosition(positions: TooltipPosition[]): HtmlTooltipCdkManagedPosition;
6
+ }
@@ -0,0 +1,4 @@
1
+ export interface FillDefinition<Datum> {
2
+ defId: string;
3
+ shouldApply: (d: Datum) => boolean;
4
+ }
@@ -0,0 +1 @@
1
+ export * from './fill-definitions';