@box/blueprint-web 5.31.3

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 (601) hide show
  1. package/LICENSE +379 -0
  2. package/README.md +191 -0
  3. package/THIRD_PARTY_LICENSES +2051 -0
  4. package/lib-esm/accordion/accordion.d.ts +20 -0
  5. package/lib-esm/accordion/accordion.js +112 -0
  6. package/lib-esm/accordion/accordion.module.js +4 -0
  7. package/lib-esm/accordion/index.d.ts +2 -0
  8. package/lib-esm/accordion/types.d.ts +43 -0
  9. package/lib-esm/actionable-inline-notice/actionable-inline-notice.d.ts +3 -0
  10. package/lib-esm/actionable-inline-notice/actionable-inline-notice.js +34 -0
  11. package/lib-esm/actionable-inline-notice/index.d.ts +60 -0
  12. package/lib-esm/actionable-inline-notice/index.js +9 -0
  13. package/lib-esm/actionable-inline-notice/types.d.ts +21 -0
  14. package/lib-esm/avatar/avatar.d.ts +109 -0
  15. package/lib-esm/avatar/avatar.js +127 -0
  16. package/lib-esm/avatar/avatar.module.js +4 -0
  17. package/lib-esm/avatar/consts.d.ts +5 -0
  18. package/lib-esm/avatar/consts.js +29 -0
  19. package/lib-esm/avatar/index.d.ts +2 -0
  20. package/lib-esm/avatar/types.d.ts +34 -0
  21. package/lib-esm/avatar/utils.d.ts +3 -0
  22. package/lib-esm/basics/button/button.d.ts +30 -0
  23. package/lib-esm/basics/button/button.js +23 -0
  24. package/lib-esm/basics/button/index.d.ts +2 -0
  25. package/lib-esm/basics/button/types.d.ts +8 -0
  26. package/lib-esm/basics/collapsible/collapsible-section.d.ts +15 -0
  27. package/lib-esm/basics/collapsible/collapsible-section.js +62 -0
  28. package/lib-esm/basics/collapsible/collapsible-section.module.js +4 -0
  29. package/lib-esm/basics/collapsible/index.d.ts +2 -0
  30. package/lib-esm/basics/collapsible/types.d.ts +12 -0
  31. package/lib-esm/basics/date-picker/date-picker.d.ts +5 -0
  32. package/lib-esm/basics/date-picker/date-picker.js +200 -0
  33. package/lib-esm/basics/date-picker/date-picker.module.js +4 -0
  34. package/lib-esm/basics/date-picker/index.d.ts +2 -0
  35. package/lib-esm/basics/date-picker/types.d.ts +32 -0
  36. package/lib-esm/basics/grid-list-item/grid-list.d.ts +3 -0
  37. package/lib-esm/basics/grid-list-item/grid-list.js +18 -0
  38. package/lib-esm/basics/grid-list-item/index.d.ts +74 -0
  39. package/lib-esm/basics/grid-list-item/index.js +73 -0
  40. package/lib-esm/basics/grid-list-item/types.d.ts +10 -0
  41. package/lib-esm/basics/large-list-item/index.d.ts +88 -0
  42. package/lib-esm/basics/large-list-item/index.js +87 -0
  43. package/lib-esm/basics/large-list-item/large-list-item-description.d.ts +4 -0
  44. package/lib-esm/basics/large-list-item/large-list-item-description.js +30 -0
  45. package/lib-esm/basics/large-list-item/large-list-item-snippet.d.ts +3 -0
  46. package/lib-esm/basics/large-list-item/large-list-item-snippet.js +36 -0
  47. package/lib-esm/basics/large-list-item/large-list.d.ts +3 -0
  48. package/lib-esm/basics/large-list-item/large-list.js +18 -0
  49. package/lib-esm/basics/large-list-item/types.d.ts +15 -0
  50. package/lib-esm/basics/navigation-menu/index.d.ts +16 -0
  51. package/lib-esm/basics/navigation-menu/index.js +17 -0
  52. package/lib-esm/basics/navigation-menu/navigation-menu-content.d.ts +7 -0
  53. package/lib-esm/basics/navigation-menu/navigation-menu-content.js +21 -0
  54. package/lib-esm/basics/navigation-menu/navigation-menu-item.d.ts +13 -0
  55. package/lib-esm/basics/navigation-menu/navigation-menu-item.js +52 -0
  56. package/lib-esm/basics/navigation-menu/navigation-menu-link.d.ts +5 -0
  57. package/lib-esm/basics/navigation-menu/navigation-menu-link.js +24 -0
  58. package/lib-esm/basics/navigation-menu/navigation-menu-root.d.ts +10 -0
  59. package/lib-esm/basics/navigation-menu/navigation-menu-root.js +19 -0
  60. package/lib-esm/basics/navigation-menu/navigation-menu-separator.d.ts +2 -0
  61. package/lib-esm/basics/navigation-menu/navigation-menu-separator.js +12 -0
  62. package/lib-esm/basics/navigation-menu/navigation-menu-trigger.d.ts +7 -0
  63. package/lib-esm/basics/navigation-menu/navigation-menu-trigger.js +21 -0
  64. package/lib-esm/basics/navigation-menu/navigation-menu.module.js +4 -0
  65. package/lib-esm/basics/small-list-item/index.d.ts +47 -0
  66. package/lib-esm/basics/small-list-item/index.js +46 -0
  67. package/lib-esm/basics/small-list-item/small-list.d.ts +3 -0
  68. package/lib-esm/basics/small-list-item/small-list.js +18 -0
  69. package/lib-esm/basics/small-list-item/types.d.ts +6 -0
  70. package/lib-esm/basics/text-input/index.d.ts +2 -0
  71. package/lib-esm/basics/text-input/text-input.d.ts +48 -0
  72. package/lib-esm/basics/text-input/text-input.js +77 -0
  73. package/lib-esm/basics/text-input/text-input.module.js +4 -0
  74. package/lib-esm/basics/text-input/types.d.ts +23 -0
  75. package/lib-esm/branding-styles/branding-styles.d.ts +2 -0
  76. package/lib-esm/branding-styles/branding-styles.js +10 -0
  77. package/lib-esm/branding-styles/index.d.ts +3 -0
  78. package/lib-esm/branding-styles/types.d.ts +4 -0
  79. package/lib-esm/branding-styles/useCustomBranding.d.ts +1 -0
  80. package/lib-esm/branding-styles/useCustomBranding.js +40 -0
  81. package/lib-esm/branding-styles/utils/createTheme.d.ts +69 -0
  82. package/lib-esm/branding-styles/utils/createTheme.js +167 -0
  83. package/lib-esm/branding-styles/utils/theme.d.ts +41 -0
  84. package/lib-esm/branding-styles/utils/theme.js +48 -0
  85. package/lib-esm/branding-styles/utils/variables.d.ts +117 -0
  86. package/lib-esm/branding-styles/utils/variables.js +18 -0
  87. package/lib-esm/card/card.d.ts +6 -0
  88. package/lib-esm/card/card.js +24 -0
  89. package/lib-esm/card/card.module.js +4 -0
  90. package/lib-esm/card/index.d.ts +2 -0
  91. package/lib-esm/card/types.d.ts +10 -0
  92. package/lib-esm/card-tooltip/card-tooltip.d.ts +13 -0
  93. package/lib-esm/card-tooltip/card-tooltip.js +66 -0
  94. package/lib-esm/card-tooltip/card-tooltip.module.js +4 -0
  95. package/lib-esm/card-tooltip/index.d.ts +2 -0
  96. package/lib-esm/card-tooltip/types.d.ts +30 -0
  97. package/lib-esm/checkbox/checkbox-item.d.ts +6 -0
  98. package/lib-esm/checkbox/checkbox-item.js +78 -0
  99. package/lib-esm/checkbox/checkbox.module.js +4 -0
  100. package/lib-esm/checkbox/index.d.ts +8 -0
  101. package/lib-esm/checkbox/index.js +9 -0
  102. package/lib-esm/checkbox/types.d.ts +32 -0
  103. package/lib-esm/combobox/chips-group.d.ts +3 -0
  104. package/lib-esm/combobox/chips-group.js +100 -0
  105. package/lib-esm/combobox/chips-group.module.js +4 -0
  106. package/lib-esm/combobox/chips-group.types.d.ts +5 -0
  107. package/lib-esm/combobox/combobox.d.ts +14 -0
  108. package/lib-esm/combobox/combobox.js +422 -0
  109. package/lib-esm/combobox/combobox.module.js +4 -0
  110. package/lib-esm/combobox/index.d.ts +2 -0
  111. package/lib-esm/combobox/types.d.ts +206 -0
  112. package/lib-esm/content-card/content-card-body.d.ts +4 -0
  113. package/lib-esm/content-card/content-card-body.js +28 -0
  114. package/lib-esm/content-card/content-card-footer.d.ts +3 -0
  115. package/lib-esm/content-card/content-card-footer.js +17 -0
  116. package/lib-esm/content-card/content-card-image.d.ts +5 -0
  117. package/lib-esm/content-card/content-card-image.js +41 -0
  118. package/lib-esm/content-card/content-card-title.d.ts +4 -0
  119. package/lib-esm/content-card/content-card-title.js +28 -0
  120. package/lib-esm/content-card/content-card.d.ts +13 -0
  121. package/lib-esm/content-card/content-card.js +93 -0
  122. package/lib-esm/content-card/content-card.module.js +4 -0
  123. package/lib-esm/content-card/index.d.ts +2 -0
  124. package/lib-esm/content-card/types.d.ts +28 -0
  125. package/lib-esm/content-field/content-field.d.ts +5 -0
  126. package/lib-esm/content-field/content-field.js +93 -0
  127. package/lib-esm/content-field/content-field.module.js +4 -0
  128. package/lib-esm/content-field/index.d.ts +2 -0
  129. package/lib-esm/content-field/messages.d.ts +6 -0
  130. package/lib-esm/content-field/messages.js +8 -0
  131. package/lib-esm/content-field/types.d.ts +23 -0
  132. package/lib-esm/data-table/data-table-wrapper.d.ts +6 -0
  133. package/lib-esm/data-table/index.d.ts +1 -0
  134. package/lib-esm/empty-state/empty-state.d.ts +44 -0
  135. package/lib-esm/empty-state/empty-state.js +92 -0
  136. package/lib-esm/empty-state/empty-state.module.js +4 -0
  137. package/lib-esm/empty-state/index.d.ts +2 -0
  138. package/lib-esm/empty-state/types.d.ts +19 -0
  139. package/lib-esm/ghost/ghost.d.ts +27 -0
  140. package/lib-esm/ghost/ghost.js +37 -0
  141. package/lib-esm/ghost/ghost.module.js +4 -0
  142. package/lib-esm/ghost/index.d.ts +1 -0
  143. package/lib-esm/guided-tooltip/guided-tooltip-body.d.ts +11 -0
  144. package/lib-esm/guided-tooltip/guided-tooltip-body.js +49 -0
  145. package/lib-esm/guided-tooltip/guided-tooltip-footer.d.ts +71 -0
  146. package/lib-esm/guided-tooltip/guided-tooltip-footer.js +77 -0
  147. package/lib-esm/guided-tooltip/guided-tooltip-icon.d.ts +7 -0
  148. package/lib-esm/guided-tooltip/guided-tooltip-icon.js +22 -0
  149. package/lib-esm/guided-tooltip/guided-tooltip-illustration.d.ts +7 -0
  150. package/lib-esm/guided-tooltip/guided-tooltip-illustration.js +20 -0
  151. package/lib-esm/guided-tooltip/guided-tooltip-title.d.ts +6 -0
  152. package/lib-esm/guided-tooltip/guided-tooltip-title.js +36 -0
  153. package/lib-esm/guided-tooltip/guided-tooltip.d.ts +69 -0
  154. package/lib-esm/guided-tooltip/guided-tooltip.js +110 -0
  155. package/lib-esm/guided-tooltip/guided-tooltip.module.js +4 -0
  156. package/lib-esm/guided-tooltip/index.d.ts +3 -0
  157. package/lib-esm/guided-tooltip/types.d.ts +98 -0
  158. package/lib-esm/guided-tooltip/utils/guided-tooltip-context.d.ts +11 -0
  159. package/lib-esm/guided-tooltip/utils/guided-tooltip-context.js +12 -0
  160. package/lib-esm/index.css +5328 -0
  161. package/lib-esm/index.d.ts +55 -0
  162. package/lib-esm/index.js +62 -0
  163. package/lib-esm/inline-notice/inline-notice.d.ts +17 -0
  164. package/lib-esm/inline-notice/inline-notice.js +64 -0
  165. package/lib-esm/inline-table/index.d.ts +2 -0
  166. package/lib-esm/inline-table/inline-table.d.ts +10 -0
  167. package/lib-esm/inline-table/inline-table.js +53 -0
  168. package/lib-esm/inline-table/inline-table.module.js +4 -0
  169. package/lib-esm/inline-table/types.d.ts +14 -0
  170. package/lib-esm/input-chip/index.d.ts +2 -0
  171. package/lib-esm/input-chip/input-chip.d.ts +4 -0
  172. package/lib-esm/input-chip/input-chip.js +58 -0
  173. package/lib-esm/input-chip/input-chip.module.js +4 -0
  174. package/lib-esm/input-chip/types.d.ts +21 -0
  175. package/lib-esm/list-item/cell/action-cell.d.ts +13 -0
  176. package/lib-esm/list-item/cell/action-cell.js +49 -0
  177. package/lib-esm/list-item/cell/cell.d.ts +10 -0
  178. package/lib-esm/list-item/cell/cell.js +30 -0
  179. package/lib-esm/list-item/drop-indicator.d.ts +3 -0
  180. package/lib-esm/list-item/drop-indicator.js +19 -0
  181. package/lib-esm/list-item/drop-indicator.module.js +4 -0
  182. package/lib-esm/list-item/index.d.ts +25 -0
  183. package/lib-esm/list-item/list-item.d.ts +25 -0
  184. package/lib-esm/list-item/list-item.js +19 -0
  185. package/lib-esm/list-item/main.module.js +4 -0
  186. package/lib-esm/list-item/row.d.ts +12 -0
  187. package/lib-esm/list-item/row.js +32 -0
  188. package/lib-esm/list-item/table-body.d.ts +16 -0
  189. package/lib-esm/list-item/table-body.js +26 -0
  190. package/lib-esm/list-item/table-column.d.ts +14 -0
  191. package/lib-esm/list-item/table-column.js +78 -0
  192. package/lib-esm/list-item/table-header.d.ts +12 -0
  193. package/lib-esm/list-item/table-header.js +30 -0
  194. package/lib-esm/list-item/table.d.ts +8 -0
  195. package/lib-esm/list-item/table.js +30 -0
  196. package/lib-esm/loading-indicator/loading-indicator.d.ts +16 -0
  197. package/lib-esm/loading-indicator/loading-indicator.js +29 -0
  198. package/lib-esm/loading-indicator/loading-indicator.module.js +4 -0
  199. package/lib-esm/modal/index.d.ts +2 -0
  200. package/lib-esm/modal/modal-body.d.ts +7 -0
  201. package/lib-esm/modal/modal-body.js +20 -0
  202. package/lib-esm/modal/modal-close.d.ts +7 -0
  203. package/lib-esm/modal/modal-close.js +47 -0
  204. package/lib-esm/modal/modal-content.d.ts +7 -0
  205. package/lib-esm/modal/modal-content.js +28 -0
  206. package/lib-esm/modal/modal-footer.d.ts +65 -0
  207. package/lib-esm/modal/modal-footer.js +54 -0
  208. package/lib-esm/modal/modal-header.d.ts +7 -0
  209. package/lib-esm/modal/modal-header.js +42 -0
  210. package/lib-esm/modal/modal-scrollable-container.d.ts +8 -0
  211. package/lib-esm/modal/modal-scrollable-container.js +21 -0
  212. package/lib-esm/modal/modal-title.d.ts +7 -0
  213. package/lib-esm/modal/modal-title.js +29 -0
  214. package/lib-esm/modal/modal-trigger.d.ts +7 -0
  215. package/lib-esm/modal/modal-trigger.js +18 -0
  216. package/lib-esm/modal/modal.d.ts +93 -0
  217. package/lib-esm/modal/modal.js +55 -0
  218. package/lib-esm/modal/modal.module.js +4 -0
  219. package/lib-esm/modal/types.d.ts +48 -0
  220. package/lib-esm/primitives/base-button/base-button-context.d.ts +4 -0
  221. package/lib-esm/primitives/base-button/base-button-context.js +10 -0
  222. package/lib-esm/primitives/base-button/base-button-icon.d.ts +7 -0
  223. package/lib-esm/primitives/base-button/base-button-icon.js +47 -0
  224. package/lib-esm/primitives/base-button/base-button-label.d.ts +6 -0
  225. package/lib-esm/primitives/base-button/base-button-label.js +17 -0
  226. package/lib-esm/primitives/base-button/base-button.d.ts +24 -0
  227. package/lib-esm/primitives/base-button/base-button.js +58 -0
  228. package/lib-esm/primitives/base-button/base-button.module.js +4 -0
  229. package/lib-esm/primitives/base-button/index.d.ts +36 -0
  230. package/lib-esm/primitives/base-button/index.js +10 -0
  231. package/lib-esm/primitives/base-button/types.d.ts +28 -0
  232. package/lib-esm/primitives/base-button/utils.d.ts +8 -0
  233. package/lib-esm/primitives/base-button/utils.js +28 -0
  234. package/lib-esm/primitives/base-inline-notice/base-inline-notice-actions.d.ts +116 -0
  235. package/lib-esm/primitives/base-inline-notice/base-inline-notice-actions.js +55 -0
  236. package/lib-esm/primitives/base-inline-notice/base-inline-notice-content-container.d.ts +8 -0
  237. package/lib-esm/primitives/base-inline-notice/base-inline-notice-content-container.js +21 -0
  238. package/lib-esm/primitives/base-inline-notice/base-inline-notice-content.d.ts +7 -0
  239. package/lib-esm/primitives/base-inline-notice/base-inline-notice-content.js +49 -0
  240. package/lib-esm/primitives/base-inline-notice/base-inline-notice-icon.d.ts +7 -0
  241. package/lib-esm/primitives/base-inline-notice/base-inline-notice-icon.js +30 -0
  242. package/lib-esm/primitives/base-inline-notice/base-inline-notice.d.ts +4 -0
  243. package/lib-esm/primitives/base-inline-notice/base-inline-notice.js +21 -0
  244. package/lib-esm/primitives/base-inline-notice/base-inline-notice.module.js +4 -0
  245. package/lib-esm/primitives/base-inline-notice/index.d.ts +73 -0
  246. package/lib-esm/primitives/base-inline-notice/index.js +14 -0
  247. package/lib-esm/primitives/base-inline-notice/types.d.ts +39 -0
  248. package/lib-esm/primitives/calendar/calendar.d.ts +3 -0
  249. package/lib-esm/primitives/calendar/calendar.js +67 -0
  250. package/lib-esm/primitives/calendar/calendar.module.js +4 -0
  251. package/lib-esm/primitives/calendar/index.d.ts +3 -0
  252. package/lib-esm/primitives/calendar/parse-date.util.d.ts +7 -0
  253. package/lib-esm/primitives/calendar/parse-date.util.js +10 -0
  254. package/lib-esm/primitives/calendar/types.d.ts +17 -0
  255. package/lib-esm/primitives/chips/chip-dropdown-indicator.d.ts +2 -0
  256. package/lib-esm/primitives/chips/chip-dropdown-indicator.js +15 -0
  257. package/lib-esm/primitives/chips/chip-icon.d.ts +3 -0
  258. package/lib-esm/primitives/chips/chip-icon.js +18 -0
  259. package/lib-esm/primitives/chips/chip-label.d.ts +4 -0
  260. package/lib-esm/primitives/chips/chip-label.js +21 -0
  261. package/lib-esm/primitives/chips/chip-status.d.ts +4 -0
  262. package/lib-esm/primitives/chips/chip-status.js +20 -0
  263. package/lib-esm/primitives/chips/chip.d.ts +3 -0
  264. package/lib-esm/primitives/chips/chip.js +21 -0
  265. package/lib-esm/primitives/chips/chip.module.js +4 -0
  266. package/lib-esm/primitives/chips/chips-group.d.ts +7 -0
  267. package/lib-esm/primitives/chips/chips-group.js +22 -0
  268. package/lib-esm/primitives/chips/filter-chip/filter-chip-button.d.ts +8 -0
  269. package/lib-esm/primitives/chips/filter-chip/filter-chip-button.js +30 -0
  270. package/lib-esm/primitives/chips/filter-chip/filter-chip-group-context.d.ts +11 -0
  271. package/lib-esm/primitives/chips/filter-chip/filter-chip-group-context.js +9 -0
  272. package/lib-esm/primitives/chips/filter-chip/filter-chip.d.ts +18 -0
  273. package/lib-esm/primitives/chips/filter-chip/filter-chip.js +85 -0
  274. package/lib-esm/primitives/chips/filter-chip/filter-combo-chip.d.ts +27 -0
  275. package/lib-esm/primitives/chips/filter-chip/filter-combo-chip.js +84 -0
  276. package/lib-esm/primitives/chips/filter-chip/filter-trigger-chip.d.ts +16 -0
  277. package/lib-esm/primitives/chips/filter-chip/filter-trigger-chip.js +37 -0
  278. package/lib-esm/primitives/chips/filter-chip/index.d.ts +27 -0
  279. package/lib-esm/primitives/chips/filter-chip/index.js +23 -0
  280. package/lib-esm/primitives/chips/types.d.ts +23 -0
  281. package/lib-esm/primitives/context-menu/context-menu-item.d.ts +17 -0
  282. package/lib-esm/primitives/context-menu/context-menu-item.js +40 -0
  283. package/lib-esm/primitives/context-menu/context-menu-items-separator.d.ts +5 -0
  284. package/lib-esm/primitives/context-menu/context-menu-items-separator.js +16 -0
  285. package/lib-esm/primitives/context-menu/context-menu-menu-content.d.ts +11 -0
  286. package/lib-esm/primitives/context-menu/context-menu-menu-content.js +29 -0
  287. package/lib-esm/primitives/context-menu/context-menu-menu-root.d.ts +8 -0
  288. package/lib-esm/primitives/context-menu/context-menu-menu-root.js +19 -0
  289. package/lib-esm/primitives/context-menu/context-menu-menu-trigger.d.ts +8 -0
  290. package/lib-esm/primitives/context-menu/context-menu-menu-trigger.js +21 -0
  291. package/lib-esm/primitives/context-menu/context-menu-sub-menu-content.d.ts +12 -0
  292. package/lib-esm/primitives/context-menu/context-menu-sub-menu-content.js +34 -0
  293. package/lib-esm/primitives/context-menu/context-menu-sub-menu-root.d.ts +11 -0
  294. package/lib-esm/primitives/context-menu/context-menu-sub-menu-root.js +20 -0
  295. package/lib-esm/primitives/context-menu/context-menu-sub-menu-trigger.d.ts +18 -0
  296. package/lib-esm/primitives/context-menu/context-menu-sub-menu-trigger.js +39 -0
  297. package/lib-esm/primitives/context-menu/context-menu.module.js +4 -0
  298. package/lib-esm/primitives/context-menu/index.d.ts +27 -0
  299. package/lib-esm/primitives/context-menu/index.js +21 -0
  300. package/lib-esm/primitives/date-i18n-provider/date-i18n-provider.d.ts +15 -0
  301. package/lib-esm/primitives/date-i18n-provider/date-i18n-provider.js +17 -0
  302. package/lib-esm/primitives/dropdown-menu/dropdown-menu-checkbox-item.d.ts +8 -0
  303. package/lib-esm/primitives/dropdown-menu/dropdown-menu-checkbox-item.js +42 -0
  304. package/lib-esm/primitives/dropdown-menu/dropdown-menu-content.d.ts +12 -0
  305. package/lib-esm/primitives/dropdown-menu/dropdown-menu-content.js +35 -0
  306. package/lib-esm/primitives/dropdown-menu/dropdown-menu-item.d.ts +7 -0
  307. package/lib-esm/primitives/dropdown-menu/dropdown-menu-item.js +29 -0
  308. package/lib-esm/primitives/dropdown-menu/dropdown-menu-radio-group.d.ts +8 -0
  309. package/lib-esm/primitives/dropdown-menu/dropdown-menu-radio-group.js +17 -0
  310. package/lib-esm/primitives/dropdown-menu/dropdown-menu-radio-select-item.d.ts +8 -0
  311. package/lib-esm/primitives/dropdown-menu/dropdown-menu-radio-select-item.js +43 -0
  312. package/lib-esm/primitives/dropdown-menu/dropdown-menu-root.d.ts +10 -0
  313. package/lib-esm/primitives/dropdown-menu/dropdown-menu-root.js +19 -0
  314. package/lib-esm/primitives/dropdown-menu/dropdown-menu-separator.d.ts +5 -0
  315. package/lib-esm/primitives/dropdown-menu/dropdown-menu-separator.js +17 -0
  316. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-content.d.ts +12 -0
  317. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-content.js +34 -0
  318. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-root.d.ts +11 -0
  319. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-root.js +20 -0
  320. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-trigger.d.ts +17 -0
  321. package/lib-esm/primitives/dropdown-menu/dropdown-menu-sub-menu-trigger.js +38 -0
  322. package/lib-esm/primitives/dropdown-menu/dropdown-menu-trigger.d.ts +8 -0
  323. package/lib-esm/primitives/dropdown-menu/dropdown-menu-trigger.js +23 -0
  324. package/lib-esm/primitives/dropdown-menu/dropdown-menu.module.js +4 -0
  325. package/lib-esm/primitives/dropdown-menu/index.d.ts +29 -0
  326. package/lib-esm/primitives/dropdown-menu/index.js +27 -0
  327. package/lib-esm/primitives/icon-button/icon-button.d.ts +4 -0
  328. package/lib-esm/primitives/icon-button/icon-button.js +30 -0
  329. package/lib-esm/primitives/icon-button/icon-button.module.js +4 -0
  330. package/lib-esm/primitives/icon-button/index.d.ts +2 -0
  331. package/lib-esm/primitives/icon-button/types.d.ts +9 -0
  332. package/lib-esm/primitives/icon-button/utils.d.ts +3 -0
  333. package/lib-esm/primitives/icon-button/utils.js +9 -0
  334. package/lib-esm/primitives/inline-error/inline-error.d.ts +4 -0
  335. package/lib-esm/primitives/inline-error/inline-error.js +33 -0
  336. package/lib-esm/primitives/inline-error/inline-error.module.js +4 -0
  337. package/lib-esm/primitives/inline-error/types.d.ts +5 -0
  338. package/lib-esm/primitives/link/index.d.ts +2 -0
  339. package/lib-esm/primitives/link/link.d.ts +3 -0
  340. package/lib-esm/primitives/link/link.js +25 -0
  341. package/lib-esm/primitives/link/link.module.js +4 -0
  342. package/lib-esm/primitives/link/types.d.ts +21 -0
  343. package/lib-esm/primitives/notification/index.d.ts +12 -0
  344. package/lib-esm/primitives/notification/index.js +12 -0
  345. package/lib-esm/primitives/notification/notification-button.d.ts +9 -0
  346. package/lib-esm/primitives/notification/notification-button.js +23 -0
  347. package/lib-esm/primitives/notification/notification-provider.d.ts +37 -0
  348. package/lib-esm/primitives/notification/notification-provider.js +94 -0
  349. package/lib-esm/primitives/notification/notification.module.js +4 -0
  350. package/lib-esm/primitives/notification/notification.viewport.d.ts +9 -0
  351. package/lib-esm/primitives/notification/notification.viewport.js +35 -0
  352. package/lib-esm/primitives/notification/private-notification-element.d.ts +33 -0
  353. package/lib-esm/primitives/notification/private-notification-element.js +91 -0
  354. package/lib-esm/primitives/page-header/index.d.ts +2 -0
  355. package/lib-esm/primitives/page-header/page-header.d.ts +12 -0
  356. package/lib-esm/primitives/page-header/page-header.js +73 -0
  357. package/lib-esm/primitives/page-header/page-header.module.js +4 -0
  358. package/lib-esm/primitives/page-header/types.d.ts +8 -0
  359. package/lib-esm/primitives/popover/index.d.ts +18 -0
  360. package/lib-esm/primitives/popover/index.js +17 -0
  361. package/lib-esm/primitives/popover/popover-close.d.ts +8 -0
  362. package/lib-esm/primitives/popover/popover-close.js +23 -0
  363. package/lib-esm/primitives/popover/popover-content-container.d.ts +12 -0
  364. package/lib-esm/primitives/popover/popover-content-container.js +46 -0
  365. package/lib-esm/primitives/popover/popover-footer.d.ts +7 -0
  366. package/lib-esm/primitives/popover/popover-footer.js +30 -0
  367. package/lib-esm/primitives/popover/popover-main-content.d.ts +7 -0
  368. package/lib-esm/primitives/popover/popover-main-content.js +45 -0
  369. package/lib-esm/primitives/popover/popover-overflow-context.d.ts +6 -0
  370. package/lib-esm/primitives/popover/popover-overflow-context.js +8 -0
  371. package/lib-esm/primitives/popover/popover-root.d.ts +10 -0
  372. package/lib-esm/primitives/popover/popover-root.js +20 -0
  373. package/lib-esm/primitives/popover/popover-trigger.d.ts +9 -0
  374. package/lib-esm/primitives/popover/popover-trigger.js +24 -0
  375. package/lib-esm/primitives/popover/popover.module.js +4 -0
  376. package/lib-esm/primitives/select-menu-grid/index.d.ts +12 -0
  377. package/lib-esm/primitives/select-menu-grid/index.js +11 -0
  378. package/lib-esm/primitives/select-menu-grid/select-menu-grid-option.d.ts +343 -0
  379. package/lib-esm/primitives/select-menu-grid/select-menu-grid-option.js +100 -0
  380. package/lib-esm/primitives/select-menu-grid/select-menu-grid-option.module.js +4 -0
  381. package/lib-esm/primitives/select-menu-grid/select-menu-grid.d.ts +5 -0
  382. package/lib-esm/primitives/select-menu-grid/select-menu-grid.js +31 -0
  383. package/lib-esm/primitives/select-menu-grid/select-menu-grid.module.js +4 -0
  384. package/lib-esm/primitives/select-menu-grid/types.d.ts +35 -0
  385. package/lib-esm/primitives/slot.d.ts +5 -0
  386. package/lib-esm/primitives/slot.js +4 -0
  387. package/lib-esm/primitives/supplementary-fonts/get-supplementary-font-faces-config.d.ts +5 -0
  388. package/lib-esm/primitives/supplementary-fonts/get-supplementary-font-faces-config.js +17 -0
  389. package/lib-esm/primitives/supplementary-fonts/index.d.ts +4 -0
  390. package/lib-esm/primitives/supplementary-fonts/supplementary-fonts.d.ts +6 -0
  391. package/lib-esm/primitives/supplementary-fonts/supplementary-fonts.js +12 -0
  392. package/lib-esm/primitives/supplementary-fonts/types.d.ts +2 -0
  393. package/lib-esm/primitives/supplementary-fonts/useSupplementaryFonts.hook.d.ts +2 -0
  394. package/lib-esm/primitives/supplementary-fonts/useSupplementaryFonts.hook.js +36 -0
  395. package/lib-esm/primitives/tabs/index.d.ts +27 -0
  396. package/lib-esm/primitives/tabs/index.js +22 -0
  397. package/lib-esm/primitives/tabs/tab-list.d.ts +4 -0
  398. package/lib-esm/primitives/tabs/tab-list.js +27 -0
  399. package/lib-esm/primitives/tabs/tab-panel.d.ts +4 -0
  400. package/lib-esm/primitives/tabs/tab-panel.js +23 -0
  401. package/lib-esm/primitives/tabs/tab.d.ts +11 -0
  402. package/lib-esm/primitives/tabs/tab.js +58 -0
  403. package/lib-esm/primitives/tabs/tabs.d.ts +6 -0
  404. package/lib-esm/primitives/tabs/tabs.js +15 -0
  405. package/lib-esm/primitives/tabs/tabs.module.js +4 -0
  406. package/lib-esm/primitives/tabs/use-tabs.d.ts +1 -0
  407. package/lib-esm/primitives/tabs/use-tabs.js +7 -0
  408. package/lib-esm/primitives/utility/AreaIndicator.d.ts +7 -0
  409. package/lib-esm/radio-group/index.d.ts +9 -0
  410. package/lib-esm/radio-group/index.js +11 -0
  411. package/lib-esm/radio-group/radio-group.d.ts +4 -0
  412. package/lib-esm/radio-group/radio-group.js +35 -0
  413. package/lib-esm/radio-group/radio-group.module.js +4 -0
  414. package/lib-esm/radio-group/radio-item.d.ts +4 -0
  415. package/lib-esm/radio-group/radio-item.js +50 -0
  416. package/lib-esm/radio-group/types.d.ts +13 -0
  417. package/lib-esm/search-input/index.d.ts +22 -0
  418. package/lib-esm/search-input/index.js +11 -0
  419. package/lib-esm/search-input/search-input-action-button.d.ts +2 -0
  420. package/lib-esm/search-input/search-input-action-button.js +26 -0
  421. package/lib-esm/search-input/search-input.d.ts +16 -0
  422. package/lib-esm/search-input/search-input.js +95 -0
  423. package/lib-esm/search-input/search.module.js +4 -0
  424. package/lib-esm/search-input/types.d.ts +53 -0
  425. package/lib-esm/select/index.d.ts +2 -0
  426. package/lib-esm/select/select.d.ts +68 -0
  427. package/lib-esm/select/select.js +187 -0
  428. package/lib-esm/select/select.module.js +4 -0
  429. package/lib-esm/select/types.d.ts +105 -0
  430. package/lib-esm/side-panel/index.d.ts +2 -0
  431. package/lib-esm/side-panel/scroll-context.d.ts +11 -0
  432. package/lib-esm/side-panel/scroll-context.js +43 -0
  433. package/lib-esm/side-panel/side-panel-close.d.ts +7 -0
  434. package/lib-esm/side-panel/side-panel-close.js +26 -0
  435. package/lib-esm/side-panel/side-panel-content.d.ts +13 -0
  436. package/lib-esm/side-panel/side-panel-content.js +41 -0
  437. package/lib-esm/side-panel/side-panel-footer.d.ts +65 -0
  438. package/lib-esm/side-panel/side-panel-footer.js +62 -0
  439. package/lib-esm/side-panel/side-panel-header.d.ts +7 -0
  440. package/lib-esm/side-panel/side-panel-header.js +62 -0
  441. package/lib-esm/side-panel/side-panel-overlay.d.ts +8 -0
  442. package/lib-esm/side-panel/side-panel-overlay.js +31 -0
  443. package/lib-esm/side-panel/side-panel-scrollable-container.d.ts +8 -0
  444. package/lib-esm/side-panel/side-panel-scrollable-container.js +42 -0
  445. package/lib-esm/side-panel/side-panel.d.ts +70 -0
  446. package/lib-esm/side-panel/side-panel.js +52 -0
  447. package/lib-esm/side-panel/side-panel.module.js +4 -0
  448. package/lib-esm/side-panel/types.d.ts +38 -0
  449. package/lib-esm/side-panel/variant-context.d.ts +6 -0
  450. package/lib-esm/side-panel/variant-context.js +22 -0
  451. package/lib-esm/slider/index.d.ts +2 -0
  452. package/lib-esm/slider/slider-incrementer.d.ts +6 -0
  453. package/lib-esm/slider/slider-incrementer.js +57 -0
  454. package/lib-esm/slider/slider-incrementer.module.js +4 -0
  455. package/lib-esm/slider/slider-range.d.ts +6 -0
  456. package/lib-esm/slider/slider-range.js +65 -0
  457. package/lib-esm/slider/slider-range.module.js +4 -0
  458. package/lib-esm/slider/slider.d.ts +5 -0
  459. package/lib-esm/slider/slider.js +51 -0
  460. package/lib-esm/slider/slider.module.js +4 -0
  461. package/lib-esm/slider/types.d.ts +181 -0
  462. package/lib-esm/status/consts.d.ts +4 -0
  463. package/lib-esm/status/consts.js +25 -0
  464. package/lib-esm/status/index.d.ts +2 -0
  465. package/lib-esm/status/status.d.ts +3 -0
  466. package/lib-esm/status/status.js +82 -0
  467. package/lib-esm/status/status.module.js +4 -0
  468. package/lib-esm/status/types.d.ts +31 -0
  469. package/lib-esm/switch/index.d.ts +9 -0
  470. package/lib-esm/switch/index.js +9 -0
  471. package/lib-esm/switch/switch-item.d.ts +5 -0
  472. package/lib-esm/switch/switch-item.js +71 -0
  473. package/lib-esm/switch/switch-legend.d.ts +4 -0
  474. package/lib-esm/switch/switch-legend.js +11 -0
  475. package/lib-esm/switch/switch.module.js +4 -0
  476. package/lib-esm/switch/types.d.ts +32 -0
  477. package/lib-esm/text/index.d.ts +2 -0
  478. package/lib-esm/text/text.d.ts +4 -0
  479. package/lib-esm/text/text.js +21 -0
  480. package/lib-esm/text/text.module.js +4 -0
  481. package/lib-esm/text/types.d.ts +34 -0
  482. package/lib-esm/text-area/index.d.ts +2 -0
  483. package/lib-esm/text-area/text-area-autosize/text-area-autosize.d.ts +10 -0
  484. package/lib-esm/text-area/text-area-autosize/text-area-autosize.js +322 -0
  485. package/lib-esm/text-area/text-area-autosize/text-area-autosize.module.js +4 -0
  486. package/lib-esm/text-area/text-area-autosize/types.d.ts +21 -0
  487. package/lib-esm/text-area/text-area.d.ts +36 -0
  488. package/lib-esm/text-area/text-area.js +57 -0
  489. package/lib-esm/text-area/text-area.module.js +4 -0
  490. package/lib-esm/text-area/types.d.ts +22 -0
  491. package/lib-esm/text-button/index.d.ts +2 -0
  492. package/lib-esm/text-button/text-button.d.ts +24 -0
  493. package/lib-esm/text-button/text-button.js +54 -0
  494. package/lib-esm/text-button/text-button.module.js +4 -0
  495. package/lib-esm/text-button/types.d.ts +25 -0
  496. package/lib-esm/tooltip/index.d.ts +2 -0
  497. package/lib-esm/tooltip/tooltip.d.ts +16 -0
  498. package/lib-esm/tooltip/tooltip.js +128 -0
  499. package/lib-esm/tooltip/tooltip.module.js +4 -0
  500. package/lib-esm/tooltip/types.d.ts +41 -0
  501. package/lib-esm/trigger-button/index.d.ts +1 -0
  502. package/lib-esm/trigger-button/trigger-button.d.ts +50 -0
  503. package/lib-esm/trigger-button/trigger-button.js +41 -0
  504. package/lib-esm/types/modify.d.ts +1 -0
  505. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-actions.d.ts +4 -0
  506. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-actions.js +132 -0
  507. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-header.d.ts +3 -0
  508. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-header.js +57 -0
  509. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-subtitle.d.ts +4 -0
  510. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-subtitle.js +58 -0
  511. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-thumbnail.d.ts +4 -0
  512. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item-thumbnail.js +30 -0
  513. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item.d.ts +4 -0
  514. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item.js +70 -0
  515. package/lib-esm/util-components/base-grid-list-item/base-grid-list-item.module.js +4 -0
  516. package/lib-esm/util-components/base-grid-list-item/base-grid-list.d.ts +6 -0
  517. package/lib-esm/util-components/base-grid-list-item/base-grid-list.js +62 -0
  518. package/lib-esm/util-components/base-grid-list-item/index.d.ts +41 -0
  519. package/lib-esm/util-components/base-grid-list-item/index.js +42 -0
  520. package/lib-esm/util-components/base-grid-list-item/types.d.ts +32 -0
  521. package/lib-esm/util-components/base-grid-list-item/utils/rac-button.d.ts +12 -0
  522. package/lib-esm/util-components/base-grid-list-item/utils/rac-button.js +34 -0
  523. package/lib-esm/util-components/base-grid-list-item/utils/rac-tooltip.d.ts +7 -0
  524. package/lib-esm/util-components/base-grid-list-item/utils/rac-tooltip.js +30 -0
  525. package/lib-esm/util-components/focus-trap/focus-trap.d.ts +3 -0
  526. package/lib-esm/util-components/focus-trap/index.d.ts +1 -0
  527. package/lib-esm/util-components/focus-trap/types.d.ts +8 -0
  528. package/lib-esm/util-components/interactive-icon/index.d.ts +1 -0
  529. package/lib-esm/util-components/interactive-icon/interactive-icon.d.ts +4 -0
  530. package/lib-esm/util-components/interactive-icon/interactive-icon.js +24 -0
  531. package/lib-esm/util-components/interactive-icon/interactive-icon.module.js +4 -0
  532. package/lib-esm/util-components/interactive-icon/types.d.ts +9 -0
  533. package/lib-esm/util-components/legend/index.d.ts +1 -0
  534. package/lib-esm/util-components/legend/legend.d.ts +4 -0
  535. package/lib-esm/util-components/legend/legend.js +31 -0
  536. package/lib-esm/util-components/legend/legend.module.js +4 -0
  537. package/lib-esm/util-components/legend/types.d.ts +18 -0
  538. package/lib-esm/util-components/list-checkbox/index.d.ts +1 -0
  539. package/lib-esm/util-components/list-checkbox/list-checkbox.d.ts +10 -0
  540. package/lib-esm/util-components/list-checkbox/list-checkbox.js +36 -0
  541. package/lib-esm/util-components/list-checkbox/list-checkbox.module.js +4 -0
  542. package/lib-esm/util-components/menu-item-sections/menu-item-sections.d.ts +19 -0
  543. package/lib-esm/util-components/menu-item-sections/menu-item-sections.js +43 -0
  544. package/lib-esm/util-components/menu-item-sections/menu-item-sections.module.js +4 -0
  545. package/lib-esm/util-components/scrollable-container/scrollable-container.d.ts +30 -0
  546. package/lib-esm/util-components/scrollable-container/scrollable-container.js +65 -0
  547. package/lib-esm/util-components/scrollable-container/scrollable-container.module.js +4 -0
  548. package/lib-esm/util-components/search-term-string/index.d.ts +1 -0
  549. package/lib-esm/util-components/search-term-string/search-term-string.d.ts +5 -0
  550. package/lib-esm/util-components/search-term-string/search-term-string.js +41 -0
  551. package/lib-esm/util-components/search-term-string/search-term-string.module.js +4 -0
  552. package/lib-esm/util-components/search-term-string/types.d.ts +4 -0
  553. package/lib-esm/util-components/text-with-info-badge/index.d.ts +1 -0
  554. package/lib-esm/util-components/text-with-info-badge/text-with-info-badge.d.ts +4 -0
  555. package/lib-esm/util-components/text-with-info-badge/text-with-info-badge.js +36 -0
  556. package/lib-esm/util-components/text-with-info-badge/text-with-info-badge.module.js +4 -0
  557. package/lib-esm/util-components/text-with-info-badge/types.d.ts +15 -0
  558. package/lib-esm/utils/DocsStoryHeightDecorator.d.ts +14 -0
  559. package/lib-esm/utils/VariantsAggregator.d.ts +15 -0
  560. package/lib-esm/utils/a11yExceptionsConfig.d.ts +65 -0
  561. package/lib-esm/utils/commonTypes.d.ts +2 -0
  562. package/lib-esm/utils/debounce.d.ts +4 -0
  563. package/lib-esm/utils/debounce.js +13 -0
  564. package/lib-esm/utils/getButtonOptions.d.ts +7 -0
  565. package/lib-esm/utils/getButtonOptions.js +15 -0
  566. package/lib-esm/utils/isDefined.d.ts +1 -0
  567. package/lib-esm/utils/isDefined.js +8 -0
  568. package/lib-esm/utils/keyboardUtils.d.ts +5 -0
  569. package/lib-esm/utils/keyboardUtils.js +14 -0
  570. package/lib-esm/utils/ownerWindow.d.ts +1 -0
  571. package/lib-esm/utils/ownerWindow.js +9 -0
  572. package/lib-esm/utils/processString.d.ts +13 -0
  573. package/lib-esm/utils/processString.js +27 -0
  574. package/lib-esm/utils/switchCase.d.ts +1 -0
  575. package/lib-esm/utils/switchCase.js +5 -0
  576. package/lib-esm/utils/testStories.utils.d.ts +99 -0
  577. package/lib-esm/utils/unstableStorybookMessage.utils.d.ts +1 -0
  578. package/lib-esm/utils/use-debounce.d.ts +1 -0
  579. package/lib-esm/utils/use-debounce.js +14 -0
  580. package/lib-esm/utils/useBreakpoint.d.ts +16 -0
  581. package/lib-esm/utils/useBreakpoint.js +42 -0
  582. package/lib-esm/utils/useEnhancedEffect.d.ts +7 -0
  583. package/lib-esm/utils/useEnhancedEffect.js +10 -0
  584. package/lib-esm/utils/useForkRef.d.ts +12 -0
  585. package/lib-esm/utils/useForkRef.js +39 -0
  586. package/lib-esm/utils/useFullTextTooltip.d.ts +15 -0
  587. package/lib-esm/utils/useFullTextTooltip.js +28 -0
  588. package/lib-esm/utils/useIsTriggerInteractive.d.ts +5 -0
  589. package/lib-esm/utils/useIsTriggerInteractive.js +21 -0
  590. package/lib-esm/utils/useMobile.d.ts +1 -0
  591. package/lib-esm/utils/useMobile.js +14 -0
  592. package/lib-esm/utils/useNamedSlots.hook.d.ts +2 -0
  593. package/lib-esm/utils/useNamedSlots.hook.js +10 -0
  594. package/lib-esm/utils/useScreenSize.d.ts +4 -0
  595. package/lib-esm/utils/useScreenSize.js +23 -0
  596. package/lib-esm/utils/useSubMenuFocus.hook.d.ts +2 -0
  597. package/lib-esm/utils/useSubMenuFocus.hook.js +39 -0
  598. package/lib-esm/utils/useUniqueId.d.ts +2 -0
  599. package/lib-esm/utils/useUniqueId.js +8 -0
  600. package/lib-esm/utils/waitForAnimation.d.ts +13 -0
  601. package/package.json +83 -0
@@ -0,0 +1,54 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { Button } from '@ariakit/react';
3
+ import clsx from 'clsx';
4
+ import { forwardRef, createElement } from 'react';
5
+ import { LoadingIndicator } from '../loading-indicator/loading-indicator.js';
6
+ import { getButtonOptions } from '../utils/getButtonOptions.js';
7
+ import styles from './text-button.module.js';
8
+
9
+ const TextButton = /*#__PURE__*/forwardRef((props, ref) => {
10
+ const {
11
+ children,
12
+ loading,
13
+ loadingAriaLabel,
14
+ icon,
15
+ inheritFont,
16
+ className,
17
+ ...rest
18
+ } = getButtonOptions(props);
19
+ const iconsSize = `0.875${inheritFont ? 'em' : 'rem'}`;
20
+ return jsxs(Button, {
21
+ ...rest,
22
+ ref: ref,
23
+ className: clsx(styles.textButton, {
24
+ [styles.visuallyHidden]: loading,
25
+ [styles.isIconButton]: Boolean(icon),
26
+ [styles.isFontInherited]: inheritFont
27
+ }, className),
28
+ children: [jsx("span", {
29
+ className: clsx({
30
+ [styles.hideTextContent]: loading
31
+ }),
32
+ children: children
33
+ }), icon ? jsx("span", {
34
+ className: clsx(styles.icon, {
35
+ [styles.loading]: loading
36
+ }),
37
+ children: /*#__PURE__*/createElement(icon, {
38
+ width: iconsSize,
39
+ height: iconsSize,
40
+ role: 'presentation',
41
+ color: loading ? 'transparent' : 'currentColor'
42
+ })
43
+ }) : null, loading && loadingAriaLabel ? jsx(LoadingIndicator, {
44
+ "aria-label": loadingAriaLabel,
45
+ className: clsx({
46
+ [styles.scaleLoader]: inheritFont
47
+ }),
48
+ variant: "default"
49
+ }) : null]
50
+ });
51
+ });
52
+ TextButton.displayName = 'TextButton';
53
+
54
+ export { TextButton, TextButton as default };
@@ -0,0 +1,4 @@
1
+ import '../index.css';
2
+ var styles = {"textButton":"text-button-module_textButton__blsjh","isFontInherited":"text-button-module_isFontInherited__u4x-A","isIconButton":"text-button-module_isIconButton__dVwfW","scaleLoader":"text-button-module_scaleLoader__0X9D9","icon":"text-button-module_icon__Q2v9Y","hideTextContent":"text-button-module_hideTextContent__Z1-NE","visuallyHidden":"text-button-module_visuallyHidden__4MN5j"};
3
+
4
+ export { styles as default };
@@ -0,0 +1,25 @@
1
+ import { type ButtonProps as AriakitButtonProps } from '@ariakit/react';
2
+ import { type FunctionComponent, type PropsWithChildren, type SVGProps } from 'react';
3
+ import { type RequireAllOrNone } from 'type-fest';
4
+ type Loading = {
5
+ /** Whether the button is loading. */
6
+ loading?: boolean;
7
+ /** The aria-label for the loading indicator. */
8
+ loadingAriaLabel?: string;
9
+ };
10
+ export interface TextButtonBase extends AriakitButtonProps {
11
+ /** Text content to display in the button. */
12
+ children: string | string[];
13
+ /** Icon that will be placed after the children text. */
14
+ icon?: FunctionComponent<PropsWithChildren<SVGProps<SVGSVGElement>>>;
15
+ /**
16
+ * Controls whether text inside the button inherits font properties from parent or uses default style.
17
+ *
18
+ * Useful when Button is within the block of the text, to apply the same style for whole content.
19
+ *
20
+ * When property is falsy, button uses default style.
21
+ * */
22
+ inheritFont?: boolean;
23
+ }
24
+ export type TextButtonProps = TextButtonBase & RequireAllOrNone<Loading, keyof Loading>;
25
+ export {};
@@ -0,0 +1,2 @@
1
+ export { Tooltip, TooltipProvider } from './tooltip';
2
+ export { type TooltipProps, type TooltipProviderProps } from './types';
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { type TooltipProps, type TooltipProviderProps, type TooltipTriggerProps } from './types';
3
+ /**
4
+ * A component used to wrap any other component, giving it a Tooltip on hover.
5
+ *
6
+ * * [Radix-UI link](https://www.radix-ui.com/docs/primitives/components/tooltip)
7
+ *
8
+ * **IMPORTANT (1)**: Must be placed inside a single <b>TooltipProvider</b> component provided by the app, see [issue on github](https://github.com/radix-ui/primitives/issues/1712) and [radix docs](https://www.radix-ui.com/docs/primitives/components/tooltip#provider).
9
+ *
10
+ * **IMPORTANT (2)**: Must wrap interactive component/element (such as: HTMLInputElement, HTMLAnchorElement, HTMLTextAreaElement, etc. [list of focusable elements](https://allyjs.io/data-tables/focusable.html))
11
+ *
12
+ */
13
+ export declare const Tooltip: (props: TooltipProps) => JSX.Element;
14
+ export declare const ContainerContext: React.Context<HTMLElement | null | undefined>;
15
+ export declare const TooltipProvider: (props: TooltipProviderProps) => JSX.Element;
16
+ export declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,128 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import * as RadixTooltip from '@radix-ui/react-tooltip';
3
+ import clsx from 'clsx';
4
+ import React__default, { useContext } from 'react';
5
+ import { useForkRef } from '../utils/useForkRef.js';
6
+ import { useIsTriggerInteractive } from '../utils/useIsTriggerInteractive.js';
7
+ import styles from './tooltip.module.js';
8
+
9
+ /**
10
+ * A component used to wrap any other component, giving it a Tooltip on hover.
11
+ *
12
+ * * [Radix-UI link](https://www.radix-ui.com/docs/primitives/components/tooltip)
13
+ *
14
+ * **IMPORTANT (1)**: Must be placed inside a single <b>TooltipProvider</b> component provided by the app, see [issue on github](https://github.com/radix-ui/primitives/issues/1712) and [radix docs](https://www.radix-ui.com/docs/primitives/components/tooltip#provider).
15
+ *
16
+ * **IMPORTANT (2)**: Must wrap interactive component/element (such as: HTMLInputElement, HTMLAnchorElement, HTMLTextAreaElement, etc. [list of focusable elements](https://allyjs.io/data-tables/focusable.html))
17
+ *
18
+ */
19
+ const Tooltip = props => {
20
+ const {
21
+ children,
22
+ content,
23
+ onOpenChange,
24
+ open,
25
+ defaultOpen,
26
+ forceMount,
27
+ ...contentProps
28
+ } = props;
29
+ const container = useContext(ContainerContext);
30
+ return jsxs(RadixTooltip.Root, {
31
+ defaultOpen: defaultOpen,
32
+ onOpenChange: onOpenChange,
33
+ open: open,
34
+ children: [jsx(TooltipTrigger, {
35
+ open: open,
36
+ children: children
37
+ }), jsx(RadixTooltip.Portal, {
38
+ container: container,
39
+ forceMount: forceMount,
40
+ children: jsx(Content, {
41
+ ...contentProps,
42
+ children: content
43
+ })
44
+ })]
45
+ });
46
+ };
47
+ const ContainerContext = /*#__PURE__*/React__default.createContext(null);
48
+ const TooltipProvider = props => {
49
+ const {
50
+ children,
51
+ container,
52
+ disableHoverableContent
53
+ } = props;
54
+ return jsx(ContainerContext.Provider, {
55
+ value: container,
56
+ children: jsx(RadixTooltip.Provider, {
57
+ delayDuration: 300,
58
+ disableHoverableContent: disableHoverableContent,
59
+ children: children
60
+ })
61
+ });
62
+ };
63
+ const Trigger = /*#__PURE__*/React__default.forwardRef(function Trigger(props, ref) {
64
+ return jsx(RadixTooltip.Trigger, {
65
+ ref: ref,
66
+ asChild: true,
67
+ children: props.children
68
+ });
69
+ });
70
+ /**
71
+ * Trigger component with interactivity check.
72
+ * Encapsulation in separate component is a workaround which allows to render hooks
73
+ * responsible for check only when it's specifically needed, without breaking rule of hooks
74
+ * by calling them conditionally.
75
+ */
76
+ const TriggerWithInteractivityCheck = /*#__PURE__*/React__default.forwardRef(function TriggerWithInteractivityCheck(props, ref) {
77
+ const triggerRef = useIsTriggerInteractive();
78
+ return jsx(Trigger, {
79
+ ref: useForkRef(triggerRef, ref),
80
+ children: props.children
81
+ });
82
+ });
83
+ const TooltipTrigger = /*#__PURE__*/React__default.forwardRef(({
84
+ children,
85
+ open
86
+ }, ref) => {
87
+ // in dev environment, if Tooltip open state is not explicitly controlled by user, check if it's used with interactive element
88
+ if (process.env.NODE_ENV !== 'production' && open === undefined) {
89
+ return jsx(TriggerWithInteractivityCheck, {
90
+ ref: ref,
91
+ children: children
92
+ });
93
+ }
94
+ return jsx(Trigger, {
95
+ ref: ref,
96
+ children: children
97
+ });
98
+ });
99
+ const Arrow = /*#__PURE__*/React__default.forwardRef(function Arrow({
100
+ variant
101
+ }, ref) {
102
+ return jsx("div", {
103
+ ref: ref,
104
+ className: clsx(styles.arrow, styles[variant])
105
+ });
106
+ });
107
+ const Content = /*#__PURE__*/React__default.forwardRef(function Content(props, ref) {
108
+ const {
109
+ children,
110
+ variant = 'standard',
111
+ className,
112
+ ...rest
113
+ } = props;
114
+ return jsxs(RadixTooltip.Content, {
115
+ ...rest,
116
+ ref: ref,
117
+ className: clsx(styles.content, styles[variant], className),
118
+ sideOffset: 3,
119
+ children: [children, jsx(RadixTooltip.Arrow, {
120
+ asChild: true,
121
+ children: jsx(Arrow, {
122
+ variant: variant
123
+ })
124
+ })]
125
+ });
126
+ });
127
+
128
+ export { ContainerContext, Tooltip, TooltipProvider, TooltipTrigger };
@@ -0,0 +1,4 @@
1
+ import '../index.css';
2
+ var styles = {"content":"tooltip-module_content__P0LlT","standard":"tooltip-module_standard__JMlLn","error":"tooltip-module_error__uLcZa","arrow":"tooltip-module_arrow__zubRP"};
3
+
4
+ export { styles as default };
@@ -0,0 +1,41 @@
1
+ import type * as RadixTooltip from '@radix-ui/react-tooltip';
2
+ import type React from 'react';
3
+ export type TooltipVariant = 'standard' | 'error';
4
+ export interface TooltipContentProps extends RadixTooltip.TooltipContentProps {
5
+ variant?: TooltipVariant;
6
+ }
7
+ export interface PropsOnlyChildren {
8
+ children?: React.ReactNode;
9
+ }
10
+ export interface TooltipProps extends Omit<React.ComponentProps<typeof RadixTooltip.TooltipContent>, 'content'> {
11
+ /** The anchor for the tooltip. */
12
+ children: React.ReactNode;
13
+ /** The content of the tooltip. */
14
+ content: React.ReactNode;
15
+ /** The visual style of the button. */
16
+ variant?: TooltipVariant;
17
+ /** Event handler called when the open state of the tooltip changes. */
18
+ onOpenChange?: RadixTooltip.TooltipProps['onOpenChange'];
19
+ /** The controlled open state of the tooltip. Must be used in conjunction with onOpenChange. */
20
+ open?: RadixTooltip.TooltipProps['open'];
21
+ /** The open state of the tooltip when it is initially rendered. Use when you do not need to control its open state. */
22
+ defaultOpen?: RadixTooltip.TooltipProps['defaultOpen'];
23
+ /** Used to force mounting when more control is needed. */
24
+ forceMount?: RadixTooltip.TooltipPortalProps['forceMount'];
25
+ }
26
+ export interface TooltipProviderProps {
27
+ /** The rest of the application */
28
+ children: React.ReactNode;
29
+ /** The container on which the tooltip should be mounted. */
30
+ container?: RadixTooltip.TooltipPortalProps['container'];
31
+ /** Prevents tooltip content from remaining open when hovering. Disabling this has accessibility consequences. */
32
+ disableHoverableContent?: boolean;
33
+ }
34
+ export interface ArrowProps {
35
+ variant: TooltipVariant;
36
+ }
37
+ export interface TooltipTriggerProps {
38
+ children?: React.ReactNode;
39
+ /** The controlled open state of the tooltip. */
40
+ open?: TooltipProps['open'];
41
+ }
@@ -0,0 +1 @@
1
+ export { TriggerButton, type TriggerButtonProps } from './trigger-button';
@@ -0,0 +1,50 @@
1
+ /// <reference types="react" />
2
+ import { type BaseButtonIconProps, type BaseButtonProps } from '../primitives/base-button';
3
+ export type TriggerButtonProps = BaseButtonProps & {
4
+ /** Trigger button label */
5
+ label?: string;
6
+ /** Icon to show up at the start of the trigger button */
7
+ startIcon?: BaseButtonIconProps['icon'];
8
+ /** Direction of caret icon */
9
+ caretDirection: 'up' | 'down';
10
+ };
11
+ /**
12
+ * The TriggerButton is a stylized button that has an optional start icon, optional label, and a caret as the end icon.
13
+ * Caret direction can be changed from up to down. This component will most likely be used to trigger a dropdown.
14
+ */
15
+ export declare const TriggerButton: import("react").ForwardRefExoticComponent<(Omit<import("../primitives/base-button").BaseButtonInterface & Required<Pick<{
16
+ loading?: boolean | undefined;
17
+ loadingAriaLabel?: string | undefined;
18
+ }, keyof {
19
+ loading?: boolean | undefined;
20
+ loadingAriaLabel?: string | undefined;
21
+ }>> & Omit<{
22
+ loading?: boolean | undefined;
23
+ loadingAriaLabel?: string | undefined;
24
+ }, keyof {
25
+ loading?: boolean | undefined;
26
+ loadingAriaLabel?: string | undefined;
27
+ }> & {
28
+ /** Trigger button label */
29
+ label?: string | undefined;
30
+ /** Icon to show up at the start of the trigger button */
31
+ startIcon?: import("react").FunctionComponent<import("react").PropsWithChildren<import("react").SVGProps<SVGSVGElement>>> | undefined;
32
+ /** Direction of caret icon */
33
+ caretDirection: 'up' | 'down';
34
+ }, "ref"> | Omit<import("../primitives/base-button").BaseButtonInterface & Partial<Record<keyof {
35
+ loading?: boolean | undefined;
36
+ loadingAriaLabel?: string | undefined;
37
+ }, never>> & Omit<{
38
+ loading?: boolean | undefined;
39
+ loadingAriaLabel?: string | undefined;
40
+ }, keyof {
41
+ loading?: boolean | undefined;
42
+ loadingAriaLabel?: string | undefined;
43
+ }> & {
44
+ /** Trigger button label */
45
+ label?: string | undefined;
46
+ /** Icon to show up at the start of the trigger button */
47
+ startIcon?: import("react").FunctionComponent<import("react").PropsWithChildren<import("react").SVGProps<SVGSVGElement>>> | undefined;
48
+ /** Direction of caret icon */
49
+ caretDirection: 'up' | 'down';
50
+ }, "ref">) & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,41 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { CaretUp, CaretDown } from '@box/blueprint-web-assets/icons/Fill';
3
+ import { forwardRef } from 'react';
4
+ import { BaseButton } from '../primitives/base-button/index.js';
5
+
6
+ const buttonSizeToStartIconSizeMap = {
7
+ small: 16,
8
+ large: 24
9
+ };
10
+ /**
11
+ * The TriggerButton is a stylized button that has an optional start icon, optional label, and a caret as the end icon.
12
+ * Caret direction can be changed from up to down. This component will most likely be used to trigger a dropdown.
13
+ */
14
+ const TriggerButton = /*#__PURE__*/forwardRef((props, forwardedRef) => {
15
+ const {
16
+ caretDirection,
17
+ label,
18
+ startIcon,
19
+ size = 'small',
20
+ ...rest
21
+ } = props;
22
+ const startIconSize = buttonSizeToStartIconSizeMap[size];
23
+ return jsxs(BaseButton, {
24
+ ref: forwardedRef,
25
+ size: size,
26
+ ...rest,
27
+ children: [startIcon && jsx(BaseButton.Icon, {
28
+ icon: startIcon,
29
+ iconProps: {
30
+ height: startIconSize,
31
+ width: startIconSize
32
+ }
33
+ }), label && jsx(BaseButton.Label, {
34
+ children: label
35
+ }), jsx(BaseButton.Icon, {
36
+ icon: caretDirection === 'up' ? CaretUp : CaretDown
37
+ })]
38
+ });
39
+ });
40
+
41
+ export { TriggerButton };
@@ -0,0 +1 @@
1
+ export type Modify<T, R> = Omit<T, keyof R> & R;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { type BaseGridListActionsProps } from './types';
3
+ export declare const BaseGridListActionIconButton: import("react").ForwardRefExoticComponent<Omit<import("../../primitives/icon-button").IconButtonProps, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
4
+ export declare const BaseGridListActions: import("react").ForwardRefExoticComponent<Omit<BaseGridListActionsProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,132 @@
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import { Pin } from '@box/blueprint-web-assets/icons/Fill';
3
+ import clsx from 'clsx';
4
+ import { forwardRef, useCallback, useRef } from 'react';
5
+ import { mergeProps } from 'react-aria';
6
+ import { TooltipTrigger } from 'react-aria-components';
7
+ import { IconButton } from '../../primitives/icon-button/icon-button.js';
8
+ import { Status } from '../../status/status.js';
9
+ import { useForkRef } from '../../utils/useForkRef.js';
10
+ import { ListCheckbox } from '../list-checkbox/list-checkbox.js';
11
+ import { useBaseGridListContext } from './base-grid-list.js';
12
+ import { useBaseGridListItemContext } from './base-grid-list-item.js';
13
+ import styles from './base-grid-list-item.module.js';
14
+ import { RACButton } from './utils/rac-button.js';
15
+ import { RACTooltip } from './utils/rac-tooltip.js';
16
+
17
+ const LargeListActions = ({
18
+ children,
19
+ selectionEnabled
20
+ }) => {
21
+ return jsxs(Fragment, {
22
+ children: [jsx("div", {
23
+ className: styles.fade
24
+ }), jsxs("div", {
25
+ className: styles.actionsCheckboxWrapper,
26
+ children: [jsx("div", {
27
+ className: styles.inner,
28
+ children: children
29
+ }), selectionEnabled && jsx(ListCheckbox, {
30
+ className: styles.selection
31
+ })]
32
+ })]
33
+ });
34
+ };
35
+ const GridListActions = ({
36
+ children,
37
+ selectionEnabled
38
+ }) => {
39
+ return jsxs(Fragment, {
40
+ children: [selectionEnabled && jsx(ListCheckbox, {
41
+ className: styles.selection
42
+ }), jsx("div", {
43
+ className: styles.inner,
44
+ children: children
45
+ })]
46
+ });
47
+ };
48
+ const BaseGridListActionIconButton = /*#__PURE__*/forwardRef(function BaseGridListActionIconButton(props, forwardedRef) {
49
+ // DOM props are e.g handlers passed from DropdownTrigger
50
+ const {
51
+ onClick,
52
+ ...domProps
53
+ } = props;
54
+ const render = useCallback(ariakitProps => {
55
+ const {
56
+ onKeyUp,
57
+ onKeyDown,
58
+ onClick: _onClick,
59
+ ...ariakitRest
60
+ } = ariakitProps;
61
+ const finalProps = mergeProps(ariakitRest, {
62
+ onPress: onClick
63
+ });
64
+ return jsxs(TooltipTrigger, {
65
+ closeDelay: 0,
66
+ delay: 300,
67
+ children: [jsx(RACButton, {
68
+ ...finalProps,
69
+ // Handle opening of potential dropdown. This is passed by DropdownTrigger
70
+ onKeyDown: domProps.onKeyDown,
71
+ onPointerDown: domProps.onPointerDown
72
+ }), jsx(RACTooltip, {
73
+ children: ariakitProps['aria-label']
74
+ })]
75
+ });
76
+ }, [domProps.onKeyDown, domProps.onPointerDown, onClick]);
77
+ return jsx(IconButton, {
78
+ ...props,
79
+ ref: forwardedRef,
80
+ render: render,
81
+ size: "small"
82
+ });
83
+ });
84
+ const BaseGridListActions = /*#__PURE__*/forwardRef(function BaseGridListActions(props, forwardedRef) {
85
+ const {
86
+ layout,
87
+ selectionMode
88
+ } = useBaseGridListContext();
89
+ const {
90
+ children,
91
+ className,
92
+ ...rest
93
+ } = props;
94
+ const {
95
+ loading,
96
+ pinned,
97
+ pinAriaLabel,
98
+ setIsItemInteracted
99
+ } = useBaseGridListItemContext();
100
+ const divRef = useRef(null);
101
+ const forkRef = useForkRef(divRef, forwardedRef);
102
+ if (loading) {
103
+ return null;
104
+ }
105
+ const isList = layout === 'list';
106
+ const isSelectionEnabled = selectionMode === 'multiple';
107
+ const isRenderPropUsed = typeof children === 'function';
108
+ return jsxs(Fragment, {
109
+ children: [jsx("div", {
110
+ ...rest,
111
+ ref: forkRef,
112
+ className: clsx(styles.actions, className),
113
+ children: isList ? jsx(LargeListActions, {
114
+ selectionEnabled: isSelectionEnabled,
115
+ children: isRenderPropUsed ? children(setIsItemInteracted) : children
116
+ }) : jsx(GridListActions, {
117
+ selectionEnabled: isSelectionEnabled,
118
+ children: isRenderPropUsed ? children(setIsItemInteracted) : children
119
+ })
120
+ }), pinned && jsx(Status, {
121
+ "aria-label": pinAriaLabel,
122
+ className: styles.statusPin,
123
+ colorIndex: 0,
124
+ hideText: true,
125
+ icon: Pin,
126
+ iconPosition: "left",
127
+ text: ""
128
+ })]
129
+ });
130
+ });
131
+
132
+ export { BaseGridListActionIconButton, BaseGridListActions };
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { type BaseGridListHeaderProps } from './types';
3
+ export declare const BaseGridListHeader: import("react").ForwardRefExoticComponent<Omit<BaseGridListHeaderProps, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,57 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import clsx from 'clsx';
3
+ import { forwardRef, useRef, Fragment } from 'react';
4
+ import { Ghost } from '../../ghost/ghost.js';
5
+ import { useForkRef } from '../../utils/useForkRef.js';
6
+ import { useFullTextTooltip } from '../../utils/useFullTextTooltip.js';
7
+ import { useBaseGridListContext } from './base-grid-list.js';
8
+ import { useBaseGridListItemContext } from './base-grid-list-item.js';
9
+ import styles from './base-grid-list-item.module.js';
10
+
11
+ const BaseGridListHeader = /*#__PURE__*/forwardRef(function BaseGridListHeader(props, forwardedRef) {
12
+ const {
13
+ children,
14
+ className,
15
+ textValue,
16
+ ...rest
17
+ } = props;
18
+ const ref = useRef(null);
19
+ const {
20
+ Wrapper,
21
+ wrapperProps
22
+ } = useFullTextTooltip({
23
+ ref,
24
+ children,
25
+ textValue
26
+ });
27
+ const {
28
+ loading
29
+ } = useBaseGridListItemContext();
30
+ const {
31
+ layout
32
+ } = useBaseGridListContext();
33
+ const isLargeItem = layout === 'list';
34
+ const isSmallListItem = layout === 'small-list';
35
+ const LoadingWrapper = loading ? Fragment : Wrapper;
36
+ return (
37
+ // @ts-expect-error Fix this type error
38
+ jsx(LoadingWrapper, {
39
+ ...wrapperProps,
40
+ children: jsx("span", {
41
+ ...rest,
42
+ ref: useForkRef(ref, forwardedRef),
43
+ className: clsx(styles.header, {
44
+ [styles.loading]: loading
45
+ }, className),
46
+ children: loading ? jsx(Ghost, {
47
+ borderRadius: isSmallListItem ? '2rem' : '0rem',
48
+ height: isSmallListItem ? '0.75rem' : '1.25rem',
49
+ variant: "rectangle",
50
+ width: isLargeItem ? '80%' : '100%'
51
+ }) : children
52
+ })
53
+ })
54
+ );
55
+ });
56
+
57
+ export { BaseGridListHeader };
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const BaseGridListSubtitle: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
3
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
4
+ }, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,58 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import clsx from 'clsx';
3
+ import { forwardRef, useRef, Fragment } from 'react';
4
+ import { Ghost } from '../../ghost/ghost.js';
5
+ import { useForkRef } from '../../utils/useForkRef.js';
6
+ import { useFullTextTooltip } from '../../utils/useFullTextTooltip.js';
7
+ import { useBaseGridListContext } from './base-grid-list.js';
8
+ import { useBaseGridListItemContext } from './base-grid-list-item.js';
9
+ import styles from './base-grid-list-item.module.js';
10
+
11
+ const BaseGridListSubtitle = /*#__PURE__*/forwardRef(function BaseGridListSubtitle(props, forwardedRef) {
12
+ const {
13
+ children,
14
+ className,
15
+ ...rest
16
+ } = props;
17
+ const ref = useRef(null);
18
+ const {
19
+ Wrapper,
20
+ wrapperProps
21
+ } = useFullTextTooltip({
22
+ ref,
23
+ children
24
+ });
25
+ const {
26
+ loading
27
+ } = useBaseGridListItemContext();
28
+ const {
29
+ layout
30
+ } = useBaseGridListContext();
31
+ const LoadingWrapper = loading ? Fragment : Wrapper;
32
+ const isGridItem = layout === 'grid';
33
+ const isSmallListItem = layout === 'small-list';
34
+ const forkRef = useForkRef(ref, forwardedRef);
35
+ if (isSmallListItem && loading) {
36
+ // no loading state for small list item subtitle
37
+ return null;
38
+ }
39
+ return (
40
+ // @ts-expect-error Fix this type error
41
+ jsx(LoadingWrapper, {
42
+ ...wrapperProps,
43
+ children: jsx("span", {
44
+ ...rest,
45
+ ref: forkRef,
46
+ className: clsx(styles.subtitle, {
47
+ [styles.loading]: loading
48
+ }, className),
49
+ children: loading ? jsx(Ghost, {
50
+ variant: "rectangle",
51
+ width: isGridItem ? '80%' : '95%'
52
+ }) : children
53
+ })
54
+ })
55
+ );
56
+ });
57
+
58
+ export { BaseGridListSubtitle };
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const BaseGridListThumbnail: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;