@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
@@ -0,0 +1,53 @@
1
+ <!-- source-hash: f09cbac6cf5f4d4f2a1fcee7319cb108 -->
2
+ A composable warning card component that renders a highlighted alert banner header followed by optional body content, built for the OpenFrame Design System (ODS).
3
+
4
+ ## Key Components
5
+
6
+ ### `WarningBlock`
7
+
8
+ The primary export — a card-style container with two regions:
9
+
10
+ - **Banner** — styled with ODS warning colors (`bg-ods-warning-secondary`, `text-ods-warning`), displays an optional icon and a title
11
+ - **Body** — renders `children` below the banner; fully composable (text, `PathsDisplay` lists, command rows, etc.)
12
+
13
+ ### `WarningBlockProps`
14
+
15
+ | Prop | Type | Default | Description |
16
+ |------|------|---------|-------------|
17
+ | `title` | `React.ReactNode` | — | Content rendered inside the warning banner header |
18
+ | `icon` | `React.ReactNode` | `<AlertTriangle />` | Icon shown at banner start; pass `null` to hide |
19
+ | `children` | `React.ReactNode` | — | Body content below the banner |
20
+ | `className` | `string` | — | Extra classes for the outer card container |
21
+
22
+ ## Usage Example
23
+
24
+ ```typescript
25
+ import { WarningBlock } from './warning-block'
26
+ import { PathsDisplay } from './paths-display'
27
+
28
+ // Basic usage
29
+ <WarningBlock title="Configuration required before proceeding">
30
+ <p>Ensure all paths are set correctly before continuing.</p>
31
+ </WarningBlock>
32
+
33
+ // With custom icon and composed body
34
+ <WarningBlock
35
+ title="New device detected — action needed"
36
+ icon={<ShieldAlert className="h-6 w-6" />}
37
+ className="my-4"
38
+ >
39
+ <PathsDisplay paths={requiredPaths} />
40
+ <p>Run the setup command to register this device.</p>
41
+ </WarningBlock>
42
+
43
+ // Without icon
44
+ <WarningBlock title="Deprecated endpoint in use" icon={null}>
45
+ <p>Migrate to the v2 API before the next release cycle.</p>
46
+ </WarningBlock>
47
+ ```
48
+
49
+ ## Notes
50
+
51
+ - Spacing follows the ODS scale: card padding `16px` / gap `12px`, banner padding `12px` / gap `16px`
52
+ - `title` uses `text-h3` — responsive (`14px` mobile, `18px` from `md` up), bold by token default
53
+ - Client component (`'use client'`) — safe for interactive React trees
@@ -1,43 +1,42 @@
1
- <!-- source-hash: 3297a26442c5b70d119e373c4687b748 -->
2
- Reusable AI enrichment panel component that renders a full-featured UI section for triggering AI-powered data enrichment, displaying status feedback, confidence scores, warnings, and optional custom instructions.
1
+ <!-- source-hash: b6e50dac118cc70766e1c84f14a927c5 -->
2
+ Reusable React section component that renders a complete AI enrichment UI panel, including a trigger button, optional custom instructions textarea, status feedback, warnings, confidence scoring, and result actions.
3
3
 
4
4
  ## Key Components
5
5
 
6
6
  ### Interfaces
7
7
 
8
- | Interface | Purpose |
9
- |-----------|---------|
10
- | `ConfidenceField` | Defines a field with an optional confidence score for display |
11
- | `AIRequiredField` | Describes a required form field, its fill state, and display label |
12
- | `AIEnrichSectionProps` | Full prop contract for the `AIEnrichSection` component |
8
+ - **`ConfidenceField`** Describes a field with an optional confidence score (`label`, `key`, `confidence`).
9
+ - **`AIRequiredField`** — Describes a field required before enrichment can run (`key`, `label`, `isFilled`). Unfilled fields are displayed as badges when the button is disabled.
10
+ - **`AIEnrichSectionProps`** Full prop surface for the section component, covering button state, status, warnings, layout variant, custom instructions, and action callbacks.
13
11
 
14
- ### Component: `AIEnrichSection`
12
+ ### Component
15
13
 
16
- The main exported component. Renders a card-style panel with:
17
-
18
- - **Header** Icon (defaults to `SparklesIcon`), title, and optional description
19
- - **Custom Instructions** (opt-in) — Controlled `<Textarea>` for user-provided AI focus hints, passed upstream to Claude via `buildEditorFocusBlock()`
20
- - **Action Buttons** `AIEnrichButton` (primary) and optional cancel button during loading
21
- - **Disabled State** Shows `disabledMessage` with badge-styled list of unfilled required fields
22
- - **Loading State** Spinner with live `statusMessage`
23
- - **Results Section** — Success/error status indicator, confidence badge, `AIWarningsSection`, custom `children`, and a clear button
14
+ - **`AIEnrichSection`** — The primary export. Renders a card-style panel containing:
15
+ - Icon + title + description header
16
+ - Optional controlled `<Textarea>` for editor-supplied AI focus instructions
17
+ - `AIEnrichButton` trigger (full-width)
18
+ - Optional cancel button (visible only during loading)
19
+ - Disabled state message with unfilled-field badges
20
+ - Loading spinner + status message
21
+ - Success/error result block with confidence badge, warnings (`AIWarningsSection`), slot for custom children, and a "Clear Results" button
24
22
 
25
23
  ## Usage Example
26
24
 
27
25
  ```typescript
26
+ import { AIEnrichSection } from './AIEnrichSection'
27
+
28
28
  <AIEnrichSection
29
- title="Enrich Asset"
30
- description="Use AI to auto-fill missing asset details."
29
+ title="AI Enrichment"
30
+ description="Auto-fill fields using Claude."
31
31
  onEnrich={handleEnrich}
32
32
  loading={isLoading}
33
- canEnrich={hasRequiredFields}
33
+ canEnrich={!!formData.version}
34
34
  status={enrichStatus}
35
- statusMessage="Analyzing asset data..."
35
+ statusMessage={enrichMessage}
36
36
  overallConfidence={87}
37
37
  warnings={enrichWarnings}
38
38
  requiredFields={[
39
- { key: 'version', label: 'Version', isFilled: !!formValues.version },
40
- { key: 'vendor', label: 'Vendor', isFilled: !!formValues.vendor },
39
+ { key: 'version', label: 'Version', isFilled: !!formData.version },
41
40
  ]}
42
41
  showCustomInstructions
43
42
  customInstructions={instructions}
@@ -50,6 +49,6 @@ The main exported component. Renders a card-style panel with:
50
49
 
51
50
  ## Notes
52
51
 
53
- - Supports `'default'` and `'compact'` layout variants via the `variant` prop
54
- - `customInstructions` is fully controlled the parent owns the string value
55
- - `requiredFields` drives both `canEnrich` gating and the unfilled-fields badge display
52
+ - `canEnrich` and `disabled` are OR'd together — both must be falsy for the button to be active.
53
+ - The custom instructions value is **fully controlled** by the parent; the component never owns it internally. The string is forwarded to the backend and injected into the Claude prompt via `buildEditorFocusBlock()`.
54
+ - Supports `variant="compact"` for tighter padding in space-constrained layouts.
@@ -1,35 +1,36 @@
1
- <!-- source-hash: 8ed764a47cc7c014a7a0e2d2397b6e54 -->
2
- A React badge component that visually indicates fields required for AI enrichment, featuring a sparkles icon and ODS cyan styling with responsive sizing options.
1
+ <!-- source-hash: 54e34158f258c13928a52d614d0189f7 -->
2
+ A badge component that visually marks form fields or UI elements as required for AI enrichment, rendered with a cyan sparkle icon and "AI-required" label.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **AIRequiredBadge** - Main component that renders an inline badge with sparkles icon
7
- - **AIRequiredBadgeProps** - Interface defining className and size props
8
- - **SparklesIcon** - Imported icon component for visual enhancement
9
- - **cn** - Utility function for conditional class name merging
6
+ ### `AIRequiredBadgeProps`
7
+ | Prop | Type | Default | Description |
8
+ |------|------|---------|-------------|
9
+ | `className` | `string` | | Additional CSS classes |
10
+ | `size` | `'sm' \| 'md'` | `'sm'` | Controls badge sizing and icon dimensions |
11
+
12
+ ### `AIRequiredBadge`
13
+ A client-side React functional component that renders a pill-shaped badge using ODS flamingo cyan colors and a `SparklesIcon`. Icon size scales with the `size` prop (`12px` for `sm`, `14px` for `md`).
10
14
 
11
15
  ## Usage Example
12
16
 
13
17
  ```typescript
14
- import { AIRequiredBadge } from './components/ui/badges/AIRequiredBadge'
18
+ import { AIRequiredBadge } from '@openframe-oss-lib/components'
15
19
 
16
- // Small inline badge (default)
20
+ // Default small variant (inline with a label)
17
21
  <label>
18
- Description
22
+ Company Name
19
23
  <AIRequiredBadge />
20
24
  </label>
21
25
 
22
- // Medium size variant
23
- <div className="form-section">
24
- AI Content Field
25
- <AIRequiredBadge size="md" />
26
- </div>
27
-
28
- // With custom styling
29
- <AIRequiredBadge
30
- size="sm"
31
- className="ml-4 opacity-80"
32
- />
26
+ // Medium variant with custom class
27
+ <AIRequiredBadge size="md" className="ml-4" />
33
28
  ```
34
29
 
35
- The component uses ODS (Open Design System) Flamingo cyan colors with 10% opacity background, includes a sparkles icon that scales with the badge size, and applies DM Sans font styling. The badge is designed to be placed inline next to form labels or field descriptions to clearly communicate AI functionality requirements.
30
+ ## Notes
31
+
32
+ - Marked `'use client'` — compatible with Next.js App Router client boundaries.
33
+ - Styling relies on ODS design tokens (`--ods-flamingo-cyan-base`, `bg-ods-flamingo-cyan/10`) — ensure the ODS token stylesheet is loaded in the consuming app.
34
+ - Use `size="md"` for standalone/prominent placements; `size="sm"` (default) suits compact inline field labels.
35
+
36
+ **Source:** [`flamingo-stack/openframe-oss-lib`](https://github.com/flamingo-stack/openframe-oss-lib)
@@ -1,44 +1,51 @@
1
- <!-- source-hash: 99dd713ce86aad3a5fa950334530599b -->
2
- A React component that displays AI operation status with visual indicators, confidence levels, and custom messaging for different AI processing states.
1
+ <!-- source-hash: 3b10940f9d91c7107c1ed331709d076d -->
2
+ Displays an AI processing status badge with optional confidence scoring, rendering a sparkles icon alongside state-aware labels and color theming for idle, loading, success, and error states.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **AIStatusIndicator**: Main component that renders status badges with sparkle icons
7
- - **AIStatus**: Type union defining four states: `'idle' | 'loading' | 'success' | 'error'`
8
- - **AIStatusIndicatorProps**: Interface for component props including status, confidence, message, and styling options
9
- - **statusConfig**: Configuration object mapping each status to colors, backgrounds, and default labels
6
+ - **`AIStatus`** Union type: `'idle' | 'loading' | 'success' | 'error'`
7
+ - **`AIStatusIndicatorProps`** Props interface accepting `status`, `confidence` (0–100), `message`, `showConfidence`, and `className`
8
+ - **`statusConfig`** Internal map of per-state colors, backgrounds, and default labels
9
+ - **`AIStatusIndicator`** Main exported component; animates the sparkles icon on `loading`, applies confidence-based color classes on `success`, and renders a bordered confidence badge when `showConfidence` is true
10
10
 
11
11
  ## Usage Example
12
12
 
13
13
  ```typescript
14
- import { AIStatusIndicator, AIStatus } from './AIStatusIndicator'
15
-
16
- function AIProcessingPanel() {
17
- const [status, setStatus] = useState<AIStatus>('idle')
18
- const [confidence, setConfidence] = useState<number>()
19
-
20
- return (
21
- <div className="space-y-4">
22
- {/* Basic status indicator */}
23
- <AIStatusIndicator status="loading" />
24
-
25
- {/* With confidence score */}
26
- <AIStatusIndicator
27
- status="success"
28
- confidence={87}
29
- message="Data enrichment complete"
30
- />
31
-
32
- {/* Custom styling */}
33
- <AIStatusIndicator
34
- status="error"
35
- message="Processing failed"
36
- showConfidence={false}
37
- className="border border-red-200"
38
- />
39
- </div>
40
- )
41
- }
14
+ import { AIStatusIndicator } from './AIStatusIndicator'
15
+
16
+ // Loading state
17
+ <AIStatusIndicator status="loading" />
18
+
19
+ // Success with confidence score
20
+ <AIStatusIndicator
21
+ status="success"
22
+ confidence={87}
23
+ showConfidence={true}
24
+ />
25
+
26
+ // Success with custom message and no confidence badge
27
+ <AIStatusIndicator
28
+ status="success"
29
+ confidence={52}
30
+ message="Analysis complete"
31
+ showConfidence={false}
32
+ />
33
+
34
+ // Error with custom message
35
+ <AIStatusIndicator
36
+ status="error"
37
+ message="Enrichment failed"
38
+ className="mt-2"
39
+ />
42
40
  ```
43
41
 
44
- The component automatically handles visual states including loading animations, confidence-based color coding, and responsive badge styling. It integrates with the ODS design system and includes accessibility considerations through semantic markup.
42
+ ## Notes
43
+
44
+ - Confidence badge (bordered pill) only renders when `status === 'success'` and `showConfidence` is `true`
45
+ - Color classes for icon and label defer to `getConfidenceTextClass` on success, otherwise fall back to `statusConfig[status].color`
46
+ - The sparkles icon pulses via `animate-pulse` during `loading`
47
+ - Styling relies on ODS design tokens (e.g., `text-ods-flamingo-cyan`, `bg-ods-success/10`) and the shared `cn` utility
48
+
49
+ ## Source
50
+
51
+ [`AIStatusIndicator.tsx` on GitHub](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/AIStatusIndicator.tsx)
@@ -1,37 +1,40 @@
1
- <!-- source-hash: ed447a370135951f5c09122a781e6d22 -->
2
- A React component that displays AI-generated warnings in a styled warning box with yellow theme and warning icon. The component conditionally renders only when warnings are present.
1
+ <!-- source-hash: 39b9cc086c5ad9f1907000e44428e838 -->
2
+ A client-side React component that renders a styled warning panel for displaying AI-generated warnings, returning `null` when no warnings are present.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **AIWarningsSection**: Main functional component that renders a warning box
7
- - **AIWarningsSectionProps**: TypeScript interface defining component props
8
- - `warnings`: Array of warning strings to display
9
- - `title`: Optional title (defaults to "AI Warnings")
10
- - `className`: Optional additional CSS classes
6
+ - **`AIWarningsSectionProps`** Interface defining component props:
7
+ - `warnings: string[]` Array of warning messages to display
8
+ - `title?: string` Optional panel title (defaults to `'AI Warnings'`)
9
+ - `className?: string` Optional additional CSS classes
10
+ - **`AIWarningsSection`** React functional component that renders a warning-styled card with a triangle alert icon, a configurable title, and a bulleted list of warning messages
11
11
 
12
12
  ## Usage Example
13
13
 
14
14
  ```typescript
15
15
  import { AIWarningsSection } from './AIWarningsSection'
16
16
 
17
- // Basic usage with warnings
18
- <AIWarningsSection
17
+ // Basic usage
18
+ <AIWarningsSection
19
19
  warnings={[
20
- "AI generated content may contain inaccuracies",
21
- "Please verify technical details before implementation",
22
- "Code examples should be tested in your environment"
23
- ]}
20
+ 'This ticket may have incomplete information.',
21
+ 'Resolution confidence is below threshold.',
22
+ ]}
24
23
  />
25
24
 
26
- // Custom title and styling
25
+ // With custom title and className
27
26
  <AIWarningsSection
28
- warnings={["Custom warning message"]}
29
- title="Important Notice"
30
- className="mb-4"
27
+ title="Review Required"
28
+ warnings={['Duplicate ticket detected.']}
29
+ className="mt-4"
31
30
  />
32
31
 
33
- // Component returns null when no warnings
34
- <AIWarningsSection warnings={[]} /> // Renders nothing
32
+ // Returns null nothing rendered
33
+ <AIWarningsSection warnings={[]} />
35
34
  ```
36
35
 
37
- The component features a yellow warning theme with a triangular warning icon, responsive design using Tailwind CSS, and automatic list formatting with bullet points. It uses the `cn` utility for conditional class name merging and includes proper TypeScript typing for all props.
36
+ ## Notes
37
+
38
+ - Returns `null` for empty or undefined `warnings` arrays, making it safe to render unconditionally
39
+ - Styling uses ODS (OpenFrame Design System) tokens (`ods-warning`) for consistent theming
40
+ - Uses [`cn`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/utils/cn.ts) utility for conditional class merging
@@ -1,36 +1,51 @@
1
- <!-- source-hash: 10d2f0223ed1e2be95e5d01124a512c1 -->
2
- A React component that displays AI confidence scores as styled badges with customizable appearance and content options.
1
+ <!-- source-hash: a4dc71136bc1de976302794283813d31 -->
2
+ A React badge component that visually displays an AI confidence score with dynamic color coding based on confidence level thresholds.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **ConfidenceBadge**: Main component that renders confidence levels as visually distinct badges
7
- - **ConfidenceBadgeProps**: Interface defining component configuration options
8
- - **sizeStyles**: Object mapping size variants to Tailwind CSS classes
6
+ ### `ConfidenceBadgeProps`
7
+
8
+ | Prop | Type | Default | Description |
9
+ |---|---|---|---|
10
+ | `confidence` | `number` | — | Confidence score (0–100) |
11
+ | `showLabel` | `boolean` | `true` | Show text label (e.g., "High", "Low") |
12
+ | `showPercentage` | `boolean` | `true` | Show numeric percentage |
13
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'sm'` | Controls padding/sizing |
14
+ | `className` | `string` | — | Additional CSS classes |
15
+
16
+ ### Confidence Utilities Used
17
+
18
+ - `getConfidenceLevel` — maps score to level (`'none'`, `'low'`, `'medium'`, `'high'`)
19
+ - `getConfidenceLabel` — returns display label string
20
+ - `getConfidenceBorderClass` / `getConfidenceTextClass` / `getConfidenceBgClass` — return Tailwind classes for theming
21
+
22
+ > **Note:** Returns `null` when `confidence` is `undefined` or resolves to level `'none'`.
9
23
 
10
24
  ## Usage Example
11
25
 
12
26
  ```typescript
13
- import { ConfidenceBadge } from './ConfidenceBadge'
27
+ import { ConfidenceBadge } from '@openframe/ui'
14
28
 
15
- // Basic usage with confidence score
16
- <ConfidenceBadge confidence={85} />
29
+ // Full badge with label and percentage
30
+ <ConfidenceBadge confidence={87} />
17
31
 
18
- // Customized display options
19
- <ConfidenceBadge
20
- confidence={92}
32
+ // Percentage only, large size
33
+ <ConfidenceBadge
34
+ confidence={52}
35
+ showLabel={false}
36
+ showPercentage={true}
21
37
  size="lg"
22
- showLabel={true}
38
+ />
39
+
40
+ // Label only, custom class
41
+ <ConfidenceBadge
42
+ confidence={30}
23
43
  showPercentage={false}
24
44
  className="ml-2"
25
45
  />
26
46
 
27
- // Different confidence levels
28
- <ConfidenceBadge confidence={45} /> // Low confidence
29
- <ConfidenceBadge confidence={75} /> // Medium confidence
30
- <ConfidenceBadge confidence={95} /> // High confidence
31
-
32
- // No badge rendered for undefined/invalid confidence
33
- <ConfidenceBadge confidence={undefined} /> // Returns null
47
+ // Renders nothing — confidence level is 'none'
48
+ <ConfidenceBadge confidence={undefined} />
34
49
  ```
35
50
 
36
- The component automatically determines styling (colors, borders, backgrounds) based on confidence level using utility functions. It supports three sizes (sm/md/lg) and conditionally renders labels and percentages. Returns null for invalid confidence values to prevent rendering empty badges.
51
+ **Source:** [`ConfidenceBadge.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/ConfidenceBadge.tsx)
@@ -0,0 +1,48 @@
1
+ <!-- source-hash: d553ccb9cfde28519e82f8bede63fcc0 -->
2
+ Presentational marketing panel displayed alongside authentication forms, showing platform benefits with icons, a title, description, and a "learn more" CTA button.
3
+
4
+ ## Key Components
5
+
6
+ ### Interfaces
7
+
8
+ - **`AuthBenefit`** — Shape for a single benefit item: `icon` (React node) and `label` (string)
9
+ - **`AuthBenefitsPanelProps`** — Props for the panel: `title`, `description`, `benefits`, `learnMoreLabel`, `learnMoreUrl`, `className`
10
+
11
+ ### Exports
12
+
13
+ - **`AuthBenefitsPanel`** — Main component; fully presentational with all content overridable via props. Ships with four default benefits (no card required, cancel anytime, 14-day free trial, no contract) and links to `flamingo.run`.
14
+
15
+ ## Usage Example
16
+
17
+ ```typescript
18
+ import {
19
+ AuthBenefitsPanel,
20
+ AuthBenefit,
21
+ } from './auth-benefits-panel'
22
+ import { ShieldIcon } from '../icons'
23
+
24
+ const customBenefits: AuthBenefit[] = [
25
+ { icon: <ShieldIcon />, label: 'SOC 2 Compliant' },
26
+ { icon: <ShieldIcon />, label: 'GDPR Ready' },
27
+ ]
28
+
29
+ // Default content
30
+ <AuthBenefitsPanel />
31
+
32
+ // Custom content
33
+ <AuthBenefitsPanel
34
+ title="Enterprise-grade MSP Platform"
35
+ description="Streamline your ops with AI-powered automation."
36
+ benefits={customBenefits}
37
+ learnMoreLabel="Explore Features"
38
+ learnMoreUrl="https://openframe.ai"
39
+ className="my-custom-class"
40
+ />
41
+ ```
42
+
43
+ ## Notes
44
+
45
+ - All props are optional; sensible defaults are provided for standalone use
46
+ - The "learn more" button opens in a new tab and renders the `OpenFrameLogo` as a left icon
47
+ - Styled with ODS design tokens (`ods-bg`, `ods-text-primary`, `ods-border`) for consistent theming
48
+ - Source: [`flamingo-stack/openframe-oss-lib`](https://github.com/flamingo-stack/openframe-oss-lib)
@@ -0,0 +1,51 @@
1
+ <!-- source-hash: 65ed4b47533c0df4f7708bf27477619f -->
2
+ Renders branded UI elements for OpenFrame authentication screens: the OpenFrame logo + wordmark and a "Powered by Flamingo" footer mark.
3
+
4
+ ## Key Components
5
+
6
+ ### `OpenFrameWordmark`
7
+
8
+ Displays the OpenFrame logo icon alongside the "OpenFrame" wordmark text. Uses CSS custom properties for theming (`--color-accent-primary`, `--color-text-primary`).
9
+
10
+ ### `PoweredByFlamingo`
11
+
12
+ Renders a "Powered by Flamingo" attribution footer. Accepts a `compact` prop to control logo sizing across breakpoints.
13
+
14
+ ### `PoweredByFlamingoProps`
15
+
16
+ | Prop | Type | Default | Description |
17
+ |------|------|---------|-------------|
18
+ | `compact` | `boolean` | `false` | Keeps logo at 56×16px at all breakpoints; when `false`, grows to 83×24px on tablet and above |
19
+
20
+ ## Usage Example
21
+
22
+ ```typescript
23
+ import { OpenFrameWordmark, PoweredByFlamingo } from './auth-branding'
24
+
25
+ // Auth screen header
26
+ function AuthLayout() {
27
+ return (
28
+ <div className="flex flex-col min-h-screen">
29
+ <header>
30
+ <OpenFrameWordmark />
31
+ </header>
32
+
33
+ {/* ... auth form content ... */}
34
+
35
+ <footer>
36
+ {/* Responsive logo (default) */}
37
+ <PoweredByFlamingo />
38
+
39
+ {/* Fixed small logo for compact layouts */}
40
+ <PoweredByFlamingo compact />
41
+ </footer>
42
+ </div>
43
+ )
44
+ }
45
+ ```
46
+
47
+ ## Notes
48
+
49
+ - This is a `'use client'` component (Next.js App Router).
50
+ - Logo colors are driven entirely by CSS custom properties — no hardcoded values.
51
+ - The `FlamingoLogoIcon` source aspect ratio is 416×120 (~3.47:1); explicit `w`/`h` classes prevent the SVG from being rendered as a square.
@@ -0,0 +1,51 @@
1
+ <!-- source-hash: a29fa0a658bd895353b19e3ef8d172c2 -->
2
+ Responsive two-column layout shell for OpenFrame authentication pages, providing a split-panel design with a form column and a marketing/benefits column on desktop, collapsing to a single centered column on mobile and tablet.
3
+
4
+ ## Key Components
5
+
6
+ - **`AuthShell`** — Main layout component that renders the responsive shell
7
+ - **`AuthShellProps`** — Interface defining the component's configurable slots:
8
+ - `tabs` — Optional tab selector (e.g. Sign Up / Login) rendered above the form
9
+ - `children` — Required main form content
10
+ - `benefits` — Optional marketing panel; defaults to `<AuthBenefitsPanel />`
11
+ - `footer` — Optional desktop-only footer pinned to the bottom-left of the form column
12
+ - `className` — Optional additional CSS class names
13
+
14
+ ## Layout Behavior
15
+
16
+ | Breakpoint | Layout |
17
+ |---|---|
18
+ | Mobile / Tablet | Single column: tabs → form → benefits → powered-by |
19
+ | Desktop (`lg`) | Two-column split: form (left) · marketing + wordmark (right) |
20
+
21
+ The `of-auth-shell` class on the root element serves as a stable CSS hook for shell-level overrides (e.g. native mobile top safe-area inset padding).
22
+
23
+ ## Usage Example
24
+
25
+ ```typescript
26
+ import { AuthShell } from './auth-shell'
27
+ import { AuthTabs } from './auth-tabs'
28
+
29
+ export default function LoginPage() {
30
+ return (
31
+ <AuthShell
32
+ tabs={<AuthTabs active="login" />}
33
+ footer={<a href="/signup">Back to Sign Up</a>}
34
+ >
35
+ <LoginForm />
36
+ </AuthShell>
37
+ )
38
+ }
39
+ ```
40
+
41
+ ```typescript
42
+ // With a custom benefits panel
43
+ <AuthShell
44
+ benefits={<CustomMarketingPanel />}
45
+ className="my-custom-shell"
46
+ >
47
+ <CreateOrganizationForm />
48
+ </AuthShell>
49
+ ```
50
+
51
+ **Source:** [`auth-shell.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/auth-shell.tsx)
@@ -0,0 +1,48 @@
1
+ <!-- source-hash: 5b60813cbd189cd03facf7d2af11352d -->
2
+ A client-side React component that renders a styled "Back to Login" text link used across authentication screens.
3
+
4
+ ## Key Components
5
+
6
+ ### `BackToLoginLink`
7
+
8
+ A button styled as an underlined text link, designed for auth flow navigation.
9
+
10
+ **Props (`BackToLoginLinkProps`):**
11
+
12
+ | Prop | Type | Default | Description |
13
+ |---|---|---|---|
14
+ | `onClick` | `() => void` | — | Callback fired when the link is clicked |
15
+ | `label` | `string` | `'Back to Login'` | Customizable link text |
16
+ | `className` | `string` | — | Optional class overrides via `cn` utility |
17
+
18
+ ## Usage Example
19
+
20
+ ```typescript
21
+ import { BackToLoginLink } from './back-to-login-link'
22
+
23
+ function ForgotPasswordScreen() {
24
+ const handleBack = () => {
25
+ router.push('/login')
26
+ }
27
+
28
+ return (
29
+ <div>
30
+ <h1>Forgot Password</h1>
31
+ <BackToLoginLink onClick={handleBack} />
32
+
33
+ {/* With custom label and class */}
34
+ <BackToLoginLink
35
+ onClick={handleBack}
36
+ label="Return to Sign In"
37
+ className="text-ods-brand-primary"
38
+ />
39
+ </div>
40
+ )
41
+ }
42
+ ```
43
+
44
+ ## Notes
45
+
46
+ - Rendered as a `<button type="button">` to avoid unintended form submissions.
47
+ - Applies `text-h4` and `text-ods-text-secondary` design tokens by default; fully overridable via `className`.
48
+ - Source: [`flamingo-stack/openframe-oss-lib`](https://github.com/flamingo-stack/openframe-oss-lib)