@flamingo-stack/openframe-frontend-core 0.0.204 → 0.0.205
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-4CWSZPXH.cjs → chunk-24KCAECR.cjs} +9 -9
- package/dist/{chunk-4CWSZPXH.cjs.map → chunk-24KCAECR.cjs.map} +1 -1
- package/dist/chunk-27APPAJN.cjs +24 -0
- package/dist/chunk-27APPAJN.cjs.map +1 -0
- package/dist/{chunk-UC43NICZ.cjs → chunk-664KA5FI.cjs} +2 -35
- package/dist/chunk-664KA5FI.cjs.map +1 -0
- package/dist/chunk-6RZYJICV.cjs +24 -0
- package/dist/chunk-6RZYJICV.cjs.map +1 -0
- package/dist/chunk-7L4DWM7P.js +24 -0
- package/dist/chunk-7L4DWM7P.js.map +1 -0
- package/dist/chunk-BZFW3FOF.cjs +21 -0
- package/dist/chunk-BZFW3FOF.cjs.map +1 -0
- package/dist/{chunk-N57KWHDB.js → chunk-CIPO6DXK.js} +5 -5
- package/dist/chunk-EL5YVPD5.js +21 -0
- package/dist/chunk-EL5YVPD5.js.map +1 -0
- package/dist/{chunk-ARQ4XP64.cjs → chunk-FDCFI7YT.cjs} +40080 -31492
- package/dist/chunk-FDCFI7YT.cjs.map +1 -0
- package/dist/chunk-G7UE6RKV.cjs +121 -0
- package/dist/chunk-G7UE6RKV.cjs.map +1 -0
- package/dist/{chunk-25LVV26X.cjs → chunk-JUZGUQMX.cjs} +178 -50
- package/dist/chunk-JUZGUQMX.cjs.map +1 -0
- package/dist/{chunk-SZPJ5R5B.js → chunk-KSOOKNBG.js} +1 -34
- package/dist/chunk-KSOOKNBG.js.map +1 -0
- package/dist/{chunk-RMB5DVED.cjs → chunk-KUZGEA7U.cjs} +83 -66
- package/dist/chunk-KUZGEA7U.cjs.map +1 -0
- package/dist/chunk-LXC6P2EO.js +63 -0
- package/dist/chunk-LXC6P2EO.js.map +1 -0
- package/dist/chunk-MJNXIEV2.js +24 -0
- package/dist/chunk-MJNXIEV2.js.map +1 -0
- package/dist/{chunk-CPXLQ57U.js → chunk-MVGGXOFA.js} +37 -20
- package/dist/chunk-MVGGXOFA.js.map +1 -0
- package/dist/{chunk-LY34ORX6.js → chunk-O55ZUAX7.js} +39920 -31332
- package/dist/chunk-O55ZUAX7.js.map +1 -0
- package/dist/chunk-OHPI2HRK.js +47 -0
- package/dist/chunk-OHPI2HRK.js.map +1 -0
- package/dist/chunk-PLJLE4A4.js +121 -0
- package/dist/chunk-PLJLE4A4.js.map +1 -0
- package/dist/{chunk-XGL5FKIK.js → chunk-SCN5WFIZ.js} +148 -20
- package/dist/chunk-SCN5WFIZ.js.map +1 -0
- package/dist/chunk-WBR7H6E3.cjs +47 -0
- package/dist/chunk-WBR7H6E3.cjs.map +1 -0
- package/dist/chunk-XL4V2PYG.cjs +63 -0
- package/dist/chunk-XL4V2PYG.cjs.map +1 -0
- package/dist/components/announcement-bar.d.ts.map +1 -1
- package/dist/components/chat/chat-attachment-bar.d.ts +66 -0
- package/dist/components/chat/chat-attachment-bar.d.ts.map +1 -0
- package/dist/components/chat/chat-container.d.ts +21 -1
- package/dist/components/chat/chat-container.d.ts.map +1 -1
- package/dist/components/chat/chat-input.d.ts.map +1 -1
- package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
- package/dist/components/chat/chat-message-list.d.ts.map +1 -1
- package/dist/components/chat/chat-panel-context.d.ts +9 -0
- package/dist/components/chat/chat-panel-context.d.ts.map +1 -0
- package/dist/components/chat/chat-ticket-list.d.ts +1 -1
- package/dist/components/chat/chat-ticket-list.d.ts.map +1 -1
- package/dist/components/chat/embeddable-chat.d.ts +42 -0
- package/dist/components/chat/embeddable-chat.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/admin-content-card.d.ts +34 -0
- package/dist/components/chat/entity-cards/admin-content-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/block-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/blog-card.d.ts +30 -0
- package/dist/components/chat/entity-cards/blog-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/blog-image-placeholder.d.ts +26 -0
- package/dist/components/chat/entity-cards/blog-image-placeholder.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/campaign-card-admin.d.ts +33 -0
- package/dist/components/chat/entity-cards/campaign-card-admin.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/case-study-card.d.ts +20 -0
- package/dist/components/chat/entity-cards/case-study-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/chat-ticket-item.d.ts.map +1 -0
- package/dist/components/chat/{chat-video-entity-card.d.ts → entity-cards/chat-video-entity-card.d.ts} +1 -1
- package/dist/components/chat/entity-cards/chat-video-entity-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/customer-interview-card.d.ts +19 -0
- package/dist/components/chat/entity-cards/customer-interview-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/data-room-doc-card.d.ts +47 -0
- package/dist/components/chat/entity-cards/data-room-doc-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/dispatch.d.ts +119 -0
- package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/entity-author-card.d.ts +87 -0
- package/dist/components/chat/entity-cards/entity-author-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/generic-entity-card.d.ts +42 -0
- package/dist/components/chat/entity-cards/generic-entity-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/github-activity-card.d.ts +37 -0
- package/dist/components/chat/entity-cards/github-activity-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/hubspot-ticket-card.d.ts +28 -0
- package/dist/components/chat/entity-cards/hubspot-ticket-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/index.d.ts +32 -0
- package/dist/components/chat/entity-cards/index.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/investor-update-card.d.ts +19 -0
- package/dist/components/chat/entity-cards/investor-update-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts +20 -0
- package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/product-release-card-defaults.d.ts +21 -0
- package/dist/components/chat/entity-cards/product-release-card-defaults.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/product-release-card.d.ts +12 -0
- package/dist/components/chat/entity-cards/product-release-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/program-card-defaults.d.ts +32 -0
- package/dist/components/chat/entity-cards/program-card-defaults.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/program-card.d.ts +37 -0
- package/dist/components/chat/entity-cards/program-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/roadmap-card.d.ts +28 -0
- package/dist/components/chat/entity-cards/roadmap-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/roadmap-vote-button.d.ts +12 -0
- package/dist/components/chat/entity-cards/roadmap-vote-button.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/slack-message-card.d.ts +28 -0
- package/dist/components/chat/entity-cards/slack-message-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/task-type-icon.d.ts +6 -0
- package/dist/components/chat/entity-cards/task-type-icon.d.ts.map +1 -0
- package/dist/components/chat/hooks/index.d.ts +10 -0
- package/dist/components/chat/hooks/index.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-chat-attachment-image-gallery.d.ts +5 -0
- package/dist/components/chat/hooks/use-chat-attachment-image-gallery.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-chat-attachments.d.ts +33 -0
- package/dist/components/chat/hooks/use-chat-attachments.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-chat-card-item.d.ts +7 -0
- package/dist/components/chat/hooks/use-chat-card-item.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-chat-identity.d.ts +44 -0
- package/dist/components/chat/hooks/use-chat-identity.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-chat.d.ts +30 -0
- package/dist/components/chat/hooks/use-chat.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-close-on-navigation.d.ts +2 -0
- package/dist/components/chat/hooks/use-close-on-navigation.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-embedded-chat.d.ts +174 -0
- package/dist/components/chat/hooks/use-embedded-chat.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-proxied-image-url.d.ts +18 -0
- package/dist/components/chat/hooks/use-proxied-image-url.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-slash-commands.d.ts +32 -0
- package/dist/components/chat/hooks/use-slash-commands.d.ts.map +1 -0
- package/dist/components/chat/hooks/use-sse.d.ts +57 -0
- package/dist/components/chat/hooks/use-sse.d.ts.map +1 -0
- package/dist/components/chat/index.cjs +393 -0
- package/dist/components/chat/index.cjs.map +1 -0
- package/dist/components/chat/index.d.ts +5 -3
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +393 -0
- package/dist/components/chat/index.js.map +1 -0
- package/dist/components/chat/nav-link-anchor-via-runtime.d.ts +33 -0
- package/dist/components/chat/nav-link-anchor-via-runtime.d.ts.map +1 -0
- package/dist/components/chat/source-action-button.d.ts +39 -0
- package/dist/components/chat/source-action-button.d.ts.map +1 -0
- package/dist/components/chat/types/chat.types.d.ts +36 -0
- package/dist/components/chat/types/chat.types.d.ts.map +1 -1
- package/dist/components/chat/types/component.types.d.ts +56 -11
- package/dist/components/chat/types/component.types.d.ts.map +1 -1
- package/dist/components/chat/types/entities/blog.d.ts +14 -0
- package/dist/components/chat/types/entities/blog.d.ts.map +1 -0
- package/dist/components/chat/types/entities/case-study.d.ts +10 -0
- package/dist/components/chat/types/entities/case-study.d.ts.map +1 -0
- package/dist/components/chat/types/entities/content-ref.d.ts +23 -0
- package/dist/components/chat/types/entities/content-ref.d.ts.map +1 -0
- package/dist/components/chat/types/entities/customer-interview.d.ts +10 -0
- package/dist/components/chat/types/entities/customer-interview.d.ts.map +1 -0
- package/dist/components/chat/types/entities/data-room-doc.d.ts +37 -0
- package/dist/components/chat/types/entities/data-room-doc.d.ts.map +1 -0
- package/dist/components/chat/types/entities/github-activity.d.ts +29 -0
- package/dist/components/chat/types/entities/github-activity.d.ts.map +1 -0
- package/dist/components/chat/types/entities/hubspot-ticket.d.ts +39 -0
- package/dist/components/chat/types/entities/hubspot-ticket.d.ts.map +1 -0
- package/dist/components/chat/types/entities/index.d.ts +28 -0
- package/dist/components/chat/types/entities/index.d.ts.map +1 -0
- package/dist/components/chat/types/entities/investor-update.d.ts +83 -0
- package/dist/components/chat/types/entities/investor-update.d.ts.map +1 -0
- package/dist/components/chat/types/entities/onboarding-guide.d.ts +79 -0
- package/dist/components/chat/types/entities/onboarding-guide.d.ts.map +1 -0
- package/dist/components/chat/types/entities/program-types.d.ts +303 -0
- package/dist/components/chat/types/entities/program-types.d.ts.map +1 -0
- package/dist/components/chat/types/entities/roadmap-item.d.ts +41 -0
- package/dist/components/chat/types/entities/roadmap-item.d.ts.map +1 -0
- package/dist/components/chat/types/entities/slack-message.d.ts +28 -0
- package/dist/components/chat/types/entities/slack-message.d.ts.map +1 -0
- package/dist/components/chat/types/index.d.ts +1 -0
- package/dist/components/chat/types/index.d.ts.map +1 -1
- package/dist/components/chat/utils/agent-status-message.d.ts +18 -0
- package/dist/components/chat/utils/agent-status-message.d.ts.map +1 -0
- package/dist/components/chat/utils/auto-continuation-directive.d.ts +38 -0
- package/dist/components/chat/utils/auto-continuation-directive.d.ts.map +1 -0
- package/dist/components/chat/utils/chat-attachment-markdown.d.ts +114 -0
- package/dist/components/chat/utils/chat-attachment-markdown.d.ts.map +1 -0
- package/dist/components/chat/utils/chat-authed-fetch.d.ts +13 -0
- package/dist/components/chat/utils/chat-authed-fetch.d.ts.map +1 -0
- package/dist/components/chat/utils/chat-nav-resolution.d.ts +72 -0
- package/dist/components/chat/utils/chat-nav-resolution.d.ts.map +1 -0
- package/dist/components/chat/utils/chat-proxy-auth-storage.d.ts +43 -0
- package/dist/components/chat/utils/chat-proxy-auth-storage.d.ts.map +1 -0
- package/dist/components/chat/utils/chip-action-class.d.ts +16 -0
- package/dist/components/chat/utils/chip-action-class.d.ts.map +1 -0
- package/dist/components/chat/utils/chip-styles.d.ts +32 -0
- package/dist/components/chat/utils/chip-styles.d.ts.map +1 -0
- package/dist/components/chat/utils/clickup-task-type-utils.d.ts +38 -0
- package/dist/components/chat/utils/clickup-task-type-utils.d.ts.map +1 -0
- package/dist/components/chat/utils/compact-card-classes.d.ts +50 -0
- package/dist/components/chat/utils/compact-card-classes.d.ts.map +1 -0
- package/dist/components/chat/utils/decide-new-tab.d.ts +39 -0
- package/dist/components/chat/utils/decide-new-tab.d.ts.map +1 -0
- package/dist/components/chat/utils/external-app-urls.d.ts +14 -0
- package/dist/components/chat/utils/external-app-urls.d.ts.map +1 -0
- package/dist/components/chat/utils/flatten-assistant-content.d.ts +25 -0
- package/dist/components/chat/utils/flatten-assistant-content.d.ts.map +1 -0
- package/dist/components/chat/utils/icon-registry.d.ts +67 -0
- package/dist/components/chat/utils/icon-registry.d.ts.map +1 -0
- package/dist/components/chat/utils/index.d.ts +21 -0
- package/dist/components/chat/utils/index.d.ts.map +1 -1
- package/dist/components/chat/utils/is-cross-origin-url.d.ts +22 -0
- package/dist/components/chat/utils/is-cross-origin-url.d.ts.map +1 -0
- package/dist/components/chat/utils/nav-anchor-props.d.ts +54 -0
- package/dist/components/chat/utils/nav-anchor-props.d.ts.map +1 -0
- package/dist/components/chat/utils/nav-click-handler.d.ts +51 -0
- package/dist/components/chat/utils/nav-click-handler.d.ts.map +1 -0
- package/dist/components/chat/utils/scroll-anchor.d.ts +30 -0
- package/dist/components/chat/utils/scroll-anchor.d.ts.map +1 -0
- package/dist/components/chat/utils/slash-dispatch-utils.d.ts +109 -0
- package/dist/components/chat/utils/slash-dispatch-utils.d.ts.map +1 -0
- package/dist/components/chat/utils/source-icons.d.ts +8 -0
- package/dist/components/chat/utils/source-icons.d.ts.map +1 -0
- package/dist/components/chat/utils/source-row-cta.d.ts +111 -0
- package/dist/components/chat/utils/source-row-cta.d.ts.map +1 -0
- package/dist/components/features/figma-prototype-viewer.d.ts.map +1 -1
- package/dist/components/features/index.cjs +12 -6
- package/dist/components/features/index.cjs.map +1 -1
- package/dist/components/features/index.js +11 -5
- package/dist/components/features/video.d.ts.map +1 -1
- package/dist/components/icons/index.cjs +3 -3
- package/dist/components/icons/index.js +2 -2
- package/dist/components/index.cjs +274 -8
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +273 -7
- package/dist/components/interactive-wrapper.d.ts +3 -3
- package/dist/components/navigation/index.cjs +12 -6
- package/dist/components/navigation/index.cjs.map +1 -1
- package/dist/components/navigation/index.js +11 -5
- package/dist/components/resizable.d.ts +1 -1
- package/dist/components/shared/product-release/product-release-card-skeleton.d.ts +1 -1
- package/dist/components/shared/product-release/product-release-card-skeleton.d.ts.map +1 -1
- package/dist/components/shared/product-release/product-release-card.d.ts +19 -12
- package/dist/components/shared/product-release/product-release-card.d.ts.map +1 -1
- package/dist/components/shared/product-release/release-detail-page.d.ts +2 -4
- package/dist/components/shared/product-release/release-detail-page.d.ts.map +1 -1
- package/dist/components/ui/button/button.d.ts +13 -0
- package/dist/components/ui/button/button.d.ts.map +1 -1
- package/dist/components/ui/dashboard-info-card.d.ts.map +1 -1
- package/dist/components/ui/entity-image.d.ts.map +1 -1
- package/dist/components/ui/file-manager/index.cjs +71 -70
- package/dist/components/ui/file-manager/index.cjs.map +1 -1
- package/dist/components/ui/file-manager/index.js +6 -5
- package/dist/components/ui/file-manager/index.js.map +1 -1
- package/dist/components/ui/hover-dropdown.d.ts +66 -0
- package/dist/components/ui/hover-dropdown.d.ts.map +1 -0
- package/dist/components/ui/index.cjs +276 -6
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +278 -8
- package/dist/components/ui/simple-markdown-renderer.d.ts.map +1 -1
- package/dist/components/ui/square-avatar.d.ts.map +1 -1
- package/dist/contexts/chat-runtime-context.d.ts +109 -0
- package/dist/contexts/chat-runtime-context.d.ts.map +1 -0
- package/dist/contexts/endpoints-runtime-context.d.ts +28 -0
- package/dist/contexts/endpoints-runtime-context.d.ts.map +1 -0
- package/dist/contexts/index.cjs +30 -0
- package/dist/contexts/index.cjs.map +1 -0
- package/dist/contexts/index.d.ts +26 -0
- package/dist/contexts/index.d.ts.map +1 -0
- package/dist/contexts/index.js +30 -0
- package/dist/contexts/index.js.map +1 -0
- package/dist/contexts/use-outer-or-default.d.ts +29 -0
- package/dist/contexts/use-outer-or-default.d.ts.map +1 -0
- package/dist/embed-shims/index.cjs +51 -0
- package/dist/embed-shims/index.cjs.map +1 -0
- package/dist/embed-shims/index.d.ts +31 -0
- package/dist/embed-shims/index.d.ts.map +1 -0
- package/dist/embed-shims/index.js +51 -0
- package/dist/embed-shims/index.js.map +1 -0
- package/dist/embed-shims/next-dynamic.cjs +12 -0
- package/dist/embed-shims/next-dynamic.cjs.map +1 -0
- package/dist/embed-shims/next-dynamic.d.ts +47 -0
- package/dist/embed-shims/next-dynamic.d.ts.map +1 -0
- package/dist/embed-shims/next-dynamic.js +12 -0
- package/dist/embed-shims/next-dynamic.js.map +1 -0
- package/dist/embed-shims/next-image.cjs +12 -0
- package/dist/embed-shims/next-image.cjs.map +1 -0
- package/dist/embed-shims/next-image.d.ts +28 -0
- package/dist/embed-shims/next-image.d.ts.map +1 -0
- package/dist/embed-shims/next-image.js +12 -0
- package/dist/embed-shims/next-image.js.map +1 -0
- package/dist/embed-shims/next-link.cjs +14 -0
- package/dist/embed-shims/next-link.cjs.map +1 -0
- package/dist/embed-shims/next-link.d.ts +22 -0
- package/dist/embed-shims/next-link.d.ts.map +1 -0
- package/dist/embed-shims/next-link.js +14 -0
- package/dist/embed-shims/next-link.js.map +1 -0
- package/dist/embed-shims/next-navigation.cjs +30 -0
- package/dist/embed-shims/next-navigation.cjs.map +1 -0
- package/dist/embed-shims/next-navigation.d.ts +46 -0
- package/dist/embed-shims/next-navigation.d.ts.map +1 -0
- package/dist/embed-shims/next-navigation.js +30 -0
- package/dist/embed-shims/next-navigation.js.map +1 -0
- package/dist/hooks/index.cjs +10 -4
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +9 -3
- package/dist/hooks/use-access-code-integration.d.ts +48 -0
- package/dist/hooks/use-access-code-integration.d.ts.map +1 -0
- package/dist/hooks/use-contact-submission.d.ts.map +1 -1
- package/dist/hooks/use-og-placeholder.d.ts +31 -0
- package/dist/hooks/use-og-placeholder.d.ts.map +1 -0
- package/dist/hooks/use-toast.d.ts +1 -1
- package/dist/index.cjs +367 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +378 -18
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/access-code-client.d.ts +21 -37
- package/dist/utils/access-code-client.d.ts.map +1 -1
- package/dist/utils/cn.d.ts +0 -27
- package/dist/utils/cn.d.ts.map +1 -1
- package/dist/utils/color-analysis.d.ts +33 -0
- package/dist/utils/color-analysis.d.ts.map +1 -0
- package/dist/utils/date-formatters.d.ts +16 -5
- package/dist/utils/date-formatters.d.ts.map +1 -1
- package/dist/utils/fetch-priority.d.ts +3 -0
- package/dist/utils/fetch-priority.d.ts.map +1 -0
- package/dist/utils/format.d.ts +192 -1
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/image-proxy.d.ts +67 -2
- package/dist/utils/image-proxy.d.ts.map +1 -1
- package/dist/utils/index.cjs +1274 -155
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +19 -3
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1200 -157
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/local-storage-adapter.d.ts +46 -0
- package/dist/utils/local-storage-adapter.d.ts.map +1 -0
- package/dist/utils/source-icons.d.ts +78 -0
- package/dist/utils/source-icons.d.ts.map +1 -0
- package/package.json +29 -2
- package/src/components/announcement-bar.tsx +26 -4
- package/src/components/categories-cart.tsx +1 -1
- package/src/components/chat/chat-attachment-bar.tsx +323 -0
- package/src/components/chat/chat-container.tsx +39 -5
- package/src/components/chat/chat-input.tsx +7 -1
- package/src/components/chat/chat-message-enhanced.tsx +32 -22
- package/src/components/chat/chat-message-list.tsx +53 -4
- package/src/components/chat/chat-panel-context.tsx +37 -0
- package/src/components/chat/chat-ticket-list.tsx +1 -1
- package/src/components/chat/embeddable-chat.tsx +1106 -0
- package/src/components/chat/entity-cards/admin-content-card.tsx +155 -0
- package/src/components/chat/entity-cards/blog-card.tsx +259 -0
- package/src/components/chat/entity-cards/blog-image-placeholder.tsx +52 -0
- package/src/components/chat/entity-cards/campaign-card-admin.tsx +113 -0
- package/src/components/chat/entity-cards/case-study-card.tsx +192 -0
- package/src/components/chat/{chat-ticket-item.tsx → entity-cards/chat-ticket-item.tsx} +2 -2
- package/src/components/chat/{chat-video-entity-card.tsx → entity-cards/chat-video-entity-card.tsx} +2 -2
- package/src/components/chat/entity-cards/customer-interview-card.tsx +211 -0
- package/src/components/chat/entity-cards/data-room-doc-card.tsx +120 -0
- package/src/components/chat/entity-cards/dispatch.tsx +1093 -0
- package/src/components/chat/entity-cards/entity-author-card.tsx +193 -0
- package/src/components/chat/entity-cards/generic-entity-card.tsx +144 -0
- package/src/components/chat/entity-cards/github-activity-card.tsx +305 -0
- package/src/components/chat/entity-cards/hubspot-ticket-card.tsx +205 -0
- package/src/components/chat/entity-cards/index.ts +125 -0
- package/src/components/chat/entity-cards/investor-update-card.tsx +150 -0
- package/src/components/chat/entity-cards/onboarding-guide-card.tsx +326 -0
- package/src/components/chat/entity-cards/product-release-card-defaults.ts +57 -0
- package/src/components/chat/entity-cards/product-release-card.tsx +19 -0
- package/src/components/chat/entity-cards/program-card-defaults.ts +62 -0
- package/src/components/chat/entity-cards/program-card.tsx +451 -0
- package/src/components/chat/entity-cards/roadmap-card.tsx +356 -0
- package/src/components/chat/entity-cards/roadmap-vote-button.tsx +54 -0
- package/src/components/chat/entity-cards/slack-message-card.tsx +182 -0
- package/src/components/chat/entity-cards/task-type-icon.tsx +60 -0
- package/src/components/chat/hooks/index.ts +22 -0
- package/src/components/chat/hooks/use-chat-attachment-image-gallery.tsx +114 -0
- package/src/components/chat/hooks/use-chat-attachments.ts +429 -0
- package/src/components/chat/hooks/use-chat-card-item.ts +102 -0
- package/src/components/chat/hooks/use-chat-identity.ts +139 -0
- package/src/components/chat/hooks/use-chat.ts +501 -0
- package/src/components/chat/hooks/use-close-on-navigation.ts +87 -0
- package/src/components/chat/hooks/use-embedded-chat.ts +1023 -0
- package/src/components/chat/hooks/use-proxied-image-url.ts +31 -0
- package/src/components/chat/hooks/use-slash-commands.ts +106 -0
- package/src/components/chat/hooks/use-sse.ts +143 -0
- package/src/components/chat/index.ts +30 -4
- package/src/components/chat/nav-link-anchor-via-runtime.tsx +72 -0
- package/src/components/chat/source-action-button.tsx +120 -0
- package/src/components/chat/types/chat.types.ts +61 -0
- package/src/components/chat/types/component.types.ts +57 -11
- package/src/components/chat/types/entities/blog.ts +27 -0
- package/src/components/chat/types/entities/case-study.ts +14 -0
- package/src/components/chat/types/entities/content-ref.ts +23 -0
- package/src/components/chat/types/entities/customer-interview.ts +15 -0
- package/src/components/chat/types/entities/data-room-doc.ts +37 -0
- package/src/components/chat/types/entities/github-activity.ts +36 -0
- package/src/components/chat/types/entities/hubspot-ticket.ts +39 -0
- package/src/components/chat/types/entities/index.ts +28 -0
- package/src/components/chat/types/entities/investor-update.ts +100 -0
- package/src/components/chat/types/entities/onboarding-guide.ts +101 -0
- package/src/components/chat/types/entities/program-types.ts +433 -0
- package/src/components/chat/types/entities/roadmap-item.ts +42 -0
- package/src/components/chat/types/entities/slack-message.ts +28 -0
- package/src/components/chat/types/index.ts +1 -0
- package/src/components/chat/utils/agent-status-message.ts +52 -0
- package/src/components/chat/utils/auto-continuation-directive.ts +70 -0
- package/src/components/chat/utils/chat-attachment-markdown.ts +190 -0
- package/src/components/chat/utils/chat-authed-fetch.ts +73 -0
- package/src/components/chat/utils/chat-nav-resolution.ts +151 -0
- package/src/components/chat/utils/chat-proxy-auth-storage.ts +148 -0
- package/src/components/chat/utils/chip-action-class.ts +19 -0
- package/src/components/chat/utils/chip-styles.ts +51 -0
- package/src/components/chat/utils/clickup-task-type-utils.ts +59 -0
- package/src/components/chat/utils/compact-card-classes.ts +97 -0
- package/src/components/chat/utils/decide-new-tab.ts +57 -0
- package/src/components/chat/utils/external-app-urls.ts +19 -0
- package/src/components/chat/utils/flatten-assistant-content.ts +35 -0
- package/src/components/chat/utils/icon-registry.ts +297 -0
- package/src/components/chat/utils/index.ts +133 -0
- package/src/components/chat/utils/is-cross-origin-url.ts +28 -0
- package/src/components/chat/utils/nav-anchor-props.ts +78 -0
- package/src/components/chat/utils/nav-click-handler.ts +81 -0
- package/src/components/chat/utils/scroll-anchor.ts +35 -0
- package/src/components/chat/utils/slash-dispatch-utils.ts +183 -0
- package/src/components/chat/utils/source-icons.ts +14 -0
- package/src/components/chat/utils/source-row-cta.ts +215 -0
- package/src/components/empty-state.tsx +1 -1
- package/src/components/features/board/ticket-card.tsx +1 -1
- package/src/components/features/figma-prototype-viewer.tsx +2 -1
- package/src/components/features/media-gallery-manager.tsx +1 -1
- package/src/components/features/parallax-image-showcase.tsx +1 -1
- package/src/components/features/release-media-manager.tsx +1 -1
- package/src/components/features/seo-editor-preview.tsx +1 -1
- package/src/components/features/video.tsx +54 -3
- package/src/components/footer-waitlist-button.tsx +1 -1
- package/src/components/navigation/header.tsx +1 -1
- package/src/components/shared/onboarding/onboarding-step-card.tsx +1 -1
- package/src/components/shared/product-release/product-release-card-skeleton.tsx +8 -44
- package/src/components/shared/product-release/product-release-card.tsx +31 -116
- package/src/components/shared/product-release/release-detail-page.tsx +12 -16
- package/src/components/ui/actions-menu.tsx +1 -1
- package/src/components/ui/button/button.tsx +41 -11
- package/src/components/ui/button/split-button.tsx +1 -1
- package/src/components/ui/dashboard-info-card.tsx +2 -3
- package/src/components/ui/data-table/data-table-row.tsx +1 -1
- package/src/components/ui/entity-image.tsx +2 -8
- package/src/components/ui/hover-dropdown.tsx +258 -0
- package/src/components/ui/image-gallery-modal.tsx +1 -1
- package/src/components/ui/index.ts +1 -0
- package/src/components/ui/markdown-editor.tsx +1 -1
- package/src/components/ui/more-actions-menu.tsx +1 -1
- package/src/components/ui/organization-card.tsx +1 -1
- package/src/components/ui/simple-markdown-renderer.tsx +53 -5
- package/src/components/ui/square-avatar.tsx +3 -12
- package/src/components/ui/tab-navigation.tsx +1 -1
- package/src/components/ui/table/table-row.tsx +1 -1
- package/src/components/unified-filter-logic.tsx +1 -1
- package/src/components/unified-pagination.tsx +1 -1
- package/src/components/user-summary-stub.tsx +1 -1
- package/src/components/vendor-display-button.tsx +1 -1
- package/src/components/vendor-icon.tsx +1 -1
- package/src/contexts/chat-runtime-context.tsx +163 -0
- package/src/contexts/endpoints-runtime-context.tsx +68 -0
- package/src/contexts/index.ts +38 -0
- package/src/contexts/use-outer-or-default.ts +42 -0
- package/src/embed-shims/index.ts +42 -0
- package/src/embed-shims/next-dynamic.tsx +70 -0
- package/src/embed-shims/next-image.tsx +114 -0
- package/src/embed-shims/next-link.tsx +91 -0
- package/src/embed-shims/next-navigation.tsx +201 -0
- package/src/hooks/index.ts +9 -0
- package/src/hooks/state/use-api-params.ts +1 -1
- package/src/hooks/state/use-query-params.ts +1 -1
- package/src/hooks/use-access-code-integration.ts +107 -0
- package/src/hooks/use-contact-submission.ts +7 -3
- package/src/hooks/use-og-placeholder.ts +45 -0
- package/src/stories/OnboardingStepCard.stories.tsx +140 -0
- package/src/styles/chat-animations.css +65 -0
- package/src/styles/index.css +1 -0
- package/src/utils/access-code-client.ts +32 -75
- package/src/utils/cn.ts +0 -65
- package/src/utils/color-analysis.ts +205 -0
- package/src/utils/date-formatters.ts +54 -11
- package/src/utils/fetch-priority.ts +41 -0
- package/src/utils/format.ts +525 -1
- package/src/utils/image-proxy.ts +127 -7
- package/src/utils/index.ts +145 -5
- package/src/utils/local-storage-adapter.ts +105 -0
- package/src/utils/source-icons.ts +219 -0
- package/dist/chunk-25LVV26X.cjs.map +0 -1
- package/dist/chunk-ARQ4XP64.cjs.map +0 -1
- package/dist/chunk-CPXLQ57U.js.map +0 -1
- package/dist/chunk-LY34ORX6.js.map +0 -1
- package/dist/chunk-RMB5DVED.cjs.map +0 -1
- package/dist/chunk-SZPJ5R5B.js.map +0 -1
- package/dist/chunk-UC43NICZ.cjs.map +0 -1
- package/dist/chunk-XGL5FKIK.js.map +0 -1
- package/dist/components/chat/block-card.d.ts.map +0 -1
- package/dist/components/chat/chat-ticket-item.d.ts.map +0 -1
- package/dist/components/chat/chat-video-entity-card.d.ts.map +0 -1
- package/dist/utils/dynamic-icons.d.ts +0 -26
- package/dist/utils/dynamic-icons.d.ts.map +0 -1
- package/dist/utils/format-relative-time.d.ts +0 -21
- package/dist/utils/format-relative-time.d.ts.map +0 -1
- package/src/utils/.dynamic-icons.md +0 -30
- package/src/utils/.format-relative-time.md +0 -36
- package/src/utils/dynamic-icons.tsx +0 -120
- package/src/utils/format-relative-time.ts +0 -52
- /package/dist/{chunk-N57KWHDB.js.map → chunk-CIPO6DXK.js.map} +0 -0
- /package/dist/components/chat/{block-card.d.ts → entity-cards/block-card.d.ts} +0 -0
- /package/dist/components/chat/{chat-ticket-item.d.ts → entity-cards/chat-ticket-item.d.ts} +0 -0
- /package/src/components/chat/{block-card.tsx → entity-cards/block-card.tsx} +0 -0
|
@@ -2,11 +2,26 @@
|
|
|
2
2
|
* Component prop types
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import type { ComponentType, HTMLAttributes, TextareaHTMLAttributes } from 'react'
|
|
5
|
+
import type { ComponentType, HTMLAttributes, ReactNode, TextareaHTMLAttributes } from 'react'
|
|
6
6
|
import type { AssistantType, AuthorType, ChatApprovalStatus, ConnectionStatus } from './chat.types'
|
|
7
7
|
import type { ApprovalRequestData, Message, MessageSegment, ToolExecutionData } from './message.types'
|
|
8
8
|
import type { ChatRef } from '../chat-ref.types'
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Anchor component supplied by the host (or the lib's
|
|
12
|
+
* `NavLinkAnchorViaRuntime`) for markdown links. Receives at minimum
|
|
13
|
+
* `href` / `className` / `children` — what react-markdown's anchor
|
|
14
|
+
* passes. The lib's call site spreads its `rest` via `any`, so
|
|
15
|
+
* implementations are free to declare additional optional routing
|
|
16
|
+
* props (e.g. `path`, `targetPlatform`) without TS forcing the host's
|
|
17
|
+
* NavLinkAnchor prop type to know about them.
|
|
18
|
+
*/
|
|
19
|
+
export type NavLinkAnchorComponent = ComponentType<{
|
|
20
|
+
href: string
|
|
21
|
+
className?: string
|
|
22
|
+
children?: ReactNode
|
|
23
|
+
}>
|
|
24
|
+
|
|
10
25
|
// ========== Chat Container Props ==========
|
|
11
26
|
|
|
12
27
|
export interface ChatContainerProps extends HTMLAttributes<HTMLDivElement> {
|
|
@@ -35,6 +50,18 @@ export interface ChatHeaderProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
35
50
|
serverUrl?: string | null
|
|
36
51
|
headerActions?: React.ReactNode
|
|
37
52
|
ticketInfo?: ChatHeaderTicketInfo
|
|
53
|
+
/**
|
|
54
|
+
* Drop the default `max-w-ods-content-narrow` (= 600px) constraint so
|
|
55
|
+
* the header fills the entire parent width. Use for chat dialogs
|
|
56
|
+
* embedded in narrow side panels (e.g. the multi-platform-hub
|
|
57
|
+
* `<GlobalAskAI>` panel) where the 600px column would float in the
|
|
58
|
+
* middle of a 720px panel and look misaligned vs the full-width
|
|
59
|
+
* input + content area.
|
|
60
|
+
*
|
|
61
|
+
* Default `false` — preserves the existing centered-narrow layout
|
|
62
|
+
* for legacy consumers.
|
|
63
|
+
*/
|
|
64
|
+
fullWidth?: boolean
|
|
38
65
|
}
|
|
39
66
|
|
|
40
67
|
// ========== Connection Indicator Props ==========
|
|
@@ -94,12 +121,13 @@ export interface ChatMessageEnhancedProps extends Omit<HTMLAttributes<HTMLDivEle
|
|
|
94
121
|
*
|
|
95
122
|
* `card://` markers are still intercepted by the override BEFORE this
|
|
96
123
|
* component runs, so the host need not handle them.
|
|
124
|
+
*
|
|
125
|
+
* Implementations MAY declare additional optional props (e.g.
|
|
126
|
+
* `path`, `targetPlatform` on `NavLinkAnchorViaRuntime`) — react-markdown
|
|
127
|
+
* passes its anchor `rest` props via spread, so undeclared extras
|
|
128
|
+
* simply default to undefined on the receiver.
|
|
97
129
|
*/
|
|
98
|
-
NavLinkAnchor?:
|
|
99
|
-
href: string
|
|
100
|
-
className?: string
|
|
101
|
-
children?: React.ReactNode
|
|
102
|
-
} & Record<string, unknown>>
|
|
130
|
+
NavLinkAnchor?: NavLinkAnchorComponent
|
|
103
131
|
}
|
|
104
132
|
|
|
105
133
|
// ========== Chat Message List Props ==========
|
|
@@ -113,6 +141,15 @@ export interface ChatMessageListProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
113
141
|
smoothScroll?: boolean
|
|
114
142
|
autoScroll?: boolean
|
|
115
143
|
showAvatars?: boolean
|
|
144
|
+
/** Same `fullWidth` semantics as `ChatHeaderProps.fullWidth` — drops
|
|
145
|
+
* the inner content wrapper's `max-w-ods-content-narrow` so messages
|
|
146
|
+
* fill the entire scroller width. Preferred over `contentClassName=
|
|
147
|
+
* "!max-w-none"` for new consumers (clearer intent, no
|
|
148
|
+
* `!important` specificity wrestling). */
|
|
149
|
+
fullWidth?: boolean
|
|
150
|
+
/** @deprecated Prefer `fullWidth` for the full-panel-width use case.
|
|
151
|
+
* This prop remains supported for callers that need a NON-binary
|
|
152
|
+
* override (custom max-w value, etc.). */
|
|
116
153
|
contentClassName?: string
|
|
117
154
|
assistantType?: AssistantType
|
|
118
155
|
assistantIcon?: React.ReactNode
|
|
@@ -129,11 +166,7 @@ export interface ChatMessageListProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
129
166
|
/** Host-provided anchor for markdown links. Forwarded verbatim to every
|
|
130
167
|
* message's ChatMessageEnhanced. Owns the unified click rule
|
|
131
168
|
* (same-origin soft nav, cross-origin new tab). */
|
|
132
|
-
NavLinkAnchor?:
|
|
133
|
-
href: string
|
|
134
|
-
className?: string
|
|
135
|
-
children?: React.ReactNode
|
|
136
|
-
} & Record<string, unknown>>
|
|
169
|
+
NavLinkAnchor?: NavLinkAnchorComponent
|
|
137
170
|
}
|
|
138
171
|
|
|
139
172
|
export interface ChatMessageListRef {
|
|
@@ -194,6 +227,15 @@ export interface SlashCommandSummary {
|
|
|
194
227
|
* ≥1 action). Single source of truth — same array drives the
|
|
195
228
|
* empty-state chip on the host side via the synchronous registry. */
|
|
196
229
|
actions: SlashCommandSummaryAction[]
|
|
230
|
+
/** Icon-registry key — drives both the empty-state chip glyph AND the
|
|
231
|
+
* autocomplete dropdown row glyph. Optional; falls back to the
|
|
232
|
+
* `primarySourceId`-based resolution when missing. */
|
|
233
|
+
iconName?: string
|
|
234
|
+
/** Admin-UI bucket id. */
|
|
235
|
+
category?: string
|
|
236
|
+
/** Empty-state chip-grid sort key. Undefined = NOT a chip (utility /
|
|
237
|
+
* thematic command — autocomplete dropdown only). Lower = earlier. */
|
|
238
|
+
displayOrder?: number
|
|
197
239
|
}
|
|
198
240
|
|
|
199
241
|
/** Icon + label pair returned by the consumer's `resolveSourceIcon`. The
|
|
@@ -237,6 +279,10 @@ export interface ChatInputProps extends Omit<TextareaHTMLAttributes<HTMLTextArea
|
|
|
237
279
|
onStop?: () => void | Promise<void>
|
|
238
280
|
sending?: boolean
|
|
239
281
|
awaitingResponse?: boolean
|
|
282
|
+
/** Same `fullWidth` semantics as `ChatHeaderProps.fullWidth` — drops
|
|
283
|
+
* the default `max-w-ods-content-narrow` so the input fills the
|
|
284
|
+
* parent. */
|
|
285
|
+
fullWidth?: boolean
|
|
240
286
|
/**
|
|
241
287
|
* @deprecated The avatar-offset layout was removed; this prop is accepted
|
|
242
288
|
* for back-compat but silently ignored. Safe to drop from call sites.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Blog entity types — chat card consumer barrel.
|
|
3
|
+
*
|
|
4
|
+
* The canonical Blog shapes already live in `src/types/blog.ts` (lib).
|
|
5
|
+
* Audit found NO competing definition in the hub — clients have always
|
|
6
|
+
* relied on this lib shape. This module re-exports the chat-card-relevant
|
|
7
|
+
* surface so the entities barrel has a single import path.
|
|
8
|
+
*
|
|
9
|
+
* Cards consume `BlogPost` (full row) or `BlogPostSummary` (the catalog
|
|
10
|
+
* projection). Tags / categories / author / pagination shapes are
|
|
11
|
+
* re-exported for completeness.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export type {
|
|
15
|
+
BlogPost,
|
|
16
|
+
BlogPostSummary,
|
|
17
|
+
BlogPostPlatform,
|
|
18
|
+
BlogPostCategory,
|
|
19
|
+
BlogPostTag,
|
|
20
|
+
BlogCategory,
|
|
21
|
+
BlogTag,
|
|
22
|
+
BlogAuthor,
|
|
23
|
+
BlogMediaAsset,
|
|
24
|
+
BlogStatus,
|
|
25
|
+
BlogPagination,
|
|
26
|
+
BlogSearchParams,
|
|
27
|
+
} from '@/types/blog';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Case Study entity types — chat card consumer barrel.
|
|
3
|
+
*
|
|
4
|
+
* The canonical CaseStudy shape already lives in `src/types/case-study.ts`
|
|
5
|
+
* (lib). Audit found NO competing definition in the hub — clients have
|
|
6
|
+
* always relied on this lib shape. This module re-exports it for the
|
|
7
|
+
* chat entities barrel.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export type {
|
|
11
|
+
CaseStudy,
|
|
12
|
+
CaseStudyFilters,
|
|
13
|
+
CaseStudyListResponse,
|
|
14
|
+
} from '@/types/case-study';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ContentRef — the unified link/embed shape stored in JSONB columns
|
|
3
|
+
* across investor updates, performance baselines, and any other entity
|
|
4
|
+
* that surfaces "related content" rails.
|
|
5
|
+
*
|
|
6
|
+
* Lifted from `lib/data/investor-update-utils-shared.ts` in the hub
|
|
7
|
+
* (the server-side data utils in the same file stay hub-side; only the
|
|
8
|
+
* TYPE moves here).
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
export interface ContentRef {
|
|
12
|
+
type: string;
|
|
13
|
+
id: string;
|
|
14
|
+
slug: string;
|
|
15
|
+
url: string;
|
|
16
|
+
targetPlatform?: string | null;
|
|
17
|
+
title: string;
|
|
18
|
+
summary?: string;
|
|
19
|
+
image_url?: string;
|
|
20
|
+
image_bg_color?: string;
|
|
21
|
+
visibility: 'public' | 'internal';
|
|
22
|
+
display_order: number;
|
|
23
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Customer Interview entity types — chat card consumer barrel.
|
|
3
|
+
*
|
|
4
|
+
* The canonical CustomerInterview shape already lives in
|
|
5
|
+
* `src/types/customer-interview.ts` (lib). Audit found NO competing
|
|
6
|
+
* definition in the hub — clients have always relied on this lib shape.
|
|
7
|
+
* This module re-exports it for the chat entities barrel.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export type {
|
|
11
|
+
CustomerInterview,
|
|
12
|
+
CustomerInterviewConfig,
|
|
13
|
+
CustomerInterviewFilters,
|
|
14
|
+
CustomerInterviewListResponse,
|
|
15
|
+
} from '@/types/customer-interview';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Data Room Doc entity — wire shape for the chat data-room-doc card.
|
|
3
|
+
*
|
|
4
|
+
* Lifted from `components/shared/data-room/data-room-doc-card.tsx`.
|
|
5
|
+
* Covers both `data_room_documents` rows and `openframe-docs` markdown
|
|
6
|
+
* rows — the card differentiates via `sourceRepo` and routes the click
|
|
7
|
+
* via the shared `resolveSourceRowCTA` helper.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export interface DataRoomDocCardItem {
|
|
11
|
+
/** Data-room doc UUID (the `external_id` / `id` from data_room_documents) */
|
|
12
|
+
id: string;
|
|
13
|
+
/** Display title — the doc's `name` */
|
|
14
|
+
title: string;
|
|
15
|
+
/** Path within the data room — e.g. `legal/fundraising/seed/executed/vertex-vii-3.5m-safe` */
|
|
16
|
+
path?: string | null;
|
|
17
|
+
/** Optional content preview (up to ~200 chars) */
|
|
18
|
+
preview?: string | null;
|
|
19
|
+
/** Resolved URL (typically `/data-room/<path>`) — null when not resolvable */
|
|
20
|
+
url?: string | null;
|
|
21
|
+
/** RagTableConfig.id (e.g. `'openframe-docs'`, `'data-room-docs'`) — drives
|
|
22
|
+
* the badge label via `SOURCE_LABELS_BY_TABLE`. Falls back to "Data room"
|
|
23
|
+
* when missing. */
|
|
24
|
+
sourceRepo?: string | null;
|
|
25
|
+
/** Chat shell's base route (e.g. `/data-room`, `/knowledge-base`). Threaded
|
|
26
|
+
* from `renderChatInlineEntityCard` → `renderCompactEntityCard` →
|
|
27
|
+
* `DataRoomDocChatCard` so the shared `resolveSourceRowCTA` helper can
|
|
28
|
+
* compose the destination URL identically to the SourceChip path. */
|
|
29
|
+
baseRoute?: string;
|
|
30
|
+
/** Cross-platform target for the card click (e.g. `'flamingo'` to open the
|
|
31
|
+
* link on www.flamingo.cx). When set, the resolver composes an absolute
|
|
32
|
+
* cross-origin URL; the click handler routes through a plain `<a>` so the
|
|
33
|
+
* link opens in a new tab. Without this, product-hub clicks on
|
|
34
|
+
* `/knowledge-base/<path>` get redirected to `/` by the middleware
|
|
35
|
+
* because the route is not in the platform's `allowedRoutes`. */
|
|
36
|
+
chipBasePlatform?: string;
|
|
37
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub Activity entity types — wire shape for chat cards.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the canonical row consumed by `GitHubActivityCard`:
|
|
5
|
+
* - `commit` : commit on a repo (SHA, message)
|
|
6
|
+
* - `pull_request`: PR opened/updated
|
|
7
|
+
* - `pr_review` : review submitted on a PR (state badge drives color)
|
|
8
|
+
*
|
|
9
|
+
* Lifted from `components/shared/github/github-activity-card.tsx` so the
|
|
10
|
+
* type is canonical in lib — clients can build / pass / extend it without
|
|
11
|
+
* pulling in the card itself.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export type GitHubActivityKind = 'commit' | 'pull_request' | 'pr_review';
|
|
15
|
+
|
|
16
|
+
export type PrReviewState =
|
|
17
|
+
| 'APPROVED'
|
|
18
|
+
| 'CHANGES_REQUESTED'
|
|
19
|
+
| 'COMMENTED'
|
|
20
|
+
| 'DISMISSED'
|
|
21
|
+
| 'PENDING';
|
|
22
|
+
|
|
23
|
+
export interface GitHubActivityItem {
|
|
24
|
+
/** Commit SHA (full or short) / PR-# / review id */
|
|
25
|
+
id: string;
|
|
26
|
+
/** Commit message / PR title / review state */
|
|
27
|
+
title: string;
|
|
28
|
+
/** "owner/repo" — derived from the GitHub URL when not provided */
|
|
29
|
+
repo?: string;
|
|
30
|
+
/** ISO timestamp or millisecond epoch */
|
|
31
|
+
dateUpdated?: string | number | null;
|
|
32
|
+
/** GitHub URL — used as the link target */
|
|
33
|
+
url?: string | null;
|
|
34
|
+
/** Discriminator — defaults to 'commit' when not supplied */
|
|
35
|
+
kind?: GitHubActivityKind;
|
|
36
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HubSpot Ticket entity — wire shape for the chat hubspot-ticket card.
|
|
3
|
+
*
|
|
4
|
+
* Lifted from `components/shared/hubspot/hubspot-ticket-card.tsx`. The
|
|
5
|
+
* card consumes this shape across THREE variants — FULL (all fields,
|
|
6
|
+
* for admin/internal viewers), ANON (no customerCompany, no url), and
|
|
7
|
+
* SELF (the chat user's own tickets, no admin URL). The shape itself
|
|
8
|
+
* is the same; the indexer redacts the variant-restricted fields to
|
|
9
|
+
* null before sending the row to the client.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export interface HubspotTicketItem {
|
|
13
|
+
/** HubSpot ticket id (the `external_id` column on hubspot_tickets) */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Subject — ticket title */
|
|
16
|
+
title: string;
|
|
17
|
+
/** Body preview (sanitized via the mapper's `buildPreview`) */
|
|
18
|
+
preview?: string;
|
|
19
|
+
/** Canonical status (NEW | IN_PROGRESS | WAITING | CLOSED) — drives
|
|
20
|
+
* badge color + sort order. */
|
|
21
|
+
status?: string | null;
|
|
22
|
+
/** Human-readable HubSpot pipeline stage label (e.g. "Code review",
|
|
23
|
+
* "Closed"). Drives badge TEXT. Falls back to the formatted canonical
|
|
24
|
+
* `status` when null (rows synced before the column landed). */
|
|
25
|
+
statusLabel?: string | null;
|
|
26
|
+
/** Severity: LOW | MEDIUM | HIGH | URGENT */
|
|
27
|
+
priority?: string | null;
|
|
28
|
+
/** Customer company (FULL variant only — anon strips this) */
|
|
29
|
+
customerCompany?: string | null;
|
|
30
|
+
/** Customer email — usually the chat-creating user's address. Shown as
|
|
31
|
+
* a discrete row so customers can confirm who the ticket is for
|
|
32
|
+
* (especially relevant in proxy-auth surfaces where the chat user
|
|
33
|
+
* acts on behalf of another email). */
|
|
34
|
+
customerEmail?: string | null;
|
|
35
|
+
/** ISO timestamp or epoch */
|
|
36
|
+
dateUpdated?: string | number | null;
|
|
37
|
+
/** HubSpot UI URL (FULL variant only; null for anon + self) */
|
|
38
|
+
url?: string | null;
|
|
39
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chat entity row types — canonical wire shapes the chat cards consume.
|
|
3
|
+
*
|
|
4
|
+
* Each module here holds the type for one entity surface (commit/PR/review,
|
|
5
|
+
* slack message, hubspot ticket, data-room doc, roadmap item, investor
|
|
6
|
+
* update, onboarding guide, program items, blog, case study, customer
|
|
7
|
+
* interview). They moved here from the hub when the chat surface
|
|
8
|
+
* migrated into lib so the cards have a single, lib-owned source of
|
|
9
|
+
* truth — clients can compose the wire shape without importing hub-tree
|
|
10
|
+
* helpers.
|
|
11
|
+
*
|
|
12
|
+
* Hub-side server utilities that PRODUCE these shapes (DAL functions,
|
|
13
|
+
* RAG mappers, sync engines) stay in the hub — only the wire TYPE
|
|
14
|
+
* (+ pure formatters that operate on it) lives here.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export * from './blog';
|
|
18
|
+
export * from './case-study';
|
|
19
|
+
export * from './content-ref';
|
|
20
|
+
export * from './customer-interview';
|
|
21
|
+
export * from './data-room-doc';
|
|
22
|
+
export * from './github-activity';
|
|
23
|
+
export * from './hubspot-ticket';
|
|
24
|
+
export * from './investor-update';
|
|
25
|
+
export * from './onboarding-guide';
|
|
26
|
+
export * from './program-types';
|
|
27
|
+
export * from './roadmap-item';
|
|
28
|
+
export * from './slack-message';
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Investor Update entity — wire shape for the chat investor-update card
|
|
3
|
+
* + the `/api/investor-updates` reads.
|
|
4
|
+
*
|
|
5
|
+
* Lifted from `lib/data/investor-update-utils-shared.ts` in the hub.
|
|
6
|
+
* The server-side data utils + visibility filters in that file stay
|
|
7
|
+
* hub-side; only the TYPES + the pure `formatInvestorUpdatePeriod`
|
|
8
|
+
* formatter move here.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type { ContentRef } from './content-ref';
|
|
12
|
+
|
|
13
|
+
export interface MetricEntry {
|
|
14
|
+
current: number;
|
|
15
|
+
previous?: number;
|
|
16
|
+
change_pct?: number;
|
|
17
|
+
visibility: 'public' | 'internal';
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface HighlightEntry {
|
|
21
|
+
title: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
visibility: 'public' | 'internal';
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface InvestorUpdateHighlights {
|
|
27
|
+
key_highlights?: HighlightEntry[];
|
|
28
|
+
product_milestones?: HighlightEntry[];
|
|
29
|
+
community_updates?: HighlightEntry[];
|
|
30
|
+
upcoming_priorities?: HighlightEntry[];
|
|
31
|
+
financial_notes?: HighlightEntry[];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface InvestorUpdate {
|
|
35
|
+
id: string;
|
|
36
|
+
title: string;
|
|
37
|
+
slug: string;
|
|
38
|
+
update_number: number | null;
|
|
39
|
+
period_start: string | null;
|
|
40
|
+
period_end: string | null;
|
|
41
|
+
platform_id: string | null;
|
|
42
|
+
content: string | null;
|
|
43
|
+
video_summary: string | null;
|
|
44
|
+
transcript: string | null;
|
|
45
|
+
srt_content?: string | null;
|
|
46
|
+
main_video_url: string | null;
|
|
47
|
+
highlight_video_url: string | null;
|
|
48
|
+
highlight_video_thumbnail: string | null;
|
|
49
|
+
main_video_thumbnail: string | null;
|
|
50
|
+
video_bites: unknown[];
|
|
51
|
+
featured_image: string | null;
|
|
52
|
+
strategic_update: string | null;
|
|
53
|
+
financials: Record<string, MetricEntry>;
|
|
54
|
+
metrics_snapshot: Record<string, MetricEntry>;
|
|
55
|
+
content_refs: ContentRef[];
|
|
56
|
+
highlights: InvestorUpdateHighlights | null;
|
|
57
|
+
section_visibility: Record<string, 'public' | 'internal'>;
|
|
58
|
+
status: string;
|
|
59
|
+
published_at: string | null;
|
|
60
|
+
author_id: string | null;
|
|
61
|
+
author?: {
|
|
62
|
+
id: string;
|
|
63
|
+
full_name: string;
|
|
64
|
+
avatar_url: string | null;
|
|
65
|
+
job_title: string | null;
|
|
66
|
+
email?: string | null;
|
|
67
|
+
};
|
|
68
|
+
seo_title: string | null;
|
|
69
|
+
seo_description: string | null;
|
|
70
|
+
seo_keywords: string | null;
|
|
71
|
+
og_image_url: string | null;
|
|
72
|
+
hubspot_email_id: string | null;
|
|
73
|
+
hubspot_email_url?: string | null;
|
|
74
|
+
custom_instructions: string | null;
|
|
75
|
+
created_at: string;
|
|
76
|
+
updated_at: string;
|
|
77
|
+
created_by: string | null;
|
|
78
|
+
updated_by: string | null;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Format an investor-update period as `Mar 2025 - May 2025` (or `?` for
|
|
83
|
+
* a missing endpoint). Pure formatter — no DB / state access, so it
|
|
84
|
+
* moves to lib alongside the types.
|
|
85
|
+
*/
|
|
86
|
+
export function formatInvestorUpdatePeriod(
|
|
87
|
+
start: string | null,
|
|
88
|
+
end: string | null,
|
|
89
|
+
options?: { monthFormat?: 'short' | 'long' },
|
|
90
|
+
): string {
|
|
91
|
+
if (!start && !end) return '';
|
|
92
|
+
const fmt = (d: string) =>
|
|
93
|
+
new Date(d).toLocaleDateString('en-US', {
|
|
94
|
+
month: options?.monthFormat || 'short',
|
|
95
|
+
year: 'numeric',
|
|
96
|
+
});
|
|
97
|
+
const s = start ? fmt(start) : '?';
|
|
98
|
+
const e = end ? fmt(end) : '?';
|
|
99
|
+
return `${s} - ${e}`;
|
|
100
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onboarding Guide entity — wire shape for the chat onboarding-guide
|
|
3
|
+
* card + the `/api/onboarding-guides` reads.
|
|
4
|
+
*
|
|
5
|
+
* Lifted from `lib/data/onboarding-guide-utils.ts` in the hub. The
|
|
6
|
+
* server-side DAL (createOnboardingGuide / updateOnboardingGuide /
|
|
7
|
+
* resolvePublicPlatformScope / …) stays hub-side; only the row TYPE +
|
|
8
|
+
* the filter/response shapes move here.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
export interface OnboardingGuide {
|
|
12
|
+
id: string;
|
|
13
|
+
title: string;
|
|
14
|
+
slug: string;
|
|
15
|
+
|
|
16
|
+
// Structured ordering
|
|
17
|
+
section: string;
|
|
18
|
+
step_order: number;
|
|
19
|
+
section_order: number;
|
|
20
|
+
|
|
21
|
+
// Body
|
|
22
|
+
content: string | null;
|
|
23
|
+
video_summary: string | null;
|
|
24
|
+
transcript: string | null;
|
|
25
|
+
transcript_words_data: unknown | null;
|
|
26
|
+
srt_content: string | null;
|
|
27
|
+
ai_transcript_formatted: string | null;
|
|
28
|
+
|
|
29
|
+
// Video pipeline. `main_video_url` (Mux / MP4) and `youtube_url` are
|
|
30
|
+
// INDEPENDENT columns — same shape as `product_releases`. The detail
|
|
31
|
+
// page + RAG mapper read whichever is set; `<VideoSourceSelector>` in
|
|
32
|
+
// the admin form toggles between them.
|
|
33
|
+
main_video_url: string | null;
|
|
34
|
+
main_video_thumbnail: string | null;
|
|
35
|
+
youtube_url: string | null;
|
|
36
|
+
highlight_video_url: string | null;
|
|
37
|
+
highlight_video_thumbnail: string | null;
|
|
38
|
+
highlight_video_duration_ms: number | null;
|
|
39
|
+
highlight_video_source: string | null;
|
|
40
|
+
video_bites: unknown[];
|
|
41
|
+
|
|
42
|
+
// Images
|
|
43
|
+
featured_image: string | null;
|
|
44
|
+
og_image_url: string | null;
|
|
45
|
+
|
|
46
|
+
// SEO
|
|
47
|
+
seo_title: string | null;
|
|
48
|
+
seo_description: string | null;
|
|
49
|
+
seo_keywords: string | null;
|
|
50
|
+
|
|
51
|
+
// Workflow
|
|
52
|
+
status: string;
|
|
53
|
+
published_at: string | null;
|
|
54
|
+
author_id: string | null;
|
|
55
|
+
author?: {
|
|
56
|
+
id: string;
|
|
57
|
+
full_name: string;
|
|
58
|
+
avatar_url: string | null;
|
|
59
|
+
job_title: string | null;
|
|
60
|
+
email?: string | null;
|
|
61
|
+
};
|
|
62
|
+
custom_instructions: string | null;
|
|
63
|
+
config: Record<string, unknown> | null;
|
|
64
|
+
ai_effort_score: number | null;
|
|
65
|
+
|
|
66
|
+
// Junction (multi-platform)
|
|
67
|
+
onboarding_guide_platforms?: Array<{
|
|
68
|
+
platform_id: string;
|
|
69
|
+
is_featured: boolean;
|
|
70
|
+
featured_order: number | null;
|
|
71
|
+
name?: string;
|
|
72
|
+
display_name?: string;
|
|
73
|
+
}>;
|
|
74
|
+
|
|
75
|
+
// Audit
|
|
76
|
+
created_at: string;
|
|
77
|
+
updated_at: string;
|
|
78
|
+
created_by: string | null;
|
|
79
|
+
updated_by: string | null;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export interface OnboardingGuideFilters {
|
|
83
|
+
status?: string;
|
|
84
|
+
search?: string;
|
|
85
|
+
section?: string;
|
|
86
|
+
platform?: string;
|
|
87
|
+
limit?: number;
|
|
88
|
+
offset?: number;
|
|
89
|
+
ids?: string[];
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export interface OnboardingGuideListResponse {
|
|
93
|
+
data: OnboardingGuide[];
|
|
94
|
+
count: number;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export interface OnboardingGuideSectionSummary {
|
|
98
|
+
section: string;
|
|
99
|
+
section_order: number;
|
|
100
|
+
count: number;
|
|
101
|
+
}
|