@aceshooting/lyra-ui 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1133) hide show
  1. package/README.md +107 -19
  2. package/custom-elements.json +40136 -17102
  3. package/dist/components/app-rail/app-rail-item.class.d.ts +36 -0
  4. package/dist/components/app-rail/app-rail-item.class.d.ts.map +1 -0
  5. package/dist/components/app-rail/app-rail-item.class.js +77 -0
  6. package/dist/components/app-rail/app-rail-item.class.js.map +1 -0
  7. package/dist/components/app-rail/app-rail-item.d.ts +2 -0
  8. package/dist/components/app-rail/app-rail-item.d.ts.map +1 -0
  9. package/dist/components/app-rail/app-rail-item.js +5 -0
  10. package/dist/components/app-rail/app-rail-item.js.map +1 -0
  11. package/dist/components/app-rail/app-rail-item.styles.d.ts +2 -0
  12. package/dist/components/app-rail/app-rail-item.styles.d.ts.map +1 -0
  13. package/dist/components/app-rail/app-rail-item.styles.js +71 -0
  14. package/dist/components/app-rail/app-rail-item.styles.js.map +1 -0
  15. package/dist/components/app-rail/app-rail.class.d.ts +213 -0
  16. package/dist/components/app-rail/app-rail.class.d.ts.map +1 -0
  17. package/dist/components/app-rail/app-rail.class.js +545 -0
  18. package/dist/components/app-rail/app-rail.class.js.map +1 -0
  19. package/dist/components/app-rail/app-rail.d.ts +3 -171
  20. package/dist/components/app-rail/app-rail.d.ts.map +1 -0
  21. package/dist/components/app-rail/app-rail.js +4 -481
  22. package/dist/components/app-rail/app-rail.js.map +1 -0
  23. package/dist/components/app-rail/app-rail.styles.d.ts +1 -0
  24. package/dist/components/app-rail/app-rail.styles.d.ts.map +1 -0
  25. package/dist/components/app-rail/app-rail.styles.js +42 -10
  26. package/dist/components/app-rail/app-rail.styles.js.map +1 -0
  27. package/dist/components/attachment-chip/attachment-chip.class.d.ts +151 -0
  28. package/dist/components/attachment-chip/attachment-chip.class.d.ts.map +1 -0
  29. package/dist/components/attachment-chip/attachment-chip.class.js +370 -0
  30. package/dist/components/attachment-chip/attachment-chip.class.js.map +1 -0
  31. package/dist/components/attachment-chip/attachment-chip.d.ts +2 -114
  32. package/dist/components/attachment-chip/attachment-chip.d.ts.map +1 -0
  33. package/dist/components/attachment-chip/attachment-chip.js +3 -310
  34. package/dist/components/attachment-chip/attachment-chip.js.map +1 -0
  35. package/dist/components/attachment-chip/attachment-chip.styles.d.ts +1 -0
  36. package/dist/components/attachment-chip/attachment-chip.styles.d.ts.map +1 -0
  37. package/dist/components/attachment-chip/attachment-chip.styles.js +29 -13
  38. package/dist/components/attachment-chip/attachment-chip.styles.js.map +1 -0
  39. package/dist/components/attachment-trigger/attachment-trigger.class.d.ts +106 -0
  40. package/dist/components/attachment-trigger/attachment-trigger.class.d.ts.map +1 -0
  41. package/dist/components/attachment-trigger/attachment-trigger.class.js +227 -0
  42. package/dist/components/attachment-trigger/attachment-trigger.class.js.map +1 -0
  43. package/dist/components/attachment-trigger/attachment-trigger.d.ts +4 -83
  44. package/dist/components/attachment-trigger/attachment-trigger.d.ts.map +1 -0
  45. package/dist/components/attachment-trigger/attachment-trigger.js +5 -256
  46. package/dist/components/attachment-trigger/attachment-trigger.js.map +1 -0
  47. package/dist/components/attachment-trigger/attachment-trigger.styles.d.ts +1 -0
  48. package/dist/components/attachment-trigger/attachment-trigger.styles.d.ts.map +1 -0
  49. package/dist/components/attachment-trigger/attachment-trigger.styles.js +38 -11
  50. package/dist/components/attachment-trigger/attachment-trigger.styles.js.map +1 -0
  51. package/dist/components/chart/bar-chart.class.d.ts +15 -0
  52. package/dist/components/chart/bar-chart.class.d.ts.map +1 -0
  53. package/dist/components/chart/bar-chart.class.js +10 -0
  54. package/dist/components/chart/bar-chart.class.js.map +1 -0
  55. package/dist/components/chart/bar-chart.d.ts +3 -14
  56. package/dist/components/chart/bar-chart.d.ts.map +1 -0
  57. package/dist/components/chart/bar-chart.js +4 -25
  58. package/dist/components/chart/bar-chart.js.map +1 -0
  59. package/dist/components/chart/box-plot.class.d.ts +78 -0
  60. package/dist/components/chart/box-plot.class.d.ts.map +1 -0
  61. package/dist/components/chart/box-plot.class.js +320 -0
  62. package/dist/components/chart/box-plot.class.js.map +1 -0
  63. package/dist/components/chart/box-plot.d.ts +3 -53
  64. package/dist/components/chart/box-plot.d.ts.map +1 -0
  65. package/dist/components/chart/box-plot.js +4 -189
  66. package/dist/components/chart/box-plot.js.map +1 -0
  67. package/dist/components/chart/box-plot.styles.d.ts +1 -0
  68. package/dist/components/chart/box-plot.styles.d.ts.map +1 -0
  69. package/dist/components/chart/box-plot.styles.js +15 -1
  70. package/dist/components/chart/box-plot.styles.js.map +1 -0
  71. package/dist/components/chart/bubble-chart.class.d.ts +19 -0
  72. package/dist/components/chart/bubble-chart.class.d.ts.map +1 -0
  73. package/dist/components/chart/bubble-chart.class.js +14 -0
  74. package/dist/components/chart/bubble-chart.class.js.map +1 -0
  75. package/dist/components/chart/bubble-chart.d.ts +3 -18
  76. package/dist/components/chart/bubble-chart.d.ts.map +1 -0
  77. package/dist/components/chart/bubble-chart.js +4 -29
  78. package/dist/components/chart/bubble-chart.js.map +1 -0
  79. package/dist/components/chart/chart-loader.d.ts +12 -9
  80. package/dist/components/chart/chart-loader.d.ts.map +1 -0
  81. package/dist/components/chart/chart-loader.js +1 -0
  82. package/dist/components/chart/chart-loader.js.map +1 -0
  83. package/dist/components/chart/chart.class.d.ts +209 -0
  84. package/dist/components/chart/chart.class.d.ts.map +1 -0
  85. package/dist/components/chart/chart.class.js +651 -0
  86. package/dist/components/chart/chart.class.js.map +1 -0
  87. package/dist/components/chart/chart.d.ts +3 -152
  88. package/dist/components/chart/chart.d.ts.map +1 -0
  89. package/dist/components/chart/chart.js +4 -539
  90. package/dist/components/chart/chart.js.map +1 -0
  91. package/dist/components/chart/chart.styles.d.ts +1 -0
  92. package/dist/components/chart/chart.styles.d.ts.map +1 -0
  93. package/dist/components/chart/chart.styles.js +5 -4
  94. package/dist/components/chart/chart.styles.js.map +1 -0
  95. package/dist/components/chart/doughnut-chart.class.d.ts +15 -0
  96. package/dist/components/chart/doughnut-chart.class.d.ts.map +1 -0
  97. package/dist/components/chart/doughnut-chart.class.js +10 -0
  98. package/dist/components/chart/doughnut-chart.class.js.map +1 -0
  99. package/dist/components/chart/doughnut-chart.d.ts +3 -14
  100. package/dist/components/chart/doughnut-chart.d.ts.map +1 -0
  101. package/dist/components/chart/doughnut-chart.js +4 -25
  102. package/dist/components/chart/doughnut-chart.js.map +1 -0
  103. package/dist/components/chart/histogram-bin.d.ts +6 -2
  104. package/dist/components/chart/histogram-bin.d.ts.map +1 -0
  105. package/dist/components/chart/histogram-bin.js +13 -4
  106. package/dist/components/chart/histogram-bin.js.map +1 -0
  107. package/dist/components/chart/histogram.class.d.ts +23 -0
  108. package/dist/components/chart/histogram.class.d.ts.map +1 -0
  109. package/dist/components/chart/histogram.class.js +91 -0
  110. package/dist/components/chart/histogram.class.js.map +1 -0
  111. package/dist/components/chart/histogram.d.ts +3 -22
  112. package/dist/components/chart/histogram.d.ts.map +1 -0
  113. package/dist/components/chart/histogram.js +4 -98
  114. package/dist/components/chart/histogram.js.map +1 -0
  115. package/dist/components/chart/histogram.styles.d.ts +1 -0
  116. package/dist/components/chart/histogram.styles.d.ts.map +1 -0
  117. package/dist/components/chart/histogram.styles.js +1 -0
  118. package/dist/components/chart/histogram.styles.js.map +1 -0
  119. package/dist/components/chart/line-chart.class.d.ts +15 -0
  120. package/dist/components/chart/line-chart.class.d.ts.map +1 -0
  121. package/dist/components/chart/line-chart.class.js +10 -0
  122. package/dist/components/chart/line-chart.class.js.map +1 -0
  123. package/dist/components/chart/line-chart.d.ts +3 -14
  124. package/dist/components/chart/line-chart.d.ts.map +1 -0
  125. package/dist/components/chart/line-chart.js +4 -25
  126. package/dist/components/chart/line-chart.js.map +1 -0
  127. package/dist/components/chart/lite-chart.class.d.ts +237 -0
  128. package/dist/components/chart/lite-chart.class.d.ts.map +1 -0
  129. package/dist/components/chart/lite-chart.class.js +757 -0
  130. package/dist/components/chart/lite-chart.class.js.map +1 -0
  131. package/dist/components/chart/lite-chart.d.ts +2 -137
  132. package/dist/components/chart/lite-chart.d.ts.map +1 -0
  133. package/dist/components/chart/lite-chart.js +3 -540
  134. package/dist/components/chart/lite-chart.js.map +1 -0
  135. package/dist/components/chart/lite-chart.styles.d.ts +1 -0
  136. package/dist/components/chart/lite-chart.styles.d.ts.map +1 -0
  137. package/dist/components/chart/lite-chart.styles.js +19 -10
  138. package/dist/components/chart/lite-chart.styles.js.map +1 -0
  139. package/dist/components/chart/pie-chart.class.d.ts +16 -0
  140. package/dist/components/chart/pie-chart.class.d.ts.map +1 -0
  141. package/dist/components/chart/pie-chart.class.js +11 -0
  142. package/dist/components/chart/pie-chart.class.js.map +1 -0
  143. package/dist/components/chart/pie-chart.d.ts +3 -15
  144. package/dist/components/chart/pie-chart.d.ts.map +1 -0
  145. package/dist/components/chart/pie-chart.js +4 -26
  146. package/dist/components/chart/pie-chart.js.map +1 -0
  147. package/dist/components/chart/polar-area-chart.class.d.ts +15 -0
  148. package/dist/components/chart/polar-area-chart.class.d.ts.map +1 -0
  149. package/dist/components/chart/polar-area-chart.class.js +10 -0
  150. package/dist/components/chart/polar-area-chart.class.js.map +1 -0
  151. package/dist/components/chart/polar-area-chart.d.ts +3 -14
  152. package/dist/components/chart/polar-area-chart.d.ts.map +1 -0
  153. package/dist/components/chart/polar-area-chart.js +4 -25
  154. package/dist/components/chart/polar-area-chart.js.map +1 -0
  155. package/dist/components/chart/radar-chart.class.d.ts +15 -0
  156. package/dist/components/chart/radar-chart.class.d.ts.map +1 -0
  157. package/dist/components/chart/radar-chart.class.js +10 -0
  158. package/dist/components/chart/radar-chart.class.js.map +1 -0
  159. package/dist/components/chart/radar-chart.d.ts +3 -14
  160. package/dist/components/chart/radar-chart.d.ts.map +1 -0
  161. package/dist/components/chart/radar-chart.js +4 -25
  162. package/dist/components/chart/radar-chart.js.map +1 -0
  163. package/dist/components/chart/scatter-chart.class.d.ts +16 -0
  164. package/dist/components/chart/scatter-chart.class.d.ts.map +1 -0
  165. package/dist/components/chart/scatter-chart.class.js +11 -0
  166. package/dist/components/chart/scatter-chart.class.js.map +1 -0
  167. package/dist/components/chart/scatter-chart.d.ts +3 -15
  168. package/dist/components/chart/scatter-chart.d.ts.map +1 -0
  169. package/dist/components/chart/scatter-chart.js +4 -26
  170. package/dist/components/chart/scatter-chart.js.map +1 -0
  171. package/dist/components/chat-composer/chat-composer.class.d.ts +145 -0
  172. package/dist/components/chat-composer/chat-composer.class.d.ts.map +1 -0
  173. package/dist/components/chat-composer/chat-composer.class.js +314 -0
  174. package/dist/components/chat-composer/chat-composer.class.js.map +1 -0
  175. package/dist/components/chat-composer/chat-composer.d.ts +2 -92
  176. package/dist/components/chat-composer/chat-composer.d.ts.map +1 -0
  177. package/dist/components/chat-composer/chat-composer.js +3 -283
  178. package/dist/components/chat-composer/chat-composer.js.map +1 -0
  179. package/dist/components/chat-composer/chat-composer.styles.d.ts +1 -0
  180. package/dist/components/chat-composer/chat-composer.styles.d.ts.map +1 -0
  181. package/dist/components/chat-composer/chat-composer.styles.js +16 -5
  182. package/dist/components/chat-composer/chat-composer.styles.js.map +1 -0
  183. package/dist/components/chat-message/chat-message.class.d.ts +145 -0
  184. package/dist/components/chat-message/chat-message.class.d.ts.map +1 -0
  185. package/dist/components/chat-message/chat-message.class.js +270 -0
  186. package/dist/components/chat-message/chat-message.class.js.map +1 -0
  187. package/dist/components/chat-message/chat-message.d.ts +3 -113
  188. package/dist/components/chat-message/chat-message.d.ts.map +1 -0
  189. package/dist/components/chat-message/chat-message.js +4 -289
  190. package/dist/components/chat-message/chat-message.js.map +1 -0
  191. package/dist/components/chat-message/chat-message.styles.d.ts +1 -0
  192. package/dist/components/chat-message/chat-message.styles.d.ts.map +1 -0
  193. package/dist/components/chat-message/chat-message.styles.js +13 -12
  194. package/dist/components/chat-message/chat-message.styles.js.map +1 -0
  195. package/dist/components/checkbox/checkbox.class.d.ts +123 -0
  196. package/dist/components/checkbox/checkbox.class.d.ts.map +1 -0
  197. package/dist/components/checkbox/checkbox.class.js +328 -0
  198. package/dist/components/checkbox/checkbox.class.js.map +1 -0
  199. package/dist/components/checkbox/checkbox.d.ts +2 -59
  200. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  201. package/dist/components/checkbox/checkbox.js +3 -228
  202. package/dist/components/checkbox/checkbox.js.map +1 -0
  203. package/dist/components/checkbox/checkbox.styles.d.ts +1 -0
  204. package/dist/components/checkbox/checkbox.styles.d.ts.map +1 -0
  205. package/dist/components/checkbox/checkbox.styles.js +14 -6
  206. package/dist/components/checkbox/checkbox.styles.js.map +1 -0
  207. package/dist/components/chip/chip-group.class.d.ts +57 -0
  208. package/dist/components/chip/chip-group.class.d.ts.map +1 -0
  209. package/dist/components/chip/chip-group.class.js +129 -0
  210. package/dist/components/chip/chip-group.class.js.map +1 -0
  211. package/dist/components/chip/chip-group.d.ts +2 -56
  212. package/dist/components/chip/chip-group.d.ts.map +1 -0
  213. package/dist/components/chip/chip-group.js +3 -122
  214. package/dist/components/chip/chip-group.js.map +1 -0
  215. package/dist/components/chip/chip-group.styles.d.ts +1 -0
  216. package/dist/components/chip/chip-group.styles.d.ts.map +1 -0
  217. package/dist/components/chip/chip-group.styles.js +7 -6
  218. package/dist/components/chip/chip-group.styles.js.map +1 -0
  219. package/dist/components/chip/chip.class.d.ts +65 -0
  220. package/dist/components/chip/chip.class.d.ts.map +1 -0
  221. package/dist/components/chip/chip.class.js +121 -0
  222. package/dist/components/chip/chip.class.js.map +1 -0
  223. package/dist/components/chip/chip.d.ts +2 -64
  224. package/dist/components/chip/chip.d.ts.map +1 -0
  225. package/dist/components/chip/chip.js +3 -113
  226. package/dist/components/chip/chip.js.map +1 -0
  227. package/dist/components/chip/chip.styles.d.ts +1 -0
  228. package/dist/components/chip/chip.styles.d.ts.map +1 -0
  229. package/dist/components/chip/chip.styles.js +12 -11
  230. package/dist/components/chip/chip.styles.js.map +1 -0
  231. package/dist/components/citation-badge/citation-badge.class.d.ts +114 -0
  232. package/dist/components/citation-badge/citation-badge.class.d.ts.map +1 -0
  233. package/dist/components/citation-badge/citation-badge.class.js +317 -0
  234. package/dist/components/citation-badge/citation-badge.class.js.map +1 -0
  235. package/dist/components/citation-badge/citation-badge.d.ts +2 -113
  236. package/dist/components/citation-badge/citation-badge.d.ts.map +1 -0
  237. package/dist/components/citation-badge/citation-badge.js +3 -298
  238. package/dist/components/citation-badge/citation-badge.js.map +1 -0
  239. package/dist/components/citation-badge/citation-badge.styles.d.ts +1 -0
  240. package/dist/components/citation-badge/citation-badge.styles.d.ts.map +1 -0
  241. package/dist/components/citation-badge/citation-badge.styles.js +12 -11
  242. package/dist/components/citation-badge/citation-badge.styles.js.map +1 -0
  243. package/dist/components/code-block/code-block.class.d.ts +141 -0
  244. package/dist/components/code-block/code-block.class.d.ts.map +1 -0
  245. package/dist/components/code-block/code-block.class.js +333 -0
  246. package/dist/components/code-block/code-block.class.js.map +1 -0
  247. package/dist/components/code-block/code-block.d.ts +3 -89
  248. package/dist/components/code-block/code-block.d.ts.map +1 -0
  249. package/dist/components/code-block/code-block.js +4 -315
  250. package/dist/components/code-block/code-block.js.map +1 -0
  251. package/dist/components/code-block/code-block.styles.d.ts +1 -0
  252. package/dist/components/code-block/code-block.styles.d.ts.map +1 -0
  253. package/dist/components/code-block/code-block.styles.js +25 -21
  254. package/dist/components/code-block/code-block.styles.js.map +1 -0
  255. package/dist/components/code-block/code-loader.d.ts +49 -5
  256. package/dist/components/code-block/code-loader.d.ts.map +1 -0
  257. package/dist/components/code-block/code-loader.js +64 -0
  258. package/dist/components/code-block/code-loader.js.map +1 -0
  259. package/dist/components/combobox/combobox.class.d.ts +205 -0
  260. package/dist/components/combobox/combobox.class.d.ts.map +1 -0
  261. package/dist/components/combobox/combobox.class.js +854 -0
  262. package/dist/components/combobox/combobox.class.js.map +1 -0
  263. package/dist/components/combobox/combobox.d.ts +3 -158
  264. package/dist/components/combobox/combobox.d.ts.map +1 -0
  265. package/dist/components/combobox/combobox.js +4 -751
  266. package/dist/components/combobox/combobox.js.map +1 -0
  267. package/dist/components/combobox/combobox.styles.d.ts +1 -0
  268. package/dist/components/combobox/combobox.styles.d.ts.map +1 -0
  269. package/dist/components/combobox/combobox.styles.js +34 -33
  270. package/dist/components/combobox/combobox.styles.js.map +1 -0
  271. package/dist/components/combobox/option.class.d.ts +44 -0
  272. package/dist/components/combobox/option.class.d.ts.map +1 -0
  273. package/dist/components/combobox/option.class.js +101 -0
  274. package/dist/components/combobox/option.class.js.map +1 -0
  275. package/dist/components/combobox/option.d.ts +2 -40
  276. package/dist/components/combobox/option.d.ts.map +1 -0
  277. package/dist/components/combobox/option.js +3 -109
  278. package/dist/components/combobox/option.js.map +1 -0
  279. package/dist/components/context-meter/context-meter.class.d.ts +54 -0
  280. package/dist/components/context-meter/context-meter.class.d.ts.map +1 -0
  281. package/dist/components/context-meter/context-meter.class.js +158 -0
  282. package/dist/components/context-meter/context-meter.class.js.map +1 -0
  283. package/dist/components/context-meter/context-meter.d.ts +2 -53
  284. package/dist/components/context-meter/context-meter.d.ts.map +1 -0
  285. package/dist/components/context-meter/context-meter.js +3 -148
  286. package/dist/components/context-meter/context-meter.js.map +1 -0
  287. package/dist/components/context-meter/context-meter.styles.d.ts +1 -0
  288. package/dist/components/context-meter/context-meter.styles.d.ts.map +1 -0
  289. package/dist/components/context-meter/context-meter.styles.js +7 -12
  290. package/dist/components/context-meter/context-meter.styles.js.map +1 -0
  291. package/dist/components/conversation-item/conversation-item.class.d.ts +127 -0
  292. package/dist/components/conversation-item/conversation-item.class.d.ts.map +1 -0
  293. package/dist/components/conversation-item/conversation-item.class.js +259 -0
  294. package/dist/components/conversation-item/conversation-item.class.js.map +1 -0
  295. package/dist/components/conversation-item/conversation-item.d.ts +2 -128
  296. package/dist/components/conversation-item/conversation-item.d.ts.map +1 -0
  297. package/dist/components/conversation-item/conversation-item.js +3 -320
  298. package/dist/components/conversation-item/conversation-item.js.map +1 -0
  299. package/dist/components/conversation-item/conversation-item.styles.d.ts +1 -0
  300. package/dist/components/conversation-item/conversation-item.styles.d.ts.map +1 -0
  301. package/dist/components/conversation-item/conversation-item.styles.js +12 -11
  302. package/dist/components/conversation-item/conversation-item.styles.js.map +1 -0
  303. package/dist/components/copy-button/copy-button.class.d.ts +37 -0
  304. package/dist/components/copy-button/copy-button.class.d.ts.map +1 -0
  305. package/dist/components/copy-button/copy-button.class.js +103 -0
  306. package/dist/components/copy-button/copy-button.class.js.map +1 -0
  307. package/dist/components/copy-button/copy-button.d.ts +2 -0
  308. package/dist/components/copy-button/copy-button.d.ts.map +1 -0
  309. package/dist/components/copy-button/copy-button.js +5 -0
  310. package/dist/components/copy-button/copy-button.js.map +1 -0
  311. package/dist/components/copy-button/copy-button.styles.d.ts +2 -0
  312. package/dist/components/copy-button/copy-button.styles.d.ts.map +1 -0
  313. package/dist/components/copy-button/copy-button.styles.js +40 -0
  314. package/dist/components/copy-button/copy-button.styles.js.map +1 -0
  315. package/dist/components/date-picker/calendar-core.d.ts +25 -0
  316. package/dist/components/date-picker/calendar-core.d.ts.map +1 -0
  317. package/dist/components/date-picker/calendar-core.js +52 -4
  318. package/dist/components/date-picker/calendar-core.js.map +1 -0
  319. package/dist/components/date-picker/date-input.class.d.ts +185 -0
  320. package/dist/components/date-picker/date-input.class.d.ts.map +1 -0
  321. package/dist/components/date-picker/date-input.class.js +676 -0
  322. package/dist/components/date-picker/date-input.class.js.map +1 -0
  323. package/dist/components/date-picker/date-input.d.ts +3 -101
  324. package/dist/components/date-picker/date-input.d.ts.map +1 -0
  325. package/dist/components/date-picker/date-input.js +4 -470
  326. package/dist/components/date-picker/date-input.js.map +1 -0
  327. package/dist/components/date-picker/date-input.styles.d.ts +1 -0
  328. package/dist/components/date-picker/date-input.styles.d.ts.map +1 -0
  329. package/dist/components/date-picker/date-input.styles.js +11 -10
  330. package/dist/components/date-picker/date-input.styles.js.map +1 -0
  331. package/dist/components/date-picker/date-picker.class.d.ts +121 -0
  332. package/dist/components/date-picker/date-picker.class.d.ts.map +1 -0
  333. package/dist/components/date-picker/date-picker.class.js +513 -0
  334. package/dist/components/date-picker/date-picker.class.js.map +1 -0
  335. package/dist/components/date-picker/date-picker.d.ts +2 -79
  336. package/dist/components/date-picker/date-picker.d.ts.map +1 -0
  337. package/dist/components/date-picker/date-picker.js +3 -432
  338. package/dist/components/date-picker/date-picker.js.map +1 -0
  339. package/dist/components/date-picker/date-picker.styles.d.ts +1 -0
  340. package/dist/components/date-picker/date-picker.styles.d.ts.map +1 -0
  341. package/dist/components/date-picker/date-picker.styles.js +10 -9
  342. package/dist/components/date-picker/date-picker.styles.js.map +1 -0
  343. package/dist/components/dialog/confirm.d.ts +1 -0
  344. package/dist/components/dialog/confirm.d.ts.map +1 -0
  345. package/dist/components/dialog/confirm.js +4 -6
  346. package/dist/components/dialog/confirm.js.map +1 -0
  347. package/dist/components/dialog/dialog.class.d.ts +137 -0
  348. package/dist/components/dialog/dialog.class.d.ts.map +1 -0
  349. package/dist/components/dialog/dialog.class.js +301 -0
  350. package/dist/components/dialog/dialog.class.js.map +1 -0
  351. package/dist/components/dialog/dialog.d.ts +2 -85
  352. package/dist/components/dialog/dialog.d.ts.map +1 -0
  353. package/dist/components/dialog/dialog.js +3 -270
  354. package/dist/components/dialog/dialog.js.map +1 -0
  355. package/dist/components/dialog/dialog.styles.d.ts +1 -0
  356. package/dist/components/dialog/dialog.styles.d.ts.map +1 -0
  357. package/dist/components/dialog/dialog.styles.js +54 -6
  358. package/dist/components/dialog/dialog.styles.js.map +1 -0
  359. package/dist/components/dock-panel/dock-panel.class.d.ts +143 -0
  360. package/dist/components/dock-panel/dock-panel.class.d.ts.map +1 -0
  361. package/dist/components/dock-panel/dock-panel.class.js +358 -0
  362. package/dist/components/dock-panel/dock-panel.class.js.map +1 -0
  363. package/dist/components/dock-panel/dock-panel.d.ts +2 -134
  364. package/dist/components/dock-panel/dock-panel.d.ts.map +1 -0
  365. package/dist/components/dock-panel/dock-panel.js +3 -343
  366. package/dist/components/dock-panel/dock-panel.js.map +1 -0
  367. package/dist/components/dock-panel/dock-panel.styles.d.ts +1 -0
  368. package/dist/components/dock-panel/dock-panel.styles.d.ts.map +1 -0
  369. package/dist/components/dock-panel/dock-panel.styles.js +34 -13
  370. package/dist/components/dock-panel/dock-panel.styles.js.map +1 -0
  371. package/dist/components/document-preview/document-preview.class.d.ts +153 -0
  372. package/dist/components/document-preview/document-preview.class.d.ts.map +1 -0
  373. package/dist/components/document-preview/document-preview.class.js +304 -0
  374. package/dist/components/document-preview/document-preview.class.js.map +1 -0
  375. package/dist/components/document-preview/document-preview.d.ts +2 -135
  376. package/dist/components/document-preview/document-preview.d.ts.map +1 -0
  377. package/dist/components/document-preview/document-preview.js +3 -370
  378. package/dist/components/document-preview/document-preview.js.map +1 -0
  379. package/dist/components/document-preview/document-preview.styles.d.ts +1 -0
  380. package/dist/components/document-preview/document-preview.styles.d.ts.map +1 -0
  381. package/dist/components/document-preview/document-preview.styles.js +22 -21
  382. package/dist/components/document-preview/document-preview.styles.js.map +1 -0
  383. package/dist/components/empty/empty.class.d.ts +43 -0
  384. package/dist/components/empty/empty.class.d.ts.map +1 -0
  385. package/dist/components/empty/empty.class.js +112 -0
  386. package/dist/components/empty/empty.class.js.map +1 -0
  387. package/dist/components/empty/empty.d.ts +2 -43
  388. package/dist/components/empty/empty.d.ts.map +1 -0
  389. package/dist/components/empty/empty.js +3 -105
  390. package/dist/components/empty/empty.js.map +1 -0
  391. package/dist/components/empty/empty.styles.d.ts +1 -0
  392. package/dist/components/empty/empty.styles.d.ts.map +1 -0
  393. package/dist/components/empty/empty.styles.js +6 -8
  394. package/dist/components/empty/empty.styles.js.map +1 -0
  395. package/dist/components/export-button/csv.d.ts +1 -0
  396. package/dist/components/export-button/csv.d.ts.map +1 -0
  397. package/dist/components/export-button/csv.js +1 -0
  398. package/dist/components/export-button/csv.js.map +1 -0
  399. package/dist/components/export-button/export-button.class.d.ts +76 -0
  400. package/dist/components/export-button/export-button.class.d.ts.map +1 -0
  401. package/dist/components/export-button/export-button.class.js +249 -0
  402. package/dist/components/export-button/export-button.class.js.map +1 -0
  403. package/dist/components/export-button/export-button.d.ts +2 -55
  404. package/dist/components/export-button/export-button.d.ts.map +1 -0
  405. package/dist/components/export-button/export-button.js +3 -233
  406. package/dist/components/export-button/export-button.js.map +1 -0
  407. package/dist/components/export-button/export-button.styles.d.ts +1 -0
  408. package/dist/components/export-button/export-button.styles.d.ts.map +1 -0
  409. package/dist/components/export-button/export-button.styles.js +11 -6
  410. package/dist/components/export-button/export-button.styles.js.map +1 -0
  411. package/dist/components/file-input/accept.d.ts +1 -0
  412. package/dist/components/file-input/accept.d.ts.map +1 -0
  413. package/dist/components/file-input/accept.js +3 -0
  414. package/dist/components/file-input/accept.js.map +1 -0
  415. package/dist/components/file-input/file-input.class.d.ts +66 -0
  416. package/dist/components/file-input/file-input.class.d.ts.map +1 -0
  417. package/dist/components/file-input/file-input.class.js +213 -0
  418. package/dist/components/file-input/file-input.class.js.map +1 -0
  419. package/dist/components/file-input/file-input.d.ts +2 -50
  420. package/dist/components/file-input/file-input.d.ts.map +1 -0
  421. package/dist/components/file-input/file-input.js +3 -195
  422. package/dist/components/file-input/file-input.js.map +1 -0
  423. package/dist/components/file-input/file-input.styles.d.ts +1 -0
  424. package/dist/components/file-input/file-input.styles.d.ts.map +1 -0
  425. package/dist/components/file-input/file-input.styles.js +5 -4
  426. package/dist/components/file-input/file-input.styles.js.map +1 -0
  427. package/dist/components/flag/flag-peer.d.ts +8 -0
  428. package/dist/components/flag/flag-peer.d.ts.map +1 -0
  429. package/dist/components/flag/flag-peer.js +13 -0
  430. package/dist/components/flag/flag-peer.js.map +1 -0
  431. package/dist/components/flag/flag.class.d.ts +124 -0
  432. package/dist/components/flag/flag.class.d.ts.map +1 -0
  433. package/dist/components/flag/flag.class.js +251 -0
  434. package/dist/components/flag/flag.class.js.map +1 -0
  435. package/dist/components/flag/flag.d.ts +3 -121
  436. package/dist/components/flag/flag.d.ts.map +1 -0
  437. package/dist/components/flag/flag.js +4 -225
  438. package/dist/components/flag/flag.js.map +1 -0
  439. package/dist/components/flag/flag.styles.d.ts +1 -0
  440. package/dist/components/flag/flag.styles.d.ts.map +1 -0
  441. package/dist/components/flag/flag.styles.js +6 -5
  442. package/dist/components/flag/flag.styles.js.map +1 -0
  443. package/dist/components/flag/language-map.d.ts +5 -1
  444. package/dist/components/flag/language-map.d.ts.map +1 -0
  445. package/dist/components/flag/language-map.js +7 -3
  446. package/dist/components/flag/language-map.js.map +1 -0
  447. package/dist/components/gauge/gauge.class.d.ts +41 -0
  448. package/dist/components/gauge/gauge.class.d.ts.map +1 -0
  449. package/dist/components/gauge/gauge.class.js +178 -0
  450. package/dist/components/gauge/gauge.class.js.map +1 -0
  451. package/dist/components/gauge/gauge.d.ts +2 -31
  452. package/dist/components/gauge/gauge.d.ts.map +1 -0
  453. package/dist/components/gauge/gauge.js +3 -158
  454. package/dist/components/gauge/gauge.js.map +1 -0
  455. package/dist/components/gauge/gauge.styles.d.ts +1 -0
  456. package/dist/components/gauge/gauge.styles.d.ts.map +1 -0
  457. package/dist/components/gauge/gauge.styles.js +9 -8
  458. package/dist/components/gauge/gauge.styles.js.map +1 -0
  459. package/dist/components/generation-status/generation-status.class.d.ts +121 -0
  460. package/dist/components/generation-status/generation-status.class.d.ts.map +1 -0
  461. package/dist/components/generation-status/generation-status.class.js +260 -0
  462. package/dist/components/generation-status/generation-status.class.js.map +1 -0
  463. package/dist/components/generation-status/generation-status.d.ts +2 -109
  464. package/dist/components/generation-status/generation-status.d.ts.map +1 -0
  465. package/dist/components/generation-status/generation-status.js +3 -271
  466. package/dist/components/generation-status/generation-status.js.map +1 -0
  467. package/dist/components/generation-status/generation-status.styles.d.ts +1 -0
  468. package/dist/components/generation-status/generation-status.styles.d.ts.map +1 -0
  469. package/dist/components/generation-status/generation-status.styles.js +7 -6
  470. package/dist/components/generation-status/generation-status.styles.js.map +1 -0
  471. package/dist/components/graph/graph-loader.d.ts +13 -13
  472. package/dist/components/graph/graph-loader.d.ts.map +1 -0
  473. package/dist/components/graph/graph-loader.js +1 -0
  474. package/dist/components/graph/graph-loader.js.map +1 -0
  475. package/dist/components/graph/graph.class.d.ts +167 -0
  476. package/dist/components/graph/graph.class.d.ts.map +1 -0
  477. package/dist/components/graph/graph.class.js +552 -0
  478. package/dist/components/graph/graph.class.js.map +1 -0
  479. package/dist/components/graph/graph.d.ts +3 -123
  480. package/dist/components/graph/graph.d.ts.map +1 -0
  481. package/dist/components/graph/graph.js +4 -465
  482. package/dist/components/graph/graph.js.map +1 -0
  483. package/dist/components/graph/graph.styles.d.ts +1 -0
  484. package/dist/components/graph/graph.styles.d.ts.map +1 -0
  485. package/dist/components/graph/graph.styles.js +2 -1
  486. package/dist/components/graph/graph.styles.js.map +1 -0
  487. package/dist/components/heatmap/calendar-grid.d.ts +16 -6
  488. package/dist/components/heatmap/calendar-grid.d.ts.map +1 -0
  489. package/dist/components/heatmap/calendar-grid.js +18 -6
  490. package/dist/components/heatmap/calendar-grid.js.map +1 -0
  491. package/dist/components/heatmap/heatmap-scale.d.ts +14 -1
  492. package/dist/components/heatmap/heatmap-scale.d.ts.map +1 -0
  493. package/dist/components/heatmap/heatmap-scale.js +21 -2
  494. package/dist/components/heatmap/heatmap-scale.js.map +1 -0
  495. package/dist/components/heatmap/heatmap.class.d.ts +478 -0
  496. package/dist/components/heatmap/heatmap.class.d.ts.map +1 -0
  497. package/dist/components/heatmap/heatmap.class.js +1211 -0
  498. package/dist/components/heatmap/heatmap.class.js.map +1 -0
  499. package/dist/components/heatmap/heatmap.d.ts +2 -296
  500. package/dist/components/heatmap/heatmap.d.ts.map +1 -0
  501. package/dist/components/heatmap/heatmap.js +3 -892
  502. package/dist/components/heatmap/heatmap.js.map +1 -0
  503. package/dist/components/heatmap/heatmap.styles.d.ts +1 -0
  504. package/dist/components/heatmap/heatmap.styles.d.ts.map +1 -0
  505. package/dist/components/heatmap/heatmap.styles.js +20 -20
  506. package/dist/components/heatmap/heatmap.styles.js.map +1 -0
  507. package/dist/components/json-viewer/json-viewer.class.d.ts +77 -0
  508. package/dist/components/json-viewer/json-viewer.class.d.ts.map +1 -0
  509. package/dist/components/json-viewer/json-viewer.class.js +340 -0
  510. package/dist/components/json-viewer/json-viewer.class.js.map +1 -0
  511. package/dist/components/json-viewer/json-viewer.d.ts +2 -53
  512. package/dist/components/json-viewer/json-viewer.d.ts.map +1 -0
  513. package/dist/components/json-viewer/json-viewer.js +3 -281
  514. package/dist/components/json-viewer/json-viewer.js.map +1 -0
  515. package/dist/components/json-viewer/json-viewer.styles.d.ts +1 -0
  516. package/dist/components/json-viewer/json-viewer.styles.d.ts.map +1 -0
  517. package/dist/components/json-viewer/json-viewer.styles.js +25 -21
  518. package/dist/components/json-viewer/json-viewer.styles.js.map +1 -0
  519. package/dist/components/kbd/kbd.class.d.ts +78 -0
  520. package/dist/components/kbd/kbd.class.d.ts.map +1 -0
  521. package/dist/components/kbd/kbd.class.js +230 -0
  522. package/dist/components/kbd/kbd.class.js.map +1 -0
  523. package/dist/components/kbd/kbd.d.ts +2 -77
  524. package/dist/components/kbd/kbd.d.ts.map +1 -0
  525. package/dist/components/kbd/kbd.js +3 -212
  526. package/dist/components/kbd/kbd.js.map +1 -0
  527. package/dist/components/kbd/kbd.styles.d.ts +1 -0
  528. package/dist/components/kbd/kbd.styles.d.ts.map +1 -0
  529. package/dist/components/kbd/kbd.styles.js +10 -9
  530. package/dist/components/kbd/kbd.styles.js.map +1 -0
  531. package/dist/components/live-region/live-region.class.d.ts +91 -0
  532. package/dist/components/live-region/live-region.class.d.ts.map +1 -0
  533. package/dist/components/live-region/live-region.class.js +188 -0
  534. package/dist/components/live-region/live-region.class.js.map +1 -0
  535. package/dist/components/live-region/live-region.d.ts +2 -81
  536. package/dist/components/live-region/live-region.d.ts.map +1 -0
  537. package/dist/components/live-region/live-region.js +3 -151
  538. package/dist/components/live-region/live-region.js.map +1 -0
  539. package/dist/components/live-region/live-region.styles.d.ts +1 -0
  540. package/dist/components/live-region/live-region.styles.d.ts.map +1 -0
  541. package/dist/components/live-region/live-region.styles.js +1 -0
  542. package/dist/components/live-region/live-region.styles.js.map +1 -0
  543. package/dist/components/map/map-loader.d.ts +5 -2
  544. package/dist/components/map/map-loader.d.ts.map +1 -0
  545. package/dist/components/map/map-loader.js +1 -0
  546. package/dist/components/map/map-loader.js.map +1 -0
  547. package/dist/components/map/map.class.d.ts +121 -0
  548. package/dist/components/map/map.class.d.ts.map +1 -0
  549. package/dist/components/map/map.class.js +450 -0
  550. package/dist/components/map/map.class.js.map +1 -0
  551. package/dist/components/map/map.d.ts +3 -88
  552. package/dist/components/map/map.d.ts.map +1 -0
  553. package/dist/components/map/map.js +4 -412
  554. package/dist/components/map/map.js.map +1 -0
  555. package/dist/components/map/map.styles.d.ts +1 -0
  556. package/dist/components/map/map.styles.d.ts.map +1 -0
  557. package/dist/components/map/map.styles.js +8 -7
  558. package/dist/components/map/map.styles.js.map +1 -0
  559. package/dist/components/markdown/markdown-loader.d.ts +30 -6
  560. package/dist/components/markdown/markdown-loader.d.ts.map +1 -0
  561. package/dist/components/markdown/markdown-loader.js +36 -1
  562. package/dist/components/markdown/markdown-loader.js.map +1 -0
  563. package/dist/components/markdown/markdown.class.d.ts +129 -0
  564. package/dist/components/markdown/markdown.class.d.ts.map +1 -0
  565. package/dist/components/markdown/markdown.class.js +354 -0
  566. package/dist/components/markdown/markdown.class.js.map +1 -0
  567. package/dist/components/markdown/markdown.d.ts +2 -81
  568. package/dist/components/markdown/markdown.d.ts.map +1 -0
  569. package/dist/components/markdown/markdown.js +3 -282
  570. package/dist/components/markdown/markdown.js.map +1 -0
  571. package/dist/components/markdown/markdown.styles.d.ts +1 -0
  572. package/dist/components/markdown/markdown.styles.d.ts.map +1 -0
  573. package/dist/components/markdown/markdown.styles.js +19 -12
  574. package/dist/components/markdown/markdown.styles.js.map +1 -0
  575. package/dist/components/media-card/media-card.class.d.ts +131 -0
  576. package/dist/components/media-card/media-card.class.d.ts.map +1 -0
  577. package/dist/components/media-card/media-card.class.js +272 -0
  578. package/dist/components/media-card/media-card.class.js.map +1 -0
  579. package/dist/components/media-card/media-card.d.ts +2 -122
  580. package/dist/components/media-card/media-card.d.ts.map +1 -0
  581. package/dist/components/media-card/media-card.js +3 -293
  582. package/dist/components/media-card/media-card.js.map +1 -0
  583. package/dist/components/media-card/media-card.styles.d.ts +1 -0
  584. package/dist/components/media-card/media-card.styles.d.ts.map +1 -0
  585. package/dist/components/media-card/media-card.styles.js +8 -7
  586. package/dist/components/media-card/media-card.styles.js.map +1 -0
  587. package/dist/components/mention-popover/mention-popover.class.d.ts +207 -0
  588. package/dist/components/mention-popover/mention-popover.class.d.ts.map +1 -0
  589. package/dist/components/mention-popover/mention-popover.class.js +379 -0
  590. package/dist/components/mention-popover/mention-popover.class.js.map +1 -0
  591. package/dist/components/mention-popover/mention-popover.d.ts +2 -200
  592. package/dist/components/mention-popover/mention-popover.d.ts.map +1 -0
  593. package/dist/components/mention-popover/mention-popover.js +3 -473
  594. package/dist/components/mention-popover/mention-popover.js.map +1 -0
  595. package/dist/components/mention-popover/mention-popover.styles.d.ts +1 -0
  596. package/dist/components/mention-popover/mention-popover.styles.d.ts.map +1 -0
  597. package/dist/components/mention-popover/mention-popover.styles.js +11 -10
  598. package/dist/components/mention-popover/mention-popover.styles.js.map +1 -0
  599. package/dist/components/menu/menu-item.class.d.ts +99 -0
  600. package/dist/components/menu/menu-item.class.d.ts.map +1 -0
  601. package/dist/components/menu/menu-item.class.js +150 -0
  602. package/dist/components/menu/menu-item.class.js.map +1 -0
  603. package/dist/components/menu/menu-item.d.ts +2 -62
  604. package/dist/components/menu/menu-item.d.ts.map +1 -0
  605. package/dist/components/menu/menu-item.js +3 -117
  606. package/dist/components/menu/menu-item.js.map +1 -0
  607. package/dist/components/menu/menu-item.styles.d.ts +1 -0
  608. package/dist/components/menu/menu-item.styles.d.ts.map +1 -0
  609. package/dist/components/menu/menu-item.styles.js +11 -2
  610. package/dist/components/menu/menu-item.styles.js.map +1 -0
  611. package/dist/components/menu/menu.class.d.ts +173 -0
  612. package/dist/components/menu/menu.class.d.ts.map +1 -0
  613. package/dist/components/menu/menu.class.js +378 -0
  614. package/dist/components/menu/menu.class.js.map +1 -0
  615. package/dist/components/menu/menu.d.ts +3 -143
  616. package/dist/components/menu/menu.d.ts.map +1 -0
  617. package/dist/components/menu/menu.js +4 -363
  618. package/dist/components/menu/menu.js.map +1 -0
  619. package/dist/components/menu/menu.styles.d.ts +1 -0
  620. package/dist/components/menu/menu.styles.d.ts.map +1 -0
  621. package/dist/components/menu/menu.styles.js +9 -7
  622. package/dist/components/menu/menu.styles.js.map +1 -0
  623. package/dist/components/model-select/model-select.class.d.ts +177 -0
  624. package/dist/components/model-select/model-select.class.d.ts.map +1 -0
  625. package/dist/components/model-select/model-select.class.js +555 -0
  626. package/dist/components/model-select/model-select.class.js.map +1 -0
  627. package/dist/components/model-select/model-select.d.ts +2 -125
  628. package/dist/components/model-select/model-select.d.ts.map +1 -0
  629. package/dist/components/model-select/model-select.js +3 -488
  630. package/dist/components/model-select/model-select.js.map +1 -0
  631. package/dist/components/model-select/model-select.styles.d.ts +1 -0
  632. package/dist/components/model-select/model-select.styles.d.ts.map +1 -0
  633. package/dist/components/model-select/model-select.styles.js +39 -24
  634. package/dist/components/model-select/model-select.styles.js.map +1 -0
  635. package/dist/components/model-settings-panel/model-settings-panel.class.d.ts +94 -0
  636. package/dist/components/model-settings-panel/model-settings-panel.class.d.ts.map +1 -0
  637. package/dist/components/model-settings-panel/model-settings-panel.class.js +208 -0
  638. package/dist/components/model-settings-panel/model-settings-panel.class.js.map +1 -0
  639. package/dist/components/model-settings-panel/model-settings-panel.d.ts +4 -69
  640. package/dist/components/model-settings-panel/model-settings-panel.d.ts.map +1 -0
  641. package/dist/components/model-settings-panel/model-settings-panel.js +5 -143
  642. package/dist/components/model-settings-panel/model-settings-panel.js.map +1 -0
  643. package/dist/components/model-settings-panel/model-settings-panel.styles.d.ts +1 -0
  644. package/dist/components/model-settings-panel/model-settings-panel.styles.d.ts.map +1 -0
  645. package/dist/components/model-settings-panel/model-settings-panel.styles.js +12 -11
  646. package/dist/components/model-settings-panel/model-settings-panel.styles.js.map +1 -0
  647. package/dist/components/playback/playback.class.d.ts +79 -0
  648. package/dist/components/playback/playback.class.d.ts.map +1 -0
  649. package/dist/components/playback/playback.class.js +238 -0
  650. package/dist/components/playback/playback.class.js.map +1 -0
  651. package/dist/components/playback/playback.d.ts +2 -67
  652. package/dist/components/playback/playback.d.ts.map +1 -0
  653. package/dist/components/playback/playback.js +3 -207
  654. package/dist/components/playback/playback.js.map +1 -0
  655. package/dist/components/playback/playback.styles.d.ts +1 -0
  656. package/dist/components/playback/playback.styles.d.ts.map +1 -0
  657. package/dist/components/playback/playback.styles.js +8 -2
  658. package/dist/components/playback/playback.styles.js.map +1 -0
  659. package/dist/components/responsive-panel/responsive-panel.class.d.ts +164 -0
  660. package/dist/components/responsive-panel/responsive-panel.class.d.ts.map +1 -0
  661. package/dist/components/responsive-panel/responsive-panel.class.js +362 -0
  662. package/dist/components/responsive-panel/responsive-panel.class.js.map +1 -0
  663. package/dist/components/responsive-panel/responsive-panel.d.ts +2 -150
  664. package/dist/components/responsive-panel/responsive-panel.d.ts.map +1 -0
  665. package/dist/components/responsive-panel/responsive-panel.js +3 -363
  666. package/dist/components/responsive-panel/responsive-panel.js.map +1 -0
  667. package/dist/components/responsive-panel/responsive-panel.styles.d.ts +1 -0
  668. package/dist/components/responsive-panel/responsive-panel.styles.d.ts.map +1 -0
  669. package/dist/components/responsive-panel/responsive-panel.styles.js +8 -5
  670. package/dist/components/responsive-panel/responsive-panel.styles.js.map +1 -0
  671. package/dist/components/result-card/result-card.class.d.ts +51 -0
  672. package/dist/components/result-card/result-card.class.d.ts.map +1 -0
  673. package/dist/components/result-card/result-card.class.js +88 -0
  674. package/dist/components/result-card/result-card.class.js.map +1 -0
  675. package/dist/components/result-card/result-card.d.ts +2 -44
  676. package/dist/components/result-card/result-card.d.ts.map +1 -0
  677. package/dist/components/result-card/result-card.js +3 -81
  678. package/dist/components/result-card/result-card.js.map +1 -0
  679. package/dist/components/result-card/result-card.styles.d.ts +1 -0
  680. package/dist/components/result-card/result-card.styles.d.ts.map +1 -0
  681. package/dist/components/result-card/result-card.styles.js +5 -5
  682. package/dist/components/result-card/result-card.styles.js.map +1 -0
  683. package/dist/components/result-card/result-field.class.d.ts +37 -0
  684. package/dist/components/result-card/result-field.class.d.ts.map +1 -0
  685. package/dist/components/result-card/result-field.class.js +86 -0
  686. package/dist/components/result-card/result-field.class.js.map +1 -0
  687. package/dist/components/result-card/result-field.d.ts +2 -36
  688. package/dist/components/result-card/result-field.d.ts.map +1 -0
  689. package/dist/components/result-card/result-field.js +3 -85
  690. package/dist/components/result-card/result-field.js.map +1 -0
  691. package/dist/components/result-card/result-field.styles.d.ts +1 -0
  692. package/dist/components/result-card/result-field.styles.d.ts.map +1 -0
  693. package/dist/components/result-card/result-field.styles.js +3 -2
  694. package/dist/components/result-card/result-field.styles.js.map +1 -0
  695. package/dist/components/select/select.class.d.ts +212 -0
  696. package/dist/components/select/select.class.d.ts.map +1 -0
  697. package/dist/components/select/select.class.js +637 -0
  698. package/dist/components/select/select.class.js.map +1 -0
  699. package/dist/components/select/select.d.ts +3 -166
  700. package/dist/components/select/select.d.ts.map +1 -0
  701. package/dist/components/select/select.js +4 -611
  702. package/dist/components/select/select.js.map +1 -0
  703. package/dist/components/select/select.styles.d.ts +1 -0
  704. package/dist/components/select/select.styles.d.ts.map +1 -0
  705. package/dist/components/select/select.styles.js +35 -34
  706. package/dist/components/select/select.styles.js.map +1 -0
  707. package/dist/components/skeleton/skeleton.class.d.ts +30 -0
  708. package/dist/components/skeleton/skeleton.class.d.ts.map +1 -0
  709. package/dist/components/skeleton/skeleton.class.js +67 -0
  710. package/dist/components/skeleton/skeleton.class.js.map +1 -0
  711. package/dist/components/skeleton/skeleton.d.ts +2 -26
  712. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  713. package/dist/components/skeleton/skeleton.js +3 -60
  714. package/dist/components/skeleton/skeleton.js.map +1 -0
  715. package/dist/components/skeleton/skeleton.styles.d.ts +1 -0
  716. package/dist/components/skeleton/skeleton.styles.d.ts.map +1 -0
  717. package/dist/components/skeleton/skeleton.styles.js +7 -5
  718. package/dist/components/skeleton/skeleton.styles.js.map +1 -0
  719. package/dist/components/slider/slider.class.d.ts +152 -0
  720. package/dist/components/slider/slider.class.d.ts.map +1 -0
  721. package/dist/components/slider/slider.class.js +433 -0
  722. package/dist/components/slider/slider.class.js.map +1 -0
  723. package/dist/components/slider/slider.d.ts +2 -89
  724. package/dist/components/slider/slider.d.ts.map +1 -0
  725. package/dist/components/slider/slider.js +3 -350
  726. package/dist/components/slider/slider.js.map +1 -0
  727. package/dist/components/slider/slider.styles.d.ts +1 -0
  728. package/dist/components/slider/slider.styles.d.ts.map +1 -0
  729. package/dist/components/slider/slider.styles.js +15 -14
  730. package/dist/components/slider/slider.styles.js.map +1 -0
  731. package/dist/components/source-card/source-card.class.d.ts +105 -0
  732. package/dist/components/source-card/source-card.class.d.ts.map +1 -0
  733. package/dist/components/source-card/source-card.class.js +194 -0
  734. package/dist/components/source-card/source-card.class.js.map +1 -0
  735. package/dist/components/source-card/source-card.d.ts +2 -92
  736. package/dist/components/source-card/source-card.d.ts.map +1 -0
  737. package/dist/components/source-card/source-card.js +3 -146
  738. package/dist/components/source-card/source-card.js.map +1 -0
  739. package/dist/components/source-card/source-card.styles.d.ts +1 -0
  740. package/dist/components/source-card/source-card.styles.d.ts.map +1 -0
  741. package/dist/components/source-card/source-card.styles.js +12 -11
  742. package/dist/components/source-card/source-card.styles.js.map +1 -0
  743. package/dist/components/source-list/source-list.class.d.ts +64 -0
  744. package/dist/components/source-list/source-list.class.d.ts.map +1 -0
  745. package/dist/components/source-list/source-list.class.js +129 -0
  746. package/dist/components/source-list/source-list.class.js.map +1 -0
  747. package/dist/components/source-list/source-list.d.ts +2 -63
  748. package/dist/components/source-list/source-list.d.ts.map +1 -0
  749. package/dist/components/source-list/source-list.js +3 -120
  750. package/dist/components/source-list/source-list.js.map +1 -0
  751. package/dist/components/source-list/source-list.styles.d.ts +1 -0
  752. package/dist/components/source-list/source-list.styles.d.ts.map +1 -0
  753. package/dist/components/source-list/source-list.styles.js +5 -4
  754. package/dist/components/source-list/source-list.styles.js.map +1 -0
  755. package/dist/components/sparkline/sparkline.class.d.ts +31 -0
  756. package/dist/components/sparkline/sparkline.class.d.ts.map +1 -0
  757. package/dist/components/sparkline/sparkline.class.js +140 -0
  758. package/dist/components/sparkline/sparkline.class.js.map +1 -0
  759. package/dist/components/sparkline/sparkline.d.ts +2 -30
  760. package/dist/components/sparkline/sparkline.d.ts.map +1 -0
  761. package/dist/components/sparkline/sparkline.js +3 -113
  762. package/dist/components/sparkline/sparkline.js.map +1 -0
  763. package/dist/components/sparkline/sparkline.styles.d.ts +1 -0
  764. package/dist/components/sparkline/sparkline.styles.d.ts.map +1 -0
  765. package/dist/components/sparkline/sparkline.styles.js +3 -2
  766. package/dist/components/sparkline/sparkline.styles.js.map +1 -0
  767. package/dist/components/split/split.class.d.ts +293 -0
  768. package/dist/components/split/split.class.d.ts.map +1 -0
  769. package/dist/components/split/split.class.js +831 -0
  770. package/dist/components/split/split.class.js.map +1 -0
  771. package/dist/components/split/split.d.ts +2 -155
  772. package/dist/components/split/split.d.ts.map +1 -0
  773. package/dist/components/split/split.js +3 -583
  774. package/dist/components/split/split.js.map +1 -0
  775. package/dist/components/split/split.styles.d.ts +1 -0
  776. package/dist/components/split/split.styles.d.ts.map +1 -0
  777. package/dist/components/split/split.styles.js +24 -6
  778. package/dist/components/split/split.styles.js.map +1 -0
  779. package/dist/components/stat/stat.class.d.ts +90 -0
  780. package/dist/components/stat/stat.class.d.ts.map +1 -0
  781. package/dist/components/stat/stat.class.js +249 -0
  782. package/dist/components/stat/stat.class.js.map +1 -0
  783. package/dist/components/stat/stat.d.ts +2 -83
  784. package/dist/components/stat/stat.d.ts.map +1 -0
  785. package/dist/components/stat/stat.js +3 -213
  786. package/dist/components/stat/stat.js.map +1 -0
  787. package/dist/components/stat/stat.styles.d.ts +1 -0
  788. package/dist/components/stat/stat.styles.d.ts.map +1 -0
  789. package/dist/components/stat/stat.styles.js +23 -22
  790. package/dist/components/stat/stat.styles.js.map +1 -0
  791. package/dist/components/stream-status/stream-status.class.d.ts +131 -0
  792. package/dist/components/stream-status/stream-status.class.d.ts.map +1 -0
  793. package/dist/components/stream-status/stream-status.class.js +212 -0
  794. package/dist/components/stream-status/stream-status.class.js.map +1 -0
  795. package/dist/components/stream-status/stream-status.d.ts +3 -110
  796. package/dist/components/stream-status/stream-status.d.ts.map +1 -0
  797. package/dist/components/stream-status/stream-status.js +4 -208
  798. package/dist/components/stream-status/stream-status.js.map +1 -0
  799. package/dist/components/stream-status/stream-status.styles.d.ts +1 -0
  800. package/dist/components/stream-status/stream-status.styles.d.ts.map +1 -0
  801. package/dist/components/stream-status/stream-status.styles.js +7 -6
  802. package/dist/components/stream-status/stream-status.styles.js.map +1 -0
  803. package/dist/components/streaming-text/streaming-text.class.d.ts +105 -0
  804. package/dist/components/streaming-text/streaming-text.class.d.ts.map +1 -0
  805. package/dist/components/streaming-text/streaming-text.class.js +223 -0
  806. package/dist/components/streaming-text/streaming-text.class.js.map +1 -0
  807. package/dist/components/streaming-text/streaming-text.d.ts +3 -98
  808. package/dist/components/streaming-text/streaming-text.d.ts.map +1 -0
  809. package/dist/components/streaming-text/streaming-text.js +4 -207
  810. package/dist/components/streaming-text/streaming-text.js.map +1 -0
  811. package/dist/components/streaming-text/streaming-text.styles.d.ts +1 -0
  812. package/dist/components/streaming-text/streaming-text.styles.d.ts.map +1 -0
  813. package/dist/components/streaming-text/streaming-text.styles.js +6 -4
  814. package/dist/components/streaming-text/streaming-text.styles.js.map +1 -0
  815. package/dist/components/switch/switch.class.d.ts +109 -0
  816. package/dist/components/switch/switch.class.d.ts.map +1 -0
  817. package/dist/components/switch/switch.class.js +225 -0
  818. package/dist/components/switch/switch.class.js.map +1 -0
  819. package/dist/components/switch/switch.d.ts +2 -58
  820. package/dist/components/switch/switch.d.ts.map +1 -0
  821. package/dist/components/switch/switch.js +3 -177
  822. package/dist/components/switch/switch.js.map +1 -0
  823. package/dist/components/switch/switch.styles.d.ts +1 -0
  824. package/dist/components/switch/switch.styles.d.ts.map +1 -0
  825. package/dist/components/switch/switch.styles.js +19 -15
  826. package/dist/components/switch/switch.styles.js.map +1 -0
  827. package/dist/components/table/table.class.d.ts +212 -0
  828. package/dist/components/table/table.class.d.ts.map +1 -0
  829. package/dist/components/table/table.class.js +562 -0
  830. package/dist/components/table/table.class.js.map +1 -0
  831. package/dist/components/table/table.d.ts +3 -184
  832. package/dist/components/table/table.d.ts.map +1 -0
  833. package/dist/components/table/table.js +4 -543
  834. package/dist/components/table/table.js.map +1 -0
  835. package/dist/components/table/table.styles.d.ts +1 -0
  836. package/dist/components/table/table.styles.d.ts.map +1 -0
  837. package/dist/components/table/table.styles.js +9 -8
  838. package/dist/components/table/table.styles.js.map +1 -0
  839. package/dist/components/tabs/tabs.class.d.ts +80 -0
  840. package/dist/components/tabs/tabs.class.d.ts.map +1 -0
  841. package/dist/components/tabs/tabs.class.js +215 -0
  842. package/dist/components/tabs/tabs.class.js.map +1 -0
  843. package/dist/components/tabs/tabs.d.ts +2 -51
  844. package/dist/components/tabs/tabs.d.ts.map +1 -0
  845. package/dist/components/tabs/tabs.js +3 -188
  846. package/dist/components/tabs/tabs.js.map +1 -0
  847. package/dist/components/tabs/tabs.styles.d.ts +1 -0
  848. package/dist/components/tabs/tabs.styles.d.ts.map +1 -0
  849. package/dist/components/tabs/tabs.styles.js +21 -4
  850. package/dist/components/tabs/tabs.styles.js.map +1 -0
  851. package/dist/components/thinking-panel/thinking-panel.class.d.ts +124 -0
  852. package/dist/components/thinking-panel/thinking-panel.class.d.ts.map +1 -0
  853. package/dist/components/thinking-panel/thinking-panel.class.js +259 -0
  854. package/dist/components/thinking-panel/thinking-panel.class.js.map +1 -0
  855. package/dist/components/thinking-panel/thinking-panel.d.ts +2 -121
  856. package/dist/components/thinking-panel/thinking-panel.d.ts.map +1 -0
  857. package/dist/components/thinking-panel/thinking-panel.js +3 -233
  858. package/dist/components/thinking-panel/thinking-panel.js.map +1 -0
  859. package/dist/components/thinking-panel/thinking-panel.styles.d.ts +1 -0
  860. package/dist/components/thinking-panel/thinking-panel.styles.d.ts.map +1 -0
  861. package/dist/components/thinking-panel/thinking-panel.styles.js +19 -12
  862. package/dist/components/thinking-panel/thinking-panel.styles.js.map +1 -0
  863. package/dist/components/time-range/time-range.class.d.ts +137 -0
  864. package/dist/components/time-range/time-range.class.d.ts.map +1 -0
  865. package/dist/components/time-range/time-range.class.js +467 -0
  866. package/dist/components/time-range/time-range.class.js.map +1 -0
  867. package/dist/components/time-range/time-range.d.ts +2 -69
  868. package/dist/components/time-range/time-range.d.ts.map +1 -0
  869. package/dist/components/time-range/time-range.js +3 -398
  870. package/dist/components/time-range/time-range.js.map +1 -0
  871. package/dist/components/time-range/time-range.styles.d.ts +1 -0
  872. package/dist/components/time-range/time-range.styles.d.ts.map +1 -0
  873. package/dist/components/time-range/time-range.styles.js +21 -13
  874. package/dist/components/time-range/time-range.styles.js.map +1 -0
  875. package/dist/components/toast/toast-item.class.d.ts +79 -0
  876. package/dist/components/toast/toast-item.class.d.ts.map +1 -0
  877. package/dist/components/toast/toast-item.class.js +307 -0
  878. package/dist/components/toast/toast-item.class.js.map +1 -0
  879. package/dist/components/toast/toast-item.d.ts +2 -63
  880. package/dist/components/toast/toast-item.d.ts.map +1 -0
  881. package/dist/components/toast/toast-item.js +3 -286
  882. package/dist/components/toast/toast-item.js.map +1 -0
  883. package/dist/components/toast/toast-item.styles.d.ts +1 -0
  884. package/dist/components/toast/toast-item.styles.d.ts.map +1 -0
  885. package/dist/components/toast/toast-item.styles.js +64 -32
  886. package/dist/components/toast/toast-item.styles.js.map +1 -0
  887. package/dist/components/toast/toast.class.d.ts +33 -0
  888. package/dist/components/toast/toast.class.d.ts.map +1 -0
  889. package/dist/components/toast/toast.class.js +59 -0
  890. package/dist/components/toast/toast.class.js.map +1 -0
  891. package/dist/components/toast/toast.d.ts +3 -32
  892. package/dist/components/toast/toast.d.ts.map +1 -0
  893. package/dist/components/toast/toast.js +4 -46
  894. package/dist/components/toast/toast.js.map +1 -0
  895. package/dist/components/toast/toast.styles.d.ts +1 -0
  896. package/dist/components/toast/toast.styles.d.ts.map +1 -0
  897. package/dist/components/toast/toast.styles.js +20 -16
  898. package/dist/components/toast/toast.styles.js.map +1 -0
  899. package/dist/components/toast/toaster.d.ts +1 -0
  900. package/dist/components/toast/toaster.d.ts.map +1 -0
  901. package/dist/components/toast/toaster.js +11 -1
  902. package/dist/components/toast/toaster.js.map +1 -0
  903. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.d.ts +135 -0
  904. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.d.ts.map +1 -0
  905. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.js +257 -0
  906. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.js.map +1 -0
  907. package/dist/components/tool-approval-dialog/tool-approval-dialog.d.ts +3 -130
  908. package/dist/components/tool-approval-dialog/tool-approval-dialog.d.ts.map +1 -0
  909. package/dist/components/tool-approval-dialog/tool-approval-dialog.js +4 -401
  910. package/dist/components/tool-approval-dialog/tool-approval-dialog.js.map +1 -0
  911. package/dist/components/tool-approval-dialog/tool-approval-dialog.styles.d.ts +1 -0
  912. package/dist/components/tool-approval-dialog/tool-approval-dialog.styles.d.ts.map +1 -0
  913. package/dist/components/tool-approval-dialog/tool-approval-dialog.styles.js +22 -18
  914. package/dist/components/tool-approval-dialog/tool-approval-dialog.styles.js.map +1 -0
  915. package/dist/components/tool-call-chip/tool-call-chip.class.d.ts +106 -0
  916. package/dist/components/tool-call-chip/tool-call-chip.class.d.ts.map +1 -0
  917. package/dist/components/tool-call-chip/tool-call-chip.class.js +348 -0
  918. package/dist/components/tool-call-chip/tool-call-chip.class.js.map +1 -0
  919. package/dist/components/tool-call-chip/tool-call-chip.d.ts +2 -89
  920. package/dist/components/tool-call-chip/tool-call-chip.d.ts.map +1 -0
  921. package/dist/components/tool-call-chip/tool-call-chip.js +3 -286
  922. package/dist/components/tool-call-chip/tool-call-chip.js.map +1 -0
  923. package/dist/components/tool-call-chip/tool-call-chip.styles.d.ts +1 -0
  924. package/dist/components/tool-call-chip/tool-call-chip.styles.d.ts.map +1 -0
  925. package/dist/components/tool-call-chip/tool-call-chip.styles.js +22 -21
  926. package/dist/components/tool-call-chip/tool-call-chip.styles.js.map +1 -0
  927. package/dist/components/tool-param-form/tool-param-form.class.d.ts +216 -0
  928. package/dist/components/tool-param-form/tool-param-form.class.d.ts.map +1 -0
  929. package/dist/components/tool-param-form/tool-param-form.class.js +548 -0
  930. package/dist/components/tool-param-form/tool-param-form.class.js.map +1 -0
  931. package/dist/components/tool-param-form/tool-param-form.d.ts +5 -145
  932. package/dist/components/tool-param-form/tool-param-form.d.ts.map +1 -0
  933. package/dist/components/tool-param-form/tool-param-form.js +6 -364
  934. package/dist/components/tool-param-form/tool-param-form.js.map +1 -0
  935. package/dist/components/tool-param-form/tool-param-form.styles.d.ts +1 -0
  936. package/dist/components/tool-param-form/tool-param-form.styles.d.ts.map +1 -0
  937. package/dist/components/tool-param-form/tool-param-form.styles.js +9 -8
  938. package/dist/components/tool-param-form/tool-param-form.styles.js.map +1 -0
  939. package/dist/components/tool-result-dialog/tool-result-dialog.class.d.ts +123 -0
  940. package/dist/components/tool-result-dialog/tool-result-dialog.class.d.ts.map +1 -0
  941. package/dist/components/tool-result-dialog/tool-result-dialog.class.js +357 -0
  942. package/dist/components/tool-result-dialog/tool-result-dialog.class.js.map +1 -0
  943. package/dist/components/tool-result-dialog/tool-result-dialog.d.ts +2 -102
  944. package/dist/components/tool-result-dialog/tool-result-dialog.d.ts.map +1 -0
  945. package/dist/components/tool-result-dialog/tool-result-dialog.js +3 -391
  946. package/dist/components/tool-result-dialog/tool-result-dialog.js.map +1 -0
  947. package/dist/components/tool-result-dialog/tool-result-dialog.styles.d.ts +1 -0
  948. package/dist/components/tool-result-dialog/tool-result-dialog.styles.d.ts.map +1 -0
  949. package/dist/components/tool-result-dialog/tool-result-dialog.styles.js +24 -16
  950. package/dist/components/tool-result-dialog/tool-result-dialog.styles.js.map +1 -0
  951. package/dist/components/tool-result-view/registry.d.ts +1 -8
  952. package/dist/components/tool-result-view/registry.d.ts.map +1 -0
  953. package/dist/components/tool-result-view/registry.js +8 -2
  954. package/dist/components/tool-result-view/registry.js.map +1 -0
  955. package/dist/components/tool-result-view/tool-result-view.class.d.ts +65 -0
  956. package/dist/components/tool-result-view/tool-result-view.class.d.ts.map +1 -0
  957. package/dist/components/tool-result-view/tool-result-view.class.js +124 -0
  958. package/dist/components/tool-result-view/tool-result-view.class.js.map +1 -0
  959. package/dist/components/tool-result-view/tool-result-view.d.ts +4 -55
  960. package/dist/components/tool-result-view/tool-result-view.d.ts.map +1 -0
  961. package/dist/components/tool-result-view/tool-result-view.js +5 -136
  962. package/dist/components/tool-result-view/tool-result-view.js.map +1 -0
  963. package/dist/components/tool-result-view/tool-result-view.styles.d.ts +1 -0
  964. package/dist/components/tool-result-view/tool-result-view.styles.d.ts.map +1 -0
  965. package/dist/components/tool-result-view/tool-result-view.styles.js +1 -0
  966. package/dist/components/tool-result-view/tool-result-view.styles.js.map +1 -0
  967. package/dist/components/tool-select-dialog/tool-select-dialog.class.d.ts +152 -0
  968. package/dist/components/tool-select-dialog/tool-select-dialog.class.d.ts.map +1 -0
  969. package/dist/components/tool-select-dialog/tool-select-dialog.class.js +349 -0
  970. package/dist/components/tool-select-dialog/tool-select-dialog.class.js.map +1 -0
  971. package/dist/components/tool-select-dialog/tool-select-dialog.d.ts +4 -151
  972. package/dist/components/tool-select-dialog/tool-select-dialog.d.ts.map +1 -0
  973. package/dist/components/tool-select-dialog/tool-select-dialog.js +5 -437
  974. package/dist/components/tool-select-dialog/tool-select-dialog.js.map +1 -0
  975. package/dist/components/tool-select-dialog/tool-select-dialog.styles.d.ts +1 -0
  976. package/dist/components/tool-select-dialog/tool-select-dialog.styles.d.ts.map +1 -0
  977. package/dist/components/tool-select-dialog/tool-select-dialog.styles.js +40 -27
  978. package/dist/components/tool-select-dialog/tool-select-dialog.styles.js.map +1 -0
  979. package/dist/components/tree/tree-node.class.d.ts +78 -0
  980. package/dist/components/tree/tree-node.class.d.ts.map +1 -0
  981. package/dist/components/tree/tree-node.class.js +204 -0
  982. package/dist/components/tree/tree-node.class.js.map +1 -0
  983. package/dist/components/tree/tree-node.d.ts +2 -65
  984. package/dist/components/tree/tree-node.d.ts.map +1 -0
  985. package/dist/components/tree/tree-node.js +4 -219
  986. package/dist/components/tree/tree-node.js.map +1 -0
  987. package/dist/components/tree/tree.class.d.ts +130 -0
  988. package/dist/components/tree/tree.class.d.ts.map +1 -0
  989. package/dist/components/tree/tree.class.js +326 -0
  990. package/dist/components/tree/tree.class.js.map +1 -0
  991. package/dist/components/tree/tree.d.ts +3 -120
  992. package/dist/components/tree/tree.d.ts.map +1 -0
  993. package/dist/components/tree/tree.js +5 -324
  994. package/dist/components/tree/tree.js.map +1 -0
  995. package/dist/components/tree/tree.styles.d.ts +1 -0
  996. package/dist/components/tree/tree.styles.d.ts.map +1 -0
  997. package/dist/components/tree/tree.styles.js +1 -0
  998. package/dist/components/tree/tree.styles.js.map +1 -0
  999. package/dist/components/tree/update-cascade.d.ts +1 -0
  1000. package/dist/components/tree/update-cascade.d.ts.map +1 -0
  1001. package/dist/components/tree/update-cascade.js +1 -0
  1002. package/dist/components/tree/update-cascade.js.map +1 -0
  1003. package/dist/components/typing-indicator/typing-indicator.class.d.ts +71 -0
  1004. package/dist/components/typing-indicator/typing-indicator.class.d.ts.map +1 -0
  1005. package/dist/components/typing-indicator/typing-indicator.class.js +107 -0
  1006. package/dist/components/typing-indicator/typing-indicator.class.js.map +1 -0
  1007. package/dist/components/typing-indicator/typing-indicator.d.ts +2 -60
  1008. package/dist/components/typing-indicator/typing-indicator.d.ts.map +1 -0
  1009. package/dist/components/typing-indicator/typing-indicator.js +3 -94
  1010. package/dist/components/typing-indicator/typing-indicator.js.map +1 -0
  1011. package/dist/components/typing-indicator/typing-indicator.styles.d.ts +1 -0
  1012. package/dist/components/typing-indicator/typing-indicator.styles.d.ts.map +1 -0
  1013. package/dist/components/typing-indicator/typing-indicator.styles.js +9 -8
  1014. package/dist/components/typing-indicator/typing-indicator.styles.js.map +1 -0
  1015. package/dist/components/virtual-list/virtual-list.class.d.ts +215 -0
  1016. package/dist/components/virtual-list/virtual-list.class.d.ts.map +1 -0
  1017. package/dist/components/virtual-list/virtual-list.class.js +520 -0
  1018. package/dist/components/virtual-list/virtual-list.class.js.map +1 -0
  1019. package/dist/components/virtual-list/virtual-list.d.ts +2 -173
  1020. package/dist/components/virtual-list/virtual-list.d.ts.map +1 -0
  1021. package/dist/components/virtual-list/virtual-list.js +3 -459
  1022. package/dist/components/virtual-list/virtual-list.js.map +1 -0
  1023. package/dist/components/virtual-list/virtual-list.styles.d.ts +1 -0
  1024. package/dist/components/virtual-list/virtual-list.styles.d.ts.map +1 -0
  1025. package/dist/components/virtual-list/virtual-list.styles.js +14 -1
  1026. package/dist/components/virtual-list/virtual-list.styles.js.map +1 -0
  1027. package/dist/components/widget/widget.class.d.ts +70 -0
  1028. package/dist/components/widget/widget.class.d.ts.map +1 -0
  1029. package/dist/components/widget/widget.class.js +224 -0
  1030. package/dist/components/widget/widget.class.js.map +1 -0
  1031. package/dist/components/widget/widget.d.ts +2 -64
  1032. package/dist/components/widget/widget.d.ts.map +1 -0
  1033. package/dist/components/widget/widget.js +3 -315
  1034. package/dist/components/widget/widget.js.map +1 -0
  1035. package/dist/components/widget/widget.styles.d.ts +1 -0
  1036. package/dist/components/widget/widget.styles.d.ts.map +1 -0
  1037. package/dist/components/widget/widget.styles.js +19 -8
  1038. package/dist/components/widget/widget.styles.js.map +1 -0
  1039. package/dist/components/word-cloud/word-cloud-layout.d.ts +8 -0
  1040. package/dist/components/word-cloud/word-cloud-layout.d.ts.map +1 -0
  1041. package/dist/components/word-cloud/word-cloud-layout.js +21 -6
  1042. package/dist/components/word-cloud/word-cloud-layout.js.map +1 -0
  1043. package/dist/components/word-cloud/word-cloud.class.d.ts +99 -0
  1044. package/dist/components/word-cloud/word-cloud.class.d.ts.map +1 -0
  1045. package/dist/components/word-cloud/word-cloud.class.js +279 -0
  1046. package/dist/components/word-cloud/word-cloud.class.js.map +1 -0
  1047. package/dist/components/word-cloud/word-cloud.d.ts +2 -71
  1048. package/dist/components/word-cloud/word-cloud.d.ts.map +1 -0
  1049. package/dist/components/word-cloud/word-cloud.js +3 -264
  1050. package/dist/components/word-cloud/word-cloud.js.map +1 -0
  1051. package/dist/components/word-cloud/word-cloud.styles.d.ts +1 -0
  1052. package/dist/components/word-cloud/word-cloud.styles.d.ts.map +1 -0
  1053. package/dist/components/word-cloud/word-cloud.styles.js +37 -11
  1054. package/dist/components/word-cloud/word-cloud.styles.js.map +1 -0
  1055. package/dist/internal/a11y.d.ts +1 -0
  1056. package/dist/internal/a11y.d.ts.map +1 -0
  1057. package/dist/internal/a11y.js +1 -0
  1058. package/dist/internal/a11y.js.map +1 -0
  1059. package/dist/internal/anchored-validity.d.ts +2 -0
  1060. package/dist/internal/anchored-validity.d.ts.map +1 -0
  1061. package/dist/internal/anchored-validity.js +87 -0
  1062. package/dist/internal/anchored-validity.js.map +1 -0
  1063. package/dist/internal/announcer.d.ts +1 -0
  1064. package/dist/internal/announcer.d.ts.map +1 -0
  1065. package/dist/internal/announcer.js +1 -0
  1066. package/dist/internal/announcer.js.map +1 -0
  1067. package/dist/internal/form-associated.d.ts +8 -0
  1068. package/dist/internal/form-associated.d.ts.map +1 -0
  1069. package/dist/internal/form-associated.js +44 -4
  1070. package/dist/internal/form-associated.js.map +1 -0
  1071. package/dist/internal/group-by-recency.d.ts +1 -0
  1072. package/dist/internal/group-by-recency.d.ts.map +1 -0
  1073. package/dist/internal/group-by-recency.js +1 -0
  1074. package/dist/internal/group-by-recency.js.map +1 -0
  1075. package/dist/internal/icons.d.ts +1 -0
  1076. package/dist/internal/icons.d.ts.map +1 -0
  1077. package/dist/internal/icons.js +1 -0
  1078. package/dist/internal/icons.js.map +1 -0
  1079. package/dist/internal/localization.d.ts +27 -0
  1080. package/dist/internal/localization.d.ts.map +1 -0
  1081. package/dist/internal/localization.js +141 -0
  1082. package/dist/internal/localization.js.map +1 -0
  1083. package/dist/internal/lyra-element.d.ts +27 -3
  1084. package/dist/internal/lyra-element.d.ts.map +1 -0
  1085. package/dist/internal/lyra-element.js +52 -3
  1086. package/dist/internal/lyra-element.js.map +1 -0
  1087. package/dist/internal/numbers.d.ts +13 -0
  1088. package/dist/internal/numbers.d.ts.map +1 -0
  1089. package/dist/internal/numbers.js +27 -0
  1090. package/dist/internal/numbers.js.map +1 -0
  1091. package/dist/internal/optional-peer-types.d.ts +8 -0
  1092. package/dist/internal/optional-peer-types.d.ts.map +1 -0
  1093. package/dist/internal/optional-peer-types.js +2 -0
  1094. package/dist/internal/optional-peer-types.js.map +1 -0
  1095. package/dist/internal/overlay-manager.d.ts +52 -0
  1096. package/dist/internal/overlay-manager.d.ts.map +1 -0
  1097. package/dist/internal/overlay-manager.js +524 -0
  1098. package/dist/internal/overlay-manager.js.map +1 -0
  1099. package/dist/internal/positioner.d.ts +1 -0
  1100. package/dist/internal/positioner.d.ts.map +1 -0
  1101. package/dist/internal/positioner.js +28 -3
  1102. package/dist/internal/positioner.js.map +1 -0
  1103. package/dist/internal/prefix.d.ts +1 -0
  1104. package/dist/internal/prefix.d.ts.map +1 -0
  1105. package/dist/internal/prefix.js +9 -2
  1106. package/dist/internal/prefix.js.map +1 -0
  1107. package/dist/internal/root-registration-allowlist.d.ts +8 -0
  1108. package/dist/internal/root-registration-allowlist.d.ts.map +1 -0
  1109. package/dist/internal/root-registration-allowlist.js +95 -0
  1110. package/dist/internal/root-registration-allowlist.js.map +1 -0
  1111. package/dist/internal/rtl.d.ts +1 -0
  1112. package/dist/internal/rtl.d.ts.map +1 -0
  1113. package/dist/internal/rtl.js +1 -0
  1114. package/dist/internal/rtl.js.map +1 -0
  1115. package/dist/internal/safe-url.d.ts +13 -0
  1116. package/dist/internal/safe-url.d.ts.map +1 -0
  1117. package/dist/internal/safe-url.js +42 -0
  1118. package/dist/internal/safe-url.js.map +1 -0
  1119. package/dist/internal/scroll-lock.d.ts +1 -0
  1120. package/dist/internal/scroll-lock.d.ts.map +1 -0
  1121. package/dist/internal/scroll-lock.js +1 -0
  1122. package/dist/internal/scroll-lock.js.map +1 -0
  1123. package/dist/internal/tokens.styles.d.ts +1 -0
  1124. package/dist/internal/tokens.styles.d.ts.map +1 -0
  1125. package/dist/internal/tokens.styles.js +224 -11
  1126. package/dist/internal/tokens.styles.js.map +1 -0
  1127. package/dist/lyra.d.ts +56 -5
  1128. package/dist/lyra.d.ts.map +1 -0
  1129. package/dist/lyra.js +7 -2
  1130. package/dist/lyra.js.map +1 -0
  1131. package/llms-full.txt +1079 -472
  1132. package/llms.txt +11 -10
  1133. package/package.json +201 -6
@@ -0,0 +1,1211 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { html } from 'lit';
8
+ import { property, query, state } from 'lit/decorators.js';
9
+ import { styleMap } from 'lit/directives/style-map.js';
10
+ import { LyraElement } from '../../internal/lyra-element.js';
11
+ import { srOnly } from '../../internal/a11y.js';
12
+ import { linearAlpha, linearBucket, minMax, sqrtStep } from './heatmap-scale.js';
13
+ import { styles } from './heatmap.styles.js';
14
+ import { buildCalendarGrid, parseIsoDate, quartileBucket } from './calendar-grid.js';
15
+ const PAD_LEFT = 60;
16
+ const PAD_TOP = 20;
17
+ const FALLBACK_NO_DATA_FILL = 'rgba(128,128,128,0.25)';
18
+ const RAMP_STEPS = 7;
19
+ const FALLBACK_SCALE_LO = '#cde2fb';
20
+ const FALLBACK_SCALE_HI = '#0969da';
21
+ const FALLBACK_LABEL_FONT = '10px sans-serif';
22
+ const CAL_PAD_LEFT = 28;
23
+ const CAL_LABEL_H = 16;
24
+ /** Calendar mode's original fixed cell size — now also the effective fallback
25
+ * the `cellSize` accessor uses in calendar mode when left unset (see its
26
+ * doc comment), so a consumer who never touches `cellSize` sees no change. */
27
+ const CAL_CELL = 11;
28
+ const CAL_GAP = 2;
29
+ /** Matrix mode's original fixed cell size — the effective fallback the
30
+ * `cellSize` accessor uses in matrix mode when left unset. */
31
+ const DEFAULT_MATRIX_CELL_SIZE = 22;
32
+ const DEFAULT_BUCKET_COUNT = 5;
33
+ /**
34
+ * A linear RGB ramp cannot contain more than 256 visually distinct integer
35
+ * steps on any channel. Keeping the bucket count within that bound avoids an
36
+ * untrusted attribute/property value turning the ramp into an unbounded
37
+ * allocation without discarding any useful color resolution.
38
+ */
39
+ export const MAX_BUCKET_COUNT = 256;
40
+ /** Ring stroke width for both the annotation overlay and the keyboard focus ring. */
41
+ const RING_LINE_WIDTH = 2;
42
+ const FALLBACK_FOCUS_RING_COLOR = '#0969da';
43
+ const FALLBACK_ANNOTATION_COLOR = '#cf222e';
44
+ const ARROW_KEYS = new Set(['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight']);
45
+ const MS_PER_DAY = 86_400_000;
46
+ const HEX_RE = /^([0-9a-f]{3}|[0-9a-f]{6})$/i;
47
+ const RGB_RE = /^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/i;
48
+ /**
49
+ * Parses a strict `#rgb` or `#rrggbb` hex string into an `[r, g, b]` triple,
50
+ * or `null` if `hex` isn't one (rather than silently coercing an unparsable
51
+ * string to `0` via `Number.parseInt(..., 16)` returning `NaN`).
52
+ */
53
+ export function hexToRgb(hex) {
54
+ const clean = hex.trim().replace('#', '');
55
+ if (!HEX_RE.test(clean))
56
+ return null;
57
+ const full = clean.length === 3 ? clean.split('').map((c) => c + c).join('') : clean;
58
+ const num = Number.parseInt(full, 16);
59
+ return [(num >> 16) & 255, (num >> 8) & 255, num & 255];
60
+ }
61
+ function parseRgbString(value) {
62
+ const match = RGB_RE.exec(value);
63
+ return match ? [Number(match[1]), Number(match[2]), Number(match[3])] : null;
64
+ }
65
+ let scratchCtx;
66
+ /** A detached 1x1 canvas used solely to normalize CSS color strings. */
67
+ function getScratchCtx() {
68
+ if (scratchCtx === undefined) {
69
+ scratchCtx = document.createElement('canvas').getContext('2d');
70
+ }
71
+ return scratchCtx;
72
+ }
73
+ const warnedInvalidColors = new Set();
74
+ function warnInvalidColor(color) {
75
+ if (warnedInvalidColors.has(color))
76
+ return;
77
+ warnedInvalidColors.add(color);
78
+ console.warn(`<lyra-heatmap> could not parse "${color}" (set via --lyra-heatmap-scale-lo/-hi) as a CSS ` +
79
+ 'color; falling back to the default ramp endpoint.');
80
+ }
81
+ /**
82
+ * Normalizes a bucket count to the safe, renderable range. Non-finite values
83
+ * restore the public default; finite values are floored and clamped to
84
+ * `[2, MAX_BUCKET_COUNT]`. Flooring keeps the ramp array's length in exact
85
+ * agreement with the count used by `quartileBucket()`.
86
+ */
87
+ export function normalizeBucketCount(bucketCount) {
88
+ if (!Number.isFinite(bucketCount)) {
89
+ return DEFAULT_BUCKET_COUNT;
90
+ }
91
+ return Math.min(MAX_BUCKET_COUNT, Math.max(2, Math.floor(bucketCount)));
92
+ }
93
+ const bucketCountConverter = {
94
+ fromAttribute(value) {
95
+ return value === null ? DEFAULT_BUCKET_COUNT : normalizeBucketCount(Number(value));
96
+ },
97
+ toAttribute(value) {
98
+ return String(normalizeBucketCount(value));
99
+ },
100
+ };
101
+ /**
102
+ * Resolves any syntactically valid CSS `<color>` — hex, `rgb()`, `hsl()`,
103
+ * `oklch()`, a named color, etc. — to an `[r, g, b]` triple.
104
+ *
105
+ * Hand-rolling a parser for every CSS color syntax is unnecessary and
106
+ * error-prone (a naive hex-only parser silently turns an unrecognized format
107
+ * into `NaN` -> `0`, i.e. solid black). The canvas 2D context already
108
+ * implements the full CSS color grammar via its `fillStyle` setter, so this
109
+ * normalizes through that instead. Assigning an unparsable string to
110
+ * `fillStyle` is a spec'd no-op (the previous value is kept, it never
111
+ * throws), so a sentinel round-trip is used to detect that case and fall
112
+ * back to `fallbackHex` (with a one-time `console.warn`) instead of
113
+ * silently drawing the wrong color.
114
+ */
115
+ export function resolveRgb(color, fallbackHex) {
116
+ const fallback = hexToRgb(fallbackHex) ?? [0, 0, 0];
117
+ const direct = hexToRgb(color);
118
+ if (direct)
119
+ return direct;
120
+ const ctx = getScratchCtx();
121
+ if (!ctx)
122
+ return fallback;
123
+ const sentinel = 'rgb(1, 2, 3)';
124
+ ctx.fillStyle = sentinel;
125
+ const sentinelNormalized = ctx.fillStyle;
126
+ ctx.fillStyle = color;
127
+ if (ctx.fillStyle === sentinelNormalized && color.trim() !== sentinel) {
128
+ warnInvalidColor(color);
129
+ return fallback;
130
+ }
131
+ const normalized = ctx.fillStyle;
132
+ return hexToRgb(normalized) ?? parseRgbString(normalized) ?? fallback;
133
+ }
134
+ /** Linearly interpolates between two already-resolved `[r, g, b]` triples at `t` in `[0, 1]`. */
135
+ function mixRgb(from, to, t) {
136
+ const clamped = Math.min(1, Math.max(0, t));
137
+ const r = Math.round(from[0] + (to[0] - from[0]) * clamped);
138
+ const g = Math.round(from[1] + (to[1] - from[1]) * clamped);
139
+ const b = Math.round(from[2] + (to[2] - from[2]) * clamped);
140
+ return `rgb(${r}, ${g}, ${b})`;
141
+ }
142
+ /** Linearly interpolates between two CSS colors (any valid syntax) at `t` in `[0, 1]`. */
143
+ export function mixColor(fromColor, toColor, t) {
144
+ return mixRgb(resolveRgb(fromColor, FALLBACK_SCALE_LO), resolveRgb(toColor, FALLBACK_SCALE_HI), t);
145
+ }
146
+ export class LyraHeatmap extends LyraElement {
147
+ constructor() {
148
+ super(...arguments);
149
+ this.rowLabels = [];
150
+ this.colLabels = [];
151
+ this.values = [];
152
+ this.valueLabel = 'value';
153
+ /**
154
+ * `"linear"` (default) maps values linearly to the color ramp in matrix
155
+ * mode, and buckets calendar-mode values via `quartileBucket()` — both
156
+ * unchanged from before this property governed calendar mode too.
157
+ * `"sqrt"` compresses via `sqrtStep()`'s square-root magnitude compression
158
+ * instead, in *both* modes, so one heavy cell/day doesn't wash out the
159
+ * rest of a skewed dataset.
160
+ */
161
+ this.scale = 'linear';
162
+ /**
163
+ * When set, `cellSize` is derived from the host's measured `clientWidth`
164
+ * on every draw (including ResizeObserver-triggered redraws) instead of
165
+ * the fixed `cell-size` attribute, so the grid actually fills the
166
+ * available width. Without this, canvas dimensions are computed purely
167
+ * from `PAD_LEFT + cols * cellSize` (matrix mode) or
168
+ * `CAL_PAD_LEFT + weekCount * cellSize` (calendar mode), so a
169
+ * resize-triggered redraw is a geometric no-op. Originally matrix-mode
170
+ * only; now applies to calendar mode too.
171
+ */
172
+ this.fitToWidth = false;
173
+ this.mode = 'matrix';
174
+ this.days = [];
175
+ /**
176
+ * Calendar mode only (no-op in matrix mode): anchors the calendar grid at
177
+ * a different weekday instead of always Sunday — `0`-`6`, same numbering
178
+ * as `CalendarCellPos.weekday` (`0` Sunday .. `6` Saturday, matching
179
+ * `CalendarCell.weekday`'s existing convention). Threaded into
180
+ * `buildCalendarGrid()`. Defaults to `0` (Sunday), unchanged from before
181
+ * this property existed.
182
+ */
183
+ this.firstDayOfWeek = 0;
184
+ this._bucketCount = DEFAULT_BUCKET_COUNT;
185
+ /** Cells to ring-highlight — `row`/`col` in matrix mode, `date` in calendar mode. See `HeatmapAnnotation`. */
186
+ this.annotations = [];
187
+ this.themeRefreshQueued = false;
188
+ /** The current value range, refreshed once per update cycle by `willUpdate()`. See `computeValueRange()`. */
189
+ this.cachedValueRange = null;
190
+ /**
191
+ * The calendar-mode grid layout, refreshed by `willUpdate()` only when
192
+ * `days` actually changes (see `computeValueRange()`'s twin comment above)
193
+ * — `buildCalendarGrid()` parses every date, filters invalid ones, and does
194
+ * a full `.slice().sort()` for month labels, so recomputing it from
195
+ * `drawCalendar()`, `hitTestCalendar()`, `calendarCellAt()`, and
196
+ * `onCalendarKeyDown()` independently would redo that work 2-4x for a
197
+ * single hover/click/keydown.
198
+ */
199
+ this.cachedCalendarGrid = buildCalendarGrid(this.days);
200
+ this.cachedCalendarSortedValues = [];
201
+ this.cachedCalendarCellsByPos = new Map();
202
+ this.cachedRamp = null;
203
+ /** The cell currently under the pointer (`null` when not hovering one) — drives `[part="tooltip"]`. */
204
+ this.hoverCell = null;
205
+ /** The roving keyboard-focus cell cursor, moved by arrow keys — drives the
206
+ * canvas-drawn focus ring and the `[part="live-region"]` announcement. */
207
+ this.focusedCell = null;
208
+ /** Text of the visually-hidden `aria-live="polite"` status announcement, refreshed on every focus move. */
209
+ this.liveText = '';
210
+ /**
211
+ * Whether `role`/`aria-label` were present on the host *before* this
212
+ * element's own code ever wrote to them — snapshotted once, in the very
213
+ * first `willUpdate()` (guarded by `hasUpdated`, which Lit only flips to
214
+ * `true` after that first update commits). Re-checking `hasAttribute()` on
215
+ * every update instead would self-poison: once this element writes its own
216
+ * default `aria-label` on the first render, `hasAttribute('aria-label')`
217
+ * is permanently `true` afterwards, which would wrongly look like an
218
+ * author-supplied value and freeze the label instead of refreshing it as
219
+ * `values`/`days` change on later updates.
220
+ */
221
+ this.authorSuppliedRole = false;
222
+ this.authorSuppliedAriaLabel = false;
223
+ this.onDprChange = () => {
224
+ this.watchDpr();
225
+ this.draw();
226
+ };
227
+ this.onColorSchemeChange = () => {
228
+ this.refreshTheme();
229
+ };
230
+ this.queueThemeRefresh = () => {
231
+ if (this.themeRefreshQueued)
232
+ return;
233
+ this.themeRefreshQueued = true;
234
+ queueMicrotask(() => {
235
+ this.themeRefreshQueued = false;
236
+ if (this.isConnected)
237
+ this.refreshTheme();
238
+ });
239
+ };
240
+ this.scheduleDraw = () => {
241
+ if (this.drawRafId !== undefined)
242
+ return;
243
+ this.drawRafId = requestAnimationFrame(() => {
244
+ this.drawRafId = undefined;
245
+ if (this.isConnected)
246
+ this.draw();
247
+ });
248
+ };
249
+ this.onPointerMove = (e) => {
250
+ const next = this.hitTest(e.offsetX, e.offsetY);
251
+ if (!this.samePos(this.hoverCell, next))
252
+ this.hoverCell = next;
253
+ };
254
+ this.onPointerLeave = () => {
255
+ this.hoverCell = null;
256
+ };
257
+ this.onCanvasClick = (e) => {
258
+ // Only the click's own hit-tested position counts — a click that lands
259
+ // outside the grid (e.g. on the canvas's own padding) is a genuine
260
+ // out-of-grid click and should do nothing, not fall back to whatever
261
+ // cell happens to still be keyboard-focused from an earlier interaction.
262
+ const pos = this.hitTest(e.offsetX, e.offsetY);
263
+ if (!pos)
264
+ return;
265
+ this.focusedCell = pos;
266
+ this.announce(pos);
267
+ this.emitCellClick(pos);
268
+ };
269
+ this.onKeyDown = (e) => {
270
+ if (this.mode === 'calendar')
271
+ this.onCalendarKeyDown(e);
272
+ else
273
+ this.onMatrixKeyDown(e);
274
+ };
275
+ }
276
+ static { this.styles = [LyraElement.styles, styles, srOnly]; }
277
+ /**
278
+ * Effective per-cell size (CSS px). Originally matrix-mode only; now also
279
+ * governs calendar mode's cell size (replacing the previously hardcoded
280
+ * 11px constant there) once explicitly set. Left unset, each mode keeps
281
+ * its own original default — `DEFAULT_MATRIX_CELL_SIZE` (22) in matrix
282
+ * mode, `CAL_CELL` (11) in calendar mode — so an existing consumer who
283
+ * never touches `cellSize` sees no change in either mode. Set explicitly
284
+ * (attribute or property), the same value governs both modes alike.
285
+ */
286
+ get cellSize() {
287
+ return this._cellSize ?? (this.mode === 'calendar' ? CAL_CELL : DEFAULT_MATRIX_CELL_SIZE);
288
+ }
289
+ set cellSize(value) {
290
+ const oldValue = this._cellSize;
291
+ this._cellSize = value;
292
+ this.requestUpdate('cellSize', oldValue);
293
+ }
294
+ get bucketCount() {
295
+ return this._bucketCount;
296
+ }
297
+ set bucketCount(value) {
298
+ const oldValue = this._bucketCount;
299
+ this._bucketCount = normalizeBucketCount(value);
300
+ this.requestUpdate('bucketCount', oldValue);
301
+ }
302
+ connectedCallback() {
303
+ super.connectedCallback();
304
+ this.resizeObserver = new ResizeObserver(this.scheduleDraw);
305
+ this.resizeObserver.observe(this);
306
+ this.watchDpr();
307
+ this.watchTheme();
308
+ }
309
+ disconnectedCallback() {
310
+ super.disconnectedCallback();
311
+ this.resizeObserver?.disconnect();
312
+ this.dprQuery?.removeEventListener('change', this.onDprChange);
313
+ this.colorSchemeQuery?.removeEventListener('change', this.onColorSchemeChange);
314
+ this.themeObserver?.disconnect();
315
+ this.themeObserver = undefined;
316
+ if (this.drawRafId !== undefined) {
317
+ cancelAnimationFrame(this.drawRafId);
318
+ this.drawRafId = undefined;
319
+ }
320
+ }
321
+ watchDpr() {
322
+ // A MediaQueryList's `matches` is fixed at creation time, so crossing the
323
+ // DPR threshold it was built for means building a fresh one for the new
324
+ // ratio — remove the previous instance's listener first, or it leaks
325
+ // (disconnectedCallback only ever cleans up whichever is current).
326
+ this.dprQuery?.removeEventListener('change', this.onDprChange);
327
+ this.dprQuery = matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);
328
+ this.dprQuery.addEventListener('change', this.onDprChange);
329
+ }
330
+ watchTheme() {
331
+ const view = this.ownerDocument.defaultView;
332
+ if (!view)
333
+ return;
334
+ this.colorSchemeQuery = view.matchMedia?.('(prefers-color-scheme: dark)');
335
+ this.colorSchemeQuery?.addEventListener('change', this.onColorSchemeChange);
336
+ if (typeof MutationObserver === 'undefined')
337
+ return;
338
+ const targets = [this];
339
+ let parent = this.parentElement;
340
+ while (parent) {
341
+ targets.push(parent);
342
+ parent = parent.parentElement;
343
+ }
344
+ this.themeObserver = new MutationObserver(this.queueThemeRefresh);
345
+ for (const target of targets) {
346
+ this.themeObserver.observe(target, {
347
+ attributes: true,
348
+ attributeFilter: ['class', 'style', 'data-theme', 'data-color-scheme'],
349
+ });
350
+ }
351
+ }
352
+ willUpdate(changed) {
353
+ if (changed.has('mode') ||
354
+ changed.has('rowLabels') ||
355
+ changed.has('colLabels') ||
356
+ changed.has('days') ||
357
+ changed.has('firstDayOfWeek') ||
358
+ changed.has('cellInteractive')) {
359
+ // The previous focus/hover cursor may no longer address a real cell
360
+ // once the grid's shape (or mode) changes out from under it —
361
+ // stroking a focus ring at a stale (row, col)/(week, weekday), or
362
+ // leaving the live region announcing a stale value, would be actively
363
+ // misleading, so drop both instead. Reactive-property writes belong in
364
+ // willUpdate() (not updated()), which folds them into this same
365
+ // render rather than scheduling a whole extra update pass. A
366
+ // `firstDayOfWeek` change reshuffles every cell's week/weekday the same
367
+ // way a `days` change does, so it resets the cursor too.
368
+ this.focusedCell = null;
369
+ this.hoverCell = null;
370
+ this.liveText = '';
371
+ }
372
+ // Calendar-mode grid layout depends only on `days`/`firstDayOfWeek` (not
373
+ // `mode`) — rebuilt here, once per cycle, instead of independently by
374
+ // every call site (see `cachedCalendarGrid`'s doc comment).
375
+ if (changed.has('days') || changed.has('firstDayOfWeek') || !this.hasUpdated) {
376
+ this.cachedCalendarGrid = buildCalendarGrid(this.days, this.firstDayOfWeek);
377
+ this.cachedCalendarSortedValues = this.cachedCalendarGrid.cells
378
+ .map((cell) => cell.value)
379
+ .filter((value) => Number.isFinite(value) && value >= 0)
380
+ .sort((a, b) => a - b);
381
+ this.cachedCalendarCellsByPos = new Map(this.cachedCalendarGrid.cells.map((cell) => [`${cell.week}:${cell.weekday}`, cell]));
382
+ }
383
+ if (!this.hasUpdated) {
384
+ this.authorSuppliedRole = this.hasAttribute('role');
385
+ this.authorSuppliedAriaLabel = this.hasAttribute('aria-label');
386
+ }
387
+ if (changed.has('colorSteps') || !this.hasUpdated) {
388
+ if (this.colorSteps && this.colorSteps.length >= 2) {
389
+ this.style.setProperty('--lyra-heatmap-color-steps-gradient', `linear-gradient(to right, ${this.colorSteps.join(', ')})`);
390
+ }
391
+ else {
392
+ this.style.removeProperty('--lyra-heatmap-color-steps-gradient');
393
+ }
394
+ }
395
+ // A hover/keyboard-focus @state() change (hoverCell/focusedCell/liveText)
396
+ // triggers this same willUpdate() but never touches values/days/mode, so
397
+ // gating the O(rows*cols) rescan the same way the focus/hover reset above
398
+ // is gated avoids redoing it on every pointer move.
399
+ if (changed.has('values') || changed.has('days') || changed.has('mode') || !this.hasUpdated) {
400
+ this.cachedValueRange = this.computeValueRange();
401
+ }
402
+ const bounds = this.cachedValueRange;
403
+ const range = bounds ? `${bounds[0]}–${bounds[1]}` : 'no data';
404
+ // Only default role/aria-label when the author hasn't already supplied
405
+ // one — the canvas is a genuinely focusable/interactive control
406
+ // (tabindex="0", click/keydown handlers) plus a live role="status"
407
+ // region, so unconditionally forcing a role here would tell assistive
408
+ // tech to flatten the whole subtree, hiding both from the accessibility
409
+ // tree; it would also silently overwrite any author-supplied
410
+ // role/aria-label on every update.
411
+ if (!this.authorSuppliedRole)
412
+ this.setAttribute('role', 'group');
413
+ if (!this.authorSuppliedAriaLabel) {
414
+ if (this.mode === 'calendar') {
415
+ this.setAttribute('aria-label', `Calendar heatmap of ${this.days.length} days, ${this.valueLabel} range ${range}`);
416
+ }
417
+ else {
418
+ const rows = this.rowLabels.length;
419
+ const cols = this.colLabels.length;
420
+ this.setAttribute('aria-label', `Heatmap of ${rows} × ${cols} cells, ${this.valueLabel} range ${range}`);
421
+ }
422
+ }
423
+ }
424
+ /**
425
+ * The real (non-no-data) value range across `values` (or `days` in
426
+ * calendar mode), or `null` if there is none. Only called from
427
+ * `willUpdate()`, which caches the result in `cachedValueRange` for
428
+ * `render()` and `drawMatrix()` to reuse — `willUpdate()`, `render()`, and
429
+ * `updated()` (which triggers `draw()`) all run within the same Lit update
430
+ * cycle against the same `values`/`days`, so a single scan per cycle
431
+ * suffices instead of one per consumer.
432
+ */
433
+ computeValueRange() {
434
+ const source = this.mode === 'calendar' ? this.days.map((d) => d.value) : this.values.flat();
435
+ return minMax(source.filter((v) => Number.isFinite(v) && v >= 0));
436
+ }
437
+ updated(changed) {
438
+ if ([
439
+ 'values',
440
+ 'rowLabels',
441
+ 'colLabels',
442
+ 'cellSize',
443
+ 'valueLabel',
444
+ 'scale',
445
+ 'fitToWidth',
446
+ 'mode',
447
+ 'days',
448
+ 'bucketCount',
449
+ 'annotations',
450
+ 'columnX',
451
+ 'rowY',
452
+ 'firstDayOfWeek',
453
+ 'focusedCell',
454
+ 'colorSteps',
455
+ ].some((name) => changed.has(name))) {
456
+ this.draw();
457
+ }
458
+ }
459
+ /** Redraws canvas content after an upstream token or theme change. */
460
+ refreshTheme() {
461
+ this.draw();
462
+ }
463
+ /** Reads the customizable ramp endpoints off the host's computed style. */
464
+ scaleEndpoints() {
465
+ const cs = getComputedStyle(this);
466
+ const lo = cs.getPropertyValue('--lyra-heatmap-scale-lo').trim() || FALLBACK_SCALE_LO;
467
+ const hi = cs.getPropertyValue('--lyra-heatmap-scale-hi').trim() || FALLBACK_SCALE_HI;
468
+ return [lo, hi];
469
+ }
470
+ /** Resolves the `--lyra-color-text-quiet` chrome token for axis labels. */
471
+ labelColor() {
472
+ return getComputedStyle(this).getPropertyValue('--lyra-color-text-quiet').trim() || '#6b7280';
473
+ }
474
+ /** Reads the customizable canvas axis/label font off the host's computed style. */
475
+ labelFont() {
476
+ return getComputedStyle(this).getPropertyValue('--lyra-heatmap-label-font').trim() || FALLBACK_LABEL_FONT;
477
+ }
478
+ /** Reads the customizable no-data cell fill off the host's computed style. */
479
+ noDataFill() {
480
+ return getComputedStyle(this).getPropertyValue('--lyra-heatmap-no-data-fill').trim() || FALLBACK_NO_DATA_FILL;
481
+ }
482
+ /** Reads the customizable canvas-drawn keyboard-focus-ring stroke color off the host's computed style. */
483
+ focusRingColor() {
484
+ return (getComputedStyle(this).getPropertyValue('--lyra-heatmap-focus-ring-color').trim() || FALLBACK_FOCUS_RING_COLOR);
485
+ }
486
+ /** Reads the customizable canvas-drawn annotation-ring stroke color off the host's computed style. */
487
+ annotationColor() {
488
+ return (getComputedStyle(this).getPropertyValue('--lyra-heatmap-annotation-color').trim() || FALLBACK_ANNOTATION_COLOR);
489
+ }
490
+ draw() {
491
+ if (this.mode === 'calendar')
492
+ this.drawCalendar();
493
+ else
494
+ this.drawMatrix();
495
+ }
496
+ colorRamp(bucketCount) {
497
+ const steps = this.colorSteps;
498
+ if (steps && steps.length >= 2) {
499
+ const key = `steps ${steps.join(' ')}`;
500
+ if (this.cachedRamp?.key === key)
501
+ return this.cachedRamp;
502
+ const colors = steps.map((c) => {
503
+ const [r, g, b] = resolveRgb(c, FALLBACK_SCALE_LO);
504
+ return `rgb(${r}, ${g}, ${b})`;
505
+ });
506
+ const loRgb = resolveRgb(steps[0], FALLBACK_SCALE_LO);
507
+ const hiRgb = resolveRgb(steps[steps.length - 1], FALLBACK_SCALE_HI);
508
+ this.cachedRamp = { key, colors, loRgb, hiRgb };
509
+ return this.cachedRamp;
510
+ }
511
+ const [scaleLo, scaleHi] = this.scaleEndpoints();
512
+ const normalizedBucketCount = normalizeBucketCount(bucketCount);
513
+ const key = `${scaleLo}\u0000${scaleHi}\u0000${normalizedBucketCount}`;
514
+ if (this.cachedRamp?.key === key)
515
+ return this.cachedRamp;
516
+ const loRgb = resolveRgb(scaleLo, FALLBACK_SCALE_LO);
517
+ const hiRgb = resolveRgb(scaleHi, FALLBACK_SCALE_HI);
518
+ const colors = Array.from({ length: normalizedBucketCount }, (_, i) => mixRgb(loRgb, hiRgb, i / (normalizedBucketCount - 1)));
519
+ this.cachedRamp = { key, colors, loRgb, hiRgb };
520
+ return this.cachedRamp;
521
+ }
522
+ /**
523
+ * Effective per-cell size in calendar mode — mirrors `matrixCellSize()`
524
+ * exactly: `fitToWidth` derives it from the host's measured width,
525
+ * otherwise it's the (possibly explicitly-set) `cellSize` property, which
526
+ * itself falls back to today's original 11px calendar default when left
527
+ * unset (see `cellSize`'s accessor doc comment). Shared by `columnXFor()`,
528
+ * `rowYFor()`, `drawCalendar()`, and the hit-testing below (`weekAtX()`,
529
+ * `weekdayAtY()`, `cellRect()`) so they always agree on exactly the same
530
+ * geometry as what's actually painted.
531
+ */
532
+ calendarCellSize() {
533
+ const { weekCount } = this.cachedCalendarGrid;
534
+ if (this.fitToWidth && weekCount > 0) {
535
+ // Unlike matrix mode's contiguous cells, calendar columns are spaced
536
+ // `cellSize + CAL_GAP` apart (see `columnXFor()`), so the gap has to be
537
+ // subtracted back out here — otherwise the painted width would overshoot
538
+ // `hostWidth` by `weekCount * CAL_GAP` (every column's gap, once each).
539
+ const hostWidth = this.clientWidth || CAL_PAD_LEFT + weekCount * (this.cellSize + CAL_GAP);
540
+ return Math.max(4, (hostWidth - CAL_PAD_LEFT) / weekCount - CAL_GAP);
541
+ }
542
+ return this.cellSize;
543
+ }
544
+ /**
545
+ * Calendar-mode week-column x-origin (canvas-local CSS px) — `columnX(week)`
546
+ * when set, otherwise the original evenly-spaced formula (now derived from
547
+ * `calendarCellSize()` rather than the fixed `CAL_CELL` constant). Shared
548
+ * by every calendar-mode drawing and hit-testing call site (`drawCalendar()`,
549
+ * `hitTestCalendar()`/`weekAtX()`, `cellRect()`) so painted geometry and
550
+ * interactive hit-testing never disagree — mirrors the existing
551
+ * `matrixCellSize()` invariant for matrix mode's
552
+ * `drawMatrix()`/`hitTestMatrix()`/`cellRect()`.
553
+ */
554
+ columnXFor(week) {
555
+ return this.columnX ? this.columnX(week) : CAL_PAD_LEFT + week * (this.calendarCellSize() + CAL_GAP);
556
+ }
557
+ /**
558
+ * Calendar-mode weekday-row y-origin (canvas-local CSS px) — `rowY(weekday)`
559
+ * when set, otherwise the original evenly-spaced formula (now derived from
560
+ * `calendarCellSize()` rather than the fixed `CAL_CELL` constant). The
561
+ * vertical analogue of `columnXFor()`, mirroring its exact
562
+ * dispatch-with-computed-fallback shape and shared by the same
563
+ * drawing/hit-testing/focus-ring call sites.
564
+ */
565
+ rowYFor(weekday) {
566
+ return this.rowY ? this.rowY(weekday) : CAL_LABEL_H + weekday * (this.calendarCellSize() + CAL_GAP);
567
+ }
568
+ /**
569
+ * Inverse of `columnXFor()`: resolves an x position (canvas-local CSS px)
570
+ * to the week column it falls in, or `null` if it's outside every column
571
+ * (`weekCount` is 0, or `x` doesn't land inside `[0, weekCount)`'s span).
572
+ * The default spacing has a closed-form inverse (division); an arbitrary
573
+ * `columnX` override doesn't, so that case instead scans each column's
574
+ * `[columnXFor(week), columnXFor(week + 1))` span — algebraically the same
575
+ * span the default formula's division derives — so hit-testing always
576
+ * agrees with wherever `columnXFor()` actually painted that column.
577
+ */
578
+ weekAtX(x, weekCount) {
579
+ if (!this.columnX) {
580
+ const cellSize = this.calendarCellSize();
581
+ const week = Math.floor((x - CAL_PAD_LEFT) / (cellSize + CAL_GAP));
582
+ return week >= 0 && week < weekCount ? week : null;
583
+ }
584
+ for (let week = 0; week < weekCount; week++) {
585
+ const start = this.columnXFor(week);
586
+ const end = week + 1 < weekCount ? this.columnXFor(week + 1) : start + (this.calendarCellSize() + CAL_GAP);
587
+ if (x >= start && x < end)
588
+ return week;
589
+ }
590
+ return null;
591
+ }
592
+ /**
593
+ * Inverse of `rowYFor()`: resolves a y position (canvas-local CSS px) to
594
+ * the weekday row it falls in (0-6), or `null` if it's outside every row.
595
+ * Mirrors `weekAtX()`'s closed-form-vs-scan split for the same reason: the
596
+ * default spacing has a closed-form inverse; an arbitrary `rowY` override
597
+ * doesn't.
598
+ */
599
+ weekdayAtY(y) {
600
+ if (!this.rowY) {
601
+ const cellSize = this.calendarCellSize();
602
+ const weekday = Math.floor((y - CAL_LABEL_H) / (cellSize + CAL_GAP));
603
+ return weekday >= 0 && weekday < 7 ? weekday : null;
604
+ }
605
+ for (let weekday = 0; weekday < 7; weekday++) {
606
+ const start = this.rowYFor(weekday);
607
+ const end = weekday + 1 < 7 ? this.rowYFor(weekday + 1) : start + (this.calendarCellSize() + CAL_GAP);
608
+ if (y >= start && y < end)
609
+ return weekday;
610
+ }
611
+ return null;
612
+ }
613
+ /**
614
+ * Locale-derived weekday-axis labels for the 7 rows drawn down the left of
615
+ * the calendar grid. Only indices 1, 3, and 5 (relative to `firstWeekStart`)
616
+ * are filled in — matching today's sparse every-other-day label density —
617
+ * the rest stay blank. `firstWeekStart` is always the UTC
618
+ * `firstDayOfWeek`-weekday by construction (see `buildCalendarGrid()`), so
619
+ * weekday index 0..6 is a fixed positional mapping relative to it (with the
620
+ * default `firstDayOfWeek` of 0, that's the original Sun..Sat mapping,
621
+ * unchanged); only the label *text* for indices 1/3/5 is derived here, via
622
+ * `Intl.DateTimeFormat` on a real UTC date that actually falls on that
623
+ * weekday, so it follows the runtime locale instead of a hardcoded English
624
+ * array (see `calendarCellText()`'s tooltip text for the same pattern).
625
+ */
626
+ weekdayLabels(firstWeekStart) {
627
+ const formatter = new Intl.DateTimeFormat(undefined, { weekday: 'short', timeZone: 'UTC' });
628
+ const labels = ['', '', '', '', '', '', ''];
629
+ for (const weekday of [1, 3, 5]) {
630
+ labels[weekday] = formatter.format(new Date(firstWeekStart.getTime() + weekday * MS_PER_DAY));
631
+ }
632
+ return labels;
633
+ }
634
+ drawCalendar() {
635
+ if (!this.canvas)
636
+ return;
637
+ const { cells, weekCount, firstWeekStart, monthLabels } = this.cachedCalendarGrid;
638
+ const cellSize = this.calendarCellSize();
639
+ const w = this.columnXFor(Math.max(1, weekCount));
640
+ // Derived from `rowYFor(7)` (one past the last of the 7 weekday rows), the
641
+ // vertical mirror of `w`'s `columnXFor(weekCount)` — so a custom `rowY`
642
+ // that spaces rows out further than the default formula still gets a
643
+ // canvas tall enough to paint every row, instead of clipping them.
644
+ const h = this.rowYFor(7);
645
+ const dpr = window.devicePixelRatio || 1;
646
+ this.canvas.width = w * dpr;
647
+ this.canvas.height = h * dpr;
648
+ this.canvas.style.width = `${w}px`;
649
+ this.canvas.style.height = `${h}px`;
650
+ const ctx = this.canvas.getContext('2d');
651
+ if (!ctx)
652
+ return;
653
+ ctx.scale(dpr, dpr);
654
+ ctx.clearRect(0, 0, w, h);
655
+ // Normalize at the allocation boundary as a final guard even though the
656
+ // public accessor and attribute converter already normalize their inputs.
657
+ const buckets = normalizeBucketCount(this.bucketCount);
658
+ const ramp = this.colorRamp(buckets).colors;
659
+ const noDataFill = this.noDataFill();
660
+ // Only consulted when `scale === 'sqrt'` — mirrors `drawMatrix()`'s own
661
+ // `hi` bound, reusing the already-cached value range instead of
662
+ // rescanning `sortedValues` for its max.
663
+ const bounds = this.cachedValueRange;
664
+ const lo = bounds ? bounds[0] : 0;
665
+ const hi = bounds ? bounds[1] : 1;
666
+ // Indexed once per draw so every (week, weekday) grid position can be
667
+ // painted below, not just positions with a matching entry in `cells` — a
668
+ // day missing from `days` entirely (a gap in a sparse calendar) still
669
+ // gets a real grid cell (see `calendarCellAt()`'s doc comment for the
670
+ // same `-1` no-data sentinel used here) instead of being left
671
+ // transparent.
672
+ for (let week = 0; week < weekCount; week++) {
673
+ for (let weekday = 0; weekday < 7; weekday++) {
674
+ const value = this.cachedCalendarCellsByPos.get(`${week}:${weekday}`)?.value ?? -1;
675
+ const x = this.columnXFor(week);
676
+ const y = this.rowYFor(weekday);
677
+ if (value < 0 || !Number.isFinite(value)) {
678
+ ctx.fillStyle = noDataFill;
679
+ }
680
+ else if (this.scale === 'sqrt') {
681
+ const step = sqrtStep(value, hi, ramp.length);
682
+ ctx.fillStyle = step < 0 ? noDataFill : ramp[step];
683
+ }
684
+ else if (this.colorSteps && this.colorSteps.length >= 2) {
685
+ const step = linearBucket(value, lo, hi, ramp.length);
686
+ ctx.fillStyle = ramp[step];
687
+ }
688
+ else {
689
+ ctx.fillStyle = ramp[quartileBucket(value, this.cachedCalendarSortedValues, buckets)];
690
+ }
691
+ ctx.fillRect(x, y, cellSize, cellSize);
692
+ }
693
+ }
694
+ // Annotation ring overlay, stroked after the fill pass so it reads
695
+ // clearly over the data-driven cell color — see drawMatrix()'s twin of
696
+ // this block for the matrix-mode equivalent.
697
+ if (this.annotations.length) {
698
+ ctx.lineWidth = RING_LINE_WIDTH;
699
+ ctx.strokeStyle = this.annotationColor();
700
+ for (const ann of this.annotations) {
701
+ if (ann.date == null)
702
+ continue;
703
+ const match = cells.find((c) => c.date === ann.date);
704
+ if (!match)
705
+ continue;
706
+ const x = this.columnXFor(match.week);
707
+ const y = this.rowYFor(match.weekday);
708
+ ctx.strokeRect(x + 0.5, y + 0.5, cellSize - 1, cellSize - 1);
709
+ }
710
+ }
711
+ // Keyboard focus ring, redrawn on top of the fill pass (and any
712
+ // annotation rings) on every draw.
713
+ if (this.focusedCell && 'week' in this.focusedCell) {
714
+ const { week, weekday } = this.focusedCell;
715
+ if (week < weekCount && weekday < 7) {
716
+ ctx.lineWidth = RING_LINE_WIDTH;
717
+ ctx.strokeStyle = this.focusRingColor();
718
+ const x = this.columnXFor(week);
719
+ const y = this.rowYFor(weekday);
720
+ ctx.strokeRect(x + 0.5, y + 0.5, cellSize - 1, cellSize - 1);
721
+ }
722
+ }
723
+ ctx.fillStyle = this.labelColor();
724
+ ctx.font = this.labelFont();
725
+ for (const m of monthLabels) {
726
+ ctx.fillText(m.label, this.columnXFor(m.week), CAL_LABEL_H - 4);
727
+ }
728
+ const WEEKDAY_LABELS = this.weekdayLabels(firstWeekStart);
729
+ WEEKDAY_LABELS.forEach((label, weekday) => {
730
+ if (label)
731
+ ctx.fillText(label, 2, this.rowYFor(weekday) + cellSize - 1);
732
+ });
733
+ }
734
+ /**
735
+ * Effective per-cell size in matrix mode — `fitToWidth` derives it from
736
+ * the host's measured width, otherwise it's the fixed `cellSize`
737
+ * property. Shared by `drawMatrix()` and the pointer/keyboard hit-testing
738
+ * below (`hitTestMatrix()`, `cellRect()`) so they always agree on exactly
739
+ * the same geometry as what's actually painted.
740
+ */
741
+ matrixCellSize(cols) {
742
+ if (this.fitToWidth && cols > 0) {
743
+ const hostWidth = this.clientWidth || PAD_LEFT + cols * this.cellSize;
744
+ return Math.max(4, (hostWidth - PAD_LEFT) / cols);
745
+ }
746
+ return this.cellSize;
747
+ }
748
+ drawMatrix() {
749
+ if (!this.canvas)
750
+ return;
751
+ const rows = this.rowLabels.length;
752
+ const cols = this.colLabels.length;
753
+ const cellSize = this.matrixCellSize(cols);
754
+ const w = PAD_LEFT + cols * cellSize;
755
+ const h = PAD_TOP + rows * cellSize;
756
+ const dpr = window.devicePixelRatio || 1;
757
+ this.canvas.width = w * dpr;
758
+ this.canvas.height = h * dpr;
759
+ this.canvas.style.width = `${w}px`;
760
+ this.canvas.style.height = `${h}px`;
761
+ const ctx = this.canvas.getContext('2d');
762
+ if (!ctx)
763
+ return;
764
+ ctx.scale(dpr, dpr);
765
+ ctx.clearRect(0, 0, w, h);
766
+ const bounds = this.cachedValueRange;
767
+ const lo = bounds ? bounds[0] : 0;
768
+ const hi = bounds ? bounds[1] : 1;
769
+ const rampData = this.colorRamp(RAMP_STEPS);
770
+ const ramp = rampData.colors;
771
+ const { loRgb, hiRgb } = rampData;
772
+ const noDataFill = this.noDataFill();
773
+ for (let r = 0; r < rows; r++) {
774
+ for (let c = 0; c < cols; c++) {
775
+ const v = this.values[r]?.[c] ?? -1;
776
+ const x = PAD_LEFT + c * cellSize;
777
+ const y = PAD_TOP + r * cellSize;
778
+ if (v < 0 || !Number.isFinite(v)) {
779
+ // `v < 0` alone is false for NaN, which would otherwise fall through to
780
+ // the ramp branches below, compute an unparsable rgb(NaN, NaN, NaN)
781
+ // fillStyle, and silently paint with whatever color the previous cell
782
+ // left in `ctx.fillStyle` (canvas ignores unparsable assignments).
783
+ ctx.fillStyle = noDataFill;
784
+ }
785
+ else if (this.scale === 'sqrt') {
786
+ // ramp.length (not the RAMP_STEPS constant) so a colorSteps-driven ramp's
787
+ // actual length governs bucketing -- equal to RAMP_STEPS when colorSteps is unset.
788
+ const step = sqrtStep(v, hi, ramp.length);
789
+ ctx.fillStyle = step < 0 ? noDataFill : ramp[step];
790
+ }
791
+ else if (this.colorSteps && this.colorSteps.length >= 2) {
792
+ const step = linearBucket(v, lo, hi, ramp.length);
793
+ ctx.fillStyle = ramp[step];
794
+ }
795
+ else {
796
+ // linearAlpha() returns a 0.1-1.0 ramp position; reused here as a
797
+ // mix ratio between the two ramp-endpoint colors (rather than as a
798
+ // literal canvas alpha channel) so the 'linear' scale also respects
799
+ // --lyra-heatmap-scale-lo/-hi.
800
+ const t = linearAlpha(v, lo, hi);
801
+ ctx.fillStyle = mixRgb(loRgb, hiRgb, t);
802
+ }
803
+ ctx.fillRect(x, y, cellSize - 1, cellSize - 1);
804
+ }
805
+ }
806
+ // Annotation ring overlay, stroked after the fill pass so it reads
807
+ // clearly over the data-driven cell color. Uses a dedicated
808
+ // --lyra-heatmap-annotation-color token (defaults to --lyra-color-danger)
809
+ // rather than any of the sequential ramp colors, since it needs to stay
810
+ // visible regardless of which point on that ramp it's drawn over.
811
+ if (this.annotations.length) {
812
+ ctx.lineWidth = RING_LINE_WIDTH;
813
+ ctx.strokeStyle = this.annotationColor();
814
+ for (const ann of this.annotations) {
815
+ if (ann.row == null || ann.col == null)
816
+ continue;
817
+ if (ann.row < 0 || ann.row >= rows || ann.col < 0 || ann.col >= cols)
818
+ continue;
819
+ const x = PAD_LEFT + ann.col * cellSize;
820
+ const y = PAD_TOP + ann.row * cellSize;
821
+ ctx.strokeRect(x + 1, y + 1, cellSize - 3, cellSize - 3);
822
+ }
823
+ }
824
+ // Keyboard focus ring, redrawn on top of the fill pass (and any
825
+ // annotation rings) on every draw — canvas has no persistent DOM focus
826
+ // affordance of its own for an individual cell, only a `:focus-visible`
827
+ // outline around the whole element (see heatmap.styles.ts).
828
+ if (this.focusedCell && 'row' in this.focusedCell) {
829
+ const { row, col } = this.focusedCell;
830
+ if (row < rows && col < cols) {
831
+ ctx.lineWidth = RING_LINE_WIDTH;
832
+ ctx.strokeStyle = this.focusRingColor();
833
+ const x = PAD_LEFT + col * cellSize;
834
+ const y = PAD_TOP + row * cellSize;
835
+ ctx.strokeRect(x + 1, y + 1, cellSize - 3, cellSize - 3);
836
+ }
837
+ }
838
+ ctx.fillStyle = this.labelColor();
839
+ ctx.font = this.labelFont();
840
+ this.rowLabels.forEach((label, r) => {
841
+ ctx.fillText(label, 4, PAD_TOP + r * cellSize + cellSize / 2 + 3);
842
+ });
843
+ this.colLabels.forEach((label, c) => {
844
+ ctx.fillText(label, PAD_LEFT + c * cellSize + 2, PAD_TOP - 6);
845
+ });
846
+ }
847
+ /**
848
+ * Maps a pointer position, in canvas-local CSS px (e.g.
849
+ * `PointerEvent.offsetX/offsetY`), to the cell underneath it — or `null`
850
+ * if the pointer is outside the grid. Dispatches on `mode` so callers
851
+ * don't have to.
852
+ */
853
+ hitTest(x, y) {
854
+ return this.mode === 'calendar' ? this.hitTestCalendar(x, y) : this.hitTestMatrix(x, y);
855
+ }
856
+ hitTestMatrix(x, y) {
857
+ const rows = this.rowLabels.length;
858
+ const cols = this.colLabels.length;
859
+ if (rows === 0 || cols === 0)
860
+ return null;
861
+ const cellSize = this.matrixCellSize(cols);
862
+ const col = Math.floor((x - PAD_LEFT) / cellSize);
863
+ const row = Math.floor((y - PAD_TOP) / cellSize);
864
+ if (row < 0 || row >= rows || col < 0 || col >= cols)
865
+ return null;
866
+ const pos = { row, col };
867
+ return this.isCellInteractive(pos) ? pos : null;
868
+ }
869
+ /** The first interactive matrix cell in row-major order, or `null` if every cell is excluded —
870
+ * used by `onMatrixKeyDown()`'s first-arrow-press case. */
871
+ firstInteractiveMatrixCell(rows, cols) {
872
+ for (let r = 0; r < rows; r++) {
873
+ for (let c = 0; c < cols; c++) {
874
+ if (this.isCellInteractive({ row: r, col: c }))
875
+ return { row: r, col: c };
876
+ }
877
+ }
878
+ return null;
879
+ }
880
+ /** Steps from `(row, col)` by `(dRow, dCol)` repeatedly, skipping non-interactive cells, until
881
+ * an interactive cell is found or the grid edge is reached (in which case the original
882
+ * position is returned unchanged, matching today's clamp-at-edge behavior). Bounded: each
883
+ * iteration strictly approaches the edge, so this always terminates. */
884
+ nextInteractiveMatrixCell(row, col, dRow, dCol, rows, cols) {
885
+ let r = row;
886
+ let c = col;
887
+ for (;;) {
888
+ const nr = Math.min(rows - 1, Math.max(0, r + dRow));
889
+ const nc = Math.min(cols - 1, Math.max(0, c + dCol));
890
+ if (nr === r && nc === c)
891
+ return { row, col };
892
+ r = nr;
893
+ c = nc;
894
+ if (this.isCellInteractive({ row: r, col: c }))
895
+ return { row: r, col: c };
896
+ }
897
+ }
898
+ /** Calendar-mode analogue of `firstInteractiveMatrixCell()`. */
899
+ firstInteractiveCalendarCell(weekCount) {
900
+ for (let week = 0; week < weekCount; week++) {
901
+ for (let weekday = 0; weekday < 7; weekday++) {
902
+ if (this.isCellInteractive({ week, weekday }))
903
+ return { week, weekday };
904
+ }
905
+ }
906
+ return null;
907
+ }
908
+ /** Calendar-mode analogue of `nextInteractiveMatrixCell()`. */
909
+ nextInteractiveCalendarCell(week, weekday, dWeek, dWeekday, weekCount) {
910
+ let w = week;
911
+ let d = weekday;
912
+ for (;;) {
913
+ const nw = Math.min(weekCount - 1, Math.max(0, w + dWeek));
914
+ const nd = Math.min(6, Math.max(0, d + dWeekday));
915
+ if (nw === w && nd === d)
916
+ return { week, weekday };
917
+ w = nw;
918
+ d = nd;
919
+ if (this.isCellInteractive({ week: w, weekday: d }))
920
+ return { week: w, weekday: d };
921
+ }
922
+ }
923
+ hitTestCalendar(x, y) {
924
+ const { weekCount } = this.cachedCalendarGrid;
925
+ if (weekCount === 0)
926
+ return null;
927
+ const week = this.weekAtX(x, weekCount);
928
+ const weekday = this.weekdayAtY(y);
929
+ if (week === null || weekday === null)
930
+ return null;
931
+ const pos = { week, weekday };
932
+ return this.isCellInteractive(pos) ? pos : null;
933
+ }
934
+ /**
935
+ * Resolves a (week, weekday) grid position to its real calendar date and
936
+ * value. Computed from grid geometry (`firstWeekStart` + offset), not
937
+ * just looked up in `cells` — so a position with no matching entry in
938
+ * `days` (a gap in a sparse calendar) still resolves to a real ISO date,
939
+ * with a `-1` "no data" sentinel value (the same convention `values`' `-1`
940
+ * sentinel uses in matrix mode), instead of being unresolvable.
941
+ */
942
+ calendarCellAt(pos) {
943
+ const { cells, firstWeekStart } = this.cachedCalendarGrid;
944
+ const match = cells.find((c) => c.week === pos.week && c.weekday === pos.weekday);
945
+ if (match)
946
+ return { date: match.date, value: match.value };
947
+ const date = new Date(firstWeekStart.getTime() + (pos.week * 7 + pos.weekday) * MS_PER_DAY);
948
+ return { date: date.toISOString().slice(0, 10), value: -1 };
949
+ }
950
+ /**
951
+ * Pixel rect (canvas-local CSS px) of a cell — shared by `tooltipStyle()`
952
+ * so the tooltip's position always agrees with the same geometry
953
+ * `drawMatrix()`/`drawCalendar()`/`hitTest*()` use.
954
+ */
955
+ cellRect(pos) {
956
+ if ('week' in pos) {
957
+ const cellSize = this.calendarCellSize();
958
+ return {
959
+ x: this.columnXFor(pos.week),
960
+ y: this.rowYFor(pos.weekday),
961
+ w: cellSize,
962
+ h: cellSize,
963
+ };
964
+ }
965
+ const cellSize = this.matrixCellSize(this.colLabels.length);
966
+ return { x: PAD_LEFT + pos.col * cellSize, y: PAD_TOP + pos.row * cellSize, w: cellSize - 1, h: cellSize - 1 };
967
+ }
968
+ /**
969
+ * Human-readable "<label>: <value>" text for a cell — shared by the hover
970
+ * tooltip and the keyboard-focus live-region announcement, so both always
971
+ * describe a cell the same way. This is the built-in English fallback used
972
+ * when `cellText` isn't set — see `resolveCellText()`.
973
+ */
974
+ defaultCellText(pos) {
975
+ return 'week' in pos ? this.calendarCellText(pos) : this.matrixCellText(pos);
976
+ }
977
+ matrixCellText(pos) {
978
+ const rowLabel = this.rowLabels[pos.row] ?? `row ${pos.row + 1}`;
979
+ const colLabel = this.colLabels[pos.col] ?? `col ${pos.col + 1}`;
980
+ const v = this.values[pos.row]?.[pos.col];
981
+ const valueText = v == null || v < 0 || !Number.isFinite(v) ? 'no data' : String(v);
982
+ return `Row ${rowLabel}, Col ${colLabel}: ${valueText}`;
983
+ }
984
+ calendarCellText(pos) {
985
+ const { date, value } = this.calendarCellAt(pos);
986
+ const label = parseIsoDate(date).toLocaleString(undefined, { month: 'short', day: 'numeric', timeZone: 'UTC' });
987
+ const valueText = value < 0 || !Number.isFinite(value) ? 'no data' : String(value);
988
+ return `${label}: ${valueText}`;
989
+ }
990
+ /** The raw numeric value at a cell position, in either mode — shared by `resolveCellText()`
991
+ * so a custom `cellText` formatter receives the same value the built-in template would use. */
992
+ valueAt(pos) {
993
+ if ('week' in pos)
994
+ return this.calendarCellAt(pos).value;
995
+ return this.values[pos.row]?.[pos.col] ?? -1;
996
+ }
997
+ /** Dispatches to the host-provided `cellText` formatter when set, otherwise the built-in template. */
998
+ resolveCellText(pos) {
999
+ return this.cellText ? this.cellText(pos, this.valueAt(pos)) : this.defaultCellText(pos);
1000
+ }
1001
+ /** Dispatches to the host-provided `cellInteractive` predicate when set, otherwise `true`
1002
+ * (every cell interactive, today's unchanged default). */
1003
+ isCellInteractive(pos) {
1004
+ return this.cellInteractive?.(pos, this.valueAt(pos)) ?? true;
1005
+ }
1006
+ /** Refreshes the visually-hidden live-region text for a newly-focused cell. */
1007
+ announce(pos) {
1008
+ this.liveText = this.resolveCellText(pos);
1009
+ }
1010
+ emitCellClick(pos) {
1011
+ if ('week' in pos) {
1012
+ const { date, value } = this.calendarCellAt(pos);
1013
+ this.emit('lyra-cell-click', { date, value });
1014
+ }
1015
+ else {
1016
+ const value = this.values[pos.row]?.[pos.col] ?? -1;
1017
+ this.emit('lyra-cell-click', { row: pos.row, col: pos.col, value });
1018
+ }
1019
+ }
1020
+ /** Inline `style` for `[part="tooltip"]`, centered above the given cell. */
1021
+ tooltipStyle(pos) {
1022
+ const rect = this.cellRect(pos);
1023
+ return { left: `${rect.x + rect.w / 2}px`, top: `${rect.y}px` };
1024
+ }
1025
+ /**
1026
+ * Value-equality check for a `CellPos`, since `hoverCell` is assigned a
1027
+ * fresh object literal on every `pointermove` — Lit's `@state()`
1028
+ * change-detection only no-ops an identical *reference*, so without this,
1029
+ * `{row,col} !== {row,col}` by reference triggers a full canvas clear +
1030
+ * redraw on every pixel of pointer movement, even within the same cell.
1031
+ */
1032
+ samePos(a, b) {
1033
+ if (a === b)
1034
+ return true;
1035
+ if (!a || !b)
1036
+ return false;
1037
+ if ('week' in a && 'week' in b)
1038
+ return a.week === b.week && a.weekday === b.weekday;
1039
+ if ('row' in a && 'row' in b)
1040
+ return a.row === b.row && a.col === b.col;
1041
+ return false;
1042
+ }
1043
+ onMatrixKeyDown(e) {
1044
+ const rows = this.rowLabels.length;
1045
+ const cols = this.colLabels.length;
1046
+ if (rows === 0 || cols === 0)
1047
+ return;
1048
+ if (e.key === 'Enter' || e.key === ' ') {
1049
+ e.preventDefault();
1050
+ if (this.focusedCell)
1051
+ this.emitCellClick(this.focusedCell);
1052
+ return;
1053
+ }
1054
+ if (!ARROW_KEYS.has(e.key))
1055
+ return;
1056
+ e.preventDefault();
1057
+ if (!this.focusedCell || !('row' in this.focusedCell)) {
1058
+ const next = this.firstInteractiveMatrixCell(rows, cols);
1059
+ if (!next)
1060
+ return;
1061
+ this.focusedCell = next;
1062
+ this.announce(next);
1063
+ return;
1064
+ }
1065
+ const { row, col } = this.focusedCell;
1066
+ let dRow = 0;
1067
+ let dCol = 0;
1068
+ if (e.key === 'ArrowUp')
1069
+ dRow = -1;
1070
+ else if (e.key === 'ArrowDown')
1071
+ dRow = 1;
1072
+ else if (e.key === 'ArrowLeft')
1073
+ dCol = -1;
1074
+ else if (e.key === 'ArrowRight')
1075
+ dCol = 1;
1076
+ const next = this.nextInteractiveMatrixCell(row, col, dRow, dCol, rows, cols);
1077
+ this.focusedCell = next;
1078
+ this.announce(next);
1079
+ }
1080
+ onCalendarKeyDown(e) {
1081
+ const { weekCount } = this.cachedCalendarGrid;
1082
+ if (weekCount === 0)
1083
+ return;
1084
+ if (e.key === 'Enter' || e.key === ' ') {
1085
+ e.preventDefault();
1086
+ if (this.focusedCell)
1087
+ this.emitCellClick(this.focusedCell);
1088
+ return;
1089
+ }
1090
+ if (!ARROW_KEYS.has(e.key))
1091
+ return;
1092
+ e.preventDefault();
1093
+ if (!this.focusedCell || !('week' in this.focusedCell)) {
1094
+ const next = this.firstInteractiveCalendarCell(weekCount);
1095
+ if (!next)
1096
+ return;
1097
+ this.focusedCell = next;
1098
+ this.announce(next);
1099
+ return;
1100
+ }
1101
+ const { week, weekday } = this.focusedCell;
1102
+ let dWeek = 0;
1103
+ let dWeekday = 0;
1104
+ if (e.key === 'ArrowUp')
1105
+ dWeekday = -1;
1106
+ else if (e.key === 'ArrowDown')
1107
+ dWeekday = 1;
1108
+ else if (e.key === 'ArrowLeft')
1109
+ dWeek = -1;
1110
+ else if (e.key === 'ArrowRight')
1111
+ dWeek = 1;
1112
+ const next = this.nextInteractiveCalendarCell(week, weekday, dWeek, dWeekday, weekCount);
1113
+ this.focusedCell = next;
1114
+ this.announce(next);
1115
+ }
1116
+ render() {
1117
+ const range = this.cachedValueRange;
1118
+ const labeledAnnotations = this.annotations.filter((a) => a.label);
1119
+ return html `
1120
+ <div part="base">
1121
+ <canvas
1122
+ part="canvas"
1123
+ tabindex="0"
1124
+ @pointermove=${this.onPointerMove}
1125
+ @pointerleave=${this.onPointerLeave}
1126
+ @click=${this.onCanvasClick}
1127
+ @keydown=${this.onKeyDown}
1128
+ ></canvas>
1129
+ <div
1130
+ part="tooltip"
1131
+ ?hidden=${!this.hoverCell}
1132
+ style=${styleMap(this.hoverCell ? this.tooltipStyle(this.hoverCell) : {})}
1133
+ >
1134
+ ${this.hoverCell ? this.resolveCellText(this.hoverCell) : ''}
1135
+ </div>
1136
+ <div part="live-region" class="sr-only" role="status" aria-live="polite">${this.liveText}</div>
1137
+ <div part="legend">
1138
+ <span part="legend-lo">${range ? range[0] : ''}</span>
1139
+ <span class="bar"></span>
1140
+ <span part="legend-hi">${range ? range[1] : ''}</span>
1141
+ <span>${this.valueLabel}</span>
1142
+ ${labeledAnnotations.map((a) => html `<span part="legend-annotation"><span class="ring-swatch"></span>${a.label}</span>`)}
1143
+ </div>
1144
+ </div>
1145
+ `;
1146
+ }
1147
+ }
1148
+ __decorate([
1149
+ property({ attribute: false })
1150
+ ], LyraHeatmap.prototype, "rowLabels", void 0);
1151
+ __decorate([
1152
+ property({ attribute: false })
1153
+ ], LyraHeatmap.prototype, "colLabels", void 0);
1154
+ __decorate([
1155
+ property({ attribute: false })
1156
+ ], LyraHeatmap.prototype, "values", void 0);
1157
+ __decorate([
1158
+ property({ type: Number, attribute: 'cell-size' })
1159
+ ], LyraHeatmap.prototype, "cellSize", null);
1160
+ __decorate([
1161
+ property({ attribute: 'value-label' })
1162
+ ], LyraHeatmap.prototype, "valueLabel", void 0);
1163
+ __decorate([
1164
+ property()
1165
+ ], LyraHeatmap.prototype, "scale", void 0);
1166
+ __decorate([
1167
+ property({ type: Boolean, attribute: 'fit-to-width' })
1168
+ ], LyraHeatmap.prototype, "fitToWidth", void 0);
1169
+ __decorate([
1170
+ property()
1171
+ ], LyraHeatmap.prototype, "mode", void 0);
1172
+ __decorate([
1173
+ property({ attribute: false })
1174
+ ], LyraHeatmap.prototype, "days", void 0);
1175
+ __decorate([
1176
+ property({ type: Number, attribute: 'first-day-of-week' })
1177
+ ], LyraHeatmap.prototype, "firstDayOfWeek", void 0);
1178
+ __decorate([
1179
+ property({ attribute: 'bucket-count', converter: bucketCountConverter })
1180
+ ], LyraHeatmap.prototype, "bucketCount", null);
1181
+ __decorate([
1182
+ property({ attribute: false })
1183
+ ], LyraHeatmap.prototype, "annotations", void 0);
1184
+ __decorate([
1185
+ property({ attribute: false })
1186
+ ], LyraHeatmap.prototype, "cellText", void 0);
1187
+ __decorate([
1188
+ property({ attribute: false })
1189
+ ], LyraHeatmap.prototype, "cellInteractive", void 0);
1190
+ __decorate([
1191
+ property({ attribute: false })
1192
+ ], LyraHeatmap.prototype, "colorSteps", void 0);
1193
+ __decorate([
1194
+ property({ attribute: false })
1195
+ ], LyraHeatmap.prototype, "columnX", void 0);
1196
+ __decorate([
1197
+ property({ attribute: false })
1198
+ ], LyraHeatmap.prototype, "rowY", void 0);
1199
+ __decorate([
1200
+ query('canvas')
1201
+ ], LyraHeatmap.prototype, "canvas", void 0);
1202
+ __decorate([
1203
+ state()
1204
+ ], LyraHeatmap.prototype, "hoverCell", void 0);
1205
+ __decorate([
1206
+ state()
1207
+ ], LyraHeatmap.prototype, "focusedCell", void 0);
1208
+ __decorate([
1209
+ state()
1210
+ ], LyraHeatmap.prototype, "liveText", void 0);
1211
+ //# sourceMappingURL=heatmap.class.js.map