@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,55 @@
1
+ <!-- source-hash: be0c6c024827bca8a7ca7b42a3a5a47e -->
2
+ Detail view component for rendering a single onboarding guide at `/onboarding-guides/<slug>`, supporting both SSR-controlled and self-fetching embed modes.
3
+
4
+ ## Key Components
5
+
6
+ ### `OnboardingGuideDetailViewProps`
7
+ Configuration interface with two operating modes:
8
+ - **Controlled (SSR):** Pass `initialData` with a server-fetched `OnboardingGuide`
9
+ - **Self-fetching:** Pass `slug` + `guideEndpoint` factory; the component fetches independently via `useSelfFetch`
10
+
11
+ Key props:
12
+
13
+ | Prop | Type | Description |
14
+ |---|---|---|
15
+ | `initialData` | `OnboardingGuide` | Server-fetched guide for SSR mode |
16
+ | `slug` / `guideEndpoint` | `string` / `fn` | Self-fetch mode identifiers |
17
+ | `MarkdownRenderer` | `ComponentType` | Swappable markdown renderer (defaults to `RichMarkdownRenderer`) |
18
+ | `renderRelatedCard` | `fn` | Per-row related guide card override |
19
+ | `relatedContent` | `ReactNode` | Host slot for cross-type related/FAQ rail |
20
+ | `shell` | `boolean` | Wraps in `<PageShell>` when `true` (default); padding-only when `false` |
21
+
22
+ ### `OnboardingGuideDetailView`
23
+ Main exported component. Renders:
24
+ 1. Tag badges (`EntityTagBadges`)
25
+ 2. Author/metadata grid with section and step order (`EntityAuthorCard`)
26
+ 3. Video player with warmup and captions (`EntityVideoSection`)
27
+ 4. Markdown body (`MarkdownRenderer`)
28
+ 5. Video bites strip (`VideoBitesStrip`)
29
+ 6. End-of-article author byline (`ArticleAuthorByline`)
30
+ 7. Same-section related guides list
31
+ 8. Host-injected `relatedContent` slot
32
+
33
+ ## Usage Example
34
+
35
+ ```typescript
36
+ // SSR / controlled mode (hub page)
37
+ <OnboardingGuideDetailView
38
+ initialData={serverFetchedGuide}
39
+ related={relatedGuides}
40
+ authorHref={`/authors/${guide.author.slug}`}
41
+ relatedContent={<FAQRail />}
42
+ />
43
+
44
+ // Self-fetching / config-only embed mode
45
+ <OnboardingGuideDetailView
46
+ slug={params.slug}
47
+ guideEndpoint={(s) => `/content/api/onboarding-guides/${s}`}
48
+ basePath="/onboarding-guides"
49
+ shell={false}
50
+ />
51
+ ```
52
+
53
+ ## Source
54
+
55
+ [`onboarding-guide-detail-view.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/onboarding-guide-detail-view.tsx)
@@ -0,0 +1,33 @@
1
+ <!-- source-hash: 3697dbc9bc0443fb641ee0824c085171 -->
2
+ Loading skeleton component for the `/onboarding-guides` catalog page, rendering chrome-less placeholder UI that mirrors the layout of `<OnboardingGuidesCatalogView>` to prevent layout shifts during data fetching.
3
+
4
+ ## Key Components
5
+
6
+ - **`OnboardingGuidesCatalogSkeleton`** — Default export-less named function component that renders an animated pulse skeleton matching the catalog view structure:
7
+ - Search input placeholder (`h-12`)
8
+ - Section pill/filter row with 4 pill placeholders
9
+ - Three grouped sections (4, 3, 3 cards) using `<OnboardingGuideCardSkeleton size="catalog" />`
10
+
11
+ ## Usage Example
12
+
13
+ ```typescript
14
+ // app/onboarding-guides/loading.tsx
15
+ import { OnboardingGuidesCatalogSkeleton } from '@/components/onboarding-guides-catalog-skeleton'
16
+
17
+ // Next.js automatically renders this during page-level Suspense.
18
+ // The host page owns the <DevSectionPage> shell; this component
19
+ // renders only the inner content region.
20
+ export default function Loading() {
21
+ return <OnboardingGuidesCatalogSkeleton />
22
+ }
23
+ ```
24
+
25
+ ## Notes
26
+
27
+ - **Chrome-less by design**: The host page provides the `<DevSectionPage sectionKey="onboarding">` shell (hero + back button). This skeleton must not re-render that shell — doing so causes duplicate hero/back-button during loading.
28
+ - **Zero layout shift**: Card heights match the loaded `<OnboardingGuideCardSkeleton size="catalog" />` exactly, so no reflow occurs on hydration.
29
+ - **Section structure**: Mirrors the loaded view's three sections with card counts `[4, 3, 3]` and a `w-full flex flex-col gap-10` wrapper.
30
+
31
+ ## Source
32
+
33
+ [`onboarding-guides-catalog-skeleton.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/onboarding-guides-catalog-skeleton.tsx)
@@ -0,0 +1,50 @@
1
+ <!-- source-hash: 29aaa826793fe156eae898997f8d9746 -->
2
+ Public-facing catalog view component for the `/onboarding-guides` route, supporting both SSR-controlled (hub) and self-fetching (config-only embed) data modes.
3
+
4
+ ## Key Components
5
+
6
+ ### `OnboardingGuidesCatalogViewProps`
7
+ Interface defining two mutually exclusive data modes:
8
+ - **Controlled mode**: `initialGuides` + `initialSections` (server-fetched, host manages re-renders)
9
+ - **Self-fetch mode**: `guidesEndpoint` + `sectionsEndpoint` (component fetches independently, refetches on `?section=` changes)
10
+
11
+ ### `OnboardingGuidesCatalogView`
12
+ Main exported component that renders:
13
+ - `DocSearchBar` — RAG search scoped to `onboarding-guides` table IDs
14
+ - `FilterPillRow` — Dynamic section pills derived from content data
15
+ - Grouped, step-ordered guide cards via `OnboardingGuideCard`
16
+ - `LoadError` / `OnboardingGuidesCatalogSkeleton` for async states
17
+
18
+ **Notable behaviors:**
19
+ - Section filtering pushes `?section=` to the router; controlled mode triggers host RSC re-fetch, self-fetch mode triggers `useSelfFetch` refetch
20
+ - Card hrefs are composed via `runtime.composeContentUrl` (falling back to relative paths via `resolveContentHref`)
21
+ - Skeleton renders only on cold load; subsequent empty-section transitions dim the grid (`opacity-60`) instead
22
+ - Guides are grouped by `section`, sorted by `section_order`, then each group sorted by `step_order`
23
+
24
+ ## Usage Example
25
+
26
+ ```typescript
27
+ // Controlled (SSR hub) mode
28
+ <OnboardingGuidesCatalogView
29
+ initialGuides={serverGuides}
30
+ initialSections={serverSections}
31
+ initialSection={searchParams.section ?? ''}
32
+ />
33
+
34
+ // Self-fetch (config-only embed) mode
35
+ <OnboardingGuidesCatalogView
36
+ guidesEndpoint="/api/onboarding-guides"
37
+ sectionsEndpoint="/api/onboarding-guides/sections"
38
+ basePath="/onboarding-guides"
39
+ />
40
+
41
+ // Custom card renderer override
42
+ <OnboardingGuidesCatalogView
43
+ initialGuides={guides}
44
+ renderCard={(guide) => <MyCustomCard guide={guide} />}
45
+ />
46
+ ```
47
+
48
+ > **Note:** This component renders body content only. Callers must wrap it in the appropriate page chrome (e.g., `<DevSectionPage sectionKey="onboarding">`).
49
+
50
+ **Source:** [`onboarding-guides-catalog-view.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/onboarding-guides-catalog-view.tsx)
@@ -0,0 +1,54 @@
1
+ <!-- source-hash: 7cb9adf30fc30ada99b138146bf5376d -->
2
+ React Query hooks for **public-read** access to Onboarding Guides, plus a shared cache key builder (`onboardingGuideKeys`) used by both this module and hub-side admin mutations.
3
+
4
+ ## Key Components
5
+
6
+ ### `onboardingGuideKeys`
7
+
8
+ Structured cache key builder for the `['onboarding-guides']` namespace. Covers both public sub-keys and an `admin` sub-namespace, ensuring a single source of truth for cache invalidation across public and admin hooks.
9
+
10
+ | Key | Description |
11
+ |---|---|
12
+ | `all` | Root namespace key |
13
+ | `lists()` / `list(filters)` | Filtered list queries |
14
+ | `details()` / `detail(slug)` | Single guide by slug |
15
+ | `sections()` | Section summary list |
16
+ | `admin.*` | Sub-namespace for hub-side admin mutations |
17
+
18
+ ### `useOnboardingGuides(filters?)`
19
+
20
+ Fetches a paginated/filtered list of guides from `/api/onboarding-guides`. Supports `search`, `section`, `limit`, and `offset` filter params.
21
+
22
+ ### `useOnboardingGuide(slug)`
23
+
24
+ Fetches a single guide by slug from `/api/onboarding-guides/:slug`. Query is disabled when `slug` is undefined or empty.
25
+
26
+ ### `useOnboardingGuideSections()`
27
+
28
+ Fetches section summaries from `/api/onboarding-guides/sections`. Sets `staleTime: 0` to always revalidate on mount.
29
+
30
+ ## Usage Example
31
+
32
+ ```typescript
33
+ import {
34
+ useOnboardingGuides,
35
+ useOnboardingGuide,
36
+ useOnboardingGuideSections,
37
+ onboardingGuideKeys,
38
+ } from './use-onboarding-guides'
39
+
40
+ // Filtered list
41
+ const { data: guides } = useOnboardingGuides({ section: 'setup', limit: 10 })
42
+
43
+ // Single guide — query skips when slug is undefined
44
+ const { data: guide } = useOnboardingGuide('getting-started')
45
+
46
+ // Section navigation
47
+ const { data: sections } = useOnboardingGuideSections()
48
+
49
+ // Admin hook (hub-side) — invalidates both admin and public caches
50
+ queryClient.invalidateQueries({ queryKey: onboardingGuideKeys.all })
51
+ queryClient.invalidateQueries({ queryKey: onboardingGuideKeys.admin.all })
52
+ ```
53
+
54
+ > **Note:** Endpoints (`/api/onboarding-guides*`) are host-supplied. Non-Next.js embedders must reverse-proxy these routes before using these hooks.
@@ -1,32 +1,43 @@
1
- <!-- source-hash: b7318fc1fffa50dcdbe4709ff641c588 -->
2
- A React component that renders CVE (Common Vulnerabilities and Exposures) identifiers as clickable links to the NIST National Vulnerability Database. The component displays the CVE ID with an external link icon and applies hover effects for enhanced user experience.
1
+ <!-- source-hash: 6845fb3dc956be05f53fde1bb106780d -->
2
+ Renders a CVE ID as a clickable external link pointing to the NIST National Vulnerability Database (NVD), with an accompanying external link icon.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **CveLink**: Main component that renders a CVE ID as an external link
7
- - **CveLinkProps**: TypeScript interface defining component props
8
- - `cveId`: Required CVE identifier string
9
- - `className`: Optional CSS classes for styling customization
6
+ | Export | Type | Description |
7
+ |---|---|---|
8
+ | `CveLink` | `React.FC<CveLinkProps>` | Main component that renders the CVE ID link |
9
+ | `CveLinkProps` | `interface` | Props definition for the component |
10
+
11
+ ### Props
12
+
13
+ | Prop | Type | Required | Description |
14
+ |---|---|---|---|
15
+ | `cveId` | `string` | ✅ | CVE identifier (e.g., `"CVE-2024-1234"`) |
16
+ | `className` | `string` | ❌ | Additional CSS classes to merge |
10
17
 
11
18
  ## Usage Example
12
19
 
13
20
  ```typescript
14
- import { CveLink } from './components/CveLink'
21
+ import { CveLink } from '@openframe/oss-lib'
15
22
 
16
23
  // Basic usage
17
24
  <CveLink cveId="CVE-2024-1234" />
18
25
 
19
26
  // With custom styling
20
- <CveLink
21
- cveId="CVE-2023-5678"
22
- className="text-red-500 hover:text-red-700"
27
+ <CveLink
28
+ cveId="CVE-2023-44487"
29
+ className="text-sm font-mono"
23
30
  />
24
-
25
- // In a vulnerability report
26
- <div className="vulnerability-item">
27
- <h3>Critical Security Issue</h3>
28
- <p>Reference: <CveLink cveId="CVE-2024-9999" /></p>
29
- </div>
30
31
  ```
31
32
 
32
- The component automatically generates NIST NVD URLs, opens links in new tabs with proper security attributes, and includes accessibility features. It uses the OpenFrame Design System (ODS) styling tokens and includes smooth hover transitions for both the text and external link icon.
33
+ Clicking the link opens `https://nvd.nist.gov/vuln/detail/{cveId}` in a new tab with `rel="noopener noreferrer"` for security.
34
+
35
+ ## Styling Behavior
36
+
37
+ - Uses ODS design tokens (`ods-text-primary`, `ods-accent`, `ods-text-secondary`)
38
+ - The external link icon transitions from `ods-text-secondary` → `ods-accent` on hover via the `group` utility
39
+ - Accepts additional classes via `className` merged through the `cn` utility
40
+
41
+ ## Source
42
+
43
+ [`CveLink.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/src/components/platform/CveLink.tsx)
@@ -1,23 +1,25 @@
1
- <!-- source-hash: a38e5427737fa8905946762e9d50beed -->
2
- Manages a dynamic list of script arguments as editable key-value pairs, allowing users to add, modify, and delete entries through a controlled form interface.
1
+ <!-- source-hash: 7aa67860b1ab611a656cba5c50d1632b -->
2
+ Manages a dynamic list of script arguments as editable key-value pairs, with support for adding and removing entries.
3
3
 
4
4
  ## Key Components
5
5
 
6
6
  ### Interfaces
7
7
 
8
- | Interface | Description |
9
- |-----------|-------------|
10
- | `ScriptArgument` | Represents a single argument with `id`, `key`, and `value` fields |
11
- | `ScriptArgumentsProps` | Props for the component including arguments array, change callbacks, and display options |
8
+ - **`ScriptArgument`** Represents a single argument with `id`, `key`, and `value` fields. Empty `value` strings indicate flag-type arguments.
9
+ - **`ScriptArgumentsProps`** — Component props including the arguments array, change callbacks, placeholder text overrides, disabled state, and a required `titleLabel`.
12
10
 
13
11
  ### Component
14
12
 
15
- **`ScriptArguments`** — A controlled React component that renders a vertically stacked list of key-value input rows. Each row contains:
16
- - A **key input** (with label shown only on the first row)
17
- - A **value input** (placeholder indicates empty = flag-type argument)
18
- - A **delete button** (`Trash2` icon) to remove the row
13
+ - **`ScriptArguments`** — Renders a vertically stacked list of key/value input rows. The column label appears only on the first row. Each row includes a delete button (trash icon); an "Add Script Argument" button appends a new blank entry using `crypto.randomUUID()`.
19
14
 
20
- An **"Add Script Argument"** button appends a new empty entry using `crypto.randomUUID()` for unique IDs.
15
+ ### Internal Handlers
16
+
17
+ | Handler | Description |
18
+ |---|---|
19
+ | `handleKeyChange` | Updates the `key` field for a given argument `id` |
20
+ | `handleValueChange` | Updates the `value` field for a given argument `id` |
21
+ | `handleDelete` | Removes an argument by `id` |
22
+ | `handleAdd` | Appends a new blank `ScriptArgument` |
21
23
 
22
24
  ## Usage Example
23
25
 
@@ -26,25 +28,18 @@ import { ScriptArguments, ScriptArgument } from './ScriptArguments'
26
28
 
27
29
  const [args, setArgs] = useState<ScriptArgument[]>([
28
30
  { id: '1', key: 'port', value: '3000' },
29
- { id: '2', key: 'verbose', value: '' }, // empty value = flag
31
+ { id: '2', key: 'verbose', value: '' }, // flag-type argument
30
32
  ])
31
33
 
32
34
  <ScriptArguments
33
- titleLabel="Argument"
35
+ titleLabel="Script Arguments"
34
36
  arguments={args}
35
37
  onArgumentsChange={setArgs}
36
- keyPlaceholder="Enter Key"
37
- valuePlaceholder="Enter Value (empty=flag)"
38
+ keyPlaceholder="Argument name"
39
+ valuePlaceholder="Value (empty = flag)"
38
40
  addButtonLabel="Add Script Argument"
39
41
  disabled={false}
40
42
  />
41
43
  ```
42
44
 
43
- ### Prop Defaults
44
-
45
- | Prop | Default |
46
- |------|---------|
47
- | `keyPlaceholder` | `'Enter Key'` |
48
- | `valuePlaceholder` | `'Enter Value (empty=flag)'` |
49
- | `addButtonLabel` | `'Add Script Argument'` |
50
- | `disabled` | `false` |
45
+ > **Note:** All mutation callbacks (`onArgumentsChange`) are no-ops when omitted, making the component safe to render in read-only contexts without extra guards.
@@ -1,41 +1,47 @@
1
- <!-- source-hash: c574ff5a6a70b0f22372e3d68b48aaf2 -->
2
- Displays script metadata in a structured card layout, including title, description, shell type, supported platforms, category, and author information. Adapts between a 2×2 grid on mobile/tablet and a single 4-column row on desktop.
1
+ <!-- source-hash: 78008c7e3ccfb1ba2cc09775fac553c1 -->
2
+ Displays script metadata in a responsive card layout with a header (title, description) and a grid of detail cells (shell type, platforms, category, author).
3
3
 
4
4
  ## Key Components
5
5
 
6
- ### Exported Interfaces
7
- - **`ScriptAuthor`** — Author data shape: `name`, optional `initials`, optional `photoUrl`
8
- - **`ScriptInfoSectionProps`** Component props: `headline`, `subheadline`, `shellType`, `supportedPlatforms`, `category`, `author`, `className`
9
-
10
- ### Internal Helpers
11
- - **`formatSupportedPlatforms(platforms?)`** — Maps platform strings (e.g., `'darwin'`) to display labels (e.g., `'macOS'`) via `getOSLabel`; returns `'All Platforms'` when empty
12
- - **`getInitials(name)`** Derives two-letter uppercase initials from a full name
13
- - **`InfoCell`** Internal cell component rendering a label/value pair with an optional circular avatar
14
-
15
- ### Main Export
16
- - **`ScriptInfoSection`** — Card component composing the header row and two responsive detail rows
6
+ | Export | Type | Description |
7
+ |---|---|---|
8
+ | `ScriptInfoSection` | `React.FC` | Main component rendering the full script info card |
9
+ | `ScriptInfoSectionProps` | `interface` | Props for the main component |
10
+ | `ScriptAuthor` | `interface` | Author shape with `name`, `initials`, and `photoUrl` |
11
+ | `InfoCell` | Internal component | Single label/value cell, optionally renders an author avatar |
12
+ | `formatSupportedPlatforms` | Helper function | Converts a platform array to a display string via `getOSLabel` |
13
+ | `getInitials` | Helper function | Derives two-letter initials from a full name |
17
14
 
18
15
  ## Usage Example
19
16
 
20
17
  ```typescript
21
- import { ScriptInfoSection } from './ScriptInfoSection'
18
+ import { ScriptInfoSection } from './components/ScriptInfoSection'
22
19
 
23
20
  <ScriptInfoSection
24
21
  headline="System Backup Script"
25
- subheadline="Comprehensive Linux system backup with rotation support."
22
+ subheadline="Comprehensive Linux system backup with incremental support."
26
23
  shellType="BASH"
27
24
  supportedPlatforms={['linux', 'darwin']}
28
25
  category="System Maintenance"
29
26
  author={{
30
- name: "Jane Smith",
31
- photoUrl: "/avatars/jane.jpg"
27
+ name: 'Jane Smith',
28
+ photoUrl: '/avatars/jane.jpg',
32
29
  }}
33
30
  />
34
31
  ```
35
32
 
36
33
  ## Layout Behavior
37
34
 
38
- | Breakpoint | Layout |
39
- |---|---|
40
- | Mobile / Tablet (`< lg`) | Two rows, 2 columns each (Shell + Platforms / Category + Author) |
41
- | Desktop (`lg+`) | Single row, 4 columns |
35
+ The detail grid is responsive:
36
+
37
+ - **Mobile / Tablet (`< lg`):** Two rows of two cells each, separated by a border.
38
+ - **Desktop (`lg+`):** All four cells rendered in a single four-column row; the mobile second row is hidden via `hidden lg:flex`.
39
+
40
+ ## Notes
41
+
42
+ - `shellType` is resolved to a display label via `getShellLabel` (e.g., `"BASH"` → `"Bash"`).
43
+ - `supportedPlatforms` defaults to `"All Platforms"` when absent or empty.
44
+ - Author avatar falls back to computed initials (`getInitials`) when `photoUrl` is not provided.
45
+ - Accepts an optional `className` prop for layout overrides at the card level.
46
+
47
+ **Source:** [`ScriptInfoSection.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/ScriptInfoSection.tsx)
@@ -1,35 +1,51 @@
1
- <!-- source-hash: f614dd9faeadf368597d094822bcd3c7 -->
2
- Displays a badge combining an icon and label for a given shell/script type, supporting all OpenFrame RMM shell types (PowerShell, CMD, Bash, Python, Nushell, Deno, Shell).
1
+ <!-- source-hash: a29c2af2ef838a1ce94f667c761fb1ab -->
2
+ Displays a badge for RMM shell/script types, pairing an appropriate icon with a human-readable label for all supported shell environments.
3
3
 
4
4
  ## Key Components
5
5
 
6
- - **`shellIconMap`** — A typed `Record<ShellType, ShellIconConfig>` mapping every shell type to its corresponding icon component and display props, ensuring exhaustive coverage at compile time.
7
- - **`defaultIconConfig`** Fallback icon config (`ShellIcon`) used when an unrecognized shell type is passed.
8
- - **`ShellTypeBadgeProps`** — Props interface accepting `shellType`, optional `className` for the wrapper, and optional `iconClassName` for icon styling overrides.
9
- - **`ShellTypeBadge`** — Main React component that normalizes the shell type to uppercase, resolves the label via `getShellLabel`, and renders the icon + label in a flex row.
6
+ ### `ShellTypeBadge` (React.FC)
7
+ The primary export. Renders an icon + label pair for a given `ShellType`.
8
+
9
+ ### `ShellTypeBadgeProps`
10
+ | Prop | Type | Description |
11
+ |---|---|---|
12
+ | `shellType` | `ShellType` | The shell/script type to display |
13
+ | `className` | `string?` | Additional classes for the wrapper `div` |
14
+ | `iconClassName` | `string?` | Additional classes applied to the icon |
15
+
16
+ ### `shellIconMap`
17
+ A fully-typed `Record<ShellType, ShellIconConfig>` ensuring exhaustive coverage of all supported shell types: `POWERSHELL`, `CMD`, `BASH`, `PYTHON`, `NUSHELL`, `DENO`, and `SHELL`.
18
+
19
+ **Supported shell types and their icons:**
20
+
21
+ | Shell | Icon Component |
22
+ |---|---|
23
+ | PowerShell | `PowershellLogoGreyIcon` |
24
+ | CMD | `CmdIcon` |
25
+ | Bash | `BashIcon` |
26
+ | Python | `PythonLogoIcon` |
27
+ | Nushell | `NushellIcon` |
28
+ | Deno | `DenoIcon` |
29
+ | Shell | `ShellIcon` (default fallback) |
10
30
 
11
31
  ## Usage Example
12
32
 
13
33
  ```typescript
14
- import { ShellTypeBadge } from './components/ShellTypeBadge'
15
- import { ShellTypeValues } from './types/shell.types'
34
+ import { ShellTypeBadge } from './ShellTypeBadge'
35
+ import { ShellTypeValues } from '../../types/shell.types'
16
36
 
17
37
  // Basic usage
18
38
  <ShellTypeBadge shellType={ShellTypeValues.POWERSHELL} />
19
39
 
20
- // With custom wrapper and icon class overrides
40
+ // With custom wrapper and icon classes
21
41
  <ShellTypeBadge
22
42
  shellType={ShellTypeValues.PYTHON}
23
- className="bg-ods-bg-surface px-2 py-1 rounded"
24
- iconClassName="opacity-75"
43
+ className="bg-surface-secondary px-2 py-1 rounded"
44
+ iconClassName="opacity-80"
25
45
  />
26
46
 
27
- // Dynamic shell type from API data
28
- <ShellTypeBadge shellType={script.shell_type} />
47
+ // Case-insensitive input is normalized to uppercase internally
48
+ <ShellTypeBadge shellType={"bash" as ShellType} />
29
49
  ```
30
50
 
31
- ## Notes
32
-
33
- - Shell type input is normalized to uppercase before lookup, making the component tolerant of mixed-case values from API responses.
34
- - Icon props support either a `className` (for CSS-driven theming) or a `color` string — the component automatically forwards whichever is applicable.
35
- - Falls back to `ShellIcon` for any unknown or undefined shell type rather than throwing.
51
+ > **Note:** Unknown or unrecognized `shellType` values fall back to `ShellIcon` via `defaultIconConfig`, preventing render errors.
@@ -1,40 +1,42 @@
1
- <!-- source-hash: c5159aa07b6a4d2c8ddb68c466359feb -->
2
- Displays software name with optional vendor and version information, part of the ODS (OpenFrame Design System) platform components.
1
+ <!-- source-hash: 746186688c607619ce30e85de8efbe70 -->
2
+ Displays software name with optional vendor and version metadata, part of the ODS (OpenFrame Design System) platform components.
3
3
 
4
4
  ## Key Components
5
5
 
6
- ### `SoftwareInfo`
7
- A React functional component that renders software metadata in a stacked layout.
8
-
9
6
  ### `SoftwareInfoProps`
7
+
10
8
  | Prop | Type | Required | Description |
11
9
  |------|------|----------|-------------|
12
10
  | `name` | `string` | ✅ | Software name |
13
- | `vendor` | `string` | ❌ | Software vendor/publisher |
14
- | `version` | `string` | ❌ | Software version, rendered as a styled badge |
15
- | `className` | `string` | ❌ | Additional CSS classes for the root element |
11
+ | `vendor` | `string` | ❌ | Software vendor |
12
+ | `version` | `string` | ❌ | Software version (rendered as a badge) |
13
+ | `className` | `string` | ❌ | Additional CSS classes |
14
+
15
+ ### `SoftwareInfo`
16
+
17
+ A React functional component that renders a vertical stack: the software name alongside an optional version badge, with the vendor name displayed below in secondary text.
16
18
 
17
19
  ## Usage Example
18
20
 
19
21
  ```typescript
20
- import { SoftwareInfo } from './components/SoftwareInfo'
22
+ // Name only
23
+ <SoftwareInfo name="Chrome" />
24
+
25
+ // Name with vendor
26
+ <SoftwareInfo name="Visual Studio Code" vendor="Microsoft" />
21
27
 
22
- // Full usage with all props
28
+ // Full usage with version and custom class
23
29
  <SoftwareInfo
24
30
  name="Visual Studio Code"
25
31
  vendor="Microsoft"
26
- version="1.85.0"
32
+ version="1.89.0"
33
+ className="my-4"
27
34
  />
28
-
29
- // Name only
30
- <SoftwareInfo name="Chrome" />
31
-
32
- // Name + version badge, no vendor
33
- <SoftwareInfo name="Node.js" version="20.11.0" />
34
35
  ```
35
36
 
36
- ## Rendering Behavior
37
+ ## Notes
37
38
 
38
- - **Name** rendered with `text-h4` and primary text color, always visible.
39
- - **Version** rendered inline next to the name as a pill badge with secondary text and a soft-grey background.
40
- - **Vendor** — rendered below the name row in secondary text color using DM Sans 16px.
39
+ - Version is rendered as a pill/badge using `ods-bg-surface` background and `ods-text-secondary` color.
40
+ - Vendor is rendered below the name row using secondary text styling.
41
+ - Uses the [`cn`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/src/utils/cn.ts) utility for conditional class merging.
42
+ - `displayName` is set to `'SoftwareInfo'` for improved React DevTools visibility.
@@ -1,36 +1,38 @@
1
- <!-- source-hash: 5668aa064d8c050beff751a96d6469be -->
2
- A React component that renders a visual badge combining a tool icon and label for OpenFrame-integrated MSP tools (e.g., Fleet MDM, MeshCentral).
1
+ <!-- source-hash: 2c040db85e1fc2ee2edcbf7fa6012881 -->
2
+ Renders a compact badge combining a `ToolIcon` and label for a given OpenFrame tool type, designed for use in tables and lists to identify tool sources such as Fleet MDM, MeshCentral, and OpenFrame RMM.
3
3
 
4
4
  ## Key Components
5
5
 
6
- | Export | Type | Description |
7
- |--------|------|-------------|
8
- | `ToolBadge` | `React.FC<ToolBadgeProps>` | Main badge component |
9
- | `ToolBadgeProps` | `interface` | Props: `toolType`, `className`, `iconClassName` |
10
- | `ToolType` | `type` (re-export) | Enum/union of supported tool types |
6
+ - **`ToolBadge`** Main functional component that resolves a human-readable label via `getToolLabel` and renders it alongside its corresponding `ToolIcon`
7
+ - **`ToolBadgeProps`** — Interface defining accepted props:
8
+ - `toolType: ToolType` Required; identifies which tool to display
9
+ - `className?: string` Optional CSS classes for the wrapper `div`
10
+ - `iconClassName?: string` Optional CSS classes forwarded to `ToolIcon`
11
+ - **Re-export** — `ToolType` is re-exported from `../../types/tool.types` for consumer convenience
11
12
 
12
13
  ## Usage Example
13
14
 
14
15
  ```typescript
15
16
  import { ToolBadge } from './components/ToolBadge'
16
17
 
17
- // Basic usage in a table cell
18
+ // Basic usage
18
19
  <ToolBadge toolType="OPENFRAME_RMM" />
19
20
 
20
21
  // With custom styling
21
22
  <ToolBadge
22
23
  toolType="FLEET"
23
- className="my-2"
24
- iconClassName="opacity-80"
24
+ className="opacity-75"
25
+ iconClassName="text-blue-500"
25
26
  />
26
27
 
27
- // MeshCentral badge
28
- <ToolBadge toolType="MESHCENTRAL" />
28
+ // In a table cell
29
+ <td>
30
+ <ToolBadge toolType="MESHCENTRAL" />
31
+ </td>
29
32
  ```
30
33
 
31
34
  ## Notes
32
35
 
33
- - Resolves the human-readable label via `getToolLabel()` from `tool-utils`
34
- - Renders a 16px `ToolIcon` alongside the label text
35
- - Supports `className` for the wrapper `div` and `iconClassName` for the icon independently
36
- - Uses `cn()` utility for conditional class merging (Tailwind-compatible)
36
+ - Icon renders at a fixed size of `16px`; only the wrapper and icon accept className overrides
37
+ - Label text uses `text-ods-text-primary` / `text-h4` design token classes — ensure your project includes the ODS theme
38
+ - `displayName` is set to `'ToolBadge'` for accurate React DevTools identification