@flamingo-stack/openframe-frontend-core 0.0.481 → 0.0.482

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 (838) hide show
  1. package/dist/{chunk-H6DFCF44.cjs → chunk-22AED5IC.cjs} +82 -82
  2. package/dist/{chunk-H6DFCF44.cjs.map → chunk-22AED5IC.cjs.map} +1 -1
  3. package/dist/{chunk-MGKCS6KS.js → chunk-3WCARCI4.js} +2 -2
  4. package/dist/{chunk-LNKWY74S.cjs → chunk-4HL6UENH.cjs} +5 -5
  5. package/dist/{chunk-LNKWY74S.cjs.map → chunk-4HL6UENH.cjs.map} +1 -1
  6. package/dist/{chunk-Y3Y2DLNO.js → chunk-6UGYBCEN.js} +3 -3
  7. package/dist/{chunk-BBUEY73L.js → chunk-7I5B5PQ4.js} +6269 -5339
  8. package/dist/chunk-7I5B5PQ4.js.map +1 -0
  9. package/dist/{chunk-PSPWT2Q5.js → chunk-7LWXWXEY.js} +4 -4
  10. package/dist/{chunk-M7O74OWG.cjs → chunk-ACOU5YJI.cjs} +31 -31
  11. package/dist/{chunk-M7O74OWG.cjs.map → chunk-ACOU5YJI.cjs.map} +1 -1
  12. package/dist/{chunk-INDFIVDV.cjs → chunk-AHGSN4AT.cjs} +12 -12
  13. package/dist/{chunk-INDFIVDV.cjs.map → chunk-AHGSN4AT.cjs.map} +1 -1
  14. package/dist/{chunk-VTSRDC4W.js → chunk-CKC3EAYT.js} +2 -2
  15. package/dist/{chunk-SASR7SK5.js → chunk-GZK7FWJJ.js} +20 -4
  16. package/dist/chunk-GZK7FWJJ.js.map +1 -0
  17. package/dist/{chunk-ZRANZNEA.js → chunk-JJE5TUZK.js} +2 -2
  18. package/dist/{chunk-66BNAFO6.js → chunk-JQIUBFHL.js} +4 -4
  19. package/dist/{chunk-MMCBQJKE.cjs → chunk-KUBJHB6I.cjs} +11 -11
  20. package/dist/{chunk-MMCBQJKE.cjs.map → chunk-KUBJHB6I.cjs.map} +1 -1
  21. package/dist/{chunk-ZV6E3U3C.cjs → chunk-MRGTMMJ3.cjs} +30 -30
  22. package/dist/{chunk-ZV6E3U3C.cjs.map → chunk-MRGTMMJ3.cjs.map} +1 -1
  23. package/dist/{chunk-OZJN54R5.cjs → chunk-NWVKG7QC.cjs} +37 -37
  24. package/dist/{chunk-OZJN54R5.cjs.map → chunk-NWVKG7QC.cjs.map} +1 -1
  25. package/dist/{chunk-AN47EIIJ.cjs → chunk-PHTSSHIQ.cjs} +59 -59
  26. package/dist/{chunk-AN47EIIJ.cjs.map → chunk-PHTSSHIQ.cjs.map} +1 -1
  27. package/dist/{chunk-N2JZ33V7.cjs → chunk-RUA3OXSJ.cjs} +26 -26
  28. package/dist/{chunk-N2JZ33V7.cjs.map → chunk-RUA3OXSJ.cjs.map} +1 -1
  29. package/dist/{chunk-LK623WCC.cjs → chunk-RZPF7MJ2.cjs} +9 -9
  30. package/dist/{chunk-LK623WCC.cjs.map → chunk-RZPF7MJ2.cjs.map} +1 -1
  31. package/dist/{chunk-G3UN2DXU.cjs → chunk-STYA77PH.cjs} +20 -4
  32. package/dist/chunk-STYA77PH.cjs.map +1 -0
  33. package/dist/{chunk-JUJY3HQS.cjs → chunk-U37UTLP7.cjs} +19 -19
  34. package/dist/{chunk-JUJY3HQS.cjs.map → chunk-U37UTLP7.cjs.map} +1 -1
  35. package/dist/{chunk-2DIOV7BR.js → chunk-UPN6EFOM.js} +4 -4
  36. package/dist/{chunk-OWMLWJQY.cjs → chunk-VPVOJD5X.cjs} +2432 -1502
  37. package/dist/chunk-VPVOJD5X.cjs.map +1 -0
  38. package/dist/{chunk-4SMRQ4SN.js → chunk-WBL5Y4PS.js} +3 -3
  39. package/dist/{chunk-FP4H6Y5O.js → chunk-WPYPSIY2.js} +3 -3
  40. package/dist/{chunk-R5WJJL4V.js → chunk-X5X43HFV.js} +5 -5
  41. package/dist/{chunk-DEHZ5CTC.js → chunk-XTWKDMCG.js} +2 -2
  42. package/dist/components/case-studies/index.cjs +9 -9
  43. package/dist/components/case-studies/index.js +3 -3
  44. package/dist/components/chat/index.cjs +3 -3
  45. package/dist/components/chat/index.js +2 -2
  46. package/dist/components/contact/index.cjs +4 -4
  47. package/dist/components/contact/index.js +3 -3
  48. package/dist/components/docs/index.cjs +6 -6
  49. package/dist/components/docs/index.js +5 -5
  50. package/dist/components/embeds/index.cjs +4 -4
  51. package/dist/components/embeds/index.js +3 -3
  52. package/dist/components/faq/index.cjs +4 -4
  53. package/dist/components/faq/index.js +3 -3
  54. package/dist/components/features/captions-url.cjs +12 -0
  55. package/dist/components/features/captions-url.cjs.map +1 -0
  56. package/dist/components/features/captions-url.js +10 -0
  57. package/dist/components/features/captions-url.js.map +1 -0
  58. package/dist/components/features/card-hit-layer.d.ts +40 -0
  59. package/dist/components/features/card-hit-layer.d.ts.map +1 -0
  60. package/dist/components/features/floating-walkthrough-video.d.ts +71 -0
  61. package/dist/components/features/floating-walkthrough-video.d.ts.map +1 -0
  62. package/dist/components/features/index.cjs +11 -3
  63. package/dist/components/features/index.cjs.map +1 -1
  64. package/dist/components/features/index.d.ts +4 -0
  65. package/dist/components/features/index.d.ts.map +1 -1
  66. package/dist/components/features/index.js +12 -4
  67. package/dist/components/features/use-walkthrough-video.d.ts +16 -0
  68. package/dist/components/features/use-walkthrough-video.d.ts.map +1 -0
  69. package/dist/components/features/video-bites-strip.d.ts.map +1 -1
  70. package/dist/components/features/video-center-badge.d.ts.map +1 -1
  71. package/dist/components/features/video-hover-preview.d.ts +68 -0
  72. package/dist/components/features/video-hover-preview.d.ts.map +1 -0
  73. package/dist/components/features/video.d.ts +78 -40
  74. package/dist/components/features/video.d.ts.map +1 -1
  75. package/dist/components/form.d.ts +0 -1
  76. package/dist/components/form.d.ts.map +1 -1
  77. package/dist/components/help-center-pages/index.cjs +21 -21
  78. package/dist/components/help-center-pages/index.js +12 -12
  79. package/dist/components/index.cjs +163 -155
  80. package/dist/components/index.cjs.map +1 -1
  81. package/dist/components/index.js +18 -10
  82. package/dist/components/index.js.map +1 -1
  83. package/dist/components/navigation/index.cjs +3 -3
  84. package/dist/components/navigation/index.js +2 -2
  85. package/dist/components/onboarding-guides/index.cjs +6 -6
  86. package/dist/components/onboarding-guides/index.js +5 -5
  87. package/dist/components/related-content/index.cjs +4 -4
  88. package/dist/components/related-content/index.js +3 -3
  89. package/dist/components/tickets/index.cjs +6 -6
  90. package/dist/components/tickets/index.js +5 -5
  91. package/dist/components/ui/button/button-styles.d.ts +2 -0
  92. package/dist/components/ui/button/button-styles.d.ts.map +1 -1
  93. package/dist/components/ui/button/button.d.ts +2 -2
  94. package/dist/components/ui/button/button.d.ts.map +1 -1
  95. package/dist/components/ui/file-manager/index.cjs +50 -50
  96. package/dist/components/ui/file-manager/index.js +1 -1
  97. package/dist/components/ui/index.cjs +3 -3
  98. package/dist/components/ui/index.js +2 -2
  99. package/dist/components/ui/page-actions.d.ts +2 -1
  100. package/dist/components/ui/page-actions.d.ts.map +1 -1
  101. package/dist/index.cjs +27 -3
  102. package/dist/index.cjs.map +1 -1
  103. package/dist/index.js +28 -4
  104. package/dist/types/supabase.d.ts +80 -0
  105. package/dist/types/supabase.d.ts.map +1 -1
  106. package/dist/types/video-processing.d.ts +1 -1
  107. package/dist/types/video-processing.d.ts.map +1 -1
  108. package/dist/utils/announcement-storage.d.ts +1 -1
  109. package/dist/utils/announcement-storage.d.ts.map +1 -1
  110. package/dist/utils/dismiss-cookie.d.ts +27 -0
  111. package/dist/utils/dismiss-cookie.d.ts.map +1 -0
  112. package/dist/utils/dismissal-storage.d.ts +19 -0
  113. package/dist/utils/dismissal-storage.d.ts.map +1 -0
  114. package/dist/utils/index.cjs +48 -10
  115. package/dist/utils/index.cjs.map +1 -1
  116. package/dist/utils/index.d.ts +2 -0
  117. package/dist/utils/index.d.ts.map +1 -1
  118. package/dist/utils/index.js +41 -11
  119. package/dist/utils/index.js.map +1 -1
  120. package/package.json +8 -2
  121. package/src/.index.md +39 -32
  122. package/src/.platform-domains.md +65 -0
  123. package/src/assets/.fae-avatar.md +33 -0
  124. package/src/assets/.index.md +15 -9
  125. package/src/components/.agent-mark.md +31 -0
  126. package/src/components/.announcement-bar.md +47 -35
  127. package/src/components/.calendar.md +19 -15
  128. package/src/components/.categories-cart.md +34 -30
  129. package/src/components/.category-card.md +33 -33
  130. package/src/components/.chart.md +38 -40
  131. package/src/components/.command.md +47 -23
  132. package/src/components/.comment-card.md +31 -26
  133. package/src/components/.content-loading-container.md +45 -20
  134. package/src/components/.context-menu.md +45 -31
  135. package/src/components/.date-time-picker.md +36 -30
  136. package/src/components/.empty-state.md +31 -31
  137. package/src/components/.faq-accordion.md +20 -30
  138. package/src/components/.filter-chip.md +36 -33
  139. package/src/components/.footer-waitlist-button.md +27 -21
  140. package/src/components/.footer.md +39 -24
  141. package/src/components/.form.md +32 -20
  142. package/src/components/.hero-image-uploader.md +35 -31
  143. package/src/components/.icon-display.md +53 -0
  144. package/src/components/.image-cropper.md +34 -33
  145. package/src/components/.index.md +25 -29
  146. package/src/components/.logs-list.md +27 -23
  147. package/src/components/.media-carousel.md +47 -26
  148. package/src/components/.metric-value.md +27 -24
  149. package/src/components/.msp-display.md +29 -23
  150. package/src/components/.open-source-features.md +23 -26
  151. package/src/components/.pagination.md +44 -39
  152. package/src/components/.persistent-filter-controls.md +61 -28
  153. package/src/components/.pricing-display.md +34 -33
  154. package/src/components/.results-count.md +33 -20
  155. package/src/components/.smooth-accordion.md +24 -20
  156. package/src/components/.social-icon-row.md +33 -21
  157. package/src/components/.sonner.md +40 -25
  158. package/src/components/.steps.md +39 -25
  159. package/src/components/.tool-icon.md +34 -21
  160. package/src/components/.unified-filter-logic.md +32 -36
  161. package/src/components/.user-display.md +33 -28
  162. package/src/components/.user-summary-stub.md +40 -33
  163. package/src/components/.vendor-display-button.md +17 -15
  164. package/src/components/.vendor-icon.md +17 -25
  165. package/src/components/.vendor-tag.md +39 -34
  166. package/src/components/.why-it-matters.md +15 -11
  167. package/src/components/.yes-no-display.md +36 -31
  168. package/src/components/authors/.author-detail-view.md +50 -0
  169. package/src/components/case-studies/.index.md +26 -0
  170. package/src/components/case-studies/.share-experience-section.md +45 -0
  171. package/src/components/chat/.approval-batch-message.md +48 -33
  172. package/src/components/chat/.approval-request-message.md +37 -26
  173. package/src/components/chat/.chat-archive-page.md +56 -0
  174. package/src/components/chat/.chat-attachment-bar.md +32 -40
  175. package/src/components/chat/.chat-composer.md +43 -0
  176. package/src/components/chat/.chat-container.md +41 -25
  177. package/src/components/chat/.chat-context-memory-bar.md +53 -0
  178. package/src/components/chat/.chat-context-picker.md +89 -0
  179. package/src/components/chat/.chat-header-icon-button.md +43 -0
  180. package/src/components/chat/.chat-header-search-field.md +51 -0
  181. package/src/components/chat/.chat-input.md +63 -30
  182. package/src/components/chat/.chat-list-empty-state.md +44 -0
  183. package/src/components/chat/.chat-message-enhanced.md +29 -31
  184. package/src/components/chat/.chat-message-list.md +34 -44
  185. package/src/components/chat/.chat-message-row.md +56 -0
  186. package/src/components/chat/.chat-message-skeleton.md +32 -26
  187. package/src/components/chat/.chat-panel-header-mobile.md +46 -0
  188. package/src/components/chat/.chat-panel-header.md +80 -0
  189. package/src/components/chat/.chat-sidebar-skeleton.md +31 -30
  190. package/src/components/chat/.chat-sidebar.md +36 -29
  191. package/src/components/chat/.chat-ticket-list.md +38 -23
  192. package/src/components/chat/.chat-typing-indicator.md +37 -19
  193. package/src/components/chat/.context-compaction-display.md +19 -15
  194. package/src/components/chat/.context-items-list.md +57 -0
  195. package/src/components/chat/.embeddable-chat.md +57 -66
  196. package/src/components/chat/.error-message-display.md +40 -22
  197. package/src/components/chat/.guide-mode-banner.md +41 -0
  198. package/src/components/chat/.guide-welcome.md +43 -0
  199. package/src/components/chat/.index.md +26 -21
  200. package/src/components/chat/.mingo-chat-history.md +63 -0
  201. package/src/components/chat/.mingo-chat-modals.md +44 -0
  202. package/src/components/chat/.mingo-history-rail.md +63 -0
  203. package/src/components/chat/.mingo-info-card.md +59 -0
  204. package/src/components/chat/.mingo-onboarding-card.md +21 -27
  205. package/src/components/chat/.mingo-welcome.md +60 -0
  206. package/src/components/chat/.model-display.md +33 -25
  207. package/src/components/chat/.msp-organization-card-skeleton.md +44 -0
  208. package/src/components/chat/.msp-organization-card.md +51 -0
  209. package/src/components/chat/.nav-link-anchor-via-runtime.md +36 -25
  210. package/src/components/chat/.quick-action-chip.md +60 -0
  211. package/src/components/chat/.quick-action-marquee.md +53 -0
  212. package/src/components/chat/.quick-action-wall.md +68 -0
  213. package/src/components/chat/.remark-mention-chips.md +41 -0
  214. package/src/components/chat/.slash-command-suggestions.md +30 -36
  215. package/src/components/chat/.source-action-button.md +28 -25
  216. package/src/components/chat/.tool-call-blocks.md +18 -30
  217. package/src/components/chat/.tool-execution-display.md +29 -34
  218. package/src/components/chat/entity-cards/.admin-content-card.md +29 -22
  219. package/src/components/chat/entity-cards/.blog-card.md +44 -33
  220. package/src/components/chat/entity-cards/.blog-image-placeholder.md +20 -18
  221. package/src/components/chat/entity-cards/.case-study-card.md +24 -33
  222. package/src/components/chat/entity-cards/.chat-ticket-item.md +39 -22
  223. package/src/components/chat/entity-cards/.customer-interview-card.md +29 -32
  224. package/src/components/chat/entity-cards/.data-room-doc-card.md +21 -22
  225. package/src/components/chat/entity-cards/.dispatch.md +41 -24
  226. package/src/components/chat/entity-cards/.entity-author-card.md +36 -33
  227. package/src/components/chat/entity-cards/.entity-portrait-card.md +47 -0
  228. package/src/components/chat/entity-cards/.generic-entity-card.md +26 -25
  229. package/src/components/chat/entity-cards/.github-activity-card.md +35 -41
  230. package/src/components/chat/entity-cards/.hubspot-ticket-card.md +22 -28
  231. package/src/components/chat/entity-cards/.index.md +33 -44
  232. package/src/components/chat/entity-cards/.investor-update-card.md +36 -25
  233. package/src/components/chat/entity-cards/.onboarding-guide-card.md +20 -29
  234. package/src/components/chat/entity-cards/.product-release-card-defaults.md +26 -19
  235. package/src/components/chat/entity-cards/.program-card.md +30 -33
  236. package/src/components/chat/entity-cards/.roadmap-card.md +40 -31
  237. package/src/components/chat/entity-cards/.roadmap-vote-button.md +33 -36
  238. package/src/components/chat/entity-cards/.slack-message-card.md +31 -32
  239. package/src/components/chat/entity-cards/.use-cover-image-fallback.md +47 -0
  240. package/src/components/chat/entity-cards/.use-entity-card-link.md +51 -0
  241. package/src/components/chat/entity-cards/.use-entity-card-placeholder.md +47 -0
  242. package/src/components/chat/entity-cards/.what-i-shipped-card.md +43 -0
  243. package/src/components/chat/hooks/.index.md +33 -30
  244. package/src/components/chat/hooks/.use-chat-card-item.md +30 -17
  245. package/src/components/chat/hooks/.use-chat-dialog-manager.md +59 -0
  246. package/src/components/chat/hooks/.use-chat-identity.md +37 -25
  247. package/src/components/chat/hooks/.use-chunk-catchup.md +53 -36
  248. package/src/components/chat/hooks/.use-empty-state-config.md +39 -0
  249. package/src/components/chat/hooks/.use-jetstream-dialog-subscription.md +65 -30
  250. package/src/components/chat/hooks/.use-nats-chat-adapter.md +55 -36
  251. package/src/components/chat/hooks/.use-nats-dialog-subscription.md +66 -50
  252. package/src/components/chat/hooks/.use-realtime-chunk-processor.md +58 -31
  253. package/src/components/chat/hooks/.use-scripted-stream.md +46 -0
  254. package/src/components/chat/hooks/.use-slash-commands.md +32 -25
  255. package/src/components/chat/hooks/.use-sse-chat-adapter.md +32 -21
  256. package/src/components/chat/hooks/.use-unified-chat.md +45 -35
  257. package/src/components/chat/types/.api.types.md +49 -41
  258. package/src/components/chat/types/.chat.types.md +56 -34
  259. package/src/components/chat/types/.component.types.md +36 -36
  260. package/src/components/chat/types/.context-item.types.md +61 -0
  261. package/src/components/chat/types/.index.md +32 -17
  262. package/src/components/chat/types/.message.types.md +44 -45
  263. package/src/components/chat/types/.network.types.md +46 -46
  264. package/src/components/chat/types/.processing.types.md +49 -37
  265. package/src/components/chat/types/.unified-chat-state.types.md +41 -26
  266. package/src/components/chat/types/entities/.content-ref.md +20 -31
  267. package/src/components/chat/types/entities/.investor-update.md +14 -16
  268. package/src/components/chat/types/entities/.onboarding-guide.md +35 -34
  269. package/src/components/chat/types/entities/.program-types.md +55 -43
  270. package/src/components/chat/utils/.chip-action-class.md +17 -19
  271. package/src/components/chat/utils/.chip-styles.md +18 -18
  272. package/src/components/chat/utils/.chunk-parser.md +48 -37
  273. package/src/components/chat/utils/.compact-card-classes.md +33 -35
  274. package/src/components/chat/utils/.execute-navigation.md +49 -0
  275. package/src/components/chat/utils/.extract-incomplete-message-state.md +9 -12
  276. package/src/components/chat/utils/.history-merge.md +65 -0
  277. package/src/components/chat/utils/.icon-library.md +33 -31
  278. package/src/components/chat/utils/.icon-registry.md +44 -0
  279. package/src/components/chat/utils/.index.md +37 -33
  280. package/src/components/chat/utils/.is-cross-origin-url.md +26 -22
  281. package/src/components/chat/utils/.message-segment-accumulator.md +46 -25
  282. package/src/components/chat/utils/.nav-anchor-props.md +29 -34
  283. package/src/components/chat/utils/.nav-click-handler.md +29 -33
  284. package/src/components/chat/utils/.process-historical-messages.md +29 -33
  285. package/src/components/chat/utils/.scripted-stream.md +52 -0
  286. package/src/components/chat/utils/.source-row-cta.md +32 -31
  287. package/src/components/chat/utils/.tool-call-helpers.md +25 -17
  288. package/src/components/contact/.contact-form.md +24 -19
  289. package/src/components/docs/.doc-navigation-context.md +49 -0
  290. package/src/components/docs/.doc-viewer.md +64 -0
  291. package/src/components/docs/.docs-hub-page.md +49 -0
  292. package/src/components/docs/.index.md +51 -0
  293. package/src/components/docs/.skeletons.md +47 -0
  294. package/src/components/docs/.use-docs-resolve-link.md +61 -0
  295. package/src/components/docs/.use-document-tree.md +83 -0
  296. package/src/components/docs/.use-scroll-spy.md +58 -0
  297. package/src/components/embeds/.embed-container.md +45 -0
  298. package/src/components/embeds/.embed-iframe.md +51 -0
  299. package/src/components/embeds/.figma-embed.md +43 -0
  300. package/src/components/embeds/.file-download-card.md +47 -0
  301. package/src/components/embeds/.google-sheets-viewer.md +40 -0
  302. package/src/components/embeds/.index.md +58 -0
  303. package/src/components/embeds/.linkedin-embed-client.md +50 -0
  304. package/src/components/embeds/.markdown-image.md +40 -0
  305. package/src/components/embeds/.og-link-preview.md +54 -0
  306. package/src/components/embeds/.pdf-viewer.md +43 -0
  307. package/src/components/embeds/.reddit-embed-client.md +40 -0
  308. package/src/components/embeds/.rich-markdown-runtime.md +53 -0
  309. package/src/components/embeds/.twitter-embed-client.md +44 -0
  310. package/src/components/faq/.faq-document-page.md +68 -0
  311. package/src/components/faq/.faq-section.md +55 -0
  312. package/src/components/faq/.index.md +29 -0
  313. package/src/components/faq/.json-ld.md +48 -0
  314. package/src/components/features/.array-entry-manager.md +32 -24
  315. package/src/components/features/.auth-providers-list.md +33 -32
  316. package/src/components/features/.captions-url.md +43 -0
  317. package/src/components/features/.cards-strip.md +48 -0
  318. package/src/components/features/.changelog-manager.md +17 -20
  319. package/src/components/features/.command-box.md +11 -16
  320. package/src/components/features/.entity-summary-editor.md +20 -15
  321. package/src/components/features/.entity-tag-badges.md +43 -0
  322. package/src/components/features/.entity-video-section.md +31 -41
  323. package/src/components/features/.figma-prototype-viewer.md +55 -37
  324. package/src/components/features/.filters-dropdown.md +14 -13
  325. package/src/components/features/.highlight-config-section.md +19 -16
  326. package/src/components/features/.highlight-video-combined-section.md +28 -19
  327. package/src/components/features/.highlight-video-preview.md +13 -11
  328. package/src/components/features/.highlight-video-section.md +26 -22
  329. package/src/components/features/.index.md +40 -36
  330. package/src/components/features/.media-gallery-manager.md +37 -35
  331. package/src/components/features/.mux-origins.md +46 -0
  332. package/src/components/features/.og-editor-preview.md +29 -24
  333. package/src/components/features/.os-type-badge-group.md +26 -18
  334. package/src/components/features/.os-type-badge.md +41 -24
  335. package/src/components/features/.paths-display.md +42 -25
  336. package/src/components/features/.platform-badge.md +26 -17
  337. package/src/components/features/.policy-configuration-panel.md +33 -31
  338. package/src/components/features/.provider-button.md +29 -20
  339. package/src/components/features/.push-button-selector.md +39 -41
  340. package/src/components/features/.release-media-manager.md +41 -34
  341. package/src/components/features/.section-selector.md +27 -16
  342. package/src/components/features/.select-button.md +21 -32
  343. package/src/components/features/.seo-editor-preview.md +49 -36
  344. package/src/components/features/.social-links-manager.md +40 -18
  345. package/src/components/features/.start-with-openframe-button.md +30 -32
  346. package/src/components/features/.status-filter-component.md +29 -38
  347. package/src/components/features/.tags-selector.md +25 -29
  348. package/src/components/features/.transcript-summary-editor.md +24 -18
  349. package/src/components/features/.use-video-warmup.md +47 -0
  350. package/src/components/features/.video-bites-display.md +36 -37
  351. package/src/components/features/.video-bites-shared.md +44 -0
  352. package/src/components/features/.video-bites-strip.md +63 -0
  353. package/src/components/features/.video-center-badge.md +38 -0
  354. package/src/components/features/.video-ratio-tabs.md +38 -31
  355. package/src/components/features/.video-source-selector.md +24 -27
  356. package/src/components/features/.video.md +35 -27
  357. package/src/components/features/.waitlist-form.md +39 -33
  358. package/src/components/features/.warning-block.md +53 -0
  359. package/src/components/features/ai-enrich/.AIEnrichSection.md +24 -25
  360. package/src/components/features/ai-enrich/.AIRequiredBadge.md +22 -21
  361. package/src/components/features/ai-enrich/.AIStatusIndicator.md +42 -35
  362. package/src/components/features/ai-enrich/.AIWarningsSection.md +23 -20
  363. package/src/components/features/ai-enrich/.ConfidenceBadge.md +35 -20
  364. package/src/components/features/auth/.auth-benefits-panel.md +48 -0
  365. package/src/components/features/auth/.auth-branding.md +51 -0
  366. package/src/components/features/auth/.auth-shell.md +51 -0
  367. package/src/components/features/auth/.back-to-login-link.md +48 -0
  368. package/src/components/features/auth/.complete-account-form.md +45 -0
  369. package/src/components/features/auth/.create-organization-form.md +53 -0
  370. package/src/components/features/auth/.index.md +48 -0
  371. package/src/components/features/auth/.invite-link-invalid-modal.md +42 -0
  372. package/src/components/features/auth/.login-form.md +42 -0
  373. package/src/components/features/auth/.openframe-sso-login-form.md +46 -0
  374. package/src/components/features/auth/.openframe-sso-signup-form.md +51 -0
  375. package/src/components/features/auth/.password-reset-form.md +57 -0
  376. package/src/components/features/auth/.sso-auth-shell.md +35 -0
  377. package/src/components/features/auth/.sso-providers.md +42 -0
  378. package/src/components/features/auth/.terms-agreement-label.md +28 -0
  379. package/src/components/features/board/.board-column-header.md +24 -18
  380. package/src/components/features/board/.board-column.md +32 -32
  381. package/src/components/features/board/.board-ticket-approval.md +42 -0
  382. package/src/components/features/board/.board.md +38 -38
  383. package/src/components/features/board/.index.md +35 -38
  384. package/src/components/features/board/.ticket-card.md +33 -36
  385. package/src/components/features/board/.types.md +38 -31
  386. package/src/components/features/card-hit-layer.tsx +84 -0
  387. package/src/components/features/floating-walkthrough-video.tsx +891 -0
  388. package/src/components/features/index.ts +4 -0
  389. package/src/components/features/notifications/.approval-request-notification-tile.md +45 -0
  390. package/src/components/features/notifications/.index.md +35 -31
  391. package/src/components/features/notifications/.notification-drawer.md +32 -19
  392. package/src/components/features/notifications/.notification-popups.md +51 -0
  393. package/src/components/features/notifications/.notification-tile.md +43 -27
  394. package/src/components/features/notifications/.notifications-context.md +42 -45
  395. package/src/components/features/notifications/.types.md +51 -31
  396. package/src/components/features/ticket-status-config-list/.ticket-status-config-list.md +51 -0
  397. package/src/components/features/time-tracker/.index.md +48 -0
  398. package/src/components/features/time-tracker/.time-tracker-context.md +55 -0
  399. package/src/components/features/time-tracker/.time-tracker-header-button.md +51 -0
  400. package/src/components/features/time-tracker/.time-tracker-panel.md +58 -0
  401. package/src/components/features/time-tracker/.types.md +51 -0
  402. package/src/components/features/time-tracker/.use-tracker-clock.md +32 -0
  403. package/src/components/features/use-walkthrough-video.ts +70 -0
  404. package/src/components/features/video-bites-strip.tsx +46 -146
  405. package/src/components/features/video-center-badge.tsx +11 -2
  406. package/src/components/features/video-hover-preview.tsx +201 -0
  407. package/src/components/features/video.tsx +368 -73
  408. package/src/components/help-center-pages/.delivery-page.md +51 -0
  409. package/src/components/help-center-pages/.index.md +51 -0
  410. package/src/components/help-center-pages/.onboarding-guides-catalog-page.md +53 -0
  411. package/src/components/help-center-pages/.product-releases-list-page.md +51 -0
  412. package/src/components/help-center-pages/.roadmap-page.md +46 -0
  413. package/src/components/icons/.figma-icon.md +13 -7
  414. package/src/components/icons/.index.md +26 -22
  415. package/src/components/icons/.vendor-directory-icon.md +30 -18
  416. package/src/components/icons/.x-logo.md +26 -10
  417. package/src/components/icons-v2-generated/.index.md +30 -41
  418. package/src/components/icons-v2-generated/brand-logos/.index.md +25 -19
  419. package/src/components/icons-v2-generated/communication/.index.md +26 -30
  420. package/src/components/icons-v2-generated/logos/.flamingo-logo-icon.md +41 -0
  421. package/src/components/layout/.article-detail-layout.md +32 -21
  422. package/src/components/layout/.page-container.md +25 -23
  423. package/src/components/layout/.page-heading.md +48 -0
  424. package/src/components/layout/.page-layout.md +30 -25
  425. package/src/components/layout/.title-block.md +43 -24
  426. package/src/components/loading/.card-skeleton.md +28 -35
  427. package/src/components/loading/.category-card-skeleton.md +25 -23
  428. package/src/components/loading/.device-card-skeleton.md +22 -15
  429. package/src/components/loading/.margin-report-skeleton.md +30 -35
  430. package/src/components/loading/.openmsp-heartbeat.md +30 -32
  431. package/src/components/loading/.organization-card-skeleton.md +22 -25
  432. package/src/components/loading/.organization-icon-skeleton.md +39 -27
  433. package/src/components/loading/.page-layout-skeleton.md +50 -28
  434. package/src/components/loading/.unified-skeleton.md +37 -40
  435. package/src/components/loading/.users-grid-skeleton.md +19 -38
  436. package/src/components/navigation/.app-header.md +35 -28
  437. package/src/components/navigation/.app-layout-context.md +48 -0
  438. package/src/components/navigation/.app-layout-drawer.md +56 -0
  439. package/src/components/navigation/.app-layout.md +24 -23
  440. package/src/components/navigation/.header-mingo-button.md +46 -0
  441. package/src/components/navigation/.header-organization-filter.md +32 -18
  442. package/src/components/navigation/.header.md +24 -31
  443. package/src/components/navigation/.index.md +36 -50
  444. package/src/components/navigation/.mingo-ai-button.md +41 -0
  445. package/src/components/navigation/.mobile-burger-menu.md +29 -29
  446. package/src/components/navigation/.mobile-nav-panel.md +41 -49
  447. package/src/components/navigation/.multi-level-navigation.md +76 -0
  448. package/src/components/navigation/.navigation-sidebar-item.md +14 -14
  449. package/src/components/navigation/.navigation-sidebar.md +30 -23
  450. package/src/components/navigation/.sliding-sidebar.md +30 -25
  451. package/src/components/navigation/.sticky-section-nav.md +23 -21
  452. package/src/components/onboarding-guides/.index.md +40 -0
  453. package/src/components/onboarding-guides/.onboarding-guide-detail-view.md +55 -0
  454. package/src/components/onboarding-guides/.onboarding-guides-catalog-skeleton.md +33 -0
  455. package/src/components/onboarding-guides/.onboarding-guides-catalog-view.md +50 -0
  456. package/src/components/onboarding-guides/hooks/.use-onboarding-guides.md +54 -0
  457. package/src/components/platform/.CveLink.md +28 -17
  458. package/src/components/platform/.ScriptArguments.md +18 -23
  459. package/src/components/platform/.ScriptInfoSection.md +27 -21
  460. package/src/components/platform/.ShellTypeBadge.md +34 -18
  461. package/src/components/platform/.SoftwareInfo.md +23 -21
  462. package/src/components/platform/.ToolBadge.md +18 -16
  463. package/src/components/profile/.ProfileLoadingSkeleton.md +24 -23
  464. package/src/components/related-content/.index.md +41 -0
  465. package/src/components/related-content/.related-content-section.md +62 -0
  466. package/src/components/shared/.article-author-byline.md +56 -0
  467. package/src/components/shared/.detail-page-skeleton.md +32 -43
  468. package/src/components/shared/.media-gallery-strip.md +43 -0
  469. package/src/components/shared/delivery/.delivery-lists.md +20 -19
  470. package/src/components/shared/delivery/.delivery-row.md +24 -20
  471. package/src/components/shared/delivery/.delivery-table.md +20 -22
  472. package/src/components/shared/dev-section/.dev-card-row.md +28 -36
  473. package/src/components/shared/dev-section/.dev-section-page.md +36 -25
  474. package/src/components/shared/dev-section/.dev-section-view.md +32 -22
  475. package/src/components/shared/doc-search/.doc-search-bar.md +58 -0
  476. package/src/components/shared/doc-search/.doc-search-result-row.md +50 -0
  477. package/src/components/shared/doc-search/.format-relative-path.md +30 -0
  478. package/src/components/shared/doc-search/.index.md +46 -0
  479. package/src/components/shared/doc-search/.map-doc-search-results.md +44 -0
  480. package/src/components/shared/doc-search/.resolve-search-result-action.md +52 -0
  481. package/src/components/shared/doc-search/.types.md +49 -0
  482. package/src/components/shared/doc-search/.use-doc-search.md +66 -0
  483. package/src/components/shared/legal-document/.legal-document-page.md +26 -20
  484. package/src/components/shared/legal-document/.use-legal-docs.md +36 -30
  485. package/src/components/shared/onboarding/.onboarding-step-card.md +24 -16
  486. package/src/components/shared/onboarding/.onboarding-walkthrough.md +42 -28
  487. package/src/components/shared/product-release/.index.md +33 -24
  488. package/src/components/shared/product-release/.product-release-card-skeleton.md +22 -28
  489. package/src/components/shared/product-release/.product-release-card.md +28 -29
  490. package/src/components/shared/product-release/.product-releases-view.md +49 -0
  491. package/src/components/shared/product-release/.release-detail-page.md +30 -15
  492. package/src/components/shared/roadmap/.index.md +29 -24
  493. package/src/components/shared/roadmap/.roadmap-grid.md +43 -54
  494. package/src/components/shared/roadmap/.roadmap-view.md +41 -0
  495. package/src/components/shared/roadmap/.use-roadmap-voting.md +27 -17
  496. package/src/components/switch.tsx +1 -1
  497. package/src/components/tickets/.help-center-card.md +32 -28
  498. package/src/components/tickets/.help-center-create-form.md +34 -22
  499. package/src/components/tickets/.help-center-list.md +36 -25
  500. package/src/components/tickets/.index.md +30 -45
  501. package/src/components/tickets/.ticket-center.md +31 -38
  502. package/src/components/tickets/.ticket-detail-drawer.md +20 -30
  503. package/src/components/tickets/.ticket-open-form.md +24 -26
  504. package/src/components/tickets/.ticket-reply-composer.md +51 -0
  505. package/src/components/tickets/.ticket-row.md +26 -11
  506. package/src/components/tickets/.types.md +56 -38
  507. package/src/components/tickets/hooks/.use-ticket-actions.md +60 -47
  508. package/src/components/tickets/hooks/.use-ticket-engagements.md +27 -27
  509. package/src/components/tickets/hooks/.use-tickets-list.md +24 -30
  510. package/src/components/ui/.accordion.md +28 -21
  511. package/src/components/ui/.actions-menu.md +36 -54
  512. package/src/components/ui/.ai-generated-badge.md +25 -0
  513. package/src/components/ui/.alert-dialog.md +21 -16
  514. package/src/components/ui/.alert.md +30 -25
  515. package/src/components/ui/.allowed-domains-input.md +26 -15
  516. package/src/components/ui/.announcement-bar-view.md +46 -0
  517. package/src/components/ui/.autocomplete.md +40 -27
  518. package/src/components/ui/.badge.md +34 -31
  519. package/src/components/ui/.brand-association-card.md +22 -18
  520. package/src/components/ui/.breadcrumb.md +18 -14
  521. package/src/components/ui/.bullet-list.md +35 -23
  522. package/src/components/ui/.card.md +47 -30
  523. package/src/components/ui/.checkbox-block.md +34 -22
  524. package/src/components/ui/.checkbox-with-description.md +18 -20
  525. package/src/components/ui/.chevron-button.md +29 -29
  526. package/src/components/ui/.circular-progress.md +30 -41
  527. package/src/components/ui/.color-preset-select.md +54 -0
  528. package/src/components/ui/.color-swatch.md +37 -0
  529. package/src/components/ui/.content-loader.md +34 -27
  530. package/src/components/ui/.crossfade-panels.md +50 -0
  531. package/src/components/ui/.cursor-pagination.md +38 -26
  532. package/src/components/ui/.dashboard-info-card.md +46 -27
  533. package/src/components/ui/.date-picker.md +52 -36
  534. package/src/components/ui/.device-card-compact.md +23 -20
  535. package/src/components/ui/.device-card.md +39 -30
  536. package/src/components/ui/.dialog.md +14 -14
  537. package/src/components/ui/.drawer.md +45 -39
  538. package/src/components/ui/.dropdown-button.md +41 -33
  539. package/src/components/ui/.dropdown-menu.md +40 -23
  540. package/src/components/ui/.duration-input.md +41 -0
  541. package/src/components/ui/.entity-image.md +32 -28
  542. package/src/components/ui/.error-state.md +30 -26
  543. package/src/components/ui/.fade-preview.md +44 -0
  544. package/src/components/ui/.field-wrapper.md +34 -23
  545. package/src/components/ui/.file-upload.md +30 -18
  546. package/src/components/ui/.filter-modal.md +30 -32
  547. package/src/components/ui/.filter-pill-row.md +58 -0
  548. package/src/components/ui/.floating-tooltip.md +27 -32
  549. package/src/components/ui/.hidden-tags-popup.md +18 -20
  550. package/src/components/ui/.highlight-card.md +36 -23
  551. package/src/components/ui/.honeypot-field.md +41 -0
  552. package/src/components/ui/.hover-dropdown.md +44 -31
  553. package/src/components/ui/.image-gallery-modal.md +28 -30
  554. package/src/components/ui/.image-uploader.md +39 -22
  555. package/src/components/ui/.index.md +33 -31
  556. package/src/components/ui/.info-card-row.md +50 -0
  557. package/src/components/ui/.info-card.md +27 -20
  558. package/src/components/ui/.info-row.md +30 -24
  559. package/src/components/ui/.info-section.md +63 -0
  560. package/src/components/ui/.input.md +29 -28
  561. package/src/components/ui/.label.md +34 -26
  562. package/src/components/ui/.markdown-editor.md +26 -25
  563. package/src/components/ui/.marquee-wall.md +64 -0
  564. package/src/components/ui/.menubar.md +50 -16
  565. package/src/components/ui/.modal-v2.md +41 -27
  566. package/src/components/ui/.modal.md +22 -19
  567. package/src/components/ui/.more-actions-menu.md +30 -24
  568. package/src/components/ui/.navigation-menu.md +40 -25
  569. package/src/components/ui/.organization-card.md +46 -27
  570. package/src/components/ui/.page-actions.md +55 -41
  571. package/src/components/ui/.page-loader.md +40 -23
  572. package/src/components/ui/.password-input.md +30 -0
  573. package/src/components/ui/.phone-input.md +20 -22
  574. package/src/components/ui/.portal-container.md +43 -0
  575. package/src/components/ui/.progress-bar.md +40 -27
  576. package/src/components/ui/.release-changelog-section.md +32 -26
  577. package/src/components/ui/.rich-markdown-renderer.md +45 -0
  578. package/src/components/ui/.scroll-fade.md +56 -0
  579. package/src/components/ui/.search-input.md +55 -37
  580. package/src/components/ui/.select.md +25 -26
  581. package/src/components/ui/.service-card.md +25 -19
  582. package/src/components/ui/.sheet.md +21 -21
  583. package/src/components/ui/.simple-markdown-renderer.md +36 -24
  584. package/src/components/ui/.slack-channel-chip.md +49 -0
  585. package/src/components/ui/.square-avatar.md +29 -26
  586. package/src/components/ui/.stacked-rows-panel.md +61 -0
  587. package/src/components/ui/.status-badge.md +30 -24
  588. package/src/components/ui/.status-indicator.md +35 -21
  589. package/src/components/ui/.tab-content.md +34 -22
  590. package/src/components/ui/.tab-navigation.md +40 -50
  591. package/src/components/ui/.tab-selector.md +48 -31
  592. package/src/components/ui/.tabs.md +34 -21
  593. package/src/components/ui/.tag-search-input.md +20 -20
  594. package/src/components/ui/.tag-select-dropdown.md +59 -0
  595. package/src/components/ui/.tag.md +25 -43
  596. package/src/components/ui/.tags-input.md +31 -31
  597. package/src/components/ui/.textarea.md +32 -30
  598. package/src/components/ui/.ticket-attachments-list.md +36 -29
  599. package/src/components/ui/.ticket-info-section.md +37 -42
  600. package/src/components/ui/.ticket-status-config-row.md +66 -0
  601. package/src/components/ui/.ticket-status-tag.md +39 -35
  602. package/src/components/ui/.toaster.md +21 -15
  603. package/src/components/ui/.toggle.md +38 -37
  604. package/src/components/ui/.tooltip.md +16 -13
  605. package/src/components/ui/button/.button-styles.md +17 -18
  606. package/src/components/ui/button/.button.md +30 -37
  607. package/src/components/ui/button/.split-button.md +46 -23
  608. package/src/components/ui/button/button-styles.ts +13 -0
  609. package/src/components/ui/button/button.tsx +5 -0
  610. package/src/components/ui/data-table/.data-table-body.md +50 -35
  611. package/src/components/ui/data-table/.data-table-empty.md +17 -33
  612. package/src/components/ui/data-table/.data-table-header.md +43 -40
  613. package/src/components/ui/data-table/.data-table-row.md +31 -31
  614. package/src/components/ui/data-table/.types.md +23 -28
  615. package/src/components/ui/file-manager/.file-manager-breadcrumb.md +16 -24
  616. package/src/components/ui/file-manager/.file-manager-empty.md +23 -15
  617. package/src/components/ui/file-manager/.file-manager-skeleton.md +34 -36
  618. package/src/components/ui/file-manager/.file-manager-table-row.md +29 -29
  619. package/src/components/ui/file-manager/.file-manager-table.md +39 -24
  620. package/src/components/ui/no-data/.index.md +22 -0
  621. package/src/components/ui/no-data/.no-data-actions.md +29 -0
  622. package/src/components/ui/no-data/.no-data-message.md +37 -0
  623. package/src/components/ui/no-data/.no-data-styles.md +39 -0
  624. package/src/components/ui/no-data/.no-data.md +59 -0
  625. package/src/components/ui/page-actions.tsx +2 -1
  626. package/src/components/ui/query-report-table/.query-report-table-header.md +15 -15
  627. package/src/components/ui/query-report-table/.query-report-table-row.md +16 -16
  628. package/src/components/ui/query-report-table/.query-report-table.md +39 -24
  629. package/src/components/ui/table/.table-column-filter-dropdown.md +15 -9
  630. package/src/components/ui/table/.table-description-cell.md +13 -12
  631. package/src/components/ui/table/.table-empty-state.md +19 -20
  632. package/src/components/ui/table/.table-row.md +30 -20
  633. package/src/components/ui/table/.table-skeleton.md +32 -27
  634. package/src/components/ui/table/.table-timestamp-cell.md +24 -23
  635. package/src/components/ui/table/.table.md +43 -30
  636. package/src/components/ui/table/.types.md +49 -45
  637. package/src/components/ui/table/.use-table-motion.md +45 -0
  638. package/src/contexts/.chat-runtime-context.md +55 -26
  639. package/src/contexts/.endpoints-runtime-context.md +40 -44
  640. package/src/embed-shims/.next-navigation.md +38 -31
  641. package/src/hooks/.api-hooks.md +28 -21
  642. package/src/hooks/.index.md +30 -25
  643. package/src/hooks/.use-authed-image-src.md +38 -0
  644. package/src/hooks/.use-contact-submission.md +35 -36
  645. package/src/hooks/.use-humanity-signals.md +47 -0
  646. package/src/hooks/.use-near-viewport.md +30 -30
  647. package/src/hooks/.use-og-placeholder-url.md +57 -0
  648. package/src/hooks/.use-scroll-to-hash.md +46 -0
  649. package/src/hooks/.use-self-fetch.md +52 -0
  650. package/src/hooks/state/.flatten-schema.md +37 -29
  651. package/src/hooks/ui/.index.md +37 -25
  652. package/src/hooks/ui/.use-auto-limit-tags.md +55 -38
  653. package/src/hooks/ui/.use-deferred-error.md +44 -0
  654. package/src/hooks/ui/.use-focus-trap.md +59 -0
  655. package/src/hooks/ui/.use-header-height.md +37 -0
  656. package/src/hooks/ui/.use-horizontal-scrollbar.md +25 -34
  657. package/src/hooks/ui/.use-marquee-engine.md +73 -0
  658. package/src/hooks/ui/.use-notification-permission.md +49 -0
  659. package/src/hooks/ui/.use-reset-on-page-hidden.md +40 -0
  660. package/src/hooks/ui/.use-suppress-clone-focus.md +41 -0
  661. package/src/nats/.index.md +39 -0
  662. package/src/nats/.nats-provider.md +46 -0
  663. package/src/nats/.nats.md +38 -28
  664. package/src/nats/.shared-connection.md +56 -0
  665. package/src/nats/.use-nats-subscription.md +57 -0
  666. package/src/stories/.ActionsMenu.stories.md +57 -0
  667. package/src/stories/.Alert.stories.md +46 -0
  668. package/src/stories/.AnnouncementBar.stories.md +59 -32
  669. package/src/stories/.AppLayoutDrawer.stories.md +60 -0
  670. package/src/stories/.AppLayoutSidebar.stories.md +45 -0
  671. package/src/stories/.ApprovalBatchMessage.stories.md +46 -0
  672. package/src/stories/.ApprovalBatchMessageClient.stories.md +55 -0
  673. package/src/stories/.ApprovalRequestMessage.stories.md +50 -0
  674. package/src/stories/.ApprovalRequestMessageClient.stories.md +41 -0
  675. package/src/stories/.BlogCard.stories.md +52 -0
  676. package/src/stories/.Board.stories.md +25 -20
  677. package/src/stories/.Button.stories.md +35 -40
  678. package/src/stories/.CampaignCardAdmin.stories.md +38 -0
  679. package/src/stories/.CardsStrip.stories.md +39 -0
  680. package/src/stories/.CaseStudyCard.stories.md +41 -0
  681. package/src/stories/.ChatContainer.stories.md +41 -0
  682. package/src/stories/.ChatInlineVideoPill.stories.md +36 -0
  683. package/src/stories/.ChatMessageEnhanced.stories.md +51 -0
  684. package/src/stories/.ChatMingoInfoCards.stories.md +30 -0
  685. package/src/stories/.ChatTicketList.stories.md +38 -22
  686. package/src/stories/.ChatTypingIndicator.stories.md +47 -0
  687. package/src/stories/.CheckboxBlock.stories.md +34 -35
  688. package/src/stories/.ContextCompactionDisplay.stories.md +28 -0
  689. package/src/stories/.CustomerInterviewCard.stories.md +36 -0
  690. package/src/stories/.DashboardInfoCard.stories.md +40 -33
  691. package/src/stories/.DataRoomDocCard.stories.md +42 -0
  692. package/src/stories/.DataTable.stories.md +37 -32
  693. package/src/stories/.DatePicker.stories.md +34 -30
  694. package/src/stories/.EmbeddableChat.stories.md +45 -28
  695. package/src/stories/.EmptyState.stories.md +55 -0
  696. package/src/stories/.ErrorMessageDisplay.stories.md +45 -0
  697. package/src/stories/.FilterModal.stories.md +28 -22
  698. package/src/stories/.GenericEntityCard.stories.md +50 -0
  699. package/src/stories/.GitHubActivityCard.stories.md +41 -0
  700. package/src/stories/.GuideWelcome.stories.md +38 -0
  701. package/src/stories/.Header.stories.md +32 -22
  702. package/src/stories/.HubspotTicketCard.stories.md +41 -0
  703. package/src/stories/.InfoCard.stories.md +37 -26
  704. package/src/stories/.InfoCardRow.stories.md +48 -0
  705. package/src/stories/.InfoSection.stories.md +55 -0
  706. package/src/stories/.Input.stories.md +45 -35
  707. package/src/stories/.InvestorUpdateCard.stories.md +41 -0
  708. package/src/stories/.MarqueeWall.stories.md +53 -0
  709. package/src/stories/.MingoAiButton.stories.md +31 -0
  710. package/src/stories/.MingoChatModals.stories.md +47 -0
  711. package/src/stories/.MingoInfoCard.stories.md +50 -0
  712. package/src/stories/.MingoOnboardingCard.stories.md +19 -19
  713. package/src/stories/.MingoWelcome.stories.md +41 -0
  714. package/src/stories/.MobileNavPanel.stories.md +52 -0
  715. package/src/stories/.Modal.stories.md +19 -16
  716. package/src/stories/.MspOrganizationCard.stories.md +45 -0
  717. package/src/stories/.NotificationDrawer.stories.md +39 -28
  718. package/src/stories/.OSTypeBadge.stories.md +34 -25
  719. package/src/stories/.OnboardingGuideCard.stories.md +41 -0
  720. package/src/stories/.PageActions.stories.md +21 -21
  721. package/src/stories/.PageContainer.stories.md +29 -24
  722. package/src/stories/.PageLayout.stories.md +18 -35
  723. package/src/stories/.PolicyConfigurationPanel.stories.md +58 -0
  724. package/src/stories/.ProductReleaseCard.stories.md +39 -0
  725. package/src/stories/.ProgramCard.stories.md +51 -0
  726. package/src/stories/.QuickActionChip.stories.md +59 -0
  727. package/src/stories/.QuickActionMarquee.stories.md +51 -0
  728. package/src/stories/.QuickActionWall.stories.md +58 -0
  729. package/src/stories/.RoadmapCard.stories.md +41 -0
  730. package/src/stories/.ShellTypeBadge.stories.md +42 -22
  731. package/src/stories/.SlackMessageCard.stories.md +42 -0
  732. package/src/stories/.SlashCommandSuggestions.stories.md +21 -31
  733. package/src/stories/.SplitButton.stories.md +23 -25
  734. package/src/stories/.StackedRowsPanel.stories.md +65 -0
  735. package/src/stories/.TabSelector.stories.md +26 -38
  736. package/src/stories/.Tag.stories.md +32 -27
  737. package/src/stories/.ThinkingDisplay.stories.md +43 -0
  738. package/src/stories/.TicketCard.stories.md +60 -0
  739. package/src/stories/.TicketInfoSection.stories.md +28 -20
  740. package/src/stories/.TimeTracker.stories.md +35 -0
  741. package/src/stories/.Toaster.stories.md +26 -20
  742. package/src/stories/.ToolBadge.stories.md +34 -24
  743. package/src/stories/.ToolExecutionDisplay.stories.md +22 -20
  744. package/src/stories/.ToolExecutionDisplayClient.stories.md +33 -0
  745. package/src/stories/.VideoBitesStrip.stories.md +37 -0
  746. package/src/stories/.WarningBlock.stories.md +51 -0
  747. package/src/stories/__fixtures__/.chat-card-decorator.md +39 -0
  748. package/src/stories/__fixtures__/.chat-cards.md +57 -0
  749. package/src/stories/auth/.CompleteAccount.stories.md +36 -0
  750. package/src/stories/auth/.CreateOrganization.stories.md +52 -0
  751. package/src/stories/auth/.InviteLinkInvalid.stories.md +21 -0
  752. package/src/stories/auth/.Login.stories.md +32 -0
  753. package/src/stories/auth/.OpenFrameSso.stories.md +58 -0
  754. package/src/stories/auth/.PasswordReset.stories.md +49 -0
  755. package/src/styles/ods-interaction-states.css +32 -0
  756. package/src/types/.announcement.md +67 -35
  757. package/src/types/.blog.md +44 -41
  758. package/src/types/.case-study.md +31 -17
  759. package/src/types/.content-ref.md +37 -0
  760. package/src/types/.customer-interview.md +38 -38
  761. package/src/types/.doc-source.md +87 -0
  762. package/src/types/.entity-author.md +53 -0
  763. package/src/types/.entity-platform.md +40 -0
  764. package/src/types/.index.md +23 -17
  765. package/src/types/.marketing.md +32 -35
  766. package/src/types/.navigation.md +31 -19
  767. package/src/types/.os.types.md +30 -31
  768. package/src/types/.permissions.md +49 -35
  769. package/src/types/.platform.md +44 -28
  770. package/src/types/.product-release.md +59 -42
  771. package/src/types/.shell.types.md +46 -30
  772. package/src/types/.supabase.md +43 -29
  773. package/src/types/.tool.types.md +43 -23
  774. package/src/types/.video-processing.md +40 -31
  775. package/src/types/supabase.ts +80 -0
  776. package/src/types/video-processing.ts +1 -0
  777. package/src/utils/.announcement-storage.md +49 -17
  778. package/src/utils/.app-config.md +22 -18
  779. package/src/utils/.brand-marks.md +46 -0
  780. package/src/utils/.cn.md +40 -29
  781. package/src/utils/.color-analysis.md +34 -25
  782. package/src/utils/.common.md +43 -23
  783. package/src/utils/.content-href.md +64 -0
  784. package/src/utils/.content-ref-groups.md +51 -0
  785. package/src/utils/.date-utils.md +46 -35
  786. package/src/utils/.doc-path-utils.md +38 -0
  787. package/src/utils/.doc-tree-nav.md +51 -0
  788. package/src/utils/.embed-authed-fetch.md +48 -32
  789. package/src/utils/.embed-content-fetch.md +36 -0
  790. package/src/utils/.embed-url-converters.md +52 -0
  791. package/src/utils/.extract-items.md +49 -0
  792. package/src/utils/.faq-anchor.md +48 -0
  793. package/src/utils/.format.md +73 -55
  794. package/src/utils/.humanity-signals.md +59 -0
  795. package/src/utils/.index.md +73 -31
  796. package/src/utils/.list-url.md +43 -0
  797. package/src/utils/.markdown-section-extractor.md +57 -0
  798. package/src/utils/.markdown-to-plain.md +51 -0
  799. package/src/utils/.media-carousel-utils-stub.md +42 -31
  800. package/src/utils/.ods-color-utils.md +84 -43
  801. package/src/utils/.og-placeholder.md +45 -0
  802. package/src/utils/.page-header-constants.md +26 -0
  803. package/src/utils/.platform-config.md +34 -34
  804. package/src/utils/.release-badge.md +47 -0
  805. package/src/utils/.release-cover.md +45 -0
  806. package/src/utils/.same-page-hash-nav.md +45 -0
  807. package/src/utils/.scroll-into-view.md +32 -25
  808. package/src/utils/.seo-description.md +37 -0
  809. package/src/utils/.seo-title.md +25 -0
  810. package/src/utils/.social-embed-cache.md +37 -0
  811. package/src/utils/.source-icons.md +30 -34
  812. package/src/utils/.suggestion-url.md +46 -0
  813. package/src/utils/.tool-utils.md +39 -24
  814. package/src/utils/.tree-builder.md +64 -0
  815. package/src/utils/.video-bite-id.md +42 -0
  816. package/src/utils/announcement-storage.ts +9 -18
  817. package/src/utils/dev-sections/.dev-section-param-keys.md +51 -0
  818. package/src/utils/dev-sections/.openframe-dev-sections.md +40 -28
  819. package/src/utils/dismiss-cookie.ts +55 -0
  820. package/src/utils/dismissal-storage.ts +38 -0
  821. package/src/utils/index.ts +3 -0
  822. package/dist/chunk-BBUEY73L.js.map +0 -1
  823. package/dist/chunk-G3UN2DXU.cjs.map +0 -1
  824. package/dist/chunk-OWMLWJQY.cjs.map +0 -1
  825. package/dist/chunk-SASR7SK5.js.map +0 -1
  826. package/src/components/chat/utils/.onboarding-icons.md +0 -28
  827. package/src/hooks/.use-og-placeholder.md +0 -51
  828. /package/dist/{chunk-MGKCS6KS.js.map → chunk-3WCARCI4.js.map} +0 -0
  829. /package/dist/{chunk-Y3Y2DLNO.js.map → chunk-6UGYBCEN.js.map} +0 -0
  830. /package/dist/{chunk-PSPWT2Q5.js.map → chunk-7LWXWXEY.js.map} +0 -0
  831. /package/dist/{chunk-VTSRDC4W.js.map → chunk-CKC3EAYT.js.map} +0 -0
  832. /package/dist/{chunk-ZRANZNEA.js.map → chunk-JJE5TUZK.js.map} +0 -0
  833. /package/dist/{chunk-66BNAFO6.js.map → chunk-JQIUBFHL.js.map} +0 -0
  834. /package/dist/{chunk-2DIOV7BR.js.map → chunk-UPN6EFOM.js.map} +0 -0
  835. /package/dist/{chunk-4SMRQ4SN.js.map → chunk-WBL5Y4PS.js.map} +0 -0
  836. /package/dist/{chunk-FP4H6Y5O.js.map → chunk-WPYPSIY2.js.map} +0 -0
  837. /package/dist/{chunk-R5WJJL4V.js.map → chunk-X5X43HFV.js.map} +0 -0
  838. /package/dist/{chunk-DEHZ5CTC.js.map → chunk-XTWKDMCG.js.map} +0 -0
@@ -1,44 +1,49 @@
1
- <!-- source-hash: 658b99c6617a2e2c02da90f0de25e855 -->
2
- A reusable React Alert component system with customizable variants and structured content sections for displaying notifications and status messages.
1
+ <!-- source-hash: d1d0661fd41f76c7fee69513f105b5c9 -->
2
+ Accessible alert component with three style variants (`default`, `destructive`, `warning`) built using `class-variance-authority` and React's `forwardRef`.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **Alert**: Main container component with variant-based styling (default, destructive)
7
- - **AlertTitle**: Header component for alert titles with consistent typography
8
- - **AlertDescription**: Content wrapper for alert body text with optimized line spacing
9
- - **alertVariants**: CVA configuration defining visual styles and behavior for different alert types
6
+ | Export | Type | Description |
7
+ |--------|------|-------------|
8
+ | `Alert` | `React.forwardRef` | Root container with `role="alert"`, accepts `variant` prop and optional SVG icon child |
9
+ | `AlertTitle` | `React.forwardRef` | Renders as `<h5>` for the alert heading |
10
+ | `AlertDescription` | `React.forwardRef` | Body text container with relaxed line-height for paragraph children |
11
+ | `alertVariants` | `cva` config | CVA variant map driving Tailwind classes for each alert style |
12
+
13
+ ### Variants
14
+
15
+ | Variant | Use Case |
16
+ |---------|----------|
17
+ | `default` | General informational messages |
18
+ | `destructive` | Errors or dangerous actions |
19
+ | `warning` | Cautionary notices (uses ODS warning tokens) |
10
20
 
11
21
  ## Usage Example
12
22
 
13
23
  ```typescript
14
- import { Alert, AlertTitle, AlertDescription } from "./alert"
15
- import { AlertTriangle, CheckCircle } from "lucide-react"
24
+ import { Alert, AlertTitle, AlertDescription } from "./components/ui/alert"
25
+ import { AlertTriangle } from "lucide-react"
16
26
 
17
- // Basic alert
27
+ // Default
18
28
  <Alert>
19
- <AlertTitle>Heads up!</AlertTitle>
20
- <AlertDescription>
21
- You can add components to your app using the cli.
22
- </AlertDescription>
29
+ <AlertTitle>Heads up</AlertTitle>
30
+ <AlertDescription>Your session will expire in 5 minutes.</AlertDescription>
23
31
  </Alert>
24
32
 
25
- // Destructive alert with icon
33
+ // Destructive with icon
26
34
  <Alert variant="destructive">
27
35
  <AlertTriangle className="h-4 w-4" />
28
36
  <AlertTitle>Error</AlertTitle>
29
- <AlertDescription>
30
- Your session has expired. Please log in again.
31
- </AlertDescription>
37
+ <AlertDescription>Failed to sync device inventory.</AlertDescription>
32
38
  </Alert>
33
39
 
34
- // Success alert (using default variant with custom styling)
35
- <Alert className="border-green-200 bg-green-50">
36
- <CheckCircle className="h-4 w-4 text-green-600" />
37
- <AlertTitle>Success</AlertTitle>
38
- <AlertDescription>
39
- Your changes have been saved successfully.
40
- </AlertDescription>
40
+ // Warning
41
+ <Alert variant="warning">
42
+ <AlertTitle>License expiring</AlertTitle>
43
+ <AlertDescription>Renew within 7 days to avoid service interruption.</AlertDescription>
41
44
  </Alert>
42
45
  ```
43
46
 
44
- The component automatically positions SVG icons and maintains proper spacing between elements using CSS selectors. All components are built with `forwardRef` for proper ref handling and include semantic HTML with appropriate ARIA roles.
47
+ > **Icon support:** Placing an SVG/icon as a direct child of `Alert` automatically positions it absolutely at top-left and offsets sibling content via the `[&>svg~*]:pl-7` selector no extra wrapper needed.
48
+
49
+ **Source:** [`alert.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/alert.tsx)
@@ -1,40 +1,49 @@
1
- <!-- source-hash: 4488babe1708a2df7fd49ce4d01e1ce8 -->
2
- A client-side React component for managing a list of allowed domains, supporting add/remove operations with optional validation, duplicate prevention, and error display.
1
+ <!-- source-hash: c8820213197bd11f26ff9ef8929a556d -->
2
+ A controlled React component for managing a list of allowed domains, supporting dynamic addition/removal, optional validation, and inline error display.
3
3
 
4
4
  ## Key Components
5
5
 
6
6
  ### `AllowedDomainsInputProps`
7
7
 
8
8
  | Prop | Type | Description |
9
- |------|------|-------------|
9
+ |---|---|---|
10
10
  | `value` | `string[]` | Controlled list of current domains |
11
- | `onChange` | `(domains: string[]) => void` | Callback when domain list changes |
12
- | `onValidate` | `(domain: string) => { valid, error?, cleanedDomain? }` | Optional custom domain validator |
11
+ | `onChange` | `(domains: string[]) => void` | Callback fired when the domain list changes |
12
+ | `onValidate` | `(domain: string) => { valid: boolean; error?: string; cleanedDomain?: string }` | Optional custom validator; can return a sanitized domain |
13
13
  | `label` | `string` | Field label (default: `"Allowed Domains"`) |
14
14
  | `placeholder` | `string` | Input placeholder (default: `"example.com"`) |
15
15
  | `disabled` | `boolean` | Disables all interactions |
16
16
  | `error` | `string \| null` | External error message |
17
- | `helperText` | `string` | Helper text shown when no error is present |
17
+ | `helperText` | `string` | Assistive text shown when no error is present |
18
+ | `className` | `string` | Additional CSS classes |
18
19
 
19
20
  ### `AllowedDomainsInput`
20
21
 
21
22
  A `forwardRef` component that renders:
22
- - **Existing domain rows** — each as a disabled `Input` with an `X` remove button
23
- - **New domain input** accepts `Enter` key or "Add Domain" button to submit
24
- - **Validation feedback** displays external `error` or internal `localError`
23
+ - Existing domains as read-only inputs with individual remove (`X`) buttons
24
+ - A text input for entering new domains (supports `Enter` key to submit)
25
+ - An **Add Domain** button with a `PlusCircle` icon
26
+ - Inline error and helper text display
27
+
28
+ Duplicate domains are silently rejected. Local validation errors are cleared on each input change.
25
29
 
26
30
  ## Usage Example
27
31
 
28
32
  ```typescript
29
33
  import { AllowedDomainsInput } from "@/components/ui/allowed-domains-input"
34
+ import { useState } from "react"
30
35
 
31
- function SettingsForm() {
32
- const [domains, setDomains] = React.useState<string[]>(["flamingo.run"])
36
+ function DomainSettings() {
37
+ const [domains, setDomains] = useState<string[]>(["flamingo.run"])
33
38
 
34
39
  const validateDomain = (domain: string) => {
35
40
  const cleaned = domain.toLowerCase().replace(/^https?:\/\//, "")
36
- const valid = /^[a-z0-9.-]+\.[a-z]{2,}$/.test(cleaned)
37
- return { valid, error: valid ? undefined : "Enter a valid domain", cleanedDomain: cleaned }
41
+ const isValid = /^[a-z0-9.-]+\.[a-z]{2,}$/.test(cleaned)
42
+ return {
43
+ valid: isValid,
44
+ error: isValid ? undefined : "Enter a valid domain (e.g. example.com)",
45
+ cleanedDomain: cleaned,
46
+ }
38
47
  }
39
48
 
40
49
  return (
@@ -42,10 +51,12 @@ function SettingsForm() {
42
51
  value={domains}
43
52
  onChange={setDomains}
44
53
  onValidate={validateDomain}
45
- helperText="Only users from these domains can sign in."
54
+ helperText="Only users from these domains can access the workspace."
46
55
  />
47
56
  )
48
57
  }
49
58
  ```
50
59
 
51
- > **Note:** Duplicate domains are silently ignored. If `onValidate` returns a `cleanedDomain`, that normalized value is stored instead of the raw input.
60
+ ## Source
61
+
62
+ [`allowed-domains-input.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/src/components/ui/allowed-domains-input.tsx)
@@ -0,0 +1,46 @@
1
+ <!-- source-hash: 1b172d10def6d4e816cd2e6d05c9ff8e -->
2
+ Presentational announcement/notification bar component that renders a fixed 44px single-line strip with icon, message, CTA, and dismiss slots — no data fetching or state management.
3
+
4
+ ## Key Components
5
+
6
+ ### `AnnouncementBarView`
7
+ The sole export. A layout-only React component implementing the announcement bar pattern: one line of text, one compact CTA, and a trailing slot, all within a 44px-tall strip.
8
+
9
+ ### `AnnouncementBarViewProps`
10
+
11
+ | Prop | Type | Description |
12
+ |---|---|---|
13
+ | `startAdornment` | `ReactNode` | Leading icon slot (20px below `md`, 24px above) |
14
+ | `title` | `string \| ReactElement` | Bar message — plain strings get `text-h6` + truncation; elements own their markup |
15
+ | `actionBlock` | `ReactElement` | Primary CTA, hidden below 800px breakpoint |
16
+ | `endAdornment` | `ReactElement` | Trailing slot (e.g. dismiss button), outside tap target |
17
+ | `onContentClick` | `() => void` | Mobile-only tap handler; no-op at `md`+ where CTA is visible |
18
+ | `contentClassName` | `string` | Extra classes for the padded content row |
19
+ | `className` | `string` | Surface styling (background, text color, theme scope) |
20
+ | `style` | `CSSProperties` | Inline styles for the root element |
21
+
22
+ ### `MD_QUERY`
23
+ Internal constant `(min-width: 800px)` — mirrors the `screens.md` Tailwind breakpoint. Guards `onContentClick` to prevent firing when the CTA is visible.
24
+
25
+ ## Usage Example
26
+
27
+ ```typescript
28
+ import { AnnouncementBarView } from './announcement-bar-view';
29
+ import { InfoIcon } from '../icons';
30
+ import { Button } from '../button';
31
+
32
+ <AnnouncementBarView
33
+ className="bg-brand-primary text-white"
34
+ startAdornment={<InfoIcon size={20} />}
35
+ title="New feature available — upgrade your plan to unlock it."
36
+ actionBlock={
37
+ <Button size="compact" variant="secondary" onClick={handleUpgrade}>
38
+ Upgrade
39
+ </Button>
40
+ }
41
+ endAdornment={<DismissButton onClick={handleDismiss} />}
42
+ onContentClick={handleUpgrade}
43
+ />
44
+ ```
45
+
46
+ > ⚠️ **Design is locked.** The 44px height, `text-h6` scale, and single-row layout are owner-approved and must not be changed without explicit written sign-off. See [source](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/announcement-bar-view.tsx) for the full rationale comment.
@@ -1,23 +1,31 @@
1
- <!-- source-hash: c483f7e7ed16ddf489c0f0b85c84e31b -->
2
- A fully-featured autocomplete/combobox input component supporting both single and multi-select modes, with keyboard navigation, tag display, filtering, and creatable options.
1
+ <!-- source-hash: fc6dd8036da3bf735d64b0d45b0be40c -->
2
+ A fully-featured autocomplete/combobox React component supporting single and multi-select modes, keyboard navigation, tag overflow, creatable options, and server-side filtering.
3
3
 
4
4
  ## Key Components
5
5
 
6
6
  ### Types & Interfaces
7
- - **`AutocompleteOption<T>`** — Shape of each selectable option (`label` + `value`)
8
- - **`AutocompleteInputChangeReason`** — Union of `'input' | 'reset' | 'clear'`
9
- - **`AutocompleteSingleProps<T>`** — Props for single-select mode
10
- - **`AutocompleteMultipleProps<T>`** Props for multi-select mode (adds `maxItems`, `renderTag`, `limitTags`, etc.)
11
- - **`AutocompleteProps<T>`**Discriminated union of the two modes
12
-
13
- ### Internal Logic
14
- - **`AutocompleteInner`** Core render function wrapped with `forwardRef`, managing:
15
- - Controlled/uncontrolled input value state
16
- - Dropdown open/close via Radix `PopoverPrimitive`
17
- - Option filtering (client-side or delegated via `disableClientFilter`)
18
- - Keyboard navigation (`ArrowDown/Up`, `Enter`, `Escape`)
19
- - Tag overflow via `useAutoLimitTags` hook
20
- - `freeSolo` and `creatable` modes
7
+
8
+ | Export | Description |
9
+ |---|---|
10
+ | `AutocompleteOption<T>` | Shape of a selectable option: `{ label, value }` |
11
+ | `AutocompleteInputChangeReason` | `'input' \| 'reset' \| 'clear'` reason passed to `onInputChange` |
12
+ | `AutocompleteSingleProps<T>` | Props for single-select mode |
13
+ | `AutocompleteMultipleProps<T>` | Props for multi-select mode (adds `maxItems`, `renderTag`, `limitTags`, `getLimitTagsText`) |
14
+ | `AutocompleteProps<T>` | Union of single and multiple prop types |
15
+
16
+ ### Core Behaviors
17
+
18
+ - **Single mode** — selects one value; input shows selected label when closed, clears on open (configurable via `clearOnOpen`)
19
+ - **Multi mode** — toggles values in an array; renders selected items as tags with auto-limiting overflow (`limitTags: number | "auto"`)
20
+ - **Creatable** — shows a `+ Create` option when no results match; blocked by `maxCreateLength`
21
+ - **Server-side filtering** — set `disableClientFilter: true` and drive options via `onInputChange`
22
+ - **Controlled input** — pass `inputValue` to fully control the text field
23
+ - **Keyboard navigation** — arrow keys, Enter, and Escape supported via `highlightedIndex` state
24
+
25
+ ### Internal Hooks & Utilities
26
+
27
+ - `useAutoLimitTags` — calculates how many tags fit the container width
28
+ - `useImperativeHandle` — exposes the container `div` ref to parent via `forwardRef`
21
29
 
22
30
  ## Usage Example
23
31
 
@@ -26,29 +34,34 @@ A fully-featured autocomplete/combobox input component supporting both single an
26
34
  <Autocomplete
27
35
  options={[{ label: "Option A", value: "a" }, { label: "Option B", value: "b" }]}
28
36
  value={selected}
29
- onChange={(val) => setSelected(val)}
30
- label="Pick one"
31
- placeholder="Search..."
37
+ onChange={setSelected}
38
+ placeholder="Select an option"
39
+ label="My Field"
32
40
  />
33
41
 
34
- // Multi-select with tag limit and creatable
42
+ // Multi-select with tag limit and creatable options
35
43
  <Autocomplete
36
44
  multiple
37
45
  options={options}
38
46
  value={selectedValues}
39
- onChange={(vals) => setSelectedValues(vals)}
47
+ onChange={setSelectedValues}
40
48
  limitTags={3}
41
49
  creatable
42
- onCreateOption={(input) => persistNewOption(input)}
43
- label="Tags"
50
+ onCreateOption={(label) => saveToServer(label)}
51
+ maxCreateLength={50}
44
52
  />
45
53
 
46
54
  // Server-side filtering
47
55
  <Autocomplete
48
56
  options={serverOptions}
49
- value={value}
50
- onChange={setValue}
57
+ value={selected}
58
+ onChange={setSelected}
51
59
  disableClientFilter
52
- onInputChange={(query, reason) => fetchOptions(query)}
60
+ onInputChange={(value) => fetchOptions(value)}
61
+ loading={isFetching}
53
62
  />
54
- ```
63
+ ```
64
+
65
+ ## Source
66
+
67
+ [`autocomplete.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/autocomplete.tsx)
@@ -1,40 +1,43 @@
1
- <!-- source-hash: 88aa5dbba51bdd21ac31415ed974140c -->
2
- A reusable Badge component built with class-variance-authority that provides consistent styling for status indicators, labels, and categorization elements.
1
+ <!-- source-hash: 4da43817dbb4ea0bdd621a35dd80c8f4 -->
2
+ Renders a styled inline badge component using `cva` for variant-based class management, supporting five visual states tied to ODS design tokens.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **Badge**: Main component function that renders a styled div element
7
- - **BadgeProps**: TypeScript interface extending HTML div attributes with variant props
8
- - **badgeVariants**: CVA-powered style variants including default, secondary, destructive, outline, and success styles
6
+ - **`badgeVariants`** `cva` configuration defining base styles and five variants: `default`, `secondary`, `destructive`, `outline`, and `success`. Base styles lock badge text at `12px` (not the `text-h6` composite) per ODS token spec.
7
+ - **`Badge`** Functional component rendering a `<div>` with composed class names. Accepts all standard `HTMLDivElement` attributes plus a `variant` prop.
8
+ - **`BadgeProps`** Exported interface extending `React.HTMLAttributes<HTMLDivElement>` and `VariantProps<typeof badgeVariants>`.
9
+
10
+ ## Variants
11
+
12
+ | Variant | Use Case |
13
+ |---|---|
14
+ | `default` | Primary brand color |
15
+ | `secondary` | Muted/secondary emphasis |
16
+ | `destructive` | Error or danger state |
17
+ | `outline` | Bordered, no fill |
18
+ | `success` | Positive/success state (ODS token) |
9
19
 
10
20
  ## Usage Example
11
21
 
12
22
  ```typescript
13
- import { Badge } from "./badge"
14
-
15
- function StatusIndicator() {
16
- return (
17
- <div className="flex gap-2">
18
- <Badge variant="default">Default</Badge>
19
- <Badge variant="success">Active</Badge>
20
- <Badge variant="destructive">Error</Badge>
21
- <Badge variant="outline">Draft</Badge>
22
- <Badge className="bg-blue-500 text-white">Custom</Badge>
23
- </div>
24
- )
25
- }
26
-
27
- // Usage in lists or cards
28
- function UserCard({ status }: { status: string }) {
29
- return (
30
- <div className="p-4 border rounded">
31
- <h3>User Profile</h3>
32
- <Badge variant={status === "active" ? "success" : "secondary"}>
33
- {status}
34
- </Badge>
35
- </div>
36
- )
37
- }
23
+ import { Badge } from "@/components/ui/badge"
24
+
25
+ // Default
26
+ <Badge>Active</Badge>
27
+
28
+ // With variant
29
+ <Badge variant="success">Resolved</Badge>
30
+ <Badge variant="destructive">Failed</Badge>
31
+ <Badge variant="outline">Pending</Badge>
32
+
33
+ // With custom class
34
+ <Badge variant="secondary" className="uppercase tracking-wide">
35
+ Beta
36
+ </Badge>
38
37
  ```
39
38
 
40
- The component leverages Tailwind CSS classes and supports custom styling through the `className` prop while maintaining consistent design system patterns.
39
+ ## Notes
40
+
41
+ - Requires the `cn` utility from [`../../utils/cn`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/utils/cn.ts).
42
+ - The `"use client"` directive marks this as a React Client Component.
43
+ - Font weight references the ODS semantic token `--font-weight-semibold` rather than a hardcoded Tailwind class.
@@ -1,23 +1,19 @@
1
- <!-- source-hash: d0a2530b7492095645c20b724f126d0d -->
1
+ <!-- source-hash: 585cbb6811e0a4bfee9cb696fd04216d -->
2
2
  A client-side React card component that displays a brand association item with an icon, title, description, and an external link button.
3
3
 
4
4
  ## Key Components
5
5
 
6
6
  ### Interfaces
7
7
 
8
- | Interface | Description |
9
- |-----------|-------------|
10
- | `BrandAssociationItem` | Data model for a single card accepts a React component or element as icon, plus title, description, button text, and link URL |
11
- | `BrandAssociationCardProps` | Props for the card component; wraps `BrandAssociationItem` with an optional `className` |
8
+ - **`BrandAssociationItem`** Data shape for a card entry, containing:
9
+ - `icon` — Accepts either a React component type or a pre-rendered React element
10
+ - `title`, `description`, `buttonText`, `link`Display content and navigation target
12
11
 
13
- ### `BrandAssociationCard`
12
+ - **`BrandAssociationCardProps`** — Props for the card component (`item` + optional `className`)
14
13
 
15
- The primary exported component. Renders a styled card with:
14
+ ### Exports
16
15
 
17
- - **Icon** — handles both raw `React.ReactElement` and `React.ComponentType` via an internal `renderIcon()` helper
18
- - **Title** — displayed as an `h3` with ODS primary text styling
19
- - **Description** — secondary text using DM Sans font
20
- - **CTA Button** — an outline `Button` with an `ExternalLink` icon that opens the provided `link` in a new tab
16
+ - **`BrandAssociationCard`**The primary card component. Internally uses a `renderIcon` helper that handles both raw React elements and component types (rendering the latter at `size={120}` with `w-20 h-20` classes).
21
17
 
22
18
  ## Usage Example
23
19
 
@@ -26,16 +22,24 @@ import { BrandAssociationCard } from './brand-association-card';
26
22
  import { ShieldCheck } from 'lucide-react';
27
23
 
28
24
  const item = {
29
- icon: ShieldCheck,
25
+ icon: ShieldCheck, // component type
30
26
  title: 'Security Tools',
31
- description: 'Browse our curated list of security integrations.',
27
+ description: 'Browse our curated security integrations.',
32
28
  buttonText: 'Integrations',
33
- link: 'https://flamingo.run/integrations',
29
+ link: 'https://openframe.ai/integrations',
34
30
  };
35
31
 
36
- export default function Page() {
37
- return <BrandAssociationCard item={item} className="rounded-xl" />;
38
- }
32
+ <BrandAssociationCard item={item} className="rounded-lg" />
33
+
34
+ // Pre-rendered element also accepted:
35
+ const item2 = {
36
+ icon: <ShieldCheck size={80} color="#FF5A1F" />, // React element
37
+ // ...
38
+ };
39
39
  ```
40
40
 
41
- > **Note:** The `icon` prop accepts either a component type (e.g., a Lucide icon) or a pre-rendered `React.ReactElement`. When passing a component, it is rendered at `120px` size with `w-20 h-20` Tailwind classes applied automatically.
41
+ ## Notes
42
+
43
+ - Uses `'use client'` — intended for Next.js App Router client components.
44
+ - The `Button` component's `openInNewTab` prop and `ExternalLink` icon are applied automatically.
45
+ - Source: [`brand-association-card.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/brand-association-card.tsx)
@@ -1,17 +1,17 @@
1
- <!-- source-hash: cb8e8ae598fa4e3046aa0545d0ea86b2 -->
2
- Accessible breadcrumb navigation component built on semantic HTML with full ARIA support, using Radix UI's `Slot` for flexible rendering.
1
+ <!-- source-hash: e96bf18f995c9fd275aa6298571a6e80 -->
2
+ Accessible breadcrumb navigation component built on native HTML elements with Radix UI's `Slot` primitive for flexible rendering.
3
3
 
4
4
  ## Key Components
5
5
 
6
- | Export | Type | Description |
7
- |--------|------|-------------|
8
- | `Breadcrumb` | `nav` wrapper | Root container with `aria-label="breadcrumb"` |
9
- | `BreadcrumbList` | `ol` element | Ordered list of breadcrumb items |
10
- | `BreadcrumbItem` | `li` element | Individual breadcrumb entry wrapper |
11
- | `BreadcrumbLink` | `a` element | Clickable navigation link; supports `asChild` for custom renderers |
12
- | `BreadcrumbPage` | `span` element | Current page indicator (`aria-current="page"`, non-interactive) |
13
- | `BreadcrumbSeparator` | `li` element | Visual divider, defaults to `ChevronRight`; accepts custom children |
14
- | `BreadcrumbEllipsis` | `span` element | Collapsed items indicator using `MoreHorizontal` icon |
6
+ | Export | Element | Purpose |
7
+ |---|---|---|
8
+ | `Breadcrumb` | `<nav>` | Root wrapper with `aria-label="breadcrumb"` |
9
+ | `BreadcrumbList` | `<ol>` | Ordered list of breadcrumb items |
10
+ | `BreadcrumbItem` | `<li>` | Individual breadcrumb entry |
11
+ | `BreadcrumbLink` | `<a>` / Slot | Clickable navigation link; supports `asChild` for custom renderers |
12
+ | `BreadcrumbPage` | `<span>` | Current page indicator (`aria-current="page"`, non-interactive) |
13
+ | `BreadcrumbSeparator` | `<li>` | Decorative divider; defaults to `ChevronRight`, accepts custom children |
14
+ | `BreadcrumbEllipsis` | `<span>` | Collapsed items indicator using `MoreHorizontal` icon |
15
15
 
16
16
  ## Usage Example
17
17
 
@@ -24,9 +24,9 @@ import {
24
24
  BreadcrumbPage,
25
25
  BreadcrumbSeparator,
26
26
  BreadcrumbEllipsis,
27
- } from "@/components/ui/breadcrumb"
27
+ } from "@openframe-oss-lib/ui"
28
28
 
29
- export function AppBreadcrumb() {
29
+ export function Nav() {
30
30
  return (
31
31
  <Breadcrumb>
32
32
  <BreadcrumbList>
@@ -51,4 +51,8 @@ export function AppBreadcrumb() {
51
51
  }
52
52
  ```
53
53
 
54
- > **`asChild` pattern:** Pass `asChild` to `BreadcrumbLink` to delegate rendering to a child component (e.g., a router `Link`), inheriting all props via Radix UI `Slot`.
54
+ **Notes:**
55
+ - `BreadcrumbLink` accepts `asChild` to delegate rendering to a child component (e.g., Next.js `<Link>`).
56
+ - `BreadcrumbSeparator` renders a custom separator when provided children.
57
+ - All components forward refs and accept standard HTML element props.
58
+ - Source: [`breadcrumb.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/breadcrumb.tsx)
@@ -1,38 +1,50 @@
1
- <!-- source-hash: 61e38ca748fb412e4ec00e0fad6f9d71 -->
2
- A React component for rendering customizable bulleted lists with flexible styling and icon options.
1
+ <!-- source-hash: 0668ba93667ff20c23b93aa4bdbe8f38 -->
2
+ A client-side React component that renders a styled bullet list with customizable icons, colors, spacing, and layout. Accepts both plain strings and structured `BulletListItem` objects.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **`BulletList`** - Main component that renders a list of items with customizable bullet icons
7
- - **`BulletListItem`** - Interface for individual list items with optional ID
8
- - **`BulletListProps`** - Configuration interface for bullet appearance, spacing, and styling
9
- - **`spacingMap`** - Predefined spacing options (sm/md/lg) using Tailwind classes
6
+ ### Interfaces
7
+
8
+ - **`BulletListItem`** Structured item shape with required `text` and optional `id` fields
9
+ - **`BulletListProps`** Full props interface for the `BulletList` component
10
+
11
+ ### Exports
12
+
13
+ - **`BulletList`** — Main component that renders a vertically spaced list with icon bullets
14
+
15
+ ### Props
16
+
17
+ | Prop | Type | Default |
18
+ |---|---|---|
19
+ | `items` | `string[] \| BulletListItem[]` | *(required)* |
20
+ | `bulletColor` | `string` | `var(--color-text-primary)` |
21
+ | `bulletIcon` | `React.ComponentType` | `ShapeCircleDashIcon` |
22
+ | `bulletSize` | `number` | `16` |
23
+ | `textClassName` | `string` | `text-h4 text-ods-text-primary` |
24
+ | `itemClassName` | `string` | `flex items-start gap-3` |
25
+ | `containerClassName` | `string` | `''` |
26
+ | `spacing` | `'sm' \| 'md' \| 'lg'` | `'md'` |
10
27
 
11
28
  ## Usage Example
12
29
 
13
30
  ```typescript
14
31
  import { BulletList } from './bullet-list';
15
- import { CustomIcon } from './icons';
32
+ import { CheckIcon } from '../icons';
16
33
 
17
- // Simple string array
18
- <BulletList
19
- items={["First item", "Second item", "Third item"]}
20
- spacing="lg"
21
- />
34
+ // With plain strings
35
+ <BulletList items={['Deploy in minutes', 'No vendor lock-in', 'AI-powered automation']} />
22
36
 
23
- // Advanced configuration with custom styling
24
- <BulletList
37
+ // With structured items and custom icon
38
+ <BulletList
25
39
  items={[
26
- { text: "Custom bullet color", id: "item-1" },
27
- { text: "Different icon", id: "item-2" }
40
+ { id: 'feat-1', text: 'Automated ticketing' },
41
+ { id: 'feat-2', text: 'Real-time monitoring' },
28
42
  ]}
29
- bulletColor="#ff6b6b"
30
- bulletIcon={CustomIcon}
31
- bulletSize={20}
32
- spacing="sm"
33
- textClassName="text-lg font-bold"
34
- containerClassName="bg-gray-100 p-4 rounded-lg"
43
+ bulletIcon={CheckIcon}
44
+ bulletColor="var(--color-accent)"
45
+ spacing="lg"
46
+ textClassName="text-body text-ods-text-secondary"
35
47
  />
36
48
  ```
37
49
 
38
- The component automatically normalizes string arrays to `BulletListItem` objects and provides responsive typography with DM Sans font by default. Each item is rendered with a flex layout for proper bullet alignment.
50
+ **Source:** [`bullet-list.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/bullet-list.tsx)