@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.
- package/dist/{chunk-H6DFCF44.cjs → chunk-22AED5IC.cjs} +82 -82
- package/dist/{chunk-H6DFCF44.cjs.map → chunk-22AED5IC.cjs.map} +1 -1
- package/dist/{chunk-MGKCS6KS.js → chunk-3WCARCI4.js} +2 -2
- package/dist/{chunk-LNKWY74S.cjs → chunk-4HL6UENH.cjs} +5 -5
- package/dist/{chunk-LNKWY74S.cjs.map → chunk-4HL6UENH.cjs.map} +1 -1
- package/dist/{chunk-Y3Y2DLNO.js → chunk-6UGYBCEN.js} +3 -3
- package/dist/{chunk-BBUEY73L.js → chunk-7I5B5PQ4.js} +6269 -5339
- package/dist/chunk-7I5B5PQ4.js.map +1 -0
- package/dist/{chunk-PSPWT2Q5.js → chunk-7LWXWXEY.js} +4 -4
- package/dist/{chunk-M7O74OWG.cjs → chunk-ACOU5YJI.cjs} +31 -31
- package/dist/{chunk-M7O74OWG.cjs.map → chunk-ACOU5YJI.cjs.map} +1 -1
- package/dist/{chunk-INDFIVDV.cjs → chunk-AHGSN4AT.cjs} +12 -12
- package/dist/{chunk-INDFIVDV.cjs.map → chunk-AHGSN4AT.cjs.map} +1 -1
- package/dist/{chunk-VTSRDC4W.js → chunk-CKC3EAYT.js} +2 -2
- package/dist/{chunk-SASR7SK5.js → chunk-GZK7FWJJ.js} +20 -4
- package/dist/chunk-GZK7FWJJ.js.map +1 -0
- package/dist/{chunk-ZRANZNEA.js → chunk-JJE5TUZK.js} +2 -2
- package/dist/{chunk-66BNAFO6.js → chunk-JQIUBFHL.js} +4 -4
- package/dist/{chunk-MMCBQJKE.cjs → chunk-KUBJHB6I.cjs} +11 -11
- package/dist/{chunk-MMCBQJKE.cjs.map → chunk-KUBJHB6I.cjs.map} +1 -1
- package/dist/{chunk-ZV6E3U3C.cjs → chunk-MRGTMMJ3.cjs} +30 -30
- package/dist/{chunk-ZV6E3U3C.cjs.map → chunk-MRGTMMJ3.cjs.map} +1 -1
- package/dist/{chunk-OZJN54R5.cjs → chunk-NWVKG7QC.cjs} +37 -37
- package/dist/{chunk-OZJN54R5.cjs.map → chunk-NWVKG7QC.cjs.map} +1 -1
- package/dist/{chunk-AN47EIIJ.cjs → chunk-PHTSSHIQ.cjs} +59 -59
- package/dist/{chunk-AN47EIIJ.cjs.map → chunk-PHTSSHIQ.cjs.map} +1 -1
- package/dist/{chunk-N2JZ33V7.cjs → chunk-RUA3OXSJ.cjs} +26 -26
- package/dist/{chunk-N2JZ33V7.cjs.map → chunk-RUA3OXSJ.cjs.map} +1 -1
- package/dist/{chunk-LK623WCC.cjs → chunk-RZPF7MJ2.cjs} +9 -9
- package/dist/{chunk-LK623WCC.cjs.map → chunk-RZPF7MJ2.cjs.map} +1 -1
- package/dist/{chunk-G3UN2DXU.cjs → chunk-STYA77PH.cjs} +20 -4
- package/dist/chunk-STYA77PH.cjs.map +1 -0
- package/dist/{chunk-JUJY3HQS.cjs → chunk-U37UTLP7.cjs} +19 -19
- package/dist/{chunk-JUJY3HQS.cjs.map → chunk-U37UTLP7.cjs.map} +1 -1
- package/dist/{chunk-2DIOV7BR.js → chunk-UPN6EFOM.js} +4 -4
- package/dist/{chunk-OWMLWJQY.cjs → chunk-VPVOJD5X.cjs} +2432 -1502
- package/dist/chunk-VPVOJD5X.cjs.map +1 -0
- package/dist/{chunk-4SMRQ4SN.js → chunk-WBL5Y4PS.js} +3 -3
- package/dist/{chunk-FP4H6Y5O.js → chunk-WPYPSIY2.js} +3 -3
- package/dist/{chunk-R5WJJL4V.js → chunk-X5X43HFV.js} +5 -5
- package/dist/{chunk-DEHZ5CTC.js → chunk-XTWKDMCG.js} +2 -2
- package/dist/components/case-studies/index.cjs +9 -9
- package/dist/components/case-studies/index.js +3 -3
- package/dist/components/chat/index.cjs +3 -3
- package/dist/components/chat/index.js +2 -2
- package/dist/components/contact/index.cjs +4 -4
- package/dist/components/contact/index.js +3 -3
- package/dist/components/docs/index.cjs +6 -6
- package/dist/components/docs/index.js +5 -5
- package/dist/components/embeds/index.cjs +4 -4
- package/dist/components/embeds/index.js +3 -3
- package/dist/components/faq/index.cjs +4 -4
- package/dist/components/faq/index.js +3 -3
- package/dist/components/features/captions-url.cjs +12 -0
- package/dist/components/features/captions-url.cjs.map +1 -0
- package/dist/components/features/captions-url.js +10 -0
- package/dist/components/features/captions-url.js.map +1 -0
- package/dist/components/features/card-hit-layer.d.ts +40 -0
- package/dist/components/features/card-hit-layer.d.ts.map +1 -0
- package/dist/components/features/floating-walkthrough-video.d.ts +71 -0
- package/dist/components/features/floating-walkthrough-video.d.ts.map +1 -0
- package/dist/components/features/index.cjs +11 -3
- package/dist/components/features/index.cjs.map +1 -1
- package/dist/components/features/index.d.ts +4 -0
- package/dist/components/features/index.d.ts.map +1 -1
- package/dist/components/features/index.js +12 -4
- package/dist/components/features/use-walkthrough-video.d.ts +16 -0
- package/dist/components/features/use-walkthrough-video.d.ts.map +1 -0
- package/dist/components/features/video-bites-strip.d.ts.map +1 -1
- package/dist/components/features/video-center-badge.d.ts.map +1 -1
- package/dist/components/features/video-hover-preview.d.ts +68 -0
- package/dist/components/features/video-hover-preview.d.ts.map +1 -0
- package/dist/components/features/video.d.ts +78 -40
- package/dist/components/features/video.d.ts.map +1 -1
- package/dist/components/form.d.ts +0 -1
- package/dist/components/form.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.cjs +21 -21
- package/dist/components/help-center-pages/index.js +12 -12
- package/dist/components/index.cjs +163 -155
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +18 -10
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +3 -3
- package/dist/components/navigation/index.js +2 -2
- package/dist/components/onboarding-guides/index.cjs +6 -6
- package/dist/components/onboarding-guides/index.js +5 -5
- package/dist/components/related-content/index.cjs +4 -4
- package/dist/components/related-content/index.js +3 -3
- package/dist/components/tickets/index.cjs +6 -6
- package/dist/components/tickets/index.js +5 -5
- package/dist/components/ui/button/button-styles.d.ts +2 -0
- package/dist/components/ui/button/button-styles.d.ts.map +1 -1
- package/dist/components/ui/button/button.d.ts +2 -2
- package/dist/components/ui/button/button.d.ts.map +1 -1
- package/dist/components/ui/file-manager/index.cjs +50 -50
- package/dist/components/ui/file-manager/index.js +1 -1
- package/dist/components/ui/index.cjs +3 -3
- package/dist/components/ui/index.js +2 -2
- package/dist/components/ui/page-actions.d.ts +2 -1
- package/dist/components/ui/page-actions.d.ts.map +1 -1
- package/dist/index.cjs +27 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +28 -4
- package/dist/types/supabase.d.ts +80 -0
- package/dist/types/supabase.d.ts.map +1 -1
- package/dist/types/video-processing.d.ts +1 -1
- package/dist/types/video-processing.d.ts.map +1 -1
- package/dist/utils/announcement-storage.d.ts +1 -1
- package/dist/utils/announcement-storage.d.ts.map +1 -1
- package/dist/utils/dismiss-cookie.d.ts +27 -0
- package/dist/utils/dismiss-cookie.d.ts.map +1 -0
- package/dist/utils/dismissal-storage.d.ts +19 -0
- package/dist/utils/dismissal-storage.d.ts.map +1 -0
- package/dist/utils/index.cjs +48 -10
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +41 -11
- package/dist/utils/index.js.map +1 -1
- package/package.json +8 -2
- package/src/.index.md +39 -32
- package/src/.platform-domains.md +65 -0
- package/src/assets/.fae-avatar.md +33 -0
- package/src/assets/.index.md +15 -9
- package/src/components/.agent-mark.md +31 -0
- package/src/components/.announcement-bar.md +47 -35
- package/src/components/.calendar.md +19 -15
- package/src/components/.categories-cart.md +34 -30
- package/src/components/.category-card.md +33 -33
- package/src/components/.chart.md +38 -40
- package/src/components/.command.md +47 -23
- package/src/components/.comment-card.md +31 -26
- package/src/components/.content-loading-container.md +45 -20
- package/src/components/.context-menu.md +45 -31
- package/src/components/.date-time-picker.md +36 -30
- package/src/components/.empty-state.md +31 -31
- package/src/components/.faq-accordion.md +20 -30
- package/src/components/.filter-chip.md +36 -33
- package/src/components/.footer-waitlist-button.md +27 -21
- package/src/components/.footer.md +39 -24
- package/src/components/.form.md +32 -20
- package/src/components/.hero-image-uploader.md +35 -31
- package/src/components/.icon-display.md +53 -0
- package/src/components/.image-cropper.md +34 -33
- package/src/components/.index.md +25 -29
- package/src/components/.logs-list.md +27 -23
- package/src/components/.media-carousel.md +47 -26
- package/src/components/.metric-value.md +27 -24
- package/src/components/.msp-display.md +29 -23
- package/src/components/.open-source-features.md +23 -26
- package/src/components/.pagination.md +44 -39
- package/src/components/.persistent-filter-controls.md +61 -28
- package/src/components/.pricing-display.md +34 -33
- package/src/components/.results-count.md +33 -20
- package/src/components/.smooth-accordion.md +24 -20
- package/src/components/.social-icon-row.md +33 -21
- package/src/components/.sonner.md +40 -25
- package/src/components/.steps.md +39 -25
- package/src/components/.tool-icon.md +34 -21
- package/src/components/.unified-filter-logic.md +32 -36
- package/src/components/.user-display.md +33 -28
- package/src/components/.user-summary-stub.md +40 -33
- package/src/components/.vendor-display-button.md +17 -15
- package/src/components/.vendor-icon.md +17 -25
- package/src/components/.vendor-tag.md +39 -34
- package/src/components/.why-it-matters.md +15 -11
- package/src/components/.yes-no-display.md +36 -31
- package/src/components/authors/.author-detail-view.md +50 -0
- package/src/components/case-studies/.index.md +26 -0
- package/src/components/case-studies/.share-experience-section.md +45 -0
- package/src/components/chat/.approval-batch-message.md +48 -33
- package/src/components/chat/.approval-request-message.md +37 -26
- package/src/components/chat/.chat-archive-page.md +56 -0
- package/src/components/chat/.chat-attachment-bar.md +32 -40
- package/src/components/chat/.chat-composer.md +43 -0
- package/src/components/chat/.chat-container.md +41 -25
- package/src/components/chat/.chat-context-memory-bar.md +53 -0
- package/src/components/chat/.chat-context-picker.md +89 -0
- package/src/components/chat/.chat-header-icon-button.md +43 -0
- package/src/components/chat/.chat-header-search-field.md +51 -0
- package/src/components/chat/.chat-input.md +63 -30
- package/src/components/chat/.chat-list-empty-state.md +44 -0
- package/src/components/chat/.chat-message-enhanced.md +29 -31
- package/src/components/chat/.chat-message-list.md +34 -44
- package/src/components/chat/.chat-message-row.md +56 -0
- package/src/components/chat/.chat-message-skeleton.md +32 -26
- package/src/components/chat/.chat-panel-header-mobile.md +46 -0
- package/src/components/chat/.chat-panel-header.md +80 -0
- package/src/components/chat/.chat-sidebar-skeleton.md +31 -30
- package/src/components/chat/.chat-sidebar.md +36 -29
- package/src/components/chat/.chat-ticket-list.md +38 -23
- package/src/components/chat/.chat-typing-indicator.md +37 -19
- package/src/components/chat/.context-compaction-display.md +19 -15
- package/src/components/chat/.context-items-list.md +57 -0
- package/src/components/chat/.embeddable-chat.md +57 -66
- package/src/components/chat/.error-message-display.md +40 -22
- package/src/components/chat/.guide-mode-banner.md +41 -0
- package/src/components/chat/.guide-welcome.md +43 -0
- package/src/components/chat/.index.md +26 -21
- package/src/components/chat/.mingo-chat-history.md +63 -0
- package/src/components/chat/.mingo-chat-modals.md +44 -0
- package/src/components/chat/.mingo-history-rail.md +63 -0
- package/src/components/chat/.mingo-info-card.md +59 -0
- package/src/components/chat/.mingo-onboarding-card.md +21 -27
- package/src/components/chat/.mingo-welcome.md +60 -0
- package/src/components/chat/.model-display.md +33 -25
- package/src/components/chat/.msp-organization-card-skeleton.md +44 -0
- package/src/components/chat/.msp-organization-card.md +51 -0
- package/src/components/chat/.nav-link-anchor-via-runtime.md +36 -25
- package/src/components/chat/.quick-action-chip.md +60 -0
- package/src/components/chat/.quick-action-marquee.md +53 -0
- package/src/components/chat/.quick-action-wall.md +68 -0
- package/src/components/chat/.remark-mention-chips.md +41 -0
- package/src/components/chat/.slash-command-suggestions.md +30 -36
- package/src/components/chat/.source-action-button.md +28 -25
- package/src/components/chat/.tool-call-blocks.md +18 -30
- package/src/components/chat/.tool-execution-display.md +29 -34
- package/src/components/chat/entity-cards/.admin-content-card.md +29 -22
- package/src/components/chat/entity-cards/.blog-card.md +44 -33
- package/src/components/chat/entity-cards/.blog-image-placeholder.md +20 -18
- package/src/components/chat/entity-cards/.case-study-card.md +24 -33
- package/src/components/chat/entity-cards/.chat-ticket-item.md +39 -22
- package/src/components/chat/entity-cards/.customer-interview-card.md +29 -32
- package/src/components/chat/entity-cards/.data-room-doc-card.md +21 -22
- package/src/components/chat/entity-cards/.dispatch.md +41 -24
- package/src/components/chat/entity-cards/.entity-author-card.md +36 -33
- package/src/components/chat/entity-cards/.entity-portrait-card.md +47 -0
- package/src/components/chat/entity-cards/.generic-entity-card.md +26 -25
- package/src/components/chat/entity-cards/.github-activity-card.md +35 -41
- package/src/components/chat/entity-cards/.hubspot-ticket-card.md +22 -28
- package/src/components/chat/entity-cards/.index.md +33 -44
- package/src/components/chat/entity-cards/.investor-update-card.md +36 -25
- package/src/components/chat/entity-cards/.onboarding-guide-card.md +20 -29
- package/src/components/chat/entity-cards/.product-release-card-defaults.md +26 -19
- package/src/components/chat/entity-cards/.program-card.md +30 -33
- package/src/components/chat/entity-cards/.roadmap-card.md +40 -31
- package/src/components/chat/entity-cards/.roadmap-vote-button.md +33 -36
- package/src/components/chat/entity-cards/.slack-message-card.md +31 -32
- package/src/components/chat/entity-cards/.use-cover-image-fallback.md +47 -0
- package/src/components/chat/entity-cards/.use-entity-card-link.md +51 -0
- package/src/components/chat/entity-cards/.use-entity-card-placeholder.md +47 -0
- package/src/components/chat/entity-cards/.what-i-shipped-card.md +43 -0
- package/src/components/chat/hooks/.index.md +33 -30
- package/src/components/chat/hooks/.use-chat-card-item.md +30 -17
- package/src/components/chat/hooks/.use-chat-dialog-manager.md +59 -0
- package/src/components/chat/hooks/.use-chat-identity.md +37 -25
- package/src/components/chat/hooks/.use-chunk-catchup.md +53 -36
- package/src/components/chat/hooks/.use-empty-state-config.md +39 -0
- package/src/components/chat/hooks/.use-jetstream-dialog-subscription.md +65 -30
- package/src/components/chat/hooks/.use-nats-chat-adapter.md +55 -36
- package/src/components/chat/hooks/.use-nats-dialog-subscription.md +66 -50
- package/src/components/chat/hooks/.use-realtime-chunk-processor.md +58 -31
- package/src/components/chat/hooks/.use-scripted-stream.md +46 -0
- package/src/components/chat/hooks/.use-slash-commands.md +32 -25
- package/src/components/chat/hooks/.use-sse-chat-adapter.md +32 -21
- package/src/components/chat/hooks/.use-unified-chat.md +45 -35
- package/src/components/chat/types/.api.types.md +49 -41
- package/src/components/chat/types/.chat.types.md +56 -34
- package/src/components/chat/types/.component.types.md +36 -36
- package/src/components/chat/types/.context-item.types.md +61 -0
- package/src/components/chat/types/.index.md +32 -17
- package/src/components/chat/types/.message.types.md +44 -45
- package/src/components/chat/types/.network.types.md +46 -46
- package/src/components/chat/types/.processing.types.md +49 -37
- package/src/components/chat/types/.unified-chat-state.types.md +41 -26
- package/src/components/chat/types/entities/.content-ref.md +20 -31
- package/src/components/chat/types/entities/.investor-update.md +14 -16
- package/src/components/chat/types/entities/.onboarding-guide.md +35 -34
- package/src/components/chat/types/entities/.program-types.md +55 -43
- package/src/components/chat/utils/.chip-action-class.md +17 -19
- package/src/components/chat/utils/.chip-styles.md +18 -18
- package/src/components/chat/utils/.chunk-parser.md +48 -37
- package/src/components/chat/utils/.compact-card-classes.md +33 -35
- package/src/components/chat/utils/.execute-navigation.md +49 -0
- package/src/components/chat/utils/.extract-incomplete-message-state.md +9 -12
- package/src/components/chat/utils/.history-merge.md +65 -0
- package/src/components/chat/utils/.icon-library.md +33 -31
- package/src/components/chat/utils/.icon-registry.md +44 -0
- package/src/components/chat/utils/.index.md +37 -33
- package/src/components/chat/utils/.is-cross-origin-url.md +26 -22
- package/src/components/chat/utils/.message-segment-accumulator.md +46 -25
- package/src/components/chat/utils/.nav-anchor-props.md +29 -34
- package/src/components/chat/utils/.nav-click-handler.md +29 -33
- package/src/components/chat/utils/.process-historical-messages.md +29 -33
- package/src/components/chat/utils/.scripted-stream.md +52 -0
- package/src/components/chat/utils/.source-row-cta.md +32 -31
- package/src/components/chat/utils/.tool-call-helpers.md +25 -17
- package/src/components/contact/.contact-form.md +24 -19
- package/src/components/docs/.doc-navigation-context.md +49 -0
- package/src/components/docs/.doc-viewer.md +64 -0
- package/src/components/docs/.docs-hub-page.md +49 -0
- package/src/components/docs/.index.md +51 -0
- package/src/components/docs/.skeletons.md +47 -0
- package/src/components/docs/.use-docs-resolve-link.md +61 -0
- package/src/components/docs/.use-document-tree.md +83 -0
- package/src/components/docs/.use-scroll-spy.md +58 -0
- package/src/components/embeds/.embed-container.md +45 -0
- package/src/components/embeds/.embed-iframe.md +51 -0
- package/src/components/embeds/.figma-embed.md +43 -0
- package/src/components/embeds/.file-download-card.md +47 -0
- package/src/components/embeds/.google-sheets-viewer.md +40 -0
- package/src/components/embeds/.index.md +58 -0
- package/src/components/embeds/.linkedin-embed-client.md +50 -0
- package/src/components/embeds/.markdown-image.md +40 -0
- package/src/components/embeds/.og-link-preview.md +54 -0
- package/src/components/embeds/.pdf-viewer.md +43 -0
- package/src/components/embeds/.reddit-embed-client.md +40 -0
- package/src/components/embeds/.rich-markdown-runtime.md +53 -0
- package/src/components/embeds/.twitter-embed-client.md +44 -0
- package/src/components/faq/.faq-document-page.md +68 -0
- package/src/components/faq/.faq-section.md +55 -0
- package/src/components/faq/.index.md +29 -0
- package/src/components/faq/.json-ld.md +48 -0
- package/src/components/features/.array-entry-manager.md +32 -24
- package/src/components/features/.auth-providers-list.md +33 -32
- package/src/components/features/.captions-url.md +43 -0
- package/src/components/features/.cards-strip.md +48 -0
- package/src/components/features/.changelog-manager.md +17 -20
- package/src/components/features/.command-box.md +11 -16
- package/src/components/features/.entity-summary-editor.md +20 -15
- package/src/components/features/.entity-tag-badges.md +43 -0
- package/src/components/features/.entity-video-section.md +31 -41
- package/src/components/features/.figma-prototype-viewer.md +55 -37
- package/src/components/features/.filters-dropdown.md +14 -13
- package/src/components/features/.highlight-config-section.md +19 -16
- package/src/components/features/.highlight-video-combined-section.md +28 -19
- package/src/components/features/.highlight-video-preview.md +13 -11
- package/src/components/features/.highlight-video-section.md +26 -22
- package/src/components/features/.index.md +40 -36
- package/src/components/features/.media-gallery-manager.md +37 -35
- package/src/components/features/.mux-origins.md +46 -0
- package/src/components/features/.og-editor-preview.md +29 -24
- package/src/components/features/.os-type-badge-group.md +26 -18
- package/src/components/features/.os-type-badge.md +41 -24
- package/src/components/features/.paths-display.md +42 -25
- package/src/components/features/.platform-badge.md +26 -17
- package/src/components/features/.policy-configuration-panel.md +33 -31
- package/src/components/features/.provider-button.md +29 -20
- package/src/components/features/.push-button-selector.md +39 -41
- package/src/components/features/.release-media-manager.md +41 -34
- package/src/components/features/.section-selector.md +27 -16
- package/src/components/features/.select-button.md +21 -32
- package/src/components/features/.seo-editor-preview.md +49 -36
- package/src/components/features/.social-links-manager.md +40 -18
- package/src/components/features/.start-with-openframe-button.md +30 -32
- package/src/components/features/.status-filter-component.md +29 -38
- package/src/components/features/.tags-selector.md +25 -29
- package/src/components/features/.transcript-summary-editor.md +24 -18
- package/src/components/features/.use-video-warmup.md +47 -0
- package/src/components/features/.video-bites-display.md +36 -37
- package/src/components/features/.video-bites-shared.md +44 -0
- package/src/components/features/.video-bites-strip.md +63 -0
- package/src/components/features/.video-center-badge.md +38 -0
- package/src/components/features/.video-ratio-tabs.md +38 -31
- package/src/components/features/.video-source-selector.md +24 -27
- package/src/components/features/.video.md +35 -27
- package/src/components/features/.waitlist-form.md +39 -33
- package/src/components/features/.warning-block.md +53 -0
- package/src/components/features/ai-enrich/.AIEnrichSection.md +24 -25
- package/src/components/features/ai-enrich/.AIRequiredBadge.md +22 -21
- package/src/components/features/ai-enrich/.AIStatusIndicator.md +42 -35
- package/src/components/features/ai-enrich/.AIWarningsSection.md +23 -20
- package/src/components/features/ai-enrich/.ConfidenceBadge.md +35 -20
- package/src/components/features/auth/.auth-benefits-panel.md +48 -0
- package/src/components/features/auth/.auth-branding.md +51 -0
- package/src/components/features/auth/.auth-shell.md +51 -0
- package/src/components/features/auth/.back-to-login-link.md +48 -0
- package/src/components/features/auth/.complete-account-form.md +45 -0
- package/src/components/features/auth/.create-organization-form.md +53 -0
- package/src/components/features/auth/.index.md +48 -0
- package/src/components/features/auth/.invite-link-invalid-modal.md +42 -0
- package/src/components/features/auth/.login-form.md +42 -0
- package/src/components/features/auth/.openframe-sso-login-form.md +46 -0
- package/src/components/features/auth/.openframe-sso-signup-form.md +51 -0
- package/src/components/features/auth/.password-reset-form.md +57 -0
- package/src/components/features/auth/.sso-auth-shell.md +35 -0
- package/src/components/features/auth/.sso-providers.md +42 -0
- package/src/components/features/auth/.terms-agreement-label.md +28 -0
- package/src/components/features/board/.board-column-header.md +24 -18
- package/src/components/features/board/.board-column.md +32 -32
- package/src/components/features/board/.board-ticket-approval.md +42 -0
- package/src/components/features/board/.board.md +38 -38
- package/src/components/features/board/.index.md +35 -38
- package/src/components/features/board/.ticket-card.md +33 -36
- package/src/components/features/board/.types.md +38 -31
- package/src/components/features/card-hit-layer.tsx +84 -0
- package/src/components/features/floating-walkthrough-video.tsx +891 -0
- package/src/components/features/index.ts +4 -0
- package/src/components/features/notifications/.approval-request-notification-tile.md +45 -0
- package/src/components/features/notifications/.index.md +35 -31
- package/src/components/features/notifications/.notification-drawer.md +32 -19
- package/src/components/features/notifications/.notification-popups.md +51 -0
- package/src/components/features/notifications/.notification-tile.md +43 -27
- package/src/components/features/notifications/.notifications-context.md +42 -45
- package/src/components/features/notifications/.types.md +51 -31
- package/src/components/features/ticket-status-config-list/.ticket-status-config-list.md +51 -0
- package/src/components/features/time-tracker/.index.md +48 -0
- package/src/components/features/time-tracker/.time-tracker-context.md +55 -0
- package/src/components/features/time-tracker/.time-tracker-header-button.md +51 -0
- package/src/components/features/time-tracker/.time-tracker-panel.md +58 -0
- package/src/components/features/time-tracker/.types.md +51 -0
- package/src/components/features/time-tracker/.use-tracker-clock.md +32 -0
- package/src/components/features/use-walkthrough-video.ts +70 -0
- package/src/components/features/video-bites-strip.tsx +46 -146
- package/src/components/features/video-center-badge.tsx +11 -2
- package/src/components/features/video-hover-preview.tsx +201 -0
- package/src/components/features/video.tsx +368 -73
- package/src/components/help-center-pages/.delivery-page.md +51 -0
- package/src/components/help-center-pages/.index.md +51 -0
- package/src/components/help-center-pages/.onboarding-guides-catalog-page.md +53 -0
- package/src/components/help-center-pages/.product-releases-list-page.md +51 -0
- package/src/components/help-center-pages/.roadmap-page.md +46 -0
- package/src/components/icons/.figma-icon.md +13 -7
- package/src/components/icons/.index.md +26 -22
- package/src/components/icons/.vendor-directory-icon.md +30 -18
- package/src/components/icons/.x-logo.md +26 -10
- package/src/components/icons-v2-generated/.index.md +30 -41
- package/src/components/icons-v2-generated/brand-logos/.index.md +25 -19
- package/src/components/icons-v2-generated/communication/.index.md +26 -30
- package/src/components/icons-v2-generated/logos/.flamingo-logo-icon.md +41 -0
- package/src/components/layout/.article-detail-layout.md +32 -21
- package/src/components/layout/.page-container.md +25 -23
- package/src/components/layout/.page-heading.md +48 -0
- package/src/components/layout/.page-layout.md +30 -25
- package/src/components/layout/.title-block.md +43 -24
- package/src/components/loading/.card-skeleton.md +28 -35
- package/src/components/loading/.category-card-skeleton.md +25 -23
- package/src/components/loading/.device-card-skeleton.md +22 -15
- package/src/components/loading/.margin-report-skeleton.md +30 -35
- package/src/components/loading/.openmsp-heartbeat.md +30 -32
- package/src/components/loading/.organization-card-skeleton.md +22 -25
- package/src/components/loading/.organization-icon-skeleton.md +39 -27
- package/src/components/loading/.page-layout-skeleton.md +50 -28
- package/src/components/loading/.unified-skeleton.md +37 -40
- package/src/components/loading/.users-grid-skeleton.md +19 -38
- package/src/components/navigation/.app-header.md +35 -28
- package/src/components/navigation/.app-layout-context.md +48 -0
- package/src/components/navigation/.app-layout-drawer.md +56 -0
- package/src/components/navigation/.app-layout.md +24 -23
- package/src/components/navigation/.header-mingo-button.md +46 -0
- package/src/components/navigation/.header-organization-filter.md +32 -18
- package/src/components/navigation/.header.md +24 -31
- package/src/components/navigation/.index.md +36 -50
- package/src/components/navigation/.mingo-ai-button.md +41 -0
- package/src/components/navigation/.mobile-burger-menu.md +29 -29
- package/src/components/navigation/.mobile-nav-panel.md +41 -49
- package/src/components/navigation/.multi-level-navigation.md +76 -0
- package/src/components/navigation/.navigation-sidebar-item.md +14 -14
- package/src/components/navigation/.navigation-sidebar.md +30 -23
- package/src/components/navigation/.sliding-sidebar.md +30 -25
- package/src/components/navigation/.sticky-section-nav.md +23 -21
- package/src/components/onboarding-guides/.index.md +40 -0
- package/src/components/onboarding-guides/.onboarding-guide-detail-view.md +55 -0
- package/src/components/onboarding-guides/.onboarding-guides-catalog-skeleton.md +33 -0
- package/src/components/onboarding-guides/.onboarding-guides-catalog-view.md +50 -0
- package/src/components/onboarding-guides/hooks/.use-onboarding-guides.md +54 -0
- package/src/components/platform/.CveLink.md +28 -17
- package/src/components/platform/.ScriptArguments.md +18 -23
- package/src/components/platform/.ScriptInfoSection.md +27 -21
- package/src/components/platform/.ShellTypeBadge.md +34 -18
- package/src/components/platform/.SoftwareInfo.md +23 -21
- package/src/components/platform/.ToolBadge.md +18 -16
- package/src/components/profile/.ProfileLoadingSkeleton.md +24 -23
- package/src/components/related-content/.index.md +41 -0
- package/src/components/related-content/.related-content-section.md +62 -0
- package/src/components/shared/.article-author-byline.md +56 -0
- package/src/components/shared/.detail-page-skeleton.md +32 -43
- package/src/components/shared/.media-gallery-strip.md +43 -0
- package/src/components/shared/delivery/.delivery-lists.md +20 -19
- package/src/components/shared/delivery/.delivery-row.md +24 -20
- package/src/components/shared/delivery/.delivery-table.md +20 -22
- package/src/components/shared/dev-section/.dev-card-row.md +28 -36
- package/src/components/shared/dev-section/.dev-section-page.md +36 -25
- package/src/components/shared/dev-section/.dev-section-view.md +32 -22
- package/src/components/shared/doc-search/.doc-search-bar.md +58 -0
- package/src/components/shared/doc-search/.doc-search-result-row.md +50 -0
- package/src/components/shared/doc-search/.format-relative-path.md +30 -0
- package/src/components/shared/doc-search/.index.md +46 -0
- package/src/components/shared/doc-search/.map-doc-search-results.md +44 -0
- package/src/components/shared/doc-search/.resolve-search-result-action.md +52 -0
- package/src/components/shared/doc-search/.types.md +49 -0
- package/src/components/shared/doc-search/.use-doc-search.md +66 -0
- package/src/components/shared/legal-document/.legal-document-page.md +26 -20
- package/src/components/shared/legal-document/.use-legal-docs.md +36 -30
- package/src/components/shared/onboarding/.onboarding-step-card.md +24 -16
- package/src/components/shared/onboarding/.onboarding-walkthrough.md +42 -28
- package/src/components/shared/product-release/.index.md +33 -24
- package/src/components/shared/product-release/.product-release-card-skeleton.md +22 -28
- package/src/components/shared/product-release/.product-release-card.md +28 -29
- package/src/components/shared/product-release/.product-releases-view.md +49 -0
- package/src/components/shared/product-release/.release-detail-page.md +30 -15
- package/src/components/shared/roadmap/.index.md +29 -24
- package/src/components/shared/roadmap/.roadmap-grid.md +43 -54
- package/src/components/shared/roadmap/.roadmap-view.md +41 -0
- package/src/components/shared/roadmap/.use-roadmap-voting.md +27 -17
- package/src/components/switch.tsx +1 -1
- package/src/components/tickets/.help-center-card.md +32 -28
- package/src/components/tickets/.help-center-create-form.md +34 -22
- package/src/components/tickets/.help-center-list.md +36 -25
- package/src/components/tickets/.index.md +30 -45
- package/src/components/tickets/.ticket-center.md +31 -38
- package/src/components/tickets/.ticket-detail-drawer.md +20 -30
- package/src/components/tickets/.ticket-open-form.md +24 -26
- package/src/components/tickets/.ticket-reply-composer.md +51 -0
- package/src/components/tickets/.ticket-row.md +26 -11
- package/src/components/tickets/.types.md +56 -38
- package/src/components/tickets/hooks/.use-ticket-actions.md +60 -47
- package/src/components/tickets/hooks/.use-ticket-engagements.md +27 -27
- package/src/components/tickets/hooks/.use-tickets-list.md +24 -30
- package/src/components/ui/.accordion.md +28 -21
- package/src/components/ui/.actions-menu.md +36 -54
- package/src/components/ui/.ai-generated-badge.md +25 -0
- package/src/components/ui/.alert-dialog.md +21 -16
- package/src/components/ui/.alert.md +30 -25
- package/src/components/ui/.allowed-domains-input.md +26 -15
- package/src/components/ui/.announcement-bar-view.md +46 -0
- package/src/components/ui/.autocomplete.md +40 -27
- package/src/components/ui/.badge.md +34 -31
- package/src/components/ui/.brand-association-card.md +22 -18
- package/src/components/ui/.breadcrumb.md +18 -14
- package/src/components/ui/.bullet-list.md +35 -23
- package/src/components/ui/.card.md +47 -30
- package/src/components/ui/.checkbox-block.md +34 -22
- package/src/components/ui/.checkbox-with-description.md +18 -20
- package/src/components/ui/.chevron-button.md +29 -29
- package/src/components/ui/.circular-progress.md +30 -41
- package/src/components/ui/.color-preset-select.md +54 -0
- package/src/components/ui/.color-swatch.md +37 -0
- package/src/components/ui/.content-loader.md +34 -27
- package/src/components/ui/.crossfade-panels.md +50 -0
- package/src/components/ui/.cursor-pagination.md +38 -26
- package/src/components/ui/.dashboard-info-card.md +46 -27
- package/src/components/ui/.date-picker.md +52 -36
- package/src/components/ui/.device-card-compact.md +23 -20
- package/src/components/ui/.device-card.md +39 -30
- package/src/components/ui/.dialog.md +14 -14
- package/src/components/ui/.drawer.md +45 -39
- package/src/components/ui/.dropdown-button.md +41 -33
- package/src/components/ui/.dropdown-menu.md +40 -23
- package/src/components/ui/.duration-input.md +41 -0
- package/src/components/ui/.entity-image.md +32 -28
- package/src/components/ui/.error-state.md +30 -26
- package/src/components/ui/.fade-preview.md +44 -0
- package/src/components/ui/.field-wrapper.md +34 -23
- package/src/components/ui/.file-upload.md +30 -18
- package/src/components/ui/.filter-modal.md +30 -32
- package/src/components/ui/.filter-pill-row.md +58 -0
- package/src/components/ui/.floating-tooltip.md +27 -32
- package/src/components/ui/.hidden-tags-popup.md +18 -20
- package/src/components/ui/.highlight-card.md +36 -23
- package/src/components/ui/.honeypot-field.md +41 -0
- package/src/components/ui/.hover-dropdown.md +44 -31
- package/src/components/ui/.image-gallery-modal.md +28 -30
- package/src/components/ui/.image-uploader.md +39 -22
- package/src/components/ui/.index.md +33 -31
- package/src/components/ui/.info-card-row.md +50 -0
- package/src/components/ui/.info-card.md +27 -20
- package/src/components/ui/.info-row.md +30 -24
- package/src/components/ui/.info-section.md +63 -0
- package/src/components/ui/.input.md +29 -28
- package/src/components/ui/.label.md +34 -26
- package/src/components/ui/.markdown-editor.md +26 -25
- package/src/components/ui/.marquee-wall.md +64 -0
- package/src/components/ui/.menubar.md +50 -16
- package/src/components/ui/.modal-v2.md +41 -27
- package/src/components/ui/.modal.md +22 -19
- package/src/components/ui/.more-actions-menu.md +30 -24
- package/src/components/ui/.navigation-menu.md +40 -25
- package/src/components/ui/.organization-card.md +46 -27
- package/src/components/ui/.page-actions.md +55 -41
- package/src/components/ui/.page-loader.md +40 -23
- package/src/components/ui/.password-input.md +30 -0
- package/src/components/ui/.phone-input.md +20 -22
- package/src/components/ui/.portal-container.md +43 -0
- package/src/components/ui/.progress-bar.md +40 -27
- package/src/components/ui/.release-changelog-section.md +32 -26
- package/src/components/ui/.rich-markdown-renderer.md +45 -0
- package/src/components/ui/.scroll-fade.md +56 -0
- package/src/components/ui/.search-input.md +55 -37
- package/src/components/ui/.select.md +25 -26
- package/src/components/ui/.service-card.md +25 -19
- package/src/components/ui/.sheet.md +21 -21
- package/src/components/ui/.simple-markdown-renderer.md +36 -24
- package/src/components/ui/.slack-channel-chip.md +49 -0
- package/src/components/ui/.square-avatar.md +29 -26
- package/src/components/ui/.stacked-rows-panel.md +61 -0
- package/src/components/ui/.status-badge.md +30 -24
- package/src/components/ui/.status-indicator.md +35 -21
- package/src/components/ui/.tab-content.md +34 -22
- package/src/components/ui/.tab-navigation.md +40 -50
- package/src/components/ui/.tab-selector.md +48 -31
- package/src/components/ui/.tabs.md +34 -21
- package/src/components/ui/.tag-search-input.md +20 -20
- package/src/components/ui/.tag-select-dropdown.md +59 -0
- package/src/components/ui/.tag.md +25 -43
- package/src/components/ui/.tags-input.md +31 -31
- package/src/components/ui/.textarea.md +32 -30
- package/src/components/ui/.ticket-attachments-list.md +36 -29
- package/src/components/ui/.ticket-info-section.md +37 -42
- package/src/components/ui/.ticket-status-config-row.md +66 -0
- package/src/components/ui/.ticket-status-tag.md +39 -35
- package/src/components/ui/.toaster.md +21 -15
- package/src/components/ui/.toggle.md +38 -37
- package/src/components/ui/.tooltip.md +16 -13
- package/src/components/ui/button/.button-styles.md +17 -18
- package/src/components/ui/button/.button.md +30 -37
- package/src/components/ui/button/.split-button.md +46 -23
- package/src/components/ui/button/button-styles.ts +13 -0
- package/src/components/ui/button/button.tsx +5 -0
- package/src/components/ui/data-table/.data-table-body.md +50 -35
- package/src/components/ui/data-table/.data-table-empty.md +17 -33
- package/src/components/ui/data-table/.data-table-header.md +43 -40
- package/src/components/ui/data-table/.data-table-row.md +31 -31
- package/src/components/ui/data-table/.types.md +23 -28
- package/src/components/ui/file-manager/.file-manager-breadcrumb.md +16 -24
- package/src/components/ui/file-manager/.file-manager-empty.md +23 -15
- package/src/components/ui/file-manager/.file-manager-skeleton.md +34 -36
- package/src/components/ui/file-manager/.file-manager-table-row.md +29 -29
- package/src/components/ui/file-manager/.file-manager-table.md +39 -24
- package/src/components/ui/no-data/.index.md +22 -0
- package/src/components/ui/no-data/.no-data-actions.md +29 -0
- package/src/components/ui/no-data/.no-data-message.md +37 -0
- package/src/components/ui/no-data/.no-data-styles.md +39 -0
- package/src/components/ui/no-data/.no-data.md +59 -0
- package/src/components/ui/page-actions.tsx +2 -1
- package/src/components/ui/query-report-table/.query-report-table-header.md +15 -15
- package/src/components/ui/query-report-table/.query-report-table-row.md +16 -16
- package/src/components/ui/query-report-table/.query-report-table.md +39 -24
- package/src/components/ui/table/.table-column-filter-dropdown.md +15 -9
- package/src/components/ui/table/.table-description-cell.md +13 -12
- package/src/components/ui/table/.table-empty-state.md +19 -20
- package/src/components/ui/table/.table-row.md +30 -20
- package/src/components/ui/table/.table-skeleton.md +32 -27
- package/src/components/ui/table/.table-timestamp-cell.md +24 -23
- package/src/components/ui/table/.table.md +43 -30
- package/src/components/ui/table/.types.md +49 -45
- package/src/components/ui/table/.use-table-motion.md +45 -0
- package/src/contexts/.chat-runtime-context.md +55 -26
- package/src/contexts/.endpoints-runtime-context.md +40 -44
- package/src/embed-shims/.next-navigation.md +38 -31
- package/src/hooks/.api-hooks.md +28 -21
- package/src/hooks/.index.md +30 -25
- package/src/hooks/.use-authed-image-src.md +38 -0
- package/src/hooks/.use-contact-submission.md +35 -36
- package/src/hooks/.use-humanity-signals.md +47 -0
- package/src/hooks/.use-near-viewport.md +30 -30
- package/src/hooks/.use-og-placeholder-url.md +57 -0
- package/src/hooks/.use-scroll-to-hash.md +46 -0
- package/src/hooks/.use-self-fetch.md +52 -0
- package/src/hooks/state/.flatten-schema.md +37 -29
- package/src/hooks/ui/.index.md +37 -25
- package/src/hooks/ui/.use-auto-limit-tags.md +55 -38
- package/src/hooks/ui/.use-deferred-error.md +44 -0
- package/src/hooks/ui/.use-focus-trap.md +59 -0
- package/src/hooks/ui/.use-header-height.md +37 -0
- package/src/hooks/ui/.use-horizontal-scrollbar.md +25 -34
- package/src/hooks/ui/.use-marquee-engine.md +73 -0
- package/src/hooks/ui/.use-notification-permission.md +49 -0
- package/src/hooks/ui/.use-reset-on-page-hidden.md +40 -0
- package/src/hooks/ui/.use-suppress-clone-focus.md +41 -0
- package/src/nats/.index.md +39 -0
- package/src/nats/.nats-provider.md +46 -0
- package/src/nats/.nats.md +38 -28
- package/src/nats/.shared-connection.md +56 -0
- package/src/nats/.use-nats-subscription.md +57 -0
- package/src/stories/.ActionsMenu.stories.md +57 -0
- package/src/stories/.Alert.stories.md +46 -0
- package/src/stories/.AnnouncementBar.stories.md +59 -32
- package/src/stories/.AppLayoutDrawer.stories.md +60 -0
- package/src/stories/.AppLayoutSidebar.stories.md +45 -0
- package/src/stories/.ApprovalBatchMessage.stories.md +46 -0
- package/src/stories/.ApprovalBatchMessageClient.stories.md +55 -0
- package/src/stories/.ApprovalRequestMessage.stories.md +50 -0
- package/src/stories/.ApprovalRequestMessageClient.stories.md +41 -0
- package/src/stories/.BlogCard.stories.md +52 -0
- package/src/stories/.Board.stories.md +25 -20
- package/src/stories/.Button.stories.md +35 -40
- package/src/stories/.CampaignCardAdmin.stories.md +38 -0
- package/src/stories/.CardsStrip.stories.md +39 -0
- package/src/stories/.CaseStudyCard.stories.md +41 -0
- package/src/stories/.ChatContainer.stories.md +41 -0
- package/src/stories/.ChatInlineVideoPill.stories.md +36 -0
- package/src/stories/.ChatMessageEnhanced.stories.md +51 -0
- package/src/stories/.ChatMingoInfoCards.stories.md +30 -0
- package/src/stories/.ChatTicketList.stories.md +38 -22
- package/src/stories/.ChatTypingIndicator.stories.md +47 -0
- package/src/stories/.CheckboxBlock.stories.md +34 -35
- package/src/stories/.ContextCompactionDisplay.stories.md +28 -0
- package/src/stories/.CustomerInterviewCard.stories.md +36 -0
- package/src/stories/.DashboardInfoCard.stories.md +40 -33
- package/src/stories/.DataRoomDocCard.stories.md +42 -0
- package/src/stories/.DataTable.stories.md +37 -32
- package/src/stories/.DatePicker.stories.md +34 -30
- package/src/stories/.EmbeddableChat.stories.md +45 -28
- package/src/stories/.EmptyState.stories.md +55 -0
- package/src/stories/.ErrorMessageDisplay.stories.md +45 -0
- package/src/stories/.FilterModal.stories.md +28 -22
- package/src/stories/.GenericEntityCard.stories.md +50 -0
- package/src/stories/.GitHubActivityCard.stories.md +41 -0
- package/src/stories/.GuideWelcome.stories.md +38 -0
- package/src/stories/.Header.stories.md +32 -22
- package/src/stories/.HubspotTicketCard.stories.md +41 -0
- package/src/stories/.InfoCard.stories.md +37 -26
- package/src/stories/.InfoCardRow.stories.md +48 -0
- package/src/stories/.InfoSection.stories.md +55 -0
- package/src/stories/.Input.stories.md +45 -35
- package/src/stories/.InvestorUpdateCard.stories.md +41 -0
- package/src/stories/.MarqueeWall.stories.md +53 -0
- package/src/stories/.MingoAiButton.stories.md +31 -0
- package/src/stories/.MingoChatModals.stories.md +47 -0
- package/src/stories/.MingoInfoCard.stories.md +50 -0
- package/src/stories/.MingoOnboardingCard.stories.md +19 -19
- package/src/stories/.MingoWelcome.stories.md +41 -0
- package/src/stories/.MobileNavPanel.stories.md +52 -0
- package/src/stories/.Modal.stories.md +19 -16
- package/src/stories/.MspOrganizationCard.stories.md +45 -0
- package/src/stories/.NotificationDrawer.stories.md +39 -28
- package/src/stories/.OSTypeBadge.stories.md +34 -25
- package/src/stories/.OnboardingGuideCard.stories.md +41 -0
- package/src/stories/.PageActions.stories.md +21 -21
- package/src/stories/.PageContainer.stories.md +29 -24
- package/src/stories/.PageLayout.stories.md +18 -35
- package/src/stories/.PolicyConfigurationPanel.stories.md +58 -0
- package/src/stories/.ProductReleaseCard.stories.md +39 -0
- package/src/stories/.ProgramCard.stories.md +51 -0
- package/src/stories/.QuickActionChip.stories.md +59 -0
- package/src/stories/.QuickActionMarquee.stories.md +51 -0
- package/src/stories/.QuickActionWall.stories.md +58 -0
- package/src/stories/.RoadmapCard.stories.md +41 -0
- package/src/stories/.ShellTypeBadge.stories.md +42 -22
- package/src/stories/.SlackMessageCard.stories.md +42 -0
- package/src/stories/.SlashCommandSuggestions.stories.md +21 -31
- package/src/stories/.SplitButton.stories.md +23 -25
- package/src/stories/.StackedRowsPanel.stories.md +65 -0
- package/src/stories/.TabSelector.stories.md +26 -38
- package/src/stories/.Tag.stories.md +32 -27
- package/src/stories/.ThinkingDisplay.stories.md +43 -0
- package/src/stories/.TicketCard.stories.md +60 -0
- package/src/stories/.TicketInfoSection.stories.md +28 -20
- package/src/stories/.TimeTracker.stories.md +35 -0
- package/src/stories/.Toaster.stories.md +26 -20
- package/src/stories/.ToolBadge.stories.md +34 -24
- package/src/stories/.ToolExecutionDisplay.stories.md +22 -20
- package/src/stories/.ToolExecutionDisplayClient.stories.md +33 -0
- package/src/stories/.VideoBitesStrip.stories.md +37 -0
- package/src/stories/.WarningBlock.stories.md +51 -0
- package/src/stories/__fixtures__/.chat-card-decorator.md +39 -0
- package/src/stories/__fixtures__/.chat-cards.md +57 -0
- package/src/stories/auth/.CompleteAccount.stories.md +36 -0
- package/src/stories/auth/.CreateOrganization.stories.md +52 -0
- package/src/stories/auth/.InviteLinkInvalid.stories.md +21 -0
- package/src/stories/auth/.Login.stories.md +32 -0
- package/src/stories/auth/.OpenFrameSso.stories.md +58 -0
- package/src/stories/auth/.PasswordReset.stories.md +49 -0
- package/src/styles/ods-interaction-states.css +32 -0
- package/src/types/.announcement.md +67 -35
- package/src/types/.blog.md +44 -41
- package/src/types/.case-study.md +31 -17
- package/src/types/.content-ref.md +37 -0
- package/src/types/.customer-interview.md +38 -38
- package/src/types/.doc-source.md +87 -0
- package/src/types/.entity-author.md +53 -0
- package/src/types/.entity-platform.md +40 -0
- package/src/types/.index.md +23 -17
- package/src/types/.marketing.md +32 -35
- package/src/types/.navigation.md +31 -19
- package/src/types/.os.types.md +30 -31
- package/src/types/.permissions.md +49 -35
- package/src/types/.platform.md +44 -28
- package/src/types/.product-release.md +59 -42
- package/src/types/.shell.types.md +46 -30
- package/src/types/.supabase.md +43 -29
- package/src/types/.tool.types.md +43 -23
- package/src/types/.video-processing.md +40 -31
- package/src/types/supabase.ts +80 -0
- package/src/types/video-processing.ts +1 -0
- package/src/utils/.announcement-storage.md +49 -17
- package/src/utils/.app-config.md +22 -18
- package/src/utils/.brand-marks.md +46 -0
- package/src/utils/.cn.md +40 -29
- package/src/utils/.color-analysis.md +34 -25
- package/src/utils/.common.md +43 -23
- package/src/utils/.content-href.md +64 -0
- package/src/utils/.content-ref-groups.md +51 -0
- package/src/utils/.date-utils.md +46 -35
- package/src/utils/.doc-path-utils.md +38 -0
- package/src/utils/.doc-tree-nav.md +51 -0
- package/src/utils/.embed-authed-fetch.md +48 -32
- package/src/utils/.embed-content-fetch.md +36 -0
- package/src/utils/.embed-url-converters.md +52 -0
- package/src/utils/.extract-items.md +49 -0
- package/src/utils/.faq-anchor.md +48 -0
- package/src/utils/.format.md +73 -55
- package/src/utils/.humanity-signals.md +59 -0
- package/src/utils/.index.md +73 -31
- package/src/utils/.list-url.md +43 -0
- package/src/utils/.markdown-section-extractor.md +57 -0
- package/src/utils/.markdown-to-plain.md +51 -0
- package/src/utils/.media-carousel-utils-stub.md +42 -31
- package/src/utils/.ods-color-utils.md +84 -43
- package/src/utils/.og-placeholder.md +45 -0
- package/src/utils/.page-header-constants.md +26 -0
- package/src/utils/.platform-config.md +34 -34
- package/src/utils/.release-badge.md +47 -0
- package/src/utils/.release-cover.md +45 -0
- package/src/utils/.same-page-hash-nav.md +45 -0
- package/src/utils/.scroll-into-view.md +32 -25
- package/src/utils/.seo-description.md +37 -0
- package/src/utils/.seo-title.md +25 -0
- package/src/utils/.social-embed-cache.md +37 -0
- package/src/utils/.source-icons.md +30 -34
- package/src/utils/.suggestion-url.md +46 -0
- package/src/utils/.tool-utils.md +39 -24
- package/src/utils/.tree-builder.md +64 -0
- package/src/utils/.video-bite-id.md +42 -0
- package/src/utils/announcement-storage.ts +9 -18
- package/src/utils/dev-sections/.dev-section-param-keys.md +51 -0
- package/src/utils/dev-sections/.openframe-dev-sections.md +40 -28
- package/src/utils/dismiss-cookie.ts +55 -0
- package/src/utils/dismissal-storage.ts +38 -0
- package/src/utils/index.ts +3 -0
- package/dist/chunk-BBUEY73L.js.map +0 -1
- package/dist/chunk-G3UN2DXU.cjs.map +0 -1
- package/dist/chunk-OWMLWJQY.cjs.map +0 -1
- package/dist/chunk-SASR7SK5.js.map +0 -1
- package/src/components/chat/utils/.onboarding-icons.md +0 -28
- package/src/hooks/.use-og-placeholder.md +0 -51
- /package/dist/{chunk-MGKCS6KS.js.map → chunk-3WCARCI4.js.map} +0 -0
- /package/dist/{chunk-Y3Y2DLNO.js.map → chunk-6UGYBCEN.js.map} +0 -0
- /package/dist/{chunk-PSPWT2Q5.js.map → chunk-7LWXWXEY.js.map} +0 -0
- /package/dist/{chunk-VTSRDC4W.js.map → chunk-CKC3EAYT.js.map} +0 -0
- /package/dist/{chunk-ZRANZNEA.js.map → chunk-JJE5TUZK.js.map} +0 -0
- /package/dist/{chunk-66BNAFO6.js.map → chunk-JQIUBFHL.js.map} +0 -0
- /package/dist/{chunk-2DIOV7BR.js.map → chunk-UPN6EFOM.js.map} +0 -0
- /package/dist/{chunk-4SMRQ4SN.js.map → chunk-WBL5Y4PS.js.map} +0 -0
- /package/dist/{chunk-FP4H6Y5O.js.map → chunk-WPYPSIY2.js.map} +0 -0
- /package/dist/{chunk-R5WJJL4V.js.map → chunk-X5X43HFV.js.map} +0 -0
- /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:
|
|
2
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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 '
|
|
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-
|
|
22
|
-
className="text-
|
|
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
|
-
|
|
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:
|
|
2
|
-
Manages a dynamic list of script arguments as editable key-value pairs,
|
|
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
|
-
|
|
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`** —
|
|
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
|
-
|
|
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: '' }, //
|
|
31
|
+
{ id: '2', key: 'verbose', value: '' }, // flag-type argument
|
|
30
32
|
])
|
|
31
33
|
|
|
32
34
|
<ScriptArguments
|
|
33
|
-
titleLabel="
|
|
35
|
+
titleLabel="Script Arguments"
|
|
34
36
|
arguments={args}
|
|
35
37
|
onArgumentsChange={setArgs}
|
|
36
|
-
keyPlaceholder="
|
|
37
|
-
valuePlaceholder="
|
|
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
|
-
|
|
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:
|
|
2
|
-
Displays script metadata in a
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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
|
|
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:
|
|
31
|
-
photoUrl:
|
|
27
|
+
name: 'Jane Smith',
|
|
28
|
+
photoUrl: '/avatars/jane.jpg',
|
|
32
29
|
}}
|
|
33
30
|
/>
|
|
34
31
|
```
|
|
35
32
|
|
|
36
33
|
## Layout Behavior
|
|
37
34
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
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:
|
|
2
|
-
Displays a badge
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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 './
|
|
15
|
-
import { ShellTypeValues } from '
|
|
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
|
|
40
|
+
// With custom wrapper and icon classes
|
|
21
41
|
<ShellTypeBadge
|
|
22
42
|
shellType={ShellTypeValues.PYTHON}
|
|
23
|
-
className="bg-
|
|
24
|
-
iconClassName="opacity-
|
|
43
|
+
className="bg-surface-secondary px-2 py-1 rounded"
|
|
44
|
+
iconClassName="opacity-80"
|
|
25
45
|
/>
|
|
26
46
|
|
|
27
|
-
//
|
|
28
|
-
<ShellTypeBadge shellType={
|
|
47
|
+
// Case-insensitive — input is normalized to uppercase internally
|
|
48
|
+
<ShellTypeBadge shellType={"bash" as ShellType} />
|
|
29
49
|
```
|
|
30
50
|
|
|
31
|
-
|
|
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:
|
|
2
|
-
Displays software name with optional vendor and version
|
|
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
|
|
14
|
-
| `version` | `string` | ❌ | Software version
|
|
15
|
-
| `className` | `string` | ❌ | Additional CSS classes
|
|
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
|
-
|
|
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
|
|
28
|
+
// Full usage with version and custom class
|
|
23
29
|
<SoftwareInfo
|
|
24
30
|
name="Visual Studio Code"
|
|
25
31
|
vendor="Microsoft"
|
|
26
|
-
version="1.
|
|
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
|
-
##
|
|
37
|
+
## Notes
|
|
37
38
|
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
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:
|
|
2
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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
|
|
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="
|
|
24
|
-
iconClassName="
|
|
24
|
+
className="opacity-75"
|
|
25
|
+
iconClassName="text-blue-500"
|
|
25
26
|
/>
|
|
26
27
|
|
|
27
|
-
//
|
|
28
|
-
<
|
|
28
|
+
// In a table cell
|
|
29
|
+
<td>
|
|
30
|
+
<ToolBadge toolType="MESHCENTRAL" />
|
|
31
|
+
</td>
|
|
29
32
|
```
|
|
30
33
|
|
|
31
34
|
## Notes
|
|
32
35
|
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
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
|