@neural-charts/native 0.0.0-stage → 0.1.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (508) hide show
  1. package/README.md +58 -2
  2. package/THIRD-PARTY-NOTICES.md +15 -0
  3. package/docs/guide.md +783 -0
  4. package/library/annular-hit.d.ts +10 -0
  5. package/library/annular-hit.d.ts.map +1 -0
  6. package/library/annular-hit.js +43 -0
  7. package/library/annular-hit.js.map +1 -0
  8. package/library/chart-capabilities.d.ts +326 -0
  9. package/library/chart-capabilities.d.ts.map +1 -0
  10. package/library/chart-capabilities.js +39 -0
  11. package/library/chart-capabilities.js.map +1 -0
  12. package/library/circular-scene.d.ts +55 -0
  13. package/library/circular-scene.d.ts.map +1 -0
  14. package/library/circular-scene.js +39 -0
  15. package/library/circular-scene.js.map +1 -0
  16. package/library/comparison-render.d.ts +18 -0
  17. package/library/comparison-render.d.ts.map +1 -0
  18. package/library/comparison-render.js +33 -0
  19. package/library/comparison-render.js.map +1 -0
  20. package/library/comparison-scene.d.ts +40 -0
  21. package/library/comparison-scene.d.ts.map +1 -0
  22. package/library/comparison-scene.js +77 -0
  23. package/library/comparison-scene.js.map +1 -0
  24. package/library/composition-scene.d.ts +35 -0
  25. package/library/composition-scene.d.ts.map +1 -0
  26. package/library/composition-scene.js +55 -0
  27. package/library/composition-scene.js.map +1 -0
  28. package/library/contour-hit-index.d.ts +15 -0
  29. package/library/contour-hit-index.d.ts.map +1 -0
  30. package/library/contour-hit-index.js +75 -0
  31. package/library/contour-hit-index.js.map +1 -0
  32. package/library/contour-label-anchors.d.ts +9 -0
  33. package/library/contour-label-anchors.d.ts.map +1 -0
  34. package/library/contour-label-anchors.js +20 -0
  35. package/library/contour-label-anchors.js.map +1 -0
  36. package/library/contour-scene.d.ts +10 -0
  37. package/library/contour-scene.d.ts.map +1 -0
  38. package/library/contour-scene.js +76 -0
  39. package/library/contour-scene.js.map +1 -0
  40. package/library/contracts.d.ts +445 -0
  41. package/library/contracts.d.ts.map +1 -0
  42. package/library/contracts.js +2 -0
  43. package/library/contracts.js.map +1 -0
  44. package/library/dendrogram-scene.d.ts +7 -0
  45. package/library/dendrogram-scene.d.ts.map +1 -0
  46. package/library/dendrogram-scene.js +28 -0
  47. package/library/dendrogram-scene.js.map +1 -0
  48. package/library/empty-state.d.ts +8 -0
  49. package/library/empty-state.d.ts.map +1 -0
  50. package/library/empty-state.js +30 -0
  51. package/library/empty-state.js.map +1 -0
  52. package/library/heatmap-hit.d.ts +27 -0
  53. package/library/heatmap-hit.d.ts.map +1 -0
  54. package/library/heatmap-hit.js +56 -0
  55. package/library/heatmap-hit.js.map +1 -0
  56. package/library/heatmap-scene.d.ts +17 -0
  57. package/library/heatmap-scene.d.ts.map +1 -0
  58. package/library/heatmap-scene.js +85 -0
  59. package/library/heatmap-scene.js.map +1 -0
  60. package/library/index.d.ts +14 -0
  61. package/library/index.d.ts.map +1 -0
  62. package/library/index.js +4 -0
  63. package/library/index.js.map +1 -0
  64. package/library/interaction-content.d.ts +4 -0
  65. package/library/interaction-content.d.ts.map +1 -0
  66. package/library/interaction-content.js +28 -0
  67. package/library/interaction-content.js.map +1 -0
  68. package/library/interaction.d.ts +75 -0
  69. package/library/interaction.d.ts.map +1 -0
  70. package/library/interaction.js +523 -0
  71. package/library/interaction.js.map +1 -0
  72. package/library/marker-style.d.ts +24 -0
  73. package/library/marker-style.d.ts.map +1 -0
  74. package/library/marker-style.js +43 -0
  75. package/library/marker-style.js.map +1 -0
  76. package/library/parallel-scene.d.ts +11 -0
  77. package/library/parallel-scene.d.ts.map +1 -0
  78. package/library/parallel-scene.js +44 -0
  79. package/library/parallel-scene.js.map +1 -0
  80. package/library/path-validation.d.ts +3 -0
  81. package/library/path-validation.d.ts.map +1 -0
  82. package/library/path-validation.js +78 -0
  83. package/library/path-validation.js.map +1 -0
  84. package/library/pictorial-hit.d.ts +19 -0
  85. package/library/pictorial-hit.d.ts.map +1 -0
  86. package/library/pictorial-hit.js +73 -0
  87. package/library/pictorial-hit.js.map +1 -0
  88. package/library/pictorial-scene.d.ts +16 -0
  89. package/library/pictorial-scene.d.ts.map +1 -0
  90. package/library/pictorial-scene.js +73 -0
  91. package/library/pictorial-scene.js.map +1 -0
  92. package/library/point-label-placement.d.ts +34 -0
  93. package/library/point-label-placement.d.ts.map +1 -0
  94. package/library/point-label-placement.js +24 -0
  95. package/library/point-label-placement.js.map +1 -0
  96. package/library/polar-grid.d.ts +5 -0
  97. package/library/polar-grid.d.ts.map +1 -0
  98. package/library/polar-grid.js +28 -0
  99. package/library/polar-grid.js.map +1 -0
  100. package/library/polygon-hit.d.ts +18 -0
  101. package/library/polygon-hit.d.ts.map +1 -0
  102. package/library/polygon-hit.js +98 -0
  103. package/library/polygon-hit.js.map +1 -0
  104. package/library/profile-scene.d.ts +11 -0
  105. package/library/profile-scene.d.ts.map +1 -0
  106. package/library/profile-scene.js +51 -0
  107. package/library/profile-scene.js.map +1 -0
  108. package/library/relationship-hit-index.d.ts +12 -0
  109. package/library/relationship-hit-index.d.ts.map +1 -0
  110. package/library/relationship-hit-index.js +87 -0
  111. package/library/relationship-hit-index.js.map +1 -0
  112. package/library/relationship-scene.d.ts +12 -0
  113. package/library/relationship-scene.d.ts.map +1 -0
  114. package/library/relationship-scene.js +62 -0
  115. package/library/relationship-scene.js.map +1 -0
  116. package/library/scene-paint.d.ts +29 -0
  117. package/library/scene-paint.d.ts.map +1 -0
  118. package/library/scene-paint.js +123 -0
  119. package/library/scene-paint.js.map +1 -0
  120. package/library/scene-styles.d.ts +13 -0
  121. package/library/scene-styles.d.ts.map +1 -0
  122. package/library/scene-styles.js +135 -0
  123. package/library/scene-styles.js.map +1 -0
  124. package/library/scene.d.ts +49 -0
  125. package/library/scene.d.ts.map +1 -0
  126. package/library/scene.js +533 -0
  127. package/library/scene.js.map +1 -0
  128. package/library/temporal-hit-index.d.ts +13 -0
  129. package/library/temporal-hit-index.d.ts.map +1 -0
  130. package/library/temporal-hit-index.js +71 -0
  131. package/library/temporal-hit-index.js.map +1 -0
  132. package/library/temporal-scene.d.ts +6 -0
  133. package/library/temporal-scene.d.ts.map +1 -0
  134. package/library/temporal-scene.js +70 -0
  135. package/library/temporal-scene.js.map +1 -0
  136. package/library/tile-index.d.ts +11 -0
  137. package/library/tile-index.d.ts.map +1 -0
  138. package/library/tile-index.js +37 -0
  139. package/library/tile-index.js.map +1 -0
  140. package/library/tilemap-hit.d.ts +11 -0
  141. package/library/tilemap-hit.d.ts.map +1 -0
  142. package/library/tilemap-hit.js +63 -0
  143. package/library/tilemap-hit.js.map +1 -0
  144. package/library/tilemap-scene.d.ts +24 -0
  145. package/library/tilemap-scene.d.ts.map +1 -0
  146. package/library/tilemap-scene.js +125 -0
  147. package/library/tilemap-scene.js.map +1 -0
  148. package/library/uncertainty-scene.d.ts +11 -0
  149. package/library/uncertainty-scene.d.ts.map +1 -0
  150. package/library/uncertainty-scene.js +61 -0
  151. package/library/uncertainty-scene.js.map +1 -0
  152. package/library/venn-hit.d.ts +21 -0
  153. package/library/venn-hit.d.ts.map +1 -0
  154. package/library/venn-hit.js +37 -0
  155. package/library/venn-hit.js.map +1 -0
  156. package/library/venn-scene.d.ts +14 -0
  157. package/library/venn-scene.d.ts.map +1 -0
  158. package/library/venn-scene.js +84 -0
  159. package/library/venn-scene.js.map +1 -0
  160. package/library/wordcloud-scene.d.ts +19 -0
  161. package/library/wordcloud-scene.d.ts.map +1 -0
  162. package/library/wordcloud-scene.js +58 -0
  163. package/library/wordcloud-scene.js.map +1 -0
  164. package/native/activity.d.ts +14 -0
  165. package/native/activity.d.ts.map +1 -0
  166. package/native/activity.js +31 -0
  167. package/native/activity.js.map +1 -0
  168. package/native/bar-labels.d.ts +4 -0
  169. package/native/bar-labels.d.ts.map +1 -0
  170. package/native/bar-labels.js +16 -0
  171. package/native/bar-labels.js.map +1 -0
  172. package/native/bubble-entrance.d.ts +15 -0
  173. package/native/bubble-entrance.d.ts.map +1 -0
  174. package/native/bubble-entrance.js +27 -0
  175. package/native/bubble-entrance.js.map +1 -0
  176. package/native/chart-drilldown.d.ts +57 -0
  177. package/native/chart-drilldown.d.ts.map +1 -0
  178. package/native/chart-drilldown.js +118 -0
  179. package/native/chart-drilldown.js.map +1 -0
  180. package/native/chart-motion.d.ts +69 -0
  181. package/native/chart-motion.d.ts.map +1 -0
  182. package/native/chart-motion.js +165 -0
  183. package/native/chart-motion.js.map +1 -0
  184. package/native/chart-panels-options.d.ts +77 -0
  185. package/native/chart-panels-options.d.ts.map +1 -0
  186. package/native/chart-panels-options.js +2 -0
  187. package/native/chart-panels-options.js.map +1 -0
  188. package/native/chart-panels-state.d.ts +34 -0
  189. package/native/chart-panels-state.d.ts.map +1 -0
  190. package/native/chart-panels-state.js +198 -0
  191. package/native/chart-panels-state.js.map +1 -0
  192. package/native/chart-panels.d.ts +43 -0
  193. package/native/chart-panels.d.ts.map +1 -0
  194. package/native/chart-panels.js +107 -0
  195. package/native/chart-panels.js.map +1 -0
  196. package/native/chart-presentation.d.ts +40 -0
  197. package/native/chart-presentation.d.ts.map +1 -0
  198. package/native/chart-presentation.js +16 -0
  199. package/native/chart-presentation.js.map +1 -0
  200. package/native/chart-type.d.ts +65 -0
  201. package/native/chart-type.d.ts.map +1 -0
  202. package/native/chart-type.js +66 -0
  203. package/native/chart-type.js.map +1 -0
  204. package/native/chart.d.ts +571 -0
  205. package/native/chart.d.ts.map +1 -0
  206. package/native/chart.js +1417 -0
  207. package/native/chart.js.map +1 -0
  208. package/native/circular-options.d.ts +17 -0
  209. package/native/circular-options.d.ts.map +1 -0
  210. package/native/circular-options.js +2 -0
  211. package/native/circular-options.js.map +1 -0
  212. package/native/comparison-data.d.ts +64 -0
  213. package/native/comparison-data.d.ts.map +1 -0
  214. package/native/comparison-data.js +2 -0
  215. package/native/comparison-data.js.map +1 -0
  216. package/native/comparison-format.d.ts +16 -0
  217. package/native/comparison-format.d.ts.map +1 -0
  218. package/native/comparison-format.js +26 -0
  219. package/native/comparison-format.js.map +1 -0
  220. package/native/composition-options.d.ts +18 -0
  221. package/native/composition-options.d.ts.map +1 -0
  222. package/native/composition-options.js +2 -0
  223. package/native/composition-options.js.map +1 -0
  224. package/native/contour-data.d.ts +48 -0
  225. package/native/contour-data.d.ts.map +1 -0
  226. package/native/contour-data.js +2 -0
  227. package/native/contour-data.js.map +1 -0
  228. package/native/contour-format.d.ts +3 -0
  229. package/native/contour-format.d.ts.map +1 -0
  230. package/native/contour-format.js +11 -0
  231. package/native/contour-format.js.map +1 -0
  232. package/native/control-accessibility.d.ts +7 -0
  233. package/native/control-accessibility.d.ts.map +1 -0
  234. package/native/control-accessibility.js +9 -0
  235. package/native/control-accessibility.js.map +1 -0
  236. package/native/data-chart.d.ts +179 -0
  237. package/native/data-chart.d.ts.map +1 -0
  238. package/native/data-chart.js +415 -0
  239. package/native/data-chart.js.map +1 -0
  240. package/native/data-identities.d.ts +10 -0
  241. package/native/data-identities.d.ts.map +1 -0
  242. package/native/data-identities.js +50 -0
  243. package/native/data-identities.js.map +1 -0
  244. package/native/data-options.d.ts +566 -0
  245. package/native/data-options.d.ts.map +1 -0
  246. package/native/data-options.js +2 -0
  247. package/native/data-options.js.map +1 -0
  248. package/native/data-planning.d.ts +84 -0
  249. package/native/data-planning.d.ts.map +1 -0
  250. package/native/data-planning.js +174 -0
  251. package/native/data-planning.js.map +1 -0
  252. package/native/dendrogram-data.d.ts +27 -0
  253. package/native/dendrogram-data.d.ts.map +1 -0
  254. package/native/dendrogram-data.js +2 -0
  255. package/native/dendrogram-data.js.map +1 -0
  256. package/native/dendrogram-labels.d.ts +13 -0
  257. package/native/dendrogram-labels.d.ts.map +1 -0
  258. package/native/dendrogram-labels.js +12 -0
  259. package/native/dendrogram-labels.js.map +1 -0
  260. package/native/drilldown-options.d.ts +62 -0
  261. package/native/drilldown-options.d.ts.map +1 -0
  262. package/native/drilldown-options.js +2 -0
  263. package/native/drilldown-options.js.map +1 -0
  264. package/native/drilldown-state.d.ts +18 -0
  265. package/native/drilldown-state.d.ts.map +1 -0
  266. package/native/drilldown-state.js +130 -0
  267. package/native/drilldown-state.js.map +1 -0
  268. package/native/gauge-entrance.d.ts +8 -0
  269. package/native/gauge-entrance.d.ts.map +1 -0
  270. package/native/gauge-entrance.js +42 -0
  271. package/native/gauge-entrance.js.map +1 -0
  272. package/native/haptics.d.ts +21 -0
  273. package/native/haptics.d.ts.map +1 -0
  274. package/native/haptics.js +66 -0
  275. package/native/haptics.js.map +1 -0
  276. package/native/heatmap-data.d.ts +56 -0
  277. package/native/heatmap-data.d.ts.map +1 -0
  278. package/native/heatmap-data.js +2 -0
  279. package/native/heatmap-data.js.map +1 -0
  280. package/native/index.d.ts +26 -0
  281. package/native/index.d.ts.map +1 -0
  282. package/native/index.js +11 -0
  283. package/native/index.js.map +1 -0
  284. package/native/input-bridge.d.ts +32 -0
  285. package/native/input-bridge.d.ts.map +1 -0
  286. package/native/input-bridge.js +3 -0
  287. package/native/input-bridge.js.map +1 -0
  288. package/native/input-lease.d.ts +23 -0
  289. package/native/input-lease.d.ts.map +1 -0
  290. package/native/input-lease.js +28 -0
  291. package/native/input-lease.js.map +1 -0
  292. package/native/label-contrast.d.ts +7 -0
  293. package/native/label-contrast.d.ts.map +1 -0
  294. package/native/label-contrast.js +33 -0
  295. package/native/label-contrast.js.map +1 -0
  296. package/native/label-halo.d.ts +9 -0
  297. package/native/label-halo.d.ts.map +1 -0
  298. package/native/label-halo.js +23 -0
  299. package/native/label-halo.js.map +1 -0
  300. package/native/label-ink.d.ts +3 -0
  301. package/native/label-ink.d.ts.map +1 -0
  302. package/native/label-ink.js +6 -0
  303. package/native/label-ink.js.map +1 -0
  304. package/native/legend.d.ts +21 -0
  305. package/native/legend.d.ts.map +1 -0
  306. package/native/legend.js +66 -0
  307. package/native/legend.js.map +1 -0
  308. package/native/log-axis-labels.d.ts +6 -0
  309. package/native/log-axis-labels.d.ts.map +1 -0
  310. package/native/log-axis-labels.js +16 -0
  311. package/native/log-axis-labels.js.map +1 -0
  312. package/native/log-options.d.ts +5 -0
  313. package/native/log-options.d.ts.map +1 -0
  314. package/native/log-options.js +6 -0
  315. package/native/log-options.js.map +1 -0
  316. package/native/number-format.d.ts +5 -0
  317. package/native/number-format.d.ts.map +1 -0
  318. package/native/number-format.js +24 -0
  319. package/native/number-format.js.map +1 -0
  320. package/native/observation-format.d.ts +8 -0
  321. package/native/observation-format.d.ts.map +1 -0
  322. package/native/observation-format.js +80 -0
  323. package/native/observation-format.js.map +1 -0
  324. package/native/options-validation.d.ts +8 -0
  325. package/native/options-validation.d.ts.map +1 -0
  326. package/native/options-validation.js +612 -0
  327. package/native/options-validation.js.map +1 -0
  328. package/native/panel-viewport-contract.d.ts +15 -0
  329. package/native/panel-viewport-contract.d.ts.map +1 -0
  330. package/native/panel-viewport-contract.js +86 -0
  331. package/native/panel-viewport-contract.js.map +1 -0
  332. package/native/panel-viewport-sync.d.ts +27 -0
  333. package/native/panel-viewport-sync.d.ts.map +1 -0
  334. package/native/panel-viewport-sync.js +96 -0
  335. package/native/panel-viewport-sync.js.map +1 -0
  336. package/native/parallel-data.d.ts +49 -0
  337. package/native/parallel-data.d.ts.map +1 -0
  338. package/native/parallel-data.js +2 -0
  339. package/native/parallel-data.js.map +1 -0
  340. package/native/parallel-labels.d.ts +20 -0
  341. package/native/parallel-labels.d.ts.map +1 -0
  342. package/native/parallel-labels.js +54 -0
  343. package/native/parallel-labels.js.map +1 -0
  344. package/native/pictorial-data.d.ts +78 -0
  345. package/native/pictorial-data.d.ts.map +1 -0
  346. package/native/pictorial-data.js +2 -0
  347. package/native/pictorial-data.js.map +1 -0
  348. package/native/pictorial-format.d.ts +8 -0
  349. package/native/pictorial-format.d.ts.map +1 -0
  350. package/native/pictorial-format.js +14 -0
  351. package/native/pictorial-format.js.map +1 -0
  352. package/native/pictorial-options.d.ts +2 -0
  353. package/native/pictorial-options.d.ts.map +1 -0
  354. package/native/pictorial-options.js +61 -0
  355. package/native/pictorial-options.js.map +1 -0
  356. package/native/pictorial-paint.d.ts +19 -0
  357. package/native/pictorial-paint.d.ts.map +1 -0
  358. package/native/pictorial-paint.js +31 -0
  359. package/native/pictorial-paint.js.map +1 -0
  360. package/native/plan.d.ts +45 -0
  361. package/native/plan.d.ts.map +1 -0
  362. package/native/plan.js +109 -0
  363. package/native/plan.js.map +1 -0
  364. package/native/profile-data.d.ts +82 -0
  365. package/native/profile-data.d.ts.map +1 -0
  366. package/native/profile-data.js +2 -0
  367. package/native/profile-data.js.map +1 -0
  368. package/native/profile-labels.d.ts +5 -0
  369. package/native/profile-labels.d.ts.map +1 -0
  370. package/native/profile-labels.js +19 -0
  371. package/native/profile-labels.js.map +1 -0
  372. package/native/radial-entrance.d.ts +24 -0
  373. package/native/radial-entrance.d.ts.map +1 -0
  374. package/native/radial-entrance.js +25 -0
  375. package/native/radial-entrance.js.map +1 -0
  376. package/native/radial-layer.d.ts +26 -0
  377. package/native/radial-layer.d.ts.map +1 -0
  378. package/native/radial-layer.js +76 -0
  379. package/native/radial-layer.js.map +1 -0
  380. package/native/reference-labels.d.ts +21 -0
  381. package/native/reference-labels.d.ts.map +1 -0
  382. package/native/reference-labels.js +36 -0
  383. package/native/reference-labels.js.map +1 -0
  384. package/native/reference-options.d.ts +23 -0
  385. package/native/reference-options.d.ts.map +1 -0
  386. package/native/reference-options.js +58 -0
  387. package/native/reference-options.js.map +1 -0
  388. package/native/relationship-data.d.ts +63 -0
  389. package/native/relationship-data.d.ts.map +1 -0
  390. package/native/relationship-data.js +2 -0
  391. package/native/relationship-data.js.map +1 -0
  392. package/native/relationship-format.d.ts +13 -0
  393. package/native/relationship-format.d.ts.map +1 -0
  394. package/native/relationship-format.js +26 -0
  395. package/native/relationship-format.js.map +1 -0
  396. package/native/selection-outlines.d.ts +12 -0
  397. package/native/selection-outlines.d.ts.map +1 -0
  398. package/native/selection-outlines.js +20 -0
  399. package/native/selection-outlines.js.map +1 -0
  400. package/native/temporal-format.d.ts +29 -0
  401. package/native/temporal-format.d.ts.map +1 -0
  402. package/native/temporal-format.js +41 -0
  403. package/native/temporal-format.js.map +1 -0
  404. package/native/text-style.d.ts +16 -0
  405. package/native/text-style.d.ts.map +1 -0
  406. package/native/text-style.js +14 -0
  407. package/native/text-style.js.map +1 -0
  408. package/native/tilemap-color-axis.d.ts +23 -0
  409. package/native/tilemap-color-axis.d.ts.map +1 -0
  410. package/native/tilemap-color-axis.js +77 -0
  411. package/native/tilemap-color-axis.js.map +1 -0
  412. package/native/tilemap-data.d.ts +71 -0
  413. package/native/tilemap-data.d.ts.map +1 -0
  414. package/native/tilemap-data.js +2 -0
  415. package/native/tilemap-data.js.map +1 -0
  416. package/native/tilemap-format.d.ts +3 -0
  417. package/native/tilemap-format.d.ts.map +1 -0
  418. package/native/tilemap-format.js +14 -0
  419. package/native/tilemap-format.js.map +1 -0
  420. package/native/tilemap-selection.d.ts +12 -0
  421. package/native/tilemap-selection.d.ts.map +1 -0
  422. package/native/tilemap-selection.js +8 -0
  423. package/native/tilemap-selection.js.map +1 -0
  424. package/native/time-axis-labels.d.ts +5 -0
  425. package/native/time-axis-labels.d.ts.map +1 -0
  426. package/native/time-axis-labels.js +38 -0
  427. package/native/time-axis-labels.js.map +1 -0
  428. package/native/tooltip-layout.d.ts +16 -0
  429. package/native/tooltip-layout.d.ts.map +1 -0
  430. package/native/tooltip-layout.js +33 -0
  431. package/native/tooltip-layout.js.map +1 -0
  432. package/native/tooltip-metrics.d.ts +4 -0
  433. package/native/tooltip-metrics.d.ts.map +1 -0
  434. package/native/tooltip-metrics.js +11 -0
  435. package/native/tooltip-metrics.js.map +1 -0
  436. package/native/tooltip-motion.d.ts +35 -0
  437. package/native/tooltip-motion.d.ts.map +1 -0
  438. package/native/tooltip-motion.js +36 -0
  439. package/native/tooltip-motion.js.map +1 -0
  440. package/native/tooltip-occupancy.d.ts +21 -0
  441. package/native/tooltip-occupancy.d.ts.map +1 -0
  442. package/native/tooltip-occupancy.js +67 -0
  443. package/native/tooltip-occupancy.js.map +1 -0
  444. package/native/tooltip.d.ts +144 -0
  445. package/native/tooltip.d.ts.map +1 -0
  446. package/native/tooltip.js +146 -0
  447. package/native/tooltip.js.map +1 -0
  448. package/native/uncertainty-data.d.ts +110 -0
  449. package/native/uncertainty-data.d.ts.map +1 -0
  450. package/native/uncertainty-data.js +2 -0
  451. package/native/uncertainty-data.js.map +1 -0
  452. package/native/uncertainty-format.d.ts +3 -0
  453. package/native/uncertainty-format.d.ts.map +1 -0
  454. package/native/uncertainty-format.js +10 -0
  455. package/native/uncertainty-format.js.map +1 -0
  456. package/native/value-labels.d.ts +30 -0
  457. package/native/value-labels.d.ts.map +1 -0
  458. package/native/value-labels.js +206 -0
  459. package/native/value-labels.js.map +1 -0
  460. package/native/variwide-labels.d.ts +14 -0
  461. package/native/variwide-labels.d.ts.map +1 -0
  462. package/native/variwide-labels.js +22 -0
  463. package/native/variwide-labels.js.map +1 -0
  464. package/native/venn-data.d.ts +29 -0
  465. package/native/venn-data.d.ts.map +1 -0
  466. package/native/venn-data.js +2 -0
  467. package/native/venn-data.js.map +1 -0
  468. package/native/viewport-gestures.d.ts +32 -0
  469. package/native/viewport-gestures.d.ts.map +1 -0
  470. package/native/viewport-gestures.js +43 -0
  471. package/native/viewport-gestures.js.map +1 -0
  472. package/native/viewport-motion.d.ts +67 -0
  473. package/native/viewport-motion.d.ts.map +1 -0
  474. package/native/viewport-motion.js +182 -0
  475. package/native/viewport-motion.js.map +1 -0
  476. package/native/viewport-state.d.ts +20 -0
  477. package/native/viewport-state.d.ts.map +1 -0
  478. package/native/viewport-state.js +14 -0
  479. package/native/viewport-state.js.map +1 -0
  480. package/native/waterfall-appearance.d.ts +8 -0
  481. package/native/waterfall-appearance.d.ts.map +1 -0
  482. package/native/waterfall-appearance.js +18 -0
  483. package/native/waterfall-appearance.js.map +1 -0
  484. package/native/wordcloud-data.d.ts +40 -0
  485. package/native/wordcloud-data.d.ts.map +1 -0
  486. package/native/wordcloud-data.js +2 -0
  487. package/native/wordcloud-data.js.map +1 -0
  488. package/native/wordcloud-layer.d.ts +29 -0
  489. package/native/wordcloud-layer.d.ts.map +1 -0
  490. package/native/wordcloud-layer.js +58 -0
  491. package/native/wordcloud-layer.js.map +1 -0
  492. package/native/wordcloud-measurements.d.ts +47 -0
  493. package/native/wordcloud-measurements.d.ts.map +1 -0
  494. package/native/wordcloud-measurements.js +137 -0
  495. package/native/wordcloud-measurements.js.map +1 -0
  496. package/native/wordcloud-planning.d.ts +23 -0
  497. package/native/wordcloud-planning.d.ts.map +1 -0
  498. package/native/wordcloud-planning.js +25 -0
  499. package/native/wordcloud-planning.js.map +1 -0
  500. package/native/wordcloud-probes.d.ts +48 -0
  501. package/native/wordcloud-probes.d.ts.map +1 -0
  502. package/native/wordcloud-probes.js +111 -0
  503. package/native/wordcloud-probes.js.map +1 -0
  504. package/native/wordcloud-text-backend.d.ts +16 -0
  505. package/native/wordcloud-text-backend.d.ts.map +1 -0
  506. package/native/wordcloud-text-backend.js +3 -0
  507. package/native/wordcloud-text-backend.js.map +1 -0
  508. package/package.json +58 -4
@@ -0,0 +1,41 @@
1
+ function utcParts(value) {
2
+ const iso = new Date(value).toISOString();
3
+ const split = iso.indexOf('T');
4
+ const date = iso.slice(0, split), fullTime = iso.slice(split + 1, -1);
5
+ const time = value % 1000 !== 0 ? fullTime : value % 60000 !== 0 ? fullTime.slice(0, 8) : fullTime.slice(0, 5);
6
+ return { date, time };
7
+ }
8
+ export function temporalCoordinate(value, type, format) {
9
+ if (type === 'linear')
10
+ return format(value);
11
+ const { date, time } = utcParts(value);
12
+ return `${date} ${time} UTC`;
13
+ }
14
+ /** Keep a date readable in the compact value line; exact time is a separate detail. */
15
+ export function eventPrimaryValue(event, format) {
16
+ return event.type === 'time' ? utcParts(event.coordinate).date : format(event.coordinate);
17
+ }
18
+ export function temporalDetails(point, format, locale, showRow = true) {
19
+ const en = locale === 'en';
20
+ if (point.interval) {
21
+ const interval = point.interval;
22
+ const coordinate = (value) => temporalCoordinate(value, interval.type, format);
23
+ return [
24
+ ...(!showRow || point.label === interval.rowLabel ? [] : [(en ? 'Row: ' : 'Fila: ') + interval.rowLabel]),
25
+ (en ? 'Start: ' : 'Inicio: ') + coordinate(interval.start),
26
+ (en ? 'End: ' : 'Fin: ') + coordinate(interval.end),
27
+ ...(interval.completed === undefined ? [] : [interval.completed === null
28
+ ? en ? 'Progress: unknown' : 'Progreso: desconocido'
29
+ : (en ? 'Progress: ' : 'Progreso: ') + format(interval.completed * 100) + '%']),
30
+ ];
31
+ }
32
+ if (point.event) {
33
+ const event = point.event;
34
+ return [
35
+ ...(event.type === 'time' ? [(en ? 'Time: ' : 'Hora: ') + utcParts(event.coordinate).time + ' UTC'] : []),
36
+ ...(event.description ? [event.description] : []),
37
+ ];
38
+ }
39
+ return [];
40
+ }
41
+ //# sourceMappingURL=temporal-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal-format.js","sourceRoot":"","sources":["../../src/native/temporal-format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { NativeTextStyleOptions } from '../library/contracts.js';
2
+ export type ResolvedTextStyle = Readonly<{
3
+ textAlign: 'left' | 'center' | 'right';
4
+ color: string;
5
+ fontSize: number;
6
+ fontWeight: '400' | '500' | '600' | '700';
7
+ lineHeight: number | undefined;
8
+ }>;
9
+ export declare function nativeTextStyle(input: NativeTextStyleOptions | undefined, defaults: Readonly<{
10
+ align: 'left' | 'center' | 'right';
11
+ color: string;
12
+ fontSize: number;
13
+ fontWeight: 400 | 500 | 600 | 700;
14
+ }>): ResolvedTextStyle;
15
+ export declare function sameTextStyle(a: ResolvedTextStyle, b: ResolvedTextStyle): boolean;
16
+ //# sourceMappingURL=text-style.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-style.d.ts","sourceRoot":"","sources":["../../src/native/text-style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAEpE,MAAM,MAAM,iBAAiB,GAAC,QAAQ,CAAC;IAAC,SAAS,EAAC,MAAM,GAAC,QAAQ,GAAC,OAAO,CAAC;IAAA,KAAK,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,CAAC;IAAA,UAAU,EAAC,MAAM,GAAC,SAAS,CAAA;CAAC,CAAC,CAAC;AACxK,wBAAgB,eAAe,CAAC,KAAK,EAAC,sBAAsB,GAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,CAAC;IAAC,KAAK,EAAC,MAAM,GAAC,QAAQ,GAAC,OAAO,CAAC;IAAA,KAAK,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,GAAG,GAAC,GAAG,GAAC,GAAG,GAAC,GAAG,CAAA;CAAC,CAAC,GAAE,iBAAiB,CAOnM;AACD,wBAAgB,aAAa,CAAC,CAAC,EAAC,iBAAiB,EAAC,CAAC,EAAC,iBAAiB,GAAE,OAAO,CAAyI"}
@@ -0,0 +1,14 @@
1
+ export function nativeTextStyle(input, defaults) {
2
+ if (input !== undefined && (!input || typeof input !== 'object' || Array.isArray(input)))
3
+ throw Error('Invalid text style');
4
+ const descriptors = input ? Object.getOwnPropertyDescriptors(input) : {};
5
+ for (const key of Reflect.ownKeys(descriptors))
6
+ if (typeof key !== 'string' || !['align', 'color', 'fontSize', 'fontWeight'].includes(key) || descriptors[key]?.get || descriptors[key]?.set)
7
+ throw Error('Invalid text style property');
8
+ const align = descriptors['align']?.value ?? defaults.align, color = descriptors['color']?.value ?? defaults.color, fontSize = descriptors['fontSize']?.value ?? defaults.fontSize, fontWeight = descriptors['fontWeight']?.value ?? defaults.fontWeight;
9
+ if (!['left', 'center', 'right'].includes(align) || typeof color !== 'string' || !/^#[\da-f]{6}$/i.test(color) || typeof fontSize !== 'number' || !Number.isFinite(fontSize) || fontSize < 10 || fontSize > 40 || ![400, 500, 600, 700].includes(fontWeight))
10
+ throw Error('Invalid text style value');
11
+ return { textAlign: align, color, fontSize, fontWeight: String(fontWeight), lineHeight: descriptors['fontSize']?.value === undefined ? undefined : Math.ceil(fontSize * 1.45) };
12
+ }
13
+ export function sameTextStyle(a, b) { return a.textAlign === b.textAlign && a.color === b.color && a.fontSize === b.fontSize && a.fontWeight === b.fontWeight && a.lineHeight === b.lineHeight; }
14
+ //# sourceMappingURL=text-style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-style.js","sourceRoot":"","sources":["../../src/native/text-style.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,CAAC,KAAsC,EAAC,QAA0G;IAC/K,IAAG,KAAK,KAAG,SAAS,IAAE,CAAC,CAAC,KAAK,IAAE,OAAO,KAAK,KAAG,QAAQ,IAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAChH,MAAM,WAAW,GAAC,KAAK,CAAA,CAAC,CAAA,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC;IACnE,KAAI,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;QAAC,IAAG,OAAO,GAAG,KAAG,QAAQ,IAAE,CAAC,CAAC,OAAO,EAAC,OAAO,EAAC,UAAU,EAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAE,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG,IAAE,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG;YAAC,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC1N,MAAM,KAAK,GAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,IAAE,QAAQ,CAAC,KAAK,EAAC,KAAK,GAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,IAAE,QAAQ,CAAC,KAAK,EAAC,QAAQ,GAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK,IAAE,QAAQ,CAAC,QAAQ,EAAC,UAAU,GAAC,WAAW,CAAC,YAAY,CAAC,EAAE,KAAK,IAAE,QAAQ,CAAC,UAAU,CAAC;IACtO,IAAG,CAAC,CAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAE,OAAO,KAAK,KAAG,QAAQ,IAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAE,OAAO,QAAQ,KAAG,QAAQ,IAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAE,QAAQ,GAAC,EAAE,IAAE,QAAQ,GAAC,EAAE,IAAE,CAAC,CAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAC,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACzQ,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,KAAK,EAAC,QAAQ,EAAC,UAAU,EAAC,MAAM,CAAC,UAAU,CAAoC,EAAC,UAAU,EAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK,KAAG,SAAS,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAC,IAAI,CAAC,EAAC,CAAC;AACpM,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,CAAmB,EAAC,CAAmB,IAAU,OAAO,CAAC,CAAC,SAAS,KAAG,CAAC,CAAC,SAAS,IAAE,CAAC,CAAC,KAAK,KAAG,CAAC,CAAC,KAAK,IAAE,CAAC,CAAC,QAAQ,KAAG,CAAC,CAAC,QAAQ,IAAE,CAAC,CAAC,UAAU,KAAG,CAAC,CAAC,UAAU,IAAE,CAAC,CAAC,UAAU,KAAG,CAAC,CAAC,UAAU,CAAC,CAAA,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { PlanColorAxisFrame } from '@neural-charts/core/plan';
2
+ import * as i0 from "@angular/core";
3
+ /** Native presentation of the Core's exact color scale; no value remapping. */
4
+ export declare class NativeTilemapColorAxis {
5
+ readonly axis: import("@angular/core").InputSignal<PlanColorAxisFrame>;
6
+ readonly locale: import("@angular/core").InputSignal<"es" | "en">;
7
+ readonly ink: import("@angular/core").InputSignal<string>;
8
+ readonly unit: import("@angular/core").InputSignal<string>;
9
+ readonly missingCount: import("@angular/core").InputSignal<number>;
10
+ private readonly id;
11
+ private readonly format;
12
+ protected readonly classes: import("@angular/core").Signal<readonly import("@neural-charts/core/plan").PlanColorClass[]>;
13
+ protected readonly unclassified: import("@angular/core").Signal<string>;
14
+ protected readonly ramp: import("@angular/core").Signal<string>;
15
+ protected readonly domainLabel: import("@angular/core").Signal<string>;
16
+ protected classRange(item: Readonly<{
17
+ minInclusive?: number;
18
+ maxExclusive?: number;
19
+ }>): string;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<NativeTilemapColorAxis, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<NativeTilemapColorAxis, "nc-tilemap-color-axis", never, { "axis": { "alias": "axis"; "required": true; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "ink": { "alias": "ink"; "required": false; "isSignal": true; }; "unit": { "alias": "unit"; "required": false; "isSignal": true; }; "missingCount": { "alias": "missingCount"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
22
+ }
23
+ //# sourceMappingURL=tilemap-color-axis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-color-axis.d.ts","sourceRoot":"","sources":["../../src/native/tilemap-color-axis.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAC;;AAIjE,+EAA+E;AAC/E,qBAea,sBAAsB;IACjC,QAAQ,CAAC,IAAI,0DAAsC;IACnD,QAAQ,CAAC,MAAM,mDAAwB;IACvC,QAAQ,CAAC,GAAG,8CAAkB;IAC9B,QAAQ,CAAC,IAAI,8CAAW;IACxB,QAAQ,CAAC,YAAY,8CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAqC;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAC1E,SAAS,CAAC,QAAQ,CAAC,OAAO,+FAAsF;IAChH,SAAS,CAAC,QAAQ,CAAC,YAAY,yCAA+G;IAC9I,SAAS,CAAC,QAAQ,CAAC,IAAI,yCAGpB;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,yCAG3B;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,EAAC,QAAQ,CAAC;QAAC,YAAY,CAAC,EAAC,MAAM,CAAC;QAAA,YAAY,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC,GAAE,MAAM;yCAlB5E,sBAAsB;2CAAtB,sBAAsB;CAyBlC"}
@@ -0,0 +1,77 @@
1
+ import { Component, computed, input } from '@angular/core';
2
+ import { View, Text } from '@ng-native/components';
3
+ import { NgIcon } from '@ng-native/icons';
4
+ import { chartNumberFormatter } from './number-format.js';
5
+ import * as i0 from "@angular/core";
6
+ let axisSequence = 0;
7
+ /** Native presentation of the Core's exact color scale; no value remapping. */
8
+ export class NativeTilemapColorAxis {
9
+ axis = input.required(/* @ts-ignore */
10
+ ...(ngDevMode ? [{ debugName: "axis" }] : /* istanbul ignore next */ []));
11
+ locale = input('en', /* @ts-ignore */
12
+ ...(ngDevMode ? [{ debugName: "locale" }] : /* istanbul ignore next */ []));
13
+ ink = input('#172438', /* @ts-ignore */
14
+ ...(ngDevMode ? [{ debugName: "ink" }] : /* istanbul ignore next */ []));
15
+ unit = input('', /* @ts-ignore */
16
+ ...(ngDevMode ? [{ debugName: "unit" }] : /* istanbul ignore next */ []));
17
+ missingCount = input(0, /* @ts-ignore */
18
+ ...(ngDevMode ? [{ debugName: "missingCount" }] : /* istanbul ignore next */ []));
19
+ id = 'nc-tilemap-axis-' + (++axisSequence);
20
+ format = computed(() => chartNumberFormatter(this.locale()), /* @ts-ignore */
21
+ ...(ngDevMode ? [{ debugName: "format" }] : /* istanbul ignore next */ []));
22
+ classes = computed(() => { const axis = this.axis(); return axis.type === 'classes' ? axis.classes : []; }, /* @ts-ignore */
23
+ ...(ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []));
24
+ unclassified = computed(() => { const axis = this.axis(); return axis.type === 'classes' ? axis.unclassifiedColor : axis.missingColor; }, /* @ts-ignore */
25
+ ...(ngDevMode ? [{ debugName: "unclassified" }] : /* istanbul ignore next */ []));
26
+ ramp = computed(() => {
27
+ const axis = this.axis();
28
+ if (axis.type !== 'continuous')
29
+ return '<svg viewBox="0 0 200 12"/>';
30
+ return `<svg viewBox="0 0 200 12" preserveAspectRatio="none"><defs><linearGradient id="${this.id}" x1="0%" y1="0%" x2="100%" y2="0%">${axis.stops.map(stop => `<stop offset="${stop.at * 100}%" stop-color="${stop.color}"/>`).join('')}</linearGradient></defs><rect x="0" y="0" width="200" height="12" rx="3" fill="url(#${this.id})"/></svg>`;
31
+ }, /* @ts-ignore */
32
+ ...(ngDevMode ? [{ debugName: "ramp" }] : /* istanbul ignore next */ []));
33
+ domainLabel = computed(() => {
34
+ const axis = this.axis();
35
+ if (axis.type !== 'continuous' || axis.domain === null)
36
+ return this.locale() === 'en' ? 'No known values' : 'No hay valores conocidos';
37
+ return this.format()(axis.domain[0]) + ' — ' + this.format()(axis.domain[1]) + (this.unit() ? ' ' + this.unit() : '');
38
+ }, /* @ts-ignore */
39
+ ...(ngDevMode ? [{ debugName: "domainLabel" }] : /* istanbul ignore next */ []));
40
+ classRange(item) {
41
+ const format = this.format();
42
+ if (item.minInclusive === undefined && item.maxExclusive === undefined)
43
+ return this.locale() === 'en' ? 'All finite values' : 'Todos los valores finitos';
44
+ if (item.minInclusive === undefined)
45
+ return '< ' + format(item.maxExclusive);
46
+ if (item.maxExclusive === undefined)
47
+ return '≥ ' + format(item.minInclusive);
48
+ return '[' + format(item.minInclusive) + ', ' + format(item.maxExclusive) + ')';
49
+ }
50
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.3", ngImport: i0, type: NativeTilemapColorAxis, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.2.3", type: NativeTilemapColorAxis, isStandalone: true, selector: "nc-tilemap-color-axis", inputs: { axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, ink: { classPropertyName: "ink", publicName: "ink", isSignal: true, isRequired: false, transformFunction: null }, unit: { classPropertyName: "unit", publicName: "unit", isSignal: true, isRequired: false, transformFunction: null }, missingCount: { classPropertyName: "missingCount", publicName: "missingCount", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `<view class="axis" testID="chart-color-axis">
52
+ <text class="heading" [style.color]="ink()">{{locale()==='en'?'Value color scale':'Escala de color del valor'}}</text>
53
+ @if(axis().type==='continuous'){
54
+ <ng-icon class="ramp" testID="chart-color-ramp" [svg]="ramp()"/>
55
+ <text class="range" testID="chart-color-domain" [style.color]="ink()">{{domainLabel()}}</text>
56
+ }@else{
57
+ @for(item of classes();track item.id){<view class="row"><view class="swatch" [style.backgroundColor]="item.color"/><text class="label" [style.color]="ink()">{{item.label}} · {{classRange(item)}}</text></view>}
58
+ <view class="row"><view class="swatch" [style.backgroundColor]="unclassified()"/><text class="label" [style.color]="ink()">{{locale()==='en'?'Outside declared classes':'Fuera de las clases declaradas'}}</text></view>
59
+ }
60
+ @if(missingCount()>0){<view class="row" testID="chart-color-missing"><view class="swatch" [style.backgroundColor]="axis().missingColor"/><text class="label" [style.color]="ink()">{{locale()==='en'?'Unknown':'Desconocido'}} · {{missingCount()}}</text></view>}
61
+ </view>`, isInline: true, styles: [":host{display:flex;width:100%;min-width:0}.axis{display:flex;gap:6px;padding-top:10px;padding-bottom:6px;min-width:0}.heading{font-size:12px;font-weight:600}.ramp{width:100%;height:12px}.range{font-size:12px}.row{display:flex;flex-direction:row;align-items:center;gap:7px;min-width:0}.swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.label{font-size:12px;flex:1;min-width:0}"], dependencies: [{ kind: "directive", type: View, selector: "view" }, { kind: "directive", type: Text, selector: "text", inputs: ["numberOfLines", "ellipsizeMode", "selectable", "selectionColor", "allowFontScaling", "maxFontSizeMultiplier", "dynamicTypeRamp", "adjustsFontSizeToFit", "minimumFontScale", "lineBreakStrategyIOS", "textBreakStrategy", "dataDetectorType", "android_hyphenationFrequency", "pressable", "suppressHighlighting"], exportAs: ["text"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "color", "strokeWidth", "accessibilityLabel"] }] });
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.3", ngImport: i0, type: NativeTilemapColorAxis, decorators: [{
64
+ type: Component,
65
+ args: [{ selector: 'nc-tilemap-color-axis', imports: [View, Text, NgIcon], template: `<view class="axis" testID="chart-color-axis">
66
+ <text class="heading" [style.color]="ink()">{{locale()==='en'?'Value color scale':'Escala de color del valor'}}</text>
67
+ @if(axis().type==='continuous'){
68
+ <ng-icon class="ramp" testID="chart-color-ramp" [svg]="ramp()"/>
69
+ <text class="range" testID="chart-color-domain" [style.color]="ink()">{{domainLabel()}}</text>
70
+ }@else{
71
+ @for(item of classes();track item.id){<view class="row"><view class="swatch" [style.backgroundColor]="item.color"/><text class="label" [style.color]="ink()">{{item.label}} · {{classRange(item)}}</text></view>}
72
+ <view class="row"><view class="swatch" [style.backgroundColor]="unclassified()"/><text class="label" [style.color]="ink()">{{locale()==='en'?'Outside declared classes':'Fuera de las clases declaradas'}}</text></view>
73
+ }
74
+ @if(missingCount()>0){<view class="row" testID="chart-color-missing"><view class="swatch" [style.backgroundColor]="axis().missingColor"/><text class="label" [style.color]="ink()">{{locale()==='en'?'Unknown':'Desconocido'}} · {{missingCount()}}</text></view>}
75
+ </view>`, styles: [":host{display:flex;width:100%;min-width:0}.axis{display:flex;gap:6px;padding-top:10px;padding-bottom:6px;min-width:0}.heading{font-size:12px;font-weight:600}.ramp{width:100%;height:12px}.range{font-size:12px}.row{display:flex;flex-direction:row;align-items:center;gap:7px;min-width:0}.swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.label{font-size:12px;flex:1;min-width:0}"] }]
76
+ }], propDecorators: { axis: [{ type: i0.Input, args: [{ isSignal: true, alias: "axis", required: true }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], ink: [{ type: i0.Input, args: [{ isSignal: true, alias: "ink", required: false }] }], unit: [{ type: i0.Input, args: [{ isSignal: true, alias: "unit", required: false }] }], missingCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "missingCount", required: false }] }] } });
77
+ //# sourceMappingURL=tilemap-color-axis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-color-axis.js","sourceRoot":"","sources":["../../src/native/tilemap-color-axis.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ export type NativeTileShape = 'hexagon' | 'circle' | 'diamond' | 'square';
2
+ export interface NativeTilemapPoint {
3
+ readonly id: string;
4
+ readonly x: number;
5
+ readonly y: number;
6
+ readonly value: number | null;
7
+ readonly name?: string;
8
+ readonly color?: never;
9
+ readonly datum?: never;
10
+ }
11
+ export interface NativeTilemapSeries {
12
+ readonly id: string;
13
+ readonly name: string;
14
+ readonly data: readonly NativeTilemapPoint[];
15
+ readonly color?: never;
16
+ }
17
+ export interface NativeTilemapData {
18
+ readonly type: 'tilemap';
19
+ readonly unit?: string;
20
+ readonly series: readonly [NativeTilemapSeries];
21
+ readonly family?: never;
22
+ readonly title?: never;
23
+ readonly description?: never;
24
+ readonly color?: never;
25
+ readonly tileShape?: never;
26
+ readonly pointPadding?: never;
27
+ readonly opacity?: never;
28
+ readonly colorAxis?: never;
29
+ }
30
+ export interface NativeTilemapLayoutOptions {
31
+ readonly tileShape?: NativeTileShape;
32
+ readonly pointPadding?: number;
33
+ readonly minRadiusRatio?: never;
34
+ readonly radiusScale?: never;
35
+ readonly columns?: never;
36
+ readonly markerRadius?: never;
37
+ readonly whiskerWidth?: never;
38
+ readonly capWidth?: never;
39
+ readonly neckWidth?: never;
40
+ readonly neckHeight?: never;
41
+ readonly reversed?: never;
42
+ readonly stacking?: never;
43
+ readonly stackLabels?: never;
44
+ }
45
+ export interface NativeColorStop {
46
+ readonly at: number;
47
+ readonly color: string;
48
+ }
49
+ export interface NativeColorClass {
50
+ readonly id: string;
51
+ readonly label: string;
52
+ readonly minInclusive?: number;
53
+ readonly maxExclusive?: number;
54
+ readonly color: string;
55
+ }
56
+ export type NativeColorAxisScale = (Readonly<{
57
+ type: 'continuous';
58
+ domain?: readonly [number, number];
59
+ stops: readonly NativeColorStop[];
60
+ missingColor: string;
61
+ }> | Readonly<{
62
+ type: 'classes';
63
+ classes: readonly NativeColorClass[];
64
+ missingColor: string;
65
+ unclassifiedColor: string;
66
+ }>);
67
+ export interface NativeTilemapColorAxisOptions {
68
+ readonly visible?: boolean;
69
+ readonly scale?: NativeColorAxisScale;
70
+ }
71
+ //# sourceMappingURL=tilemap-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-data.d.ts","sourceRoot":"","sources":["../../src/native/tilemap-data.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAC,SAAS,GAAC,QAAQ,GAAC,SAAS,GAAC,QAAQ,CAAC;AAClE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,GAAC,IAAI,CAAC;IAAA,QAAQ,CAAC,IAAI,CAAC,EAAC,MAAM,CAAC;IACxG,QAAQ,CAAC,KAAK,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,KAAK,CAAC,EAAC,KAAK,CAAC;CAC7C;AACD,MAAM,WAAW,mBAAmB;IAAE,QAAQ,CAAC,EAAE,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,IAAI,EAAC,SAAS,kBAAkB,EAAE,CAAC;IAAA,QAAQ,CAAC,KAAK,CAAC,EAAC,KAAK,CAAC;CAAC;AACjJ,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAC,SAAS,CAAC;IAAA,QAAQ,CAAC,IAAI,CAAC,EAAC,MAAM,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,KAAK,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,WAAW,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,KAAK,CAAC,EAAC,KAAK,CAAC;IAC/F,QAAQ,CAAC,SAAS,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,YAAY,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,OAAO,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,SAAS,CAAC,EAAC,KAAK,CAAC;CAC1G;AACD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAC,eAAe,CAAC;IAAA,QAAQ,CAAC,YAAY,CAAC,EAAC,MAAM,CAAC;IAClE,QAAQ,CAAC,cAAc,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,WAAW,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,OAAO,CAAC,EAAC,KAAK,CAAC;IACnF,QAAQ,CAAC,YAAY,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,YAAY,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,QAAQ,CAAC,EAAC,KAAK,CAAC;IACnF,QAAQ,CAAC,SAAS,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,UAAU,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,QAAQ,CAAC,EAAC,KAAK,CAAC;IAC9E,QAAQ,CAAC,QAAQ,CAAC,EAAC,KAAK,CAAC;IAAA,QAAQ,CAAC,WAAW,CAAC,EAAC,KAAK,CAAC;CACtD;AACD,MAAM,WAAW,eAAe;IAAE,QAAQ,CAAC,EAAE,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC;CAAC;AAC5E,MAAM,WAAW,gBAAgB;IAAE,QAAQ,CAAC,EAAE,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,YAAY,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,YAAY,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC;CAAC;AAC/J,MAAM,MAAM,oBAAoB,GAAC,CAC/B,QAAQ,CAAC;IAAC,IAAI,EAAC,YAAY,CAAC;IAAA,MAAM,CAAC,EAAC,SAAS,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC;IAAA,KAAK,EAAC,SAAS,eAAe,EAAE,CAAC;IAAA,YAAY,EAAC,MAAM,CAAA;CAAC,CAAC,GAClH,QAAQ,CAAC;IAAC,IAAI,EAAC,SAAS,CAAC;IAAA,OAAO,EAAC,SAAS,gBAAgB,EAAE,CAAC;IAAA,YAAY,EAAC,MAAM,CAAC;IAAA,iBAAiB,EAAC,MAAM,CAAA;CAAC,CAAC,CAC7G,CAAC;AACF,MAAM,WAAW,6BAA6B;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAC,OAAO,CAAC;IAAA,QAAQ,CAAC,KAAK,CAAC,EAAC,oBAAoB,CAAC;CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tilemap-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-data.js","sourceRoot":"","sources":["../../src/native/tilemap-data.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { Observation } from '../library/contracts.js';
2
+ export declare function tilemapDetails(point: Observation, format: (n: number) => string, locale: 'en' | 'es'): readonly string[];
3
+ //# sourceMappingURL=tilemap-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-format.d.ts","sourceRoot":"","sources":["../../src/native/tilemap-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACzD,wBAAgB,cAAc,CAAC,KAAK,EAAC,WAAW,EAAC,MAAM,EAAC,CAAC,CAAC,EAAC,MAAM,KAAG,MAAM,EAAC,MAAM,EAAC,IAAI,GAAC,IAAI,GAAE,SAAS,MAAM,EAAE,CAO7G"}
@@ -0,0 +1,14 @@
1
+ export function tilemapDetails(point, format, locale) {
2
+ const value = point.heatmap ?? point.tilemap;
3
+ if (!value)
4
+ return [];
5
+ const details = point.tilemap ? [(locale === 'en' ? 'Source cell: ' : 'Celda original: ') + format(point.tilemap.sourceX) + ', ' + format(point.tilemap.sourceY)] : [];
6
+ if (value.color.type === 'class')
7
+ details.push((locale === 'en' ? 'Color class: ' : 'Clase de color: ') + (value.classLabel || value.color.classId));
8
+ else if (value.color.type === 'unclassified')
9
+ details.push(locale === 'en' ? 'Value is outside the declared color classes.' : 'El valor queda fuera de las clases de color declaradas.');
10
+ else if (value.color.type === 'continuous' && value.color.clamped)
11
+ details.push(locale === 'en' ? 'Color is clamped to the scale; the original value is preserved.' : 'El color se limita a la escala; se conserva el valor original.');
12
+ return details;
13
+ }
14
+ //# sourceMappingURL=tilemap-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-format.js","sourceRoot":"","sources":["../../src/native/tilemap-format.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,cAAc,CAAC,KAAiB,EAAC,MAAyB,EAAC,MAAgB;IACzF,MAAM,KAAK,GAAC,KAAK,CAAC,OAAO,IAAE,KAAK,CAAC,OAAO,CAAC;IAAA,IAAG,CAAC,KAAK;QAAC,OAAO,EAAE,CAAC;IAC7D,MAAM,OAAO,GAAC,KAAK,CAAC,OAAO,CAAA,CAAC,CAAA,CAAC,CAAC,MAAM,KAAG,IAAI,CAAA,CAAC,CAAA,eAAe,CAAA,CAAC,CAAA,kBAAkB,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAC,IAAI,GAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC;IACrJ,IAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAG,IAAI,CAAA,CAAC,CAAA,eAAe,CAAA,CAAC,CAAA,kBAAkB,CAAC,GAAC,CAAC,KAAK,CAAC,UAAU,IAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;SAClI,IAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAG,cAAc;QAAC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAG,IAAI,CAAA,CAAC,CAAA,8CAA8C,CAAA,CAAC,CAAA,yDAAyD,CAAC,CAAC;SAC1K,IAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAG,YAAY,IAAE,KAAK,CAAC,KAAK,CAAC,OAAO;QAAC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAG,IAAI,CAAA,CAAC,CAAA,iEAAiE,CAAA,CAAC,CAAA,gEAAgE,CAAC,CAAC;IAC5N,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { HitRegion } from '../library/contracts.js';
2
+ /** Outline only the selected Core-projected circle. Polygons use the shared outline. */
3
+ export declare function tilemapCircleOutline(hit: HitRegion | undefined, view: Readonly<{
4
+ width: number;
5
+ height: number;
6
+ }>, t: Readonly<{
7
+ x: number;
8
+ y: number;
9
+ sx: number;
10
+ sy: number;
11
+ }>, ink: string): string | undefined;
12
+ //# sourceMappingURL=tilemap-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-selection.d.ts","sourceRoot":"","sources":["../../src/native/tilemap-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AACvD,wFAAwF;AACxF,wBAAgB,oBAAoB,CAAC,GAAG,EAAC,SAAS,GAAC,SAAS,EAAC,IAAI,EAAC,QAAQ,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAA;CAAC,CAAC,EAAC,CAAC,EAAC,QAAQ,CAAC;IAAC,CAAC,EAAC,MAAM,CAAC;IAAA,CAAC,EAAC,MAAM,CAAC;IAAA,EAAE,EAAC,MAAM,CAAC;IAAA,EAAE,EAAC,MAAM,CAAA;CAAC,CAAC,EAAC,GAAG,EAAC,MAAM,GAAE,MAAM,GAAC,SAAS,CAIxL"}
@@ -0,0 +1,8 @@
1
+ /** Outline only the selected Core-projected circle. Polygons use the shared outline. */
2
+ export function tilemapCircleOutline(hit, view, t, ink) {
3
+ if (hit?.type !== 'circle' || hit.radius <= 0)
4
+ return undefined;
5
+ const unit = Math.sqrt(t.sx * t.sy);
6
+ return `<svg viewBox="0 0 ${view.width} ${view.height}"><g transform="translate(${t.x} ${t.y}) scale(${t.sx} ${t.sy})"><circle cx="${hit.cx}" cy="${hit.cy}" r="${hit.radius}" fill="none" stroke="${ink}" stroke-width="${4 / unit}"/><circle cx="${hit.cx}" cy="${hit.cy}" r="${hit.radius}" fill="none" stroke="#FFFFFF" stroke-width="${2 / unit}"/></g></svg>`;
7
+ }
8
+ //# sourceMappingURL=tilemap-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap-selection.js","sourceRoot":"","sources":["../../src/native/tilemap-selection.ts"],"names":[],"mappings":"AACA,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAAC,GAAuB,EAAC,IAA2C,EAAC,CAAmD,EAAC,GAAU;IACrK,IAAG,GAAG,EAAE,IAAI,KAAG,QAAQ,IAAE,GAAG,CAAC,MAAM,IAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IACxD,MAAM,IAAI,GAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,qBAAqB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,kBAAkB,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,GAAC,IAAI,kBAAkB,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,MAAM,gDAAgD,CAAC,GAAC,IAAI,eAAe,CAAC;AAClW,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { PlanViewportState } from '@neural-charts/core/plan';
2
+ import type { NativeScene } from '../library/contracts.js';
3
+ /** Compact painted UTC ticks only. Observation labels keep their full instant. */
4
+ export declare function nativeTimeAxisLabels(labels: NativeScene['labels'], viewport: PlanViewportState | undefined, timeAxis?: boolean): NativeScene['labels'];
5
+ //# sourceMappingURL=time-axis-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-axis-labels.d.ts","sourceRoot":"","sources":["../../src/native/time-axis-labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAEzD,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,MAAM,EAAC,WAAW,CAAC,QAAQ,CAAC,EAAC,QAAQ,EAAC,iBAAiB,GAAC,SAAS,EAAC,QAAQ,UAAiC,GAAE,WAAW,CAAC,QAAQ,CAAC,CA2BtK"}
@@ -0,0 +1,38 @@
1
+ /** Compact painted UTC ticks only. Observation labels keep their full instant. */
2
+ export function nativeTimeAxisLabels(labels, viewport, timeAxis = viewport?.bounds.x.type === 'time') {
3
+ if (!timeAxis || !labels.length)
4
+ return labels;
5
+ const dates = labels.map(label => /^[-+]?\d{4,6}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{3})?Z$/.test(label.label) ? new Date(label.label) : null);
6
+ if (dates.some(date => !date || !Number.isFinite(date.getTime())))
7
+ return labels;
8
+ const instants = dates.map(date => date.getTime());
9
+ const shown = viewport?.displayed.x;
10
+ const span = shown ? shown[1] - shown[0] : Math.max(...instants) - Math.min(...instants), day = 86400000;
11
+ const fractional = dates.some(date => date.getUTCMilliseconds() !== 0);
12
+ const years = span >= 365 * day && dates.every(date => date.getUTCMonth() === 0 && date.getUTCDate() === 1);
13
+ const months = span >= 365 * day && dates.every(date => date.getUTCDate() === 1);
14
+ const formatted = labels.map((label, index) => {
15
+ const date = dates[index], iso = date.toISOString(), dateText = iso.split('T')[0], timeText = iso.slice(iso.indexOf('T') + 1, -1);
16
+ const text = span < day ? (fractional ? timeText : timeText.slice(0, 8)) : years ? String(date.getUTCFullYear()) : months ? dateText.slice(0, dateText.lastIndexOf('-')) : dateText;
17
+ return { ...label, label: text };
18
+ });
19
+ // Use original tick positions and a bounded text budget. Never manufacture
20
+ // another tick or shorten all instants to the same truncated date prefix.
21
+ const gap = Math.min(80, Math.max(24, ...formatted.map(label => label.label.length * 7.5 + 8)));
22
+ const ordered = formatted.map((label, index) => ({ x: label.x, index })).sort((a, b) => a.x - b.x);
23
+ const width = viewport?.plot?.width ?? ordered.at(-1).x - ordered[0].x;
24
+ const count = Math.min(ordered.length, Math.max(2, Math.floor(width / 110)));
25
+ const positions = count === 1 ? ordered : Array.from({ length: count }, (_, index) => ordered[Math.round(index * (ordered.length - 1) / (count - 1))]);
26
+ const last = positions.at(-1);
27
+ const kept = new Set([positions[0].index]);
28
+ let prior = positions[0].x;
29
+ for (const point of positions.slice(1, -1))
30
+ if (point.x - prior >= gap && last.x - point.x >= gap) {
31
+ kept.add(point.index);
32
+ prior = point.x;
33
+ }
34
+ if (last.x - prior >= gap)
35
+ kept.add(last.index);
36
+ return formatted.filter((_, index) => kept.has(index));
37
+ }
38
+ //# sourceMappingURL=time-axis-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-axis-labels.js","sourceRoot":"","sources":["../../src/native/time-axis-labels.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { type TooltipOccupancy } from './tooltip-occupancy.js';
2
+ /** Display-point layout only; this never projects or transforms chart data. */
3
+ export declare function tooltipLayout(view: {
4
+ width: number;
5
+ height: number;
6
+ }, anchor: {
7
+ x: number;
8
+ y: number;
9
+ }, height: number, occupancy?: TooltipOccupancy): {
10
+ width: number;
11
+ x: number;
12
+ y: number;
13
+ bottom: number | undefined;
14
+ docked: boolean;
15
+ };
16
+ //# sourceMappingURL=tooltip-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-layout.d.ts","sourceRoot":"","sources":["../../src/native/tooltip-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AAC5E,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,IAAI,EAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAA;CAAC,EAAC,MAAM,EAAC;IAAC,CAAC,EAAC,MAAM,CAAC;IAAA,CAAC,EAAC,MAAM,CAAA;CAAC,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,CAAC,EAAC,gBAAgB;;;;;;EAwBnI"}
@@ -0,0 +1,33 @@
1
+ import { tooltipOverlap } from './tooltip-occupancy.js';
2
+ /** Display-point layout only; this never projects or transforms chart data. */
3
+ export function tooltipLayout(view, anchor, height, occupancy) {
4
+ const inset = 8, gap = 18, width = Math.max(1, Math.min(220, view.width - inset * 2));
5
+ const x = Math.max(inset, Math.min(view.width - width - inset, anchor.x - width / 2));
6
+ const y = Math.max(inset, Math.min(view.height - height - inset, anchor.y - height / 2));
7
+ const above = { x, y: anchor.y - height - gap }, below = { x, y: anchor.y + gap };
8
+ // The datum owns the tooltip location. Prefer directly above it, then below
9
+ // or beside it; a less occupied corner must not detach the detail from its value.
10
+ const candidates = [above, below, { x: anchor.x - width - gap, y }, { x: anchor.x + gap, y }];
11
+ const fits = (p) => p.x >= inset && p.y >= inset && p.x + width <= view.width - inset && p.y + height <= view.height - inset
12
+ && (anchor.x < p.x - 8 || anchor.x > p.x + width + 8 || anchor.y < p.y - 8 || anchor.y > p.y + height + 8);
13
+ const edges = [{ x: inset, y: inset }, { x: view.width - width - inset, y: inset }, { x: inset, y: view.height - height - inset }, { x: view.width - width - inset, y: view.height - height - inset }];
14
+ let fit = candidates.find(fits);
15
+ if (!fit) {
16
+ let distance = Infinity, overlap = Infinity;
17
+ for (const candidate of edges)
18
+ if (fits(candidate)) {
19
+ const dx = Math.max(candidate.x - anchor.x, 0, anchor.x - candidate.x - width);
20
+ const dy = Math.max(candidate.y - anchor.y, 0, anchor.y - candidate.y - height);
21
+ const nextDistance = dx * dx + dy * dy, nextOverlap = occupancy ? tooltipOverlap(occupancy, { ...candidate, width, height }) : 0;
22
+ if (nextDistance < distance || nextDistance === distance && nextOverlap < overlap) {
23
+ distance = nextDistance;
24
+ overlap = nextOverlap;
25
+ fit = candidate;
26
+ }
27
+ }
28
+ }
29
+ // Anchor above-content by its actual bottom edge. The first text measurement
30
+ // must not move a tooltip that has already been painted for a new observation.
31
+ return { width, x: fit?.x ?? inset, y: fit?.y ?? inset, bottom: fit === above ? view.height - anchor.y + gap : undefined, docked: !fit };
32
+ }
33
+ //# sourceMappingURL=tooltip-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-layout.js","sourceRoot":"","sources":["../../src/native/tooltip-layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Observation, SharedSelection, ChartFamily } from '../library/contracts.js';
2
+ /** Compact overlay has explicit line boxes; it never waits for an asynchronous layout. */
3
+ export declare function compactTooltipHeight(point: Observation | null, shared: SharedSelection | undefined, fontScale: number, family?: ChartFamily, detailCount?: number): number;
4
+ //# sourceMappingURL=tooltip-metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-metrics.d.ts","sourceRoot":"","sources":["../../src/native/tooltip-metrics.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,eAAe,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAGrF,0FAA0F;AAC1F,wBAAgB,oBAAoB,CAAC,KAAK,EAAC,WAAW,GAAC,IAAI,EAAC,MAAM,EAAC,eAAe,GAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,GAAC,WAAkB,EAAC,WAAW,CAAC,EAAC,MAAM,GAAE,MAAM,CAKlK"}
@@ -0,0 +1,11 @@
1
+ import { directionalDetails } from './observation-format.js';
2
+ import { comparisonDetailCount } from './comparison-format.js';
3
+ /** Compact overlay has explicit line boxes; it never waits for an asynchronous layout. */
4
+ export function compactTooltipHeight(point, shared, fontScale, family = 'line', detailCount) {
5
+ const scale = Number.isFinite(fontScale) ? Math.max(1, fontScale) : 1;
6
+ if (shared)
7
+ return Math.ceil(26 + 16 * scale + shared.rows.reduce((height, row) => height + 17 + 18 * scale + ((row.point?.percentage !== undefined ? 1 : 0) + (row.point ? comparisonDetailCount(row.point) : 0)) * (3 + 16 * scale), 0));
8
+ const extras = point ? (detailCount ?? directionalDetails(point, String, 'en', '', family).length) + Number(point.xValue !== undefined && !point.interval && !point.event) + Number(point.percentage !== undefined) + Number(point.sizeValue !== undefined) + Number(!!point.subtotal) + Number(!!point.computedKind) + 2 * Number(point.minimumValue !== undefined) + 2 * Number(point.node !== undefined && point.node.directed !== false) : 0;
9
+ return Math.ceil(29 + 41 * scale + extras * (3 + 16 * scale));
10
+ }
11
+ //# sourceMappingURL=tooltip-metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-metrics.js","sourceRoot":"","sources":["../../src/native/tooltip-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAC;AAE7D,0FAA0F;AAC1F,MAAM,UAAU,oBAAoB,CAAC,KAAsB,EAAC,MAAgC,EAAC,SAAgB,EAAC,SAAmB,MAAM,EAAC,WAAmB;IACzJ,MAAM,KAAK,GAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA,CAAC,CAAA,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,SAAS,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC;IAC/D,IAAG,MAAM;QAAC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAC,EAAE,GAAC,KAAK,GAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAC,GAAG,EAAC,EAAE,CAAA,MAAM,GAAC,EAAE,GAAC,EAAE,GAAC,KAAK,GAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,KAAG,SAAS,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC,GAAC,CAAC,GAAG,CAAC,KAAK,CAAA,CAAC,CAAA,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAC,EAAE,GAAC,KAAK,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC;IACrM,MAAM,MAAM,GAAC,KAAK,CAAA,CAAC,CAAA,CAAC,WAAW,IAAE,kBAAkB,CAAC,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAG,SAAS,IAAE,CAAC,KAAK,CAAC,QAAQ,IAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAG,SAAS,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAG,SAAS,CAAC,GAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,GAAC,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,YAAY,KAAG,SAAS,CAAC,GAAC,CAAC,GAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAG,SAAS,IAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAG,KAAK,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC;IACjY,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAC,EAAE,GAAC,KAAK,GAAC,MAAM,GAAC,CAAC,CAAC,GAAC,EAAE,GAAC,KAAK,CAAC,CAAC,CAAC;AACpD,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { type WorkletStyleSpec } from '@ng-native/components/reanimated';
3
+ export interface TooltipMotion {
4
+ readonly styles: Readonly<{
5
+ native?: WorkletStyleSpec;
6
+ browser?: Record<string, unknown>;
7
+ }>;
8
+ move(x: number, y: number, duration: number): void;
9
+ position(): Readonly<{
10
+ x: number;
11
+ y: number;
12
+ }> | null;
13
+ hide(): void;
14
+ destroy(): void;
15
+ }
16
+ export declare const CHART_TOOLTIP_MOTION_FACTORY: InjectionToken<() => TooltipMotion>;
17
+ /** UI-thread movement only. Selection and chart geometry never run per animation frame. */
18
+ export declare class NativeTooltipMotion implements TooltipMotion {
19
+ private readonly x;
20
+ private readonly y;
21
+ private visible;
22
+ private targetX;
23
+ private targetY;
24
+ readonly styles: {
25
+ native: WorkletStyleSpec;
26
+ };
27
+ move(x: number, y: number, duration: number): void;
28
+ position(): Readonly<{
29
+ x: number;
30
+ y: number;
31
+ }> | null;
32
+ hide(): void;
33
+ destroy(): void;
34
+ }
35
+ //# sourceMappingURL=tooltip-motion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-motion.d.ts","sourceRoot":"","sources":["../../src/native/tooltip-motion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAC7C,OAAO,EAA0B,KAAK,gBAAgB,EAAC,MAAM,kCAAkC,CAAC;AAGhG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAC,QAAQ,CAAC;QAAC,MAAM,CAAC,EAAC,gBAAgB,CAAC;QAAA,OAAO,CAAC,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAA;KAAC,CAAC,CAAC;IACrF,IAAI,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,GAAE,IAAI,CAAC;IAC7C,QAAQ,IAAG,QAAQ,CAAC;QAAC,CAAC,EAAC,MAAM,CAAC;QAAA,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC,GAAC,IAAI,CAAC;IAC9C,IAAI,IAAG,IAAI,CAAC;IACZ,OAAO,IAAG,IAAI,CAAC;CAChB;AACD,eAAO,MAAM,4BAA4B,uBAAwB,aAAa,CAA+F,CAAC;AAE9K,2FAA2F;AAC3F,qBAAa,mBAAoB,YAAW,aAAa;IACvD,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAgB;IAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAgB;IACpE,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,OAAO,CAAG;IAAA,OAAO,CAAC,OAAO,CAAG;IACpC,QAAQ,CAAC,MAAM;;MAA2H;IAC1I,IAAI,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,GAAE,IAAI;IAY5C,QAAQ,IAAG,QAAQ,CAAC;QAAC,CAAC,EAAC,MAAM,CAAC;QAAA,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC,GAAC,IAAI;IAC7C,IAAI,IAAG,IAAI;IACX,OAAO,IAAG,IAAI;CACf"}
@@ -0,0 +1,36 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { sharedValue, workletStyle } from '@ng-native/components/reanimated';
3
+ import { withTiming, cancelAnimation, Easing } from 'react-native-reanimated';
4
+ export const CHART_TOOLTIP_MOTION_FACTORY = new InjectionToken('CHART_TOOLTIP_MOTION_FACTORY', { providedIn: 'root', factory: () => () => new NativeTooltipMotion() });
5
+ /** UI-thread movement only. Selection and chart geometry never run per animation frame. */
6
+ export class NativeTooltipMotion {
7
+ x = sharedValue(0);
8
+ y = sharedValue(0);
9
+ visible = false;
10
+ targetX = 0;
11
+ targetY = 0;
12
+ styles = { native: workletStyle([this.x, this.y], (x, y) => {
13
+ 'worklet';
14
+ return { transform: [{ translateX: x.value }, { translateY: y.value }] };
15
+ }) };
16
+ move(x, y, duration) {
17
+ if (!Number.isFinite(x) || !Number.isFinite(y))
18
+ return;
19
+ const ms = this.visible ? Math.max(0, Math.min(220, Number.isFinite(duration) ? duration : 0)) : 0;
20
+ // Keep an in-flight animation toward this target; a zero-duration request
21
+ // still cancels it immediately for resize or reduced motion.
22
+ if (this.visible && ms > 0 && x === this.targetX && y === this.targetY)
23
+ return;
24
+ this.targetX = x;
25
+ this.targetY = y;
26
+ cancelAnimation(this.x);
27
+ cancelAnimation(this.y);
28
+ this.x.set(ms ? withTiming(x, { duration: ms, easing: Easing.out(Easing.cubic) }) : x);
29
+ this.y.set(ms ? withTiming(y, { duration: ms, easing: Easing.out(Easing.cubic) }) : y);
30
+ this.visible = true;
31
+ }
32
+ position() { return this.visible ? { x: this.x.get(), y: this.y.get() } : null; }
33
+ hide() { cancelAnimation(this.x); cancelAnimation(this.y); this.visible = false; }
34
+ destroy() { this.hide(); }
35
+ }
36
+ //# sourceMappingURL=tooltip-motion.js.map