@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,24 @@
1
+ import type { NativeScene } from '../library/contracts.js';
2
+ /** Presentation geometry only. Values, radii and sectors come from the Core. */
3
+ export interface RadialEntrance {
4
+ readonly left: number;
5
+ readonly top: number;
6
+ readonly size: number;
7
+ readonly radius: number;
8
+ readonly canvasLeft: number;
9
+ readonly canvasTop: number;
10
+ readonly canvasWidth: number;
11
+ readonly canvasHeight: number;
12
+ readonly startRadians: number;
13
+ readonly sweepRadians: number;
14
+ readonly baseStyle: Readonly<{
15
+ transform: readonly Readonly<{
16
+ rotate: string;
17
+ }>[];
18
+ }>;
19
+ }
20
+ export declare function radialEntrance(scene: NativeScene, viewport: Readonly<{
21
+ width: number;
22
+ height: number;
23
+ }>): RadialEntrance | undefined;
24
+ //# sourceMappingURL=radial-entrance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-entrance.d.ts","sourceRoot":"","sources":["../../src/native/radial-entrance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAIzD,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,GAAG,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,MAAM,EAAC,MAAM,CAAC;IACrF,QAAQ,CAAC,UAAU,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,SAAS,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,WAAW,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,YAAY,EAAC,MAAM,CAAC;IAC9G,QAAQ,CAAC,YAAY,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,YAAY,EAAC,MAAM,CAAC;IAC1D,QAAQ,CAAC,SAAS,EAAC,QAAQ,CAAC;QAAC,SAAS,EAAC,SAAS,QAAQ,CAAC;YAAC,MAAM,EAAC,MAAM,CAAA;SAAC,CAAC,EAAE,CAAA;KAAC,CAAC,CAAC;CAC/E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAA;CAAC,CAAC,GAAE,cAAc,GAAC,SAAS,CAczH"}
@@ -0,0 +1,25 @@
1
+ import { sceneTransform } from '../library/scene.js';
2
+ import { gaugeEntrance } from './gauge-entrance.js';
3
+ export function radialEntrance(scene, viewport) {
4
+ if (scene.circular?.style === 'needle-gauge')
5
+ return undefined;
6
+ if (scene.family !== 'pie' && scene.family !== 'donut' && scene.family !== 'gauge')
7
+ return undefined;
8
+ if (scene.observations.length > 16 || scene.series.reduce((length, series) => length + (series.path?.length ?? 0), 0) > 65536)
9
+ return undefined;
10
+ const sectors = scene.observations.map(point => point.hit).filter(hit => hit?.type === 'sector');
11
+ const frame = sectors[0];
12
+ if (!frame || frame.radius <= 0)
13
+ return undefined;
14
+ const gauge = scene.family === 'gauge' ? gaugeEntrance(scene) : undefined;
15
+ if (scene.family === 'gauge' && !gauge)
16
+ return undefined;
17
+ const start = gauge?.startRadians ?? Math.min(...sectors.map(hit => hit.start)), sweep = gauge?.sweepRadians ?? Math.max(...sectors.map(hit => hit.end)) - start;
18
+ const t = sceneTransform(scene, viewport), paintRadius = frame.radius * t.sx;
19
+ const cx = t.x + frame.cx * t.sx, cy = t.y + frame.cy * t.sy;
20
+ // Include the painted stroke, not only the fill. Keep the exact Core centre
21
+ // so the revealing edge cannot leak a neighbouring sector near the origin.
22
+ const radius = Math.ceil(paintRadius) + 5, left = cx - radius, top = cy - radius;
23
+ return { left, top, size: 2 * radius, radius, canvasLeft: -left, canvasTop: -top, canvasWidth: viewport.width, canvasHeight: viewport.height, startRadians: start, sweepRadians: Math.max(0, Math.min(Math.PI * 2, sweep)), baseStyle: { transform: [{ rotate: (start * 180 / Math.PI) + 'deg' }] } };
24
+ }
25
+ //# sourceMappingURL=radial-entrance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-entrance.js","sourceRoot":"","sources":["../../src/native/radial-entrance.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAUlD,MAAM,UAAU,cAAc,CAAC,KAAiB,EAAC,QAA+C;IAC9F,IAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,KAAG,cAAc;QAAC,OAAO,SAAS,CAAC;IAC3D,IAAG,KAAK,CAAC,MAAM,KAAG,KAAK,IAAE,KAAK,CAAC,MAAM,KAAG,OAAO,IAAE,KAAK,CAAC,MAAM,KAAG,OAAO;QAAC,OAAO,SAAS,CAAC;IACzF,IAAG,KAAK,CAAC,YAAY,CAAC,MAAM,GAAC,EAAE,IAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAC,MAAM,EAAC,EAAE,CAAA,MAAM,GAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,IAAE,CAAC,CAAC,EAAC,CAAC,CAAC,GAAC,KAAK;QAAC,OAAO,SAAS,CAAC;IAChI,MAAM,OAAO,GAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAA,EAAE,CAAA,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAA,EAAE,CAAA,GAAG,EAAE,IAAI,KAAG,QAAQ,CAAC,CAAC;IACzF,MAAM,KAAK,GAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAAA,IAAG,CAAC,KAAK,IAAE,KAAK,CAAC,MAAM,IAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IACnE,MAAM,KAAK,GAAC,KAAK,CAAC,MAAM,KAAG,OAAO,CAAA,CAAC,CAAA,aAAa,CAAC,KAAK,CAAC,CAAA,CAAC,CAAA,SAAS,CAAC;IAAA,IAAG,KAAK,CAAC,MAAM,KAAG,OAAO,IAAE,CAAC,KAAK;QAAC,OAAO,SAAS,CAAC;IACrH,MAAM,KAAK,GAAC,KAAK,EAAE,YAAY,IAAE,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAA,EAAE,CAAA,GAAG,CAAC,KAAK,CAAC,CAAC,EAAC,KAAK,GAAC,KAAK,EAAE,YAAY,IAAE,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAA,EAAE,CAAA,GAAG,CAAC,GAAG,CAAC,CAAC,GAAC,KAAK,CAAC;IAClJ,MAAM,CAAC,GAAC,cAAc,CAAC,KAAK,EAAC,QAAQ,CAAC,EAAC,WAAW,GAAC,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,EAAE,GAAC,CAAC,CAAC,CAAC,GAAC,KAAK,CAAC,EAAE,GAAC,CAAC,CAAC,EAAE,EAAC,EAAE,GAAC,CAAC,CAAC,CAAC,GAAC,KAAK,CAAC,EAAE,GAAC,CAAC,CAAC,EAAE,CAAC;IAChD,4EAA4E;IAC5E,2EAA2E;IAC3E,MAAM,MAAM,GAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAC,CAAC,EAAC,IAAI,GAAC,EAAE,GAAC,MAAM,EAAC,GAAG,GAAC,EAAE,GAAC,MAAM,CAAC;IACnE,OAAO,EAAC,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,CAAC,GAAC,MAAM,EAAC,MAAM,EAAC,UAAU,EAAC,CAAC,IAAI,EAAC,SAAS,EAAC,CAAC,GAAG,EAAC,WAAW,EAAC,QAAQ,CAAC,KAAK,EAAC,YAAY,EAAC,QAAQ,CAAC,MAAM,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAC,CAAC,EAAC,KAAK,CAAC,CAAC,EAAC,SAAS,EAAC,EAAC,SAAS,EAAC,CAAC,EAAC,MAAM,EAAC,CAAC,KAAK,GAAC,GAAG,GAAC,IAAI,CAAC,EAAE,CAAC,GAAC,KAAK,EAAC,CAAC,EAAC,EAAC,CAAC;AAClQ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { WorkletStyleSpec } from '@ng-native/components/reanimated';
2
+ import type { RadialEntrance } from './radial-entrance.js';
3
+ import * as i0 from "@angular/core";
4
+ export interface RadialNativeStyles {
5
+ readonly first: WorkletStyleSpec;
6
+ readonly firstCounter: WorkletStyleSpec;
7
+ readonly second: WorkletStyleSpec;
8
+ readonly secondCounter: WorkletStyleSpec;
9
+ }
10
+ export interface RadialBrowserStyles {
11
+ readonly first: Record<string, unknown>;
12
+ readonly firstCounter: Record<string, unknown>;
13
+ readonly second: Record<string, unknown>;
14
+ readonly secondCounter: Record<string, unknown>;
15
+ }
16
+ /** Two transparent rotating clips. Counter-rotation keeps Core geometry fixed. */
17
+ export declare class NativeRadialLayer {
18
+ readonly layout: import("@angular/core").InputSignal<RadialEntrance>;
19
+ readonly drawing: import("@angular/core").InputSignal<string>;
20
+ protected readonly secondHalf: import("@angular/core").Signal<boolean>;
21
+ readonly native: import("@angular/core").InputSignal<RadialNativeStyles | undefined>;
22
+ readonly browser: import("@angular/core").InputSignal<RadialBrowserStyles | undefined>;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<NativeRadialLayer, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<NativeRadialLayer, "nc-chart-radial-layer", never, { "layout": { "alias": "layout"; "required": true; "isSignal": true; }; "drawing": { "alias": "drawing"; "required": true; "isSignal": true; }; "native": { "alias": "native"; "required": false; "isSignal": true; }; "browser": { "alias": "browser"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
+ }
26
+ //# sourceMappingURL=radial-layer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-layer.d.ts","sourceRoot":"","sources":["../../src/native/radial-layer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;;AAEzD,MAAM,WAAW,kBAAkB;IAAE,QAAQ,CAAC,KAAK,EAAC,gBAAgB,CAAC;IAAA,QAAQ,CAAC,YAAY,EAAC,gBAAgB,CAAC;IAAA,QAAQ,CAAC,MAAM,EAAC,gBAAgB,CAAC;IAAA,QAAQ,CAAC,aAAa,EAAC,gBAAgB,CAAC;CAAC;AACtL,MAAM,WAAW,mBAAmB;IAAE,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;IAAA,QAAQ,CAAC,YAAY,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;IAAA,QAAQ,CAAC,MAAM,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;IAAA,QAAQ,CAAC,aAAa,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;CAAC;AAE/M,kFAAkF;AAClF,qBA8Ba,iBAAiB;IAC5B,QAAQ,CAAC,MAAM,sDAAkC;IAAA,QAAQ,CAAC,OAAO,8CAA0B;IAC3F,SAAS,CAAC,QAAQ,CAAC,UAAU,0CAAkD;IAC/E,QAAQ,CAAC,MAAM,sEAAgD;IAAA,QAAQ,CAAC,OAAO,uEAAiD;yCAHrH,iBAAiB;2CAAjB,iBAAiB;CAI7B"}
@@ -0,0 +1,76 @@
1
+ import { Component, input, computed } from '@angular/core';
2
+ import { View } from '@ng-native/components';
3
+ import { AnimatedStyle } from '@ng-native/components/animations';
4
+ import { WorkletStyle } from '@ng-native/components/reanimated';
5
+ import { NgIcon } from '@ng-native/icons';
6
+ import * as i0 from "@angular/core";
7
+ /** Two transparent rotating clips. Counter-rotation keeps Core geometry fixed. */
8
+ export class NativeRadialLayer {
9
+ layout = input.required(/* @ts-ignore */
10
+ ...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
11
+ drawing = input.required(/* @ts-ignore */
12
+ ...(ngDevMode ? [{ debugName: "drawing" }] : /* istanbul ignore next */ []));
13
+ secondHalf = computed(() => this.layout().sweepRadians > Math.PI, /* @ts-ignore */
14
+ ...(ngDevMode ? [{ debugName: "secondHalf" }] : /* istanbul ignore next */ []));
15
+ native = input(undefined, /* @ts-ignore */
16
+ ...(ngDevMode ? [{ debugName: "native" }] : /* istanbul ignore next */ []));
17
+ browser = input(undefined, /* @ts-ignore */
18
+ ...(ngDevMode ? [{ debugName: "browser" }] : /* istanbul ignore next */ []));
19
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.3", ngImport: i0, type: NativeRadialLayer, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.2.3", type: NativeRadialLayer, isStandalone: true, selector: "nc-chart-radial-layer", inputs: { layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: true, transformFunction: null }, drawing: { classPropertyName: "drawing", publicName: "drawing", isSignal: true, isRequired: true, transformFunction: null }, native: { classPropertyName: "native", publicName: "native", isSignal: true, isRequired: false, transformFunction: null }, browser: { classPropertyName: "browser", publicName: "browser", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `<view class="frame" [style.left]="layout().left" [style.top]="layout().top" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="layout().baseStyle" pointerEvents="none">
21
+ <view class="half" [collapsable]="false" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none">
22
+ @if(native();as motion){
23
+ <view class="square" [collapsable]="false" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.first" pointerEvents="none">
24
+ <view class="half" [collapsable]="false" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [collapsable]="false" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.firstCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
25
+ </view>
26
+ }@else if(browser();as motion){
27
+ <view class="square" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.first" pointerEvents="none">
28
+ <view class="half" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.firstCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
29
+ </view>
30
+ }
31
+ </view>
32
+ @if(secondHalf()){
33
+ <view class="half" [collapsable]="false" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none">
34
+ @if(native();as motion){
35
+ <view class="square" [collapsable]="false" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.second" pointerEvents="none">
36
+ <view class="half" [collapsable]="false" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [collapsable]="false" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.secondCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
37
+ </view>
38
+ }@else if(browser();as motion){
39
+ <view class="square" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.second" pointerEvents="none">
40
+ <view class="half" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.secondCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
41
+ </view>
42
+ }
43
+ </view>
44
+ }
45
+ </view>`, isInline: true, styles: [":host{position:absolute;left:0;top:0;width:100%;height:100%;}.frame,.half,.square,.drawing{position:absolute;top:0;}.half{overflow:hidden;}.drawing{pointer-events:none;}"], dependencies: [{ kind: "directive", type: View, selector: "view" }, { kind: "directive", type: AnimatedStyle, selector: "[animatedStyle]" }, { kind: "directive", type: WorkletStyle, selector: "[workletStyle]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "color", "strokeWidth", "accessibilityLabel"] }] });
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.3", ngImport: i0, type: NativeRadialLayer, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: 'nc-chart-radial-layer', imports: [View, AnimatedStyle, WorkletStyle, NgIcon], template: `<view class="frame" [style.left]="layout().left" [style.top]="layout().top" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="layout().baseStyle" pointerEvents="none">
50
+ <view class="half" [collapsable]="false" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none">
51
+ @if(native();as motion){
52
+ <view class="square" [collapsable]="false" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.first" pointerEvents="none">
53
+ <view class="half" [collapsable]="false" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [collapsable]="false" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.firstCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
54
+ </view>
55
+ }@else if(browser();as motion){
56
+ <view class="square" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.first" pointerEvents="none">
57
+ <view class="half" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.firstCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
58
+ </view>
59
+ }
60
+ </view>
61
+ @if(secondHalf()){
62
+ <view class="half" [collapsable]="false" [style.left]="0" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none">
63
+ @if(native();as motion){
64
+ <view class="square" [collapsable]="false" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.second" pointerEvents="none">
65
+ <view class="half" [collapsable]="false" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [collapsable]="false" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [workletStyle]="motion.secondCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
66
+ </view>
67
+ }@else if(browser();as motion){
68
+ <view class="square" [style.left]="0" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.second" pointerEvents="none">
69
+ <view class="half" [style.left]="layout().radius" [style.width]="layout().radius" [style.height]="layout().size" pointerEvents="none"><view class="square" [style.left]="-layout().radius" [style.width]="layout().size" [style.height]="layout().size" [animatedStyle]="motion.secondCounter" pointerEvents="none"><ng-icon class="drawing" [style.left]="layout().canvasLeft" [style.top]="layout().canvasTop" [style.width]="layout().canvasWidth" [style.height]="layout().canvasHeight" [svg]="drawing()"/></view></view>
70
+ </view>
71
+ }
72
+ </view>
73
+ }
74
+ </view>`, styles: [":host{position:absolute;left:0;top:0;width:100%;height:100%;}.frame,.half,.square,.drawing{position:absolute;top:0;}.half{overflow:hidden;}.drawing{pointer-events:none;}"] }]
75
+ }], propDecorators: { layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: true }] }], drawing: [{ type: i0.Input, args: [{ isSignal: true, alias: "drawing", required: true }] }], native: [{ type: i0.Input, args: [{ isSignal: true, alias: "native", required: false }] }], browser: [{ type: i0.Input, args: [{ isSignal: true, alias: "browser", required: false }] }] } });
76
+ //# sourceMappingURL=radial-layer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radial-layer.js","sourceRoot":"","sources":["../../src/native/radial-layer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,IAAI,EAAC,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAC,aAAa,EAAC,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;;AAOxC,kFAAkF;AA+BlF,MAAM,OAAO,iBAAiB;IACnB,MAAM,GAAC,KAAK,CAAC,QAAQ;+EAAkB,CAAC;IAAS,OAAO,GAAC,KAAK,CAAC,QAAQ;gFAAU,CAAC;IACxE,UAAU,GAAC,QAAQ,CAAC,GAAE,EAAE,CAAA,IAAI,CAAC,MAAM,EAAE,CAAC,YAAY,GAAC,IAAI,CAAC,EAAE;mFAAC,CAAC;IACtE,MAAM,GAAC,KAAK,CAA+B,SAAS;+EAAC,CAAC;IAAS,OAAO,GAAC,KAAK,CAAgC,SAAS;gFAAC,CAAC;uGAHrH,iBAAiB;2FAAjB,iBAAiB,6kBA3BnB;;;;;;;;;;;;;;;;;;;;;;;;;UAyBD,mPA3BkC,IAAI,iDAAC,aAAa,4DAAC,YAAY,2DAAC,MAAM;;2FA6BrE,iBAAiB;kBA9B7B,SAAS;+BACC,uBAAuB,WAAS,CAAC,IAAI,EAAC,aAAa,EAAC,YAAY,EAAC,MAAM,CAAC,YAExE;;;;;;;;;;;;;;;;;;;;;;;;;UAyBD"}
@@ -0,0 +1,21 @@
1
+ import type { NativeScene } from '../library/contracts.js';
2
+ export interface NativeReferenceLabel {
3
+ readonly id: string;
4
+ readonly text: string;
5
+ readonly x: number;
6
+ readonly y: number;
7
+ readonly width: number;
8
+ readonly height: number;
9
+ readonly color: string;
10
+ readonly backgroundColor?: string;
11
+ }
12
+ /** Display boxes only. Reference data values have already been projected by Core.
13
+ * Overlapping/truncated labels remain complete in NativeScene metadata. */
14
+ export declare function nativeReferenceLabels(scene: NativeScene, viewport: Readonly<{
15
+ width: number;
16
+ height: number;
17
+ }>, fontScale?: number, visibleWindow?: Readonly<{
18
+ x: number;
19
+ width: number;
20
+ }>, bandTextColor?: string, bandSurfaceColor?: string): readonly NativeReferenceLabel[];
21
+ //# sourceMappingURL=reference-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference-labels.d.ts","sourceRoot":"","sources":["../../src/native/reference-labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAGzD,MAAM,WAAW,oBAAoB;IAAE,QAAQ,CAAC,EAAE,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,MAAM,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,eAAe,CAAC,EAAC,MAAM,CAAC;CAAC;AACxN;2EAC2E;AAC3E,wBAAgB,qBAAqB,CAAC,KAAK,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAA;CAAC,CAAC,EAAC,SAAS,SAAE,EAAC,aAAa,CAAC,EAAC,QAAQ,CAAC;IAAC,CAAC,EAAC,MAAM,CAAC;IAAA,KAAK,EAAC,MAAM,CAAA;CAAC,CAAC,EAAC,aAAa,SAAU,EAAC,gBAAgB,SAAU,GAAE,SAAS,oBAAoB,EAAE,CAwBvP"}
@@ -0,0 +1,36 @@
1
+ import { sceneTransform } from '../library/scene.js';
2
+ /** Display boxes only. Reference data values have already been projected by Core.
3
+ * Overlapping/truncated labels remain complete in NativeScene metadata. */
4
+ export function nativeReferenceLabels(scene, viewport, fontScale = 1, visibleWindow, bandTextColor = '#17212B', bandSurfaceColor = '#FFFFFF') {
5
+ const left = Math.max(0, visibleWindow?.x ?? 0), right = Math.min(viewport.width, left + (visibleWindow?.width ?? viewport.width));
6
+ const transform = sceneTransform(scene, viewport), width = Math.max(0, Math.min(160, right - left - 16)), height = Math.ceil(18 * Math.max(1, Number.isFinite(fontScale) ? fontScale : 1)), labels = [];
7
+ if (width < 32 || height > viewport.height - 16)
8
+ return labels;
9
+ for (const reference of scene.references ?? []) {
10
+ if (reference.status !== 'visible' || !reference.label)
11
+ continue;
12
+ const line = reference.line, vertical = line.x1 === line.x2, x = transform.x + line.x1 * transform.sx, y = transform.y + line.y1 * transform.sy;
13
+ if (vertical && (x < left || x > right))
14
+ continue;
15
+ const box = { x: Math.max(left + 8, Math.min(right - width - 8, vertical ? x + 4 : transform.x + Math.min(line.x1, line.x2) * transform.sx + 4)), y: Math.max(8, Math.min(viewport.height - height - 8, vertical ? transform.y + Math.min(line.y1, line.y2) * transform.sy + 4 : y - height - 4)), width, height };
16
+ if (labels.some(label => box.x < label.x + label.width + 4 && box.x + box.width + 4 > label.x && box.y < label.y + label.height + 4 && box.y + box.height + 4 > label.y))
17
+ continue;
18
+ labels.push({ id: JSON.stringify(['line', reference.id]), text: reference.label, ...box, color: reference.color ?? '#8B6CCE' });
19
+ }
20
+ for (const band of scene.referenceBands ?? []) {
21
+ if (band.status !== 'visible' || !band.label)
22
+ continue;
23
+ const scale = Math.max(1, Number.isFinite(fontScale) ? fontScale : 1), cells = [...band.label].reduce((count, letter) => count + ((letter.codePointAt(0) ?? 0) > 0x2e7f ? 2 : 1), 0), labelWidth = Math.ceil(cells * 12 * scale + 12);
24
+ const x = Math.max(left, transform.x + band.box.x * transform.sx), y = Math.max(0, transform.y + band.box.y * transform.sy), endX = Math.min(right, transform.x + (band.box.x + band.box.width) * transform.sx), endY = Math.min(viewport.height, transform.y + (band.box.y + band.box.height) * transform.sy);
25
+ // Conservative native text envelope, clipped to the visible band itself.
26
+ // Small bands keep the full label in metadata instead of forcing overlap.
27
+ if (labelWidth + 12 > endX - x || height + 8 > endY - y)
28
+ continue;
29
+ const box = { x: x + 6, y: y + 4, width: labelWidth, height };
30
+ if (labels.some(label => box.x < label.x + label.width + 4 && box.x + box.width + 4 > label.x && box.y < label.y + label.height + 4 && box.y + box.height + 4 > label.y))
31
+ continue;
32
+ labels.push({ id: JSON.stringify(['band', band.id]), text: band.label, ...box, color: bandTextColor, backgroundColor: bandSurfaceColor });
33
+ }
34
+ return labels;
35
+ }
36
+ //# sourceMappingURL=reference-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference-labels.js","sourceRoot":"","sources":["../../src/native/reference-labels.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { PlanReference, PlanReferenceBand } from './plan.js';
2
+ import type { NativeChartOptions, NativePointAppearance, NativeReferenceStyle, NativeReferenceBandStyle, NativeReferenceBandOptions } from './data-options.js';
3
+ import type { NativeScene } from '../library/contracts.js';
4
+ /** Fixed-size calculation dependency. Display changes never enter Core input. */
5
+ export declare function nativeReferenceGeometry(options: NativeChartOptions): readonly PlanReference[];
6
+ export declare function sameReferenceGeometry(a: readonly PlanReference[], b: readonly PlanReference[]): boolean;
7
+ export declare function nativeReferenceStyles(options: NativeChartOptions): readonly NativeReferenceStyle[];
8
+ export declare function sameReferenceStyles(a: readonly NativeReferenceStyle[], b: readonly NativeReferenceStyle[]): boolean;
9
+ export interface NativeReferenceBandGroup {
10
+ readonly axis: 'x' | 'y';
11
+ readonly valueAxis?: 'secondary';
12
+ readonly bands: readonly NativeReferenceBandOptions[];
13
+ }
14
+ /** Group access is shared by the defensive options validator and planner input. */
15
+ export declare function nativeReferenceBandGroups(options: NativeChartOptions): readonly NativeReferenceBandGroup[];
16
+ export declare function nativeReferenceBandGeometry(options: NativeChartOptions): readonly PlanReferenceBand[];
17
+ export declare function sameReferenceBandGeometry(a: readonly PlanReferenceBand[], b: readonly PlanReferenceBand[]): boolean;
18
+ export declare function nativeReferenceBandStyles(options: NativeChartOptions): readonly NativeReferenceBandStyle[];
19
+ export declare function sameReferenceBandStyles(a: readonly NativeReferenceBandStyle[], b: readonly NativeReferenceBandStyle[]): boolean;
20
+ /** Raw-ID validation belongs to optionsDiagnostic; hidden/off-window points
21
+ * stay configured there but do not need paint metadata in the current frame. */
22
+ export declare function visiblePointAppearance(scene: NativeScene, configured: readonly NativePointAppearance[] | undefined): readonly NativePointAppearance[] | undefined;
23
+ //# sourceMappingURL=reference-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference-options.d.ts","sourceRoot":"","sources":["../../src/native/reference-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC/D,OAAO,KAAK,EAAC,kBAAkB,EAAC,qBAAqB,EAAC,oBAAoB,EAAC,wBAAwB,EAAC,0BAA0B,EAAC,MAAM,mBAAmB,CAAC;AACzJ,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAOzD,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,OAAO,EAAC,kBAAkB,GAAE,SAAS,aAAa,EAAE,CAE3F;AACD,wBAAgB,qBAAqB,CAAC,CAAC,EAAC,SAAS,aAAa,EAAE,EAAC,CAAC,EAAC,SAAS,aAAa,EAAE,GAAE,OAAO,CAAoK;AACxQ,wBAAgB,qBAAqB,CAAC,OAAO,EAAC,kBAAkB,GAAE,SAAS,oBAAoB,EAAE,CAEhG;AACD,wBAAgB,mBAAmB,CAAC,CAAC,EAAC,SAAS,oBAAoB,EAAE,EAAC,CAAC,EAAC,SAAS,oBAAoB,EAAE,GAAE,OAAO,CAA8M;AAC9T,MAAM,WAAW,wBAAwB;IAAE,QAAQ,CAAC,IAAI,EAAC,GAAG,GAAC,GAAG,CAAC;IAAA,QAAQ,CAAC,SAAS,CAAC,EAAC,WAAW,CAAC;IAAA,QAAQ,CAAC,KAAK,EAAC,SAAS,0BAA0B,EAAE,CAAC;CAAC;AACvJ,mFAAmF;AACnF,wBAAgB,yBAAyB,CAAC,OAAO,EAAC,kBAAkB,GAAE,SAAS,wBAAwB,EAAE,CAKxG;AACD,wBAAgB,2BAA2B,CAAC,OAAO,EAAC,kBAAkB,GAAE,SAAS,iBAAiB,EAAE,CASnG;AACD,wBAAgB,yBAAyB,CAAC,CAAC,EAAC,SAAS,iBAAiB,EAAE,EAAC,CAAC,EAAC,SAAS,iBAAiB,EAAE,GAAE,OAAO,CAA8M;AAC9T,wBAAgB,yBAAyB,CAAC,OAAO,EAAC,kBAAkB,GAAE,SAAS,wBAAwB,EAAE,CAA4K;AACrR,wBAAgB,uBAAuB,CAAC,CAAC,EAAC,SAAS,wBAAwB,EAAE,EAAC,CAAC,EAAC,SAAS,wBAAwB,EAAE,GAAE,OAAO,CAA0L;AACtT;gFACgF;AAChF,wBAAgB,sBAAsB,CAAC,KAAK,EAAC,WAAW,EAAC,UAAU,EAAC,SAAS,qBAAqB,EAAE,GAAC,SAAS,GAAE,SAAS,qBAAqB,EAAE,GAAC,SAAS,CAIzJ"}
@@ -0,0 +1,58 @@
1
+ import { identityKey } from '../library/contracts.js';
2
+ import { sceneInteractionKey } from '../library/scene.js';
3
+ function secondaryAxis(options) { return options.axes && 'secondaryY' in options.axes ? options.axes.secondaryY : undefined; }
4
+ const projectedIds = new WeakMap();
5
+ /** Fixed-size calculation dependency. Display changes never enter Core input. */
6
+ export function nativeReferenceGeometry(options) {
7
+ return [...['x', 'y'].flatMap(axis => (options.axes?.[axis]?.referenceLines ?? []).map(({ id, value }) => ({ id, axis, value }))), ...(secondaryAxis(options)?.referenceLines ?? []).map(({ id, value }) => ({ id, axis: 'y', yAxis: 'secondary', value }))].sort((a, b) => a.id < b.id ? -1 : a.id > b.id ? 1 : 0);
8
+ }
9
+ export function sameReferenceGeometry(a, b) { return a.length === b.length && a.every((item, index) => item.id === b[index]?.id && item.axis === b[index]?.axis && item.value === b[index]?.value && item.yAxis === b[index]?.yAxis); }
10
+ export function nativeReferenceStyles(options) {
11
+ return [...['x', 'y'].flatMap(axis => (options.axes?.[axis]?.referenceLines ?? []).map(({ id, label, color, width, dash }) => ({ id, label, color, width, dash }))), ...(secondaryAxis(options)?.referenceLines ?? []).map(({ id, label, color, width, dash }) => ({ id, label, color, width, dash }))].sort((a, b) => a.id < b.id ? -1 : a.id > b.id ? 1 : 0);
12
+ }
13
+ export function sameReferenceStyles(a, b) { return a.length === b.length && a.every((item, index) => { const other = b[index]; return item.id === other?.id && item.label === other.label && item.color === other.color && item.width === other.width && item.dash === other.dash; }); }
14
+ /** Group access is shared by the defensive options validator and planner input. */
15
+ export function nativeReferenceBandGroups(options) {
16
+ const groups = [];
17
+ for (const axis of ['x', 'y']) {
18
+ const configured = options.axes?.[axis];
19
+ if (configured && 'referenceBands' in configured && configured.referenceBands !== undefined)
20
+ groups.push({ axis, bands: configured.referenceBands });
21
+ }
22
+ const secondary = secondaryAxis(options);
23
+ if (secondary?.referenceBands !== undefined)
24
+ groups.push({ axis: 'y', valueAxis: 'secondary', bands: secondary.referenceBands });
25
+ return groups;
26
+ }
27
+ export function nativeReferenceBandGeometry(options) {
28
+ const bands = [];
29
+ for (const group of nativeReferenceBandGroups(options))
30
+ for (const { id, from, to } of group.bands) {
31
+ if (group.axis === 'y' && typeof from === 'number' && typeof to === 'number')
32
+ bands.push({ id, axis: 'y', from, to, ...(group.valueAxis ? { valueAxis: group.valueAxis } : {}) });
33
+ else if (group.axis === 'x' && typeof from === 'number' && typeof to === 'number')
34
+ bands.push({ id, axis: 'x', from, to });
35
+ else if (group.axis === 'x' && typeof from === 'string' && typeof to === 'string')
36
+ bands.push({ id, axis: 'x', from, to });
37
+ else
38
+ throw Error('Invalid reference band endpoints');
39
+ }
40
+ return bands.sort((a, b) => a.id < b.id ? -1 : a.id > b.id ? 1 : 0);
41
+ }
42
+ export function sameReferenceBandGeometry(a, b) { return a.length === b.length && a.every((band, index) => { const other = b[index]; return band.id === other?.id && band.axis === other.axis && band.from === other.from && band.to === other.to && band.valueAxis === other.valueAxis; }); }
43
+ export function nativeReferenceBandStyles(options) { return nativeReferenceBandGroups(options).flatMap(group => group.bands.map(({ id, label, color, opacity }) => ({ id, label, color, opacity }))).sort((a, b) => a.id < b.id ? -1 : a.id > b.id ? 1 : 0); }
44
+ export function sameReferenceBandStyles(a, b) { return a.length === b.length && a.every((band, index) => { const other = b[index]; return band.id === other?.id && band.label === other.label && band.color === other.color && band.opacity === other.opacity; }); }
45
+ /** Raw-ID validation belongs to optionsDiagnostic; hidden/off-window points
46
+ * stay configured there but do not need paint metadata in the current frame. */
47
+ export function visiblePointAppearance(scene, configured) {
48
+ if (configured === undefined)
49
+ return undefined;
50
+ const key = sceneInteractionKey(scene);
51
+ let ids = projectedIds.get(key);
52
+ if (!ids) {
53
+ ids = new Set(scene.observations.map(point => identityKey(point.id)));
54
+ projectedIds.set(key, ids);
55
+ }
56
+ return configured.filter(point => ids.has(identityKey(point)));
57
+ }
58
+ //# sourceMappingURL=reference-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference-options.js","sourceRoot":"","sources":["../../src/native/reference-options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import type { PlanRelationshipNode, PlanRelationshipLink, PlanHierarchyGroup } from '@neural-charts/core/plan';
2
+ type SourceNode = PlanRelationshipNode & Readonly<{
3
+ color?: never;
4
+ datum?: never;
5
+ }>;
6
+ type SourceLink = PlanRelationshipLink & Readonly<{
7
+ color?: never;
8
+ datum?: never;
9
+ }>;
10
+ type SourceGroup = Omit<PlanHierarchyGroup, 'color'> & Readonly<{
11
+ color?: never;
12
+ }>;
13
+ export interface NativeRelationshipData<F extends 'dependencywheel' | 'arcdiagram' | 'chord'> {
14
+ readonly type: F;
15
+ readonly nodes: readonly SourceNode[];
16
+ readonly links: readonly SourceLink[];
17
+ readonly groups?: readonly SourceGroup[];
18
+ readonly family?: never;
19
+ readonly title?: never;
20
+ readonly description?: never;
21
+ readonly color?: never;
22
+ readonly startAngle?: never;
23
+ readonly nodePadding?: never;
24
+ readonly nodeWidth?: never;
25
+ readonly reversed?: never;
26
+ readonly nodeRadius?: never;
27
+ readonly linkWidth?: never;
28
+ }
29
+ export type NativeDependencyWheelData = NativeRelationshipData<'dependencywheel'>;
30
+ export type NativeChordData = NativeRelationshipData<'chord'>;
31
+ export type NativeArcDiagramData = NativeRelationshipData<'arcdiagram'>;
32
+ interface RelationshipLayoutBoundary {
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
+ }
42
+ export interface NativeRadialRelationshipLayoutOptions extends RelationshipLayoutBoundary {
43
+ readonly reversed?: never;
44
+ readonly nodeRadius?: never;
45
+ readonly linkWidth?: never;
46
+ readonly startAngle?: number;
47
+ readonly nodePadding?: number;
48
+ readonly nodeWidth?: number;
49
+ readonly stacking?: never;
50
+ readonly stackLabels?: never;
51
+ }
52
+ export interface NativeArcDiagramLayoutOptions extends RelationshipLayoutBoundary {
53
+ readonly startAngle?: never;
54
+ readonly nodePadding?: never;
55
+ readonly nodeWidth?: never;
56
+ readonly reversed?: boolean;
57
+ readonly nodeRadius?: number;
58
+ readonly linkWidth?: number;
59
+ readonly stacking?: never;
60
+ readonly stackLabels?: never;
61
+ }
62
+ export {};
63
+ //# sourceMappingURL=relationship-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-data.d.ts","sourceRoot":"","sources":["../../src/native/relationship-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=relationship-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-data.js","sourceRoot":"","sources":["../../src/native/relationship-data.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import type { PlanRelationshipSpec, PlanRelationshipMetadata } from '@neural-charts/core/plan';
2
+ export interface RelationshipObservationPort {
3
+ readonly relationship?: PlanRelationshipMetadata;
4
+ readonly incomplete?: boolean;
5
+ readonly value: number;
6
+ }
7
+ export interface RelationshipDetail {
8
+ readonly label: string;
9
+ readonly value: string;
10
+ }
11
+ export declare function relationshipPrimaryLabel(observation: RelationshipObservationPort, locale: 'en' | 'es'): string | undefined;
12
+ export declare function relationshipDetails(observation: RelationshipObservationPort, family: PlanRelationshipSpec['family'], locale: 'en' | 'es', format: (value: number) => string): readonly RelationshipDetail[];
13
+ //# sourceMappingURL=relationship-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-format.d.ts","sourceRoot":"","sources":["../../src/native/relationship-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,oBAAoB,EAAE,wBAAwB,EAAC,MAAM,0BAA0B,CAAC;AAE7F,MAAM,WAAW,2BAA2B;IAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,wBAAwB,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAC;AACvJ,MAAM,WAAW,kBAAkB;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAC;AACrF,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,2BAA2B,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAI1H;AACD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,2BAA2B,EAAE,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,kBAAkB,EAAE,CAiB3M"}
@@ -0,0 +1,26 @@
1
+ export function relationshipPrimaryLabel(observation, locale) {
2
+ if (observation.relationship?.type === 'node')
3
+ return locale === 'es' ? 'Total incidente conocido' : 'Known incident total';
4
+ if (observation.relationship?.type === 'link')
5
+ return locale === 'es' ? 'Valor de la relación' : 'Relation value';
6
+ return undefined;
7
+ }
8
+ export function relationshipDetails(observation, family, locale, format) {
9
+ const metadata = observation.relationship, es = locale === 'es', details = [];
10
+ if (!metadata)
11
+ return details;
12
+ if (metadata.type === 'node') {
13
+ if (family === 'dependencywheel')
14
+ details.push({ label: es ? 'Entrada conocida' : 'Known incoming', value: format(metadata.incoming) }, { label: es ? 'Salida conocida' : 'Known outgoing', value: format(metadata.outgoing) });
15
+ if (observation.incomplete)
16
+ details.push({ label: es ? 'Datos' : 'Data', value: es ? 'Total incompleto: hay relaciones con valor desconocido' : 'Incomplete total: some relation values are unknown' });
17
+ }
18
+ else
19
+ details.push({ label: metadata.directed ? es ? 'Origen' : 'From' : es ? 'Extremo A' : 'Endpoint A', value: metadata.fromLabel }, { label: metadata.directed ? es ? 'Destino' : 'To' : es ? 'Extremo B' : 'Endpoint B', value: metadata.toLabel });
20
+ if (metadata.geometryOmitted)
21
+ details.push({ label: es ? 'Representación' : 'Representation', value: observation.value === 0
22
+ ? es ? 'Valor cero sin área inventada' : 'Zero value without invented area'
23
+ : es ? 'Inferior a la precisión geométrica; el valor original se conserva' : 'Below geometric precision; original value preserved' });
24
+ return details;
25
+ }
26
+ //# sourceMappingURL=relationship-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-format.js","sourceRoot":"","sources":["../../src/native/relationship-format.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,wBAAwB,CAAC,WAAwC,EAAE,MAAmB;IACpG,IAAI,WAAW,CAAC,YAAY,EAAE,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAC5H,IAAI,WAAW,CAAC,YAAY,EAAE,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAClH,OAAO,SAAS,CAAC;AACnB,CAAC;AACD,MAAM,UAAU,mBAAmB,CAAC,WAAwC,EAAE,MAAsC,EAAE,MAAmB,EAAE,MAAiC;IAC1K,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,GAAG,MAAM,KAAK,IAAI,EAAE,OAAO,GAAyB,EAAE,CAAC;IACpG,IAAI,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC;IAC9B,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7B,IAAI,MAAM,KAAK,iBAAiB;YAAE,OAAO,CAAC,IAAI,CAC5C,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAC,EACrF,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAC,CACrF,CAAC;QACF,IAAI,WAAW,CAAC,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,oDAAoD,EAAC,CAAC,CAAC;IACxM,CAAC;;QAAM,OAAO,CAAC,IAAI,CACjB,EAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAC,EAChH,EAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAC,CAC9G,CAAC;IACF,IAAI,QAAQ,CAAC,eAAe;QAAE,OAAO,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,KAAK,CAAC;gBACzH,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,kCAAkC;gBAC3E,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mEAAmE,CAAC,CAAC,CAAC,qDAAqD,EAAC,CAAC,CAAC;IACvI,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { HitRegion } from '../library/contracts.js';
2
+ /** Presentation of an already-projected sector; no data layout is repeated. */
3
+ export declare function sectorSelectionOutline(hit: HitRegion | undefined, view: Readonly<{
4
+ width: number;
5
+ height: number;
6
+ }>, transform: Readonly<{
7
+ x: number;
8
+ y: number;
9
+ sx: number;
10
+ sy: number;
11
+ }>, ink: string): string | undefined;
12
+ //# sourceMappingURL=selection-outlines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection-outlines.d.ts","sourceRoot":"","sources":["../../src/native/selection-outlines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAEvD,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,GAAG,EAAC,SAAS,GAAC,SAAS,EAAC,IAAI,EAAC,QAAQ,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAA;CAAC,CAAC,EAAC,SAAS,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,CAWlM"}
@@ -0,0 +1,20 @@
1
+ /** Presentation of an already-projected sector; no data layout is repeated. */
2
+ export function sectorSelectionOutline(hit, view, transform, ink) {
3
+ if (hit?.type !== 'sector' || hit.radius <= hit.innerRadius || hit.end <= hit.start)
4
+ return undefined;
5
+ const point = (radius, angle) => ({ x: hit.cx + Math.sin(angle) * radius, y: hit.cy - Math.cos(angle) * radius });
6
+ const position = (p) => p.x + ' ' + p.y;
7
+ const arc = (radius, angle, direction) => 'A' + radius + ' ' + radius + ' 0 0 ' + direction + ' ' + position(point(radius, angle));
8
+ const middle = (hit.start + hit.end) / 2, full = hit.end - hit.start >= Math.PI * 2 - 1e-10;
9
+ let path = 'M' + position(point(hit.radius, hit.start)) + arc(hit.radius, middle, 1) + arc(hit.radius, hit.end, 1);
10
+ if (full) {
11
+ path += 'Z';
12
+ if (hit.innerRadius > 0)
13
+ path += 'M' + position(point(hit.innerRadius, hit.end)) + arc(hit.innerRadius, middle, 0) + arc(hit.innerRadius, hit.start, 0) + 'Z';
14
+ }
15
+ else
16
+ path += hit.innerRadius > 0 ? 'L' + position(point(hit.innerRadius, hit.end)) + arc(hit.innerRadius, middle, 0) + arc(hit.innerRadius, hit.start, 0) + 'Z' : 'L' + hit.cx + ' ' + hit.cy + 'Z';
17
+ const unit = Math.sqrt(transform.sx * transform.sy);
18
+ return '<svg viewBox="0 0 ' + view.width + ' ' + view.height + '"><g transform="translate(' + transform.x + ' ' + transform.y + ') scale(' + transform.sx + ' ' + transform.sy + ')"><path d="' + path + '" fill="none" stroke="' + ink + '" stroke-width="' + 4 / unit + '"/><path d="' + path + '" fill="none" stroke="#FFFFFF" stroke-width="' + 2 / unit + '"/></g></svg>';
19
+ }
20
+ //# sourceMappingURL=selection-outlines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection-outlines.js","sourceRoot":"","sources":["../../src/native/selection-outlines.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /** Structural native transport ports; these do not import the calculation engine. */
2
+ export interface TemporalIntervalPort {
3
+ readonly type: 'linear' | 'time';
4
+ readonly rowId: string;
5
+ readonly rowLabel: string;
6
+ readonly start: number;
7
+ readonly end: number;
8
+ readonly duration: number;
9
+ readonly completed?: number | null;
10
+ }
11
+ export interface TemporalEventPort {
12
+ readonly type: 'linear' | 'time';
13
+ readonly coordinate: number;
14
+ readonly title: string;
15
+ readonly description?: string;
16
+ }
17
+ export interface TemporalObservationPort {
18
+ readonly label: string;
19
+ readonly interval?: TemporalIntervalPort;
20
+ readonly event?: TemporalEventPort;
21
+ }
22
+ type NumberFormatter = (value: number) => string;
23
+ type Locale = 'en' | 'es';
24
+ export declare function temporalCoordinate(value: number, type: 'linear' | 'time', format: NumberFormatter): string;
25
+ /** Keep a date readable in the compact value line; exact time is a separate detail. */
26
+ export declare function eventPrimaryValue(event: TemporalEventPort, format: NumberFormatter): string;
27
+ export declare function temporalDetails(point: TemporalObservationPort, format: NumberFormatter, locale: Locale, showRow?: boolean): readonly string[];
28
+ export {};
29
+ //# sourceMappingURL=temporal-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal-format.d.ts","sourceRoot":"","sources":["../../src/native/temporal-format.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACpC;AAED,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AACjD,KAAK,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAU1B,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,MAAM,CAI1G;AAED,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,GAAG,MAAM,CAE3F;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAC,OAAO,UAAK,GAAG,SAAS,MAAM,EAAE,CAsBvI"}