@flamingo-stack/openframe-frontend-core 0.0.213 → 0.0.214
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-3JWIJJ44.js → chunk-5OWDOFKK.js} +2 -2
- package/dist/{chunk-IK2X5YJU.js → chunk-HWY35EAK.js} +2 -2
- package/dist/{chunk-OTKJASSX.cjs → chunk-IZL2KEH6.cjs} +24 -24
- package/dist/{chunk-OTKJASSX.cjs.map → chunk-IZL2KEH6.cjs.map} +1 -1
- package/dist/{chunk-35XIT2CF.cjs → chunk-KDNGUYZM.cjs} +17 -17
- package/dist/{chunk-35XIT2CF.cjs.map → chunk-KDNGUYZM.cjs.map} +1 -1
- package/dist/{chunk-ZTJVRSN5.js → chunk-UKND27XC.js} +2 -2
- package/dist/chunk-UKND27XC.js.map +1 -0
- package/dist/{chunk-ZDF6F7ED.cjs → chunk-YZUUFTIK.cjs} +2 -2
- package/dist/chunk-YZUUFTIK.cjs.map +1 -0
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/index.cjs +49 -49
- package/dist/components/index.js +2 -2
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/tickets/index.cjs +61 -61
- package/dist/components/tickets/index.js +3 -3
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/.index.md +36 -34
- package/src/components/.alert-dialog.md +27 -23
- package/src/components/.announcement-bar.md +26 -21
- package/src/components/.breadcrumb.md +19 -15
- package/src/components/.calendar.md +24 -19
- package/src/components/.categories-cart.md +29 -24
- package/src/components/.checkbox.md +23 -25
- package/src/components/.chevron-button.md +37 -32
- package/src/components/.comment-card.md +32 -62
- package/src/components/.dialog.md +26 -26
- package/src/components/.dynamic-skeleton.md +54 -57
- package/src/components/.empty-state.md +42 -51
- package/src/components/.faq-accordion.md +27 -21
- package/src/components/.filter-chip.md +41 -24
- package/src/components/.flamingo-logo.md +20 -23
- package/src/components/.footer-waitlist-button.md +29 -22
- package/src/components/.footer.md +32 -32
- package/src/components/.icons-block.md +27 -17
- package/src/components/.image-cropper.md +41 -32
- package/src/components/.index.md +33 -39
- package/src/components/.input.md +31 -35
- package/src/components/.logs-list.md +31 -20
- package/src/components/.media-carousel.md +35 -36
- package/src/components/.open-source-features.md +33 -16
- package/src/components/.pagination.md +52 -51
- package/src/components/.provider-button.md +21 -23
- package/src/components/.select.md +31 -20
- package/src/components/.sidebar.md +34 -24
- package/src/components/.smooth-accordion.md +29 -24
- package/src/components/.social-icon-row.md +36 -32
- package/src/components/.textarea.md +25 -31
- package/src/components/.tool-icon.md +24 -26
- package/src/components/.unified-filter-logic.md +37 -30
- package/src/components/.unified-pagination.md +23 -22
- package/src/components/.user-summary-stub.md +38 -22
- package/src/components/.vendor-display-button.md +25 -25
- package/src/components/.vendor-icon.md +33 -25
- package/src/components/.why-it-matters.md +28 -25
- package/src/components/chat/.approval-batch-message.md +51 -0
- package/src/components/chat/.approval-request-message.md +35 -34
- package/src/components/chat/.chat-attachment-bar.md +64 -0
- package/src/components/chat/.chat-container.md +36 -18
- package/src/components/chat/.chat-input.md +37 -20
- package/src/components/chat/.chat-message-enhanced.md +30 -49
- package/src/components/chat/.chat-message-list.md +45 -32
- package/src/components/chat/.chat-message-skeleton.md +26 -22
- package/src/components/chat/.chat-panel-context.md +52 -0
- package/src/components/chat/.chat-ref.types.md +42 -0
- package/src/components/chat/.chat-sidebar-skeleton.md +34 -25
- package/src/components/chat/.chat-sidebar.md +31 -26
- package/src/components/chat/.chat-ticket-list.md +39 -0
- package/src/components/chat/.context-compaction-display.md +36 -0
- package/src/components/chat/.cycling-phrase.md +52 -0
- package/src/components/chat/.embeddable-chat.md +48 -0
- package/src/components/chat/.expand-chevron.md +24 -0
- package/src/components/chat/.index.md +31 -35
- package/src/components/chat/.mingo-onboarding-card-skeleton.md +44 -0
- package/src/components/chat/.mingo-onboarding-card.md +62 -0
- package/src/components/chat/.model-display.md +32 -30
- package/src/components/chat/.nav-link-anchor-via-runtime.md +40 -0
- package/src/components/chat/.remark-card-links.md +38 -0
- package/src/components/chat/.slash-command-suggestions.md +47 -0
- package/src/components/chat/.source-action-button.md +48 -0
- package/src/components/chat/.thinking-display.md +42 -0
- package/src/components/chat/.tool-call-blocks.md +45 -0
- package/src/components/chat/.tool-execution-display.md +44 -36
- package/src/components/chat/chat-container.tsx +1 -1
- package/src/components/chat/entity-cards/.admin-content-card.md +43 -0
- package/src/components/chat/entity-cards/.block-card.md +47 -0
- package/src/components/chat/entity-cards/.blog-card.md +52 -0
- package/src/components/chat/entity-cards/.blog-image-placeholder.md +39 -0
- package/src/components/chat/entity-cards/.campaign-card-admin.md +47 -0
- package/src/components/chat/entity-cards/.case-study-card.md +58 -0
- package/src/components/chat/entity-cards/.chat-ticket-item.md +40 -0
- package/src/components/chat/entity-cards/.chat-video-entity-card.md +43 -0
- package/src/components/chat/entity-cards/.customer-interview-card.md +53 -0
- package/src/components/chat/entity-cards/.data-room-doc-card.md +47 -0
- package/src/components/chat/entity-cards/.dispatch.md +39 -0
- package/src/components/chat/entity-cards/.entity-author-card.md +51 -0
- package/src/components/chat/entity-cards/.generic-entity-card.md +62 -0
- package/src/components/chat/entity-cards/.github-activity-card.md +61 -0
- package/src/components/chat/entity-cards/.hubspot-ticket-card.md +53 -0
- package/src/components/chat/entity-cards/.index.md +66 -0
- package/src/components/chat/entity-cards/.investor-update-card.md +47 -0
- package/src/components/chat/entity-cards/.onboarding-guide-card.md +58 -0
- package/src/components/chat/entity-cards/.product-release-card-defaults.md +31 -0
- package/src/components/chat/entity-cards/.product-release-card.md +29 -0
- package/src/components/chat/entity-cards/.program-card-defaults.md +41 -0
- package/src/components/chat/entity-cards/.program-card.md +59 -0
- package/src/components/chat/entity-cards/.roadmap-card.md +46 -0
- package/src/components/chat/entity-cards/.roadmap-vote-button.md +52 -0
- package/src/components/chat/entity-cards/.slack-message-card.md +48 -0
- package/src/components/chat/entity-cards/.task-type-icon.md +47 -0
- package/src/components/chat/hooks/.index.md +36 -21
- package/src/components/chat/hooks/.use-chat-attachment-image-gallery.md +51 -0
- package/src/components/chat/hooks/.use-chat-attachments.md +48 -0
- package/src/components/chat/hooks/.use-chat-card-item.md +39 -0
- package/src/components/chat/hooks/.use-chat-identity.md +45 -0
- package/src/components/chat/hooks/.use-chat.md +58 -0
- package/src/components/chat/hooks/.use-chunk-catchup.md +46 -48
- package/src/components/chat/hooks/.use-close-on-navigation.md +44 -0
- package/src/components/chat/hooks/.use-collapsible.md +48 -0
- package/src/components/chat/hooks/.use-embedded-chat.md +32 -0
- package/src/components/chat/hooks/.use-jetstream-dialog-subscription.md +40 -0
- package/src/components/chat/hooks/.use-nats-chat-adapter.md +52 -0
- package/src/components/chat/hooks/.use-nats-dialog-subscription.md +49 -30
- package/src/components/chat/hooks/.use-proxied-image-url.md +40 -0
- package/src/components/chat/hooks/.use-realtime-chunk-processor.md +43 -40
- package/src/components/chat/hooks/.use-slash-commands.md +46 -0
- package/src/components/chat/hooks/.use-sse-chat-adapter.md +34 -0
- package/src/components/chat/hooks/.use-sse.md +60 -0
- package/src/components/chat/hooks/.use-unified-chat.md +57 -0
- package/src/components/chat/types/.api.types.md +52 -38
- package/src/components/chat/types/.chat.types.md +43 -34
- package/src/components/chat/types/.component.types.md +47 -48
- package/src/components/chat/types/.index.md +20 -27
- package/src/components/chat/types/.message.types.md +58 -48
- package/src/components/chat/types/.network.types.md +57 -31
- package/src/components/chat/types/.processing.types.md +49 -31
- package/src/components/chat/types/.unified-chat-state.types.md +41 -0
- package/src/components/chat/types/entities/.blog.md +43 -0
- package/src/components/chat/types/entities/.case-study.md +26 -0
- package/src/components/chat/types/entities/.content-ref.md +41 -0
- package/src/components/chat/types/entities/.customer-interview.md +28 -0
- package/src/components/chat/types/entities/.data-room-doc.md +36 -0
- package/src/components/chat/types/entities/.github-activity.md +43 -0
- package/src/components/chat/types/entities/.hubspot-ticket.md +53 -0
- package/src/components/chat/types/entities/.index.md +42 -0
- package/src/components/chat/types/entities/.investor-update.md +45 -0
- package/src/components/chat/types/entities/.onboarding-guide.md +50 -0
- package/src/components/chat/types/entities/.program-types.md +57 -0
- package/src/components/chat/types/entities/.roadmap-item.md +58 -0
- package/src/components/chat/types/entities/.slack-message.md +35 -0
- package/src/components/chat/utils/.agent-status-message.md +45 -0
- package/src/components/chat/utils/.auto-continuation-directive.md +58 -0
- package/src/components/chat/utils/.chat-attachment-markdown.md +54 -0
- package/src/components/chat/utils/.chat-authed-fetch.md +25 -0
- package/src/components/chat/utils/.chat-nav-resolution.md +46 -0
- package/src/components/chat/utils/.chat-proxy-auth-storage.md +38 -0
- package/src/components/chat/utils/.chip-action-class.md +34 -0
- package/src/components/chat/utils/.chip-styles.md +46 -0
- package/src/components/chat/utils/.chunk-parser.md +38 -28
- package/src/components/chat/utils/.clickup-task-type-utils.md +48 -0
- package/src/components/chat/utils/.compact-card-classes.md +62 -0
- package/src/components/chat/utils/.decide-new-tab.md +51 -0
- package/src/components/chat/utils/.external-app-urls.md +29 -0
- package/src/components/chat/utils/.extract-incomplete-message-state.md +25 -29
- package/src/components/chat/utils/.flatten-assistant-content.md +34 -0
- package/src/components/chat/utils/.icon-registry.md +46 -0
- package/src/components/chat/utils/.index.md +37 -32
- package/src/components/chat/utils/.is-cross-origin-url.md +35 -0
- package/src/components/chat/utils/.message-segment-accumulator.md +25 -34
- package/src/components/chat/utils/.nav-anchor-props.md +44 -0
- package/src/components/chat/utils/.nav-click-handler.md +47 -0
- package/src/components/chat/utils/.onboarding-icons.md +28 -0
- package/src/components/chat/utils/.process-historical-messages.md +46 -35
- package/src/components/chat/utils/.scroll-anchor.md +40 -0
- package/src/components/chat/utils/.slash-dispatch-utils.md +44 -0
- package/src/components/chat/utils/.source-icons.md +35 -0
- package/src/components/chat/utils/.source-row-cta.md +54 -0
- package/src/components/chat/utils/.tool-call-helpers.md +42 -0
- package/src/components/contact/.contact-form.md +43 -0
- package/src/components/contact/.index.md +27 -0
- package/src/components/features/.array-entry-manager.md +36 -45
- package/src/components/features/.changelog-manager.md +47 -21
- package/src/components/features/.changelog-sections-manager.md +21 -26
- package/src/components/features/.command-box.md +31 -28
- package/src/components/features/.entity-summary-editor.md +46 -0
- package/src/components/features/.entity-video-section.md +51 -0
- package/src/components/features/.figma-prototype-viewer.md +48 -29
- package/src/components/features/.filters-dropdown.md +33 -46
- package/src/components/features/.highlight-config-section.md +42 -0
- package/src/components/features/.highlight-generation-section.md +46 -0
- package/src/components/features/.highlight-video-combined-section.md +47 -0
- package/src/components/features/.highlight-video-preview.md +44 -0
- package/src/components/features/.highlight-video-section.md +47 -0
- package/src/components/features/.index.md +40 -66
- package/src/components/features/.media-gallery-manager.md +48 -38
- package/src/components/features/.more-about-button.md +22 -19
- package/src/components/features/.og-editor-preview.md +40 -36
- package/src/components/features/.parallax-image-showcase.md +33 -26
- package/src/components/features/.paths-display.md +42 -43
- package/src/components/features/.platform-badge.md +37 -36
- package/src/components/features/.platform-filter.md +23 -16
- package/src/components/features/.policy-configuration-panel.md +48 -56
- package/src/components/features/.provider-button.md +33 -36
- package/src/components/features/.push-button-selector.md +40 -29
- package/src/components/features/.release-media-manager.md +46 -31
- package/src/components/features/.section-selector.md +26 -31
- package/src/components/features/.select-button.md +35 -25
- package/src/components/features/.seo-editor-preview.md +41 -44
- package/src/components/features/.social-links-manager.md +25 -19
- package/src/components/features/.start-with-openframe-button.md +37 -29
- package/src/components/features/.status-filter-component.md +36 -20
- package/src/components/features/.tags-selector.md +40 -24
- package/src/components/features/.transcribe-and-summarize-combined-section.md +45 -0
- package/src/components/features/.transcribe-summarize-section.md +48 -0
- package/src/components/features/.transcript-summary-editor.md +53 -0
- package/src/components/features/.video-bites-display.md +46 -0
- package/src/components/features/.video-clips-section.md +41 -0
- package/src/components/features/.video-ratio-tabs.md +56 -0
- package/src/components/features/.video-source-selector.md +60 -0
- package/src/components/features/.video.md +44 -0
- package/src/components/features/.waitlist-form.md +60 -0
- package/src/components/features/ai-enrich/.AIEnrichButton.md +30 -27
- package/src/components/features/ai-enrich/.AIEnrichSection.md +46 -42
- package/src/components/features/board/.board-column-header.md +38 -0
- package/src/components/features/board/.board-column.md +43 -0
- package/src/components/features/board/.board.md +51 -0
- package/src/components/features/board/.color-utils.md +26 -0
- package/src/components/features/board/.index.md +56 -0
- package/src/components/features/board/.ticket-card-skeleton.md +38 -0
- package/src/components/features/board/.ticket-card.md +47 -0
- package/src/components/features/board/.types.md +45 -0
- package/src/components/features/board/.use-board-collapse.md +34 -0
- package/src/components/features/notifications/.index.md +57 -0
- package/src/components/features/notifications/.notification-drawer.md +34 -0
- package/src/components/features/notifications/.notification-tile.md +39 -0
- package/src/components/features/notifications/.notifications-context.md +73 -0
- package/src/components/features/notifications/.types.md +45 -0
- package/src/components/icons/.about-icon.md +20 -28
- package/src/components/icons/.ai-robot-icon.md +15 -17
- package/src/components/icons/.bash-icon.md +16 -23
- package/src/components/icons/.buildings-icon.md +10 -24
- package/src/components/icons/.capterra-icon.md +30 -26
- package/src/components/icons/.carta-icon.md +29 -0
- package/src/components/icons/.clickup-icon.md +26 -0
- package/src/components/icons/.cmd-icon.md +15 -22
- package/src/components/icons/.coins-icon.md +17 -25
- package/src/components/icons/.community-hub-icon.md +19 -25
- package/src/components/icons/.community-icon.md +24 -21
- package/src/components/icons/.compare-icon.md +32 -19
- package/src/components/icons/.copy-icon.md +29 -15
- package/src/components/icons/.custom-external-link-icon.md +19 -17
- package/src/components/icons/.custom-fork-icon.md +32 -21
- package/src/components/icons/.custom-license-icon.md +29 -25
- package/src/components/icons/.custom-star-icon.md +20 -28
- package/src/components/icons/.custom-time-icon.md +21 -22
- package/src/components/icons/.cut-vendor-costs-icon.md +6 -19
- package/src/components/icons/.dashboard-icon.md +13 -18
- package/src/components/icons/.deno-icon.md +16 -23
- package/src/components/icons/.donut-icon.md +12 -23
- package/src/components/icons/.double-chevron-icon.md +28 -36
- package/src/components/icons/.elestio-logo.md +13 -23
- package/src/components/icons/.empty-vendor-icon.md +16 -18
- package/src/components/icons/.explore-categories-icon.md +18 -29
- package/src/components/icons/.eye-icon.md +16 -26
- package/src/components/icons/.facebook-icon.md +9 -20
- package/src/components/icons/.figma-icon.md +8 -17
- package/src/components/icons/.filter-icon.md +15 -17
- package/src/components/icons/.flamingo-logo.md +28 -27
- package/src/components/icons/.folder-shield-icon.md +28 -19
- package/src/components/icons/.g2-icon.md +22 -21
- package/src/components/icons/.getapp-icon.md +25 -21
- package/src/components/icons/.github-icon.md +13 -25
- package/src/components/icons/.globe-icon.md +14 -19
- package/src/components/icons/.google-gemini-icon.md +16 -19
- package/src/components/icons/.google-logo.md +15 -21
- package/src/components/icons/.grid-view-icon.md +30 -19
- package/src/components/icons/.hamburger-icon.md +22 -20
- package/src/components/icons/.hand-dollar-icon.md +24 -34
- package/src/components/icons/.hotel-icon.md +27 -21
- package/src/components/icons/.icon-utils.md +28 -29
- package/src/components/icons/.image-icon.md +15 -22
- package/src/components/icons/.index.md +25 -28
- package/src/components/icons/.info-circle-icon.md +29 -30
- package/src/components/icons/.instagram-icon.md +10 -24
- package/src/components/icons/.jump-in-icon.md +18 -18
- package/src/components/icons/.linux-icon.md +18 -18
- package/src/components/icons/.log-out-icon.md +15 -23
- package/src/components/icons/.logs-icon.md +14 -23
- package/src/components/icons/.margin-crisis-icon.md +21 -20
- package/src/components/icons/.menu-icon.md +18 -19
- package/src/components/icons/.miami-cyber-gang-logo-face-only.md +18 -21
- package/src/components/icons/.miami-cyber-gang-logo.md +22 -14
- package/src/components/icons/.mlg-logo.md +18 -16
- package/src/components/icons/.moon-icon.md +32 -22
- package/src/components/icons/.ms-icon.md +30 -19
- package/src/components/icons/.nushell-icon.md +7 -21
- package/src/components/icons/.open-source-icon.md +19 -23
- package/src/components/icons/.openai-icon.md +9 -24
- package/src/components/icons/.openframe-ai-icons.md +25 -26
- package/src/components/icons/.openframe-logo.md +28 -22
- package/src/components/icons/.openframe-text.md +24 -27
- package/src/components/icons/.openmsp-logo.md +26 -23
- package/src/components/icons/.pilot-icon.md +23 -0
- package/src/components/icons/.powershell-icon.md +17 -22
- package/src/components/icons/.python-icon.md +16 -23
- package/src/components/icons/.queries-icon.md +13 -21
- package/src/components/icons/.reddit-icon.md +28 -24
- package/src/components/icons/.remote-control-icon.md +13 -17
- package/src/components/icons/.script-icon.md +27 -19
- package/src/components/icons/.search-icon.md +21 -21
- package/src/components/icons/.send-icon.md +14 -16
- package/src/components/icons/.settings-icon.md +30 -19
- package/src/components/icons/.shape-circle-dash-icon.md +16 -21
- package/src/components/icons/.shell-icon.md +15 -19
- package/src/components/icons/.shield-check-icon.md +18 -31
- package/src/components/icons/.shield-key-icon.md +25 -25
- package/src/components/icons/.shield-lock-icon.md +8 -18
- package/src/components/icons/.slack-icon.md +28 -32
- package/src/components/icons/.sparkles-icon.md +18 -23
- package/src/components/icons/.sso-configuration-icon.md +29 -16
- package/src/components/icons/.sun-icon.md +20 -18
- package/src/components/icons/.table-view-icon.md +17 -19
- package/src/components/icons/.telegram-icon.md +8 -22
- package/src/components/icons/.thumbs-down-icon.md +10 -19
- package/src/components/icons/.thumbs-up-icon.md +8 -17
- package/src/components/icons/.tool-directory-icons.md +24 -28
- package/src/components/icons/.trustpilot-icon.md +25 -22
- package/src/components/icons/.user-icon.md +26 -28
- package/src/components/icons/.users-group-icon.md +28 -24
- package/src/components/icons/.vendor-showcase-icons.md +21 -29
- package/src/components/icons/.vendors-icon.md +18 -22
- package/src/components/icons/.whatsapp-icon.md +30 -14
- package/src/components/icons/.x-icon.md +18 -23
- package/src/components/icons/.x-logo.md +13 -38
- package/src/components/icons/.youtube-icon.md +8 -19
- package/src/components/icons/device-type-icons/.get-device-type-icon.md +26 -34
- package/src/components/icons-v2-generated/.index.md +52 -0
- package/src/components/icons-v2-generated/alphabet/.index.md +33 -0
- package/src/components/icons-v2-generated/arrows/.index.md +39 -0
- package/src/components/icons-v2-generated/audio-and-visual/.index.md +40 -0
- package/src/components/icons-v2-generated/brand-logos/.elestio-logo-icon.md +40 -0
- package/src/components/icons-v2-generated/brand-logos/.gemini-logo-icon.md +37 -0
- package/src/components/icons-v2-generated/brand-logos/.google-gemini-logo-icon.md +33 -0
- package/src/components/icons-v2-generated/brand-logos/.index.md +38 -0
- package/src/components/icons-v2-generated/brand-logos/.meshcentral-logo-grey-icon.md +35 -0
- package/src/components/icons-v2-generated/brand-logos/.meshcentral-logo-icon.md +36 -0
- package/src/components/icons-v2-generated/buildings/.index.md +48 -0
- package/src/components/icons-v2-generated/charts/.index.md +40 -0
- package/src/components/icons-v2-generated/clothes/.index.md +48 -0
- package/src/components/icons-v2-generated/coding/.index.md +42 -0
- package/src/components/icons-v2-generated/communication/.index.md +39 -0
- package/src/components/icons-v2-generated/date-and-time/.index.md +29 -0
- package/src/components/icons-v2-generated/design/.index.md +39 -0
- package/src/components/icons-v2-generated/devices/.index.md +38 -0
- package/src/components/icons-v2-generated/documents/.index.md +38 -0
- package/src/components/icons-v2-generated/finance/.index.md +34 -0
- package/src/components/icons-v2-generated/food-and-drinks/.index.md +34 -0
- package/src/components/icons-v2-generated/food-and-drinks/.leafy-green-icon.md +36 -0
- package/src/components/icons-v2-generated/food-and-drinks/.strawberry-icon.md +39 -0
- package/src/components/icons-v2-generated/health/.index.md +40 -0
- package/src/components/icons-v2-generated/household/.index.md +45 -0
- package/src/components/icons-v2-generated/interface/.index.md +36 -0
- package/src/components/icons-v2-generated/map-and-travel/.index.md +41 -0
- package/src/components/icons-v2-generated/media-playback/.index.md +51 -0
- package/src/components/icons-v2-generated/number/.index.md +41 -0
- package/src/components/icons-v2-generated/school/.index.md +37 -0
- package/src/components/icons-v2-generated/security/.fingerprint-icon.md +38 -0
- package/src/components/icons-v2-generated/security/.index.md +39 -0
- package/src/components/icons-v2-generated/shopping/.index.md +42 -0
- package/src/components/icons-v2-generated/signs-and-symbols/.index.md +32 -0
- package/src/components/icons-v2-generated/sort-and-filter/.index.md +35 -0
- package/src/components/icons-v2-generated/sport/.index.md +41 -0
- package/src/components/icons-v2-generated/text-editor/.index.md +44 -0
- package/src/components/icons-v2-generated/users/.index.md +45 -0
- package/src/components/icons-v2-generated/vehicles-and-delivery/.index.md +36 -0
- package/src/components/icons-v2-generated/weather-and-nature/.flower-sakura-icon.md +36 -0
- package/src/components/icons-v2-generated/weather-and-nature/.index.md +34 -0
- package/src/components/layout/.article-detail-layout.md +43 -0
- package/src/components/layout/.back-button.md +40 -0
- package/src/components/layout/.list-page-layout.md +35 -26
- package/src/components/layout/.page-container.md +27 -38
- package/src/components/layout/.page-layout.md +50 -0
- package/src/components/layout/.title-block.md +42 -0
- package/src/components/loading/.card-skeleton.md +38 -29
- package/src/components/loading/.device-card-skeleton.md +29 -25
- package/src/components/loading/.index.md +39 -46
- package/src/components/loading/.margin-report-skeleton.md +45 -34
- package/src/components/loading/.organization-card-skeleton.md +39 -44
- package/src/components/loading/.page-layout-skeleton.md +34 -45
- package/src/components/loading/.unified-skeleton.md +62 -36
- package/src/components/navigation/.app-header.md +40 -29
- package/src/components/navigation/.app-layout.md +25 -26
- package/src/components/navigation/.header-global-search.md +34 -37
- package/src/components/navigation/.header-organization-filter.md +23 -22
- package/src/components/navigation/.header.md +31 -35
- package/src/components/navigation/.mobile-burger-menu.md +39 -47
- package/src/components/navigation/.mobile-nav-panel.md +51 -32
- package/src/components/navigation/.navigation-sidebar-header.md +36 -0
- package/src/components/navigation/.navigation-sidebar-item.md +45 -0
- package/src/components/navigation/.navigation-sidebar-toggle.md +38 -0
- package/src/components/navigation/.navigation-sidebar.md +33 -34
- package/src/components/navigation/.sliding-sidebar.md +52 -41
- package/src/components/navigation/.sticky-section-nav.md +56 -48
- package/src/components/platform/.ScriptArguments.md +39 -25
- package/src/components/platform/.ScriptInfoSection.md +30 -26
- package/src/components/platform/.ShellTypeBadge.md +18 -13
- package/src/components/platform/.SoftwareInfo.md +23 -27
- package/src/components/platform/.SoftwareSourceBadge.md +28 -19
- package/src/components/platform/.ToolBadge.md +25 -26
- package/src/components/providers/.theme-provider.md +52 -0
- package/src/components/shared/delivery/.delivery-lists.md +39 -0
- package/src/components/shared/delivery/.delivery-row.md +41 -0
- package/src/components/shared/delivery/.delivery-table.md +41 -0
- package/src/components/shared/delivery/.index.md +38 -0
- package/src/components/shared/dev-section/.dev-card-row.md +60 -0
- package/src/components/shared/dev-section/.dev-section-page.md +48 -0
- package/src/components/shared/dev-section/.dev-section-view.md +43 -0
- package/src/components/shared/dev-section/.index.md +38 -0
- package/src/components/shared/legal-document/.index.md +40 -0
- package/src/components/shared/legal-document/.legal-document-page.md +50 -0
- package/src/components/shared/legal-document/.use-legal-docs.md +42 -0
- package/src/components/shared/onboarding/.onboarding-step-card.md +32 -31
- package/src/components/shared/onboarding/.onboarding-walkthrough.md +39 -43
- package/src/components/shared/product-release/.index.md +28 -30
- package/src/components/shared/product-release/.product-release-card-skeleton.md +28 -28
- package/src/components/shared/product-release/.product-release-card.md +45 -27
- package/src/components/shared/product-release/.release-detail-page.md +23 -24
- package/src/components/shared/roadmap/.index.md +37 -0
- package/src/components/shared/roadmap/.roadmap-grid-skeleton.md +39 -0
- package/src/components/shared/roadmap/.roadmap-grid.md +66 -0
- package/src/components/shared/roadmap/.use-roadmap-voting.md +68 -0
- package/src/components/tickets/.help-center-card.md +51 -0
- package/src/components/tickets/.help-center-create-form.md +38 -0
- package/src/components/tickets/.help-center-list.md +40 -0
- package/src/components/tickets/.index.md +65 -0
- package/src/components/tickets/.ticket-center.md +51 -0
- package/src/components/tickets/.ticket-detail-drawer.md +48 -0
- package/src/components/tickets/.ticket-linked-delivery-card.md +36 -0
- package/src/components/tickets/.ticket-open-form.md +50 -0
- package/src/components/tickets/.ticket-row.md +30 -0
- package/src/components/tickets/.types.md +57 -0
- package/src/components/tickets/hooks/.use-ticket-actions.md +77 -0
- package/src/components/tickets/hooks/.use-ticket-engagements.md +42 -0
- package/src/components/tickets/hooks/.use-tickets-list.md +54 -0
- package/src/components/ui/.actions-menu.md +66 -41
- package/src/components/ui/.alert-dialog.md +29 -26
- package/src/components/ui/.allowed-domains-input.md +29 -21
- package/src/components/ui/.assignee-dropdown.md +45 -0
- package/src/components/ui/.autocomplete.md +47 -41
- package/src/components/ui/.benefit-card.md +51 -36
- package/src/components/ui/.brand-association-card.md +30 -27
- package/src/components/ui/.breadcrumb.md +17 -15
- package/src/components/ui/.checkbox-block.md +39 -35
- package/src/components/ui/.checkbox-with-description.md +23 -16
- package/src/components/ui/.checkbox.md +31 -23
- package/src/components/ui/.circular-progress.md +49 -19
- package/src/components/ui/.content-loader.md +32 -20
- package/src/components/ui/.cursor-pagination.md +41 -52
- package/src/components/ui/.dashboard-info-card.md +33 -26
- package/src/components/ui/.date-picker.md +27 -25
- package/src/components/ui/.device-card-compact.md +28 -29
- package/src/components/ui/.device-card.md +27 -27
- package/src/components/ui/.dialog.md +25 -16
- package/src/components/ui/.drawer.md +86 -0
- package/src/components/ui/.dropdown-button.md +45 -0
- package/src/components/ui/.entity-image.md +46 -0
- package/src/components/ui/.error-state.md +41 -28
- package/src/components/ui/.feature-card.md +35 -31
- package/src/components/ui/.feature-list.md +48 -0
- package/src/components/ui/.field-wrapper.md +47 -0
- package/src/components/ui/.file-upload.md +42 -0
- package/src/components/ui/.filter-checkbox-item.md +43 -0
- package/src/components/ui/.filter-list.md +57 -0
- package/src/components/ui/.filter-modal.md +59 -0
- package/src/components/ui/.floating-tooltip.md +43 -26
- package/src/components/ui/.hidden-tags-popup.md +49 -0
- package/src/components/ui/.hover-dropdown.md +54 -0
- package/src/components/ui/.image-gallery-modal.md +41 -34
- package/src/components/ui/.image-uploader.md +53 -0
- package/src/components/ui/.index.md +40 -34
- package/src/components/ui/.info-card.md +31 -31
- package/src/components/ui/.info-row.md +31 -27
- package/src/components/ui/.input-trigger.md +44 -0
- package/src/components/ui/.input.md +37 -31
- package/src/components/ui/.markdown-editor.md +57 -0
- package/src/components/ui/.modal-v2.md +51 -0
- package/src/components/ui/.modal.md +32 -31
- package/src/components/ui/.more-actions-menu.md +45 -38
- package/src/components/ui/.organization-card.md +31 -37
- package/src/components/ui/.page-actions.md +44 -54
- package/src/components/ui/.phone-input.md +54 -0
- package/src/components/ui/.progress-bar.md +35 -27
- package/src/components/ui/.radio-group.md +39 -27
- package/src/components/ui/.release-changelog-section.md +34 -34
- package/src/components/ui/.search-input.md +48 -0
- package/src/components/ui/.select.md +54 -34
- package/src/components/ui/.service-card.md +42 -40
- package/src/components/ui/.sheet.md +27 -18
- package/src/components/ui/.simple-markdown-renderer.md +29 -31
- package/src/components/ui/.sort-column-item.md +42 -0
- package/src/components/ui/.square-avatar.md +34 -24
- package/src/components/ui/.status-badge.md +26 -38
- package/src/components/ui/.switch.md +22 -35
- package/src/components/ui/.tab-navigation.md +56 -53
- package/src/components/ui/.tab-selector.md +40 -0
- package/src/components/ui/.tag-key-value-filter.md +56 -0
- package/src/components/ui/.tag-search-input.md +53 -0
- package/src/components/ui/.tag.md +49 -31
- package/src/components/ui/.tags-manager.md +60 -0
- package/src/components/ui/.textarea.md +44 -34
- package/src/components/ui/.ticket-attachments-list.md +45 -0
- package/src/components/ui/.ticket-detail-section.md +29 -0
- package/src/components/ui/.ticket-info-section.md +56 -0
- package/src/components/ui/.ticket-note-card.md +53 -0
- package/src/components/ui/.ticket-notes-section.md +54 -0
- package/src/components/ui/.ticket-status-tag.md +49 -0
- package/src/components/ui/.title-content-block.md +25 -26
- package/src/components/ui/.toaster.md +40 -28
- package/src/components/ui/.tooltip.md +22 -11
- package/src/components/ui/.truncate-text.md +39 -0
- package/src/components/ui/button/.button-styles.md +35 -0
- package/src/components/ui/button/.button.md +53 -0
- package/src/components/ui/button/.split-button.md +48 -0
- package/src/components/ui/data-table/.data-table-body.md +48 -0
- package/src/components/ui/data-table/.data-table-column-filter.md +45 -0
- package/src/components/ui/data-table/.data-table-cursor-footer.md +45 -0
- package/src/components/ui/data-table/.data-table-empty.md +43 -0
- package/src/components/ui/data-table/.data-table-header.md +55 -0
- package/src/components/ui/data-table/.data-table-infinite-footer.md +44 -0
- package/src/components/ui/data-table/.data-table-row-count.md +43 -0
- package/src/components/ui/data-table/.data-table-row.md +47 -0
- package/src/components/ui/data-table/.data-table-skeleton.md +42 -0
- package/src/components/ui/data-table/.data-table.md +47 -0
- package/src/components/ui/data-table/.index.md +55 -0
- package/src/components/ui/data-table/.types.md +54 -0
- package/src/components/ui/data-table/.use-data-table.md +45 -0
- package/src/components/ui/data-table/.utils.md +38 -0
- package/src/components/ui/file-manager/.file-manager-action-bar.md +39 -30
- package/src/components/ui/file-manager/.file-manager-breadcrumb.md +29 -27
- package/src/components/ui/file-manager/.file-manager-context-menu.md +38 -42
- package/src/components/ui/file-manager/.file-manager-empty.md +26 -39
- package/src/components/ui/file-manager/.file-manager-table-row.md +33 -41
- package/src/components/ui/file-manager/.file-manager.md +35 -31
- package/src/components/ui/query-report-table/.index.md +43 -0
- package/src/components/ui/query-report-table/.query-report-table-header.md +36 -0
- package/src/components/ui/query-report-table/.query-report-table-row.md +40 -0
- package/src/components/ui/query-report-table/.query-report-table-skeleton.md +44 -0
- package/src/components/ui/query-report-table/.query-report-table.md +47 -0
- package/src/components/ui/query-report-table/.types.md +41 -0
- package/src/components/ui/query-report-table/.utils.md +35 -0
- package/src/components/ui/table/.index.md +27 -48
- package/src/components/ui/table/.table-cell.md +18 -27
- package/src/components/ui/table/.table-column-filter-dropdown.md +40 -0
- package/src/components/ui/table/.table-description-cell.md +24 -14
- package/src/components/ui/table/.table-empty-state.md +21 -22
- package/src/components/ui/table/.table-header.md +25 -40
- package/src/components/ui/table/.table-row.md +22 -40
- package/src/components/ui/table/.table-skeleton.md +33 -26
- package/src/components/ui/table/.table-timestamp-cell.md +26 -16
- package/src/components/ui/table/.table.md +39 -59
- package/src/components/ui/table/.types.md +44 -36
- package/src/components/ui/table/.utils.md +18 -20
- package/src/contexts/.chat-runtime-context.md +54 -0
- package/src/contexts/.endpoints-runtime-context.md +58 -0
- package/src/contexts/.index.md +53 -0
- package/src/contexts/.use-outer-or-default.md +36 -0
- package/src/embed-shims/.index.md +45 -0
- package/src/embed-shims/.next-dynamic.md +43 -0
- package/src/embed-shims/.next-image.md +45 -0
- package/src/embed-shims/.next-link.md +59 -0
- package/src/embed-shims/.next-navigation.md +59 -0
- package/src/hooks/.index.md +34 -29
- package/src/hooks/.use-access-code-integration.md +49 -0
- package/src/hooks/.use-contact-submission.md +37 -26
- package/src/hooks/.use-copy-to-clipboard.md +42 -0
- package/src/hooks/.use-near-viewport.md +44 -0
- package/src/hooks/.use-og-placeholder.md +51 -0
- package/src/hooks/.use-toast.md +36 -35
- package/src/hooks/state/.use-api-params.md +29 -46
- package/src/hooks/state/.use-query-params.md +37 -33
- package/src/hooks/ui/.index.md +33 -32
- package/src/hooks/ui/.use-auto-limit-tags.md +54 -0
- package/src/hooks/ui/.use-horizontal-scrollbar.md +74 -0
- package/src/hooks/ui/.use-image-edge-color.md +42 -0
- package/src/hooks/ui/.use-media-query.md +33 -25
- package/src/hooks/ui/.use-search.md +51 -0
- package/src/nats/.nats.md +49 -28
- package/src/schemas/.contact-schema.md +45 -0
- package/src/stories/.AnnouncementBar.stories.md +45 -0
- package/src/stories/.AppLayout.stories.md +20 -21
- package/src/stories/.Autocomplete.stories.md +48 -34
- package/src/stories/.Board.stories.md +35 -0
- package/src/stories/.Button.stories.md +36 -33
- package/src/stories/.ChatTicketList.stories.md +33 -0
- package/src/stories/.CheckboxBlock.stories.md +40 -28
- package/src/stories/.ContentLoader.stories.md +47 -0
- package/src/stories/.DashboardInfoCard.stories.md +57 -0
- package/src/stories/.DataTable.stories.md +41 -0
- package/src/stories/.DatePicker.stories.md +66 -52
- package/src/stories/.DeviceCard.stories.md +41 -40
- package/src/stories/.DeviceCardCompact.stories.md +41 -0
- package/src/stories/.DotsLoaderIcon.stories.md +36 -0
- package/src/stories/.Drawer.stories.md +58 -0
- package/src/stories/.EmbeddableChat.stories.md +41 -0
- package/src/stories/.FileManager.stories.md +41 -0
- package/src/stories/.FileManagerActionBar.stories.md +38 -0
- package/src/stories/.FileUpload.stories.md +53 -0
- package/src/stories/.FilterList.stories.md +54 -0
- package/src/stories/.FilterModal.stories.md +72 -0
- package/src/stories/.FiltersDropdown.stories.md +57 -0
- package/src/stories/.Header.stories.md +48 -0
- package/src/stories/.ImageUploader.stories.md +49 -0
- package/src/stories/.InfoCard.stories.md +54 -0
- package/src/stories/.Input.stories.md +48 -30
- package/src/stories/.ListPageLayout.stories.md +56 -43
- package/src/stories/.MingoOnboardingCard.stories.md +42 -0
- package/src/stories/.MingoOnboardingCardSkeleton.stories.md +35 -0
- package/src/stories/.Modal.stories.md +40 -31
- package/src/stories/.NotificationDrawer.stories.md +55 -0
- package/src/stories/.OnboardingStepCard.stories.md +41 -0
- package/src/stories/.OrganizationCard.stories.md +61 -0
- package/src/stories/.PageActions.stories.md +52 -49
- package/src/stories/.PageContainer.stories.md +41 -35
- package/src/stories/.PageLayout.stories.md +60 -0
- package/src/stories/.ParallaxImageShowcase.stories.md +49 -0
- package/src/stories/.PhoneInput.stories.md +53 -0
- package/src/stories/.QueryReportTable.stories.md +44 -0
- package/src/stories/.RadioGroup.stories.md +46 -0
- package/src/stories/.RadioGroupBlock.stories.md +45 -0
- package/src/stories/.Select.stories.md +29 -15
- package/src/stories/.SlashCommandSuggestions.stories.md +41 -0
- package/src/stories/.SplitButton.stories.md +62 -0
- package/src/stories/.TabNavigation.stories.md +47 -38
- package/src/stories/.TabSelector.stories.md +65 -0
- package/src/stories/.Table.stories.md +38 -46
- package/src/stories/.TableColumnFilterDropdown.stories.md +46 -0
- package/src/stories/.Tag.stories.md +43 -32
- package/src/stories/.TagKeyValueFilter.stories.md +44 -0
- package/src/stories/.TagSearchInput.stories.md +61 -0
- package/src/stories/.Textarea.stories.md +49 -26
- package/src/stories/.Theme.stories.md +41 -0
- package/src/stories/.TicketAttachmentsList.stories.md +39 -0
- package/src/stories/.TicketDescriptionViewer.stories.md +39 -0
- package/src/stories/.TicketInfoSection.stories.md +40 -0
- package/src/stories/.TicketKnowledgeBaseList.stories.md +36 -0
- package/src/stories/.TicketNotesSection.stories.md +50 -0
- package/src/stories/.Toaster.stories.md +40 -0
- package/src/stories/.ToolExecutionDisplay.stories.md +41 -0
- package/src/stories/.Tooltip.stories.md +41 -0
- package/src/stories/.UserSummary.stories.md +41 -0
- package/src/stories/.WaitlistForm.stories.md +42 -0
- package/src/stories/BlogCard.stories.tsx +61 -0
- package/src/stories/CampaignCardAdmin.stories.tsx +52 -0
- package/src/stories/CaseStudyCard.stories.tsx +42 -0
- package/src/stories/ChatContainer.stories.tsx +186 -0
- package/src/stories/ChatInlineVideoPill.stories.tsx +63 -0
- package/src/stories/CustomerInterviewCard.stories.tsx +42 -0
- package/src/stories/DataRoomDocCard.stories.tsx +52 -0
- package/src/stories/GenericEntityCard.stories.tsx +66 -0
- package/src/stories/GitHubActivityCard.stories.tsx +61 -0
- package/src/stories/HubspotTicketCard.stories.tsx +98 -0
- package/src/stories/InvestorUpdateCard.stories.tsx +42 -0
- package/src/stories/OnboardingGuideCard.stories.tsx +52 -0
- package/src/stories/ProductReleaseCard.stories.tsx +61 -0
- package/src/stories/ProgramCard.stories.tsx +79 -0
- package/src/stories/RoadmapCard.stories.tsx +75 -0
- package/src/stories/SlackMessageCard.stories.tsx +41 -0
- package/src/stories/__fixtures__/chat-cards.ts +604 -0
- package/src/types/.blog.md +53 -29
- package/src/types/.case-study.md +44 -27
- package/src/types/.customer-interview.md +66 -44
- package/src/types/.delivery.md +40 -0
- package/src/types/.employee.md +24 -30
- package/src/types/.index.md +33 -47
- package/src/types/.marketing.md +49 -44
- package/src/types/.navigation.md +33 -25
- package/src/types/.os.types.md +32 -27
- package/src/types/.platform.md +31 -28
- package/src/types/.product-release.md +65 -38
- package/src/types/.supabase.md +37 -29
- package/src/types/.team.md +41 -33
- package/src/types/.video-processing.md +54 -0
- package/src/types/.waitlist.md +40 -36
- package/src/utils/.access-code-client.md +37 -36
- package/src/utils/.cn.md +31 -23
- package/src/utils/.color-analysis.md +35 -0
- package/src/utils/.country-phone-utils.md +39 -0
- package/src/utils/.date-formatters.md +19 -18
- package/src/utils/.embed-authed-fetch.md +39 -0
- package/src/utils/.embed-proxy-auth-storage.md +38 -0
- package/src/utils/.fetch-priority.md +41 -0
- package/src/utils/.format.md +74 -25
- package/src/utils/.generic-domain-utils.md +42 -0
- package/src/utils/.image-proxy.md +59 -23
- package/src/utils/.index.md +42 -49
- package/src/utils/.local-storage-adapter.md +50 -0
- package/src/utils/.ods-color-utils.md +55 -38
- package/src/utils/.platform-config.md +45 -25
- package/src/utils/.scroll-into-view.md +40 -0
- package/src/utils/.source-icons.md +53 -0
- package/src/utils/.sse-decision-frame.md +46 -0
- package/src/utils/dev-sections/.index.md +34 -0
- package/src/utils/dev-sections/.openframe-dev-sections.md +49 -0
- package/dist/chunk-ZDF6F7ED.cjs.map +0 -1
- package/dist/chunk-ZTJVRSN5.js.map +0 -1
- package/src/components/.card.md +0 -42
- package/src/components/.contact-button.md +0 -30
- package/src/components/.drawer.md +0 -46
- package/src/components/.fixed-layout-container.md +0 -47
- package/src/components/.footer-waitlist-card.md +0 -29
- package/src/components/.join-waitlist-cta.md +0 -29
- package/src/components/.sheet.md +0 -47
- package/src/components/.sliding-panel.md +0 -48
- package/src/components/.tooltip.md +0 -48
- package/src/components/.use-mobile.md +0 -42
- package/src/components/.vendor-compact-card.md +0 -66
- package/src/components/.x-button.md +0 -42
- package/src/components/features/.github-repo-button.md +0 -40
- package/src/components/features/.organization-icon.md +0 -47
- package/src/components/features/.organization-selector.md +0 -45
- package/src/components/icons/.fleet-icon.md +0 -39
- package/src/components/icons/.meshcentral-icon.md +0 -35
- package/src/components/icons/.refresh-icon.md +0 -34
- package/src/components/icons/.tactical-icon.md +0 -35
- package/src/components/ui/.button.md +0 -69
- package/src/components/ui/.log-table-row.md +0 -47
- package/src/components/ui/.selectable-device-card.md +0 -46
- package/src/hooks/.api-hooks-stub.md +0 -45
- package/src/hooks/api/.use-product-releases.md +0 -53
- package/src/stories/.OrganizationSelector.stories.md +0 -42
- package/src/stories/.SelectableDeviceCard.stories.md +0 -30
- package/src/utils/.lite-youtube-embed-stub.md +0 -37
- package/src/utils/.lite-youtube-embed.md +0 -33
- /package/dist/{chunk-3JWIJJ44.js.map → chunk-5OWDOFKK.js.map} +0 -0
- /package/dist/{chunk-IK2X5YJU.js.map → chunk-HWY35EAK.js.map} +0 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<!-- source-hash: 173932afe7ff44448182cb23b63b5547 -->
|
|
2
|
+
Client-side barrel export file for the Board UI component library, exposing all public components, hooks, utilities, and TypeScript types for the Kanban-style ticket board feature.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
| Export | Type | Description |
|
|
7
|
+
|--------|------|-------------|
|
|
8
|
+
| `Board` / `BoardProps` | Component | Root board container |
|
|
9
|
+
| `BoardColumn` / `BoardColumnProps` | Component | Individual board column |
|
|
10
|
+
| `BoardColumnHeader` / `BoardColumnHeaderProps` | Component | Column header with title/actions |
|
|
11
|
+
| `TicketCard` / `TicketCardProps` | Component | Draggable ticket card |
|
|
12
|
+
| `TicketCardSkeleton` / `TicketCardSkeletonProps` | Component | Loading placeholder for ticket cards |
|
|
13
|
+
| `useBoardCollapse` | Hook | Manages column collapse/expand state |
|
|
14
|
+
| `BoardCollapseMap` / `UseBoardCollapseReturn` | Types | Collapse hook type contracts |
|
|
15
|
+
| `tintOnDark` | Utility | Color tinting helper for dark backgrounds |
|
|
16
|
+
| `columnFromTicketStatus` | Utility | Maps ticket status to board column |
|
|
17
|
+
| `groupTicketsByStatus` | Utility | Groups ticket arrays by their status |
|
|
18
|
+
| `BoardChange`, `BoardColumnDef`, `BoardPriority`, `BoardTicket`, `BoardTicketAssignee` | Types | Core board domain types |
|
|
19
|
+
|
|
20
|
+
## Usage Example
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
import {
|
|
24
|
+
Board,
|
|
25
|
+
BoardColumn,
|
|
26
|
+
BoardColumnHeader,
|
|
27
|
+
TicketCard,
|
|
28
|
+
useBoardCollapse,
|
|
29
|
+
groupTicketsByStatus,
|
|
30
|
+
} from '@/components/board'
|
|
31
|
+
import type { BoardTicket, BoardColumnDef } from '@/components/board'
|
|
32
|
+
|
|
33
|
+
const columns: BoardColumnDef[] = [
|
|
34
|
+
{ id: 'open', label: 'Open' },
|
|
35
|
+
{ id: 'in_progress', label: 'In Progress' },
|
|
36
|
+
{ id: 'closed', label: 'Closed' },
|
|
37
|
+
]
|
|
38
|
+
|
|
39
|
+
export function TicketBoard({ tickets }: { tickets: BoardTicket[] }) {
|
|
40
|
+
const { collapseMap, toggle } = useBoardCollapse()
|
|
41
|
+
const grouped = groupTicketsByStatus(tickets)
|
|
42
|
+
|
|
43
|
+
return (
|
|
44
|
+
<Board>
|
|
45
|
+
{columns.map((col) => (
|
|
46
|
+
<BoardColumn key={col.id} collapsed={collapseMap[col.id]}>
|
|
47
|
+
<BoardColumnHeader column={col} onToggle={() => toggle(col.id)} />
|
|
48
|
+
{grouped[col.id]?.map((ticket) => (
|
|
49
|
+
<TicketCard key={ticket.id} ticket={ticket} />
|
|
50
|
+
))}
|
|
51
|
+
</BoardColumn>
|
|
52
|
+
))}
|
|
53
|
+
</Board>
|
|
54
|
+
)
|
|
55
|
+
}
|
|
56
|
+
```
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!-- source-hash: 1103dbd0890929bf5922563df098f12b -->
|
|
2
|
+
Loading state placeholder component that renders an animated skeleton UI mimicking the structure of a ticket card while content is being fetched.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
- **`TicketCardSkeleton`** — A `forwardRef` component that renders a structured skeleton layout matching the ticket card's visual hierarchy:
|
|
7
|
+
- Title placeholder (3/4 width bar)
|
|
8
|
+
- Subtitle row with icon and text placeholders
|
|
9
|
+
- Action area with icon and avatar placeholders
|
|
10
|
+
- Badge/tag row at the bottom
|
|
11
|
+
|
|
12
|
+
- **`TicketCardSkeletonProps`** — Extends `React.HTMLAttributes<HTMLDivElement>`, accepting all standard div props plus an optional `className` for style overrides.
|
|
13
|
+
|
|
14
|
+
## Usage Example
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import { TicketCardSkeleton } from '@/components/tickets/ticket-card-skeleton'
|
|
18
|
+
|
|
19
|
+
// Basic loading state
|
|
20
|
+
function TicketList({ isLoading, tickets }) {
|
|
21
|
+
if (isLoading) {
|
|
22
|
+
return (
|
|
23
|
+
<div className="flex flex-col gap-2">
|
|
24
|
+
{Array.from({ length: 5 }).map((_, i) => (
|
|
25
|
+
<TicketCardSkeleton key={i} />
|
|
26
|
+
))}
|
|
27
|
+
</div>
|
|
28
|
+
)
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return tickets.map(ticket => <TicketCard key={ticket.id} {...ticket} />)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// With custom className
|
|
35
|
+
<TicketCardSkeleton className="opacity-50" />
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
> **Note:** This component uses ODS design tokens (`--spacing-system-*`, `ods-border`, `ods-bg`) and the shared `Skeleton` primitive for consistent pulse animation across the Flamingo UI. Pair it directly with `TicketCard` to ensure visual dimensions match during loading transitions.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!-- source-hash: 5c7fae07590f9209605f37d7b88636f3 -->
|
|
2
|
+
Draggable kanban ticket card component for board views, supporting drag-and-drop via `@dnd-kit/sortable`, priority indicators, assignee avatars, device info, and tag display.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
### `TicketCard`
|
|
7
|
+
Main card component with three render modes:
|
|
8
|
+
- **Overlay** – rendered during active drag (slight rotation, shadow)
|
|
9
|
+
- **Link** – wraps content in a Next.js `<Link>` when `href` is provided
|
|
10
|
+
- **Button** – falls back to a `<button>` for click-only interaction
|
|
11
|
+
|
|
12
|
+
### `TicketTagRow` *(internal)*
|
|
13
|
+
Renders up to `MAX_VISIBLE_TAGS` (2) tags with an overflow count badge (e.g. `+3`).
|
|
14
|
+
|
|
15
|
+
### `PRIORITY_COLOR_CLASS`
|
|
16
|
+
Maps `BoardPriority` values (`low`, `medium`, `high`, `urgent`) to ODS color tokens for the priority flag icon.
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
| Prop | Type | Description |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| `ticket` | `BoardTicket` | Ticket data to display |
|
|
23
|
+
| `columnId` | `string` | Parent column ID, passed to sortable context |
|
|
24
|
+
| `href` | `string?` | If set, card navigates on click |
|
|
25
|
+
| `isOverlay` | `boolean` | Drag overlay mode (disables sortable refs) |
|
|
26
|
+
| `dragDisabled` | `boolean?` | Disables dnd-kit drag handling |
|
|
27
|
+
| `renderAssignSlot` | `(ticket) => ReactNode` | Custom assignee slot renderer |
|
|
28
|
+
|
|
29
|
+
## Usage Example
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
import { TicketCard } from './ticket-card'
|
|
33
|
+
|
|
34
|
+
<TicketCard
|
|
35
|
+
ticket={{
|
|
36
|
+
id: 'TKT-001',
|
|
37
|
+
title: 'VPN not connecting',
|
|
38
|
+
priority: 'high',
|
|
39
|
+
tags: ['network', 'vpn'],
|
|
40
|
+
assignees: [{ id: 'u1', name: 'Alice', initials: 'AL' }],
|
|
41
|
+
deviceHostnames: ['workstation-42'],
|
|
42
|
+
organizationName: 'Acme Corp',
|
|
43
|
+
}}
|
|
44
|
+
columnId="in-progress"
|
|
45
|
+
href="/tickets/TKT-001"
|
|
46
|
+
/>
|
|
47
|
+
```
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!-- source-hash: 17f22ebd29735a4ef28b5782559c367e -->
|
|
2
|
+
Defines the core data types and utility functions for the Kanban-style ticket board, including column definitions, ticket shapes, and helpers for mapping ticket statuses to board columns.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
### Types
|
|
7
|
+
|
|
8
|
+
| Type | Description |
|
|
9
|
+
|------|-------------|
|
|
10
|
+
| `BoardPriority` | Union type for ticket priority levels: `low`, `medium`, `high`, `urgent` |
|
|
11
|
+
| `BoardTicketAssignee` | Assignee shape with optional avatar, initials, and name |
|
|
12
|
+
| `BoardTicket` | Core ticket shape with status, priority, assignees, tags, and device info |
|
|
13
|
+
| `BoardColumnDef` | Column definition including tickets, loading states, and drag/drop controls |
|
|
14
|
+
| `BoardChange` | Represents a ticket move event between columns with ordering context |
|
|
15
|
+
|
|
16
|
+
### Functions
|
|
17
|
+
|
|
18
|
+
| Function | Description |
|
|
19
|
+
|----------|-------------|
|
|
20
|
+
| `columnFromTicketStatus` | Creates a `BoardColumnDef` from a `TicketStatus` with optional overrides |
|
|
21
|
+
| `groupTicketsByStatus` | Buckets a flat ticket array into ordered columns by status |
|
|
22
|
+
| `canonicalize` (internal) | Normalizes raw status strings to `TicketStatus`, including legacy `ACTION_REQUIRED → TECH_REQUIRED` mapping |
|
|
23
|
+
|
|
24
|
+
## Usage Example
|
|
25
|
+
|
|
26
|
+
```typescript
|
|
27
|
+
import { groupTicketsByStatus, columnFromTicketStatus } from './types'
|
|
28
|
+
|
|
29
|
+
// Group tickets into columns for the board
|
|
30
|
+
const columns = groupTicketsByStatus(tickets, [
|
|
31
|
+
'ACTIVE',
|
|
32
|
+
'TECH_REQUIRED',
|
|
33
|
+
'ON_HOLD',
|
|
34
|
+
'RESOLVED',
|
|
35
|
+
])
|
|
36
|
+
|
|
37
|
+
// Build a single column with custom label and loading state
|
|
38
|
+
const activeColumn = columnFromTicketStatus('ACTIVE', activeTickets, {
|
|
39
|
+
label: 'In Progress',
|
|
40
|
+
isLoadingMore: true,
|
|
41
|
+
total: 42,
|
|
42
|
+
})
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
> `canonicalize` handles legacy status values automatically — `ACTION_REQUIRED` from older API responses is silently mapped to `TECH_REQUIRED` before bucketing.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<!-- source-hash: a1e52401ac78c99d8f31dd0b7b35996a -->
|
|
2
|
+
Manages board column collapse state, supporting both persistent (localStorage) and in-memory storage modes depending on whether a `storageKey` is provided.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
- **`BoardCollapseMap`** — Type alias for `Record<string, boolean>` mapping column IDs to their collapsed state
|
|
7
|
+
- **`UseBoardCollapseReturn`** — Interface defining the hook's return shape
|
|
8
|
+
- **`useBoardCollapse(storageKey?)`** — Main hook that initializes collapse state either in localStorage (when `storageKey` is given) or in component memory
|
|
9
|
+
|
|
10
|
+
## Usage Example
|
|
11
|
+
|
|
12
|
+
```typescript
|
|
13
|
+
// Persistent collapse state (survives page refresh)
|
|
14
|
+
const { collapsed, toggle, setCollapsed } = useBoardCollapse('my-board-key')
|
|
15
|
+
|
|
16
|
+
// In-memory only (resets on unmount)
|
|
17
|
+
const { collapsed, toggle, setCollapsed } = useBoardCollapse()
|
|
18
|
+
|
|
19
|
+
// Toggle a column's collapsed state
|
|
20
|
+
toggle('column-id-123')
|
|
21
|
+
|
|
22
|
+
// Explicitly set a column's collapsed state
|
|
23
|
+
setCollapsed('column-id-123', true)
|
|
24
|
+
|
|
25
|
+
// Read current state
|
|
26
|
+
const isCollapsed = collapsed['column-id-123'] // boolean | undefined
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Behavior Notes
|
|
30
|
+
|
|
31
|
+
- When `storageKey` is provided, state is persisted via `useLocalStorage` and survives page reloads
|
|
32
|
+
- When omitted, state lives in React `useState` and is scoped to the component's lifecycle
|
|
33
|
+
- Both `toggle` and `setCollapsed` are memoized with `useCallback` to prevent unnecessary re-renders
|
|
34
|
+
- Uses a fallback key `__board_collapse_unused__` internally to satisfy the `useLocalStorage` hook's required argument when no `storageKey` is given
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
<!-- source-hash: ec818e1d65048d1eb76277abcc10c0b6 -->
|
|
2
|
+
Public API barrel file for the notifications module, re-exporting all components, hooks, context providers, and TypeScript types from their respective source files.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
| Export | Type | Source |
|
|
7
|
+
|--------|------|--------|
|
|
8
|
+
| `NotificationsProvider` | Component | `notifications-context` |
|
|
9
|
+
| `useNotifications` | Hook | `notifications-context` |
|
|
10
|
+
| `useOptionalNotifications` | Hook | `notifications-context` |
|
|
11
|
+
| `NotificationDrawer` | Component | `notification-drawer` |
|
|
12
|
+
| `NotificationTile` | Component | `notification-tile` |
|
|
13
|
+
| `Notification` | Type | `types` |
|
|
14
|
+
| `NotificationVariant` | Type | `types` |
|
|
15
|
+
| `AddNotificationInput` | Type | `types` |
|
|
16
|
+
|
|
17
|
+
## Usage Example
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
import {
|
|
21
|
+
NotificationsProvider,
|
|
22
|
+
useNotifications,
|
|
23
|
+
NotificationDrawer,
|
|
24
|
+
NotificationTile,
|
|
25
|
+
} from '@/notifications'
|
|
26
|
+
|
|
27
|
+
import type {
|
|
28
|
+
Notification,
|
|
29
|
+
NotificationVariant,
|
|
30
|
+
AddNotificationInput,
|
|
31
|
+
} from '@/notifications'
|
|
32
|
+
|
|
33
|
+
// Wrap your app with the provider
|
|
34
|
+
function App() {
|
|
35
|
+
return (
|
|
36
|
+
<NotificationsProvider>
|
|
37
|
+
<NotificationDrawer />
|
|
38
|
+
<MainContent />
|
|
39
|
+
</NotificationsProvider>
|
|
40
|
+
)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// Consume notifications in a child component
|
|
44
|
+
function MainContent() {
|
|
45
|
+
const { addNotification } = useNotifications()
|
|
46
|
+
|
|
47
|
+
const notify = () => {
|
|
48
|
+
const input: AddNotificationInput = {
|
|
49
|
+
variant: 'success' as NotificationVariant,
|
|
50
|
+
message: 'Operation completed successfully',
|
|
51
|
+
}
|
|
52
|
+
addNotification(input)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return <button onClick={notify}>Notify</button>
|
|
56
|
+
}
|
|
57
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<!-- source-hash: b78c3c40a3c3824dbca516563b5aef06 -->
|
|
2
|
+
A right-side drawer component that displays unread notifications, a "Complete All" action, a pop-up toggle, and a history navigation button — consuming context from `useOptionalNotifications`.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
| Export | Type | Description |
|
|
7
|
+
|--------|------|-------------|
|
|
8
|
+
| `NotificationDrawer` | Component | Main drawer shell; renders only when notifications context is available |
|
|
9
|
+
| `EmptyState` | Internal Component | Shown when there are no unread notifications |
|
|
10
|
+
| `ShowNotificationsToggleRow` | Internal Component | Switch to enable/disable pop-up notification banners |
|
|
11
|
+
| `NotificationsHistoryButton` | Internal Component | Outline button that navigates to notification history and closes the drawer |
|
|
12
|
+
| `NotificationDrawerProps` | Interface | `className` and optional `liveDurationMs` for tile animations |
|
|
13
|
+
|
|
14
|
+
## Usage Example
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import { NotificationDrawer } from './notification-drawer'
|
|
18
|
+
import { NotificationsProvider } from './notifications-context'
|
|
19
|
+
|
|
20
|
+
// Wrap your app (or layout) with the provider, then drop the drawer anywhere:
|
|
21
|
+
export function AppLayout({ children }: { children: React.ReactNode }) {
|
|
22
|
+
return (
|
|
23
|
+
<NotificationsProvider
|
|
24
|
+
notifications={notifications}
|
|
25
|
+
onHistoryClick={() => router.push('/notifications/history')}
|
|
26
|
+
>
|
|
27
|
+
{children}
|
|
28
|
+
<NotificationDrawer liveDurationMs={5000} />
|
|
29
|
+
</NotificationsProvider>
|
|
30
|
+
)
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
> **Note:** `NotificationDrawer` returns `null` when rendered outside a `NotificationsProvider`. Open/close state is fully managed through the context — use the `open`/`close` methods exposed by `useOptionalNotifications` to control visibility from elsewhere in the UI.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<!-- source-hash: bd12c42181c375131ca22d95cc9d9e24 -->
|
|
2
|
+
A self-contained notification tile component that renders a single notification with live/settled state management, auto-dismiss timing, and a progress bar animation.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
- **`NotificationTileProps`** — Interface defining the tile's configuration:
|
|
7
|
+
- `notification` — The `Notification` object to display
|
|
8
|
+
- `liveDurationMs` — Auto-settle duration in ms (default: `4000`)
|
|
9
|
+
- `onComplete` — Callback fired when the user marks the notification as done
|
|
10
|
+
- `onSettle` — Callback fired when the notification auto-dismisses or is manually closed
|
|
11
|
+
|
|
12
|
+
- **`NotificationTile`** — Main exported component that:
|
|
13
|
+
- Determines `isLive` state based on `read`, `settled`, and elapsed time since `createdAt`
|
|
14
|
+
- Uses a `useEffect` timer to auto-call `onSettle` after the remaining live duration
|
|
15
|
+
- Shows a dismiss (`XmarkIcon`) button while live, swapping to a complete (`CheckCircleIcon`) button once settled
|
|
16
|
+
- Renders a CSS progress bar (`toast-progress` animation) anchored to `liveDurationMs` with a negative `animationDelay` to account for already-elapsed time
|
|
17
|
+
|
|
18
|
+
## Usage Example
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
import { NotificationTile } from './notification-tile'
|
|
22
|
+
|
|
23
|
+
const notification = {
|
|
24
|
+
id: 'notif-1',
|
|
25
|
+
variant: 'success',
|
|
26
|
+
title: 'Ticket resolved',
|
|
27
|
+
description: 'Ticket #4821 has been closed.',
|
|
28
|
+
createdAt: Date.now(),
|
|
29
|
+
read: false,
|
|
30
|
+
settled: false,
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
<NotificationTile
|
|
34
|
+
notification={notification}
|
|
35
|
+
liveDurationMs={5000}
|
|
36
|
+
onComplete={(id) => markComplete(id)}
|
|
37
|
+
onSettle={(id) => settleNotification(id)}
|
|
38
|
+
/>
|
|
39
|
+
```
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
<!-- source-hash: c21d20125d1c832d1265f5a500b7053e -->
|
|
2
|
+
React context provider managing in-app notification state, including add, read, settle, remove, and panel open/close operations via a reducer pattern.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
### `NotificationsProvider`
|
|
7
|
+
Wraps your app (or a subtree) to supply notification state. Uses `useReducer` for immutable state transitions and `useCallback`/`useMemo` for stable references.
|
|
8
|
+
|
|
9
|
+
**Props:**
|
|
10
|
+
|
|
11
|
+
| Prop | Type | Default | Description |
|
|
12
|
+
|------|------|---------|-------------|
|
|
13
|
+
| `initialNotifications` | `Notification[]` | `[]` | Seed the store on mount |
|
|
14
|
+
| `maxNotifications` | `number` | `50` | Hard cap; oldest entries are trimmed |
|
|
15
|
+
| `defaultShowPopups` | `boolean` | `true` | Initial popup visibility |
|
|
16
|
+
| `onShowPopupsChange` | `(v: boolean) => void` | — | Callback on popup toggle |
|
|
17
|
+
| `onHistoryClick` | `() => void` | — | Callback for "view history" action |
|
|
18
|
+
|
|
19
|
+
### `useNotifications`
|
|
20
|
+
Primary hook — throws if called outside the provider.
|
|
21
|
+
|
|
22
|
+
### `useOptionalNotifications`
|
|
23
|
+
Safe hook — returns `null` instead of throwing; useful for components that optionally participate in the notification system.
|
|
24
|
+
|
|
25
|
+
### `reducer`
|
|
26
|
+
Pure state reducer handling: `add`, `markRead`, `markAllRead`, `markSettled`, `remove`, `clear`.
|
|
27
|
+
|
|
28
|
+
## Usage Example
|
|
29
|
+
|
|
30
|
+
```typescript
|
|
31
|
+
import { NotificationsProvider, useNotifications } from './notifications-context'
|
|
32
|
+
|
|
33
|
+
// 1. Wrap your app
|
|
34
|
+
export default function App() {
|
|
35
|
+
return (
|
|
36
|
+
<NotificationsProvider maxNotifications={100} defaultShowPopups={true}>
|
|
37
|
+
<Dashboard />
|
|
38
|
+
</NotificationsProvider>
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// 2. Consume in any child component
|
|
43
|
+
function Dashboard() {
|
|
44
|
+
const { addNotification, unreadCount, markAllRead, toggle } = useNotifications()
|
|
45
|
+
|
|
46
|
+
const notify = () =>
|
|
47
|
+
addNotification({
|
|
48
|
+
title: 'Ticket Updated',
|
|
49
|
+
description: 'Ticket #1042 was resolved by Mingo AI.',
|
|
50
|
+
color: 'success',
|
|
51
|
+
})
|
|
52
|
+
|
|
53
|
+
return (
|
|
54
|
+
<>
|
|
55
|
+
<button onClick={notify}>Trigger</button>
|
|
56
|
+
<button onClick={toggle}>Inbox ({unreadCount})</button>
|
|
57
|
+
<button onClick={markAllRead}>Mark all read</button>
|
|
58
|
+
</>
|
|
59
|
+
)
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Context Value Reference
|
|
64
|
+
|
|
65
|
+
| Method / Property | Description |
|
|
66
|
+
|---|---|
|
|
67
|
+
| `notifications` | Full ordered array, newest first |
|
|
68
|
+
| `unreadCount` | Derived count of unread items |
|
|
69
|
+
| `isOpen` | Panel open state |
|
|
70
|
+
| `addNotification(input)` | Adds entry, returns generated `id` |
|
|
71
|
+
| `markSettled(id)` | Marks a notification as acted upon (e.g. hides progress) |
|
|
72
|
+
| `open / close / toggle` | Control panel visibility |
|
|
73
|
+
| `setShowPopups(bool)` | Toggle toast popups globally |
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!-- source-hash: 30636d800aad270ef8c49d64c5fe172d -->
|
|
2
|
+
Defines TypeScript types for the notification system, including variant styles, notification shape, and input for creating new notifications.
|
|
3
|
+
|
|
4
|
+
## Key Components
|
|
5
|
+
|
|
6
|
+
| Export | Type | Description |
|
|
7
|
+
|--------|------|-------------|
|
|
8
|
+
| `NotificationVariant` | `type` | Union type for notification styles: `default`, `success`, `warning`, `error`, `info` |
|
|
9
|
+
| `Notification` | `interface` | Full notification object shape including metadata and state |
|
|
10
|
+
| `AddNotificationInput` | `type` | Partial input type for creating notifications, omitting auto-generated fields |
|
|
11
|
+
|
|
12
|
+
## Usage Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import type { Notification, AddNotificationInput, NotificationVariant } from './types'
|
|
16
|
+
|
|
17
|
+
// Creating a new notification input
|
|
18
|
+
const input: AddNotificationInput = {
|
|
19
|
+
variant: 'success',
|
|
20
|
+
title: 'Ticket Resolved',
|
|
21
|
+
description: 'Issue #1042 has been closed successfully.',
|
|
22
|
+
meta: { ticketId: '1042' }
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// Full notification object (after system assigns id, createdAt, etc.)
|
|
26
|
+
const notification: Notification = {
|
|
27
|
+
id: 'notif-abc123',
|
|
28
|
+
variant: 'error',
|
|
29
|
+
title: 'Connection Failed',
|
|
30
|
+
description: 'Unable to reach the RMM agent.',
|
|
31
|
+
createdAt: Date.now(),
|
|
32
|
+
read: false,
|
|
33
|
+
settled: false,
|
|
34
|
+
meta: { agentId: 'agent-007' }
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Using the variant type directly
|
|
38
|
+
const variant: NotificationVariant = 'warning'
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Notes
|
|
42
|
+
|
|
43
|
+
- `title` and `description` accept `ReactNode`, allowing rich content (strings, JSX elements).
|
|
44
|
+
- `AddNotificationInput` makes `id` and `createdAt` optional, allowing the system to auto-generate them.
|
|
45
|
+
- `meta` is an open-ended `Record<string, unknown>` for attaching arbitrary contextual data.
|
|
@@ -1,40 +1,32 @@
|
|
|
1
|
-
<!-- source-hash:
|
|
2
|
-
A
|
|
1
|
+
<!-- source-hash: 054b79bb04cd65f7f1ce6ca872c8e022 -->
|
|
2
|
+
A deprecated SVG icon component rendering a circular "about/info" (question mark) symbol.
|
|
3
3
|
|
|
4
4
|
## Key Components
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
- `className` - CSS classes for styling
|
|
11
|
-
- `color` - Fill color for the icon (default: 'white')
|
|
6
|
+
| Export | Type | Description |
|
|
7
|
+
|--------|------|-------------|
|
|
8
|
+
| `AboutIcon` | React Component | Renders a 24×24 SVG info/question mark icon |
|
|
9
|
+
| `AboutIconProps` | Interface | Props for controlling icon dimensions, styling, and color |
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
> **⚠️ Deprecated:** Use icons from `icons-v2-generated` instead.
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| Prop | Type | Default | Description |
|
|
16
|
+
|------|------|---------|-------------|
|
|
17
|
+
| `width` | `number` | `24` | SVG width in pixels |
|
|
18
|
+
| `height` | `number` | `24` | SVG height in pixels |
|
|
19
|
+
| `className` | `string` | `""` | CSS class for custom styling |
|
|
20
|
+
| `color` | `string` | `"white"` | Fill color for the icon path |
|
|
14
21
|
|
|
15
22
|
## Usage Example
|
|
16
23
|
|
|
17
24
|
```typescript
|
|
18
25
|
import { AboutIcon } from './about-icon';
|
|
19
26
|
|
|
20
|
-
//
|
|
27
|
+
// Default usage
|
|
21
28
|
<AboutIcon />
|
|
22
29
|
|
|
23
|
-
//
|
|
24
|
-
<AboutIcon
|
|
25
|
-
|
|
26
|
-
height={32}
|
|
27
|
-
color="#007bff"
|
|
28
|
-
className="hover:opacity-80"
|
|
29
|
-
/>
|
|
30
|
-
|
|
31
|
-
// Large blue icon for help section
|
|
32
|
-
<AboutIcon
|
|
33
|
-
width={48}
|
|
34
|
-
height={48}
|
|
35
|
-
color="#1e40af"
|
|
36
|
-
className="cursor-pointer transition-colors"
|
|
37
|
-
/>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
The icon uses a 24x24 viewBox and scales proportionally based on the provided width and height props, making it suitable for various UI contexts from navigation bars to help tooltips.
|
|
30
|
+
// Custom size and color
|
|
31
|
+
<AboutIcon width={32} height={32} color="#FFC008" className="ml-2" />
|
|
32
|
+
```
|
|
@@ -1,30 +1,28 @@
|
|
|
1
|
-
<!-- source-hash:
|
|
2
|
-
|
|
1
|
+
<!-- source-hash: 22c04bab85b8575100d749b55f72026c -->
|
|
2
|
+
Renders a customizable AI robot SVG icon as a React functional component.
|
|
3
3
|
|
|
4
4
|
## Key Components
|
|
5
5
|
|
|
6
|
-
-
|
|
7
|
-
-
|
|
8
|
-
|
|
6
|
+
- **`AiRobotIconProps`** — Interface accepting optional `className` (string) and `color` (string) props
|
|
7
|
+
- **`AiRobotIcon`** — Deprecated React FC rendering a 200×200 SVG robot icon with configurable stroke color
|
|
8
|
+
|
|
9
|
+
> ⚠️ **Deprecated:** Use icons from `icons-v2-generated` instead.
|
|
9
10
|
|
|
10
11
|
## Usage Example
|
|
11
12
|
|
|
12
13
|
```typescript
|
|
13
14
|
import { AiRobotIcon } from './ai-robot-icon'
|
|
14
15
|
|
|
15
|
-
//
|
|
16
|
+
// Default pink color
|
|
16
17
|
<AiRobotIcon />
|
|
17
18
|
|
|
18
|
-
// Custom
|
|
19
|
-
<AiRobotIcon
|
|
20
|
-
className="w-16 h-16 hover:opacity-80"
|
|
21
|
-
color="#00ff00"
|
|
22
|
-
/>
|
|
23
|
-
|
|
24
|
-
// In a button or interactive element
|
|
25
|
-
<button className="p-2 rounded-lg bg-gray-100">
|
|
26
|
-
<AiRobotIcon className="w-8 h-8" color="#333" />
|
|
27
|
-
</button>
|
|
19
|
+
// Custom color and class
|
|
20
|
+
<AiRobotIcon color="#FFC008" className="w-8 h-8" />
|
|
28
21
|
```
|
|
29
22
|
|
|
30
|
-
|
|
23
|
+
## Props
|
|
24
|
+
|
|
25
|
+
| Prop | Type | Default | Description |
|
|
26
|
+
|------|------|---------|-------------|
|
|
27
|
+
| `className` | `string` | `''` | CSS class applied to the `<svg>` element |
|
|
28
|
+
| `color` | `string` | `#f357bb` | Stroke color of the robot icon paths |
|
|
@@ -1,36 +1,29 @@
|
|
|
1
|
-
<!-- source-hash:
|
|
2
|
-
|
|
1
|
+
<!-- source-hash: ec4645ac7d5fe8499469ecd03cdd9e67 -->
|
|
2
|
+
Renders a Bash shell SVG icon as a React functional component. This component is **deprecated** and should be replaced with icons from the `icons-v2-generated` package.
|
|
3
3
|
|
|
4
4
|
## Key Components
|
|
5
5
|
|
|
6
|
-
-
|
|
7
|
-
|
|
8
|
-
- `className?: string` - CSS classes for styling
|
|
9
|
-
- `color?: string` - Fill color (default: 'white')
|
|
10
|
-
|
|
11
|
-
- **BashIcon** - Main React functional component that renders an SVG icon representing a Bash terminal or hashtag symbol
|
|
6
|
+
- **`BashIconProps`** — Interface defining optional props: `size`, `className`, and `color`
|
|
7
|
+
- **`BashIcon`** — Deprecated React FC that renders a 24×24 viewBox SVG representing the Bash shell icon
|
|
12
8
|
|
|
13
9
|
## Usage Example
|
|
14
10
|
|
|
15
11
|
```typescript
|
|
16
12
|
import { BashIcon } from './bash-icon'
|
|
17
13
|
|
|
18
|
-
//
|
|
14
|
+
// Default usage (16px, white)
|
|
19
15
|
<BashIcon />
|
|
20
16
|
|
|
21
|
-
//
|
|
22
|
-
<BashIcon
|
|
23
|
-
size={24}
|
|
24
|
-
color="#00ff00"
|
|
25
|
-
className="terminal-icon"
|
|
26
|
-
/>
|
|
27
|
-
|
|
28
|
-
// Large icon for headers
|
|
29
|
-
<BashIcon
|
|
30
|
-
size={32}
|
|
31
|
-
color="currentColor"
|
|
32
|
-
className="text-blue-500"
|
|
33
|
-
/>
|
|
17
|
+
// Custom size and color
|
|
18
|
+
<BashIcon size={24} color="#4CAF50" className="my-icon" />
|
|
34
19
|
```
|
|
35
20
|
|
|
36
|
-
|
|
21
|
+
> **⚠️ Deprecated:** Use icons from `icons-v2-generated` instead of this component.
|
|
22
|
+
|
|
23
|
+
## Default Props
|
|
24
|
+
|
|
25
|
+
| Prop | Default | Description |
|
|
26
|
+
|------|---------|-------------|
|
|
27
|
+
| `size` | `16` | Width and height in pixels |
|
|
28
|
+
| `color` | `"white"` | SVG fill color |
|
|
29
|
+
| `className` | `""` | Additional CSS classes |
|