tempest-react-sdk 0.62.0 → 0.64.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 (808) hide show
  1. package/README.md +10 -7
  2. package/dist/br/BrazilMap.module.cjs +1 -0
  3. package/dist/br/BrazilMap.module.cjs.map +1 -1
  4. package/dist/br/BrazilMap.module.js +1 -0
  5. package/dist/br/BrazilMap.module.js.map +1 -1
  6. package/dist/br/MapLegend.module.cjs +1 -0
  7. package/dist/br/MapLegend.module.cjs.map +1 -1
  8. package/dist/br/MapLegend.module.js +1 -0
  9. package/dist/br/MapLegend.module.js.map +1 -1
  10. package/dist/br/MunicipalitySearch.module.cjs +1 -0
  11. package/dist/br/MunicipalitySearch.module.cjs.map +1 -1
  12. package/dist/br/MunicipalitySearch.module.js +1 -0
  13. package/dist/br/MunicipalitySearch.module.js.map +1 -1
  14. package/dist/br/PixQRCode.module.cjs +1 -0
  15. package/dist/br/PixQRCode.module.cjs.map +1 -1
  16. package/dist/br/PixQRCode.module.js +1 -0
  17. package/dist/br/PixQRCode.module.js.map +1 -1
  18. package/dist/components/AIChat/AIChat.module.cjs +1 -0
  19. package/dist/components/AIChat/AIChat.module.cjs.map +1 -1
  20. package/dist/components/AIChat/AIChat.module.js +1 -0
  21. package/dist/components/AIChat/AIChat.module.js.map +1 -1
  22. package/dist/components/Accordion/Accordion.module.cjs +1 -0
  23. package/dist/components/Accordion/Accordion.module.cjs.map +1 -1
  24. package/dist/components/Accordion/Accordion.module.js +1 -0
  25. package/dist/components/Accordion/Accordion.module.js.map +1 -1
  26. package/dist/components/Alert/Alert.module.cjs +1 -0
  27. package/dist/components/Alert/Alert.module.cjs.map +1 -1
  28. package/dist/components/Alert/Alert.module.js +1 -0
  29. package/dist/components/Alert/Alert.module.js.map +1 -1
  30. package/dist/components/AppBar/AppBar.module.cjs +1 -0
  31. package/dist/components/AppBar/AppBar.module.cjs.map +1 -1
  32. package/dist/components/AppBar/AppBar.module.js +1 -0
  33. package/dist/components/AppBar/AppBar.module.js.map +1 -1
  34. package/dist/components/AppShell/AppShell.module.cjs +1 -0
  35. package/dist/components/AppShell/AppShell.module.cjs.map +1 -1
  36. package/dist/components/AppShell/AppShell.module.js +1 -0
  37. package/dist/components/AppShell/AppShell.module.js.map +1 -1
  38. package/dist/components/AspectRatio/AspectRatio.module.cjs +1 -0
  39. package/dist/components/AspectRatio/AspectRatio.module.cjs.map +1 -1
  40. package/dist/components/AspectRatio/AspectRatio.module.js +1 -0
  41. package/dist/components/AspectRatio/AspectRatio.module.js.map +1 -1
  42. package/dist/components/AudioPlayer/AudioPlayer.module.cjs +1 -0
  43. package/dist/components/AudioPlayer/AudioPlayer.module.cjs.map +1 -1
  44. package/dist/components/AudioPlayer/AudioPlayer.module.js +1 -0
  45. package/dist/components/AudioPlayer/AudioPlayer.module.js.map +1 -1
  46. package/dist/components/AudioRecorder/AudioRecorder.module.cjs +1 -0
  47. package/dist/components/AudioRecorder/AudioRecorder.module.cjs.map +1 -1
  48. package/dist/components/AudioRecorder/AudioRecorder.module.js +1 -0
  49. package/dist/components/AudioRecorder/AudioRecorder.module.js.map +1 -1
  50. package/dist/components/Avatar/Avatar.module.cjs +1 -0
  51. package/dist/components/Avatar/Avatar.module.cjs.map +1 -1
  52. package/dist/components/Avatar/Avatar.module.js +1 -0
  53. package/dist/components/Avatar/Avatar.module.js.map +1 -1
  54. package/dist/components/AvatarGroup/AvatarGroup.module.cjs +1 -0
  55. package/dist/components/AvatarGroup/AvatarGroup.module.cjs.map +1 -1
  56. package/dist/components/AvatarGroup/AvatarGroup.module.js +1 -0
  57. package/dist/components/AvatarGroup/AvatarGroup.module.js.map +1 -1
  58. package/dist/components/Badge/Badge.module.cjs +1 -0
  59. package/dist/components/Badge/Badge.module.cjs.map +1 -1
  60. package/dist/components/Badge/Badge.module.js +1 -0
  61. package/dist/components/Badge/Badge.module.js.map +1 -1
  62. package/dist/components/Banner/Banner.module.cjs +1 -0
  63. package/dist/components/Banner/Banner.module.cjs.map +1 -1
  64. package/dist/components/Banner/Banner.module.js +1 -0
  65. package/dist/components/Banner/Banner.module.js.map +1 -1
  66. package/dist/components/BarList/BarList.module.cjs +1 -0
  67. package/dist/components/BarList/BarList.module.cjs.map +1 -1
  68. package/dist/components/BarList/BarList.module.js +1 -0
  69. package/dist/components/BarList/BarList.module.js.map +1 -1
  70. package/dist/components/BarcodeScanner/BarcodeScanner.module.cjs +1 -0
  71. package/dist/components/BarcodeScanner/BarcodeScanner.module.cjs.map +1 -1
  72. package/dist/components/BarcodeScanner/BarcodeScanner.module.js +1 -0
  73. package/dist/components/BarcodeScanner/BarcodeScanner.module.js.map +1 -1
  74. package/dist/components/BottomNavigation/BottomNavigation.module.cjs +1 -0
  75. package/dist/components/BottomNavigation/BottomNavigation.module.cjs.map +1 -1
  76. package/dist/components/BottomNavigation/BottomNavigation.module.js +1 -0
  77. package/dist/components/BottomNavigation/BottomNavigation.module.js.map +1 -1
  78. package/dist/components/BottomSheet/BottomSheet.module.cjs +1 -0
  79. package/dist/components/BottomSheet/BottomSheet.module.cjs.map +1 -1
  80. package/dist/components/BottomSheet/BottomSheet.module.js +1 -0
  81. package/dist/components/BottomSheet/BottomSheet.module.js.map +1 -1
  82. package/dist/components/Breadcrumbs/Breadcrumbs.module.cjs +1 -0
  83. package/dist/components/Breadcrumbs/Breadcrumbs.module.cjs.map +1 -1
  84. package/dist/components/Breadcrumbs/Breadcrumbs.module.js +1 -0
  85. package/dist/components/Breadcrumbs/Breadcrumbs.module.js.map +1 -1
  86. package/dist/components/Button/Button.module.cjs +1 -0
  87. package/dist/components/Button/Button.module.cjs.map +1 -1
  88. package/dist/components/Button/Button.module.js +1 -0
  89. package/dist/components/Button/Button.module.js.map +1 -1
  90. package/dist/components/Calendar/Calendar.module.cjs +1 -0
  91. package/dist/components/Calendar/Calendar.module.cjs.map +1 -1
  92. package/dist/components/Calendar/Calendar.module.js +1 -0
  93. package/dist/components/Calendar/Calendar.module.js.map +1 -1
  94. package/dist/components/Card/Card.module.cjs +1 -0
  95. package/dist/components/Card/Card.module.cjs.map +1 -1
  96. package/dist/components/Card/Card.module.js +1 -0
  97. package/dist/components/Card/Card.module.js.map +1 -1
  98. package/dist/components/Carousel/Carousel.module.cjs +1 -0
  99. package/dist/components/Carousel/Carousel.module.cjs.map +1 -1
  100. package/dist/components/Carousel/Carousel.module.js +1 -0
  101. package/dist/components/Carousel/Carousel.module.js.map +1 -1
  102. package/dist/components/Center/Center.module.cjs +1 -0
  103. package/dist/components/Center/Center.module.cjs.map +1 -1
  104. package/dist/components/Center/Center.module.js +1 -0
  105. package/dist/components/Center/Center.module.js.map +1 -1
  106. package/dist/components/Chat/Chat.cjs +1 -1
  107. package/dist/components/Chat/Chat.cjs.map +1 -1
  108. package/dist/components/Chat/Chat.js +71 -96
  109. package/dist/components/Chat/Chat.js.map +1 -1
  110. package/dist/components/Chat/Chat.module.cjs +2 -1
  111. package/dist/components/Chat/Chat.module.cjs.map +1 -1
  112. package/dist/components/Chat/Chat.module.js +31 -8
  113. package/dist/components/Chat/Chat.module.js.map +1 -1
  114. package/dist/components/Chat/ChatActionsMenu.cjs +2 -0
  115. package/dist/components/Chat/ChatActionsMenu.cjs.map +1 -0
  116. package/dist/components/Chat/ChatActionsMenu.js +14 -0
  117. package/dist/components/Chat/ChatActionsMenu.js.map +1 -0
  118. package/dist/components/Chat/ChatAttachments.cjs +2 -0
  119. package/dist/components/Chat/ChatAttachments.cjs.map +1 -0
  120. package/dist/components/Chat/ChatAttachments.js +80 -0
  121. package/dist/components/Chat/ChatAttachments.js.map +1 -0
  122. package/dist/components/Chat/ChatBubble.cjs +2 -0
  123. package/dist/components/Chat/ChatBubble.cjs.map +1 -0
  124. package/dist/components/Chat/ChatBubble.js +155 -0
  125. package/dist/components/Chat/ChatBubble.js.map +1 -0
  126. package/dist/components/Chat/chat-groups.cjs +1 -1
  127. package/dist/components/Chat/chat-groups.cjs.map +1 -1
  128. package/dist/components/Chat/chat-groups.js +42 -2
  129. package/dist/components/Chat/chat-groups.js.map +1 -1
  130. package/dist/components/Chat/chat-receipt.cjs +2 -0
  131. package/dist/components/Chat/chat-receipt.cjs.map +1 -0
  132. package/dist/components/Chat/chat-receipt.js +14 -0
  133. package/dist/components/Chat/chat-receipt.js.map +1 -0
  134. package/dist/components/Checkbox/Checkbox.module.cjs +1 -0
  135. package/dist/components/Checkbox/Checkbox.module.cjs.map +1 -1
  136. package/dist/components/Checkbox/Checkbox.module.js +1 -0
  137. package/dist/components/Checkbox/Checkbox.module.js.map +1 -1
  138. package/dist/components/ChipInput/ChipInput.module.cjs +1 -0
  139. package/dist/components/ChipInput/ChipInput.module.cjs.map +1 -1
  140. package/dist/components/ChipInput/ChipInput.module.js +1 -0
  141. package/dist/components/ChipInput/ChipInput.module.js.map +1 -1
  142. package/dist/components/CodeBlock/CodeBlock.module.cjs +1 -0
  143. package/dist/components/CodeBlock/CodeBlock.module.cjs.map +1 -1
  144. package/dist/components/CodeBlock/CodeBlock.module.js +1 -0
  145. package/dist/components/CodeBlock/CodeBlock.module.js.map +1 -1
  146. package/dist/components/Collapsible/Collapsible.module.cjs +1 -0
  147. package/dist/components/Collapsible/Collapsible.module.cjs.map +1 -1
  148. package/dist/components/Collapsible/Collapsible.module.js +1 -0
  149. package/dist/components/Collapsible/Collapsible.module.js.map +1 -1
  150. package/dist/components/Combobox/Combobox.module.cjs +1 -0
  151. package/dist/components/Combobox/Combobox.module.cjs.map +1 -1
  152. package/dist/components/Combobox/Combobox.module.js +1 -0
  153. package/dist/components/Combobox/Combobox.module.js.map +1 -1
  154. package/dist/components/Command/Command.module.cjs +1 -0
  155. package/dist/components/Command/Command.module.cjs.map +1 -1
  156. package/dist/components/Command/Command.module.js +1 -0
  157. package/dist/components/Command/Command.module.js.map +1 -1
  158. package/dist/components/ContextMenu/ContextMenu.cjs +1 -1
  159. package/dist/components/ContextMenu/ContextMenu.cjs.map +1 -1
  160. package/dist/components/ContextMenu/ContextMenu.js +100 -48
  161. package/dist/components/ContextMenu/ContextMenu.js.map +1 -1
  162. package/dist/components/ContextMenu/ContextMenu.module.cjs +1 -0
  163. package/dist/components/ContextMenu/ContextMenu.module.cjs.map +1 -1
  164. package/dist/components/ContextMenu/ContextMenu.module.js +1 -0
  165. package/dist/components/ContextMenu/ContextMenu.module.js.map +1 -1
  166. package/dist/components/CopyButton/CopyButton.module.cjs +1 -0
  167. package/dist/components/CopyButton/CopyButton.module.cjs.map +1 -1
  168. package/dist/components/CopyButton/CopyButton.module.js +1 -0
  169. package/dist/components/CopyButton/CopyButton.module.js.map +1 -1
  170. package/dist/components/DataList/DataList.module.cjs +1 -0
  171. package/dist/components/DataList/DataList.module.cjs.map +1 -1
  172. package/dist/components/DataList/DataList.module.js +1 -0
  173. package/dist/components/DataList/DataList.module.js.map +1 -1
  174. package/dist/components/DataTable/DataTable.module.cjs +1 -0
  175. package/dist/components/DataTable/DataTable.module.cjs.map +1 -1
  176. package/dist/components/DataTable/DataTable.module.js +1 -0
  177. package/dist/components/DataTable/DataTable.module.js.map +1 -1
  178. package/dist/components/DateRangePicker/DateRangePicker.module.cjs +1 -0
  179. package/dist/components/DateRangePicker/DateRangePicker.module.cjs.map +1 -1
  180. package/dist/components/DateRangePicker/DateRangePicker.module.js +1 -0
  181. package/dist/components/DateRangePicker/DateRangePicker.module.js.map +1 -1
  182. package/dist/components/DescriptionList/DescriptionList.module.cjs +1 -0
  183. package/dist/components/DescriptionList/DescriptionList.module.cjs.map +1 -1
  184. package/dist/components/DescriptionList/DescriptionList.module.js +1 -0
  185. package/dist/components/DescriptionList/DescriptionList.module.js.map +1 -1
  186. package/dist/components/Divider/Divider.module.cjs +1 -0
  187. package/dist/components/Divider/Divider.module.cjs.map +1 -1
  188. package/dist/components/Divider/Divider.module.js +1 -0
  189. package/dist/components/Divider/Divider.module.js.map +1 -1
  190. package/dist/components/Drawer/Drawer.module.cjs +1 -0
  191. package/dist/components/Drawer/Drawer.module.cjs.map +1 -1
  192. package/dist/components/Drawer/Drawer.module.js +1 -0
  193. package/dist/components/Drawer/Drawer.module.js.map +1 -1
  194. package/dist/components/DropdownMenu/DropdownMenu.module.cjs +1 -0
  195. package/dist/components/DropdownMenu/DropdownMenu.module.cjs.map +1 -1
  196. package/dist/components/DropdownMenu/DropdownMenu.module.js +1 -0
  197. package/dist/components/DropdownMenu/DropdownMenu.module.js.map +1 -1
  198. package/dist/components/Dropzone/Dropzone.module.cjs +1 -0
  199. package/dist/components/Dropzone/Dropzone.module.cjs.map +1 -1
  200. package/dist/components/Dropzone/Dropzone.module.js +1 -0
  201. package/dist/components/Dropzone/Dropzone.module.js.map +1 -1
  202. package/dist/components/EmptyState/EmptyState.module.cjs +1 -0
  203. package/dist/components/EmptyState/EmptyState.module.cjs.map +1 -1
  204. package/dist/components/EmptyState/EmptyState.module.js +1 -0
  205. package/dist/components/EmptyState/EmptyState.module.js.map +1 -1
  206. package/dist/components/ErrorState/ErrorState.module.cjs +1 -0
  207. package/dist/components/ErrorState/ErrorState.module.cjs.map +1 -1
  208. package/dist/components/ErrorState/ErrorState.module.js +1 -0
  209. package/dist/components/ErrorState/ErrorState.module.js.map +1 -1
  210. package/dist/components/ErrorText/ErrorText.module.cjs +1 -0
  211. package/dist/components/ErrorText/ErrorText.module.cjs.map +1 -1
  212. package/dist/components/ErrorText/ErrorText.module.js +1 -0
  213. package/dist/components/ErrorText/ErrorText.module.js.map +1 -1
  214. package/dist/components/FileUpload/FileUpload.module.cjs +1 -0
  215. package/dist/components/FileUpload/FileUpload.module.cjs.map +1 -1
  216. package/dist/components/FileUpload/FileUpload.module.js +1 -0
  217. package/dist/components/FileUpload/FileUpload.module.js.map +1 -1
  218. package/dist/components/FilterBar/FilterBar.module.cjs +1 -0
  219. package/dist/components/FilterBar/FilterBar.module.cjs.map +1 -1
  220. package/dist/components/FilterBar/FilterBar.module.js +1 -0
  221. package/dist/components/FilterBar/FilterBar.module.js.map +1 -1
  222. package/dist/components/FloatingActionButton/FloatingActionButton.module.cjs +1 -0
  223. package/dist/components/FloatingActionButton/FloatingActionButton.module.cjs.map +1 -1
  224. package/dist/components/FloatingActionButton/FloatingActionButton.module.js +1 -0
  225. package/dist/components/FloatingActionButton/FloatingActionButton.module.js.map +1 -1
  226. package/dist/components/Form/Form.module.cjs +1 -0
  227. package/dist/components/Form/Form.module.cjs.map +1 -1
  228. package/dist/components/Form/Form.module.js +1 -0
  229. package/dist/components/Form/Form.module.js.map +1 -1
  230. package/dist/components/HoverCard/HoverCard.module.cjs +1 -0
  231. package/dist/components/HoverCard/HoverCard.module.cjs.map +1 -1
  232. package/dist/components/HoverCard/HoverCard.module.js +1 -0
  233. package/dist/components/HoverCard/HoverCard.module.js.map +1 -1
  234. package/dist/components/Image/Image.module.cjs +1 -0
  235. package/dist/components/Image/Image.module.cjs.map +1 -1
  236. package/dist/components/Image/Image.module.js +1 -0
  237. package/dist/components/Image/Image.module.js.map +1 -1
  238. package/dist/components/ImageCropper/ImageCropper.module.cjs +1 -0
  239. package/dist/components/ImageCropper/ImageCropper.module.cjs.map +1 -1
  240. package/dist/components/ImageCropper/ImageCropper.module.js +1 -0
  241. package/dist/components/ImageCropper/ImageCropper.module.js.map +1 -1
  242. package/dist/components/Input/Input.module.cjs +1 -0
  243. package/dist/components/Input/Input.module.cjs.map +1 -1
  244. package/dist/components/Input/Input.module.js +1 -0
  245. package/dist/components/Input/Input.module.js.map +1 -1
  246. package/dist/components/InstallBanner/InstallBanner.module.cjs +1 -0
  247. package/dist/components/InstallBanner/InstallBanner.module.cjs.map +1 -1
  248. package/dist/components/InstallBanner/InstallBanner.module.js +1 -0
  249. package/dist/components/InstallBanner/InstallBanner.module.js.map +1 -1
  250. package/dist/components/Kanban/Kanban.module.cjs +1 -0
  251. package/dist/components/Kanban/Kanban.module.cjs.map +1 -1
  252. package/dist/components/Kanban/Kanban.module.js +1 -0
  253. package/dist/components/Kanban/Kanban.module.js.map +1 -1
  254. package/dist/components/Kbd/Kbd.module.cjs +1 -0
  255. package/dist/components/Kbd/Kbd.module.cjs.map +1 -1
  256. package/dist/components/Kbd/Kbd.module.js +1 -0
  257. package/dist/components/Kbd/Kbd.module.js.map +1 -1
  258. package/dist/components/Label/Label.module.cjs +1 -0
  259. package/dist/components/Label/Label.module.cjs.map +1 -1
  260. package/dist/components/Label/Label.module.js +1 -0
  261. package/dist/components/Label/Label.module.js.map +1 -1
  262. package/dist/components/Layout/Layout.module.cjs +1 -0
  263. package/dist/components/Layout/Layout.module.cjs.map +1 -1
  264. package/dist/components/Layout/Layout.module.js +1 -0
  265. package/dist/components/Layout/Layout.module.js.map +1 -1
  266. package/dist/components/Lightbox/Lightbox.module.cjs +1 -0
  267. package/dist/components/Lightbox/Lightbox.module.cjs.map +1 -1
  268. package/dist/components/Lightbox/Lightbox.module.js +1 -0
  269. package/dist/components/Lightbox/Lightbox.module.js.map +1 -1
  270. package/dist/components/ListTile/ListTile.module.cjs +1 -0
  271. package/dist/components/ListTile/ListTile.module.cjs.map +1 -1
  272. package/dist/components/ListTile/ListTile.module.js +1 -0
  273. package/dist/components/ListTile/ListTile.module.js.map +1 -1
  274. package/dist/components/Markdown/Markdown.module.cjs +1 -0
  275. package/dist/components/Markdown/Markdown.module.cjs.map +1 -1
  276. package/dist/components/Markdown/Markdown.module.js +1 -0
  277. package/dist/components/Markdown/Markdown.module.js.map +1 -1
  278. package/dist/components/Masonry/Masonry.module.cjs +1 -0
  279. package/dist/components/Masonry/Masonry.module.cjs.map +1 -1
  280. package/dist/components/Masonry/Masonry.module.js +1 -0
  281. package/dist/components/Masonry/Masonry.module.js.map +1 -1
  282. package/dist/components/Menubar/Menubar.module.cjs +1 -0
  283. package/dist/components/Menubar/Menubar.module.cjs.map +1 -1
  284. package/dist/components/Menubar/Menubar.module.js +1 -0
  285. package/dist/components/Menubar/Menubar.module.js.map +1 -1
  286. package/dist/components/Modal/Modal.module.cjs +1 -0
  287. package/dist/components/Modal/Modal.module.cjs.map +1 -1
  288. package/dist/components/Modal/Modal.module.js +1 -0
  289. package/dist/components/Modal/Modal.module.js.map +1 -1
  290. package/dist/components/ModalsManager/ModalsManager.module.cjs +1 -0
  291. package/dist/components/ModalsManager/ModalsManager.module.cjs.map +1 -1
  292. package/dist/components/ModalsManager/ModalsManager.module.js +1 -0
  293. package/dist/components/ModalsManager/ModalsManager.module.js.map +1 -1
  294. package/dist/components/MultiSelect/MultiSelect.module.cjs +1 -0
  295. package/dist/components/MultiSelect/MultiSelect.module.cjs.map +1 -1
  296. package/dist/components/MultiSelect/MultiSelect.module.js +1 -0
  297. package/dist/components/MultiSelect/MultiSelect.module.js.map +1 -1
  298. package/dist/components/NProgress/NProgress.module.cjs +1 -0
  299. package/dist/components/NProgress/NProgress.module.cjs.map +1 -1
  300. package/dist/components/NProgress/NProgress.module.js +1 -0
  301. package/dist/components/NProgress/NProgress.module.js.map +1 -1
  302. package/dist/components/Navbar/Navbar.module.cjs +1 -0
  303. package/dist/components/Navbar/Navbar.module.cjs.map +1 -1
  304. package/dist/components/Navbar/Navbar.module.js +1 -0
  305. package/dist/components/Navbar/Navbar.module.js.map +1 -1
  306. package/dist/components/NavigationMenu/NavigationMenu.module.cjs +1 -0
  307. package/dist/components/NavigationMenu/NavigationMenu.module.cjs.map +1 -1
  308. package/dist/components/NavigationMenu/NavigationMenu.module.js +1 -0
  309. package/dist/components/NavigationMenu/NavigationMenu.module.js.map +1 -1
  310. package/dist/components/NavigationRail/NavigationRail.module.cjs +1 -0
  311. package/dist/components/NavigationRail/NavigationRail.module.cjs.map +1 -1
  312. package/dist/components/NavigationRail/NavigationRail.module.js +1 -0
  313. package/dist/components/NavigationRail/NavigationRail.module.js.map +1 -1
  314. package/dist/components/NotificationCenter/NotificationCenter.module.cjs +1 -0
  315. package/dist/components/NotificationCenter/NotificationCenter.module.cjs.map +1 -1
  316. package/dist/components/NotificationCenter/NotificationCenter.module.js +1 -0
  317. package/dist/components/NotificationCenter/NotificationCenter.module.js.map +1 -1
  318. package/dist/components/OfflineIndicator/OfflineIndicator.module.cjs +1 -0
  319. package/dist/components/OfflineIndicator/OfflineIndicator.module.cjs.map +1 -1
  320. package/dist/components/OfflineIndicator/OfflineIndicator.module.js +1 -0
  321. package/dist/components/OfflineIndicator/OfflineIndicator.module.js.map +1 -1
  322. package/dist/components/Page/Page.module.cjs +1 -0
  323. package/dist/components/Page/Page.module.cjs.map +1 -1
  324. package/dist/components/Page/Page.module.js +1 -0
  325. package/dist/components/Page/Page.module.js.map +1 -1
  326. package/dist/components/Pagination/Pagination.module.cjs +1 -0
  327. package/dist/components/Pagination/Pagination.module.cjs.map +1 -1
  328. package/dist/components/Pagination/Pagination.module.js +1 -0
  329. package/dist/components/Pagination/Pagination.module.js.map +1 -1
  330. package/dist/components/PasswordInput/PasswordInput.module.cjs +1 -0
  331. package/dist/components/PasswordInput/PasswordInput.module.cjs.map +1 -1
  332. package/dist/components/PasswordInput/PasswordInput.module.js +1 -0
  333. package/dist/components/PasswordInput/PasswordInput.module.js.map +1 -1
  334. package/dist/components/PinInput/PinInput.module.cjs +1 -0
  335. package/dist/components/PinInput/PinInput.module.cjs.map +1 -1
  336. package/dist/components/PinInput/PinInput.module.js +1 -0
  337. package/dist/components/PinInput/PinInput.module.js.map +1 -1
  338. package/dist/components/Popover/Popover.module.cjs +1 -0
  339. package/dist/components/Popover/Popover.module.cjs.map +1 -1
  340. package/dist/components/Popover/Popover.module.js +1 -0
  341. package/dist/components/Popover/Popover.module.js.map +1 -1
  342. package/dist/components/Progress/Progress.module.cjs +1 -0
  343. package/dist/components/Progress/Progress.module.cjs.map +1 -1
  344. package/dist/components/Progress/Progress.module.js +1 -0
  345. package/dist/components/Progress/Progress.module.js.map +1 -1
  346. package/dist/components/QRCode/QRCode.module.cjs +1 -0
  347. package/dist/components/QRCode/QRCode.module.cjs.map +1 -1
  348. package/dist/components/QRCode/QRCode.module.js +1 -0
  349. package/dist/components/QRCode/QRCode.module.js.map +1 -1
  350. package/dist/components/Radio/Radio.module.cjs +1 -0
  351. package/dist/components/Radio/Radio.module.cjs.map +1 -1
  352. package/dist/components/Radio/Radio.module.js +1 -0
  353. package/dist/components/Radio/Radio.module.js.map +1 -1
  354. package/dist/components/RangeSlider/RangeSlider.module.cjs +1 -0
  355. package/dist/components/RangeSlider/RangeSlider.module.cjs.map +1 -1
  356. package/dist/components/RangeSlider/RangeSlider.module.js +1 -0
  357. package/dist/components/RangeSlider/RangeSlider.module.js.map +1 -1
  358. package/dist/components/RatingStars/RatingStars.module.cjs +1 -0
  359. package/dist/components/RatingStars/RatingStars.module.cjs.map +1 -1
  360. package/dist/components/RatingStars/RatingStars.module.js +1 -0
  361. package/dist/components/RatingStars/RatingStars.module.js.map +1 -1
  362. package/dist/components/RefreshIndicator/RefreshIndicator.module.cjs +1 -0
  363. package/dist/components/RefreshIndicator/RefreshIndicator.module.cjs.map +1 -1
  364. package/dist/components/RefreshIndicator/RefreshIndicator.module.js +1 -0
  365. package/dist/components/RefreshIndicator/RefreshIndicator.module.js.map +1 -1
  366. package/dist/components/Resizable/Resizable.module.cjs +1 -0
  367. package/dist/components/Resizable/Resizable.module.cjs.map +1 -1
  368. package/dist/components/Resizable/Resizable.module.js +1 -0
  369. package/dist/components/Resizable/Resizable.module.js.map +1 -1
  370. package/dist/components/SafeArea/SafeArea.module.cjs +1 -0
  371. package/dist/components/SafeArea/SafeArea.module.cjs.map +1 -1
  372. package/dist/components/SafeArea/SafeArea.module.js +1 -0
  373. package/dist/components/SafeArea/SafeArea.module.js.map +1 -1
  374. package/dist/components/Scheduler/Scheduler.module.cjs +1 -0
  375. package/dist/components/Scheduler/Scheduler.module.cjs.map +1 -1
  376. package/dist/components/Scheduler/Scheduler.module.js +1 -0
  377. package/dist/components/Scheduler/Scheduler.module.js.map +1 -1
  378. package/dist/components/ScrollArea/ScrollArea.module.cjs +1 -0
  379. package/dist/components/ScrollArea/ScrollArea.module.cjs.map +1 -1
  380. package/dist/components/ScrollArea/ScrollArea.module.js +1 -0
  381. package/dist/components/ScrollArea/ScrollArea.module.js.map +1 -1
  382. package/dist/components/SearchBar/SearchBar.module.cjs +1 -0
  383. package/dist/components/SearchBar/SearchBar.module.cjs.map +1 -1
  384. package/dist/components/SearchBar/SearchBar.module.js +1 -0
  385. package/dist/components/SearchBar/SearchBar.module.js.map +1 -1
  386. package/dist/components/SegmentedControl/SegmentedControl.module.cjs +1 -0
  387. package/dist/components/SegmentedControl/SegmentedControl.module.cjs.map +1 -1
  388. package/dist/components/SegmentedControl/SegmentedControl.module.js +1 -0
  389. package/dist/components/SegmentedControl/SegmentedControl.module.js.map +1 -1
  390. package/dist/components/Select/Select.module.cjs +1 -0
  391. package/dist/components/Select/Select.module.cjs.map +1 -1
  392. package/dist/components/Select/Select.module.js +1 -0
  393. package/dist/components/Select/Select.module.js.map +1 -1
  394. package/dist/components/Sidebar/Sidebar.module.cjs +1 -0
  395. package/dist/components/Sidebar/Sidebar.module.cjs.map +1 -1
  396. package/dist/components/Sidebar/Sidebar.module.js +1 -0
  397. package/dist/components/Sidebar/Sidebar.module.js.map +1 -1
  398. package/dist/components/SignaturePad/SignaturePad.module.cjs +1 -0
  399. package/dist/components/SignaturePad/SignaturePad.module.cjs.map +1 -1
  400. package/dist/components/SignaturePad/SignaturePad.module.js +1 -0
  401. package/dist/components/SignaturePad/SignaturePad.module.js.map +1 -1
  402. package/dist/components/Skeleton/Skeleton.module.cjs +1 -0
  403. package/dist/components/Skeleton/Skeleton.module.cjs.map +1 -1
  404. package/dist/components/Skeleton/Skeleton.module.js +1 -0
  405. package/dist/components/Skeleton/Skeleton.module.js.map +1 -1
  406. package/dist/components/Slider/Slider.module.cjs +1 -0
  407. package/dist/components/Slider/Slider.module.cjs.map +1 -1
  408. package/dist/components/Slider/Slider.module.js +1 -0
  409. package/dist/components/Slider/Slider.module.js.map +1 -1
  410. package/dist/components/Spacer/Spacer.module.cjs +1 -0
  411. package/dist/components/Spacer/Spacer.module.cjs.map +1 -1
  412. package/dist/components/Spacer/Spacer.module.js +1 -0
  413. package/dist/components/Spacer/Spacer.module.js.map +1 -1
  414. package/dist/components/Sparkline/Sparkline.module.cjs +1 -0
  415. package/dist/components/Sparkline/Sparkline.module.cjs.map +1 -1
  416. package/dist/components/Sparkline/Sparkline.module.js +1 -0
  417. package/dist/components/Sparkline/Sparkline.module.js.map +1 -1
  418. package/dist/components/Spinner/Spinner.module.cjs +1 -0
  419. package/dist/components/Spinner/Spinner.module.cjs.map +1 -1
  420. package/dist/components/Spinner/Spinner.module.js +1 -0
  421. package/dist/components/Spinner/Spinner.module.js.map +1 -1
  422. package/dist/components/Stat/Stat.module.cjs +1 -0
  423. package/dist/components/Stat/Stat.module.cjs.map +1 -1
  424. package/dist/components/Stat/Stat.module.js +1 -0
  425. package/dist/components/Stat/Stat.module.js.map +1 -1
  426. package/dist/components/Stepper/Stepper.module.cjs +1 -0
  427. package/dist/components/Stepper/Stepper.module.cjs.map +1 -1
  428. package/dist/components/Stepper/Stepper.module.js +1 -0
  429. package/dist/components/Stepper/Stepper.module.js.map +1 -1
  430. package/dist/components/StepperInput/StepperInput.module.cjs +1 -0
  431. package/dist/components/StepperInput/StepperInput.module.cjs.map +1 -1
  432. package/dist/components/StepperInput/StepperInput.module.js +1 -0
  433. package/dist/components/StepperInput/StepperInput.module.js.map +1 -1
  434. package/dist/components/Switch/Switch.module.cjs +1 -0
  435. package/dist/components/Switch/Switch.module.cjs.map +1 -1
  436. package/dist/components/Switch/Switch.module.js +1 -0
  437. package/dist/components/Switch/Switch.module.js.map +1 -1
  438. package/dist/components/SyncStatusBadge/SyncStatusBadge.module.cjs +1 -0
  439. package/dist/components/SyncStatusBadge/SyncStatusBadge.module.cjs.map +1 -1
  440. package/dist/components/SyncStatusBadge/SyncStatusBadge.module.js +1 -0
  441. package/dist/components/SyncStatusBadge/SyncStatusBadge.module.js.map +1 -1
  442. package/dist/components/Table/Table.module.cjs +1 -0
  443. package/dist/components/Table/Table.module.cjs.map +1 -1
  444. package/dist/components/Table/Table.module.js +1 -0
  445. package/dist/components/Table/Table.module.js.map +1 -1
  446. package/dist/components/Tabs/Tabs.module.cjs +1 -0
  447. package/dist/components/Tabs/Tabs.module.cjs.map +1 -1
  448. package/dist/components/Tabs/Tabs.module.js +1 -0
  449. package/dist/components/Tabs/Tabs.module.js.map +1 -1
  450. package/dist/components/Tag/Tag.module.cjs +1 -0
  451. package/dist/components/Tag/Tag.module.cjs.map +1 -1
  452. package/dist/components/Tag/Tag.module.js +1 -0
  453. package/dist/components/Tag/Tag.module.js.map +1 -1
  454. package/dist/components/Textarea/Textarea.module.cjs +1 -0
  455. package/dist/components/Textarea/Textarea.module.cjs.map +1 -1
  456. package/dist/components/Textarea/Textarea.module.js +1 -0
  457. package/dist/components/Textarea/Textarea.module.js.map +1 -1
  458. package/dist/components/TimePicker/TimePicker.module.cjs +1 -0
  459. package/dist/components/TimePicker/TimePicker.module.cjs.map +1 -1
  460. package/dist/components/TimePicker/TimePicker.module.js +1 -0
  461. package/dist/components/TimePicker/TimePicker.module.js.map +1 -1
  462. package/dist/components/Timeline/Timeline.module.cjs +1 -0
  463. package/dist/components/Timeline/Timeline.module.cjs.map +1 -1
  464. package/dist/components/Timeline/Timeline.module.js +1 -0
  465. package/dist/components/Timeline/Timeline.module.js.map +1 -1
  466. package/dist/components/Toast/Toast.module.cjs +1 -0
  467. package/dist/components/Toast/Toast.module.cjs.map +1 -1
  468. package/dist/components/Toast/Toast.module.js +1 -0
  469. package/dist/components/Toast/Toast.module.js.map +1 -1
  470. package/dist/components/Toggle/Toggle.module.cjs +1 -0
  471. package/dist/components/Toggle/Toggle.module.cjs.map +1 -1
  472. package/dist/components/Toggle/Toggle.module.js +1 -0
  473. package/dist/components/Toggle/Toggle.module.js.map +1 -1
  474. package/dist/components/ToggleGroup/ToggleGroup.module.cjs +1 -0
  475. package/dist/components/ToggleGroup/ToggleGroup.module.cjs.map +1 -1
  476. package/dist/components/ToggleGroup/ToggleGroup.module.js +1 -0
  477. package/dist/components/ToggleGroup/ToggleGroup.module.js.map +1 -1
  478. package/dist/components/Tooltip/Tooltip.module.cjs +1 -0
  479. package/dist/components/Tooltip/Tooltip.module.cjs.map +1 -1
  480. package/dist/components/Tooltip/Tooltip.module.js +1 -0
  481. package/dist/components/Tooltip/Tooltip.module.js.map +1 -1
  482. package/dist/components/Tour/Tour.module.cjs +1 -0
  483. package/dist/components/Tour/Tour.module.cjs.map +1 -1
  484. package/dist/components/Tour/Tour.module.js +1 -0
  485. package/dist/components/Tour/Tour.module.js.map +1 -1
  486. package/dist/components/Transfer/Transfer.module.cjs +1 -0
  487. package/dist/components/Transfer/Transfer.module.cjs.map +1 -1
  488. package/dist/components/Transfer/Transfer.module.js +1 -0
  489. package/dist/components/Transfer/Transfer.module.js.map +1 -1
  490. package/dist/components/TreeView/TreeView.module.cjs +1 -0
  491. package/dist/components/TreeView/TreeView.module.cjs.map +1 -1
  492. package/dist/components/TreeView/TreeView.module.js +1 -0
  493. package/dist/components/TreeView/TreeView.module.js.map +1 -1
  494. package/dist/components/TruncateText/TruncateText.module.cjs +1 -0
  495. package/dist/components/TruncateText/TruncateText.module.cjs.map +1 -1
  496. package/dist/components/TruncateText/TruncateText.module.js +1 -0
  497. package/dist/components/TruncateText/TruncateText.module.js.map +1 -1
  498. package/dist/components/UpdatePrompt/UpdatePrompt.module.cjs +1 -0
  499. package/dist/components/UpdatePrompt/UpdatePrompt.module.cjs.map +1 -1
  500. package/dist/components/UpdatePrompt/UpdatePrompt.module.js +1 -0
  501. package/dist/components/UpdatePrompt/UpdatePrompt.module.js.map +1 -1
  502. package/dist/components/VideoPlayer/VideoPlayer.module.cjs +1 -0
  503. package/dist/components/VideoPlayer/VideoPlayer.module.cjs.map +1 -1
  504. package/dist/components/VideoPlayer/VideoPlayer.module.js +1 -0
  505. package/dist/components/VideoPlayer/VideoPlayer.module.js.map +1 -1
  506. package/dist/components/VirtualList/VirtualList.module.cjs +1 -0
  507. package/dist/components/VirtualList/VirtualList.module.cjs.map +1 -1
  508. package/dist/components/VirtualList/VirtualList.module.js +1 -0
  509. package/dist/components/VirtualList/VirtualList.module.js.map +1 -1
  510. package/dist/components/VirtualTable/VirtualTable.module.cjs +1 -0
  511. package/dist/components/VirtualTable/VirtualTable.module.cjs.map +1 -1
  512. package/dist/components/VirtualTable/VirtualTable.module.js +1 -0
  513. package/dist/components/VirtualTable/VirtualTable.module.js.map +1 -1
  514. package/dist/components/VisuallyHidden/VisuallyHidden.module.cjs +1 -0
  515. package/dist/components/VisuallyHidden/VisuallyHidden.module.cjs.map +1 -1
  516. package/dist/components/VisuallyHidden/VisuallyHidden.module.js +1 -0
  517. package/dist/components/VisuallyHidden/VisuallyHidden.module.js.map +1 -1
  518. package/dist/components/Wizard/Wizard.module.cjs +1 -0
  519. package/dist/components/Wizard/Wizard.module.cjs.map +1 -1
  520. package/dist/components/Wizard/Wizard.module.js +1 -0
  521. package/dist/components/Wizard/Wizard.module.js.map +1 -1
  522. package/dist/editor/RichTextEditor.module.cjs +1 -0
  523. package/dist/editor/RichTextEditor.module.cjs.map +1 -1
  524. package/dist/editor/RichTextEditor.module.js +1 -0
  525. package/dist/editor/RichTextEditor.module.js.map +1 -1
  526. package/dist/geo/TrajectoryMap.module.cjs +1 -0
  527. package/dist/geo/TrajectoryMap.module.cjs.map +1 -1
  528. package/dist/geo/TrajectoryMap.module.js +1 -0
  529. package/dist/geo/TrajectoryMap.module.js.map +1 -1
  530. package/dist/icons/IconPicker.module.cjs +1 -0
  531. package/dist/icons/IconPicker.module.cjs.map +1 -1
  532. package/dist/icons/IconPicker.module.js +1 -0
  533. package/dist/icons/IconPicker.module.js.map +1 -1
  534. package/dist/styles/AIChat.css +1 -78
  535. package/dist/styles/Accordion.css +1 -11
  536. package/dist/styles/Alert.css +1 -31
  537. package/dist/styles/AppBar.css +1 -16
  538. package/dist/styles/AppShell.css +1 -7
  539. package/dist/styles/AspectRatio.css +1 -2
  540. package/dist/styles/AudioPlayer.css +1 -12
  541. package/dist/styles/AudioRecorder.css +1 -19
  542. package/dist/styles/Avatar.css +1 -12
  543. package/dist/styles/AvatarGroup.css +1 -17
  544. package/dist/styles/Badge.css +1 -24
  545. package/dist/styles/Banner.css +1 -12
  546. package/dist/styles/BarList.css +1 -9
  547. package/dist/styles/BarcodeScanner.css +1 -20
  548. package/dist/styles/BottomNavigation.css +1 -9
  549. package/dist/styles/BottomSheet.css +1 -10
  550. package/dist/styles/BrazilMap.css +1 -19
  551. package/dist/styles/Breadcrumbs.css +1 -7
  552. package/dist/styles/Button.css +1 -41
  553. package/dist/styles/Calendar.css +1 -15
  554. package/dist/styles/Card.css +1 -14
  555. package/dist/styles/Carousel.css +1 -16
  556. package/dist/styles/Center.css +1 -4
  557. package/dist/styles/Chat.css +1 -34
  558. package/dist/styles/Checkbox.css +1 -10
  559. package/dist/styles/ChipInput.css +1 -12
  560. package/dist/styles/CodeBlock.css +1 -24
  561. package/dist/styles/Collapsible.css +1 -5
  562. package/dist/styles/Combobox.css +1 -17
  563. package/dist/styles/Command.css +1 -19
  564. package/dist/styles/ContextMenu.css +1 -10
  565. package/dist/styles/CopyButton.css +1 -3
  566. package/dist/styles/DataList.css +1 -2
  567. package/dist/styles/DataTable.css +1 -18
  568. package/dist/styles/DateRangePicker.css +1 -21
  569. package/dist/styles/DescriptionList.css +1 -3
  570. package/dist/styles/Divider.css +1 -10
  571. package/dist/styles/Drawer.css +1 -21
  572. package/dist/styles/DropdownMenu.css +1 -15
  573. package/dist/styles/Dropzone.css +1 -6
  574. package/dist/styles/EmptyState.css +1 -5
  575. package/dist/styles/ErrorState.css +1 -5
  576. package/dist/styles/ErrorText.css +1 -1
  577. package/dist/styles/FileUpload.css +1 -16
  578. package/dist/styles/FilterBar.css +1 -18
  579. package/dist/styles/FloatingActionButton.css +1 -22
  580. package/dist/styles/Form.css +1 -20
  581. package/dist/styles/HoverCard.css +1 -10
  582. package/dist/styles/IconPicker.css +1 -5
  583. package/dist/styles/Image.css +1 -1
  584. package/dist/styles/ImageCropper.css +1 -15
  585. package/dist/styles/Input.css +1 -23
  586. package/dist/styles/InstallBanner.css +1 -7
  587. package/dist/styles/Kanban.css +1 -14
  588. package/dist/styles/Kbd.css +1 -4
  589. package/dist/styles/Label.css +1 -2
  590. package/dist/styles/Layout.css +1 -21
  591. package/dist/styles/Lightbox.css +1 -20
  592. package/dist/styles/ListTile.css +1 -13
  593. package/dist/styles/MapLegend.css +1 -8
  594. package/dist/styles/Markdown.css +1 -23
  595. package/dist/styles/Masonry.css +1 -3
  596. package/dist/styles/Menubar.css +1 -16
  597. package/dist/styles/Modal.css +1 -20
  598. package/dist/styles/ModalsManager.css +1 -1
  599. package/dist/styles/MultiSelect.css +1 -20
  600. package/dist/styles/MunicipalitySearch.css +1 -5
  601. package/dist/styles/NProgress.css +1 -1
  602. package/dist/styles/Navbar.css +1 -9
  603. package/dist/styles/NavigationMenu.css +1 -11
  604. package/dist/styles/NavigationRail.css +1 -13
  605. package/dist/styles/NotificationCenter.css +1 -20
  606. package/dist/styles/OfflineIndicator.css +1 -6
  607. package/dist/styles/Page.css +1 -12
  608. package/dist/styles/Pagination.css +1 -11
  609. package/dist/styles/PasswordInput.css +1 -20
  610. package/dist/styles/PinInput.css +1 -12
  611. package/dist/styles/PixQRCode.css +1 -8
  612. package/dist/styles/Popover.css +1 -9
  613. package/dist/styles/Progress.css +1 -10
  614. package/dist/styles/QRCode.css +1 -2
  615. package/dist/styles/Radio.css +1 -13
  616. package/dist/styles/RangeSlider.css +1 -14
  617. package/dist/styles/RatingStars.css +1 -10
  618. package/dist/styles/RefreshIndicator.css +1 -4
  619. package/dist/styles/Resizable.css +1 -12
  620. package/dist/styles/RichTextEditor.css +1 -18
  621. package/dist/styles/SafeArea.css +1 -6
  622. package/dist/styles/Scheduler.css +1 -23
  623. package/dist/styles/ScrollArea.css +1 -6
  624. package/dist/styles/SearchBar.css +1 -10
  625. package/dist/styles/SegmentedControl.css +1 -11
  626. package/dist/styles/Select.css +1 -13
  627. package/dist/styles/Sidebar.css +1 -18
  628. package/dist/styles/SignaturePad.css +1 -5
  629. package/dist/styles/Skeleton.css +1 -6
  630. package/dist/styles/Slider.css +1 -14
  631. package/dist/styles/Spacer.css +1 -3
  632. package/dist/styles/Sparkline.css +1 -3
  633. package/dist/styles/Spinner.css +1 -11
  634. package/dist/styles/Stat.css +1 -11
  635. package/dist/styles/Stepper.css +1 -16
  636. package/dist/styles/StepperInput.css +1 -14
  637. package/dist/styles/Switch.css +1 -10
  638. package/dist/styles/SyncStatusBadge.css +1 -12
  639. package/dist/styles/Table.css +1 -15
  640. package/dist/styles/Tabs.css +1 -13
  641. package/dist/styles/Tag.css +1 -13
  642. package/dist/styles/Textarea.css +1 -12
  643. package/dist/styles/TimePicker.css +1 -13
  644. package/dist/styles/Timeline.css +1 -16
  645. package/dist/styles/Toast.css +1 -20
  646. package/dist/styles/Toggle.css +1 -11
  647. package/dist/styles/ToggleGroup.css +1 -8
  648. package/dist/styles/Tooltip.css +1 -9
  649. package/dist/styles/Tour.css +1 -19
  650. package/dist/styles/TrajectoryMap.css +1 -15
  651. package/dist/styles/Transfer.css +1 -20
  652. package/dist/styles/TreeView.css +1 -16
  653. package/dist/styles/TruncateText.css +1 -1
  654. package/dist/styles/UpdatePrompt.css +1 -9
  655. package/dist/styles/VideoPlayer.css +1 -22
  656. package/dist/styles/VirtualList.css +1 -4
  657. package/dist/styles/VirtualTable.css +1 -16
  658. package/dist/styles/VisuallyHidden.css +1 -1
  659. package/dist/styles/Wizard.css +1 -3
  660. package/dist/styles/advanced.css +2 -0
  661. package/dist/styles/chat.css +28 -0
  662. package/dist/styles/component/AIChat.css +79 -0
  663. package/dist/styles/component/Accordion.css +12 -0
  664. package/dist/styles/component/Alert.css +32 -0
  665. package/dist/styles/component/AppBar.css +17 -0
  666. package/dist/styles/component/AppShell.css +8 -0
  667. package/dist/styles/component/AspectRatio.css +3 -0
  668. package/dist/styles/component/AudioPlayer.css +13 -0
  669. package/dist/styles/component/AudioRecorder.css +20 -0
  670. package/dist/styles/component/Avatar.css +13 -0
  671. package/dist/styles/component/AvatarGroup.css +18 -0
  672. package/dist/styles/component/Badge.css +25 -0
  673. package/dist/styles/component/Banner.css +13 -0
  674. package/dist/styles/component/BarList.css +10 -0
  675. package/dist/styles/component/BarcodeScanner.css +21 -0
  676. package/dist/styles/component/BottomNavigation.css +10 -0
  677. package/dist/styles/component/BottomSheet.css +11 -0
  678. package/dist/styles/component/BrazilMap.css +20 -0
  679. package/dist/styles/component/Breadcrumbs.css +8 -0
  680. package/dist/styles/component/Button.css +42 -0
  681. package/dist/styles/component/Calendar.css +16 -0
  682. package/dist/styles/component/Card.css +15 -0
  683. package/dist/styles/component/Carousel.css +17 -0
  684. package/dist/styles/component/Center.css +5 -0
  685. package/dist/styles/component/Chat.css +63 -0
  686. package/dist/styles/component/Checkbox.css +11 -0
  687. package/dist/styles/component/ChipInput.css +13 -0
  688. package/dist/styles/component/CodeBlock.css +25 -0
  689. package/dist/styles/component/Collapsible.css +6 -0
  690. package/dist/styles/component/Combobox.css +18 -0
  691. package/dist/styles/component/Command.css +20 -0
  692. package/dist/styles/component/ContextMenu.css +13 -0
  693. package/dist/styles/component/CopyButton.css +4 -0
  694. package/dist/styles/component/DataList.css +3 -0
  695. package/dist/styles/component/DataTable.css +19 -0
  696. package/dist/styles/component/DateRangePicker.css +22 -0
  697. package/dist/styles/component/DescriptionList.css +4 -0
  698. package/dist/styles/component/Divider.css +11 -0
  699. package/dist/styles/component/Drawer.css +22 -0
  700. package/dist/styles/component/DropdownMenu.css +16 -0
  701. package/dist/styles/component/Dropzone.css +7 -0
  702. package/dist/styles/component/EmptyState.css +6 -0
  703. package/dist/styles/component/ErrorState.css +6 -0
  704. package/dist/styles/component/ErrorText.css +2 -0
  705. package/dist/styles/component/FileUpload.css +17 -0
  706. package/dist/styles/component/FilterBar.css +19 -0
  707. package/dist/styles/component/FloatingActionButton.css +23 -0
  708. package/dist/styles/component/Form.css +21 -0
  709. package/dist/styles/component/HoverCard.css +11 -0
  710. package/dist/styles/component/IconPicker.css +6 -0
  711. package/dist/styles/component/Image.css +2 -0
  712. package/dist/styles/component/ImageCropper.css +16 -0
  713. package/dist/styles/component/Input.css +24 -0
  714. package/dist/styles/component/InstallBanner.css +8 -0
  715. package/dist/styles/component/Kanban.css +15 -0
  716. package/dist/styles/component/Kbd.css +5 -0
  717. package/dist/styles/component/Label.css +3 -0
  718. package/dist/styles/component/Layout.css +22 -0
  719. package/dist/styles/component/Lightbox.css +21 -0
  720. package/dist/styles/component/ListTile.css +14 -0
  721. package/dist/styles/component/MapLegend.css +9 -0
  722. package/dist/styles/component/Markdown.css +24 -0
  723. package/dist/styles/component/Masonry.css +4 -0
  724. package/dist/styles/component/Menubar.css +17 -0
  725. package/dist/styles/component/Modal.css +21 -0
  726. package/dist/styles/component/ModalsManager.css +2 -0
  727. package/dist/styles/component/MultiSelect.css +21 -0
  728. package/dist/styles/component/MunicipalitySearch.css +6 -0
  729. package/dist/styles/component/NProgress.css +2 -0
  730. package/dist/styles/component/Navbar.css +10 -0
  731. package/dist/styles/component/NavigationMenu.css +12 -0
  732. package/dist/styles/component/NavigationRail.css +14 -0
  733. package/dist/styles/component/NotificationCenter.css +21 -0
  734. package/dist/styles/component/OfflineIndicator.css +7 -0
  735. package/dist/styles/component/Page.css +13 -0
  736. package/dist/styles/component/Pagination.css +12 -0
  737. package/dist/styles/component/PasswordInput.css +21 -0
  738. package/dist/styles/component/PinInput.css +13 -0
  739. package/dist/styles/component/PixQRCode.css +9 -0
  740. package/dist/styles/component/Popover.css +10 -0
  741. package/dist/styles/component/Progress.css +11 -0
  742. package/dist/styles/component/QRCode.css +3 -0
  743. package/dist/styles/component/Radio.css +14 -0
  744. package/dist/styles/component/RangeSlider.css +15 -0
  745. package/dist/styles/component/RatingStars.css +11 -0
  746. package/dist/styles/component/RefreshIndicator.css +5 -0
  747. package/dist/styles/component/Resizable.css +13 -0
  748. package/dist/styles/component/RichTextEditor.css +19 -0
  749. package/dist/styles/component/SafeArea.css +7 -0
  750. package/dist/styles/component/Scheduler.css +24 -0
  751. package/dist/styles/component/ScrollArea.css +7 -0
  752. package/dist/styles/component/SearchBar.css +11 -0
  753. package/dist/styles/component/SegmentedControl.css +12 -0
  754. package/dist/styles/component/Select.css +14 -0
  755. package/dist/styles/component/Sidebar.css +19 -0
  756. package/dist/styles/component/SignaturePad.css +6 -0
  757. package/dist/styles/component/Skeleton.css +7 -0
  758. package/dist/styles/component/Slider.css +15 -0
  759. package/dist/styles/component/Spacer.css +4 -0
  760. package/dist/styles/component/Sparkline.css +4 -0
  761. package/dist/styles/component/Spinner.css +12 -0
  762. package/dist/styles/component/Stat.css +12 -0
  763. package/dist/styles/component/Stepper.css +17 -0
  764. package/dist/styles/component/StepperInput.css +15 -0
  765. package/dist/styles/component/Switch.css +11 -0
  766. package/dist/styles/component/SyncStatusBadge.css +13 -0
  767. package/dist/styles/component/Table.css +16 -0
  768. package/dist/styles/component/Tabs.css +14 -0
  769. package/dist/styles/component/Tag.css +14 -0
  770. package/dist/styles/component/Textarea.css +13 -0
  771. package/dist/styles/component/TimePicker.css +14 -0
  772. package/dist/styles/component/Timeline.css +17 -0
  773. package/dist/styles/component/Toast.css +21 -0
  774. package/dist/styles/component/Toggle.css +12 -0
  775. package/dist/styles/component/ToggleGroup.css +9 -0
  776. package/dist/styles/component/Tooltip.css +10 -0
  777. package/dist/styles/component/Tour.css +20 -0
  778. package/dist/styles/component/TrajectoryMap.css +16 -0
  779. package/dist/styles/component/Transfer.css +21 -0
  780. package/dist/styles/component/TreeView.css +17 -0
  781. package/dist/styles/component/TruncateText.css +2 -0
  782. package/dist/styles/component/UpdatePrompt.css +10 -0
  783. package/dist/styles/component/VideoPlayer.css +23 -0
  784. package/dist/styles/component/VirtualList.css +5 -0
  785. package/dist/styles/component/VirtualTable.css +17 -0
  786. package/dist/styles/component/VisuallyHidden.css +2 -0
  787. package/dist/styles/component/Wizard.css +4 -0
  788. package/dist/styles/manifest.json +202 -190
  789. package/dist/styles.css +1 -1
  790. package/dist/tempest-react-sdk.cjs +1 -1
  791. package/dist/tempest-react-sdk.d.ts +253 -10
  792. package/dist/tempest-react-sdk.js +169 -167
  793. package/dist/theme/create-theme.cjs +3 -3
  794. package/dist/theme/create-theme.cjs.map +1 -1
  795. package/dist/theme/create-theme.js +109 -57
  796. package/dist/theme/create-theme.js.map +1 -1
  797. package/dist/vite/narrow-tokens.cjs +3 -0
  798. package/dist/vite/narrow-tokens.cjs.map +1 -0
  799. package/dist/vite/narrow-tokens.js +50 -0
  800. package/dist/vite/narrow-tokens.js.map +1 -0
  801. package/dist/vite/tempest-styles.cjs +6 -4
  802. package/dist/vite/tempest-styles.cjs.map +1 -1
  803. package/dist/vite/tempest-styles.js +73 -47
  804. package/dist/vite/tempest-styles.js.map +1 -1
  805. package/dist/vite.d.ts +19 -0
  806. package/loader/css-loader-hooks.mjs +37 -0
  807. package/loader/css-loader.mjs +46 -0
  808. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Button.module.cjs","names":[],"sources":["../../../src/components/Button/Button.module.css"],"sourcesContent":[".button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n border: 1px solid transparent;\n border-radius: var(--tempest-control-radius, var(--tempest-radius-md));\n font-family: var(--tempest-font-sans);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-none);\n letter-spacing: var(--tempest-tracking-normal);\n text-decoration: none;\n white-space: nowrap;\n user-select: none;\n transition: var(--tempest-transition-base);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .button:hover:not(:disabled) {\n box-shadow: var(--tempest-shadow-sm);\n }\n}\n\n.button:active:not(:disabled) {\n transform: translateY(1px);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:disabled {\n opacity: 0.55;\n box-shadow: none;\n}\n\n/* ============================================================\n * Variants — solid (default), soft, outline, ghost\n * Status colors: primary, secondary (neutral), danger, success\n * ============================================================ */\n\n/* primary — solid filled */\n.primary {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n.primary:hover:not(:disabled) {\n background-color: var(--tempest-primary-hover);\n}\n.primary:active:not(:disabled) {\n background-color: var(--tempest-primary-active);\n}\n\n/* secondary — neutral surface */\n.secondary {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n border-color: var(--tempest-border);\n}\n.secondary:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n border-color: var(--tempest-border-strong);\n}\n\n/* danger — solid red */\n.danger {\n background-color: var(--tempest-danger-solid);\n color: var(--tempest-danger-on-solid);\n}\n.danger:hover:not(:disabled) {\n background-color: var(--tempest-danger-hover);\n}\n\n/* success — solid green */\n.success {\n background-color: var(--tempest-success-solid);\n color: var(--tempest-success-on-solid);\n}\n.success:hover:not(:disabled) {\n filter: brightness(0.92);\n}\n\n/* ghost — transparent, hover surface */\n.ghost {\n background-color: transparent;\n color: var(--tempest-text);\n box-shadow: none;\n}\n.ghost:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n box-shadow: none;\n}\n.ghost:active:not(:disabled) {\n background-color: var(--tempest-surface-2);\n box-shadow: none;\n}\n\n/* soft — tinted background, primary text */\n.soft {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n box-shadow: none;\n}\n.soft:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft-hover);\n}\n\n/* outline — bordered, transparent fill */\n.outline {\n background-color: transparent;\n color: var(--tempest-primary);\n border-color: var(--tempest-primary);\n box-shadow: none;\n}\n/*\n * The text colour has to move with the background.\n *\n * `.outline` sets `color: var(--tempest-primary)` over a transparent background,\n * where it is fine. This rule tints the background to `--tempest-primary-soft` and,\n * without restating the colour, leaves the fill token sitting on the tint: **4.38:1 in\n * the light theme and 4.28:1 in dark**, both under the 4.5:1 floor for text — so the\n * label got harder to read at the exact moment the pointer was on it.\n *\n * `--tempest-primary-on-soft` is the token for this ground (6.18:1 / 8.72:1) and\n * `docs/styles.md` has documented the rule all along. A rule that changes only the\n * background of a coloured element is the shape of this bug; the other eight places in\n * the SDK that tint a background inherit `--tempest-text`, `--tempest-text-muted` or\n * `--tempest-primary-on-soft` and are fine.\n */\n.outline:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n}\n\n/* link — text-only, underline on hover */\n.link {\n background-color: transparent;\n color: var(--tempest-primary);\n box-shadow: none;\n padding-left: 0;\n padding-right: 0;\n border-radius: var(--tempest-radius-sm);\n}\n.link:hover:not(:disabled) {\n color: var(--tempest-primary-hover);\n text-decoration: underline;\n background: none;\n box-shadow: none;\n}\n\n/* ============================================================\n * Sizes — token-driven, density-aware\n * ============================================================ */\n.xs {\n height: var(--tempest-control-height-xs);\n padding: 0 var(--tempest-control-padding-xs);\n font-size: var(--tempest-control-font-xs);\n}\n.sm {\n height: var(--tempest-control-height-sm);\n padding: 0 var(--tempest-control-padding-sm);\n font-size: var(--tempest-control-font-sm);\n}\n.md {\n height: var(--tempest-control-height-md);\n padding: 0 var(--tempest-control-padding-md);\n font-size: var(--tempest-control-font-md);\n}\n.lg {\n height: var(--tempest-control-height-lg);\n padding: 0 var(--tempest-control-padding-lg);\n font-size: var(--tempest-control-font-lg);\n}\n.xl {\n height: var(--tempest-control-height-xl);\n padding: 0 var(--tempest-control-padding-xl);\n font-size: var(--tempest-control-font-xl);\n}\n\n/* Square (icon-only) — width matches height */\n.iconOnly {\n position: relative;\n}\n.iconOnly.xs {\n width: var(--tempest-control-height-xs);\n padding: 0;\n}\n.iconOnly.sm {\n width: var(--tempest-control-height-sm);\n padding: 0;\n}\n.iconOnly.md {\n width: var(--tempest-control-height-md);\n padding: 0;\n}\n.iconOnly.lg {\n width: var(--tempest-control-height-lg);\n padding: 0;\n}\n.iconOnly.xl {\n width: var(--tempest-control-height-xl);\n padding: 0;\n}\n\n/* Touch hit-slop — extend tap target to a min 44×44 on coarse pointers\n * for the smallest icon-only sizes, without changing visual footprint. */\n@media (pointer: coarse) {\n .iconOnly.xs::after,\n .iconOnly.sm::after {\n content: \"\";\n position: absolute;\n inset: -8px;\n }\n}\n\n/* Pill shape */\n.pill {\n border-radius: var(--tempest-radius-full);\n}\n\n.fullWidth {\n width: 100%;\n}\n\n/*\n * Lay out leftIcon + label + rightIcon as one centered, gapped row. Without\n * this the three are inline inside a single span (no gap, icon baseline-\n * aligned instead of centered), which reads as off-center — most visible on\n * fullWidth buttons where the label has room to drift.\n */\n.content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n min-width: 0;\n}\n\n.loading .hiddenText {\n visibility: hidden;\n}\n\n.spinner {\n position: absolute;\n animation: tempest-spin 0.8s linear infinite;\n}\n\n@keyframes tempest-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Button.module.cjs","names":[],"sources":["../../../src/components/Button/Button.module.css"],"sourcesContent":[".button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n border: 1px solid transparent;\n border-radius: var(--tempest-control-radius, var(--tempest-radius-md));\n font-family: var(--tempest-font-sans);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-none);\n letter-spacing: var(--tempest-tracking-normal);\n text-decoration: none;\n white-space: nowrap;\n user-select: none;\n transition: var(--tempest-transition-base);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .button:hover:not(:disabled) {\n box-shadow: var(--tempest-shadow-sm);\n }\n}\n\n.button:active:not(:disabled) {\n transform: translateY(1px);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:disabled {\n opacity: 0.55;\n box-shadow: none;\n}\n\n/* ============================================================\n * Variants — solid (default), soft, outline, ghost\n * Status colors: primary, secondary (neutral), danger, success\n * ============================================================ */\n\n/* primary — solid filled */\n.primary {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n.primary:hover:not(:disabled) {\n background-color: var(--tempest-primary-hover);\n}\n.primary:active:not(:disabled) {\n background-color: var(--tempest-primary-active);\n}\n\n/* secondary — neutral surface */\n.secondary {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n border-color: var(--tempest-border);\n}\n.secondary:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n border-color: var(--tempest-border-strong);\n}\n\n/* danger — solid red */\n.danger {\n background-color: var(--tempest-danger-solid);\n color: var(--tempest-danger-on-solid);\n}\n.danger:hover:not(:disabled) {\n background-color: var(--tempest-danger-hover);\n}\n\n/* success — solid green */\n.success {\n background-color: var(--tempest-success-solid);\n color: var(--tempest-success-on-solid);\n}\n.success:hover:not(:disabled) {\n filter: brightness(0.92);\n}\n\n/* ghost — transparent, hover surface */\n.ghost {\n background-color: transparent;\n color: var(--tempest-text);\n box-shadow: none;\n}\n.ghost:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n box-shadow: none;\n}\n.ghost:active:not(:disabled) {\n background-color: var(--tempest-surface-2);\n box-shadow: none;\n}\n\n/* soft — tinted background, primary text */\n.soft {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n box-shadow: none;\n}\n.soft:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft-hover);\n}\n\n/* outline — bordered, transparent fill */\n.outline {\n background-color: transparent;\n color: var(--tempest-primary);\n border-color: var(--tempest-primary);\n box-shadow: none;\n}\n/*\n * The text colour has to move with the background.\n *\n * `.outline` sets `color: var(--tempest-primary)` over a transparent background,\n * where it is fine. This rule tints the background to `--tempest-primary-soft` and,\n * without restating the colour, leaves the fill token sitting on the tint: **4.38:1 in\n * the light theme and 4.28:1 in dark**, both under the 4.5:1 floor for text — so the\n * label got harder to read at the exact moment the pointer was on it.\n *\n * `--tempest-primary-on-soft` is the token for this ground (6.18:1 / 8.72:1) and\n * `docs/styles.md` has documented the rule all along. A rule that changes only the\n * background of a coloured element is the shape of this bug; the other eight places in\n * the SDK that tint a background inherit `--tempest-text`, `--tempest-text-muted` or\n * `--tempest-primary-on-soft` and are fine.\n */\n.outline:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n}\n\n/* link — text-only, underline on hover */\n.link {\n background-color: transparent;\n color: var(--tempest-primary);\n box-shadow: none;\n padding-left: 0;\n padding-right: 0;\n border-radius: var(--tempest-radius-sm);\n}\n.link:hover:not(:disabled) {\n color: var(--tempest-primary-hover);\n text-decoration: underline;\n background: none;\n box-shadow: none;\n}\n\n/* ============================================================\n * Sizes — token-driven, density-aware\n * ============================================================ */\n.xs {\n height: var(--tempest-control-height-xs);\n padding: 0 var(--tempest-control-padding-xs);\n font-size: var(--tempest-control-font-xs);\n}\n.sm {\n height: var(--tempest-control-height-sm);\n padding: 0 var(--tempest-control-padding-sm);\n font-size: var(--tempest-control-font-sm);\n}\n.md {\n height: var(--tempest-control-height-md);\n padding: 0 var(--tempest-control-padding-md);\n font-size: var(--tempest-control-font-md);\n}\n.lg {\n height: var(--tempest-control-height-lg);\n padding: 0 var(--tempest-control-padding-lg);\n font-size: var(--tempest-control-font-lg);\n}\n.xl {\n height: var(--tempest-control-height-xl);\n padding: 0 var(--tempest-control-padding-xl);\n font-size: var(--tempest-control-font-xl);\n}\n\n/* Square (icon-only) — width matches height */\n.iconOnly {\n position: relative;\n}\n.iconOnly.xs {\n width: var(--tempest-control-height-xs);\n padding: 0;\n}\n.iconOnly.sm {\n width: var(--tempest-control-height-sm);\n padding: 0;\n}\n.iconOnly.md {\n width: var(--tempest-control-height-md);\n padding: 0;\n}\n.iconOnly.lg {\n width: var(--tempest-control-height-lg);\n padding: 0;\n}\n.iconOnly.xl {\n width: var(--tempest-control-height-xl);\n padding: 0;\n}\n\n/* Touch hit-slop — extend tap target to a min 44×44 on coarse pointers\n * for the smallest icon-only sizes, without changing visual footprint. */\n@media (pointer: coarse) {\n .iconOnly.xs::after,\n .iconOnly.sm::after {\n content: \"\";\n position: absolute;\n inset: -8px;\n }\n}\n\n/* Pill shape */\n.pill {\n border-radius: var(--tempest-radius-full);\n}\n\n.fullWidth {\n width: 100%;\n}\n\n/*\n * Lay out leftIcon + label + rightIcon as one centered, gapped row. Without\n * this the three are inline inside a single span (no gap, icon baseline-\n * aligned instead of centered), which reads as off-center — most visible on\n * fullWidth buttons where the label has room to drift.\n */\n.content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n min-width: 0;\n}\n\n.loading .hiddenText {\n visibility: hidden;\n}\n\n.spinner {\n position: absolute;\n animation: tempest-spin 0.8s linear infinite;\n}\n\n@keyframes tempest-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n"],"mappings":";"}
@@ -1,3 +1,4 @@
1
+ import "../../styles/component/Button.css";
1
2
  //#region src/components/Button/Button.module.css
2
3
  var e = "tempest_button_2ZuB7", t = "tempest_primary_s1sM6", n = "tempest_secondary_R0waJ", r = "tempest_danger_V4fX8", i = "tempest_success_w6qB6", a = "tempest_ghost_1KINV", o = "tempest_soft_c3kzm", s = "tempest_outline_F5jq-", c = "tempest_link_Zt5hw", l = "tempest_xs_cF6m0", u = "tempest_sm_NhG0g", d = "tempest_md_hH4h3", f = "tempest_lg_2plQf", p = "tempest_xl_nx4V0", m = "tempest_iconOnly_WCpTS", h = "tempest_pill_lx8lt", g = "tempest_fullWidth_36oJT", _ = "tempest_content_EKXmF", v = "tempest_loading_EQAt2", y = "tempest_hiddenText_hIiJ2", b = "tempest_spinner_ZExvW", x = "tempest_tempest-spin_UOSVC", S = {
3
4
  button: e,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.module.js","names":[],"sources":["../../../src/components/Button/Button.module.css"],"sourcesContent":[".button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n border: 1px solid transparent;\n border-radius: var(--tempest-control-radius, var(--tempest-radius-md));\n font-family: var(--tempest-font-sans);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-none);\n letter-spacing: var(--tempest-tracking-normal);\n text-decoration: none;\n white-space: nowrap;\n user-select: none;\n transition: var(--tempest-transition-base);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .button:hover:not(:disabled) {\n box-shadow: var(--tempest-shadow-sm);\n }\n}\n\n.button:active:not(:disabled) {\n transform: translateY(1px);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:disabled {\n opacity: 0.55;\n box-shadow: none;\n}\n\n/* ============================================================\n * Variants — solid (default), soft, outline, ghost\n * Status colors: primary, secondary (neutral), danger, success\n * ============================================================ */\n\n/* primary — solid filled */\n.primary {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n.primary:hover:not(:disabled) {\n background-color: var(--tempest-primary-hover);\n}\n.primary:active:not(:disabled) {\n background-color: var(--tempest-primary-active);\n}\n\n/* secondary — neutral surface */\n.secondary {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n border-color: var(--tempest-border);\n}\n.secondary:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n border-color: var(--tempest-border-strong);\n}\n\n/* danger — solid red */\n.danger {\n background-color: var(--tempest-danger-solid);\n color: var(--tempest-danger-on-solid);\n}\n.danger:hover:not(:disabled) {\n background-color: var(--tempest-danger-hover);\n}\n\n/* success — solid green */\n.success {\n background-color: var(--tempest-success-solid);\n color: var(--tempest-success-on-solid);\n}\n.success:hover:not(:disabled) {\n filter: brightness(0.92);\n}\n\n/* ghost — transparent, hover surface */\n.ghost {\n background-color: transparent;\n color: var(--tempest-text);\n box-shadow: none;\n}\n.ghost:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n box-shadow: none;\n}\n.ghost:active:not(:disabled) {\n background-color: var(--tempest-surface-2);\n box-shadow: none;\n}\n\n/* soft — tinted background, primary text */\n.soft {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n box-shadow: none;\n}\n.soft:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft-hover);\n}\n\n/* outline — bordered, transparent fill */\n.outline {\n background-color: transparent;\n color: var(--tempest-primary);\n border-color: var(--tempest-primary);\n box-shadow: none;\n}\n/*\n * The text colour has to move with the background.\n *\n * `.outline` sets `color: var(--tempest-primary)` over a transparent background,\n * where it is fine. This rule tints the background to `--tempest-primary-soft` and,\n * without restating the colour, leaves the fill token sitting on the tint: **4.38:1 in\n * the light theme and 4.28:1 in dark**, both under the 4.5:1 floor for text — so the\n * label got harder to read at the exact moment the pointer was on it.\n *\n * `--tempest-primary-on-soft` is the token for this ground (6.18:1 / 8.72:1) and\n * `docs/styles.md` has documented the rule all along. A rule that changes only the\n * background of a coloured element is the shape of this bug; the other eight places in\n * the SDK that tint a background inherit `--tempest-text`, `--tempest-text-muted` or\n * `--tempest-primary-on-soft` and are fine.\n */\n.outline:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n}\n\n/* link — text-only, underline on hover */\n.link {\n background-color: transparent;\n color: var(--tempest-primary);\n box-shadow: none;\n padding-left: 0;\n padding-right: 0;\n border-radius: var(--tempest-radius-sm);\n}\n.link:hover:not(:disabled) {\n color: var(--tempest-primary-hover);\n text-decoration: underline;\n background: none;\n box-shadow: none;\n}\n\n/* ============================================================\n * Sizes — token-driven, density-aware\n * ============================================================ */\n.xs {\n height: var(--tempest-control-height-xs);\n padding: 0 var(--tempest-control-padding-xs);\n font-size: var(--tempest-control-font-xs);\n}\n.sm {\n height: var(--tempest-control-height-sm);\n padding: 0 var(--tempest-control-padding-sm);\n font-size: var(--tempest-control-font-sm);\n}\n.md {\n height: var(--tempest-control-height-md);\n padding: 0 var(--tempest-control-padding-md);\n font-size: var(--tempest-control-font-md);\n}\n.lg {\n height: var(--tempest-control-height-lg);\n padding: 0 var(--tempest-control-padding-lg);\n font-size: var(--tempest-control-font-lg);\n}\n.xl {\n height: var(--tempest-control-height-xl);\n padding: 0 var(--tempest-control-padding-xl);\n font-size: var(--tempest-control-font-xl);\n}\n\n/* Square (icon-only) — width matches height */\n.iconOnly {\n position: relative;\n}\n.iconOnly.xs {\n width: var(--tempest-control-height-xs);\n padding: 0;\n}\n.iconOnly.sm {\n width: var(--tempest-control-height-sm);\n padding: 0;\n}\n.iconOnly.md {\n width: var(--tempest-control-height-md);\n padding: 0;\n}\n.iconOnly.lg {\n width: var(--tempest-control-height-lg);\n padding: 0;\n}\n.iconOnly.xl {\n width: var(--tempest-control-height-xl);\n padding: 0;\n}\n\n/* Touch hit-slop — extend tap target to a min 44×44 on coarse pointers\n * for the smallest icon-only sizes, without changing visual footprint. */\n@media (pointer: coarse) {\n .iconOnly.xs::after,\n .iconOnly.sm::after {\n content: \"\";\n position: absolute;\n inset: -8px;\n }\n}\n\n/* Pill shape */\n.pill {\n border-radius: var(--tempest-radius-full);\n}\n\n.fullWidth {\n width: 100%;\n}\n\n/*\n * Lay out leftIcon + label + rightIcon as one centered, gapped row. Without\n * this the three are inline inside a single span (no gap, icon baseline-\n * aligned instead of centered), which reads as off-center — most visible on\n * fullWidth buttons where the label has room to drift.\n */\n.content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n min-width: 0;\n}\n\n.loading .hiddenText {\n visibility: hidden;\n}\n\n.spinner {\n position: absolute;\n animation: tempest-spin 0.8s linear infinite;\n}\n\n@keyframes tempest-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Button.module.js","names":[],"sources":["../../../src/components/Button/Button.module.css"],"sourcesContent":[".button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n border: 1px solid transparent;\n border-radius: var(--tempest-control-radius, var(--tempest-radius-md));\n font-family: var(--tempest-font-sans);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-none);\n letter-spacing: var(--tempest-tracking-normal);\n text-decoration: none;\n white-space: nowrap;\n user-select: none;\n transition: var(--tempest-transition-base);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .button:hover:not(:disabled) {\n box-shadow: var(--tempest-shadow-sm);\n }\n}\n\n.button:active:not(:disabled) {\n transform: translateY(1px);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.button:disabled {\n opacity: 0.55;\n box-shadow: none;\n}\n\n/* ============================================================\n * Variants — solid (default), soft, outline, ghost\n * Status colors: primary, secondary (neutral), danger, success\n * ============================================================ */\n\n/* primary — solid filled */\n.primary {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n.primary:hover:not(:disabled) {\n background-color: var(--tempest-primary-hover);\n}\n.primary:active:not(:disabled) {\n background-color: var(--tempest-primary-active);\n}\n\n/* secondary — neutral surface */\n.secondary {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n border-color: var(--tempest-border);\n}\n.secondary:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n border-color: var(--tempest-border-strong);\n}\n\n/* danger — solid red */\n.danger {\n background-color: var(--tempest-danger-solid);\n color: var(--tempest-danger-on-solid);\n}\n.danger:hover:not(:disabled) {\n background-color: var(--tempest-danger-hover);\n}\n\n/* success — solid green */\n.success {\n background-color: var(--tempest-success-solid);\n color: var(--tempest-success-on-solid);\n}\n.success:hover:not(:disabled) {\n filter: brightness(0.92);\n}\n\n/* ghost — transparent, hover surface */\n.ghost {\n background-color: transparent;\n color: var(--tempest-text);\n box-shadow: none;\n}\n.ghost:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n box-shadow: none;\n}\n.ghost:active:not(:disabled) {\n background-color: var(--tempest-surface-2);\n box-shadow: none;\n}\n\n/* soft — tinted background, primary text */\n.soft {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n box-shadow: none;\n}\n.soft:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft-hover);\n}\n\n/* outline — bordered, transparent fill */\n.outline {\n background-color: transparent;\n color: var(--tempest-primary);\n border-color: var(--tempest-primary);\n box-shadow: none;\n}\n/*\n * The text colour has to move with the background.\n *\n * `.outline` sets `color: var(--tempest-primary)` over a transparent background,\n * where it is fine. This rule tints the background to `--tempest-primary-soft` and,\n * without restating the colour, leaves the fill token sitting on the tint: **4.38:1 in\n * the light theme and 4.28:1 in dark**, both under the 4.5:1 floor for text — so the\n * label got harder to read at the exact moment the pointer was on it.\n *\n * `--tempest-primary-on-soft` is the token for this ground (6.18:1 / 8.72:1) and\n * `docs/styles.md` has documented the rule all along. A rule that changes only the\n * background of a coloured element is the shape of this bug; the other eight places in\n * the SDK that tint a background inherit `--tempest-text`, `--tempest-text-muted` or\n * `--tempest-primary-on-soft` and are fine.\n */\n.outline:hover:not(:disabled) {\n background-color: var(--tempest-primary-soft);\n color: var(--tempest-primary-on-soft);\n}\n\n/* link — text-only, underline on hover */\n.link {\n background-color: transparent;\n color: var(--tempest-primary);\n box-shadow: none;\n padding-left: 0;\n padding-right: 0;\n border-radius: var(--tempest-radius-sm);\n}\n.link:hover:not(:disabled) {\n color: var(--tempest-primary-hover);\n text-decoration: underline;\n background: none;\n box-shadow: none;\n}\n\n/* ============================================================\n * Sizes — token-driven, density-aware\n * ============================================================ */\n.xs {\n height: var(--tempest-control-height-xs);\n padding: 0 var(--tempest-control-padding-xs);\n font-size: var(--tempest-control-font-xs);\n}\n.sm {\n height: var(--tempest-control-height-sm);\n padding: 0 var(--tempest-control-padding-sm);\n font-size: var(--tempest-control-font-sm);\n}\n.md {\n height: var(--tempest-control-height-md);\n padding: 0 var(--tempest-control-padding-md);\n font-size: var(--tempest-control-font-md);\n}\n.lg {\n height: var(--tempest-control-height-lg);\n padding: 0 var(--tempest-control-padding-lg);\n font-size: var(--tempest-control-font-lg);\n}\n.xl {\n height: var(--tempest-control-height-xl);\n padding: 0 var(--tempest-control-padding-xl);\n font-size: var(--tempest-control-font-xl);\n}\n\n/* Square (icon-only) — width matches height */\n.iconOnly {\n position: relative;\n}\n.iconOnly.xs {\n width: var(--tempest-control-height-xs);\n padding: 0;\n}\n.iconOnly.sm {\n width: var(--tempest-control-height-sm);\n padding: 0;\n}\n.iconOnly.md {\n width: var(--tempest-control-height-md);\n padding: 0;\n}\n.iconOnly.lg {\n width: var(--tempest-control-height-lg);\n padding: 0;\n}\n.iconOnly.xl {\n width: var(--tempest-control-height-xl);\n padding: 0;\n}\n\n/* Touch hit-slop — extend tap target to a min 44×44 on coarse pointers\n * for the smallest icon-only sizes, without changing visual footprint. */\n@media (pointer: coarse) {\n .iconOnly.xs::after,\n .iconOnly.sm::after {\n content: \"\";\n position: absolute;\n inset: -8px;\n }\n}\n\n/* Pill shape */\n.pill {\n border-radius: var(--tempest-radius-full);\n}\n\n.fullWidth {\n width: 100%;\n}\n\n/*\n * Lay out leftIcon + label + rightIcon as one centered, gapped row. Without\n * this the three are inline inside a single span (no gap, icon baseline-\n * aligned instead of centered), which reads as off-center — most visible on\n * fullWidth buttons where the label has room to drift.\n */\n.content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-control-gap, var(--tempest-space-2));\n min-width: 0;\n}\n\n.loading .hiddenText {\n visibility: hidden;\n}\n\n.spinner {\n position: absolute;\n animation: tempest-spin 0.8s linear infinite;\n}\n\n@keyframes tempest-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n"],"mappings":";"}
@@ -1,2 +1,3 @@
1
+ require("../../styles/component/Calendar.css");
1
2
  var e=`tempest_root_ObO-Z`,t=`tempest_header_5nSJG`,n=`tempest_title_Jd3Xb`,r=`tempest_nav_4h58I`,i=`tempest_weekdays_YzRfx`,a=`tempest_grid_nbaFm`,o=`tempest_weekday_k-7Vr`,s=`tempest_day_ao-IC`,c=`tempest_outside_HkC-6`,l=`tempest_today_p18-m`,u=`tempest_selected_C9bTY`,d={root:e,header:t,title:n,nav:r,weekdays:i,grid:a,weekday:o,day:s,outside:c,today:l,selected:u};exports.day=s,exports.default=d,exports.grid=a,exports.header=t,exports.nav=r,exports.outside=c,exports.root=e,exports.selected=u,exports.title=n,exports.today=l,exports.weekday=o,exports.weekdays=i;
2
3
  //# sourceMappingURL=Calendar.module.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.module.cjs","names":[],"sources":["../../../src/components/Calendar/Calendar.module.css"],"sourcesContent":[".root {\n display: inline-flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-family: var(--tempest-font-sans);\n user-select: none;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.title {\n flex: 1;\n text-align: center;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.nav:hover {\n background-color: var(--tempest-surface-2);\n}\n\n.nav:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.weekdays,\n.grid {\n display: grid;\n grid-template-columns: repeat(7, 2.25rem);\n gap: var(--tempest-space-1);\n}\n\n.weekday {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 1.5rem;\n font-size: var(--tempest-text-2xs);\n font-weight: var(--tempest-weight-semibold);\n color: var(--tempest-text-muted);\n text-transform: uppercase;\n}\n\n.day {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2.25rem;\n height: 2.25rem;\n border: 1px solid transparent;\n border-radius: var(--tempest-radius-md);\n background-color: transparent;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n cursor: pointer;\n transition:\n background-color var(--tempest-duration-fast) var(--tempest-ease-out),\n color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.day:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n}\n\n.day:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.day:disabled {\n color: var(--tempest-text-muted);\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.outside {\n /* No extra opacity: subtle-on-surface already reads as de-emphasised, and\n fading it further dropped the contrast to 2.11:1 (WCAG AA needs 4.5:1)\n for dates that are still clickable. */\n color: var(--tempest-text-subtle);\n}\n\n.today {\n border-color: var(--tempest-primary);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.selected,\n.selected:hover {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n border-color: var(--tempest-primary);\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Calendar.module.cjs","names":[],"sources":["../../../src/components/Calendar/Calendar.module.css"],"sourcesContent":[".root {\n display: inline-flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-family: var(--tempest-font-sans);\n user-select: none;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.title {\n flex: 1;\n text-align: center;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.nav:hover {\n background-color: var(--tempest-surface-2);\n}\n\n.nav:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.weekdays,\n.grid {\n display: grid;\n grid-template-columns: repeat(7, 2.25rem);\n gap: var(--tempest-space-1);\n}\n\n.weekday {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 1.5rem;\n font-size: var(--tempest-text-2xs);\n font-weight: var(--tempest-weight-semibold);\n color: var(--tempest-text-muted);\n text-transform: uppercase;\n}\n\n.day {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2.25rem;\n height: 2.25rem;\n border: 1px solid transparent;\n border-radius: var(--tempest-radius-md);\n background-color: transparent;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n cursor: pointer;\n transition:\n background-color var(--tempest-duration-fast) var(--tempest-ease-out),\n color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.day:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n}\n\n.day:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.day:disabled {\n color: var(--tempest-text-muted);\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.outside {\n /* No extra opacity: subtle-on-surface already reads as de-emphasised, and\n fading it further dropped the contrast to 2.11:1 (WCAG AA needs 4.5:1)\n for dates that are still clickable. */\n color: var(--tempest-text-subtle);\n}\n\n.today {\n border-color: var(--tempest-primary);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.selected,\n.selected:hover {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n border-color: var(--tempest-primary);\n}\n"],"mappings":";"}
@@ -1,3 +1,4 @@
1
+ import "../../styles/component/Calendar.css";
1
2
  //#region src/components/Calendar/Calendar.module.css
2
3
  var e = "tempest_root_ObO-Z", t = "tempest_header_5nSJG", n = "tempest_title_Jd3Xb", r = "tempest_nav_4h58I", i = "tempest_weekdays_YzRfx", a = "tempest_grid_nbaFm", o = "tempest_weekday_k-7Vr", s = "tempest_day_ao-IC", c = "tempest_outside_HkC-6", l = "tempest_today_p18-m", u = "tempest_selected_C9bTY", d = {
3
4
  root: e,
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.module.js","names":[],"sources":["../../../src/components/Calendar/Calendar.module.css"],"sourcesContent":[".root {\n display: inline-flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-family: var(--tempest-font-sans);\n user-select: none;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.title {\n flex: 1;\n text-align: center;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.nav:hover {\n background-color: var(--tempest-surface-2);\n}\n\n.nav:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.weekdays,\n.grid {\n display: grid;\n grid-template-columns: repeat(7, 2.25rem);\n gap: var(--tempest-space-1);\n}\n\n.weekday {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 1.5rem;\n font-size: var(--tempest-text-2xs);\n font-weight: var(--tempest-weight-semibold);\n color: var(--tempest-text-muted);\n text-transform: uppercase;\n}\n\n.day {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2.25rem;\n height: 2.25rem;\n border: 1px solid transparent;\n border-radius: var(--tempest-radius-md);\n background-color: transparent;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n cursor: pointer;\n transition:\n background-color var(--tempest-duration-fast) var(--tempest-ease-out),\n color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.day:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n}\n\n.day:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.day:disabled {\n color: var(--tempest-text-muted);\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.outside {\n /* No extra opacity: subtle-on-surface already reads as de-emphasised, and\n fading it further dropped the contrast to 2.11:1 (WCAG AA needs 4.5:1)\n for dates that are still clickable. */\n color: var(--tempest-text-subtle);\n}\n\n.today {\n border-color: var(--tempest-primary);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.selected,\n.selected:hover {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n border-color: var(--tempest-primary);\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Calendar.module.js","names":[],"sources":["../../../src/components/Calendar/Calendar.module.css"],"sourcesContent":[".root {\n display: inline-flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-family: var(--tempest-font-sans);\n user-select: none;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.title {\n flex: 1;\n text-align: center;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.nav:hover {\n background-color: var(--tempest-surface-2);\n}\n\n.nav:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.weekdays,\n.grid {\n display: grid;\n grid-template-columns: repeat(7, 2.25rem);\n gap: var(--tempest-space-1);\n}\n\n.weekday {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 1.5rem;\n font-size: var(--tempest-text-2xs);\n font-weight: var(--tempest-weight-semibold);\n color: var(--tempest-text-muted);\n text-transform: uppercase;\n}\n\n.day {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2.25rem;\n height: 2.25rem;\n border: 1px solid transparent;\n border-radius: var(--tempest-radius-md);\n background-color: transparent;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n cursor: pointer;\n transition:\n background-color var(--tempest-duration-fast) var(--tempest-ease-out),\n color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n.day:hover:not(:disabled) {\n background-color: var(--tempest-surface-2);\n}\n\n.day:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.day:disabled {\n color: var(--tempest-text-muted);\n cursor: not-allowed;\n opacity: 0.4;\n}\n\n.outside {\n /* No extra opacity: subtle-on-surface already reads as de-emphasised, and\n fading it further dropped the contrast to 2.11:1 (WCAG AA needs 4.5:1)\n for dates that are still clickable. */\n color: var(--tempest-text-subtle);\n}\n\n.today {\n border-color: var(--tempest-primary);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.selected,\n.selected:hover {\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n border-color: var(--tempest-primary);\n}\n"],"mappings":";"}
@@ -1,2 +1,3 @@
1
+ require("../../styles/component/Card.css");
1
2
  var e=`tempest_card_Cb1o4`,t=`tempest_flat_LRpce`,n=`tempest_raised_WmIqk`,r=`tempest_elevated_5VEDw`,i=`tempest_interactive_B8Tah`,a=`tempest_padded_oOxwN`,o=`tempest_flush_aiDZi`,s=`tempest_header_PTXf2`,c=`tempest_title_mSgoo`,l=`tempest_body_W441Z`,u=`tempest_footer_Mu-JC`,d={card:e,flat:t,raised:n,elevated:r,interactive:i,padded:a,flush:o,header:s,title:c,body:l,footer:u};exports.body=l,exports.card=e,exports.default=d,exports.elevated=r,exports.flat=t,exports.flush=o,exports.footer=u,exports.header=s,exports.interactive=i,exports.padded=a,exports.raised=n,exports.title=c;
2
3
  //# sourceMappingURL=Card.module.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Card.module.cjs","names":[],"sources":["../../../src/components/Card/Card.module.css"],"sourcesContent":[".card {\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n padding: var(--tempest-space-5);\n box-shadow: var(--tempest-shadow-sm);\n color: var(--tempest-text);\n transition:\n var(--tempest-transition-shadow),\n var(--tempest-transition-transform),\n border-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n/* ============================================================\n * Elevation variants\n * ============================================================ */\n.flat {\n box-shadow: none;\n}\n.raised {\n box-shadow: var(--tempest-shadow-md);\n}\n.elevated {\n box-shadow: var(--tempest-shadow-lg);\n border-color: transparent;\n}\n\n/* ============================================================\n * Interactive — hoverable card (use for clickable cards, list rows)\n * ============================================================ */\n.interactive {\n cursor: pointer;\n}\n@media (hover: hover) and (pointer: fine) {\n .interactive:hover {\n border-color: var(--tempest-border-strong);\n box-shadow: var(--tempest-shadow-md);\n transform: translateY(-1px);\n }\n}\n.interactive:active {\n transform: translateY(0);\n box-shadow: var(--tempest-shadow-sm);\n}\n.interactive:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.padded {\n padding: var(--tempest-space-5);\n}\n\n.flush {\n padding: 0;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-bottom: 1px solid var(--tempest-border);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-md);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-snug);\n color: var(--tempest-text);\n}\n\n.body {\n padding: var(--tempest-space-5);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-top: 1px solid var(--tempest-border);\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Card.module.cjs","names":[],"sources":["../../../src/components/Card/Card.module.css"],"sourcesContent":[".card {\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n padding: var(--tempest-space-5);\n box-shadow: var(--tempest-shadow-sm);\n color: var(--tempest-text);\n transition:\n var(--tempest-transition-shadow),\n var(--tempest-transition-transform),\n border-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n/* ============================================================\n * Elevation variants\n * ============================================================ */\n.flat {\n box-shadow: none;\n}\n.raised {\n box-shadow: var(--tempest-shadow-md);\n}\n.elevated {\n box-shadow: var(--tempest-shadow-lg);\n border-color: transparent;\n}\n\n/* ============================================================\n * Interactive — hoverable card (use for clickable cards, list rows)\n * ============================================================ */\n.interactive {\n cursor: pointer;\n}\n@media (hover: hover) and (pointer: fine) {\n .interactive:hover {\n border-color: var(--tempest-border-strong);\n box-shadow: var(--tempest-shadow-md);\n transform: translateY(-1px);\n }\n}\n.interactive:active {\n transform: translateY(0);\n box-shadow: var(--tempest-shadow-sm);\n}\n.interactive:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.padded {\n padding: var(--tempest-space-5);\n}\n\n.flush {\n padding: 0;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-bottom: 1px solid var(--tempest-border);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-md);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-snug);\n color: var(--tempest-text);\n}\n\n.body {\n padding: var(--tempest-space-5);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-top: 1px solid var(--tempest-border);\n}\n"],"mappings":";"}
@@ -1,3 +1,4 @@
1
+ import "../../styles/component/Card.css";
1
2
  //#region src/components/Card/Card.module.css
2
3
  var e = "tempest_card_Cb1o4", t = "tempest_flat_LRpce", n = "tempest_raised_WmIqk", r = "tempest_elevated_5VEDw", i = "tempest_interactive_B8Tah", a = "tempest_padded_oOxwN", o = "tempest_flush_aiDZi", s = "tempest_header_PTXf2", c = "tempest_title_mSgoo", l = "tempest_body_W441Z", u = "tempest_footer_Mu-JC", d = {
3
4
  card: e,
@@ -1 +1 @@
1
- {"version":3,"file":"Card.module.js","names":[],"sources":["../../../src/components/Card/Card.module.css"],"sourcesContent":[".card {\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n padding: var(--tempest-space-5);\n box-shadow: var(--tempest-shadow-sm);\n color: var(--tempest-text);\n transition:\n var(--tempest-transition-shadow),\n var(--tempest-transition-transform),\n border-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n/* ============================================================\n * Elevation variants\n * ============================================================ */\n.flat {\n box-shadow: none;\n}\n.raised {\n box-shadow: var(--tempest-shadow-md);\n}\n.elevated {\n box-shadow: var(--tempest-shadow-lg);\n border-color: transparent;\n}\n\n/* ============================================================\n * Interactive — hoverable card (use for clickable cards, list rows)\n * ============================================================ */\n.interactive {\n cursor: pointer;\n}\n@media (hover: hover) and (pointer: fine) {\n .interactive:hover {\n border-color: var(--tempest-border-strong);\n box-shadow: var(--tempest-shadow-md);\n transform: translateY(-1px);\n }\n}\n.interactive:active {\n transform: translateY(0);\n box-shadow: var(--tempest-shadow-sm);\n}\n.interactive:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.padded {\n padding: var(--tempest-space-5);\n}\n\n.flush {\n padding: 0;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-bottom: 1px solid var(--tempest-border);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-md);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-snug);\n color: var(--tempest-text);\n}\n\n.body {\n padding: var(--tempest-space-5);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-top: 1px solid var(--tempest-border);\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Card.module.js","names":[],"sources":["../../../src/components/Card/Card.module.css"],"sourcesContent":[".card {\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n padding: var(--tempest-space-5);\n box-shadow: var(--tempest-shadow-sm);\n color: var(--tempest-text);\n transition:\n var(--tempest-transition-shadow),\n var(--tempest-transition-transform),\n border-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n/* ============================================================\n * Elevation variants\n * ============================================================ */\n.flat {\n box-shadow: none;\n}\n.raised {\n box-shadow: var(--tempest-shadow-md);\n}\n.elevated {\n box-shadow: var(--tempest-shadow-lg);\n border-color: transparent;\n}\n\n/* ============================================================\n * Interactive — hoverable card (use for clickable cards, list rows)\n * ============================================================ */\n.interactive {\n cursor: pointer;\n}\n@media (hover: hover) and (pointer: fine) {\n .interactive:hover {\n border-color: var(--tempest-border-strong);\n box-shadow: var(--tempest-shadow-md);\n transform: translateY(-1px);\n }\n}\n.interactive:active {\n transform: translateY(0);\n box-shadow: var(--tempest-shadow-sm);\n}\n.interactive:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.padded {\n padding: var(--tempest-space-5);\n}\n\n.flush {\n padding: 0;\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-bottom: 1px solid var(--tempest-border);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-md);\n font-weight: var(--tempest-weight-semibold);\n line-height: var(--tempest-leading-snug);\n color: var(--tempest-text);\n}\n\n.body {\n padding: var(--tempest-space-5);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--tempest-space-2);\n padding: var(--tempest-space-4) var(--tempest-space-5);\n border-top: 1px solid var(--tempest-border);\n}\n"],"mappings":";"}
@@ -1,2 +1,3 @@
1
+ require("../../styles/component/Carousel.css");
1
2
  var e=`tempest_root_-w3-j`,t=`tempest_viewport_n0hzM`,n=`tempest_track_5PA8h`,r=`tempest_slide_fhfjg`,i=`tempest_arrow_S92Lt`,a=`tempest_prev_X8whU`,o=`tempest_next_jBRSz`,s=`tempest_dots_fL3Hr`,c=`tempest_dot_vEB56`,l=`tempest_dotActive_OSSUg`,u={root:e,viewport:t,track:n,slide:r,arrow:i,prev:a,next:o,dots:s,dot:c,dotActive:l};exports.arrow=i,exports.default=u,exports.dot=c,exports.dotActive=l,exports.dots=s,exports.next=o,exports.prev=a,exports.root=e,exports.slide=r,exports.track=n,exports.viewport=t;
2
3
  //# sourceMappingURL=Carousel.module.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.module.cjs","names":[],"sources":["../../../src/components/Carousel/Carousel.module.css"],"sourcesContent":[".root {\n position: relative;\n width: 100%;\n font-family: var(--tempest-font-sans);\n}\n\n.root:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.viewport {\n overflow: hidden;\n border-radius: var(--tempest-radius-lg);\n}\n\n.track {\n display: flex;\n transition: transform var(--tempest-duration-base) var(--tempest-ease-out);\n}\n\n.slide {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-full);\n box-shadow: var(--tempest-shadow-md);\n color: var(--tempest-text);\n font-size: var(--tempest-text-xl);\n line-height: 1;\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .arrow:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n }\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.arrow:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.prev {\n left: var(--tempest-space-2);\n}\n\n.next {\n right: var(--tempest-space-2);\n}\n\n.dots {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-space-2);\n margin-top: var(--tempest-space-3);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background-color: var(--tempest-border);\n border: none;\n border-radius: var(--tempest-radius-full);\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n.dotActive {\n background-color: var(--tempest-primary);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .track {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Carousel.module.cjs","names":[],"sources":["../../../src/components/Carousel/Carousel.module.css"],"sourcesContent":[".root {\n position: relative;\n width: 100%;\n font-family: var(--tempest-font-sans);\n}\n\n.root:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.viewport {\n overflow: hidden;\n border-radius: var(--tempest-radius-lg);\n}\n\n.track {\n display: flex;\n transition: transform var(--tempest-duration-base) var(--tempest-ease-out);\n}\n\n.slide {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-full);\n box-shadow: var(--tempest-shadow-md);\n color: var(--tempest-text);\n font-size: var(--tempest-text-xl);\n line-height: 1;\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .arrow:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n }\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.arrow:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.prev {\n left: var(--tempest-space-2);\n}\n\n.next {\n right: var(--tempest-space-2);\n}\n\n.dots {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-space-2);\n margin-top: var(--tempest-space-3);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background-color: var(--tempest-border);\n border: none;\n border-radius: var(--tempest-radius-full);\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n.dotActive {\n background-color: var(--tempest-primary);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .track {\n transition: none;\n }\n}\n"],"mappings":";"}
@@ -1,3 +1,4 @@
1
+ import "../../styles/component/Carousel.css";
1
2
  //#region src/components/Carousel/Carousel.module.css
2
3
  var e = "tempest_root_-w3-j", t = "tempest_viewport_n0hzM", n = "tempest_track_5PA8h", r = "tempest_slide_fhfjg", i = "tempest_arrow_S92Lt", a = "tempest_prev_X8whU", o = "tempest_next_jBRSz", s = "tempest_dots_fL3Hr", c = "tempest_dot_vEB56", l = "tempest_dotActive_OSSUg", u = {
3
4
  root: e,
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.module.js","names":[],"sources":["../../../src/components/Carousel/Carousel.module.css"],"sourcesContent":[".root {\n position: relative;\n width: 100%;\n font-family: var(--tempest-font-sans);\n}\n\n.root:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.viewport {\n overflow: hidden;\n border-radius: var(--tempest-radius-lg);\n}\n\n.track {\n display: flex;\n transition: transform var(--tempest-duration-base) var(--tempest-ease-out);\n}\n\n.slide {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-full);\n box-shadow: var(--tempest-shadow-md);\n color: var(--tempest-text);\n font-size: var(--tempest-text-xl);\n line-height: 1;\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .arrow:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n }\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.arrow:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.prev {\n left: var(--tempest-space-2);\n}\n\n.next {\n right: var(--tempest-space-2);\n}\n\n.dots {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-space-2);\n margin-top: var(--tempest-space-3);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background-color: var(--tempest-border);\n border: none;\n border-radius: var(--tempest-radius-full);\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n.dotActive {\n background-color: var(--tempest-primary);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .track {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Carousel.module.js","names":[],"sources":["../../../src/components/Carousel/Carousel.module.css"],"sourcesContent":[".root {\n position: relative;\n width: 100%;\n font-family: var(--tempest-font-sans);\n}\n\n.root:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.viewport {\n overflow: hidden;\n border-radius: var(--tempest-radius-lg);\n}\n\n.track {\n display: flex;\n transition: transform var(--tempest-duration-base) var(--tempest-ease-out);\n}\n\n.slide {\n flex: 0 0 100%;\n min-width: 0;\n}\n\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n background-color: var(--tempest-bg);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-full);\n box-shadow: var(--tempest-shadow-md);\n color: var(--tempest-text);\n font-size: var(--tempest-text-xl);\n line-height: 1;\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .arrow:hover:not(:disabled) {\n background-color: var(--tempest-surface);\n }\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n.arrow:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.prev {\n left: var(--tempest-space-2);\n}\n\n.next {\n right: var(--tempest-space-2);\n}\n\n.dots {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--tempest-space-2);\n margin-top: var(--tempest-space-3);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background-color: var(--tempest-border);\n border: none;\n border-radius: var(--tempest-radius-full);\n cursor: pointer;\n transition: var(--tempest-transition-color);\n}\n\n.dotActive {\n background-color: var(--tempest-primary);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--tempest-primary);\n outline-offset: 2px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .track {\n transition: none;\n }\n}\n"],"mappings":";"}
@@ -1,2 +1,3 @@
1
+ require("../../styles/component/Center.css");
1
2
  var e=`tempest_center_Pu1Pf`,t=`tempest_both_53GWn`,n=`tempest_horizontal_94-Bt`,r=`tempest_vertical_Q7Kyg`,i={center:e,both:t,horizontal:n,vertical:r};exports.both=t,exports.center=e,exports.default=i,exports.horizontal=n,exports.vertical=r;
2
3
  //# sourceMappingURL=Center.module.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Center.module.cjs","names":[],"sources":["../../../src/components/Center/Center.module.css"],"sourcesContent":[".center {\n display: flex;\n}\n\n.center.both {\n align-items: center;\n justify-content: center;\n}\n\n.center.horizontal {\n justify-content: center;\n}\n\n.center.vertical {\n align-items: center;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Center.module.cjs","names":[],"sources":["../../../src/components/Center/Center.module.css"],"sourcesContent":[".center {\n display: flex;\n}\n\n.center.both {\n align-items: center;\n justify-content: center;\n}\n\n.center.horizontal {\n justify-content: center;\n}\n\n.center.vertical {\n align-items: center;\n}\n"],"mappings":";"}
@@ -1,3 +1,4 @@
1
+ import "../../styles/component/Center.css";
1
2
  //#region src/components/Center/Center.module.css
2
3
  var e = "tempest_center_Pu1Pf", t = "tempest_both_53GWn", n = "tempest_horizontal_94-Bt", r = "tempest_vertical_Q7Kyg", i = {
3
4
  center: e,
@@ -1 +1 @@
1
- {"version":3,"file":"Center.module.js","names":[],"sources":["../../../src/components/Center/Center.module.css"],"sourcesContent":[".center {\n display: flex;\n}\n\n.center.both {\n align-items: center;\n justify-content: center;\n}\n\n.center.horizontal {\n justify-content: center;\n}\n\n.center.vertical {\n align-items: center;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Center.module.js","names":[],"sources":["../../../src/components/Center/Center.module.css"],"sourcesContent":[".center {\n display: flex;\n}\n\n.center.both {\n align-items: center;\n justify-content: center;\n}\n\n.center.horizontal {\n justify-content: center;\n}\n\n.center.vertical {\n align-items: center;\n}\n"],"mappings":";"}
@@ -1,2 +1,2 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../EmptyState/EmptyState.cjs"),n=require("../VisuallyHidden/VisuallyHidden.cjs"),r=require("./chat-groups.cjs"),i=require("./Chat.module.cjs"),a=require("./ChatComposer.cjs");let o=require("react"),s=require("react/jsx-runtime");var c={sending:`◌`,sent:`✓`,read:`✓✓`,failed:`!`};function l({messages:l,currentUserId:u,onSend:d,onRetry:f,typing:p=[],renderAvatar:m,header:h,emptyState:g,groupWindowMs:_,locale:v=`pt-BR`,now:y,placeholder:b,composerActions:x,composerDisabled:S,onSendError:C,className:w,...T}){let E=r.chatStrings(v),D=r.groupMessages({messages:l,currentUserId:u,windowMs:_}),O=(0,o.useRef)(null),k=(0,o.useRef)(null),A=(0,o.useRef)(!0),j=()=>{let e=k.current;if(!e)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight;A.current=t<48};(0,o.useLayoutEffect)(()=>{let e=k.current;e&&A.current&&(e.scrollTop=e.scrollHeight)},[l,p]),(0,o.useEffect)(()=>{let e=k.current;e&&(e.scrollTop=e.scrollHeight)},[]);let M=r.typingLabel(p,v);return(0,s.jsxs)(`div`,{className:e.cn(i.default.panel,w),...T,children:[h&&(0,s.jsx)(`header`,{className:i.default.header,children:h}),(0,s.jsx)(`div`,{ref:k,className:i.default.thread,onScroll:j,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,tabIndex:0,"aria-label":E.thread,children:l.length===0?g??(0,s.jsx)(t.EmptyState,{title:E.empty}):D.map(t=>t.kind===`day`?(0,s.jsx)(`div`,{className:i.default.day,children:(0,s.jsx)(`span`,{className:i.default.dayLabel,children:r.dayLabel(t.date,{locale:v,now:y})})},t.key):(0,s.jsxs)(`div`,{className:e.cn(i.default.run,t.own&&i.default.ownRun),children:[m&&(0,s.jsx)(`div`,{className:i.default.avatar,"aria-hidden":`true`,children:m(t.messages[0])}),(0,s.jsxs)(`div`,{className:i.default.runBody,children:[(0,s.jsx)(`span`,{className:i.default.author,children:t.own?E.you:t.authorName??t.authorId}),(0,s.jsx)(`ul`,{className:i.default.bubbles,children:t.messages.map(a=>(0,s.jsxs)(`li`,{className:i.default.bubbleRow,children:[(0,s.jsxs)(`div`,{className:e.cn(i.default.bubble,t.own&&i.default.ownBubble,a.status===`failed`&&i.default.failedBubble),children:[(0,s.jsx)(`div`,{className:i.default.body,children:a.body}),(0,s.jsxs)(`div`,{className:i.default.meta,children:[(0,s.jsx)(`time`,{dateTime:new Date(a.sentAt).toISOString(),children:r.timeLabel(a.sentAt,v)}),t.own&&a.status&&(0,s.jsxs)(`span`,{className:e.cn(i.default.status,a.status===`failed`&&i.default.statusFailed),title:E[a.status],children:[(0,s.jsx)(`span`,{"aria-hidden":`true`,children:c[a.status]}),(0,s.jsx)(n.VisuallyHidden,{children:E[a.status]})]})]})]}),a.status===`failed`&&f&&(0,s.jsx)(`button`,{type:`button`,className:i.default.retry,onClick:()=>f(a),children:E.retry})]},a.id))})]})]},t.key))}),M&&(0,s.jsx)(`p`,{className:i.default.typing,"aria-live":`polite`,children:M}),d&&(0,s.jsx)(a.ChatComposer,{ref:O,onSend:d,locale:v,placeholder:b,actions:x,disabled:S,onError:C})]})}exports.Chat=l;
1
+ const e=require("../../utils/cn.cjs"),t=require("../EmptyState/EmptyState.cjs"),n=require("./chat-groups.cjs"),r=require("./Chat.module.cjs"),i=require("./ChatBubble.cjs"),a=require("./ChatComposer.cjs");let o=require("react"),s=require("react/jsx-runtime");function c({messages:c,currentUserId:l,onSend:u,onRetry:d,typing:f=[],renderAvatar:p,header:m,emptyState:h,groupWindowMs:g,locale:_=`pt-BR`,now:v,placeholder:y,composerActions:b,composerDisabled:x,onSendError:S,onReact:C,messageActions:w,onQuoteClick:T,className:E,...D}){let O=n.chatStrings(_),k=n.groupMessages({messages:c,currentUserId:l,windowMs:g}),A=(0,o.useRef)(null),j=(0,o.useRef)(null),M=(0,o.useRef)(!0),N=()=>{let e=j.current;if(!e)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight;M.current=t<48};(0,o.useLayoutEffect)(()=>{let e=j.current;e&&M.current&&(e.scrollTop=e.scrollHeight)},[c,f]),(0,o.useEffect)(()=>{let e=j.current;e&&(e.scrollTop=e.scrollHeight)},[]);let P=n.typingLabel(f,_);return(0,s.jsxs)(`div`,{className:e.cn(r.default.panel,E),...D,children:[m&&(0,s.jsx)(`header`,{className:r.default.header,children:m}),(0,s.jsx)(`div`,{ref:j,className:r.default.thread,onScroll:N,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,tabIndex:0,"aria-label":O.thread,children:c.length===0?h??(0,s.jsx)(t.EmptyState,{title:O.empty}):k.map(t=>t.kind===`day`?(0,s.jsx)(`div`,{className:r.default.day,children:(0,s.jsx)(`span`,{className:r.default.dayLabel,children:n.dayLabel(t.date,{locale:_,now:v})})},t.key):(0,s.jsxs)(`div`,{className:e.cn(r.default.run,t.own&&r.default.ownRun),children:[p&&(0,s.jsx)(`div`,{className:r.default.avatar,"aria-hidden":`true`,children:p(t.messages[0])}),(0,s.jsxs)(`div`,{className:r.default.runBody,children:[(0,s.jsx)(`span`,{className:r.default.author,children:t.own?O.you:t.authorName??t.authorId}),(0,s.jsx)(`ul`,{className:r.default.bubbles,children:t.messages.map(e=>(0,s.jsx)(i.ChatBubble,{message:e,own:t.own,locale:_,onRetry:d,onReact:C,messageActions:w,onQuoteClick:T},e.id))})]})]},t.key))}),P&&(0,s.jsx)(`p`,{className:r.default.typing,"aria-live":`polite`,children:P}),u&&(0,s.jsx)(a.ChatComposer,{ref:A,onSend:u,locale:_,placeholder:y,actions:b,disabled:x,onError:S})]})}exports.Chat=c;
2
2
  //# sourceMappingURL=Chat.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.cjs","names":[],"sources":["../../../src/components/Chat/Chat.tsx"],"sourcesContent":["/**\n * @tempest-limits file-lines, props-count, function-lines — message grouping needs\n * more context than a list does: currentUserId to decide sides, groupWindowMs and\n * now to decide where a bubble group breaks, typing for the indicator. The remaining\n * props are the composer's (placeholder, composerActions, composerDisabled, onSend,\n * onSendError) and the slots (renderAvatar, header, emptyState).\n */\nimport { useEffect, useLayoutEffect, useRef, type HTMLAttributes, type ReactNode } from \"react\";\n\nimport { cn } from \"@/utils/cn\";\n\nimport { EmptyState } from \"../EmptyState\";\nimport { VisuallyHidden } from \"../VisuallyHidden\";\nimport { ChatComposer, type ChatComposerHandle } from \"./ChatComposer\";\nimport {\n chatStrings,\n dayLabel,\n groupMessages,\n timeLabel,\n typingLabel,\n type ChatMessage,\n} from \"./chat-groups\";\nimport styles from \"./Chat.module.css\";\n\n/** DOM attributes this component redefines. */\ntype OverriddenDomProps = \"children\" | \"onSubmit\";\n\nexport interface ChatProps extends Omit<HTMLAttributes<HTMLDivElement>, OverriddenDomProps> {\n /** The thread, **oldest first**. Never reordered by the component. */\n messages: readonly ChatMessage[];\n /** Author id treated as \"own\" — decides side, colour and status ticks. */\n currentUserId?: string;\n /** Renders the composer when given. Receives the trimmed text. */\n onSend?: (text: string) => void | Promise<void>;\n /** Enables the retry control on a `\"failed\"` message. */\n onRetry?: (message: ChatMessage) => void;\n /** Names currently typing. One, two or a count is phrased for you. */\n typing?: readonly string[];\n /** Avatar for the first message of a run — an `<Avatar>`, an `<Icon>`. */\n renderAvatar?: (message: ChatMessage) => ReactNode;\n /** Rendered above the thread, inside the panel. */\n header?: ReactNode;\n /** Shown when there are no messages. */\n emptyState?: ReactNode;\n /** Gap that still keeps consecutive messages in one run. Default 5 min. */\n groupWindowMs?: number;\n /** Locale for labels. Default `\"pt-BR\"`. */\n locale?: \"pt-BR\" | \"en\";\n /** Reference instant for \"Hoje\"/\"Ontem\". Default: now, at render time. */\n now?: number;\n /** Placeholder for the composer. */\n placeholder?: string;\n /** Extra controls inside the composer, before the send button. */\n composerActions?: ReactNode;\n /** Disable the composer — no permission, thread archived, offline. */\n composerDisabled?: boolean;\n /** Called when `onSend` rejects. The draft stays in the field either way. */\n onSendError?: (error: unknown) => void;\n}\n\n/** Status glyph and label for an outgoing message. */\nconst STATUS_GLYPH: Record<NonNullable<ChatMessage[\"status\"]>, string> = {\n sending: \"◌\",\n sent: \"✓\",\n read: \"✓✓\",\n failed: \"!\",\n};\n\n/**\n * A message thread: grouped by author and by day, own messages on one side, with\n * delivery state, a typing indicator and an optional composer.\n *\n * Presentational and controlled, like the rest of the SDK: it takes a list and\n * emits intent (`onSend`, `onRetry`). Where messages come from — REST, the SDK's\n * `createWebSocket`, an SSE stream — and how an optimistic insert is done stay with\n * the app, because those differ per backend and a component that assumed one would\n * be wrong for most.\n *\n * It works as a comment thread too: that is the same component with\n * `currentUserId` set and no `typing`.\n *\n * @example\n * <Chat\n * messages={messages}\n * currentUserId={me.id}\n * typing={typingNames}\n * onSend={(text) => send({ text })}\n * onRetry={(message) => resend(message.id)}\n * />\n */\nexport function Chat({\n messages,\n currentUserId,\n onSend,\n onRetry,\n typing = [],\n renderAvatar,\n header,\n emptyState,\n groupWindowMs,\n locale = \"pt-BR\",\n now,\n placeholder,\n composerActions,\n composerDisabled,\n onSendError,\n className,\n ...rest\n}: ChatProps) {\n const strings = chatStrings(locale);\n const sections = groupMessages({ messages, currentUserId, windowMs: groupWindowMs });\n const composer = useRef<ChatComposerHandle | null>(null);\n const thread = useRef<HTMLDivElement | null>(null);\n const stuckToBottom = useRef(true);\n\n /**\n * Remember whether the reader is at the bottom, before the next batch lands.\n *\n * A thread that always scrolls to the newest message yanks somebody out of the\n * history they were reading, every time anyone types. So the jump only happens\n * when they were already at the bottom — the same rule every chat app converges\n * on. The 48px slack covers a partially visible last row.\n */\n const trackPosition = (): void => {\n const node = thread.current;\n if (!node) return;\n const distance = node.scrollHeight - node.scrollTop - node.clientHeight;\n stuckToBottom.current = distance < 48;\n };\n\n useLayoutEffect(() => {\n const node = thread.current;\n if (!node || !stuckToBottom.current) return;\n node.scrollTop = node.scrollHeight;\n }, [messages, typing]);\n\n useEffect(() => {\n const node = thread.current;\n if (!node) return;\n node.scrollTop = node.scrollHeight;\n // Mount lands on the newest message; from then on `trackPosition` decides.\n }, []);\n\n const typingText = typingLabel(typing, locale);\n\n return (\n <div className={cn(styles.panel, className)} {...rest}>\n {header && <header className={styles.header}>{header}</header>}\n\n <div\n ref={thread}\n className={styles.thread}\n onScroll={trackPosition}\n role=\"log\"\n aria-live=\"polite\"\n aria-relevant=\"additions text\"\n tabIndex={0}\n aria-label={strings.thread}\n >\n {messages.length === 0\n ? (emptyState ?? <EmptyState title={strings.empty} />)\n : sections.map((section) =>\n section.kind === \"day\" ? (\n <div key={section.key} className={styles.day}>\n <span className={styles.dayLabel}>\n {dayLabel(section.date, { locale, now })}\n </span>\n </div>\n ) : (\n <div\n key={section.key}\n className={cn(styles.run, section.own && styles.ownRun)}\n >\n {renderAvatar && (\n <div className={styles.avatar} aria-hidden=\"true\">\n {renderAvatar(section.messages[0])}\n </div>\n )}\n <div className={styles.runBody}>\n <span className={styles.author}>\n {section.own\n ? strings.you\n : (section.authorName ?? section.authorId)}\n </span>\n <ul className={styles.bubbles}>\n {section.messages.map((message) => (\n <li key={message.id} className={styles.bubbleRow}>\n <div\n className={cn(\n styles.bubble,\n section.own && styles.ownBubble,\n message.status === \"failed\" &&\n styles.failedBubble,\n )}\n >\n <div className={styles.body}>\n {message.body}\n </div>\n <div className={styles.meta}>\n <time\n dateTime={new Date(\n message.sentAt,\n ).toISOString()}\n >\n {timeLabel(message.sentAt, locale)}\n </time>\n {section.own && message.status && (\n <span\n className={cn(\n styles.status,\n message.status === \"failed\" &&\n styles.statusFailed,\n )}\n title={strings[message.status]}\n >\n <span aria-hidden=\"true\">\n {STATUS_GLYPH[message.status]}\n </span>\n <VisuallyHidden>\n {strings[message.status]}\n </VisuallyHidden>\n </span>\n )}\n </div>\n </div>\n {message.status === \"failed\" && onRetry && (\n <button\n type=\"button\"\n className={styles.retry}\n onClick={() => onRetry(message)}\n >\n {strings.retry}\n </button>\n )}\n </li>\n ))}\n </ul>\n </div>\n </div>\n ),\n )}\n </div>\n\n {typingText && (\n <p className={styles.typing} aria-live=\"polite\">\n {typingText}\n </p>\n )}\n\n {onSend && (\n <ChatComposer\n ref={composer}\n onSend={onSend}\n locale={locale}\n placeholder={placeholder}\n actions={composerActions}\n disabled={composerDisabled}\n onError={onSendError}\n />\n )}\n </div>\n );\n}\n"],"mappings":"sRA6DA,IAAM,EAAmE,CACrE,QAAS,IACT,KAAM,IACN,KAAM,KACN,OAAQ,GACZ,EAwBA,SAAgB,EAAK,CACjB,WACA,gBACA,SACA,UACA,SAAS,CAAC,EACV,eACA,SACA,aACA,gBACA,SAAS,QACT,MACA,cACA,kBACA,mBACA,cACA,YACA,GAAG,GACO,CACV,IAAM,EAAU,EAAA,YAAY,CAAM,EAC5B,EAAW,EAAA,cAAc,CAAE,WAAU,gBAAe,SAAU,CAAc,CAAC,EAC7E,GAAA,EAAW,EAAA,OAAA,CAAkC,IAAI,EACjD,GAAA,EAAS,EAAA,OAAA,CAA8B,IAAI,EAC3C,GAAA,EAAgB,EAAA,OAAA,CAAO,EAAI,EAU3B,MAA4B,CAC9B,IAAM,EAAO,EAAO,QACpB,GAAI,CAAC,EAAM,OACX,IAAM,EAAW,EAAK,aAAe,EAAK,UAAY,EAAK,aAC3D,EAAc,QAAU,EAAW,EACvC,GAEA,EAAA,EAAA,gBAAA,KAAsB,CAClB,IAAM,EAAO,EAAO,QACf,GAAS,EAAc,UAC5B,EAAK,UAAY,EAAK,aAC1B,EAAG,CAAC,EAAU,CAAM,CAAC,GAErB,EAAA,EAAA,UAAA,KAAgB,CACZ,IAAM,EAAO,EAAO,QACf,IACL,EAAK,UAAY,EAAK,aAE1B,EAAG,CAAC,CAAC,EAEL,IAAM,EAAa,EAAA,YAAY,EAAQ,CAAM,EAE7C,OACI,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,GAAG,EAAA,QAAO,MAAO,CAAS,EAAG,GAAI,EAAjD,SAAA,CACK,IAAU,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,UAAW,EAAA,QAAO,OAAS,SAAA,CAAe,CAAA,GAE7D,EAAA,EAAA,IAAA,CAAC,MAAD,CACI,IAAK,EACL,UAAW,EAAA,QAAO,OAClB,SAAU,EACV,KAAK,MACL,YAAU,SACV,gBAAc,iBACd,SAAU,EACV,aAAY,EAAQ,OAEnB,SAAA,EAAS,SAAW,EACd,IAAc,EAAA,EAAA,IAAA,CAAC,EAAA,WAAD,CAAY,MAAO,EAAQ,KAAQ,CAAA,EAClD,EAAS,IAAK,GACV,EAAQ,OAAS,OACb,EAAA,EAAA,IAAA,CAAC,MAAD,CAAuB,UAAW,EAAA,QAAO,IACrC,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,SACnB,SAAA,EAAA,SAAS,EAAQ,KAAM,CAAE,SAAQ,KAAI,CAAC,CACrC,CAAA,CACL,EAJK,EAAQ,GAIb,GAEL,EAAA,EAAA,KAAA,CAAC,MAAD,CAEI,UAAW,EAAA,GAAG,EAAA,QAAO,IAAK,EAAQ,KAAO,EAAA,QAAO,MAAM,EAF1D,SAAA,CAIK,IACG,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,OAAQ,cAAY,OACtC,SAAA,EAAa,EAAQ,SAAS,EAAE,CAChC,CAAA,GAET,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,QAAvB,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,OACnB,SAAA,EAAQ,IACH,EAAQ,IACP,EAAQ,YAAc,EAAQ,QACnC,CAAA,GACN,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAW,EAAA,QAAO,QACjB,SAAA,EAAQ,SAAS,IAAK,IACnB,EAAA,EAAA,KAAA,CAAC,KAAD,CAAqB,UAAW,EAAA,QAAO,UAAvC,SAAA,EACI,EAAA,EAAA,KAAA,CAAC,MAAD,CACI,UAAW,EAAA,GACP,EAAA,QAAO,OACP,EAAQ,KAAO,EAAA,QAAO,UACtB,EAAQ,SAAW,UACf,EAAA,QAAO,YACf,EANJ,SAAA,EAQI,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,KAClB,SAAA,EAAQ,IACR,CAAA,GACL,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,KAAvB,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CACI,SAAU,IAAI,KACV,EAAQ,MACZ,CAAC,CAAC,YAAY,EAEb,SAAA,EAAA,UAAU,EAAQ,OAAQ,CAAM,CAC/B,CAAA,EACL,EAAQ,KAAO,EAAQ,SACpB,EAAA,EAAA,KAAA,CAAC,OAAD,CACI,UAAW,EAAA,GACP,EAAA,QAAO,OACP,EAAQ,SAAW,UACf,EAAA,QAAO,YACf,EACA,MAAO,EAAQ,EAAQ,QAN3B,SAAA,EAQI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,cAAY,OACb,SAAA,EAAa,EAAQ,OACpB,CAAA,GACN,EAAA,EAAA,IAAA,CAAC,EAAA,eAAD,CAAA,SACK,EAAQ,EAAQ,OACL,CAAA,CACd,CAET,CAAA,CAAA,CACJ,CAAA,CAAA,CACJ,CAAA,EAAA,EAAQ,SAAW,UAAY,IAC5B,EAAA,EAAA,IAAA,CAAC,SAAD,CACI,KAAK,SACL,UAAW,EAAA,QAAO,MAClB,YAAe,EAAQ,CAAO,EAE7B,SAAA,EAAQ,KACL,CAAA,CAEZ,CAhDK,EAAA,EAAQ,EAgDb,CACP,CACD,CAAA,CACH,CACJ,CAAA,CAAA,CApEI,EAAA,EAAQ,GAoEZ,CAEb,CACL,CAAA,EAEJ,IACG,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAW,EAAA,QAAO,OAAQ,YAAU,SAClC,SAAA,CACF,CAAA,EAGN,IACG,EAAA,EAAA,IAAA,CAAC,EAAA,aAAD,CACI,IAAK,EACG,SACA,SACK,cACb,QAAS,EACT,SAAU,EACV,QAAS,CACZ,CAAA,CAEJ,GAEb"}
1
+ {"version":3,"file":"Chat.cjs","names":[],"sources":["../../../src/components/Chat/Chat.tsx"],"sourcesContent":["/**\n * @tempest-limits file-lines, props-count, function-lines — message grouping needs\n * more context than a list does: currentUserId to decide sides, groupWindowMs and\n * now to decide where a bubble group breaks, typing for the indicator. The remaining\n * props are the composer's (placeholder, composerActions, composerDisabled, onSend,\n * onSendError) and the slots (renderAvatar, header, emptyState).\n */\nimport { useEffect, useLayoutEffect, useRef, type HTMLAttributes, type ReactNode } from \"react\";\n\nimport { cn } from \"@/utils/cn\";\n\nimport type { ContextMenuItem } from \"../ContextMenu\";\nimport { EmptyState } from \"../EmptyState\";\nimport { ChatBubble } from \"./ChatBubble\";\nimport { ChatComposer, type ChatComposerHandle } from \"./ChatComposer\";\nimport { chatStrings, dayLabel, groupMessages, typingLabel, type ChatMessage } from \"./chat-groups\";\nimport styles from \"./Chat.module.css\";\n\n/** DOM attributes this component redefines. */\ntype OverriddenDomProps = \"children\" | \"onSubmit\";\n\nexport interface ChatProps extends Omit<HTMLAttributes<HTMLDivElement>, OverriddenDomProps> {\n /** The thread, **oldest first**. Never reordered by the component. */\n messages: readonly ChatMessage[];\n /** Author id treated as \"own\" — decides side, colour and status ticks. */\n currentUserId?: string;\n /** Renders the composer when given. Receives the trimmed text. */\n onSend?: (text: string) => void | Promise<void>;\n /** Enables the retry control on a `\"failed\"` message. */\n onRetry?: (message: ChatMessage) => void;\n /** Names currently typing. One, two or a count is phrased for you. */\n typing?: readonly string[];\n /** Avatar for the first message of a run — an `<Avatar>`, an `<Icon>`. */\n renderAvatar?: (message: ChatMessage) => ReactNode;\n /** Rendered above the thread, inside the panel. */\n header?: ReactNode;\n /** Shown when there are no messages. */\n emptyState?: ReactNode;\n /** Gap that still keeps consecutive messages in one run. Default 5 min. */\n groupWindowMs?: number;\n /** Locale for labels. Default `\"pt-BR\"`. */\n locale?: \"pt-BR\" | \"en\";\n /** Reference instant for \"Hoje\"/\"Ontem\". Default: now, at render time. */\n now?: number;\n /** Placeholder for the composer. */\n placeholder?: string;\n /** Extra controls inside the composer, before the send button. */\n composerActions?: ReactNode;\n /** Disable the composer — no permission, thread archived, offline. */\n composerDisabled?: boolean;\n /** Called when `onSend` rejects. The draft stays in the field either way. */\n onSendError?: (error: unknown) => void;\n /**\n * Toggles a reaction on a message. Enables the reaction chips.\n *\n * Called with the emoji that was pressed, including one the user already\n * reacted with: reacting again clears it, rather than stacking a second copy.\n * The app owns that rule — the component only reports the press.\n */\n onReact?: (message: ChatMessage, emoji: string) => void;\n /**\n * Per-message actions: reply, forward, star, edit, delete.\n *\n * Returns the items for one message, opened by right click, by long press on\n * touch, and by a `⋮` button on the bubble. Buttons painted on every bubble\n * turn a conversation into a toolbar, which is why this is a menu.\n */\n messageActions?: (message: ChatMessage) => ContextMenuItem[];\n /** Called when a reply stub is activated — scroll to the quoted message. */\n onQuoteClick?: (message: ChatMessage) => void;\n}\n\n/**\n * A message thread: grouped by author and by day, own messages on one side, with\n * delivery state, a typing indicator and an optional composer.\n *\n * Presentational and controlled, like the rest of the SDK: it takes a list and\n * emits intent (`onSend`, `onRetry`). Where messages come from — REST, the SDK's\n * `createWebSocket`, an SSE stream — and how an optimistic insert is done stay with\n * the app, because those differ per backend and a component that assumed one would\n * be wrong for most.\n *\n * It works as a comment thread too: that is the same component with\n * `currentUserId` set and no `typing`.\n *\n * @example\n * <Chat\n * messages={messages}\n * currentUserId={me.id}\n * typing={typingNames}\n * onSend={(text) => send({ text })}\n * onRetry={(message) => resend(message.id)}\n * />\n */\nexport function Chat({\n messages,\n currentUserId,\n onSend,\n onRetry,\n typing = [],\n renderAvatar,\n header,\n emptyState,\n groupWindowMs,\n locale = \"pt-BR\",\n now,\n placeholder,\n composerActions,\n composerDisabled,\n onSendError,\n onReact,\n messageActions,\n onQuoteClick,\n className,\n ...rest\n}: ChatProps) {\n const strings = chatStrings(locale);\n const sections = groupMessages({ messages, currentUserId, windowMs: groupWindowMs });\n const composer = useRef<ChatComposerHandle | null>(null);\n const thread = useRef<HTMLDivElement | null>(null);\n const stuckToBottom = useRef(true);\n\n /**\n * Remember whether the reader is at the bottom, before the next batch lands.\n *\n * A thread that always scrolls to the newest message yanks somebody out of the\n * history they were reading, every time anyone types. So the jump only happens\n * when they were already at the bottom — the same rule every chat app converges\n * on. The 48px slack covers a partially visible last row.\n */\n const trackPosition = (): void => {\n const node = thread.current;\n if (!node) return;\n const distance = node.scrollHeight - node.scrollTop - node.clientHeight;\n stuckToBottom.current = distance < 48;\n };\n\n useLayoutEffect(() => {\n const node = thread.current;\n if (!node || !stuckToBottom.current) return;\n node.scrollTop = node.scrollHeight;\n }, [messages, typing]);\n\n useEffect(() => {\n const node = thread.current;\n if (!node) return;\n node.scrollTop = node.scrollHeight;\n // Mount lands on the newest message; from then on `trackPosition` decides.\n }, []);\n\n const typingText = typingLabel(typing, locale);\n\n return (\n <div className={cn(styles.panel, className)} {...rest}>\n {header && <header className={styles.header}>{header}</header>}\n\n <div\n ref={thread}\n className={styles.thread}\n onScroll={trackPosition}\n role=\"log\"\n aria-live=\"polite\"\n aria-relevant=\"additions text\"\n tabIndex={0}\n aria-label={strings.thread}\n >\n {messages.length === 0\n ? (emptyState ?? <EmptyState title={strings.empty} />)\n : sections.map((section) =>\n section.kind === \"day\" ? (\n <div key={section.key} className={styles.day}>\n <span className={styles.dayLabel}>\n {dayLabel(section.date, { locale, now })}\n </span>\n </div>\n ) : (\n <div\n key={section.key}\n className={cn(styles.run, section.own && styles.ownRun)}\n >\n {renderAvatar && (\n <div className={styles.avatar} aria-hidden=\"true\">\n {renderAvatar(section.messages[0])}\n </div>\n )}\n <div className={styles.runBody}>\n <span className={styles.author}>\n {section.own\n ? strings.you\n : (section.authorName ?? section.authorId)}\n </span>\n <ul className={styles.bubbles}>\n {section.messages.map((message) => (\n <ChatBubble\n key={message.id}\n message={message}\n own={section.own}\n locale={locale}\n onRetry={onRetry}\n onReact={onReact}\n messageActions={messageActions}\n onQuoteClick={onQuoteClick}\n />\n ))}\n </ul>\n </div>\n </div>\n ),\n )}\n </div>\n\n {typingText && (\n <p className={styles.typing} aria-live=\"polite\">\n {typingText}\n </p>\n )}\n\n {onSend && (\n <ChatComposer\n ref={composer}\n onSend={onSend}\n locale={locale}\n placeholder={placeholder}\n actions={composerActions}\n disabled={composerDisabled}\n onError={onSendError}\n />\n )}\n </div>\n );\n}\n"],"mappings":"kQA8FA,SAAgB,EAAK,CACjB,WACA,gBACA,SACA,UACA,SAAS,CAAC,EACV,eACA,SACA,aACA,gBACA,SAAS,QACT,MACA,cACA,kBACA,mBACA,cACA,UACA,iBACA,eACA,YACA,GAAG,GACO,CACV,IAAM,EAAU,EAAA,YAAY,CAAM,EAC5B,EAAW,EAAA,cAAc,CAAE,WAAU,gBAAe,SAAU,CAAc,CAAC,EAC7E,GAAA,EAAW,EAAA,OAAA,CAAkC,IAAI,EACjD,GAAA,EAAS,EAAA,OAAA,CAA8B,IAAI,EAC3C,GAAA,EAAgB,EAAA,OAAA,CAAO,EAAI,EAU3B,MAA4B,CAC9B,IAAM,EAAO,EAAO,QACpB,GAAI,CAAC,EAAM,OACX,IAAM,EAAW,EAAK,aAAe,EAAK,UAAY,EAAK,aAC3D,EAAc,QAAU,EAAW,EACvC,GAEA,EAAA,EAAA,gBAAA,KAAsB,CAClB,IAAM,EAAO,EAAO,QACf,GAAS,EAAc,UAC5B,EAAK,UAAY,EAAK,aAC1B,EAAG,CAAC,EAAU,CAAM,CAAC,GAErB,EAAA,EAAA,UAAA,KAAgB,CACZ,IAAM,EAAO,EAAO,QACf,IACL,EAAK,UAAY,EAAK,aAE1B,EAAG,CAAC,CAAC,EAEL,IAAM,EAAa,EAAA,YAAY,EAAQ,CAAM,EAE7C,OACI,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,GAAG,EAAA,QAAO,MAAO,CAAS,EAAG,GAAI,EAAjD,SAAA,CACK,IAAU,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,UAAW,EAAA,QAAO,OAAS,SAAA,CAAe,CAAA,GAE7D,EAAA,EAAA,IAAA,CAAC,MAAD,CACI,IAAK,EACL,UAAW,EAAA,QAAO,OAClB,SAAU,EACV,KAAK,MACL,YAAU,SACV,gBAAc,iBACd,SAAU,EACV,aAAY,EAAQ,OAEnB,SAAA,EAAS,SAAW,EACd,IAAc,EAAA,EAAA,IAAA,CAAC,EAAA,WAAD,CAAY,MAAO,EAAQ,KAAQ,CAAA,EAClD,EAAS,IAAK,GACV,EAAQ,OAAS,OACb,EAAA,EAAA,IAAA,CAAC,MAAD,CAAuB,UAAW,EAAA,QAAO,IACrC,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,SACnB,SAAA,EAAA,SAAS,EAAQ,KAAM,CAAE,SAAQ,KAAI,CAAC,CACrC,CAAA,CACL,EAJK,EAAQ,GAIb,GAEL,EAAA,EAAA,KAAA,CAAC,MAAD,CAEI,UAAW,EAAA,GAAG,EAAA,QAAO,IAAK,EAAQ,KAAO,EAAA,QAAO,MAAM,EAF1D,SAAA,CAIK,IACG,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,OAAQ,cAAY,OACtC,SAAA,EAAa,EAAQ,SAAS,EAAE,CAChC,CAAA,GAET,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,QAAvB,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,OACnB,SAAA,EAAQ,IACH,EAAQ,IACP,EAAQ,YAAc,EAAQ,QACnC,CAAA,GACN,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAW,EAAA,QAAO,QACjB,SAAA,EAAQ,SAAS,IAAK,IACnB,EAAA,EAAA,IAAA,CAAC,EAAA,WAAD,CAEa,UACT,IAAK,EAAQ,IACL,SACC,UACA,UACO,iBACF,cACjB,EARQ,EAAQ,EAQhB,CACJ,CACD,CAAA,CACH,CACJ,CAAA,CAAA,CA7BI,EAAA,EAAQ,GA6BZ,CAEb,CACL,CAAA,EAEJ,IACG,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAW,EAAA,QAAO,OAAQ,YAAU,SAClC,SAAA,CACF,CAAA,EAGN,IACG,EAAA,EAAA,IAAA,CAAC,EAAA,aAAD,CACI,IAAK,EACG,SACA,SACK,cACb,QAAS,EACT,SAAU,EACV,QAAS,CACZ,CAAA,CAEJ,GAEb"}
@@ -1,126 +1,101 @@
1
1
  import { cn as e } from "../../utils/cn.js";
2
2
  import { EmptyState as t } from "../EmptyState/EmptyState.js";
3
- import { VisuallyHidden as n } from "../VisuallyHidden/VisuallyHidden.js";
4
- import { chatStrings as r, dayLabel as i, groupMessages as a, timeLabel as o, typingLabel as s } from "./chat-groups.js";
5
- import c from "./Chat.module.js";
6
- import { ChatComposer as l } from "./ChatComposer.js";
7
- import { useEffect as u, useLayoutEffect as d, useRef as f } from "react";
8
- import { jsx as p, jsxs as m } from "react/jsx-runtime";
3
+ import { chatStrings as n, dayLabel as r, groupMessages as i, typingLabel as a } from "./chat-groups.js";
4
+ import o from "./Chat.module.js";
5
+ import { ChatBubble as s } from "./ChatBubble.js";
6
+ import { ChatComposer as c } from "./ChatComposer.js";
7
+ import { useEffect as l, useLayoutEffect as u, useRef as d } from "react";
8
+ import { jsx as f, jsxs as p } from "react/jsx-runtime";
9
9
  //#region src/components/Chat/Chat.tsx
10
- var h = {
11
- sending: "◌",
12
- sent: "✓",
13
- read: "✓✓",
14
- failed: "!"
15
- };
16
- function g({ messages: g, currentUserId: _, onSend: v, onRetry: y, typing: b = [], renderAvatar: x, header: S, emptyState: C, groupWindowMs: w, locale: T = "pt-BR", now: E, placeholder: D, composerActions: O, composerDisabled: k, onSendError: A, className: j, ...M }) {
17
- let N = r(T), P = a({
18
- messages: g,
19
- currentUserId: _,
20
- windowMs: w
21
- }), F = f(null), I = f(null), L = f(!0), R = () => {
22
- let e = I.current;
10
+ function m({ messages: m, currentUserId: h, onSend: g, onRetry: _, typing: v = [], renderAvatar: y, header: b, emptyState: x, groupWindowMs: S, locale: C = "pt-BR", now: w, placeholder: T, composerActions: E, composerDisabled: D, onSendError: O, onReact: k, messageActions: A, onQuoteClick: j, className: M, ...N }) {
11
+ let P = n(C), F = i({
12
+ messages: m,
13
+ currentUserId: h,
14
+ windowMs: S
15
+ }), I = d(null), L = d(null), R = d(!0), z = () => {
16
+ let e = L.current;
23
17
  if (!e) return;
24
18
  let t = e.scrollHeight - e.scrollTop - e.clientHeight;
25
- L.current = t < 48;
19
+ R.current = t < 48;
26
20
  };
27
- d(() => {
28
- let e = I.current;
29
- e && L.current && (e.scrollTop = e.scrollHeight);
30
- }, [g, b]), u(() => {
31
- let e = I.current;
21
+ u(() => {
22
+ let e = L.current;
23
+ e && R.current && (e.scrollTop = e.scrollHeight);
24
+ }, [m, v]), l(() => {
25
+ let e = L.current;
32
26
  e && (e.scrollTop = e.scrollHeight);
33
27
  }, []);
34
- let z = s(b, T);
35
- return /* @__PURE__ */ m("div", {
36
- className: e(c.panel, j),
37
- ...M,
28
+ let B = a(v, C);
29
+ return /* @__PURE__ */ p("div", {
30
+ className: e(o.panel, M),
31
+ ...N,
38
32
  children: [
39
- S && /* @__PURE__ */ p("header", {
40
- className: c.header,
41
- children: S
33
+ b && /* @__PURE__ */ f("header", {
34
+ className: o.header,
35
+ children: b
42
36
  }),
43
- /* @__PURE__ */ p("div", {
44
- ref: I,
45
- className: c.thread,
46
- onScroll: R,
37
+ /* @__PURE__ */ f("div", {
38
+ ref: L,
39
+ className: o.thread,
40
+ onScroll: z,
47
41
  role: "log",
48
42
  "aria-live": "polite",
49
43
  "aria-relevant": "additions text",
50
44
  tabIndex: 0,
51
- "aria-label": N.thread,
52
- children: g.length === 0 ? C ?? /* @__PURE__ */ p(t, { title: N.empty }) : P.map((t) => t.kind === "day" ? /* @__PURE__ */ p("div", {
53
- className: c.day,
54
- children: /* @__PURE__ */ p("span", {
55
- className: c.dayLabel,
56
- children: i(t.date, {
57
- locale: T,
58
- now: E
45
+ "aria-label": P.thread,
46
+ children: m.length === 0 ? x ?? /* @__PURE__ */ f(t, { title: P.empty }) : F.map((t) => t.kind === "day" ? /* @__PURE__ */ f("div", {
47
+ className: o.day,
48
+ children: /* @__PURE__ */ f("span", {
49
+ className: o.dayLabel,
50
+ children: r(t.date, {
51
+ locale: C,
52
+ now: w
59
53
  })
60
54
  })
61
- }, t.key) : /* @__PURE__ */ m("div", {
62
- className: e(c.run, t.own && c.ownRun),
63
- children: [x && /* @__PURE__ */ p("div", {
64
- className: c.avatar,
55
+ }, t.key) : /* @__PURE__ */ p("div", {
56
+ className: e(o.run, t.own && o.ownRun),
57
+ children: [y && /* @__PURE__ */ f("div", {
58
+ className: o.avatar,
65
59
  "aria-hidden": "true",
66
- children: x(t.messages[0])
67
- }), /* @__PURE__ */ m("div", {
68
- className: c.runBody,
69
- children: [/* @__PURE__ */ p("span", {
70
- className: c.author,
71
- children: t.own ? N.you : t.authorName ?? t.authorId
72
- }), /* @__PURE__ */ p("ul", {
73
- className: c.bubbles,
74
- children: t.messages.map((r) => /* @__PURE__ */ m("li", {
75
- className: c.bubbleRow,
76
- children: [/* @__PURE__ */ m("div", {
77
- className: e(c.bubble, t.own && c.ownBubble, r.status === "failed" && c.failedBubble),
78
- children: [/* @__PURE__ */ p("div", {
79
- className: c.body,
80
- children: r.body
81
- }), /* @__PURE__ */ m("div", {
82
- className: c.meta,
83
- children: [/* @__PURE__ */ p("time", {
84
- dateTime: new Date(r.sentAt).toISOString(),
85
- children: o(r.sentAt, T)
86
- }), t.own && r.status && /* @__PURE__ */ m("span", {
87
- className: e(c.status, r.status === "failed" && c.statusFailed),
88
- title: N[r.status],
89
- children: [/* @__PURE__ */ p("span", {
90
- "aria-hidden": "true",
91
- children: h[r.status]
92
- }), /* @__PURE__ */ p(n, { children: N[r.status] })]
93
- })]
94
- })]
95
- }), r.status === "failed" && y && /* @__PURE__ */ p("button", {
96
- type: "button",
97
- className: c.retry,
98
- onClick: () => y(r),
99
- children: N.retry
100
- })]
101
- }, r.id))
60
+ children: y(t.messages[0])
61
+ }), /* @__PURE__ */ p("div", {
62
+ className: o.runBody,
63
+ children: [/* @__PURE__ */ f("span", {
64
+ className: o.author,
65
+ children: t.own ? P.you : t.authorName ?? t.authorId
66
+ }), /* @__PURE__ */ f("ul", {
67
+ className: o.bubbles,
68
+ children: t.messages.map((e) => /* @__PURE__ */ f(s, {
69
+ message: e,
70
+ own: t.own,
71
+ locale: C,
72
+ onRetry: _,
73
+ onReact: k,
74
+ messageActions: A,
75
+ onQuoteClick: j
76
+ }, e.id))
102
77
  })]
103
78
  })]
104
79
  }, t.key))
105
80
  }),
106
- z && /* @__PURE__ */ p("p", {
107
- className: c.typing,
81
+ B && /* @__PURE__ */ f("p", {
82
+ className: o.typing,
108
83
  "aria-live": "polite",
109
- children: z
84
+ children: B
110
85
  }),
111
- v && /* @__PURE__ */ p(l, {
112
- ref: F,
113
- onSend: v,
114
- locale: T,
115
- placeholder: D,
116
- actions: O,
117
- disabled: k,
118
- onError: A
86
+ g && /* @__PURE__ */ f(c, {
87
+ ref: I,
88
+ onSend: g,
89
+ locale: C,
90
+ placeholder: T,
91
+ actions: E,
92
+ disabled: D,
93
+ onError: O
119
94
  })
120
95
  ]
121
96
  });
122
97
  }
123
98
  //#endregion
124
- export { g as Chat };
99
+ export { m as Chat };
125
100
 
126
101
  //# sourceMappingURL=Chat.js.map