@eyesee/ui-components 0.7.0 → 0.9.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 (297) hide show
  1. package/README.md +2 -0
  2. package/dist/components/Avatar/Avatar.d.ts +139 -0
  3. package/dist/components/Avatar/Avatar.js +8 -7
  4. package/dist/components/Badge/Badge.d.ts +59 -0
  5. package/dist/components/Badge/Badge.js +7 -7
  6. package/dist/components/Badge/badgeVariants.d.ts +17 -0
  7. package/dist/components/Button/Button.d.ts +299 -0
  8. package/dist/components/Button/Button.js +3 -3
  9. package/dist/components/Checkbox/Checkbox.d.ts +124 -0
  10. package/dist/components/Checkbox/Checkbox.js +13 -12
  11. package/dist/components/DropdownList/DropdownList.d.ts +153 -0
  12. package/dist/components/DropdownList/DropdownList.js +15 -15
  13. package/dist/components/EllipsisTooltip/EllipsisTooltip.d.ts +114 -0
  14. package/dist/components/EllipsisTooltip/EllipsisTooltip.js +24 -24
  15. package/dist/components/EllipsisTooltip/EllipsisTooltip.module.scss.js +4 -6
  16. package/dist/components/ExpandableItem/ExpandableItem.d.ts +89 -0
  17. package/dist/components/ExpandableItem/ExpandableItem.js +6 -6
  18. package/dist/components/Fields/InputField/InputField.d.ts +309 -0
  19. package/dist/components/Fields/InputField/InputField.js +54 -49
  20. package/dist/components/Fields/InputFieldContainer.d.ts +11 -0
  21. package/dist/components/Fields/SelectField/SelectField.d.ts +404 -0
  22. package/dist/components/Fields/SelectField/SelectField.js +61 -56
  23. package/dist/components/Fields/SelectField/SelectFieldTags.d.ts +6 -0
  24. package/dist/components/Fields/SelectField/selectOptionRow.d.ts +1 -0
  25. package/dist/components/Fields/SelectField/selectUtils.d.ts +35 -0
  26. package/dist/components/Fields/SelectField/useSelectFieldDropdownPosition.d.ts +7 -0
  27. package/dist/components/Fields/TextField/TextField.d.ts +272 -0
  28. package/dist/components/Fields/TextField/TextField.js +68 -61
  29. package/dist/components/FileType/FileType.d.ts +61 -0
  30. package/dist/components/FileType/FileType.js +6 -5
  31. package/dist/components/FileType/PaperIcon.d.ts +5 -0
  32. package/dist/components/ImagePlaceholder/ImageHoverPreview/ImageHoverPreview.d.ts +75 -0
  33. package/dist/components/ImagePlaceholder/ImageHoverPreview/ImageHoverPreview.js +13 -12
  34. package/dist/components/ImagePlaceholder/ImagePlaceholder.d.ts +606 -0
  35. package/dist/components/ImagePlaceholder/ImagePlaceholder.js +78 -76
  36. package/dist/components/ImagePlaceholder/ImagePlaceholder.module.scss.js +34 -32
  37. package/dist/components/ImagePlaceholder/constantsImgPh.d.ts +16 -0
  38. package/dist/components/ImagePlaceholder/utilsImgPh.d.ts +18 -0
  39. package/dist/components/ImageWithData/ImageWithData.d.ts +284 -0
  40. package/dist/components/ImageWithData/ImageWithData.js +11 -11
  41. package/dist/components/Infobox/Infobox.d.ts +90 -0
  42. package/dist/components/Infobox/Infobox.js +5 -5
  43. package/dist/components/Infobox/infoboxVariants.d.ts +8 -0
  44. package/dist/components/ListItem/ListItem.d.ts +311 -0
  45. package/dist/components/ListItem/ListItem.js +7 -7
  46. package/dist/components/ListItem/useListItems.d.ts +108 -0
  47. package/dist/components/ListItem/useListItems.js +18 -17
  48. package/dist/components/Modal/Modal.d.ts +239 -0
  49. package/dist/components/Modal/Modal.js +4 -3
  50. package/dist/components/Notifications/Notifications.d.ts +261 -0
  51. package/dist/components/Notifications/Notifications.js +4 -3
  52. package/dist/components/Notifications/useNotifications.d.ts +59 -0
  53. package/dist/components/Notifications/useNotifications.js +3 -2
  54. package/dist/components/Pill/Pill.d.ts +81 -0
  55. package/dist/components/Pill/Pill.js +7 -12
  56. package/dist/components/Pill/pillVariants.d.ts +16 -0
  57. package/dist/components/ProgressBar/ProgressBar.d.ts +111 -0
  58. package/dist/components/ProgressBar/ProgressBar.js +17 -16
  59. package/dist/components/Radio/Radio.d.ts +58 -0
  60. package/dist/components/Radio/Radio.js +12 -11
  61. package/dist/components/Tab/Tab.d.ts +204 -0
  62. package/dist/components/Tab/Tab.js +3 -3
  63. package/dist/components/Tabs/Tabs.d.ts +356 -0
  64. package/dist/components/Tabs/Tabs.js +3 -3
  65. package/dist/components/Tabs/tabsUtils.d.ts +33 -0
  66. package/dist/components/Tabs/tabsUtils.js +18 -12
  67. package/dist/components/Tag/Tag.d.ts +93 -0
  68. package/dist/components/Tag/Tag.js +4 -3
  69. package/dist/components/Tag/tagVariants.d.ts +7 -0
  70. package/dist/components/TextHoverable/TextHoverable.d.ts +46 -0
  71. package/dist/components/TextHoverable/TextHoverable.js +5 -3
  72. package/dist/components/Toggle/Toggle.d.ts +115 -0
  73. package/dist/components/Toggle/Toggle.js +6 -5
  74. package/dist/components/Tooltip/Tooltip.d.ts +294 -0
  75. package/dist/components/Tooltip/Tooltip.js +22 -21
  76. package/dist/components/Tooltip/Tooltip.module.scss.js +30 -28
  77. package/dist/components/Tooltip/useTooltipPositioning.d.ts +21 -0
  78. package/dist/components/icons-v2/AdIcon.d.ts +2 -0
  79. package/dist/components/icons-v2/AddMessageIcon.d.ts +13 -0
  80. package/dist/components/icons-v2/AddUserIcon.d.ts +13 -0
  81. package/dist/components/icons-v2/AdjustmentsIcon.d.ts +13 -0
  82. package/dist/components/icons-v2/AlertIcon.d.ts +13 -0
  83. package/dist/components/icons-v2/AlignCenterIcon.d.ts +13 -0
  84. package/dist/components/icons-v2/AlignHorizontallyIcon.d.ts +13 -0
  85. package/dist/components/icons-v2/AlignJustifyIcon.d.ts +13 -0
  86. package/dist/components/icons-v2/AlignLeftIcon.d.ts +13 -0
  87. package/dist/components/icons-v2/AlignRightIcon.d.ts +13 -0
  88. package/dist/components/icons-v2/AlignVerticallyIcon.d.ts +13 -0
  89. package/dist/components/icons-v2/AlphabetIcon.d.ts +20 -0
  90. package/dist/components/icons-v2/ArchiveIcon.d.ts +13 -0
  91. package/dist/components/icons-v2/ArrowDownIcon.d.ts +13 -0
  92. package/dist/components/icons-v2/ArrowDownRightIcon.d.ts +13 -0
  93. package/dist/components/icons-v2/ArrowLeftIcon.d.ts +13 -0
  94. package/dist/components/icons-v2/ArrowMoveDownIcon.d.ts +13 -0
  95. package/dist/components/icons-v2/ArrowRightIcon.d.ts +13 -0
  96. package/dist/components/icons-v2/ArrowUpIcon.d.ts +13 -0
  97. package/dist/components/icons-v2/AspectRatioIcon.d.ts +13 -0
  98. package/dist/components/icons-v2/AspectRatioIcon.js +15 -0
  99. package/dist/components/icons-v2/AttributesEvaluationIcon.d.ts +13 -0
  100. package/dist/components/icons-v2/BellIcon.d.ts +13 -0
  101. package/dist/components/icons-v2/BoldIcon.d.ts +13 -0
  102. package/dist/components/icons-v2/BoltIcon.d.ts +13 -0
  103. package/dist/components/icons-v2/BookIcon.d.ts +13 -0
  104. package/dist/components/icons-v2/BookmarkIcon.d.ts +13 -0
  105. package/dist/components/icons-v2/BooksIcon.d.ts +13 -0
  106. package/dist/components/icons-v2/BoxIcon.d.ts +13 -0
  107. package/dist/components/icons-v2/BugIcon.d.ts +13 -0
  108. package/dist/components/icons-v2/CalendarIcon.d.ts +13 -0
  109. package/dist/components/icons-v2/CameraPlusIcon.d.ts +13 -0
  110. package/dist/components/icons-v2/CardsIcon.d.ts +13 -0
  111. package/dist/components/icons-v2/CellIcon.d.ts +13 -0
  112. package/dist/components/icons-v2/ChartbarIcon.d.ts +13 -0
  113. package/dist/components/icons-v2/ChartbarOffIcon.d.ts +13 -0
  114. package/dist/components/icons-v2/ChatBubbleIcon.d.ts +13 -0
  115. package/dist/components/icons-v2/ChatbotIcon.d.ts +13 -0
  116. package/dist/components/icons-v2/CheckCircleIcon.d.ts +13 -0
  117. package/dist/components/icons-v2/CheckboxIcon.d.ts +13 -0
  118. package/dist/components/icons-v2/CheckmarkDoubleIcon.d.ts +13 -0
  119. package/dist/components/icons-v2/CheckmarkLargeIcon.d.ts +13 -0
  120. package/dist/components/icons-v2/ChevronDownIcon.d.ts +13 -0
  121. package/dist/components/icons-v2/ChevronLeftIcon.d.ts +13 -0
  122. package/dist/components/icons-v2/ChevronRightIcon.d.ts +13 -0
  123. package/dist/components/icons-v2/ChevronUpIcon.d.ts +13 -0
  124. package/dist/components/icons-v2/ChevronsDownIcon.d.ts +13 -0
  125. package/dist/components/icons-v2/ChevronsLeftIcon.d.ts +13 -0
  126. package/dist/components/icons-v2/ChevronsRightIcon.d.ts +13 -0
  127. package/dist/components/icons-v2/ChevronsUpIcon.d.ts +13 -0
  128. package/dist/components/icons-v2/CircleIcon.d.ts +11 -0
  129. package/dist/components/icons-v2/CirclesIcon.d.ts +13 -0
  130. package/dist/components/icons-v2/ClickIcon.d.ts +13 -0
  131. package/dist/components/icons-v2/ClipboardIcon.d.ts +13 -0
  132. package/dist/components/icons-v2/ClockIcon.d.ts +13 -0
  133. package/dist/components/icons-v2/ClockShareIcon.d.ts +13 -0
  134. package/dist/components/icons-v2/CloseIcon.d.ts +13 -0
  135. package/dist/components/icons-v2/ColumnIcon.d.ts +1 -0
  136. package/dist/components/icons-v2/CopyIcon.d.ts +13 -0
  137. package/dist/components/icons-v2/CreditCardIcon.d.ts +13 -0
  138. package/dist/components/icons-v2/CropIcon.d.ts +13 -0
  139. package/dist/components/icons-v2/DashboardMeterIcon.d.ts +13 -0
  140. package/dist/components/icons-v2/DatabaseCheckIcon.d.ts +13 -0
  141. package/dist/components/icons-v2/DatabaseIcon.d.ts +13 -0
  142. package/dist/components/icons-v2/DeleteIcon.d.ts +12 -0
  143. package/dist/components/icons-v2/DetailsIcon.d.ts +13 -0
  144. package/dist/components/icons-v2/DevicesIcon.d.ts +13 -0
  145. package/dist/components/icons-v2/DislikeIcon.d.ts +13 -0
  146. package/dist/components/icons-v2/DollarIcon.d.ts +13 -0
  147. package/dist/components/icons-v2/DownloadIcon.d.ts +13 -0
  148. package/dist/components/icons-v2/DragToolIcon.d.ts +13 -0
  149. package/dist/components/icons-v2/DrawRectangleIcon.d.ts +13 -0
  150. package/dist/components/icons-v2/EditIcon.d.ts +12 -0
  151. package/dist/components/icons-v2/EmailIcon.d.ts +13 -0
  152. package/dist/components/icons-v2/EmojiNeutralIcon.d.ts +13 -0
  153. package/dist/components/icons-v2/EmojiSadIcon.d.ts +13 -0
  154. package/dist/components/icons-v2/EmojiSlightSmileyIcon.d.ts +13 -0
  155. package/dist/components/icons-v2/EmojiSmileyIcon.d.ts +13 -0
  156. package/dist/components/icons-v2/EmojiVerySadIcon.d.ts +13 -0
  157. package/dist/components/icons-v2/EraserIcon.d.ts +13 -0
  158. package/dist/components/icons-v2/EtShelfIcon.d.ts +13 -0
  159. package/dist/components/icons-v2/EtStandaloneIcon.d.ts +13 -0
  160. package/dist/components/icons-v2/ExternalLinkIcon.d.ts +13 -0
  161. package/dist/components/icons-v2/EyeSeeTokenIcon.d.ts +1 -0
  162. package/dist/components/icons-v2/FileExportIcon.d.ts +13 -0
  163. package/dist/components/icons-v2/FileIcon.d.ts +13 -0
  164. package/dist/components/icons-v2/FileImportIcon.d.ts +13 -0
  165. package/dist/components/icons-v2/FileNewIcon.d.ts +13 -0
  166. package/dist/components/icons-v2/FileRemoveIcon.d.ts +13 -0
  167. package/dist/components/icons-v2/FileTemplateIcon.d.ts +13 -0
  168. package/dist/components/icons-v2/FileUploadIcon.d.ts +13 -0
  169. package/dist/components/icons-v2/FilesIcon.d.ts +13 -0
  170. package/dist/components/icons-v2/FilterOffIcon.d.ts +13 -0
  171. package/dist/components/icons-v2/FilterOnIcon.d.ts +13 -0
  172. package/dist/components/icons-v2/FlagIcon.d.ts +13 -0
  173. package/dist/components/icons-v2/FolderIcon.d.ts +13 -0
  174. package/dist/components/icons-v2/FullscreenIcon.d.ts +13 -0
  175. package/dist/components/icons-v2/GridviewIcon.d.ts +13 -0
  176. package/dist/components/icons-v2/HelpIcon.d.ts +10 -0
  177. package/dist/components/icons-v2/HomeIcon.d.ts +13 -0
  178. package/dist/components/icons-v2/ImageIcon.d.ts +13 -0
  179. package/dist/components/icons-v2/ImageOffIcon.d.ts +13 -0
  180. package/dist/components/icons-v2/ImageStarIcon.d.ts +15 -0
  181. package/dist/components/icons-v2/ImageUploadIcon.d.ts +13 -0
  182. package/dist/components/icons-v2/InfoIcon.d.ts +13 -0
  183. package/dist/components/icons-v2/ItalicIcon.d.ts +13 -0
  184. package/dist/components/icons-v2/LanguageIcon.d.ts +13 -0
  185. package/dist/components/icons-v2/LaunchIcon.d.ts +13 -0
  186. package/dist/components/icons-v2/LayersIcon.d.ts +13 -0
  187. package/dist/components/icons-v2/LeftSidebarCollapseIcon.d.ts +13 -0
  188. package/dist/components/icons-v2/LeftSidebarExpandIcon.d.ts +13 -0
  189. package/dist/components/icons-v2/LightDarkIcon.d.ts +13 -0
  190. package/dist/components/icons-v2/LightbulbIcon.d.ts +13 -0
  191. package/dist/components/icons-v2/LikeIcon.d.ts +13 -0
  192. package/dist/components/icons-v2/LinkIcon.d.ts +13 -0
  193. package/dist/components/icons-v2/ListCheckIcon.d.ts +1 -0
  194. package/dist/components/icons-v2/ListViewIcon.d.ts +13 -0
  195. package/dist/components/icons-v2/LoaderIcon.d.ts +14 -0
  196. package/dist/components/icons-v2/LoadingIcon.d.ts +14 -0
  197. package/dist/components/icons-v2/LockIcon.d.ts +13 -0
  198. package/dist/components/icons-v2/LockOffIcon.d.ts +13 -0
  199. package/dist/components/icons-v2/LoginIcon.d.ts +13 -0
  200. package/dist/components/icons-v2/LogoutIcon.d.ts +13 -0
  201. package/dist/components/icons-v2/MagicwandIcon.d.ts +13 -0
  202. package/dist/components/icons-v2/MaximizeIcon.d.ts +13 -0
  203. package/dist/components/icons-v2/MenuIcon.d.ts +13 -0
  204. package/dist/components/icons-v2/MessageIcon.d.ts +13 -0
  205. package/dist/components/icons-v2/MeterIcon.d.ts +13 -0
  206. package/dist/components/icons-v2/MinimizeIcon.d.ts +13 -0
  207. package/dist/components/icons-v2/MinusIcon.d.ts +13 -0
  208. package/dist/components/icons-v2/MoreHorizontalIcon.d.ts +13 -0
  209. package/dist/components/icons-v2/MoreIcon.d.ts +13 -0
  210. package/dist/components/icons-v2/MouseIcon.d.ts +13 -0
  211. package/dist/components/icons-v2/MoveIcon.d.ts +13 -0
  212. package/dist/components/icons-v2/Multiplier05Icon.d.ts +13 -0
  213. package/dist/components/icons-v2/Multiplier10Icon.d.ts +13 -0
  214. package/dist/components/icons-v2/Multiplier15Icon.d.ts +13 -0
  215. package/dist/components/icons-v2/Multiplier20Icon.d.ts +13 -0
  216. package/dist/components/icons-v2/NoteIcon.d.ts +13 -0
  217. package/dist/components/icons-v2/NoteOffIcon.d.ts +13 -0
  218. package/dist/components/icons-v2/NotifyIcon.d.ts +13 -0
  219. package/dist/components/icons-v2/PackAIIcon.d.ts +13 -0
  220. package/dist/components/icons-v2/PackseeIcon.d.ts +1 -0
  221. package/dist/components/icons-v2/PaperclipIcon.d.ts +13 -0
  222. package/dist/components/icons-v2/PauseIcon.d.ts +13 -0
  223. package/dist/components/icons-v2/PdfIcon.d.ts +13 -0
  224. package/dist/components/icons-v2/PentoolIcon.d.ts +13 -0
  225. package/dist/components/icons-v2/PiechartIcon.d.ts +13 -0
  226. package/dist/components/icons-v2/PinIcon.d.ts +13 -0
  227. package/dist/components/icons-v2/PinskewedIcon.d.ts +13 -0
  228. package/dist/components/icons-v2/PlayIcon.d.ts +13 -0
  229. package/dist/components/icons-v2/PlusIcon.d.ts +12 -0
  230. package/dist/components/icons-v2/PredictiveETIcon.d.ts +13 -0
  231. package/dist/components/icons-v2/RectanglesAddIcon.d.ts +1 -0
  232. package/dist/components/icons-v2/RedoIcon.d.ts +13 -0
  233. package/dist/components/icons-v2/RefreshAlertIcon.d.ts +13 -0
  234. package/dist/components/icons-v2/RefreshIcon.d.ts +13 -0
  235. package/dist/components/icons-v2/ReplaceIcon.d.ts +13 -0
  236. package/dist/components/icons-v2/ReplyIcon.d.ts +13 -0
  237. package/dist/components/icons-v2/SaveIcon.d.ts +12 -0
  238. package/dist/components/icons-v2/ScalesIcon.d.ts +13 -0
  239. package/dist/components/icons-v2/SearchIcon.d.ts +13 -0
  240. package/dist/components/icons-v2/SendIcon.d.ts +13 -0
  241. package/dist/components/icons-v2/SettingsIcon.d.ts +13 -0
  242. package/dist/components/icons-v2/ShareIcon.d.ts +13 -0
  243. package/dist/components/icons-v2/ShelfAddIcon.d.ts +13 -0
  244. package/dist/components/icons-v2/ShelfIcon.d.ts +13 -0
  245. package/dist/components/icons-v2/ShelfInfoIcon.d.ts +13 -0
  246. package/dist/components/icons-v2/ShoppingIcon.d.ts +13 -0
  247. package/dist/components/icons-v2/SlideshowIcon.d.ts +13 -0
  248. package/dist/components/icons-v2/SocialFacebookIcon.d.ts +13 -0
  249. package/dist/components/icons-v2/SocialInstagramIcon.d.ts +13 -0
  250. package/dist/components/icons-v2/SocialSnapchatIcon.d.ts +13 -0
  251. package/dist/components/icons-v2/SocialTiktok2Icon.d.ts +13 -0
  252. package/dist/components/icons-v2/SocialTiktokIcon.d.ts +13 -0
  253. package/dist/components/icons-v2/SocialXIcon.d.ts +13 -0
  254. package/dist/components/icons-v2/SocialYoutubeIcon.d.ts +13 -0
  255. package/dist/components/icons-v2/SortHorizontalIcon.d.ts +13 -0
  256. package/dist/components/icons-v2/SquareAddIcon.d.ts +1 -0
  257. package/dist/components/icons-v2/StarIcon.d.ts +20 -0
  258. package/dist/components/icons-v2/StopIcon.d.ts +11 -0
  259. package/dist/components/icons-v2/SurveyIcon.d.ts +13 -0
  260. package/dist/components/icons-v2/TableExportIcon.d.ts +13 -0
  261. package/dist/components/icons-v2/TableIcon.d.ts +13 -0
  262. package/dist/components/icons-v2/TableOptionsIcon.d.ts +13 -0
  263. package/dist/components/icons-v2/TagIcon.d.ts +13 -0
  264. package/dist/components/icons-v2/TargetArrowIcon.d.ts +13 -0
  265. package/dist/components/icons-v2/TargetIcon.d.ts +13 -0
  266. package/dist/components/icons-v2/TextRecognitionIcon.d.ts +13 -0
  267. package/dist/components/icons-v2/TriangleFlagIcon.d.ts +13 -0
  268. package/dist/components/icons-v2/TrophyIcon.d.ts +13 -0
  269. package/dist/components/icons-v2/UnderlineIcon.d.ts +13 -0
  270. package/dist/components/icons-v2/UndoIcon.d.ts +13 -0
  271. package/dist/components/icons-v2/UnitBuyRateIcon.d.ts +13 -0
  272. package/dist/components/icons-v2/UploadIcon.d.ts +13 -0
  273. package/dist/components/icons-v2/UserGroupIcon.d.ts +13 -0
  274. package/dist/components/icons-v2/UserIcon.d.ts +13 -0
  275. package/dist/components/icons-v2/UsersIcon.d.ts +13 -0
  276. package/dist/components/icons-v2/ValueBuyRateIcon.d.ts +13 -0
  277. package/dist/components/icons-v2/VideoIcon.d.ts +13 -0
  278. package/dist/components/icons-v2/ViewOffIcon.d.ts +13 -0
  279. package/dist/components/icons-v2/ViewOnIcon.d.ts +13 -0
  280. package/dist/components/icons-v2/VolumeOffIcon.d.ts +13 -0
  281. package/dist/components/icons-v2/VolumeOnIcon.d.ts +13 -0
  282. package/dist/components/icons-v2/WebIcon.d.ts +13 -0
  283. package/dist/components/icons-v2/XIcon.d.ts +13 -0
  284. package/dist/components/icons-v2/ZipFileIcon.d.ts +13 -0
  285. package/dist/components/icons-v2/ZonePercentageIcon.d.ts +1 -0
  286. package/dist/components/icons-v2/ZoomInIcon.d.ts +1 -0
  287. package/dist/components/icons-v2/ZoomOutIcon.d.ts +1 -0
  288. package/dist/components/icons-v2/constants.d.ts +61 -0
  289. package/dist/components/icons-v2/createIcon.d.ts +45 -0
  290. package/dist/components/icons-v2/index.d.ts +209 -0
  291. package/dist/components/icons-v2/index.js +376 -374
  292. package/dist/components/index.d.ts +30 -0
  293. package/dist/hooks/useClickOutside.d.ts +2 -0
  294. package/dist/hooks/useEscapeKey.d.ts +1 -0
  295. package/dist/index.d.ts +1 -0
  296. package/dist/style.css +1 -1
  297. package/package.json +17 -4
@@ -1,118 +1,120 @@
1
- import { jsxs as c, jsx as o } from "react/jsx-runtime";
1
+ import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
2
  import { useState as N } from "react";
3
3
  import t from "clsx";
4
- import { Checkbox as Y } from "../Checkbox/Checkbox.js";
5
- import { Tooltip as D } from "../Tooltip/Tooltip.js";
6
- import { tagPropsFromTag as G, badgePropsFromTag as V, pillPropsFromTag as q } from "./utilsImgPh.js";
7
- import { ASPECT_RATIOS as x, TAG_TYPES as I, OVERLAYS as H, TEXT_POSITIONS as S, LINES as J } from "./constantsImgPh.js";
8
- import { ImageOffIcon as K } from "../icons-v2/ImageOffIcon.js";
9
- import { MoreIcon as Q } from "../icons-v2/MoreIcon.js";
10
- import { XIcon as U } from "../icons-v2/XIcon.js";
11
- import e from "./ImagePlaceholder.module.scss.js";
12
- import { Button as Z } from "../Button/Button.js";
13
- import { EllipsisTooltip as $ } from "../EllipsisTooltip/EllipsisTooltip.js";
14
- import { DropdownList as oo } from "../DropdownList/DropdownList.js";
15
- import { ListItem as eo } from "../ListItem/ListItem.js";
16
- import { Tag as ro } from "../Tag/Tag.js";
17
- import { Badge as lo } from "../Badge/Badge.js";
18
- import { Pill as so } from "../Pill/Pill.js";
19
- const Eo = ({
20
- id: E,
21
- url: g,
4
+ import { Checkbox as D } from "../Checkbox/Checkbox.js";
5
+ import { Tooltip as G } from "../Tooltip/Tooltip.js";
6
+ import { tagPropsFromTag as H, badgePropsFromTag as V, pillPropsFromTag as q } from "./utilsImgPh.js";
7
+ import { ASPECT_RATIOS as x, TAG_TYPES as I, OVERLAYS as J, TEXT_POSITIONS as S, LINES as K } from "./constantsImgPh.js";
8
+ import { ImageOffIcon as Q } from "../icons-v2/ImageOffIcon.js";
9
+ import { MoreIcon as U } from "../icons-v2/MoreIcon.js";
10
+ import { XIcon as Z } from "../icons-v2/XIcon.js";
11
+ import o from "./ImagePlaceholder.module.scss.js";
12
+ import { Button as $ } from "../Button/Button.js";
13
+ import { EllipsisTooltip as oo } from "../EllipsisTooltip/EllipsisTooltip.js";
14
+ import { DropdownList as eo } from "../DropdownList/DropdownList.js";
15
+ import { ListItem as ro } from "../ListItem/ListItem.js";
16
+ import { Tag as lo } from "../Tag/Tag.js";
17
+ import { Badge as so } from "../Badge/Badge.js";
18
+ import { Pill as io } from "../Pill/Pill.js";
19
+ function Eo({
20
+ id: g,
21
+ url: E,
22
22
  text: a,
23
23
  textPosition: m = S.inside,
24
24
  tag: l,
25
25
  overlay: s,
26
- isChecked: C,
26
+ isChecked: w,
27
27
  onChecked: p,
28
28
  menu: d,
29
- aspectRatio: P = x["1/1"],
30
- lines: w = J[1],
31
- disabled: i = !1,
29
+ aspectRatio: C = x["1/1"],
30
+ lines: P = K[1],
31
+ disabled: c = !1,
32
32
  onClose: L = () => {
33
33
  },
34
34
  tooltipContent: h,
35
- tooltipTitle: A,
36
- tooltipProps: y = { variant: "dark", showArrow: !1, position: "bottom" },
35
+ tooltipTitle: y,
36
+ tooltipProps: A = { variant: "light", showArrow: !0, position: "bottom" },
37
37
  imageAreaRef: M,
38
38
  onImageAreaMouseEnter: O,
39
39
  onImageAreaMouseLeave: B,
40
40
  onClick: u,
41
- selected: F = !1
42
- }) => {
43
- const [f, R] = N(!1), [n, z] = N(!1), b = () => {
41
+ selected: F = !1,
42
+ overlayDisplay: R = "always"
43
+ }) {
44
+ const [f, W] = N(!1), [n, z] = N(!1), v = () => {
44
45
  switch (l == null ? void 0 : l.type) {
45
46
  case "pill":
46
- return /* @__PURE__ */ o(so, { ...q(l) });
47
+ return /* @__PURE__ */ e(io, { ...q(l) });
47
48
  case "badge":
48
- return /* @__PURE__ */ o(lo, { ...V(l) });
49
+ return /* @__PURE__ */ e(so, { ...V(l) });
49
50
  case "tag":
50
- return /* @__PURE__ */ o(ro, { ...G(l) });
51
+ return /* @__PURE__ */ e(lo, { ...H(l) });
51
52
  default:
52
53
  return null;
53
54
  }
54
- }, T = !a || m === S.outside ? "8px" : "8px 8px 0 0", W = Number(w), _ = t(e.contentText, e.contentTextClamped), j = { WebkitLineClamp: W }, X = !!h, k = !!u && !i, v = /* @__PURE__ */ c(
55
+ }, b = !a || m === S.outside ? "8px" : "8px 8px 0 0", _ = Number(P), j = t(o.contentText, o.contentTextClamped), X = { WebkitLineClamp: _ }, Y = !!h, T = !!u && !c, k = /* @__PURE__ */ i(
55
56
  "div",
56
57
  {
57
58
  className: t(
58
- e.imagePlaceholder,
59
- i && e.disabled,
60
- k && e.clickable,
61
- F && e.selected
59
+ o.imagePlaceholder,
60
+ c && o.disabled,
61
+ T && o.clickable,
62
+ F && o.selected,
63
+ R === "hover" && o.overlayHover
62
64
  ),
63
- onClick: k ? u : void 0,
65
+ onClick: T ? u : void 0,
64
66
  children: [
65
- /* @__PURE__ */ c(
67
+ /* @__PURE__ */ i(
66
68
  "div",
67
69
  {
68
70
  ref: M,
69
71
  className: t(
70
- e.imageArea,
71
- s === "checkbox" && e.clickable,
72
- s === "checkbox" && !n && e.checkboxSelectable
72
+ o.imageArea,
73
+ s === "checkbox" && o.clickable,
74
+ s === "checkbox" && !n && o.checkboxSelectable
73
75
  ),
74
- style: { borderRadius: T },
75
- onClick: s === "checkbox" && !n && !i ? p : void 0,
76
+ style: { borderRadius: b },
77
+ onClick: s === "checkbox" && !n && !c ? p : void 0,
76
78
  onMouseEnter: O,
77
79
  onMouseLeave: B,
78
80
  children: [
79
- /* @__PURE__ */ o(
81
+ /* @__PURE__ */ e(
80
82
  "div",
81
83
  {
82
- className: e.imageFrame,
83
- style: { aspectRatio: x[P], borderRadius: T },
84
- children: n ? /* @__PURE__ */ o("div", { className: e.imageError, children: /* @__PURE__ */ o(
85
- K,
84
+ className: o.imageFrame,
85
+ style: { aspectRatio: x[C], borderRadius: b },
86
+ children: n ? /* @__PURE__ */ e("div", { className: o.imageError, children: /* @__PURE__ */ e(
87
+ Q,
86
88
  {
87
89
  iconSize: "l",
88
90
  strokeColor: "var(--color--icon--disabled--default)"
89
91
  }
90
- ) }) : /* @__PURE__ */ o(
92
+ ) }) : /* @__PURE__ */ e(
91
93
  "img",
92
94
  {
93
- className: e.image,
94
- src: g,
95
+ className: o.image,
96
+ src: E,
95
97
  alt: a,
96
98
  onError: () => z(!0)
97
99
  }
98
100
  )
99
101
  }
100
102
  ),
101
- !a && I.has(l == null ? void 0 : l.type) ? /* @__PURE__ */ o("div", { className: e.tagInImage, children: b() }) : null,
102
- H.has(s) && /* @__PURE__ */ c("div", { className: e.overlay, onClick: (r) => r.stopPropagation(), children: [
103
- s === "checkbox" && !n ? /* @__PURE__ */ o(
104
- Y,
103
+ !a && I.has(l == null ? void 0 : l.type) ? /* @__PURE__ */ e("div", { className: o.tagInImage, children: v() }) : null,
104
+ J.has(s) && /* @__PURE__ */ i("div", { className: o.overlay, onClick: (r) => r.stopPropagation(), children: [
105
+ s === "checkbox" && !n ? /* @__PURE__ */ e(
106
+ D,
105
107
  {
106
- checked: C,
108
+ checked: w,
107
109
  onChange: p,
108
110
  size: "lg",
109
- disabled: i
111
+ disabled: c
110
112
  }
111
113
  ) : null,
112
- s === "close" ? /* @__PURE__ */ o(
113
- Z,
114
+ s === "close" ? /* @__PURE__ */ e(
115
+ $,
114
116
  {
115
- icon: /* @__PURE__ */ o(U, {}),
117
+ icon: /* @__PURE__ */ e(Z, {}),
116
118
  size: "xxs",
117
119
  variant: "fill",
118
120
  type: "neutral",
@@ -123,31 +125,31 @@ const Eo = ({
123
125
  ]
124
126
  }
125
127
  ),
126
- a ? /* @__PURE__ */ c("div", { className: t(e.belowImage, e[m]), children: [
127
- I.has(l == null ? void 0 : l.type) ? /* @__PURE__ */ o("div", { children: b() }) : null,
128
- /* @__PURE__ */ c("div", { className: e.content, children: [
129
- /* @__PURE__ */ o(
130
- $,
128
+ a ? /* @__PURE__ */ i("div", { className: t(o.belowImage, o[m]), children: [
129
+ I.has(l == null ? void 0 : l.type) ? /* @__PURE__ */ e("div", { children: v() }) : null,
130
+ /* @__PURE__ */ i("div", { className: o.content, children: [
131
+ /* @__PURE__ */ e(
132
+ oo,
131
133
  {
132
134
  position: "bottom",
133
135
  showArrow: !0,
134
- className: _,
135
- wrapperStyle: j,
136
+ className: j,
137
+ wrapperStyle: X,
136
138
  children: a
137
139
  }
138
140
  ),
139
- d && /* @__PURE__ */ c("div", { className: e.menu, children: [
140
- /* @__PURE__ */ o(
141
+ d && /* @__PURE__ */ i("div", { className: o.menu, children: [
142
+ /* @__PURE__ */ e(
141
143
  "span",
142
144
  {
143
145
  onClick: (r) => {
144
- r.stopPropagation(), R(!f);
146
+ r.stopPropagation(), W(!f);
145
147
  },
146
- children: /* @__PURE__ */ o(Q, {})
148
+ children: /* @__PURE__ */ e(U, {})
147
149
  }
148
150
  ),
149
- f && /* @__PURE__ */ o(oo, { children: d.map((r) => /* @__PURE__ */ o(
150
- eo,
151
+ f && /* @__PURE__ */ e(eo, { children: d.map((r) => /* @__PURE__ */ e(
152
+ ro,
151
153
  {
152
154
  title: r == null ? void 0 : r.title,
153
155
  value: r == null ? void 0 : r.value,
@@ -160,10 +162,10 @@ const Eo = ({
160
162
  ] }) : null
161
163
  ]
162
164
  },
163
- E
165
+ g
164
166
  );
165
- return X ? /* @__PURE__ */ o(D, { title: A, content: h, ...y, children: v }) : v;
166
- };
167
+ return Y ? /* @__PURE__ */ e(G, { title: y, content: h, ...A, fullWidth: !0, children: k }) : k;
168
+ }
167
169
  export {
168
170
  Eo as default
169
171
  };
@@ -1,41 +1,43 @@
1
- const e = "_imagePlaceholder_1kga2_3", a = "_selected_1kga2_9", t = "_clickable_1kga2_13", _ = "_disabled_1kga2_16", c = "_imageArea_1kga2_22", o = "_checkboxSelectable_1kga2_34", n = "_imageFrame_1kga2_39", g = "_image_1kga2_3", l = "_imageError_1kga2_55", s = "_tagInImage_1kga2_62", i = "_overlay_1kga2_67", m = "_belowImage_1kga2_72", k = "_inside_1kga2_81", d = "_outside_1kga2_85", r = "_content_1kga2_89", b = "_contentText_1kga2_95", x = "_contentTextClamped_1kga2_109", I = "_menu_1kga2_114", u = {
1
+ const e = "_imagePlaceholder_kbkw0_3", t = "_selected_kbkw0_9", _ = "_clickable_kbkw0_13", o = "_disabled_kbkw0_16", a = "_overlayHover_kbkw0_22", c = "_overlay_kbkw0_22", n = "_imageArea_kbkw0_28", k = "_checkboxSelectable_kbkw0_40", l = "_imageFrame_kbkw0_45", b = "_image_kbkw0_3", s = "_imageError_kbkw0_61", i = "_tagInImage_kbkw0_68", m = "_belowImage_kbkw0_78", r = "_inside_kbkw0_87", g = "_outside_kbkw0_91", d = "_content_kbkw0_95", w = "_contentText_kbkw0_101", x = "_contentTextClamped_kbkw0_115", v = "_menu_kbkw0_120", I = {
2
2
  imagePlaceholder: e,
3
- selected: a,
4
- clickable: t,
5
- disabled: _,
6
- imageArea: c,
7
- checkboxSelectable: o,
8
- imageFrame: n,
9
- image: g,
10
- imageError: l,
11
- tagInImage: s,
12
- overlay: i,
3
+ selected: t,
4
+ clickable: _,
5
+ disabled: o,
6
+ overlayHover: a,
7
+ overlay: c,
8
+ imageArea: n,
9
+ checkboxSelectable: k,
10
+ imageFrame: l,
11
+ image: b,
12
+ imageError: s,
13
+ tagInImage: i,
13
14
  belowImage: m,
14
- inside: k,
15
- outside: d,
16
- content: r,
17
- contentText: b,
15
+ inside: r,
16
+ outside: g,
17
+ content: d,
18
+ contentText: w,
18
19
  contentTextClamped: x,
19
- menu: I
20
+ menu: v
20
21
  };
21
22
  export {
22
23
  m as belowImage,
23
- o as checkboxSelectable,
24
- t as clickable,
25
- r as content,
26
- b as contentText,
24
+ k as checkboxSelectable,
25
+ _ as clickable,
26
+ d as content,
27
+ w as contentText,
27
28
  x as contentTextClamped,
28
- u as default,
29
- _ as disabled,
30
- g as image,
31
- c as imageArea,
32
- l as imageError,
33
- n as imageFrame,
29
+ I as default,
30
+ o as disabled,
31
+ b as image,
32
+ n as imageArea,
33
+ s as imageError,
34
+ l as imageFrame,
34
35
  e as imagePlaceholder,
35
- k as inside,
36
- I as menu,
37
- d as outside,
38
- i as overlay,
39
- a as selected,
40
- s as tagInImage
36
+ r as inside,
37
+ v as menu,
38
+ g as outside,
39
+ c as overlay,
40
+ a as overlayHover,
41
+ t as selected,
42
+ i as tagInImage
41
43
  };
@@ -0,0 +1,16 @@
1
+ export const ASPECT_RATIOS: {
2
+ '1/1': string;
3
+ '4/3': string;
4
+ '16/9': string;
5
+ '9/16': string;
6
+ };
7
+ export const LINES: {
8
+ 1: string;
9
+ 2: string;
10
+ };
11
+ export namespace TEXT_POSITIONS {
12
+ let inside: string;
13
+ let outside: string;
14
+ }
15
+ export const TAG_TYPES: Set<string>;
16
+ export const OVERLAYS: Set<string>;
@@ -0,0 +1,18 @@
1
+ export function tagPropsFromTag(tag: any): {
2
+ label: any;
3
+ shape: any;
4
+ state: any;
5
+ showLeadingIcon: boolean;
6
+ onDismiss: any;
7
+ };
8
+ export function badgePropsFromTag(tag: any): {
9
+ label: any;
10
+ shape: any;
11
+ state: any;
12
+ };
13
+ export function pillPropsFromTag(tag: any): {
14
+ label: any;
15
+ color: any;
16
+ status: string;
17
+ icon: any;
18
+ };
@@ -0,0 +1,284 @@
1
+ /**
2
+ * @callback ImageWithDataCheckedHandler
3
+ * @returns {void}
4
+ */
5
+ /**
6
+ * @callback ImageWithDataCloseHandler
7
+ * @returns {void}
8
+ */
9
+ /**
10
+ * @callback ImageWithDataIconClickHandler
11
+ * @returns {void}
12
+ */
13
+ /**
14
+ * Pill tag config. Rendered as {@link Pill}.
15
+ *
16
+ * @typedef {object} ImageWithDataPillTag
17
+ * @property {'pill'} type
18
+ * @property {string} [label]
19
+ * @property {string} [text]
20
+ * @property {'light'|'dark'|'outline'} [color]
21
+ * @property {'turquoise'|'purple'|'green'|'red'|'yellow'|'orange'|'greenyellow'|'neutral'} [status]
22
+ * @property {React.ReactNode} [icon]
23
+ */
24
+ /**
25
+ * Badge tag config. Rendered as {@link Badge}.
26
+ *
27
+ * @typedef {object} ImageWithDataBadgeTag
28
+ * @property {'badge'} type
29
+ * @property {string} [label]
30
+ * @property {string} [text]
31
+ * @property {'rectangle'|'pill'} [shape]
32
+ * @property {'neutral'|'warning'|'error'} [state]
33
+ */
34
+ /**
35
+ * Tag config. Rendered as {@link Tag}.
36
+ *
37
+ * @typedef {object} ImageWithDataTagTag
38
+ * @property {'tag'} type
39
+ * @property {string} [label]
40
+ * @property {string} [text]
41
+ * @property {'rectangle'|'pill'} [shape]
42
+ * @property {'default'|'secondary'|'disabled'} [state]
43
+ * @property {boolean} [showLeadingIcon=false]
44
+ * @property {() => void} [onDismiss]
45
+ */
46
+ /** @typedef {ImageWithDataPillTag|ImageWithDataBadgeTag|ImageWithDataTagTag} ImageWithDataTagConfig */
47
+ /**
48
+ * @typedef {object} ImageWithDataProps
49
+ *
50
+ * @property {string} [id]
51
+ * React key / card identifier.
52
+ * @property {string} [url]
53
+ * Image source URL.
54
+ * @property {string} [text]
55
+ * Caption below the image.
56
+ * @property {'inside'|'outside'} [textPosition='inside']
57
+ * Caption placement. Default `'inside'`.
58
+ * @property {ImageWithDataTagConfig} [tag]
59
+ * Optional {@link Pill}, {@link Badge}, or {@link Tag}.
60
+ *
61
+ * @property {'checkbox'|'close'|'icon'} [overlay]
62
+ * Overlay control on the image.
63
+ * @property {boolean} [isChecked]
64
+ * Checked state when `overlay` is `'checkbox'`.
65
+ * @property {ImageWithDataCheckedHandler} [onChecked]
66
+ * Checkbox overlay toggle handler.
67
+ *
68
+ * @property {'1/1'|'4/3'|'16/9'|'9/16'} [aspectRatio='1/1']
69
+ * Image frame aspect ratio. Default `'1/1'`.
70
+ * @property {'1'|'2'} [lines='1']
71
+ * Max caption lines. Default `'1'`.
72
+ * @property {string|number|null} [number=null]
73
+ * Metric shown beside the caption. Default `null`.
74
+ *
75
+ * @property {boolean} [disabled=false]
76
+ * Disables the whole card. Default `false`.
77
+ * @property {boolean} [disabledOverlay=false]
78
+ * Disables overlay controls only. Default `false`.
79
+ * @property {ImageWithDataCloseHandler} [onClose]
80
+ * Close overlay click handler.
81
+ * @property {React.ReactNode} [icon]
82
+ * Icon for `overlay="icon"`.
83
+ * @property {ImageWithDataIconClickHandler} [onIconClick]
84
+ * Icon overlay click handler.
85
+ *
86
+ * @see {@link Button}
87
+ * @see {@link Pill}
88
+ * @see {@link Badge}
89
+ * @see {@link Tag}
90
+ * @see {@link Checkbox}
91
+ * @see {@link EllipsisTooltip}
92
+ */
93
+ /**
94
+ * Image card with caption, optional tag, overlay controls, and supporting number.
95
+ *
96
+ * ## Props
97
+ *
98
+ * **id** `string` — no default
99
+ * React key / card identifier.
100
+ *
101
+ * **url** `string` — no default
102
+ * Image source URL.
103
+ *
104
+ * **text** `string` — no default
105
+ * Caption below the image.
106
+ *
107
+ * **textPosition** `'inside' | 'outside'` — default `'inside'`
108
+ * Caption placement relative to the card.
109
+ *
110
+ * **tag** `ImageWithDataTagConfig` — no default
111
+ * Optional tag on the image (no caption) or above the caption.
112
+ * - Pill: `type: 'pill'`, `label`, `color`, `status`, `icon`
113
+ * - Badge: `type: 'badge'`, `label`, `shape`, `state`
114
+ * - Tag: `type: 'tag'`, `label`, `shape`, `state`, `showLeadingIcon`, `onDismiss`
115
+ *
116
+ * **overlay** `'checkbox' | 'close' | 'icon'` — no default
117
+ * Overlay control on the image.
118
+ *
119
+ * **isChecked** `boolean` — no default
120
+ * Checked state when `overlay` is `'checkbox'`.
121
+ *
122
+ * **onChecked** `() => void` — no default
123
+ * Checkbox overlay toggle handler.
124
+ *
125
+ * **aspectRatio** `'1/1' | '4/3' | '16/9' | '9/16'` — default `'1/1'`
126
+ * Image frame aspect ratio.
127
+ *
128
+ * **lines** `'1' | '2'` — default `'1'`
129
+ * Max caption lines.
130
+ *
131
+ * **number** `string | number | null` — default `null`
132
+ * Metric shown beside the caption.
133
+ *
134
+ * **disabled** `boolean` — default `false`
135
+ * Disables the whole card.
136
+ *
137
+ * **disabledOverlay** `boolean` — default `false`
138
+ * Disables overlay controls only (also implied when `disabled`).
139
+ *
140
+ * **onClose** `() => void` — no default
141
+ * Close overlay click handler.
142
+ *
143
+ * **icon** `ReactNode` — no default
144
+ * Icon for `overlay="icon"` (rendered in {@link Button}).
145
+ *
146
+ * **onIconClick** `() => void` — no default
147
+ * Icon overlay click handler.
148
+ *
149
+ * @param {ImageWithDataProps} props
150
+ * @returns {import('react').ReactElement}
151
+ *
152
+ * @example <caption>Default</caption>
153
+ * import { ImageWithData } from '@eyesee/ui-components';
154
+ *
155
+ * <ImageWithData id="storybook-image" url="https://picsum.photos/400/400" text="Image caption" />
156
+ *
157
+ * @example <caption>WithNumber</caption>
158
+ * import { ImageWithData } from '@eyesee/ui-components';
159
+ *
160
+ * <ImageWithData url="https://picsum.photos/400/400" text="Image with supporting number" number={12} />
161
+ *
162
+ * @example <caption>WithTag</caption>
163
+ * import { ImageWithData } from '@eyesee/ui-components';
164
+ *
165
+ * <ImageWithData
166
+ * url="https://picsum.photos/400/400"
167
+ * text="Image caption"
168
+ * tag={{ type: 'pill', label: 'Active', color: 'light', status: 'green' }}
169
+ * />
170
+ *
171
+ * @example <caption>CheckboxOverlay</caption>
172
+ * import { ImageWithData } from '@eyesee/ui-components';
173
+ *
174
+ * <ImageWithData url="https://picsum.photos/400/400" text="Image caption" overlay="checkbox" />
175
+ *
176
+ * @example <caption>Disabled</caption>
177
+ * import { ImageWithData } from '@eyesee/ui-components';
178
+ *
179
+ * <ImageWithData url="https://picsum.photos/400/400" text="Image caption" disabled overlay="checkbox" isChecked />
180
+ */
181
+ export default function ImageWithData({ id, url, text, textPosition, tag, overlay, isChecked, onChecked, aspectRatio, lines, number, disabled, disabledOverlay, onClose, icon, onIconClick, }: ImageWithDataProps): import("react").ReactElement;
182
+ export type ImageWithDataCheckedHandler = () => void;
183
+ export type ImageWithDataCloseHandler = () => void;
184
+ export type ImageWithDataIconClickHandler = () => void;
185
+ /**
186
+ * Pill tag config. Rendered as {@link Pill}.
187
+ */
188
+ export type ImageWithDataPillTag = {
189
+ type: "pill";
190
+ label?: string;
191
+ text?: string;
192
+ color?: "light" | "dark" | "outline";
193
+ status?: "turquoise" | "purple" | "green" | "red" | "yellow" | "orange" | "greenyellow" | "neutral";
194
+ icon?: React.ReactNode;
195
+ };
196
+ /**
197
+ * Badge tag config. Rendered as {@link Badge}.
198
+ */
199
+ export type ImageWithDataBadgeTag = {
200
+ type: "badge";
201
+ label?: string;
202
+ text?: string;
203
+ shape?: "rectangle" | "pill";
204
+ state?: "neutral" | "warning" | "error";
205
+ };
206
+ /**
207
+ * Tag config. Rendered as {@link Tag}.
208
+ */
209
+ export type ImageWithDataTagTag = {
210
+ type: "tag";
211
+ label?: string;
212
+ text?: string;
213
+ shape?: "rectangle" | "pill";
214
+ state?: "default" | "secondary" | "disabled";
215
+ showLeadingIcon?: boolean;
216
+ onDismiss?: () => void;
217
+ };
218
+ export type ImageWithDataTagConfig = ImageWithDataPillTag | ImageWithDataBadgeTag | ImageWithDataTagTag;
219
+ export type ImageWithDataProps = {
220
+ /**
221
+ * React key / card identifier.
222
+ */
223
+ id?: string;
224
+ /**
225
+ * Image source URL.
226
+ */
227
+ url?: string;
228
+ /**
229
+ * Caption below the image.
230
+ */
231
+ text?: string;
232
+ /**
233
+ * Caption placement. Default `'inside'`.
234
+ */
235
+ textPosition?: "inside" | "outside";
236
+ /**
237
+ * Optional {@link Pill}, {@link Badge}, or {@link Tag}.
238
+ */
239
+ tag?: ImageWithDataTagConfig;
240
+ /**
241
+ * Overlay control on the image.
242
+ */
243
+ overlay?: "checkbox" | "close" | "icon";
244
+ /**
245
+ * Checked state when `overlay` is `'checkbox'`.
246
+ */
247
+ isChecked?: boolean;
248
+ /**
249
+ * Checkbox overlay toggle handler.
250
+ */
251
+ onChecked?: ImageWithDataCheckedHandler;
252
+ /**
253
+ * Image frame aspect ratio. Default `'1/1'`.
254
+ */
255
+ aspectRatio?: "1/1" | "4/3" | "16/9" | "9/16";
256
+ /**
257
+ * Max caption lines. Default `'1'`.
258
+ */
259
+ lines?: "1" | "2";
260
+ /**
261
+ * Metric shown beside the caption. Default `null`.
262
+ */
263
+ number?: string | number | null;
264
+ /**
265
+ * Disables the whole card. Default `false`.
266
+ */
267
+ disabled?: boolean;
268
+ /**
269
+ * Disables overlay controls only. Default `false`.
270
+ */
271
+ disabledOverlay?: boolean;
272
+ /**
273
+ * Close overlay click handler.
274
+ */
275
+ onClose?: ImageWithDataCloseHandler;
276
+ /**
277
+ * Icon for `overlay="icon"`.
278
+ */
279
+ icon?: React.ReactNode;
280
+ /**
281
+ * Icon overlay click handler.
282
+ */
283
+ onIconClick?: ImageWithDataIconClickHandler;
284
+ };