@cognite/aura 0.3.4 → 1.46104.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 (446) hide show
  1. package/CHANGELOG.md +264 -0
  2. package/DESIGN.md +638 -281
  3. package/LICENSE +21 -0
  4. package/README.md +48 -13
  5. package/dist/colors-deprecated.css +587 -0
  6. package/dist/colors.css +803 -830
  7. package/dist/components/index.d.ts +63 -57
  8. package/dist/components/index.js +62 -59
  9. package/dist/components/index.js.map +1 -0
  10. package/dist/components/ui/core/accordion/accordion.d.ts +19 -18
  11. package/dist/components/ui/core/accordion/accordion.js +99 -78
  12. package/dist/components/ui/core/accordion/accordion.js.map +1 -0
  13. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.d.ts +8 -0
  14. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.js +125 -0
  15. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.js.map +1 -0
  16. package/dist/components/ui/core/action-toolbar/action-toolbar.d.ts +31 -31
  17. package/dist/components/ui/core/action-toolbar/action-toolbar.js +156 -106
  18. package/dist/components/ui/core/action-toolbar/action-toolbar.js.map +1 -0
  19. package/dist/components/ui/core/alert/alert.d.ts +25 -25
  20. package/dist/components/ui/core/alert/alert.js +181 -152
  21. package/dist/components/ui/core/alert/alert.js.map +1 -0
  22. package/dist/components/ui/core/avatar/avatar.d.ts +10 -9
  23. package/dist/components/ui/core/avatar/avatar.js +75 -65
  24. package/dist/components/ui/core/avatar/avatar.js.map +1 -0
  25. package/dist/components/ui/core/badge/badge.d.ts +13 -12
  26. package/dist/components/ui/core/badge/badge.js +88 -72
  27. package/dist/components/ui/core/badge/badge.js.map +1 -0
  28. package/dist/components/ui/core/banner/banner.d.ts +18 -18
  29. package/dist/components/ui/core/banner/banner.js +179 -142
  30. package/dist/components/ui/core/banner/banner.js.map +1 -0
  31. package/dist/components/ui/core/breadcrumb/breadcrumb.d.ts +12 -12
  32. package/dist/components/ui/core/breadcrumb/breadcrumb.js +139 -104
  33. package/dist/components/ui/core/breadcrumb/breadcrumb.js.map +1 -0
  34. package/dist/components/ui/core/button/button.d.ts +7 -7
  35. package/dist/components/ui/core/button/button.gallery.d.ts +2 -0
  36. package/dist/components/ui/core/button/button.gallery.js +76 -0
  37. package/dist/components/ui/core/button/button.gallery.js.map +1 -0
  38. package/dist/components/ui/core/button/button.js +57 -47
  39. package/dist/components/ui/core/button/button.js.map +1 -0
  40. package/dist/components/ui/core/button-group/button-group.d.ts +9 -9
  41. package/dist/components/ui/core/button-group/button-group.js +50 -40
  42. package/dist/components/ui/core/button-group/button-group.js.map +1 -0
  43. package/dist/components/ui/core/calendar/calendar-header.d.ts +7 -7
  44. package/dist/components/ui/core/calendar/calendar-header.js +102 -63
  45. package/dist/components/ui/core/calendar/calendar-header.js.map +1 -0
  46. package/dist/components/ui/core/calendar/calendar-utils.d.ts +30 -30
  47. package/dist/components/ui/core/calendar/calendar-utils.js +116 -39
  48. package/dist/components/ui/core/calendar/calendar-utils.js.map +1 -0
  49. package/dist/components/ui/core/calendar/calendar.d.ts +10 -10
  50. package/dist/components/ui/core/calendar/calendar.js +95 -66
  51. package/dist/components/ui/core/calendar/calendar.js.map +1 -0
  52. package/dist/components/ui/core/calendar/constants.js +3 -0
  53. package/dist/components/ui/core/calendar/constants.js.map +1 -0
  54. package/dist/components/ui/core/card/card.d.ts +20 -20
  55. package/dist/components/ui/core/card/card.js +133 -104
  56. package/dist/components/ui/core/card/card.js.map +1 -0
  57. package/dist/components/ui/core/chart/chart.d.ts +55 -53
  58. package/dist/components/ui/core/chart/chart.js +196 -116
  59. package/dist/components/ui/core/chart/chart.js.map +1 -0
  60. package/dist/components/ui/core/chart/index.d.ts +2 -2
  61. package/dist/components/ui/core/chart/index.js +3 -2
  62. package/dist/components/ui/core/chart/index.js.map +1 -0
  63. package/dist/components/ui/core/checkbox/checkbox.d.ts +9 -9
  64. package/dist/components/ui/core/checkbox/checkbox.js +88 -68
  65. package/dist/components/ui/core/checkbox/checkbox.js.map +1 -0
  66. package/dist/components/ui/core/checkbox/checkbox.metadata.d.ts +1 -1
  67. package/dist/components/ui/core/checkbox/checkbox.metadata.js +6 -7
  68. package/dist/components/ui/core/checkbox/checkbox.metadata.js.map +1 -0
  69. package/dist/components/ui/core/code-block/code-block.d.ts +19 -19
  70. package/dist/components/ui/core/code-block/code-block.js +259 -175
  71. package/dist/components/ui/core/code-block/code-block.js.map +1 -0
  72. package/dist/components/ui/core/collapsible/collapsible.d.ts +5 -5
  73. package/dist/components/ui/core/collapsible/collapsible.js +36 -30
  74. package/dist/components/ui/core/collapsible/collapsible.js.map +1 -0
  75. package/dist/components/ui/core/combobox/combobox.d.ts +13 -13
  76. package/dist/components/ui/core/combobox/combobox.js +89 -40
  77. package/dist/components/ui/core/combobox/combobox.js.map +1 -0
  78. package/dist/components/ui/core/command/command.d.ts +20 -18
  79. package/dist/components/ui/core/command/command.js +137 -85
  80. package/dist/components/ui/core/command/command.js.map +1 -0
  81. package/dist/components/ui/core/conversation/conversation.d.ts +14 -0
  82. package/dist/components/ui/core/conversation/conversation.js +51 -0
  83. package/dist/components/ui/core/conversation/conversation.js.map +1 -0
  84. package/dist/components/ui/core/count/count.d.ts +8 -6
  85. package/dist/components/ui/core/count/count.js +51 -21
  86. package/dist/components/ui/core/count/count.js.map +1 -0
  87. package/dist/components/ui/core/data-grid/data-grid-cell.d.ts +7 -7
  88. package/dist/components/ui/core/data-grid/data-grid-cell.js +23 -0
  89. package/dist/components/ui/core/data-grid/data-grid-cell.js.map +1 -0
  90. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.d.ts +14 -0
  91. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.js +36 -0
  92. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.js.map +1 -0
  93. package/dist/components/ui/core/data-grid/data-grid-filter-panel.d.ts +41 -0
  94. package/dist/components/ui/core/data-grid/data-grid-filter-panel.js +273 -0
  95. package/dist/components/ui/core/data-grid/data-grid-filter-panel.js.map +1 -0
  96. package/dist/components/ui/core/data-grid/data-grid-footer.d.ts +6 -0
  97. package/dist/components/ui/core/data-grid/data-grid-footer.js +34 -0
  98. package/dist/components/ui/core/data-grid/data-grid-footer.js.map +1 -0
  99. package/dist/components/ui/core/data-grid/data-grid-header-row.d.ts +10 -10
  100. package/dist/components/ui/core/data-grid/data-grid-header-row.js +70 -0
  101. package/dist/components/ui/core/data-grid/data-grid-header-row.js.map +1 -0
  102. package/dist/components/ui/core/data-grid/data-grid-header.d.ts +11 -0
  103. package/dist/components/ui/core/data-grid/data-grid-header.js +67 -0
  104. package/dist/components/ui/core/data-grid/data-grid-header.js.map +1 -0
  105. package/dist/components/ui/core/data-grid/data-grid-row.d.ts +15 -15
  106. package/dist/components/ui/core/data-grid/data-grid-row.js +105 -0
  107. package/dist/components/ui/core/data-grid/data-grid-row.js.map +1 -0
  108. package/dist/components/ui/core/data-grid/data-grid.d.ts +85 -35
  109. package/dist/components/ui/core/data-grid/data-grid.fixtures.d.ts +7 -7
  110. package/dist/components/ui/core/data-grid/data-grid.fixtures.js +139 -0
  111. package/dist/components/ui/core/data-grid/data-grid.fixtures.js.map +1 -0
  112. package/dist/components/ui/core/data-grid/data-grid.js +404 -0
  113. package/dist/components/ui/core/data-grid/data-grid.js.map +1 -0
  114. package/dist/components/ui/core/data-grid/data-grid.utils.d.ts +3 -3
  115. package/dist/components/ui/core/data-grid/data-grid.utils.js +51 -0
  116. package/dist/components/ui/core/data-grid/data-grid.utils.js.map +1 -0
  117. package/dist/components/ui/core/data-grid/index.d.ts +4 -0
  118. package/dist/components/ui/core/data-grid/index.js +5 -0
  119. package/dist/components/ui/core/data-grid/index.js.map +1 -0
  120. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.d.ts +11 -13
  121. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.js +85 -61
  122. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.js.map +1 -0
  123. package/dist/components/ui/core/date-time-pickers/date-picker/index.d.ts +3 -3
  124. package/dist/components/ui/core/date-time-pickers/date-picker/index.js +3 -0
  125. package/dist/components/ui/core/date-time-pickers/date-picker/index.js.map +1 -0
  126. package/dist/components/ui/core/date-time-pickers/date-picker/types.d.ts +14 -14
  127. package/dist/components/ui/core/date-time-pickers/date-picker/types.js +3 -0
  128. package/dist/components/ui/core/date-time-pickers/date-picker/types.js.map +1 -0
  129. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.d.ts +2 -2
  130. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.js +51 -36
  131. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.js.map +1 -0
  132. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.d.ts +11 -13
  133. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.js +89 -64
  134. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.js.map +1 -0
  135. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.d.ts +3 -3
  136. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.js +3 -0
  137. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.js.map +1 -0
  138. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.d.ts +20 -20
  139. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.js +3 -0
  140. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.js.map +1 -0
  141. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.d.ts +4 -4
  142. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.js +95 -60
  143. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.js.map +1 -0
  144. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.d.ts +15 -0
  145. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.js +120 -0
  146. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.js.map +1 -0
  147. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.d.ts +3 -1
  148. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.js +3 -0
  149. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.js.map +1 -0
  150. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.d.ts +25 -32
  151. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.js +3 -0
  152. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.js.map +1 -0
  153. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.d.ts +2 -2
  154. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.js +78 -0
  155. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.js.map +1 -0
  156. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.d.ts +13 -15
  157. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.js +165 -119
  158. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.js.map +1 -0
  159. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.d.ts +3 -3
  160. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.js +3 -0
  161. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.js.map +1 -0
  162. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.d.ts +37 -37
  163. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.js +3 -0
  164. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.js.map +1 -0
  165. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.d.ts +3 -3
  166. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.js +163 -104
  167. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.js.map +1 -0
  168. package/dist/components/ui/core/date-time-pickers/index.d.ts +17 -12
  169. package/dist/components/ui/core/date-time-pickers/index.js +10 -6
  170. package/dist/components/ui/core/date-time-pickers/index.js.map +1 -0
  171. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.d.ts +5 -5
  172. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.js +52 -42
  173. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.js.map +1 -0
  174. package/dist/components/ui/core/date-time-pickers/shared/constants.d.ts +6 -1
  175. package/dist/components/ui/core/date-time-pickers/shared/constants.js +23 -0
  176. package/dist/components/ui/core/date-time-pickers/shared/constants.js.map +1 -0
  177. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.d.ts +16 -15
  178. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.js +87 -64
  179. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.js.map +1 -0
  180. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.d.ts +10 -9
  181. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.js +89 -38
  182. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.js.map +1 -0
  183. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.d.ts +5 -5
  184. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.js +34 -23
  185. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.js.map +1 -0
  186. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.d.ts +23 -23
  187. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.js +95 -52
  188. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.js.map +1 -0
  189. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.d.ts +5 -5
  190. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.js +22 -18
  191. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.js.map +1 -0
  192. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.d.ts +19 -19
  193. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.js +41 -24
  194. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.js.map +1 -0
  195. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.d.ts +13 -13
  196. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.js +33 -24
  197. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.js.map +1 -0
  198. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.d.ts +5 -5
  199. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.js +9 -4
  200. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.js.map +1 -0
  201. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.d.ts +13 -9
  202. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.js +22 -17
  203. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.js.map +1 -0
  204. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.d.ts +2 -2
  205. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.js +3 -0
  206. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.js.map +1 -0
  207. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.d.ts +13 -13
  208. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.js +49 -40
  209. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.js.map +1 -0
  210. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.d.ts +7 -7
  211. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.js +41 -34
  212. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.js.map +1 -0
  213. package/dist/components/ui/core/date-time-pickers/time-picker/index.d.ts +3 -3
  214. package/dist/components/ui/core/date-time-pickers/time-picker/index.js +3 -0
  215. package/dist/components/ui/core/date-time-pickers/time-picker/index.js.map +1 -0
  216. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.d.ts +12 -14
  217. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.js +99 -79
  218. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.js.map +1 -0
  219. package/dist/components/ui/core/date-time-pickers/time-picker/types.d.ts +20 -20
  220. package/dist/components/ui/core/date-time-pickers/time-picker/types.js +3 -0
  221. package/dist/components/ui/core/date-time-pickers/time-picker/types.js.map +1 -0
  222. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.d.ts +2 -2
  223. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.js +63 -41
  224. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.js.map +1 -0
  225. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.d.ts +3 -1
  226. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.js +3 -0
  227. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.js.map +1 -0
  228. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.d.ts +14 -0
  229. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.js +115 -0
  230. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.js.map +1 -0
  231. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.d.ts +30 -36
  232. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.js +3 -0
  233. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.js.map +1 -0
  234. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.d.ts +2 -2
  235. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.js +145 -0
  236. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.js.map +1 -0
  237. package/dist/components/ui/core/date-time-pickers/utils/date-input.d.ts +56 -0
  238. package/dist/components/ui/core/date-time-pickers/utils/date-input.js +67 -0
  239. package/dist/components/ui/core/date-time-pickers/utils/date-input.js.map +1 -0
  240. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.d.ts +18 -18
  241. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.js +42 -0
  242. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.js.map +1 -0
  243. package/dist/components/ui/core/date-time-pickers/utils/format-utils.d.ts +31 -29
  244. package/dist/components/ui/core/date-time-pickers/utils/format-utils.js +56 -0
  245. package/dist/components/ui/core/date-time-pickers/utils/format-utils.js.map +1 -0
  246. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.d.ts +21 -21
  247. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.js +170 -0
  248. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.js.map +1 -0
  249. package/dist/components/ui/core/date-time-pickers/utils/time-utils.d.ts +28 -28
  250. package/dist/components/ui/core/date-time-pickers/utils/time-utils.js +88 -7
  251. package/dist/components/ui/core/date-time-pickers/utils/time-utils.js.map +1 -0
  252. package/dist/components/ui/core/date-time-pickers/utils/time-validation.d.ts +17 -17
  253. package/dist/components/ui/core/date-time-pickers/utils/time-validation.js +43 -0
  254. package/dist/components/ui/core/date-time-pickers/utils/time-validation.js.map +1 -0
  255. package/dist/components/ui/core/dialog/dialog.d.ts +12 -9
  256. package/dist/components/ui/core/dialog/dialog.js +90 -82
  257. package/dist/components/ui/core/dialog/dialog.js.map +1 -0
  258. package/dist/components/ui/core/dropdown-menu/dropdown-menu.d.ts +22 -19
  259. package/dist/components/ui/core/dropdown-menu/dropdown-menu.js +204 -149
  260. package/dist/components/ui/core/dropdown-menu/dropdown-menu.js.map +1 -0
  261. package/dist/components/ui/core/empty-state/empty-state.context.d.ts +4 -4
  262. package/dist/components/ui/core/empty-state/empty-state.context.js +8 -5
  263. package/dist/components/ui/core/empty-state/empty-state.context.js.map +1 -0
  264. package/dist/components/ui/core/empty-state/empty-state.d.ts +14 -14
  265. package/dist/components/ui/core/empty-state/empty-state.js +96 -82
  266. package/dist/components/ui/core/empty-state/empty-state.js.map +1 -0
  267. package/dist/components/ui/core/helper-text/helper-text.d.ts +7 -7
  268. package/dist/components/ui/core/helper-text/helper-text.js +55 -36
  269. package/dist/components/ui/core/helper-text/helper-text.js.map +1 -0
  270. package/dist/components/ui/core/hover-card/hover-card.d.ts +7 -6
  271. package/dist/components/ui/core/hover-card/hover-card.js +56 -52
  272. package/dist/components/ui/core/hover-card/hover-card.js.map +1 -0
  273. package/dist/components/ui/core/inline-citation/inline-citation.d.ts +26 -25
  274. package/dist/components/ui/core/inline-citation/inline-citation.js +121 -97
  275. package/dist/components/ui/core/inline-citation/inline-citation.js.map +1 -0
  276. package/dist/components/ui/core/input/input.d.ts +2 -2
  277. package/dist/components/ui/core/input/input.js +15 -13
  278. package/dist/components/ui/core/input/input.js.map +1 -0
  279. package/dist/components/ui/core/input-group/input-group.d.ts +25 -14
  280. package/dist/components/ui/core/input-group/input-group.js +149 -76
  281. package/dist/components/ui/core/input-group/input-group.js.map +1 -0
  282. package/dist/components/ui/core/item/item.d.ts +20 -0
  283. package/dist/components/ui/core/item/item.js +93 -0
  284. package/dist/components/ui/core/item/item.js.map +1 -0
  285. package/dist/components/ui/core/kbd/kbd.d.ts +3 -3
  286. package/dist/components/ui/core/kbd/kbd.js +24 -20
  287. package/dist/components/ui/core/kbd/kbd.js.map +1 -0
  288. package/dist/components/ui/core/label/label.d.ts +3 -3
  289. package/dist/components/ui/core/label/label.js +33 -26
  290. package/dist/components/ui/core/label/label.js.map +1 -0
  291. package/dist/components/ui/core/loader/loader.d.ts +6 -6
  292. package/dist/components/ui/core/loader/loader.js +97 -80
  293. package/dist/components/ui/core/loader/loader.js.map +1 -0
  294. package/dist/components/ui/core/message/message-response-default-streamdown-controls.d.ts +9 -9
  295. package/dist/components/ui/core/message/message-response-default-streamdown-controls.js +19 -12
  296. package/dist/components/ui/core/message/message-response-default-streamdown-controls.js.map +1 -0
  297. package/dist/components/ui/core/message/message-response-math-plugin.d.ts +3 -0
  298. package/dist/components/ui/core/message/message-response-math-plugin.js +6 -0
  299. package/dist/components/ui/core/message/message-response-math-plugin.js.map +1 -0
  300. package/dist/components/ui/core/message/message.d.ts +27 -23
  301. package/dist/components/ui/core/message/message.js +453 -316
  302. package/dist/components/ui/core/message/message.js.map +1 -0
  303. package/dist/components/ui/core/overflow-list/overflow-list.d.ts +21 -0
  304. package/dist/components/ui/core/overflow-list/overflow-list.js +197 -0
  305. package/dist/components/ui/core/overflow-list/overflow-list.js.map +1 -0
  306. package/dist/components/ui/core/overflow-list/overflow-list.utils.d.ts +37 -35
  307. package/dist/components/ui/core/overflow-list/overflow-list.utils.js +206 -0
  308. package/dist/components/ui/core/overflow-list/overflow-list.utils.js.map +1 -0
  309. package/dist/components/ui/core/pagination/pagination-size-context.d.ts +2 -2
  310. package/dist/components/ui/core/pagination/pagination-size-context.js +6 -5
  311. package/dist/components/ui/core/pagination/pagination-size-context.js.map +1 -0
  312. package/dist/components/ui/core/pagination/pagination-teleport.d.ts +9 -9
  313. package/dist/components/ui/core/pagination/pagination-teleport.js +127 -84
  314. package/dist/components/ui/core/pagination/pagination-teleport.js.map +1 -0
  315. package/dist/components/ui/core/pagination/pagination-teleport.utils.js +6 -6
  316. package/dist/components/ui/core/pagination/pagination-teleport.utils.js.map +1 -0
  317. package/dist/components/ui/core/pagination/pagination.d.ts +39 -39
  318. package/dist/components/ui/core/pagination/pagination.js +294 -234
  319. package/dist/components/ui/core/pagination/pagination.js.map +1 -0
  320. package/dist/components/ui/core/popover/popover.d.ts +12 -11
  321. package/dist/components/ui/core/popover/popover.js +104 -89
  322. package/dist/components/ui/core/popover/popover.js.map +1 -0
  323. package/dist/components/ui/core/progress/progress.d.ts +9 -8
  324. package/dist/components/ui/core/progress/progress.js +50 -35
  325. package/dist/components/ui/core/progress/progress.js.map +1 -0
  326. package/dist/components/ui/core/prompt-input/prompt-input.d.ts +27 -27
  327. package/dist/components/ui/core/prompt-input/prompt-input.js +342 -271
  328. package/dist/components/ui/core/prompt-input/prompt-input.js.map +1 -0
  329. package/dist/components/ui/core/radio-group/radio-group.d.ts +12 -12
  330. package/dist/components/ui/core/radio-group/radio-group.js +88 -58
  331. package/dist/components/ui/core/radio-group/radio-group.js.map +1 -0
  332. package/dist/components/ui/core/reasoning/reasoning.d.ts +7 -7
  333. package/dist/components/ui/core/reasoning/reasoning.js +68 -56
  334. package/dist/components/ui/core/reasoning/reasoning.js.map +1 -0
  335. package/dist/components/ui/core/scroll-area/scroll-area.d.ts +4 -4
  336. package/dist/components/ui/core/scroll-area/scroll-area.js +50 -40
  337. package/dist/components/ui/core/scroll-area/scroll-area.js.map +1 -0
  338. package/dist/components/ui/core/search/search.d.ts +8 -8
  339. package/dist/components/ui/core/search/search.js +122 -76
  340. package/dist/components/ui/core/search/search.js.map +1 -0
  341. package/dist/components/ui/core/segmented-control/segmented-control.d.ts +17 -11
  342. package/dist/components/ui/core/segmented-control/segmented-control.js +204 -108
  343. package/dist/components/ui/core/segmented-control/segmented-control.js.map +1 -0
  344. package/dist/components/ui/core/select/select.d.ts +27 -26
  345. package/dist/components/ui/core/select/select.js +213 -168
  346. package/dist/components/ui/core/select/select.js.map +1 -0
  347. package/dist/components/ui/core/separator/separator.d.ts +2 -2
  348. package/dist/components/ui/core/separator/separator.js +13 -13
  349. package/dist/components/ui/core/separator/separator.js.map +1 -0
  350. package/dist/components/ui/core/shimmer/shimmer.d.ts +8 -8
  351. package/dist/components/ui/core/shimmer/shimmer.js +64 -40
  352. package/dist/components/ui/core/shimmer/shimmer.js.map +1 -0
  353. package/dist/components/ui/core/skeleton/skeleton.d.ts +2 -2
  354. package/dist/components/ui/core/skeleton/skeleton.js +13 -13
  355. package/dist/components/ui/core/skeleton/skeleton.js.map +1 -0
  356. package/dist/components/ui/core/slider/slider.d.ts +7 -7
  357. package/dist/components/ui/core/slider/slider.js +51 -39
  358. package/dist/components/ui/core/slider/slider.js.map +1 -0
  359. package/dist/components/ui/core/sonner-toast/sonner-toast.d.ts +2 -2
  360. package/dist/components/ui/core/sonner-toast/sonner-toast.js +67 -54
  361. package/dist/components/ui/core/sonner-toast/sonner-toast.js.map +1 -0
  362. package/dist/components/ui/core/sources/sources.d.ts +12 -12
  363. package/dist/components/ui/core/sources/sources.js +87 -58
  364. package/dist/components/ui/core/sources/sources.js.map +1 -0
  365. package/dist/components/ui/core/switch/switch.d.ts +9 -9
  366. package/dist/components/ui/core/switch/switch.js +83 -61
  367. package/dist/components/ui/core/switch/switch.js.map +1 -0
  368. package/dist/components/ui/core/switch/switch.metadata.d.ts +1 -1
  369. package/dist/components/ui/core/switch/switch.metadata.js +8 -0
  370. package/dist/components/ui/core/switch/switch.metadata.js.map +1 -0
  371. package/dist/components/ui/core/tabs/tabs.d.ts +20 -18
  372. package/dist/components/ui/core/tabs/tabs.js +176 -147
  373. package/dist/components/ui/core/tabs/tabs.js.map +1 -0
  374. package/dist/components/ui/core/tabs/tabs.utils.d.ts +1 -1
  375. package/dist/components/ui/core/tabs/tabs.utils.js +10 -6
  376. package/dist/components/ui/core/tabs/tabs.utils.js.map +1 -0
  377. package/dist/components/ui/core/textarea/textarea.d.ts +2 -2
  378. package/dist/components/ui/core/textarea/textarea.js +13 -13
  379. package/dist/components/ui/core/textarea/textarea.js.map +1 -0
  380. package/dist/components/ui/core/toggle/toggle.d.ts +9 -9
  381. package/dist/components/ui/core/toggle/toggle.js +60 -54
  382. package/dist/components/ui/core/toggle/toggle.js.map +1 -0
  383. package/dist/components/ui/core/tool/tool.d.ts +18 -18
  384. package/dist/components/ui/core/tool/tool.js +167 -126
  385. package/dist/components/ui/core/tool/tool.js.map +1 -0
  386. package/dist/components/ui/core/toolbar/toolbar.d.ts +37 -0
  387. package/dist/components/ui/core/toolbar/toolbar.js +171 -0
  388. package/dist/components/ui/core/toolbar/toolbar.js.map +1 -0
  389. package/dist/components/ui/core/tooltip/tooltip.d.ts +8 -7
  390. package/dist/components/ui/core/tooltip/tooltip.js +53 -46
  391. package/dist/components/ui/core/tooltip/tooltip.js.map +1 -0
  392. package/dist/components/ui/core/topbar/topbar.d.ts +26 -26
  393. package/dist/components/ui/core/topbar/topbar.js +160 -105
  394. package/dist/components/ui/core/topbar/topbar.js.map +1 -0
  395. package/dist/components/ui/core/tree/tree.d.ts +20 -0
  396. package/dist/components/ui/core/tree/tree.js +100 -0
  397. package/dist/components/ui/core/tree/tree.js.map +1 -0
  398. package/dist/eslint/index.d.ts +5 -5
  399. package/dist/eslint/index.js +9 -5
  400. package/dist/eslint/index.js.map +1 -0
  401. package/dist/eslint/no-overriding-styles.d.ts +1 -1
  402. package/dist/eslint/no-overriding-styles.js +341 -201
  403. package/dist/eslint/no-overriding-styles.js.map +1 -0
  404. package/dist/icons/index.d.ts +1 -1
  405. package/dist/icons/index.js +2 -0
  406. package/dist/icons/index.js.map +1 -0
  407. package/dist/index.d.ts +1 -1
  408. package/dist/index.js +3 -0
  409. package/dist/index.js.map +1 -0
  410. package/dist/lib/ai/types.d.ts +43 -43
  411. package/dist/lib/ai/types.js +3 -0
  412. package/dist/lib/ai/types.js.map +1 -0
  413. package/dist/lib/decorative-variant-classes.d.ts +53 -0
  414. package/dist/lib/decorative-variant-classes.js +58 -0
  415. package/dist/lib/decorative-variant-classes.js.map +1 -0
  416. package/dist/lib/highlight-code.d.ts +11 -8
  417. package/dist/lib/highlight-code.js +58 -40
  418. package/dist/lib/highlight-code.js.map +1 -0
  419. package/dist/lib/portal-container-context.d.ts +1 -1
  420. package/dist/lib/portal-container-context.js +8 -8
  421. package/dist/lib/portal-container-context.js.map +1 -0
  422. package/dist/lib/shared-theme-from-url.d.ts +13 -0
  423. package/dist/lib/shared-theme-from-url.js +61 -0
  424. package/dist/lib/shared-theme-from-url.js.map +1 -0
  425. package/dist/lib/style-scope.d.ts +2 -2
  426. package/dist/lib/style-scope.js +6 -6
  427. package/dist/lib/style-scope.js.map +1 -0
  428. package/dist/lib/theme-share-url.d.ts +31 -0
  429. package/dist/lib/theme-share-url.js +116 -0
  430. package/dist/lib/theme-share-url.js.map +1 -0
  431. package/dist/lib/types.d.ts +39 -39
  432. package/dist/lib/types.js +3 -0
  433. package/dist/lib/types.js.map +1 -0
  434. package/dist/lib/use-controllable-state.d.ts +4 -7
  435. package/dist/lib/use-controllable-state.js +34 -21
  436. package/dist/lib/use-controllable-state.js.map +1 -0
  437. package/dist/lib/utils.d.ts +63 -34
  438. package/dist/lib/utils.js +134 -32
  439. package/dist/lib/utils.js.map +1 -0
  440. package/dist/styles.css +2 -1
  441. package/dist/styles.source.css +24 -12
  442. package/dist/utils/assign-ref.d.ts +3 -0
  443. package/dist/utils/assign-ref.js +13 -0
  444. package/dist/utils/assign-ref.js.map +1 -0
  445. package/package.json +50 -11
  446. package/src/components/ui/core/button/button.md +93 -0
@@ -9,6 +9,22 @@
9
9
  @source 'streamdown/dist';
10
10
  @source '@streamdown/mermaid/dist';
11
11
  @import 'streamdown/styles.css';
12
+ @import 'katex/dist/katex.min.css';
13
+
14
+ /*
15
+ * Assistant chat math: show full equation height; only scroll horizontally when wider
16
+ * than the bubble. overflow-x on inner .katex creates a spurious vertical scrollport.
17
+ */
18
+ [data-slot='message-response'] .katex-display {
19
+ max-width: 100%;
20
+ overflow-x: auto;
21
+ overflow-y: hidden;
22
+ }
23
+
24
+ [data-slot='message-response'] .katex-display > .katex {
25
+ overflow: visible;
26
+ max-width: none;
27
+ }
12
28
 
13
29
  @custom-variant dark (&:is(.dark *));
14
30
 
@@ -78,10 +94,11 @@
78
94
  0 20px 25px -5px var(--effect-shadow-xl),
79
95
  0 10px 10px -5px var(--effect-shadow-lg);
80
96
  /* modals; dialogs with backdrop overlay */
81
- --shadow-focus-ring: 0 0 0 1px var(--ring), 0 0 0 3px var(--ring-muted);
97
+ --shadow-focus-ring:
98
+ 0 0 0 1px var(--ring-default), 0 0 0 3px var(--ring-muted);
82
99
  /* default focus ring: inner border (1px dark) + outer glow (3px light, 2px visible beyond inner) */
83
100
  --shadow-focus-ring-destructive:
84
- 0 0 0 1px var(--ring-destructive), 0 0 0 3px var(--ring-destructive-muted);
101
+ 0 0 0 1px var(--ring-critical), 0 0 0 3px var(--ring-critical-muted);
85
102
  --shadow-pinned-column:
86
103
  4px 0 8px 0 var(--effect-shadow-md), 3px 0 2px 0 var(--effect-shadow-md);
87
104
  /* horizontal edge shadow for the last pinned column in data grids */
@@ -169,10 +186,11 @@
169
186
  );
170
187
  --gradient-fall: linear-gradient(
171
188
  -100deg,
172
- var(--fjord-550) 0%,
173
- var(--dusk-550) 50%,
189
+ var(--fjord-500) 0%,
190
+ var(--dusk-500) 50%,
174
191
  var(--dusk-300) 100%
175
192
  );
193
+ /* Not from Figma Reflect sync — used by Shimmer variant="active". */
176
194
  --gradient-active: linear-gradient(
177
195
  90deg,
178
196
  var(--color-muted-foreground) 0%,
@@ -241,17 +259,11 @@
241
259
 
242
260
  @layer base {
243
261
  * {
244
- @apply border-border outline-ring/50;
262
+ @apply border-default outline-ring-default/50;
245
263
  }
246
264
 
247
265
  body {
248
- @apply bg-background text-foreground;
249
- }
250
-
251
- :where(svg.tabler-icon) {
252
- width: 1rem;
253
- height: 1rem;
254
- stroke-width: 1.5;
266
+ @apply bg-base-background text-base-foreground;
255
267
  }
256
268
  }
257
269
 
@@ -0,0 +1,3 @@
1
+ import type { Ref } from "react";
2
+ declare function assignRef<T>(ref: Ref<T>, value: T | null): void;
3
+ export { assignRef };
@@ -0,0 +1,13 @@
1
+ function isMutableRef(ref) {
2
+ return typeof ref === 'object' && ref !== null && 'current' in ref;
3
+ }
4
+ function assignRef(ref, value) {
5
+ if (typeof ref === 'function') {
6
+ ref(value);
7
+ return;
8
+ }
9
+ if (isMutableRef(ref)) ref.current = value;
10
+ }
11
+ export { assignRef };
12
+
13
+ //# sourceMappingURL=assign-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/assign-ref.ts"],"sourcesContent":["import type { MutableRefObject, Ref } from 'react';\n\nfunction isMutableRef<T>(ref: Ref<T>): ref is MutableRefObject<T | null> {\n return typeof ref === 'object' && ref !== null && 'current' in ref;\n}\n\nfunction assignRef<T>(ref: Ref<T>, value: T | null): void {\n if (typeof ref === 'function') {\n ref(value);\n return;\n }\n if (isMutableRef(ref)) ref.current = value;\n}\n\nexport { assignRef };\n"],"names":["isMutableRef","ref","assignRef","value","current"],"mappings":"AAEA,SAASA,aAAgBC,GAAW;IAClC,OAAO,OAAOA,QAAQ,YAAYA,QAAQ,QAAQ,aAAaA;AACjE;AAEA,SAASC,UAAaD,GAAW,EAAEE,KAAe;IAChD,IAAI,OAAOF,QAAQ,YAAY;QAC7BA,IAAIE;QACJ;IACF;IACA,IAAIH,aAAaC,MAAMA,IAAIG,OAAO,GAAGD;AACvC;AAEA,SAASD,SAAS,GAAG"}
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@cognite/aura",
3
- "version": "0.3.4",
3
+ "version": "1.46104.0",
4
+ "license": "MIT",
4
5
  "type": "module",
5
6
  "sideEffects": [
6
7
  "**/*.scss",
@@ -75,6 +76,10 @@
75
76
  "import": "./dist/components/ui/core/command/command.js",
76
77
  "types": "./dist/components/ui/core/command/command.d.ts"
77
78
  },
79
+ "./components/conversation": {
80
+ "import": "./dist/components/ui/core/conversation/conversation.js",
81
+ "types": "./dist/components/ui/core/conversation/conversation.d.ts"
82
+ },
78
83
  "./components/count": {
79
84
  "import": "./dist/components/ui/core/count/count.js",
80
85
  "types": "./dist/components/ui/core/count/count.d.ts"
@@ -115,6 +120,14 @@
115
120
  "import": "./dist/components/ui/core/input-group/input-group.js",
116
121
  "types": "./dist/components/ui/core/input-group/input-group.d.ts"
117
122
  },
123
+ "./components/item": {
124
+ "import": "./dist/components/ui/core/item/item.js",
125
+ "types": "./dist/components/ui/core/item/item.d.ts"
126
+ },
127
+ "./components/tree": {
128
+ "import": "./dist/components/ui/core/tree/tree.js",
129
+ "types": "./dist/components/ui/core/tree/tree.d.ts"
130
+ },
118
131
  "./components/kbd": {
119
132
  "import": "./dist/components/ui/core/kbd/kbd.js",
120
133
  "types": "./dist/components/ui/core/kbd/kbd.d.ts"
@@ -215,6 +228,10 @@
215
228
  "import": "./dist/components/ui/core/tool/tool.js",
216
229
  "types": "./dist/components/ui/core/tool/tool.d.ts"
217
230
  },
231
+ "./components/toolbar": {
232
+ "import": "./dist/components/ui/core/toolbar/toolbar.js",
233
+ "types": "./dist/components/ui/core/toolbar/toolbar.d.ts"
234
+ },
218
235
  "./components/tooltip": {
219
236
  "import": "./dist/components/ui/core/tooltip/tooltip.js",
220
237
  "types": "./dist/components/ui/core/tooltip/tooltip.d.ts"
@@ -227,6 +244,10 @@
227
244
  "import": "./dist/components/ui/core/chart/index.js",
228
245
  "types": "./dist/components/ui/core/chart/index.d.ts"
229
246
  },
247
+ "./data-grid": {
248
+ "import": "./dist/components/ui/core/data-grid/index.js",
249
+ "types": "./dist/components/ui/core/data-grid/index.d.ts"
250
+ },
230
251
  "./highlight-code": {
231
252
  "import": "./dist/lib/highlight-code.js",
232
253
  "types": "./dist/lib/highlight-code.d.ts"
@@ -252,14 +273,27 @@
252
273
  "./colors.css": {
253
274
  "default": "./dist/colors.css"
254
275
  },
255
- "./DESIGN.md": "./DESIGN.md"
276
+ "./colors-deprecated.css": {
277
+ "default": "./dist/colors-deprecated.css"
278
+ },
279
+ "./DESIGN.md": "./DESIGN.md",
280
+ "./docs/*": "./src/components/ui/core/*/*.md",
281
+ "./examples/*": {
282
+ "import": "./dist/components/ui/core/*/*.gallery.js",
283
+ "types": "./dist/components/ui/core/*/*.gallery.d.ts"
284
+ }
256
285
  },
257
286
  "files": [
258
287
  "dist",
259
- "DESIGN.md"
288
+ "CHANGELOG.md",
289
+ "DESIGN.md",
290
+ "src/components/**/*.md"
260
291
  ],
261
292
  "dependencies": {
262
293
  "@base-ui/react": "^1.6.0",
294
+ "@headless-tree/core": "^1.7.0",
295
+ "@headless-tree/react": "^1.7.0",
296
+ "@streamdown/math": "^1.0.2",
263
297
  "@streamdown/mermaid": "^1.0.2",
264
298
  "@tabler/icons-react": "^3.35.0",
265
299
  "class-variance-authority": "^0.7.1",
@@ -267,16 +301,16 @@
267
301
  "cmdk": "^1.1.1",
268
302
  "dayjs": "^1.11.13",
269
303
  "framer-motion": "^11.0.3",
304
+ "katex": "0.18.2",
270
305
  "shiki": "^3.19.0",
271
306
  "sonner": "^2.0.7",
272
307
  "streamdown": "^2.4.0",
273
308
  "tailwind-merge": "^3.4.0",
274
- "tw-animate-css": "^1.4.0"
309
+ "tw-animate-css": "^1.4.0",
310
+ "use-stick-to-bottom": "^1.1.1"
275
311
  },
276
312
  "devDependencies": {
277
313
  "@chromatic-com/storybook": "^5.1.2",
278
- "@nx/vite": "22.6.1",
279
- "@storybook/addon-coverage": "^3.0.1",
280
314
  "@storybook/addon-docs": "10.3.5",
281
315
  "@storybook/addon-vitest": "10.3.5",
282
316
  "@storybook/react-vite": "10.3.5",
@@ -297,22 +331,22 @@
297
331
  "react": "^18.3.1",
298
332
  "react-dom": "^18.3.1",
299
333
  "recharts": "^3.7.0",
300
- "rollup": "^4.59.0",
334
+ "rolldown": "^1.1.4",
301
335
  "storybook": "10.3.5",
302
336
  "tailwindcss": "^4.3.1",
303
- "typescript": "5.8.3",
337
+ "typescript": "6.0.3",
304
338
  "typescript-eslint": "^8.57.1",
305
- "vite": "^8.1.4",
339
+ "vite": "8.2.2",
306
340
  "vite-plugin-dts": "^4.5.4",
307
341
  "vitest": "^4.1.10"
308
342
  },
309
343
  "peerDependencies": {
310
344
  "@tanstack/react-table": "^8.7.4",
311
345
  "@tanstack/react-virtual": "^3.10.8",
312
- "eslint": "^9.6.0 || ^10.0.0",
346
+ "eslint": "9.39.4",
313
347
  "react": "^18.3.1",
314
348
  "recharts": "^3.7.0",
315
- "tailwindcss": "^4.1.17"
349
+ "tailwindcss": "^4.3.1"
316
350
  },
317
351
  "peerDependenciesMeta": {
318
352
  "@tanstack/react-table": {
@@ -330,5 +364,10 @@
330
364
  },
331
365
  "publishConfig": {
332
366
  "access": "public"
367
+ },
368
+ "repository": {
369
+ "type": "git",
370
+ "url": "https://github.com/cognitedata/infrastructure.git",
371
+ "directory": "lib/ts/aura"
333
372
  }
334
373
  }
@@ -0,0 +1,93 @@
1
+ Use a Button to communicate actions users can take and to allow users to interact with the page.
2
+ Each page should have only one primary Button, and any remaining calls to action should be represented as lower-emphasis Buttons.
3
+
4
+ ## Placement
5
+
6
+ Buttons should be placed contextually near the objects they affect for easy discoverability.
7
+
8
+ ## Right side
9
+
10
+ Buttons should always be placed furthest right in the following contexts:
11
+
12
+ - Full page: If the action affects the entire content on the page, Buttons should be placed either in the page header area on the right or within the Page toolbar with the Primary Button being furthest right.
13
+ - In side panels: Buttons can be placed in the header or footer area, with the Primary Button being furthest right.
14
+ - In Dialogs, steppers or wizards: Buttons always appear in the footer, with the Primary Button being furthest right.
15
+
16
+ ## Left side
17
+
18
+ Buttons may make more sense to place on the left side in the following contexts:
19
+
20
+ - Cards: Card content is always left aligned and Buttons placed on the left to align with content makes for better readability.
21
+ - Lists: In dense lists when content is left aligned, it may make more sense to place relevant Buttons on the left to align with content.
22
+
23
+ ## When to use a full width Button
24
+
25
+ Buttons by default have fixed paddings.
26
+ The width of the Button adjusts to accommodate the label keeping the correct padding on all sides.
27
+
28
+ However, Buttons can span the full width of their parent container.
29
+ Full width buttons help visually distinguish actions from other screen elements so they are easier to detect.
30
+ The content of the Button always stays centered.
31
+ Examples of when you might want to use a full width Button are in narrow side panels or small containers such as Popovers and Menus.
32
+
33
+ ## Grouping
34
+
35
+ - Small groups (2-3): Use secondary and/or ghost buttons (plus one primary if needed) with 8px spacing between buttons.
36
+ - Large groups (3+, e.g., toolbars): Use mainly ghost buttons to reduce visual clutter with 8px spacing between buttons.
37
+
38
+ ## Variants and when to use them
39
+
40
+ - Consider Button hierarchy: We use different Button types to establish a visual hierarchy.
41
+ You don't always need to use the secondary Button as the second Button in your layout.
42
+ The most important thing is to establish a visual hierarchy between the buttons in your UI, which is why only one primary Button should be used on a page.
43
+ - Type indicates importance: The Button type should be chosen based on the importance of the action.
44
+ More important, more emphasis.
45
+ - Verb + noun format: Reference action label guidelines in the design.md file to use the appropriate verb.
46
+ It's always best to use a label with your Button unless the icon is highly recognizable, such as the save (floppy disk) or delete (trash bin) icons, or space is limited.
47
+ Alternatively, use an icon button with a [Tooltip](?path=/docs/primitives-tooltip--docs).
48
+ - Avoid disabled Buttons: Disabled Buttons can be confusing and frustrating for many users and can be difficult to spot for those with low vision or users relying on keyboard interactions, since disabled Buttons won't take keyboard focus.
49
+ To make things easier, enable the Button so users can click it, and provide an error message or inline validation if information is incorrect or missing.
50
+ Or try using alternative methods to activate a Button control such as selections that trigger an [Action toolbar](?path=/docs/primitives-actiontoolbar--docs).
51
+ If you must use a disabled Button, include clarifying text or a tooltip to explain why.
52
+
53
+ | Variant | Use | When NOT to use | Max number per context |
54
+ | :------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------- | :--------------------- |
55
+ | `default` (primary) | The single most important action on a screen | Don't use more than once per view. Never for navigation. | 1 |
56
+ | `secondary` | Supporting actions that aren't the primary CTA | Don't use as a substitute for a primary button | A few |
57
+ | `outline` | Low-emphasis actions in dense UI or to create contrast with background colors | Don't use as the primary action | A few |
58
+ | `ghost` | Tertiary actions, icon buttons in toolbars | Don't use as a primary or secondary action | As many as needed |
59
+ | `destructive` | Irreversible, high-consequence actions (delete, remove), most commonly in [Dialog](?path=/docs/primitives-dialog--docs)s or [Action toolbar](?path=/docs/primitives-actiontoolbar--docs)s | Don't use for general negative actions — only for truly destructive commits | 1 |
60
+ | `loading` | Actions that are in progress | Don't use for general page loading states | 1 at a time |
61
+
62
+ ## Dos and don'ts
63
+
64
+ - **Do** use only one `default` (primary) button per view, if needed.
65
+ - **Do** use size="sm" for buttons in the Topbar action slot. Match this in your designs.
66
+ - **Don't** use a button where a link should be.
67
+ Buttons change state or trigger actions.
68
+ Links navigate.
69
+ - **Don't** use `destructive` buttons inline as the first interaction.
70
+ Use a `ghost` or other Button type then use the `destructive` Button when the user confirms the action.
71
+
72
+ ## Behavior
73
+
74
+ - Primary action submits or commits the labeled operation; support keyboard activation (Enter / Space) when the control is focusable.
75
+ - Loading state should prevent duplicate submissions where the action is not idempotent.
76
+ - Icon-only buttons must have an accessible name (visible label, [`aria-label`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Reference/Attributes/aria-label), or [Tooltip](?path=/docs/primitives-tooltip--docs) that is exposed to assistive tech per implementation).
77
+
78
+ ## Toggle vs Button
79
+
80
+ A standard Button triggers a one time action and returns to its resting state immediately after, whereas a Toggle maintains an on/off state until clicked again.
81
+ Toggled Buttons have different visual identities than Buttons and should be used to indicate the following interactions:
82
+
83
+ - A selected element such as in a Toolbar.
84
+ - An applied filter such as in Page toolbar.
85
+
86
+ ## Often used with
87
+
88
+ [Tooltip](?path=/docs/primitives-tooltip--docs) on icon-only triggers; [Menu](?path=/docs/primitives-dropdown-menu--docs) (dropdown / split); [KBD](?path=/docs/primitives-kbd--docs) hints in labels; pairs with [Dialog](?path=/docs/primitives-dialog--docs), [Popover](?path=/docs/primitives-popover--docs), or [Action toolbar](?path=/docs/primitives-actiontoolbar--docs) as trigger.
89
+
90
+ ## Accessibility
91
+
92
+ - Icon-only buttons: Always provide an explicit `aria-label` or an internal screen-reader-only text element (`<span className="sr-only">`) when no visual text label exists.
93
+ - Disabled states: Use `aria-disabled="true"` rather than native HTML `disabled` attributes if you need the button to retain keyboard focusability (e.g., to trigger an explanatory disabled-state tooltip).