@flamingo-stack/openframe-frontend-core 0.0.213 → 0.0.214-snapshot.20260528192313

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 (746) hide show
  1. package/dist/{chunk-35XIT2CF.cjs → chunk-2G3NXF6J.cjs} +17 -17
  2. package/dist/{chunk-35XIT2CF.cjs.map → chunk-2G3NXF6J.cjs.map} +1 -1
  3. package/dist/{chunk-IK2X5YJU.js → chunk-7PCP7YQR.js} +2 -2
  4. package/dist/{chunk-ZDF6F7ED.cjs → chunk-D4MNFY67.cjs} +4 -3
  5. package/dist/chunk-D4MNFY67.cjs.map +1 -0
  6. package/dist/{chunk-OTKJASSX.cjs → chunk-NGFP4RVL.cjs} +24 -24
  7. package/dist/{chunk-OTKJASSX.cjs.map → chunk-NGFP4RVL.cjs.map} +1 -1
  8. package/dist/{chunk-3JWIJJ44.js → chunk-R6MLPU4A.js} +2 -2
  9. package/dist/{chunk-ZTJVRSN5.js → chunk-WQZP3JIZ.js} +4 -3
  10. package/dist/chunk-WQZP3JIZ.js.map +1 -0
  11. package/dist/components/chat/index.cjs +2 -2
  12. package/dist/components/chat/index.js +1 -1
  13. package/dist/components/contact/index.cjs +3 -3
  14. package/dist/components/contact/index.js +2 -2
  15. package/dist/components/features/index.cjs +2 -2
  16. package/dist/components/features/index.js +1 -1
  17. package/dist/components/index.cjs +49 -49
  18. package/dist/components/index.js +2 -2
  19. package/dist/components/navigation/index.cjs +2 -2
  20. package/dist/components/navigation/index.js +1 -1
  21. package/dist/components/tickets/index.cjs +61 -61
  22. package/dist/components/tickets/index.js +3 -3
  23. package/dist/components/ui/index.cjs +2 -2
  24. package/dist/components/ui/index.js +1 -1
  25. package/dist/index.cjs +2 -2
  26. package/dist/index.js +1 -1
  27. package/package.json +1 -1
  28. package/src/.index.md +36 -34
  29. package/src/components/.alert-dialog.md +27 -23
  30. package/src/components/.announcement-bar.md +26 -21
  31. package/src/components/.breadcrumb.md +19 -15
  32. package/src/components/.calendar.md +24 -19
  33. package/src/components/.categories-cart.md +29 -24
  34. package/src/components/.checkbox.md +23 -25
  35. package/src/components/.chevron-button.md +37 -32
  36. package/src/components/.comment-card.md +32 -62
  37. package/src/components/.dialog.md +26 -26
  38. package/src/components/.dynamic-skeleton.md +54 -57
  39. package/src/components/.empty-state.md +42 -51
  40. package/src/components/.faq-accordion.md +27 -21
  41. package/src/components/.filter-chip.md +41 -24
  42. package/src/components/.flamingo-logo.md +20 -23
  43. package/src/components/.footer-waitlist-button.md +29 -22
  44. package/src/components/.footer.md +32 -32
  45. package/src/components/.icons-block.md +27 -17
  46. package/src/components/.image-cropper.md +41 -32
  47. package/src/components/.index.md +33 -39
  48. package/src/components/.input.md +31 -35
  49. package/src/components/.logs-list.md +31 -20
  50. package/src/components/.media-carousel.md +35 -36
  51. package/src/components/.open-source-features.md +33 -16
  52. package/src/components/.pagination.md +52 -51
  53. package/src/components/.provider-button.md +21 -23
  54. package/src/components/.select.md +31 -20
  55. package/src/components/.sidebar.md +34 -24
  56. package/src/components/.smooth-accordion.md +29 -24
  57. package/src/components/.social-icon-row.md +36 -32
  58. package/src/components/.textarea.md +25 -31
  59. package/src/components/.tool-icon.md +24 -26
  60. package/src/components/.unified-filter-logic.md +37 -30
  61. package/src/components/.unified-pagination.md +23 -22
  62. package/src/components/.user-summary-stub.md +38 -22
  63. package/src/components/.vendor-display-button.md +25 -25
  64. package/src/components/.vendor-icon.md +33 -25
  65. package/src/components/.why-it-matters.md +28 -25
  66. package/src/components/chat/.approval-batch-message.md +51 -0
  67. package/src/components/chat/.approval-request-message.md +35 -34
  68. package/src/components/chat/.chat-attachment-bar.md +64 -0
  69. package/src/components/chat/.chat-container.md +36 -18
  70. package/src/components/chat/.chat-input.md +37 -20
  71. package/src/components/chat/.chat-message-enhanced.md +30 -49
  72. package/src/components/chat/.chat-message-list.md +45 -32
  73. package/src/components/chat/.chat-message-skeleton.md +26 -22
  74. package/src/components/chat/.chat-panel-context.md +52 -0
  75. package/src/components/chat/.chat-ref.types.md +42 -0
  76. package/src/components/chat/.chat-sidebar-skeleton.md +34 -25
  77. package/src/components/chat/.chat-sidebar.md +31 -26
  78. package/src/components/chat/.chat-ticket-list.md +39 -0
  79. package/src/components/chat/.context-compaction-display.md +36 -0
  80. package/src/components/chat/.cycling-phrase.md +52 -0
  81. package/src/components/chat/.embeddable-chat.md +48 -0
  82. package/src/components/chat/.expand-chevron.md +24 -0
  83. package/src/components/chat/.index.md +31 -35
  84. package/src/components/chat/.mingo-onboarding-card-skeleton.md +44 -0
  85. package/src/components/chat/.mingo-onboarding-card.md +62 -0
  86. package/src/components/chat/.model-display.md +32 -30
  87. package/src/components/chat/.nav-link-anchor-via-runtime.md +40 -0
  88. package/src/components/chat/.remark-card-links.md +38 -0
  89. package/src/components/chat/.slash-command-suggestions.md +47 -0
  90. package/src/components/chat/.source-action-button.md +48 -0
  91. package/src/components/chat/.thinking-display.md +42 -0
  92. package/src/components/chat/.tool-call-blocks.md +45 -0
  93. package/src/components/chat/.tool-execution-display.md +44 -36
  94. package/src/components/chat/chat-container.tsx +1 -1
  95. package/src/components/chat/entity-cards/.admin-content-card.md +43 -0
  96. package/src/components/chat/entity-cards/.block-card.md +47 -0
  97. package/src/components/chat/entity-cards/.blog-card.md +52 -0
  98. package/src/components/chat/entity-cards/.blog-image-placeholder.md +39 -0
  99. package/src/components/chat/entity-cards/.campaign-card-admin.md +47 -0
  100. package/src/components/chat/entity-cards/.case-study-card.md +58 -0
  101. package/src/components/chat/entity-cards/.chat-ticket-item.md +40 -0
  102. package/src/components/chat/entity-cards/.chat-video-entity-card.md +43 -0
  103. package/src/components/chat/entity-cards/.customer-interview-card.md +53 -0
  104. package/src/components/chat/entity-cards/.data-room-doc-card.md +47 -0
  105. package/src/components/chat/entity-cards/.dispatch.md +39 -0
  106. package/src/components/chat/entity-cards/.entity-author-card.md +51 -0
  107. package/src/components/chat/entity-cards/.generic-entity-card.md +62 -0
  108. package/src/components/chat/entity-cards/.github-activity-card.md +61 -0
  109. package/src/components/chat/entity-cards/.hubspot-ticket-card.md +53 -0
  110. package/src/components/chat/entity-cards/.index.md +66 -0
  111. package/src/components/chat/entity-cards/.investor-update-card.md +47 -0
  112. package/src/components/chat/entity-cards/.onboarding-guide-card.md +58 -0
  113. package/src/components/chat/entity-cards/.product-release-card-defaults.md +31 -0
  114. package/src/components/chat/entity-cards/.product-release-card.md +29 -0
  115. package/src/components/chat/entity-cards/.program-card-defaults.md +41 -0
  116. package/src/components/chat/entity-cards/.program-card.md +59 -0
  117. package/src/components/chat/entity-cards/.roadmap-card.md +46 -0
  118. package/src/components/chat/entity-cards/.roadmap-vote-button.md +52 -0
  119. package/src/components/chat/entity-cards/.slack-message-card.md +48 -0
  120. package/src/components/chat/entity-cards/.task-type-icon.md +47 -0
  121. package/src/components/chat/hooks/.index.md +36 -21
  122. package/src/components/chat/hooks/.use-chat-attachment-image-gallery.md +51 -0
  123. package/src/components/chat/hooks/.use-chat-attachments.md +48 -0
  124. package/src/components/chat/hooks/.use-chat-card-item.md +39 -0
  125. package/src/components/chat/hooks/.use-chat-identity.md +45 -0
  126. package/src/components/chat/hooks/.use-chat.md +58 -0
  127. package/src/components/chat/hooks/.use-chunk-catchup.md +46 -48
  128. package/src/components/chat/hooks/.use-close-on-navigation.md +44 -0
  129. package/src/components/chat/hooks/.use-collapsible.md +48 -0
  130. package/src/components/chat/hooks/.use-embedded-chat.md +32 -0
  131. package/src/components/chat/hooks/.use-jetstream-dialog-subscription.md +40 -0
  132. package/src/components/chat/hooks/.use-nats-chat-adapter.md +52 -0
  133. package/src/components/chat/hooks/.use-nats-dialog-subscription.md +49 -30
  134. package/src/components/chat/hooks/.use-proxied-image-url.md +40 -0
  135. package/src/components/chat/hooks/.use-realtime-chunk-processor.md +43 -40
  136. package/src/components/chat/hooks/.use-slash-commands.md +46 -0
  137. package/src/components/chat/hooks/.use-sse-chat-adapter.md +34 -0
  138. package/src/components/chat/hooks/.use-sse.md +60 -0
  139. package/src/components/chat/hooks/.use-unified-chat.md +57 -0
  140. package/src/components/chat/types/.api.types.md +52 -38
  141. package/src/components/chat/types/.chat.types.md +43 -34
  142. package/src/components/chat/types/.component.types.md +47 -48
  143. package/src/components/chat/types/.index.md +20 -27
  144. package/src/components/chat/types/.message.types.md +58 -48
  145. package/src/components/chat/types/.network.types.md +57 -31
  146. package/src/components/chat/types/.processing.types.md +49 -31
  147. package/src/components/chat/types/.unified-chat-state.types.md +41 -0
  148. package/src/components/chat/types/entities/.blog.md +43 -0
  149. package/src/components/chat/types/entities/.case-study.md +26 -0
  150. package/src/components/chat/types/entities/.content-ref.md +41 -0
  151. package/src/components/chat/types/entities/.customer-interview.md +28 -0
  152. package/src/components/chat/types/entities/.data-room-doc.md +36 -0
  153. package/src/components/chat/types/entities/.github-activity.md +43 -0
  154. package/src/components/chat/types/entities/.hubspot-ticket.md +53 -0
  155. package/src/components/chat/types/entities/.index.md +42 -0
  156. package/src/components/chat/types/entities/.investor-update.md +45 -0
  157. package/src/components/chat/types/entities/.onboarding-guide.md +50 -0
  158. package/src/components/chat/types/entities/.program-types.md +57 -0
  159. package/src/components/chat/types/entities/.roadmap-item.md +58 -0
  160. package/src/components/chat/types/entities/.slack-message.md +35 -0
  161. package/src/components/chat/utils/.agent-status-message.md +45 -0
  162. package/src/components/chat/utils/.auto-continuation-directive.md +58 -0
  163. package/src/components/chat/utils/.chat-attachment-markdown.md +54 -0
  164. package/src/components/chat/utils/.chat-authed-fetch.md +25 -0
  165. package/src/components/chat/utils/.chat-nav-resolution.md +46 -0
  166. package/src/components/chat/utils/.chat-proxy-auth-storage.md +38 -0
  167. package/src/components/chat/utils/.chip-action-class.md +34 -0
  168. package/src/components/chat/utils/.chip-styles.md +46 -0
  169. package/src/components/chat/utils/.chunk-parser.md +38 -28
  170. package/src/components/chat/utils/.clickup-task-type-utils.md +48 -0
  171. package/src/components/chat/utils/.compact-card-classes.md +62 -0
  172. package/src/components/chat/utils/.decide-new-tab.md +51 -0
  173. package/src/components/chat/utils/.external-app-urls.md +29 -0
  174. package/src/components/chat/utils/.extract-incomplete-message-state.md +25 -29
  175. package/src/components/chat/utils/.flatten-assistant-content.md +34 -0
  176. package/src/components/chat/utils/.icon-registry.md +46 -0
  177. package/src/components/chat/utils/.index.md +37 -32
  178. package/src/components/chat/utils/.is-cross-origin-url.md +35 -0
  179. package/src/components/chat/utils/.message-segment-accumulator.md +25 -34
  180. package/src/components/chat/utils/.nav-anchor-props.md +44 -0
  181. package/src/components/chat/utils/.nav-click-handler.md +47 -0
  182. package/src/components/chat/utils/.onboarding-icons.md +28 -0
  183. package/src/components/chat/utils/.process-historical-messages.md +46 -35
  184. package/src/components/chat/utils/.scroll-anchor.md +40 -0
  185. package/src/components/chat/utils/.slash-dispatch-utils.md +44 -0
  186. package/src/components/chat/utils/.source-icons.md +35 -0
  187. package/src/components/chat/utils/.source-row-cta.md +54 -0
  188. package/src/components/chat/utils/.tool-call-helpers.md +42 -0
  189. package/src/components/contact/.contact-form.md +43 -0
  190. package/src/components/contact/.index.md +27 -0
  191. package/src/components/features/.array-entry-manager.md +36 -45
  192. package/src/components/features/.changelog-manager.md +47 -21
  193. package/src/components/features/.changelog-sections-manager.md +21 -26
  194. package/src/components/features/.command-box.md +31 -28
  195. package/src/components/features/.entity-summary-editor.md +46 -0
  196. package/src/components/features/.entity-video-section.md +51 -0
  197. package/src/components/features/.figma-prototype-viewer.md +48 -29
  198. package/src/components/features/.filters-dropdown.md +33 -46
  199. package/src/components/features/.highlight-config-section.md +42 -0
  200. package/src/components/features/.highlight-generation-section.md +46 -0
  201. package/src/components/features/.highlight-video-combined-section.md +47 -0
  202. package/src/components/features/.highlight-video-preview.md +44 -0
  203. package/src/components/features/.highlight-video-section.md +47 -0
  204. package/src/components/features/.index.md +40 -66
  205. package/src/components/features/.media-gallery-manager.md +48 -38
  206. package/src/components/features/.more-about-button.md +22 -19
  207. package/src/components/features/.og-editor-preview.md +40 -36
  208. package/src/components/features/.parallax-image-showcase.md +33 -26
  209. package/src/components/features/.paths-display.md +42 -43
  210. package/src/components/features/.platform-badge.md +37 -36
  211. package/src/components/features/.platform-filter.md +23 -16
  212. package/src/components/features/.policy-configuration-panel.md +48 -56
  213. package/src/components/features/.provider-button.md +33 -36
  214. package/src/components/features/.push-button-selector.md +40 -29
  215. package/src/components/features/.release-media-manager.md +46 -31
  216. package/src/components/features/.section-selector.md +26 -31
  217. package/src/components/features/.select-button.md +35 -25
  218. package/src/components/features/.seo-editor-preview.md +41 -44
  219. package/src/components/features/.social-links-manager.md +25 -19
  220. package/src/components/features/.start-with-openframe-button.md +37 -29
  221. package/src/components/features/.status-filter-component.md +36 -20
  222. package/src/components/features/.tags-selector.md +40 -24
  223. package/src/components/features/.transcribe-and-summarize-combined-section.md +45 -0
  224. package/src/components/features/.transcribe-summarize-section.md +48 -0
  225. package/src/components/features/.transcript-summary-editor.md +53 -0
  226. package/src/components/features/.video-bites-display.md +46 -0
  227. package/src/components/features/.video-clips-section.md +41 -0
  228. package/src/components/features/.video-ratio-tabs.md +56 -0
  229. package/src/components/features/.video-source-selector.md +60 -0
  230. package/src/components/features/.video.md +44 -0
  231. package/src/components/features/.waitlist-form.md +60 -0
  232. package/src/components/features/ai-enrich/.AIEnrichButton.md +30 -27
  233. package/src/components/features/ai-enrich/.AIEnrichSection.md +46 -42
  234. package/src/components/features/board/.board-column-header.md +38 -0
  235. package/src/components/features/board/.board-column.md +43 -0
  236. package/src/components/features/board/.board.md +51 -0
  237. package/src/components/features/board/.color-utils.md +26 -0
  238. package/src/components/features/board/.index.md +56 -0
  239. package/src/components/features/board/.ticket-card-skeleton.md +38 -0
  240. package/src/components/features/board/.ticket-card.md +47 -0
  241. package/src/components/features/board/.types.md +45 -0
  242. package/src/components/features/board/.use-board-collapse.md +34 -0
  243. package/src/components/features/notifications/.index.md +57 -0
  244. package/src/components/features/notifications/.notification-drawer.md +34 -0
  245. package/src/components/features/notifications/.notification-tile.md +39 -0
  246. package/src/components/features/notifications/.notifications-context.md +73 -0
  247. package/src/components/features/notifications/.types.md +45 -0
  248. package/src/components/icons/.about-icon.md +20 -28
  249. package/src/components/icons/.ai-robot-icon.md +15 -17
  250. package/src/components/icons/.bash-icon.md +16 -23
  251. package/src/components/icons/.buildings-icon.md +10 -24
  252. package/src/components/icons/.capterra-icon.md +30 -26
  253. package/src/components/icons/.carta-icon.md +29 -0
  254. package/src/components/icons/.clickup-icon.md +26 -0
  255. package/src/components/icons/.cmd-icon.md +15 -22
  256. package/src/components/icons/.coins-icon.md +17 -25
  257. package/src/components/icons/.community-hub-icon.md +19 -25
  258. package/src/components/icons/.community-icon.md +24 -21
  259. package/src/components/icons/.compare-icon.md +32 -19
  260. package/src/components/icons/.copy-icon.md +29 -15
  261. package/src/components/icons/.custom-external-link-icon.md +19 -17
  262. package/src/components/icons/.custom-fork-icon.md +32 -21
  263. package/src/components/icons/.custom-license-icon.md +29 -25
  264. package/src/components/icons/.custom-star-icon.md +20 -28
  265. package/src/components/icons/.custom-time-icon.md +21 -22
  266. package/src/components/icons/.cut-vendor-costs-icon.md +6 -19
  267. package/src/components/icons/.dashboard-icon.md +13 -18
  268. package/src/components/icons/.deno-icon.md +16 -23
  269. package/src/components/icons/.donut-icon.md +12 -23
  270. package/src/components/icons/.double-chevron-icon.md +28 -36
  271. package/src/components/icons/.elestio-logo.md +13 -23
  272. package/src/components/icons/.empty-vendor-icon.md +16 -18
  273. package/src/components/icons/.explore-categories-icon.md +18 -29
  274. package/src/components/icons/.eye-icon.md +16 -26
  275. package/src/components/icons/.facebook-icon.md +9 -20
  276. package/src/components/icons/.figma-icon.md +8 -17
  277. package/src/components/icons/.filter-icon.md +15 -17
  278. package/src/components/icons/.flamingo-logo.md +28 -27
  279. package/src/components/icons/.folder-shield-icon.md +28 -19
  280. package/src/components/icons/.g2-icon.md +22 -21
  281. package/src/components/icons/.getapp-icon.md +25 -21
  282. package/src/components/icons/.github-icon.md +13 -25
  283. package/src/components/icons/.globe-icon.md +14 -19
  284. package/src/components/icons/.google-gemini-icon.md +16 -19
  285. package/src/components/icons/.google-logo.md +15 -21
  286. package/src/components/icons/.grid-view-icon.md +30 -19
  287. package/src/components/icons/.hamburger-icon.md +22 -20
  288. package/src/components/icons/.hand-dollar-icon.md +24 -34
  289. package/src/components/icons/.hotel-icon.md +27 -21
  290. package/src/components/icons/.icon-utils.md +28 -29
  291. package/src/components/icons/.image-icon.md +15 -22
  292. package/src/components/icons/.index.md +25 -28
  293. package/src/components/icons/.info-circle-icon.md +29 -30
  294. package/src/components/icons/.instagram-icon.md +10 -24
  295. package/src/components/icons/.jump-in-icon.md +18 -18
  296. package/src/components/icons/.linux-icon.md +18 -18
  297. package/src/components/icons/.log-out-icon.md +15 -23
  298. package/src/components/icons/.logs-icon.md +14 -23
  299. package/src/components/icons/.margin-crisis-icon.md +21 -20
  300. package/src/components/icons/.menu-icon.md +18 -19
  301. package/src/components/icons/.miami-cyber-gang-logo-face-only.md +18 -21
  302. package/src/components/icons/.miami-cyber-gang-logo.md +22 -14
  303. package/src/components/icons/.mlg-logo.md +18 -16
  304. package/src/components/icons/.moon-icon.md +32 -22
  305. package/src/components/icons/.ms-icon.md +30 -19
  306. package/src/components/icons/.nushell-icon.md +7 -21
  307. package/src/components/icons/.open-source-icon.md +19 -23
  308. package/src/components/icons/.openai-icon.md +9 -24
  309. package/src/components/icons/.openframe-ai-icons.md +25 -26
  310. package/src/components/icons/.openframe-logo.md +28 -22
  311. package/src/components/icons/.openframe-text.md +24 -27
  312. package/src/components/icons/.openmsp-logo.md +26 -23
  313. package/src/components/icons/.pilot-icon.md +23 -0
  314. package/src/components/icons/.powershell-icon.md +17 -22
  315. package/src/components/icons/.python-icon.md +16 -23
  316. package/src/components/icons/.queries-icon.md +13 -21
  317. package/src/components/icons/.reddit-icon.md +28 -24
  318. package/src/components/icons/.remote-control-icon.md +13 -17
  319. package/src/components/icons/.script-icon.md +27 -19
  320. package/src/components/icons/.search-icon.md +21 -21
  321. package/src/components/icons/.send-icon.md +14 -16
  322. package/src/components/icons/.settings-icon.md +30 -19
  323. package/src/components/icons/.shape-circle-dash-icon.md +16 -21
  324. package/src/components/icons/.shell-icon.md +15 -19
  325. package/src/components/icons/.shield-check-icon.md +18 -31
  326. package/src/components/icons/.shield-key-icon.md +25 -25
  327. package/src/components/icons/.shield-lock-icon.md +8 -18
  328. package/src/components/icons/.slack-icon.md +28 -32
  329. package/src/components/icons/.sparkles-icon.md +18 -23
  330. package/src/components/icons/.sso-configuration-icon.md +29 -16
  331. package/src/components/icons/.sun-icon.md +20 -18
  332. package/src/components/icons/.table-view-icon.md +17 -19
  333. package/src/components/icons/.telegram-icon.md +8 -22
  334. package/src/components/icons/.thumbs-down-icon.md +10 -19
  335. package/src/components/icons/.thumbs-up-icon.md +8 -17
  336. package/src/components/icons/.tool-directory-icons.md +24 -28
  337. package/src/components/icons/.trustpilot-icon.md +25 -22
  338. package/src/components/icons/.user-icon.md +26 -28
  339. package/src/components/icons/.users-group-icon.md +28 -24
  340. package/src/components/icons/.vendor-showcase-icons.md +21 -29
  341. package/src/components/icons/.vendors-icon.md +18 -22
  342. package/src/components/icons/.whatsapp-icon.md +30 -14
  343. package/src/components/icons/.x-icon.md +18 -23
  344. package/src/components/icons/.x-logo.md +13 -38
  345. package/src/components/icons/.youtube-icon.md +8 -19
  346. package/src/components/icons/device-type-icons/.get-device-type-icon.md +26 -34
  347. package/src/components/icons-v2-generated/.index.md +52 -0
  348. package/src/components/icons-v2-generated/alphabet/.index.md +33 -0
  349. package/src/components/icons-v2-generated/arrows/.index.md +39 -0
  350. package/src/components/icons-v2-generated/audio-and-visual/.index.md +40 -0
  351. package/src/components/icons-v2-generated/brand-logos/.elestio-logo-icon.md +40 -0
  352. package/src/components/icons-v2-generated/brand-logos/.gemini-logo-icon.md +37 -0
  353. package/src/components/icons-v2-generated/brand-logos/.google-gemini-logo-icon.md +33 -0
  354. package/src/components/icons-v2-generated/brand-logos/.index.md +38 -0
  355. package/src/components/icons-v2-generated/brand-logos/.meshcentral-logo-grey-icon.md +35 -0
  356. package/src/components/icons-v2-generated/brand-logos/.meshcentral-logo-icon.md +36 -0
  357. package/src/components/icons-v2-generated/buildings/.index.md +48 -0
  358. package/src/components/icons-v2-generated/charts/.index.md +40 -0
  359. package/src/components/icons-v2-generated/clothes/.index.md +48 -0
  360. package/src/components/icons-v2-generated/coding/.index.md +42 -0
  361. package/src/components/icons-v2-generated/communication/.index.md +39 -0
  362. package/src/components/icons-v2-generated/date-and-time/.index.md +29 -0
  363. package/src/components/icons-v2-generated/design/.index.md +39 -0
  364. package/src/components/icons-v2-generated/devices/.index.md +38 -0
  365. package/src/components/icons-v2-generated/documents/.index.md +38 -0
  366. package/src/components/icons-v2-generated/finance/.index.md +34 -0
  367. package/src/components/icons-v2-generated/food-and-drinks/.index.md +34 -0
  368. package/src/components/icons-v2-generated/food-and-drinks/.leafy-green-icon.md +36 -0
  369. package/src/components/icons-v2-generated/food-and-drinks/.strawberry-icon.md +39 -0
  370. package/src/components/icons-v2-generated/health/.index.md +40 -0
  371. package/src/components/icons-v2-generated/household/.index.md +45 -0
  372. package/src/components/icons-v2-generated/interface/.index.md +36 -0
  373. package/src/components/icons-v2-generated/map-and-travel/.index.md +41 -0
  374. package/src/components/icons-v2-generated/media-playback/.index.md +51 -0
  375. package/src/components/icons-v2-generated/number/.index.md +41 -0
  376. package/src/components/icons-v2-generated/school/.index.md +37 -0
  377. package/src/components/icons-v2-generated/security/.fingerprint-icon.md +38 -0
  378. package/src/components/icons-v2-generated/security/.index.md +39 -0
  379. package/src/components/icons-v2-generated/shopping/.index.md +42 -0
  380. package/src/components/icons-v2-generated/signs-and-symbols/.index.md +32 -0
  381. package/src/components/icons-v2-generated/sort-and-filter/.index.md +35 -0
  382. package/src/components/icons-v2-generated/sport/.index.md +41 -0
  383. package/src/components/icons-v2-generated/text-editor/.index.md +44 -0
  384. package/src/components/icons-v2-generated/users/.index.md +45 -0
  385. package/src/components/icons-v2-generated/vehicles-and-delivery/.index.md +36 -0
  386. package/src/components/icons-v2-generated/weather-and-nature/.flower-sakura-icon.md +36 -0
  387. package/src/components/icons-v2-generated/weather-and-nature/.index.md +34 -0
  388. package/src/components/layout/.article-detail-layout.md +43 -0
  389. package/src/components/layout/.back-button.md +40 -0
  390. package/src/components/layout/.list-page-layout.md +35 -26
  391. package/src/components/layout/.page-container.md +27 -38
  392. package/src/components/layout/.page-layout.md +50 -0
  393. package/src/components/layout/.title-block.md +42 -0
  394. package/src/components/loading/.card-skeleton.md +38 -29
  395. package/src/components/loading/.device-card-skeleton.md +29 -25
  396. package/src/components/loading/.index.md +39 -46
  397. package/src/components/loading/.margin-report-skeleton.md +45 -34
  398. package/src/components/loading/.organization-card-skeleton.md +39 -44
  399. package/src/components/loading/.page-layout-skeleton.md +34 -45
  400. package/src/components/loading/.unified-skeleton.md +62 -36
  401. package/src/components/navigation/.app-header.md +40 -29
  402. package/src/components/navigation/.app-layout.md +25 -26
  403. package/src/components/navigation/.header-global-search.md +34 -37
  404. package/src/components/navigation/.header-organization-filter.md +23 -22
  405. package/src/components/navigation/.header.md +31 -35
  406. package/src/components/navigation/.mobile-burger-menu.md +39 -47
  407. package/src/components/navigation/.mobile-nav-panel.md +51 -32
  408. package/src/components/navigation/.navigation-sidebar-header.md +36 -0
  409. package/src/components/navigation/.navigation-sidebar-item.md +45 -0
  410. package/src/components/navigation/.navigation-sidebar-toggle.md +38 -0
  411. package/src/components/navigation/.navigation-sidebar.md +33 -34
  412. package/src/components/navigation/.sliding-sidebar.md +52 -41
  413. package/src/components/navigation/.sticky-section-nav.md +56 -48
  414. package/src/components/platform/.ScriptArguments.md +39 -25
  415. package/src/components/platform/.ScriptInfoSection.md +30 -26
  416. package/src/components/platform/.ShellTypeBadge.md +18 -13
  417. package/src/components/platform/.SoftwareInfo.md +23 -27
  418. package/src/components/platform/.SoftwareSourceBadge.md +28 -19
  419. package/src/components/platform/.ToolBadge.md +25 -26
  420. package/src/components/platform/ShellTypeBadge.tsx +2 -2
  421. package/src/components/providers/.theme-provider.md +52 -0
  422. package/src/components/shared/delivery/.delivery-lists.md +39 -0
  423. package/src/components/shared/delivery/.delivery-row.md +41 -0
  424. package/src/components/shared/delivery/.delivery-table.md +41 -0
  425. package/src/components/shared/delivery/.index.md +38 -0
  426. package/src/components/shared/dev-section/.dev-card-row.md +60 -0
  427. package/src/components/shared/dev-section/.dev-section-page.md +48 -0
  428. package/src/components/shared/dev-section/.dev-section-view.md +43 -0
  429. package/src/components/shared/dev-section/.index.md +38 -0
  430. package/src/components/shared/legal-document/.index.md +40 -0
  431. package/src/components/shared/legal-document/.legal-document-page.md +50 -0
  432. package/src/components/shared/legal-document/.use-legal-docs.md +42 -0
  433. package/src/components/shared/onboarding/.onboarding-step-card.md +32 -31
  434. package/src/components/shared/onboarding/.onboarding-walkthrough.md +39 -43
  435. package/src/components/shared/product-release/.index.md +28 -30
  436. package/src/components/shared/product-release/.product-release-card-skeleton.md +28 -28
  437. package/src/components/shared/product-release/.product-release-card.md +45 -27
  438. package/src/components/shared/product-release/.release-detail-page.md +23 -24
  439. package/src/components/shared/roadmap/.index.md +37 -0
  440. package/src/components/shared/roadmap/.roadmap-grid-skeleton.md +39 -0
  441. package/src/components/shared/roadmap/.roadmap-grid.md +66 -0
  442. package/src/components/shared/roadmap/.use-roadmap-voting.md +68 -0
  443. package/src/components/tickets/.help-center-card.md +51 -0
  444. package/src/components/tickets/.help-center-create-form.md +38 -0
  445. package/src/components/tickets/.help-center-list.md +40 -0
  446. package/src/components/tickets/.index.md +65 -0
  447. package/src/components/tickets/.ticket-center.md +51 -0
  448. package/src/components/tickets/.ticket-detail-drawer.md +48 -0
  449. package/src/components/tickets/.ticket-linked-delivery-card.md +36 -0
  450. package/src/components/tickets/.ticket-open-form.md +50 -0
  451. package/src/components/tickets/.ticket-row.md +30 -0
  452. package/src/components/tickets/.types.md +57 -0
  453. package/src/components/tickets/hooks/.use-ticket-actions.md +77 -0
  454. package/src/components/tickets/hooks/.use-ticket-engagements.md +42 -0
  455. package/src/components/tickets/hooks/.use-tickets-list.md +54 -0
  456. package/src/components/ui/.actions-menu.md +66 -41
  457. package/src/components/ui/.alert-dialog.md +29 -26
  458. package/src/components/ui/.allowed-domains-input.md +29 -21
  459. package/src/components/ui/.assignee-dropdown.md +45 -0
  460. package/src/components/ui/.autocomplete.md +47 -41
  461. package/src/components/ui/.benefit-card.md +51 -36
  462. package/src/components/ui/.brand-association-card.md +30 -27
  463. package/src/components/ui/.breadcrumb.md +17 -15
  464. package/src/components/ui/.checkbox-block.md +39 -35
  465. package/src/components/ui/.checkbox-with-description.md +23 -16
  466. package/src/components/ui/.checkbox.md +31 -23
  467. package/src/components/ui/.circular-progress.md +49 -19
  468. package/src/components/ui/.content-loader.md +32 -20
  469. package/src/components/ui/.cursor-pagination.md +41 -52
  470. package/src/components/ui/.dashboard-info-card.md +33 -26
  471. package/src/components/ui/.date-picker.md +27 -25
  472. package/src/components/ui/.device-card-compact.md +28 -29
  473. package/src/components/ui/.device-card.md +27 -27
  474. package/src/components/ui/.dialog.md +25 -16
  475. package/src/components/ui/.drawer.md +86 -0
  476. package/src/components/ui/.dropdown-button.md +45 -0
  477. package/src/components/ui/.entity-image.md +46 -0
  478. package/src/components/ui/.error-state.md +41 -28
  479. package/src/components/ui/.feature-card.md +35 -31
  480. package/src/components/ui/.feature-list.md +48 -0
  481. package/src/components/ui/.field-wrapper.md +47 -0
  482. package/src/components/ui/.file-upload.md +42 -0
  483. package/src/components/ui/.filter-checkbox-item.md +43 -0
  484. package/src/components/ui/.filter-list.md +57 -0
  485. package/src/components/ui/.filter-modal.md +59 -0
  486. package/src/components/ui/.floating-tooltip.md +43 -26
  487. package/src/components/ui/.hidden-tags-popup.md +49 -0
  488. package/src/components/ui/.hover-dropdown.md +54 -0
  489. package/src/components/ui/.image-gallery-modal.md +41 -34
  490. package/src/components/ui/.image-uploader.md +53 -0
  491. package/src/components/ui/.index.md +40 -34
  492. package/src/components/ui/.info-card.md +31 -31
  493. package/src/components/ui/.info-row.md +31 -27
  494. package/src/components/ui/.input-trigger.md +44 -0
  495. package/src/components/ui/.input.md +37 -31
  496. package/src/components/ui/.markdown-editor.md +57 -0
  497. package/src/components/ui/.modal-v2.md +51 -0
  498. package/src/components/ui/.modal.md +32 -31
  499. package/src/components/ui/.more-actions-menu.md +45 -38
  500. package/src/components/ui/.organization-card.md +31 -37
  501. package/src/components/ui/.page-actions.md +44 -54
  502. package/src/components/ui/.phone-input.md +54 -0
  503. package/src/components/ui/.progress-bar.md +35 -27
  504. package/src/components/ui/.radio-group.md +39 -27
  505. package/src/components/ui/.release-changelog-section.md +34 -34
  506. package/src/components/ui/.search-input.md +48 -0
  507. package/src/components/ui/.select.md +54 -34
  508. package/src/components/ui/.service-card.md +42 -40
  509. package/src/components/ui/.sheet.md +27 -18
  510. package/src/components/ui/.simple-markdown-renderer.md +29 -31
  511. package/src/components/ui/.sort-column-item.md +42 -0
  512. package/src/components/ui/.square-avatar.md +34 -24
  513. package/src/components/ui/.status-badge.md +26 -38
  514. package/src/components/ui/.switch.md +22 -35
  515. package/src/components/ui/.tab-navigation.md +56 -53
  516. package/src/components/ui/.tab-selector.md +40 -0
  517. package/src/components/ui/.tag-key-value-filter.md +56 -0
  518. package/src/components/ui/.tag-search-input.md +53 -0
  519. package/src/components/ui/.tag.md +49 -31
  520. package/src/components/ui/.tags-manager.md +60 -0
  521. package/src/components/ui/.textarea.md +44 -34
  522. package/src/components/ui/.ticket-attachments-list.md +45 -0
  523. package/src/components/ui/.ticket-detail-section.md +29 -0
  524. package/src/components/ui/.ticket-info-section.md +56 -0
  525. package/src/components/ui/.ticket-note-card.md +53 -0
  526. package/src/components/ui/.ticket-notes-section.md +54 -0
  527. package/src/components/ui/.ticket-status-tag.md +49 -0
  528. package/src/components/ui/.title-content-block.md +25 -26
  529. package/src/components/ui/.toaster.md +40 -28
  530. package/src/components/ui/.tooltip.md +22 -11
  531. package/src/components/ui/.truncate-text.md +39 -0
  532. package/src/components/ui/button/.button-styles.md +35 -0
  533. package/src/components/ui/button/.button.md +53 -0
  534. package/src/components/ui/button/.split-button.md +48 -0
  535. package/src/components/ui/data-table/.data-table-body.md +48 -0
  536. package/src/components/ui/data-table/.data-table-column-filter.md +45 -0
  537. package/src/components/ui/data-table/.data-table-cursor-footer.md +45 -0
  538. package/src/components/ui/data-table/.data-table-empty.md +43 -0
  539. package/src/components/ui/data-table/.data-table-header.md +55 -0
  540. package/src/components/ui/data-table/.data-table-infinite-footer.md +44 -0
  541. package/src/components/ui/data-table/.data-table-row-count.md +43 -0
  542. package/src/components/ui/data-table/.data-table-row.md +47 -0
  543. package/src/components/ui/data-table/.data-table-skeleton.md +42 -0
  544. package/src/components/ui/data-table/.data-table.md +47 -0
  545. package/src/components/ui/data-table/.index.md +55 -0
  546. package/src/components/ui/data-table/.types.md +54 -0
  547. package/src/components/ui/data-table/.use-data-table.md +45 -0
  548. package/src/components/ui/data-table/.utils.md +38 -0
  549. package/src/components/ui/file-manager/.file-manager-action-bar.md +39 -30
  550. package/src/components/ui/file-manager/.file-manager-breadcrumb.md +29 -27
  551. package/src/components/ui/file-manager/.file-manager-context-menu.md +38 -42
  552. package/src/components/ui/file-manager/.file-manager-empty.md +26 -39
  553. package/src/components/ui/file-manager/.file-manager-table-row.md +33 -41
  554. package/src/components/ui/file-manager/.file-manager.md +35 -31
  555. package/src/components/ui/query-report-table/.index.md +43 -0
  556. package/src/components/ui/query-report-table/.query-report-table-header.md +36 -0
  557. package/src/components/ui/query-report-table/.query-report-table-row.md +40 -0
  558. package/src/components/ui/query-report-table/.query-report-table-skeleton.md +44 -0
  559. package/src/components/ui/query-report-table/.query-report-table.md +47 -0
  560. package/src/components/ui/query-report-table/.types.md +41 -0
  561. package/src/components/ui/query-report-table/.utils.md +35 -0
  562. package/src/components/ui/table/.index.md +27 -48
  563. package/src/components/ui/table/.table-cell.md +18 -27
  564. package/src/components/ui/table/.table-column-filter-dropdown.md +40 -0
  565. package/src/components/ui/table/.table-description-cell.md +24 -14
  566. package/src/components/ui/table/.table-empty-state.md +21 -22
  567. package/src/components/ui/table/.table-header.md +25 -40
  568. package/src/components/ui/table/.table-row.md +22 -40
  569. package/src/components/ui/table/.table-skeleton.md +33 -26
  570. package/src/components/ui/table/.table-timestamp-cell.md +26 -16
  571. package/src/components/ui/table/.table.md +39 -59
  572. package/src/components/ui/table/.types.md +44 -36
  573. package/src/components/ui/table/.utils.md +18 -20
  574. package/src/contexts/.chat-runtime-context.md +54 -0
  575. package/src/contexts/.endpoints-runtime-context.md +58 -0
  576. package/src/contexts/.index.md +53 -0
  577. package/src/contexts/.use-outer-or-default.md +36 -0
  578. package/src/embed-shims/.index.md +45 -0
  579. package/src/embed-shims/.next-dynamic.md +43 -0
  580. package/src/embed-shims/.next-image.md +45 -0
  581. package/src/embed-shims/.next-link.md +59 -0
  582. package/src/embed-shims/.next-navigation.md +59 -0
  583. package/src/hooks/.index.md +34 -29
  584. package/src/hooks/.use-access-code-integration.md +49 -0
  585. package/src/hooks/.use-contact-submission.md +37 -26
  586. package/src/hooks/.use-copy-to-clipboard.md +42 -0
  587. package/src/hooks/.use-near-viewport.md +44 -0
  588. package/src/hooks/.use-og-placeholder.md +51 -0
  589. package/src/hooks/.use-toast.md +36 -35
  590. package/src/hooks/state/.use-api-params.md +29 -46
  591. package/src/hooks/state/.use-query-params.md +37 -33
  592. package/src/hooks/ui/.index.md +33 -32
  593. package/src/hooks/ui/.use-auto-limit-tags.md +54 -0
  594. package/src/hooks/ui/.use-horizontal-scrollbar.md +74 -0
  595. package/src/hooks/ui/.use-image-edge-color.md +42 -0
  596. package/src/hooks/ui/.use-media-query.md +33 -25
  597. package/src/hooks/ui/.use-search.md +51 -0
  598. package/src/nats/.nats.md +49 -28
  599. package/src/schemas/.contact-schema.md +45 -0
  600. package/src/stories/.AnnouncementBar.stories.md +45 -0
  601. package/src/stories/.AppLayout.stories.md +20 -21
  602. package/src/stories/.Autocomplete.stories.md +48 -34
  603. package/src/stories/.Board.stories.md +35 -0
  604. package/src/stories/.Button.stories.md +36 -33
  605. package/src/stories/.ChatTicketList.stories.md +33 -0
  606. package/src/stories/.CheckboxBlock.stories.md +40 -28
  607. package/src/stories/.ContentLoader.stories.md +47 -0
  608. package/src/stories/.DashboardInfoCard.stories.md +57 -0
  609. package/src/stories/.DataTable.stories.md +41 -0
  610. package/src/stories/.DatePicker.stories.md +66 -52
  611. package/src/stories/.DeviceCard.stories.md +41 -40
  612. package/src/stories/.DeviceCardCompact.stories.md +41 -0
  613. package/src/stories/.DotsLoaderIcon.stories.md +36 -0
  614. package/src/stories/.Drawer.stories.md +58 -0
  615. package/src/stories/.EmbeddableChat.stories.md +41 -0
  616. package/src/stories/.FileManager.stories.md +41 -0
  617. package/src/stories/.FileManagerActionBar.stories.md +38 -0
  618. package/src/stories/.FileUpload.stories.md +53 -0
  619. package/src/stories/.FilterList.stories.md +54 -0
  620. package/src/stories/.FilterModal.stories.md +72 -0
  621. package/src/stories/.FiltersDropdown.stories.md +57 -0
  622. package/src/stories/.Header.stories.md +48 -0
  623. package/src/stories/.ImageUploader.stories.md +49 -0
  624. package/src/stories/.InfoCard.stories.md +54 -0
  625. package/src/stories/.Input.stories.md +48 -30
  626. package/src/stories/.ListPageLayout.stories.md +56 -43
  627. package/src/stories/.MingoOnboardingCard.stories.md +42 -0
  628. package/src/stories/.MingoOnboardingCardSkeleton.stories.md +35 -0
  629. package/src/stories/.Modal.stories.md +40 -31
  630. package/src/stories/.NotificationDrawer.stories.md +55 -0
  631. package/src/stories/.OnboardingStepCard.stories.md +41 -0
  632. package/src/stories/.OrganizationCard.stories.md +61 -0
  633. package/src/stories/.PageActions.stories.md +52 -49
  634. package/src/stories/.PageContainer.stories.md +41 -35
  635. package/src/stories/.PageLayout.stories.md +60 -0
  636. package/src/stories/.ParallaxImageShowcase.stories.md +49 -0
  637. package/src/stories/.PhoneInput.stories.md +53 -0
  638. package/src/stories/.QueryReportTable.stories.md +44 -0
  639. package/src/stories/.RadioGroup.stories.md +46 -0
  640. package/src/stories/.RadioGroupBlock.stories.md +45 -0
  641. package/src/stories/.Select.stories.md +29 -15
  642. package/src/stories/.SlashCommandSuggestions.stories.md +41 -0
  643. package/src/stories/.SplitButton.stories.md +62 -0
  644. package/src/stories/.TabNavigation.stories.md +47 -38
  645. package/src/stories/.TabSelector.stories.md +65 -0
  646. package/src/stories/.Table.stories.md +38 -46
  647. package/src/stories/.TableColumnFilterDropdown.stories.md +46 -0
  648. package/src/stories/.Tag.stories.md +43 -32
  649. package/src/stories/.TagKeyValueFilter.stories.md +44 -0
  650. package/src/stories/.TagSearchInput.stories.md +61 -0
  651. package/src/stories/.Textarea.stories.md +49 -26
  652. package/src/stories/.Theme.stories.md +41 -0
  653. package/src/stories/.TicketAttachmentsList.stories.md +39 -0
  654. package/src/stories/.TicketDescriptionViewer.stories.md +39 -0
  655. package/src/stories/.TicketInfoSection.stories.md +40 -0
  656. package/src/stories/.TicketKnowledgeBaseList.stories.md +36 -0
  657. package/src/stories/.TicketNotesSection.stories.md +50 -0
  658. package/src/stories/.Toaster.stories.md +40 -0
  659. package/src/stories/.ToolExecutionDisplay.stories.md +41 -0
  660. package/src/stories/.Tooltip.stories.md +41 -0
  661. package/src/stories/.UserSummary.stories.md +41 -0
  662. package/src/stories/.WaitlistForm.stories.md +42 -0
  663. package/src/stories/BlogCard.stories.tsx +61 -0
  664. package/src/stories/CampaignCardAdmin.stories.tsx +52 -0
  665. package/src/stories/CaseStudyCard.stories.tsx +42 -0
  666. package/src/stories/ChatContainer.stories.tsx +186 -0
  667. package/src/stories/ChatInlineVideoPill.stories.tsx +63 -0
  668. package/src/stories/CustomerInterviewCard.stories.tsx +42 -0
  669. package/src/stories/DataRoomDocCard.stories.tsx +52 -0
  670. package/src/stories/GenericEntityCard.stories.tsx +66 -0
  671. package/src/stories/GitHubActivityCard.stories.tsx +61 -0
  672. package/src/stories/HubspotTicketCard.stories.tsx +98 -0
  673. package/src/stories/InvestorUpdateCard.stories.tsx +42 -0
  674. package/src/stories/OnboardingGuideCard.stories.tsx +52 -0
  675. package/src/stories/ProductReleaseCard.stories.tsx +61 -0
  676. package/src/stories/ProgramCard.stories.tsx +79 -0
  677. package/src/stories/RoadmapCard.stories.tsx +75 -0
  678. package/src/stories/SlackMessageCard.stories.tsx +41 -0
  679. package/src/stories/__fixtures__/chat-cards.ts +604 -0
  680. package/src/types/.blog.md +53 -29
  681. package/src/types/.case-study.md +44 -27
  682. package/src/types/.customer-interview.md +66 -44
  683. package/src/types/.delivery.md +40 -0
  684. package/src/types/.employee.md +24 -30
  685. package/src/types/.index.md +33 -47
  686. package/src/types/.marketing.md +49 -44
  687. package/src/types/.navigation.md +33 -25
  688. package/src/types/.os.types.md +32 -27
  689. package/src/types/.platform.md +31 -28
  690. package/src/types/.product-release.md +65 -38
  691. package/src/types/.supabase.md +37 -29
  692. package/src/types/.team.md +41 -33
  693. package/src/types/.video-processing.md +54 -0
  694. package/src/types/.waitlist.md +40 -36
  695. package/src/utils/.access-code-client.md +37 -36
  696. package/src/utils/.cn.md +31 -23
  697. package/src/utils/.color-analysis.md +35 -0
  698. package/src/utils/.country-phone-utils.md +39 -0
  699. package/src/utils/.date-formatters.md +19 -18
  700. package/src/utils/.embed-authed-fetch.md +39 -0
  701. package/src/utils/.embed-proxy-auth-storage.md +38 -0
  702. package/src/utils/.fetch-priority.md +41 -0
  703. package/src/utils/.format.md +74 -25
  704. package/src/utils/.generic-domain-utils.md +42 -0
  705. package/src/utils/.image-proxy.md +59 -23
  706. package/src/utils/.index.md +42 -49
  707. package/src/utils/.local-storage-adapter.md +50 -0
  708. package/src/utils/.ods-color-utils.md +55 -38
  709. package/src/utils/.platform-config.md +45 -25
  710. package/src/utils/.scroll-into-view.md +40 -0
  711. package/src/utils/.source-icons.md +53 -0
  712. package/src/utils/.sse-decision-frame.md +46 -0
  713. package/src/utils/dev-sections/.index.md +34 -0
  714. package/src/utils/dev-sections/.openframe-dev-sections.md +49 -0
  715. package/dist/chunk-ZDF6F7ED.cjs.map +0 -1
  716. package/dist/chunk-ZTJVRSN5.js.map +0 -1
  717. package/src/components/.card.md +0 -42
  718. package/src/components/.contact-button.md +0 -30
  719. package/src/components/.drawer.md +0 -46
  720. package/src/components/.fixed-layout-container.md +0 -47
  721. package/src/components/.footer-waitlist-card.md +0 -29
  722. package/src/components/.join-waitlist-cta.md +0 -29
  723. package/src/components/.sheet.md +0 -47
  724. package/src/components/.sliding-panel.md +0 -48
  725. package/src/components/.tooltip.md +0 -48
  726. package/src/components/.use-mobile.md +0 -42
  727. package/src/components/.vendor-compact-card.md +0 -66
  728. package/src/components/.x-button.md +0 -42
  729. package/src/components/features/.github-repo-button.md +0 -40
  730. package/src/components/features/.organization-icon.md +0 -47
  731. package/src/components/features/.organization-selector.md +0 -45
  732. package/src/components/icons/.fleet-icon.md +0 -39
  733. package/src/components/icons/.meshcentral-icon.md +0 -35
  734. package/src/components/icons/.refresh-icon.md +0 -34
  735. package/src/components/icons/.tactical-icon.md +0 -35
  736. package/src/components/ui/.button.md +0 -69
  737. package/src/components/ui/.log-table-row.md +0 -47
  738. package/src/components/ui/.selectable-device-card.md +0 -46
  739. package/src/hooks/.api-hooks-stub.md +0 -45
  740. package/src/hooks/api/.use-product-releases.md +0 -53
  741. package/src/stories/.OrganizationSelector.stories.md +0 -42
  742. package/src/stories/.SelectableDeviceCard.stories.md +0 -30
  743. package/src/utils/.lite-youtube-embed-stub.md +0 -37
  744. package/src/utils/.lite-youtube-embed.md +0 -33
  745. /package/dist/{chunk-IK2X5YJU.js.map → chunk-7PCP7YQR.js.map} +0 -0
  746. /package/dist/{chunk-3JWIJJ44.js.map → chunk-R6MLPU4A.js.map} +0 -0
@@ -1,47 +1,51 @@
1
- <!-- source-hash: d5fd9c1811d9264819293e10d4e069fa -->
2
- A client-side React component that renders a responsive grid of feature cards with customizable styling, borders, and content layout.
1
+ <!-- source-hash: 6c49039417df243ab2c6d3b41c998928 -->
2
+ A client-side React component that renders a responsive grid of feature cards with configurable layouts, borders, backgrounds, icons, and status badges.
3
3
 
4
4
  ## Key Components
5
5
 
6
- ### Types
7
- - **`FeatureCardItem`** - Interface defining individual card properties including icon, title, badge, content, and styling overrides
8
- - **`FeatureCardGridProps`** - Configuration interface for the grid layout, columns, spacing, and global styling options
6
+ ### Interfaces
7
+ - **`FeatureCardItem`** Defines individual card data: icon, title, badge, content, and per-card style overrides (`removeAllBorders`, `noBackground`, `customBackground`)
8
+ - **`FeatureCardGridProps`** — Grid-level configuration: items array, column count, class overrides, border/background/gap controls
9
9
 
10
- ### Components
11
- - **`FeatureCardGrid`** - Main component that renders a responsive grid of feature cards with intelligent border management and customizable layouts
10
+ ### Exports
11
+ - **`FeatureCardGrid`** Main component rendering a `Card` wrapper with a responsive CSS grid, dynamically computing row/column borders and applying per-item style overrides
12
12
 
13
13
  ## Usage Example
14
14
 
15
15
  ```typescript
16
- import { FeatureCardGrid } from './feature-card';
17
- import { SomeIcon } from './icons';
16
+ import { FeatureCardGrid, FeatureCardItem } from './feature-card';
17
+ import { ShieldIcon } from 'lucide-react';
18
18
 
19
- const features = [
19
+ const items: FeatureCardItem[] = [
20
20
  {
21
- icon: SomeIcon,
22
- iconColor: '#0EA5E9',
23
- title: 'Advanced Analytics',
24
- badge: {
25
- text: 'New',
26
- variant: 'card' as const,
27
- colorScheme: 'cyan' as const
28
- },
29
- content: <p>Real-time data insights and reporting</p>
21
+ icon: ShieldIcon,
22
+ iconColor: '#FFC008',
23
+ title: 'Automated Patching',
24
+ badge: { text: 'New', colorScheme: 'green' },
25
+ content: <p>Keep endpoints secure with zero-touch patch management.</p>,
30
26
  },
31
27
  {
32
- title: 'Custom Integration',
33
- content: <div>Flexible API connections</div>,
34
- noBackground: true
35
- }
28
+ title: 'AI Triage',
29
+ content: <p>Mingo AI resolves tickets before a technician is needed.</p>,
30
+ noBackground: true,
31
+ },
36
32
  ];
37
33
 
38
- <FeatureCardGrid
39
- items={features}
40
- columns={2}
41
- showBorders={true}
42
- roundedCorners={true}
43
- cardGap="gap-6"
44
- />
34
+ export default function Page() {
35
+ return (
36
+ <FeatureCardGrid
37
+ items={items}
38
+ columns={2}
39
+ cardGap="gap-6"
40
+ showBorders={true}
41
+ roundedCorners={true}
42
+ />
43
+ );
44
+ }
45
45
  ```
46
46
 
47
- The component features intelligent responsive border handling, supports 2-3 column layouts, and provides extensive customization options for backgrounds, borders, and spacing. Each card can override global styles with item-specific properties like `noBackground` or `removeAllBorders`.
47
+ ## Notes
48
+
49
+ - Border logic is **responsive-aware**: right borders are hidden on mobile (single column) and shown on desktop only where appropriate
50
+ - When **all items** share `noBackground` or `removeAllBorders`, the outer `Card` container is also updated to match, avoiding visual inconsistencies
51
+ - `content` accepts any `React.ReactNode`, making cards fully composable for marketing pages, feature showcases, or dashboard layouts
@@ -0,0 +1,48 @@
1
+ <!-- source-hash: de46e328067be52e6b8316046dcf529b -->
2
+ A client-side React component that renders a styled vertical list of feature items, each with an icon, title, and description.
3
+
4
+ ## Key Components
5
+
6
+ ### Interfaces
7
+ - **`FeatureListItemData`** — Shape of each list item: `icon` (ReactNode), `title` (string), `description` (string)
8
+ - **`FeatureListProps`** — Component props: `items` array, optional `className`, optional `iconBoxSize` (default: `72`)
9
+
10
+ ### Component
11
+ - **`FeatureList`** — Renders a bordered card list where each row displays a square icon box alongside a title and description. Dividers are automatically added between items.
12
+
13
+ ## Usage Example
14
+
15
+ ```typescript
16
+ import { FeatureList, FeatureListItemData } from './feature-list';
17
+ import { ShieldIcon, ZapIcon, CloudIcon } from 'lucide-react';
18
+
19
+ const features: FeatureListItemData[] = [
20
+ {
21
+ icon: <ShieldIcon size={32} />,
22
+ title: 'Secure by Default',
23
+ description: 'All connections are encrypted end-to-end.',
24
+ },
25
+ {
26
+ icon: <ZapIcon size={32} />,
27
+ title: 'Lightning Fast',
28
+ description: 'Sub-100ms response times across all regions.',
29
+ },
30
+ {
31
+ icon: <CloudIcon size={32} />,
32
+ title: 'Cloud Native',
33
+ description: 'Built for scalable, distributed infrastructure.',
34
+ },
35
+ ];
36
+
37
+ export default function Page() {
38
+ return (
39
+ <FeatureList
40
+ items={features}
41
+ iconBoxSize={64}
42
+ className="max-w-xl"
43
+ />
44
+ );
45
+ }
46
+ ```
47
+
48
+ > **Note:** The `iconBoxSize` prop controls both width and height of the icon container in pixels. Icon content is not automatically sized — size your icon element to fit within the box.
@@ -0,0 +1,47 @@
1
+ <!-- source-hash: 0d873ee81fa30b5916e604a92d4925d2 -->
2
+ A layout wrapper component that provides consistent label and error message chrome for form fields, with reserved space to prevent layout shifts.
3
+
4
+ ## Key Components
5
+
6
+ ### `FieldWrapper`
7
+ A `forwardRef` component that wraps form field children with optional label and error/warning message display.
8
+
9
+ ### `FieldWrapperProps`
10
+ | Prop | Type | Default | Description |
11
+ |------|------|---------|-------------|
12
+ | `label` | `string` | — | Label text rendered above the field |
13
+ | `error` | `string` | — | Error message rendered below the field |
14
+ | `errorVariant` | `"error" \| "warning"` | `"error"` | Controls error text color (red vs yellow) |
15
+ | `className` | `string` | — | Additional classes for the outer wrapper |
16
+ | `children` | `React.ReactNode` | — | The form field element(s) |
17
+
18
+ ### Behavior Notes
19
+ - When neither `label` nor `error` is provided, the wrapper renders as `contents` (no extra DOM box).
20
+ - The error message is absolutely positioned (`translate-y-full`) below the field, preventing layout shifts in the surrounding form.
21
+ - Long error messages are `truncate`d with the full text accessible via the `title` attribute.
22
+
23
+ ## Usage Example
24
+
25
+ ```typescript
26
+ import { FieldWrapper } from "./field-wrapper"
27
+ import { TextInput } from "./text-input"
28
+
29
+ // Standard field with label and error
30
+ <FieldWrapper label="Email address" error="Invalid email format">
31
+ <TextInput type="email" value={email} onChange={handleChange} />
32
+ </FieldWrapper>
33
+
34
+ // Warning variant
35
+ <FieldWrapper
36
+ label="Username"
37
+ error="Username is already taken"
38
+ errorVariant="warning"
39
+ >
40
+ <TextInput value={username} onChange={handleChange} />
41
+ </FieldWrapper>
42
+
43
+ // No chrome — wrapper renders as contents
44
+ <FieldWrapper>
45
+ <TextInput placeholder="Search..." />
46
+ </FieldWrapper>
47
+ ```
@@ -0,0 +1,42 @@
1
+ <!-- source-hash: cf353b09cad830f836030fb8046e62bc -->
2
+ A flexible React dropzone component supporting both simple file selection and async managed upload workflows, with drag-and-drop, validation, and file list rendering.
3
+
4
+ ## Key Components
5
+
6
+ ### Interfaces
7
+ - **`ManagedFileEntry`** — Represents an async-uploaded file with `id`, `fileName`, `fileSize`, `status` (`uploading` | `uploaded` | `error`), and optional `error` message
8
+ - **`FileUploadProps`** — Full prop interface supporting both simple (`value`/`onChange`) and managed (`managedFiles`/`onRemoveManagedFile`) modes
9
+
10
+ ### Helpers
11
+ - **`formatFileSize(bytes)`** — Converts bytes to human-readable string (B, KB, MB, GB)
12
+ - **`matchesAccept(file, accept)`** — Validates a file against an accept string (MIME types, extensions, wildcards)
13
+ - **`dragHasFiles(e)`** — Detects if a native drag event carries file data
14
+
15
+ ### Component
16
+ - **`FileUpload`** — Main export; renders a dropzone button (when empty) or file list (when files exist), with optional window-level drop capture via `acceptWindowDrops`
17
+
18
+ ## Usage Example
19
+
20
+ ```typescript
21
+ // Simple single-file mode
22
+ <FileUpload
23
+ value={file}
24
+ onChange={(f) => setFile(f as File)}
25
+ accept="image/*"
26
+ maxSize={5 * 1024 * 1024}
27
+ fieldLabel="Profile Photo"
28
+ />
29
+
30
+ // Async managed upload mode
31
+ <FileUpload
32
+ onChange={(files) => uploadToS3(files as File[])}
33
+ managedFiles={managedFiles}
34
+ onRemoveManagedFile={(id) => removeManagedFile(id)}
35
+ multiple
36
+ maxFiles={5}
37
+ acceptWindowDrops
38
+ label="Drop attachments here"
39
+ />
40
+ ```
41
+
42
+ > **Tip:** Use `managedFiles` + `onRemoveManagedFile` for presigned URL or background upload flows where upload status (`uploading` | `uploaded` | `error`) needs to be reflected in the UI. Use plain `value`/`onChange` for synchronous or form-controlled scenarios.
@@ -0,0 +1,43 @@
1
+ <!-- source-hash: 80c3e1ef5a8303ea358c8f94bbacb69d -->
2
+ A client-side checkbox item component for filter lists, built on Radix UI's Checkbox primitive with optional count display and ODS design tokens.
3
+
4
+ ## Key Components
5
+
6
+ ### `FilterCheckboxItemProps`
7
+ | Prop | Type | Description |
8
+ |------|------|-------------|
9
+ | `label` | `string` | Display text for the checkbox item |
10
+ | `checked` | `boolean` | Controlled checked state |
11
+ | `onChange` | `(checked: boolean) => void` | Callback fired on toggle |
12
+ | `count` | `number` (optional) | Item count displayed on the right |
13
+ | `className` | `string` (optional) | Additional CSS classes |
14
+
15
+ ### `FilterCheckboxItem`
16
+ A styled, accessible checkbox row that supports full-row click toggling. When `count` is provided, padding adjusts and the count renders as secondary text on the trailing edge.
17
+
18
+ ## Usage Example
19
+
20
+ ```typescript
21
+ import { FilterCheckboxItem } from "./filter-checkbox-item"
22
+ import { useState } from "react"
23
+
24
+ function FilterPanel() {
25
+ const [active, setActive] = useState(false)
26
+
27
+ return (
28
+ <FilterCheckboxItem
29
+ label="Active Tickets"
30
+ checked={active}
31
+ onChange={setActive}
32
+ count={42}
33
+ />
34
+ )
35
+ }
36
+ ```
37
+
38
+ ## Notes
39
+
40
+ - Clicking anywhere on the row toggles the checkbox; the Radix `Root` has `stopPropagation` to avoid double-firing.
41
+ - The checkmark icon renders only when `checked` is `true` via Radix's `Indicator`.
42
+ - Count values are formatted with `toLocaleString()` for locale-aware number display.
43
+ - Styled with ODS design tokens (`ods-accent`, `ods-card`, `ods-border`, etc.) for consistency across the Flamingo UI.
@@ -0,0 +1,57 @@
1
+ <!-- source-hash: 266230e3eb0a6c70e91f5bde060a9529 -->
2
+ A accessible, interactive filter list UI component built with Radix UI checkboxes, supporting both single and multi-select modes with keyboard navigation.
3
+
4
+ ## Key Components
5
+
6
+ ### `FilterListItem`
7
+ A single selectable row with a title, optional metadata badges, and a Radix UI checkbox. Supports keyboard interaction (`Enter`/`Space`), disabled state, and selected highlighting using ODS design tokens.
8
+
9
+ **Props (`FilterListItemProps`):**
10
+
11
+ | Prop | Type | Description |
12
+ |------|------|-------------|
13
+ | `title` | `string` | Display label for the item |
14
+ | `meta` | `Array<string \| number>` | Optional bullet-separated metadata |
15
+ | `selected` | `boolean` | Whether the item is checked |
16
+ | `onToggle` | `(selected: boolean) => void` | Callback on selection change |
17
+ | `disabled` | `boolean` | Disables interaction |
18
+ | `className` | `string` | Additional CSS classes |
19
+
20
+ ### `FilterList<T>`
21
+ A container that manages a collection of `FilterListItem` entries with controlled selection state. Supports generic item `data` typing for strongly-typed payloads.
22
+
23
+ **Props (`FilterListProps<T>`):**
24
+
25
+ | Prop | Type | Description |
26
+ |------|------|-------------|
27
+ | `items` | `Array<{ id, title, meta?, disabled?, data? }>` | List of items to render |
28
+ | `selectedIds` | `string[]` | Currently selected item IDs |
29
+ | `onChange` | `(selectedIds: string[]) => void` | Fires when selection changes |
30
+ | `multiple` | `boolean` | Enables multi-select (default: `true`) |
31
+
32
+ ## Usage Example
33
+
34
+ ```typescript
35
+ import { FilterList } from "@/components/filter-list"
36
+
37
+ const items = [
38
+ { id: "win", title: "Windows", meta: ["Workstation", 42] },
39
+ { id: "mac", title: "macOS", meta: ["Laptop", 18] },
40
+ { id: "linux", title: "Linux", meta: ["Server", 7], disabled: true },
41
+ ]
42
+
43
+ function DeviceFilter() {
44
+ const [selected, setSelected] = React.useState<string[]>(["win"])
45
+
46
+ return (
47
+ <FilterList
48
+ items={items}
49
+ selectedIds={selected}
50
+ onChange={setSelected}
51
+ multiple={true}
52
+ />
53
+ )
54
+ }
55
+ ```
56
+
57
+ > For single-select mode (e.g. priority filters), set `multiple={false}` — selecting a new item automatically deselects the previous one.
@@ -0,0 +1,59 @@
1
+ <!-- source-hash: 0a032d083c46e509f8e9dcfa0550baef -->
2
+ A modal dialog component for sorting and filtering table data, combining checkbox filter groups, column sorting, and tag key-value filters into a unified UI with loading and empty states.
3
+
4
+ ## Key Components
5
+
6
+ ### `FilterModal`
7
+ Main exported component that renders a `ModalV2`-based dialog with three content sections and footer action buttons.
8
+
9
+ ### Exported Types
10
+
11
+ | Type | Description |
12
+ |------|-------------|
13
+ | `FilterModalOption` | Single filter option with `id`, `label`, and optional `count` |
14
+ | `FilterGroup` | Named group of `FilterModalOption` items |
15
+ | `FilterModalProps` | Full props interface for `FilterModal` |
16
+ | `SortConfig`, `SortDirection`, `SortableColumn` | Re-exported from `sort-column-item` |
17
+ | `TagKeyConfig`, `TagValueOption` | Re-exported from `tag-key-value-filter` |
18
+
19
+ ### Internal Behavior
20
+ - **Local state** (`selectedFilters`, `pendingTags`) buffers user selections until **Apply** is clicked
21
+ - **Reset** clears all filters and tags immediately via `onFilterChange({})` and `onTagsChange?.([])`
22
+ - **Sync on open** — `useEffect` resets local state to `currentFilters`/`selectedTags` whenever the modal opens
23
+ - **Empty state** renders when no sort columns, filter groups, or tag filters are present
24
+ - **Loading state** renders skeleton placeholders when `isLoading` is `true`
25
+
26
+ ## Usage Example
27
+
28
+ ```typescript
29
+ const [filters, setFilters] = useState<TableFilters>({})
30
+ const [tags, setTags] = useState<string[]>([])
31
+
32
+ <FilterModal
33
+ isOpen={isModalOpen}
34
+ onClose={() => setIsModalOpen(false)}
35
+ filterGroups={[
36
+ {
37
+ id: 'status',
38
+ title: 'Status',
39
+ options: [
40
+ { id: 'active', label: 'Active', count: 12 },
41
+ { id: 'inactive', label: 'Inactive', count: 4 },
42
+ ],
43
+ },
44
+ ]}
45
+ sortConfig={{
46
+ title: 'Sort By',
47
+ sortBy: 'name',
48
+ sortDirection: 'asc',
49
+ columns: [{ key: 'name', label: 'Name' }],
50
+ }}
51
+ onSort={(column, direction) => console.log(column, direction)}
52
+ onFilterChange={setFilters}
53
+ currentFilters={filters}
54
+ tagFilterKeys={[{ key: 'env', label: 'Environment', values: [] }]}
55
+ selectedTags={tags}
56
+ onTagsChange={setTags}
57
+ isLoading={false}
58
+ />
59
+ ```
@@ -1,41 +1,58 @@
1
- <!-- source-hash: 6febb7684f7f7010464b400f32e9e44b -->
2
- A floating tooltip component built with Floating UI that provides precise positioning, color markup support, and ODS design system styling.
1
+ <!-- source-hash: c7355b336531eeee83c49994040e5cbf -->
2
+ A floating tooltip component built with `@floating-ui/react` that supports smart positioning, directional arrows, and inline color markup parsing.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **FloatingTooltip**: Main component that renders a floating tooltip with customizable positioning and styling
7
- - **parseColoredText**: Utility function that converts color markup syntax `[COLOR]text[/COLOR]` into styled JSX elements
8
- - **FloatingTooltipProps**: TypeScript interface defining component props including content, positioning, and styling options
6
+ ### `FloatingTooltip`
7
+ The main exported component. Renders a portal-based tooltip with:
8
+ - **Auto-positioning** via `flip`, `shift`, and `offset` middleware avoids viewport clipping
9
+ - **Arrow indicator** that dynamically repositions based on the resolved placement
10
+ - **Hover interaction** with configurable open delay and safe polygon close detection
11
+ - **`disabled` prop** — suppresses tooltip without unmounting the trigger wrapper
12
+
13
+ ### `parseColoredText` (internal)
14
+ Parses `[COLOR]text[/COLOR]` markup within string content and maps it to ODS CSS classes:
15
+
16
+ | Tag | Tailwind Class |
17
+ |-----|----------------|
18
+ | `[YELLOW]` | `text-ods-accent` |
19
+ | `[GREEN]` | `text-ods-success` |
20
+ | `[RED]` | `text-ods-error` |
21
+ | `[BLUE]` / `[CYAN]` | `text-ods-info` |
22
+ | `[PINK]` | `text-ods-accent` |
23
+
24
+ ### `FloatingTooltipProps`
25
+
26
+ | Prop | Type | Default | Description |
27
+ |------|------|---------|-------------|
28
+ | `content` | `React.ReactNode` | — | Tooltip body; strings support color markup |
29
+ | `children` | `React.ReactNode` | — | Trigger element |
30
+ | `side` | `"top" \| "right" \| "bottom" \| "left"` | `"right"` | Preferred placement |
31
+ | `delayDuration` | `number` | `0` | Open delay in ms |
32
+ | `disabled` | `boolean` | `false` | Suppresses tooltip |
33
+ | `className` | `string` | — | Extra classes on the tooltip panel |
9
34
 
10
35
  ## Usage Example
11
36
 
12
37
  ```typescript
13
- import { FloatingTooltip } from './components/ui/floating-tooltip'
38
+ import { FloatingTooltip } from "./floating-tooltip"
14
39
 
15
- // Basic tooltip
16
- <FloatingTooltip content="This is a helpful tooltip" side="top">
17
- <button>Hover me</button>
40
+ // Basic usage
41
+ <FloatingTooltip content="Save changes">
42
+ <button>Save</button>
18
43
  </FloatingTooltip>
19
44
 
20
- // Tooltip with colored text markup
21
- <FloatingTooltip
22
- content="Status: [GREEN]Active[/GREEN] | [YELLOW]Warning[/YELLOW]"
23
- side="right"
45
+ // With color markup and delay
46
+ <FloatingTooltip
47
+ content="Status: [GREEN]Online[/GREEN] [YELLOW]1 warning[/YELLOW]"
48
+ side="top"
24
49
  delayDuration={300}
25
50
  >
26
- <div className="status-indicator">
27
- Status Icon
28
- </div>
51
+ <span>Hover me</span>
29
52
  </FloatingTooltip>
30
53
 
31
- // Custom styled tooltip
32
- <FloatingTooltip
33
- content="Custom tooltip content"
34
- className="bg-red-100 border-red-300"
35
- side="bottom"
36
- >
37
- <span>Custom Element</span>
54
+ // Disabled (wrapper renders, tooltip suppressed)
55
+ <FloatingTooltip content="Hidden tip" disabled>
56
+ <button>No tooltip</button>
38
57
  </FloatingTooltip>
39
- ```
40
-
41
- The component supports color markup (`[YELLOW]`, `[GREEN]`, `[RED]`, `[BLUE]`, `[PINK]`, `[CYAN]`) that maps to ODS design system color classes, includes an arrow pointer, and handles positioning automatically with collision detection and fallback positioning.
58
+ ```
@@ -0,0 +1,49 @@
1
+ <!-- source-hash: cc1ede727d1bab8a8e8ff3b969595614 -->
2
+ A floating popup component that displays a list of hidden tag items with optional remove functionality, typically used in multi-select inputs when tags overflow the visible area.
3
+
4
+ ## Key Components
5
+
6
+ ### Interfaces
7
+
8
+ | Interface | Description |
9
+ |-----------|-------------|
10
+ | `HiddenTagItem` | Defines a tag item with a `label` (ReactNode) and `value` (unknown) |
11
+ | `HiddenTagsPopupProps` | Props for the popup including `items`, `onRemove`, `disabled`, `className`, and `style` |
12
+
13
+ ### Exports
14
+
15
+ - **`HiddenTagsPopup`** — A `forwardRef` component rendering an absolutely-positioned dropdown card listing overflow tags. Each item shows a truncated uppercase label and an optional remove button (`XmarkCircleIcon`) when `onRemove` is provided and `disabled` is false.
16
+
17
+ ## Usage Example
18
+
19
+ ```typescript
20
+ import { HiddenTagsPopup, HiddenTagItem } from "./hidden-tags-popup"
21
+
22
+ const overflowTags: HiddenTagItem[] = [
23
+ { label: "Engineering", value: "engineering" },
24
+ { label: "Design", value: "design" },
25
+ ]
26
+
27
+ function TagSelector() {
28
+ const handleRemove = (value: unknown) => {
29
+ console.log("Remove tag:", value)
30
+ }
31
+
32
+ return (
33
+ <div style={{ position: "relative" }}>
34
+ <HiddenTagsPopup
35
+ items={overflowTags}
36
+ onRemove={handleRemove}
37
+ disabled={false}
38
+ />
39
+ </div>
40
+ )
41
+ }
42
+ ```
43
+
44
+ ## Notes
45
+
46
+ - Renders with `z-50` and `top-full` positioning — expects a relatively-positioned parent container.
47
+ - Includes entrance animation via `animate-in fade-in-0 zoom-in-95`.
48
+ - Remove button uses `e.stopPropagation()` to prevent unintended parent click events.
49
+ - Accessible via `aria-label` on each remove button.
@@ -0,0 +1,54 @@
1
+ <!-- source-hash: eee1f55a6c5cf2349c0897b18c2dfcf1 -->
2
+ A reusable hover-triggered dropdown component that displays a list of clickable items. Uses fixed positioning via `getBoundingClientRect` to render correctly inside overflow-hidden containers like modals and sheets.
3
+
4
+ ## Key Components
5
+
6
+ ### Interfaces
7
+
8
+ | Export | Description |
9
+ |--------|-------------|
10
+ | `HoverDropdownItem` | Defines each row: `label`, optional `icon`, `href`, `onClick`, `targetPlatform`, `path`, and an independent `secondaryAction` button |
11
+ | `HoverDropdownRenderAnchorArgs` | Arguments passed to the `renderAnchor` slot for custom link routing |
12
+ | `HoverDropdownProps` | Component props: `items`, `side`, `hideDelay`, `className`, `renderAnchor` |
13
+
14
+ ### Component
15
+
16
+ **`HoverDropdown`** — Main export. Wraps any trigger element and shows a positioned dropdown on hover (or tap). Each row supports three render modes:
17
+ - **Link row** — rendered via `renderAnchor` (defaults to plain `<a>`)
18
+ - **Button row** — rendered as `<button>` when `onClick` is provided
19
+ - **Non-interactive row** — rendered as `<span>` when neither `href` nor `onClick` is present (useful when only a `secondaryAction` applies)
20
+
21
+ The dropdown auto-positions right → left → above/below based on available viewport space.
22
+
23
+ ## Usage Example
24
+
25
+ ```typescript
26
+ // Basic usage
27
+ <HoverDropdown items={[{ label: 'Blog Post', href: '/blog/1' }]}>
28
+ <span>Blog Posts (3)</span>
29
+ </HoverDropdown>
30
+
31
+ // With custom anchor renderer (e.g., chat runtime routing)
32
+ <HoverDropdown
33
+ items={[
34
+ {
35
+ label: 'Design Doc',
36
+ href: '/docs/design',
37
+ path: 'docs/design',
38
+ targetPlatform: 'markdown',
39
+ secondaryAction: {
40
+ icon: <AskIcon />,
41
+ label: 'Ask about this',
42
+ onClick: () => handleAsk('design'),
43
+ },
44
+ },
45
+ ]}
46
+ renderAnchor={({ href, className, children }) => (
47
+ <NavLinkAnchorViaRuntime href={href} className={className}>
48
+ {children}
49
+ </NavLinkAnchorViaRuntime>
50
+ )}
51
+ >
52
+ <Chip>Documents</Chip>
53
+ </HoverDropdown>
54
+ ```