@viswa-test/test-citation 0.0.229 → 0.0.230
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/README.md +284 -45
- package/dist/cjs/features/CognitiveCompare/CognitiveCompare.js +1 -1
- package/dist/cjs/features/CognitiveCompare/CognitiveComparehelpers.js +1 -1
- package/dist/cjs/features/CognitiveCompare/components/SectionAccordion.js +1 -1
- package/dist/cjs/features/CognitiveCompare/components/SubSectionAccordion.js +1 -1
- package/dist/cjs/features/CognitiveCompare/hooks/useCompareData.js +1 -1
- package/dist/cjs/features/CognitiveCompare/hooks/useLinesCalculator.js +1 -1
- package/dist/cjs/features/GptWebCitation/GptWebCitation.js +1 -1
- package/dist/cjs/features/GptWebCitation/GptWebCitation.module.css.js +1 -1
- package/dist/cjs/features/GptWebCitation/GptWebCitationImageCitation.js +1 -1
- package/dist/cjs/features/GptWebCitation/GptWebCitationImageFullScreenView.js +1 -1
- package/dist/cjs/features/GptWebCitation/GptWebCitationSkeleton.js +1 -1
- package/dist/cjs/features/GptWebCitation/types.js +2 -0
- package/dist/cjs/features/GptWebCitation/types.js.map +1 -0
- package/dist/cjs/features/GptWebCitation/utils/citationData.utils.js +1 -1
- package/dist/cjs/features/GptWebCitation/utils/fixedHeight.utils.js +2 -0
- package/dist/cjs/features/GptWebCitation/utils/fixedHeight.utils.js.map +1 -0
- package/dist/cjs/features/GptWebCitation/utils/styleOverrides.utils.js +2 -0
- package/dist/cjs/features/GptWebCitation/utils/styleOverrides.utils.js.map +1 -0
- package/dist/cjs/features/IngestionStatus/IngestionStatusComponent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/CustomPopover/CustomPopover.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/GapRiskSidebar.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/components/GapItem/GapItem.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/components/RiskCategorySection/RiskCategorySection.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/components/RiskSidebarCategorySection/RiskSidebarCategorySection.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/components/StoryNode/StoryNode.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/utils/buildStoryWithGap.js +1 -1
- package/dist/cjs/features/RequirementAI/components/GapRiskSidebar/utils/buildStoryWithRisk.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RecommendationBlock/RecommendationBlock.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RequirementAIWrapper/RequirementAIWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/Editor.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/Context/ContextMenu.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorContainer/EditorContainer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorPlaceholder/EditorPlaceholder.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/EditorToolbar.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/ToolbarButton/ToolbarButton.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/ToolbarDivider/ToolbarDivider.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/UndoRedo/UndoRedo.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/components/Icons/Icon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/constants/editorConfig.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/CommentPlugin/HTMLNode.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/DeleteNode.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.js +2 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/InitialHtml.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/InsertNode.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.js +2 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/LayoutPlugin.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.js +2 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.js +2 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.js +2 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/theme/theme.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/theme/theme.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/Editor/utils/getSelectedNode.js +1 -1
- package/dist/cjs/features/RequirementAI/components/RichTextEditor/RichTextEditor.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.js +2 -0
- package/dist/cjs/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.module.css.js +2 -0
- package/dist/cjs/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.module.css.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/AttachedContext.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/AttachedContext.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.js +2 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.module.css.js +2 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.module.css.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CitationAnchor.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CognitiveComponent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/CognitiveComponents/ResizableSplitPane.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/DeviationSummary.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/IterateComponent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.js +2 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/PopupDefaults.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/RedlineStatusCard.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/Popups/ToneToggle.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/TitleEditor/TitleEditor.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/UserStoryCard.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/UserStoryCard.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/UserStoryCard/icons/PdfViewerIcons.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/AIReasonAccordion.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/AiReasonMarkdownWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/AiReasoningCitation.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/AiReasoningCitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/BigEnoughComponent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/ai-reasoning/ScannedCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/AppmodCitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/AppmodCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/components/CodeLinkHandler.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/icons/AppmodIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/icons/ChatBubbleIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/appmod-citation/icons/SparkleIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/SearchWaveFromWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/WaveformCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/components/AudioCitationIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/components/AudioTimeLineSlider.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/components/SegmentByWordsViral.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/components/videoPlayer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/AudioLinesIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/MaximizeIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/MinimizeIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/PauseIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/PlayIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/PlaybackSpeedIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/icons/VideoIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/searchwaveform.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/store/autoplay.wavefrom.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/audio-citation/utils/word-segment-util.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/big-enough/BigEnoughCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/chat-citation/ChatCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/file-citation/DocumentCitationIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/file-citation/FileCitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/file-citation/FileCitationRender.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.js +2 -0
- package/dist/cjs/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.js +2 -0
- package/dist/cjs/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/citations/image-citation/ImageCitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/image-citation/ImageCitationIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/image-citation/ImageCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/rca-citation/RCACitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/rca-citation/RCACitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/readfile-citation/CustomFileIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/readfile-citation/ReadFileCitationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/readfile-citation/ReadFileCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/readfile-citation/icons/ExternalLinkIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/readfile-citation/icons/FileCodeIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/stormee-citation/StormeeCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/stormee-citation/StormeeContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/stormee-citation/components/GradientButton.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/stormee-citation/components/ProblemStatementCard.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/FullScreenIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/ImagePreviewDialog.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/WebCitation.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/WebCitationIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/WebCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/WebCitationWithImageContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/citations/web-citation/WebCitationWithImageRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/components/cra/PartialRequirementContent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/lsc-reason-gap/CustomChatCrRedirection.js +1 -1
- package/dist/cjs/features/RequirementAI/components/lsc-reason-gap/GapFilterBlock.js +1 -1
- package/dist/cjs/features/RequirementAI/components/lsc-reason-gap/GapFilterContentWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/lsc-reason-gap/GapFilterItem.js +1 -1
- package/dist/cjs/features/RequirementAI/components/lsc-reason-gap/gapFilterSvgs.js +1 -1
- package/dist/cjs/features/RequirementAI/components/segment/ExampleComponentWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/segment/Segment.js +1 -1
- package/dist/cjs/features/RequirementAI/components/segment/SegmentLoader.js +1 -1
- package/dist/cjs/features/RequirementAI/components/segment/SegmentWrapper.js +1 -1
- package/dist/cjs/features/RequirementAI/components/segment/segment-common.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/story-screen/BigEnoughPanel.js +1 -1
- package/dist/cjs/features/RequirementAI/components/story-screen/CompletionPanel.js +2 -0
- package/dist/cjs/features/RequirementAI/components/story-screen/CompletionPanel.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/story-screen/CompletionPanel.module.css.js +2 -0
- package/dist/cjs/features/RequirementAI/components/story-screen/CompletionPanel.module.css.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/story-screen/ReplaceLearnedTags.js +1 -1
- package/dist/cjs/features/RequirementAI/components/story-screen/StreamingScreenSidebar.js +1 -1
- package/dist/cjs/features/RequirementAI/components/story-screen/SubfeatureBlock.js +1 -1
- package/dist/cjs/features/RequirementAI/components/story-screen/UserStoryScreen.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalContext.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ApprovalBadge/ApprovalBadge.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ApprovalSidebar/ApprovalSidebar.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ApprovalSidebarItem/ApprovalSidebarItem.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ApprovalStatusBadge/ApprovalStatusBadge.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ContentBlock/ContentBlock.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.js +2 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.js +2 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.module.css.js +2 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.module.css.js.map +1 -0
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.js +1 -1
- package/dist/cjs/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.module.css.js +1 -1
- package/dist/cjs/features/RequirementAI/hooks/useApprovalStatus.js +1 -1
- package/dist/cjs/features/RequirementAI/hooks/useDiffEditReviewMode.js +1 -1
- package/dist/cjs/features/RequirementAI/hooks/useStreamContentHandler.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/AiGapIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/AiReasoningIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/BigEnoughIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/BookmarkIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/BrainRed.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/CDIcon.js +2 -0
- package/dist/cjs/features/RequirementAI/icons/CDIcon.js.map +1 -0
- package/dist/cjs/features/RequirementAI/icons/CheckIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/ChevronDownIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/ChevronUpIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/CognitiveDecision.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/Illustration.svg.js +2 -0
- package/dist/cjs/features/RequirementAI/icons/Illustration.svg.js.map +1 -0
- package/dist/cjs/features/RequirementAI/icons/MeetingHighlightsIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/MenuUnfoldIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/PencilIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/ReasoningBulbIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/RelevanceScoreIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/SidebarCloseIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/SidebarOpenIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/icons/TrashIcon.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/Accordian.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/AtomicButton.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/CitationAIConfidenceDisplay.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/CitationLoadingIndicator.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/CodeViewer.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/ExpandableOl.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/GeneratedCodeCitation.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/ReqAiCitationRenderer.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/UpdatedAnimationContent.js +1 -1
- package/dist/cjs/features/RequirementAI/shared/useMarkdownSearch.js +1 -1
- package/dist/cjs/features/RequirementAI/store/markdown-context.js +1 -1
- package/dist/cjs/features/RequirementAI/store/ref.context.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/css.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/diff-edit.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/helpers.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/json-helper.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/learned-tag.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/proccess-stream.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/user-story.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/userStoryAttachedContext.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/userstory-approval-transform.utils.js +1 -1
- package/dist/cjs/features/RequirementAI/utils/userstory-approval.utils.js +1 -1
- package/dist/cjs/features/RulebookCitations/RuleBookCitationApi.js +1 -1
- package/dist/cjs/features/RulebookCitations/RuleBookCitationWrapper.js +1 -1
- package/dist/cjs/features/UserStoryImport/UserStoryPicker.context.js +1 -1
- package/dist/cjs/features/UserStoryImport/UserStoryPicker.js +1 -1
- package/dist/cjs/features/UserStoryImport/UserStoryPicker.theme.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/BackNav.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/Badge.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/BrowseProjectsButton.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/CardGrid.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/CardProceedButton.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ContentArea.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/Footer.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/Header.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/NavRow.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ProceedButton.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ProjectCard.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ResizeHandle.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ScopeDropdown.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SearchInput.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SectionHeading.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/ShowMore.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/Sidebar.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SidebarFavoritesList.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SidebarProjectList.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SidebarSection.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SortDropdown.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/SplitLayout.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/Toolbar.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/TypeDropdown.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/UserStoryCard.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/UserStoryImportDialog.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/UserStoryScopeDropdown.js +1 -1
- package/dist/cjs/features/UserStoryImport/components/usePanelResize.js +1 -1
- package/dist/cjs/features/UserStoryImport/hooks/useFilteredItems.js +1 -1
- package/dist/cjs/features/UserStoryImport/hooks/useUSPData.js +1 -1
- package/dist/cjs/features/UserStoryImport/hooks/useUserStoryPickerState.js +1 -1
- package/dist/cjs/features/UserStoryImport/index.js +1 -1
- package/dist/cjs/features/UserStoryImport/lib/CustomTooltip.js +1 -1
- package/dist/cjs/features/UserStoryImport/lib/Tooltip.js +1 -1
- package/dist/cjs/features/UserStoryImport/lib/cn.js +1 -1
- package/dist/cjs/features/UserStoryImport/lib/dialog.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/service/redlineService.js +2 -0
- package/dist/cjs/service/redlineService.js.map +1 -0
- package/dist/features/CognitiveCompare/CognitiveCompare.js +1 -1
- package/dist/features/CognitiveCompare/CognitiveComparehelpers.js +1 -1
- package/dist/features/CognitiveCompare/components/SectionAccordion.js +1 -1
- package/dist/features/CognitiveCompare/components/SubSectionAccordion.js +1 -1
- package/dist/features/CognitiveCompare/hooks/useCompareData.js +1 -1
- package/dist/features/CognitiveCompare/hooks/useLinesCalculator.js +1 -1
- package/dist/features/GptWebCitation/GptWebCitation.js +1 -1
- package/dist/features/GptWebCitation/GptWebCitation.module.css.js +1 -1
- package/dist/features/GptWebCitation/GptWebCitationImageCitation.js +1 -1
- package/dist/features/GptWebCitation/GptWebCitationImageFullScreenView.js +1 -1
- package/dist/features/GptWebCitation/GptWebCitationSkeleton.js +1 -1
- package/dist/features/GptWebCitation/types.js +2 -0
- package/dist/features/GptWebCitation/types.js.map +1 -0
- package/dist/features/GptWebCitation/utils/citationData.utils.js +1 -1
- package/dist/features/GptWebCitation/utils/fixedHeight.utils.js +2 -0
- package/dist/features/GptWebCitation/utils/fixedHeight.utils.js.map +1 -0
- package/dist/features/GptWebCitation/utils/styleOverrides.utils.js +2 -0
- package/dist/features/GptWebCitation/utils/styleOverrides.utils.js.map +1 -0
- package/dist/features/IngestionStatus/IngestionStatusComponent.js +1 -1
- package/dist/features/RequirementAI/components/CustomPopover/CustomPopover.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/GapRiskSidebar.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/components/GapItem/GapItem.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/components/RiskCategorySection/RiskCategorySection.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/components/RiskSidebarCategorySection/RiskSidebarCategorySection.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/components/StoryNode/StoryNode.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/utils/buildStoryWithGap.js +1 -1
- package/dist/features/RequirementAI/components/GapRiskSidebar/utils/buildStoryWithRisk.js +1 -1
- package/dist/features/RequirementAI/components/RecommendationBlock/RecommendationBlock.js +1 -1
- package/dist/features/RequirementAI/components/RequirementAIWrapper/RequirementAIWrapper.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/Editor.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/Context/ContextMenu.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorContainer/EditorContainer.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorPlaceholder/EditorPlaceholder.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/EditorToolbar.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/ToolbarButton/ToolbarButton.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/ToolbarDivider/ToolbarDivider.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/EditorToolbar/components/UndoRedo/UndoRedo.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/components/Icons/Icon.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/constants/editorConfig.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/constants/objects.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/CommentPlugin/HTMLNode.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/DeleteNode.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.js +2 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.js.map +1 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/InitialHtml.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/InsertNode.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.js +2 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.js.map +1 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/LayoutPlugin.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.js +2 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.js.map +1 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.js +2 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.js.map +1 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.js +2 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.js.map +1 -0
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/theme/theme.css.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/theme/theme.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/Editor/utils/getSelectedNode.js +1 -1
- package/dist/features/RequirementAI/components/RichTextEditor/RichTextEditor.js +1 -1
- package/dist/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.js +2 -0
- package/dist/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.js.map +1 -0
- package/dist/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.module.css.js +2 -0
- package/dist/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.module.css.js.map +1 -0
- package/dist/features/RequirementAI/components/UserStoryCard/AttachedContext.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/AttachedContext.module.css.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.js +2 -0
- package/dist/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.js.map +1 -0
- package/dist/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.module.css.js +2 -0
- package/dist/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.module.css.js.map +1 -0
- package/dist/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CitationAnchor.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CognitiveComponent.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/CognitiveComponents/ResizableSplitPane.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/DeviationSummary.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/IterateComponent.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.js +2 -0
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.js.map +1 -0
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/PopupDefaults.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/RedlineStatusCard.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/Popups/ToneToggle.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/TitleEditor/TitleEditor.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/UserStoryCard.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/UserStoryCard.module.css.js +1 -1
- package/dist/features/RequirementAI/components/UserStoryCard/icons/PdfViewerIcons.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/AIReasonAccordion.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/AiReasonMarkdownWrapper.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/AiReasoningCitation.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/AiReasoningCitationContent.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/BigEnoughComponent.js +1 -1
- package/dist/features/RequirementAI/components/ai-reasoning/ScannedCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/AppmodCitationContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/AppmodCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/components/CodeLinkHandler.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/icons/AppmodIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/icons/ChatBubbleIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/icons/SparkleIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/appmod-citation/types.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/SearchWaveFromWrapper.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/WaveformCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/components/AudioCitationIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/components/AudioTimeLineSlider.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/components/SegmentByWordsViral.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/components/videoPlayer.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/AudioLinesIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/MaximizeIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/MinimizeIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/PauseIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/PlayIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/PlaybackSpeedIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/icons/VideoIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/searchwaveform.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/store/autoplay.wavefrom.js +1 -1
- package/dist/features/RequirementAI/components/citations/audio-citation/utils/word-segment-util.js +1 -1
- package/dist/features/RequirementAI/components/citations/big-enough/BigEnoughCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/chat-citation/ChatCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/file-citation/DocumentCitationIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/file-citation/FileCitationContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/file-citation/FileCitationRender.js +1 -1
- package/dist/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.js +2 -0
- package/dist/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.js.map +1 -0
- package/dist/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.js +2 -0
- package/dist/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.js.map +1 -0
- package/dist/features/RequirementAI/components/citations/image-citation/ImageCitationContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/image-citation/ImageCitationIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/image-citation/ImageCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/rca-citation/RCACitationContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/rca-citation/RCACitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/readfile-citation/CustomFileIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/readfile-citation/ReadFileCitationContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/readfile-citation/ReadFileCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/readfile-citation/icons/ExternalLinkIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/readfile-citation/icons/FileCodeIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/stormee-citation/StormeeCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/stormee-citation/StormeeContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/stormee-citation/components/GradientButton.js +1 -1
- package/dist/features/RequirementAI/components/citations/stormee-citation/components/ProblemStatementCard.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/FullScreenIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/ImagePreviewDialog.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/WebCitation.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/WebCitationIcon.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/WebCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/WebCitationWithImageContent.js +1 -1
- package/dist/features/RequirementAI/components/citations/web-citation/WebCitationWithImageRenderer.js +1 -1
- package/dist/features/RequirementAI/components/cra/PartialRequirementContent.js +1 -1
- package/dist/features/RequirementAI/components/lsc-reason-gap/CustomChatCrRedirection.js +1 -1
- package/dist/features/RequirementAI/components/lsc-reason-gap/GapFilterBlock.js +1 -1
- package/dist/features/RequirementAI/components/lsc-reason-gap/GapFilterContentWrapper.js +1 -1
- package/dist/features/RequirementAI/components/lsc-reason-gap/GapFilterItem.js +1 -1
- package/dist/features/RequirementAI/components/lsc-reason-gap/gapFilterSvgs.js +1 -1
- package/dist/features/RequirementAI/components/segment/ExampleComponentWrapper.js +1 -1
- package/dist/features/RequirementAI/components/segment/Segment.js +1 -1
- package/dist/features/RequirementAI/components/segment/SegmentLoader.js +1 -1
- package/dist/features/RequirementAI/components/segment/SegmentWrapper.js +1 -1
- package/dist/features/RequirementAI/components/segment/segment-common.css.js +1 -1
- package/dist/features/RequirementAI/components/story-screen/BigEnoughPanel.js +1 -1
- package/dist/features/RequirementAI/components/story-screen/CompletionPanel.js +2 -0
- package/dist/features/RequirementAI/components/story-screen/CompletionPanel.js.map +1 -0
- package/dist/features/RequirementAI/components/story-screen/CompletionPanel.module.css.js +2 -0
- package/dist/features/RequirementAI/components/story-screen/CompletionPanel.module.css.js.map +1 -0
- package/dist/features/RequirementAI/components/story-screen/ReplaceLearnedTags.js +1 -1
- package/dist/features/RequirementAI/components/story-screen/StreamingScreenSidebar.js +1 -1
- package/dist/features/RequirementAI/components/story-screen/SubfeatureBlock.js +1 -1
- package/dist/features/RequirementAI/components/story-screen/UserStoryScreen.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalContext.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.module.css.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ApprovalBadge/ApprovalBadge.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ApprovalSidebar/ApprovalSidebar.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ApprovalSidebarItem/ApprovalSidebarItem.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ApprovalStatusBadge/ApprovalStatusBadge.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ContentBlock/ContentBlock.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.js +1 -1
- package/dist/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.module.css.js +1 -1
- package/dist/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.js +1 -1
- package/dist/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.module.css.js +1 -1
- package/dist/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.js +2 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.js.map +1 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.js +2 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.js.map +1 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.module.css.js +2 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.module.css.js.map +1 -0
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.js +1 -1
- package/dist/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.module.css.js +1 -1
- package/dist/features/RequirementAI/hooks/useApprovalStatus.js +1 -1
- package/dist/features/RequirementAI/hooks/useDiffEditReviewMode.js +1 -1
- package/dist/features/RequirementAI/hooks/useStreamContentHandler.js +1 -1
- package/dist/features/RequirementAI/icons/AiGapIcon.js +1 -1
- package/dist/features/RequirementAI/icons/AiReasoningIcon.js +1 -1
- package/dist/features/RequirementAI/icons/BigEnoughIcon.js +1 -1
- package/dist/features/RequirementAI/icons/BookmarkIcon.js +1 -1
- package/dist/features/RequirementAI/icons/BrainRed.js +1 -1
- package/dist/features/RequirementAI/icons/CDIcon.js +2 -0
- package/dist/features/RequirementAI/icons/CDIcon.js.map +1 -0
- package/dist/features/RequirementAI/icons/CheckIcon.js +1 -1
- package/dist/features/RequirementAI/icons/ChevronDownIcon.js +1 -1
- package/dist/features/RequirementAI/icons/ChevronUpIcon.js +1 -1
- package/dist/features/RequirementAI/icons/CognitiveDecision.js +1 -1
- package/dist/features/RequirementAI/icons/Illustration.svg.js +2 -0
- package/dist/features/RequirementAI/icons/Illustration.svg.js.map +1 -0
- package/dist/features/RequirementAI/icons/MeetingHighlightsIcon.js +1 -1
- package/dist/features/RequirementAI/icons/MenuUnfoldIcon.js +1 -1
- package/dist/features/RequirementAI/icons/PencilIcon.js +1 -1
- package/dist/features/RequirementAI/icons/ReasoningBulbIcon.js +1 -1
- package/dist/features/RequirementAI/icons/RelevanceScoreIcon.js +1 -1
- package/dist/features/RequirementAI/icons/SidebarCloseIcon.js +1 -1
- package/dist/features/RequirementAI/icons/SidebarOpenIcon.js +1 -1
- package/dist/features/RequirementAI/icons/TrashIcon.js +1 -1
- package/dist/features/RequirementAI/shared/Accordian.js +1 -1
- package/dist/features/RequirementAI/shared/AtomicButton.js +1 -1
- package/dist/features/RequirementAI/shared/CitationAIConfidenceDisplay.js +1 -1
- package/dist/features/RequirementAI/shared/CitationLoadingIndicator.js +1 -1
- package/dist/features/RequirementAI/shared/CodeViewer.js +1 -1
- package/dist/features/RequirementAI/shared/ExpandableOl.js +1 -1
- package/dist/features/RequirementAI/shared/GeneratedCodeCitation.js +1 -1
- package/dist/features/RequirementAI/shared/ReqAiCitationRenderer.js +1 -1
- package/dist/features/RequirementAI/shared/UpdatedAnimationContent.js +1 -1
- package/dist/features/RequirementAI/shared/useMarkdownSearch.js +1 -1
- package/dist/features/RequirementAI/store/markdown-context.js +1 -1
- package/dist/features/RequirementAI/store/ref.context.js +1 -1
- package/dist/features/RequirementAI/utils/css.utils.js +1 -1
- package/dist/features/RequirementAI/utils/diff-edit.utils.js +1 -1
- package/dist/features/RequirementAI/utils/helpers.js +1 -1
- package/dist/features/RequirementAI/utils/json-helper.js +1 -1
- package/dist/features/RequirementAI/utils/learned-tag.utils.js +1 -1
- package/dist/features/RequirementAI/utils/proccess-stream.utils.js +1 -1
- package/dist/features/RequirementAI/utils/user-story.utils.js +1 -1
- package/dist/features/RequirementAI/utils/userStoryAttachedContext.utils.js +1 -1
- package/dist/features/RequirementAI/utils/userstory-approval-transform.utils.js +1 -1
- package/dist/features/RequirementAI/utils/userstory-approval.utils.js +1 -1
- package/dist/features/RulebookCitations/RuleBookCitationApi.js +1 -1
- package/dist/features/RulebookCitations/RuleBookCitationWrapper.js +1 -1
- package/dist/features/UserStoryImport/UserStoryPicker.context.js +1 -1
- package/dist/features/UserStoryImport/UserStoryPicker.js +1 -1
- package/dist/features/UserStoryImport/UserStoryPicker.theme.js +1 -1
- package/dist/features/UserStoryImport/components/BackNav.js +1 -1
- package/dist/features/UserStoryImport/components/Badge.js +1 -1
- package/dist/features/UserStoryImport/components/BrowseProjectsButton.js +1 -1
- package/dist/features/UserStoryImport/components/CardGrid.js +1 -1
- package/dist/features/UserStoryImport/components/CardProceedButton.js +1 -1
- package/dist/features/UserStoryImport/components/ContentArea.js +1 -1
- package/dist/features/UserStoryImport/components/Footer.js +1 -1
- package/dist/features/UserStoryImport/components/Header.js +1 -1
- package/dist/features/UserStoryImport/components/NavRow.js +1 -1
- package/dist/features/UserStoryImport/components/ProceedButton.js +1 -1
- package/dist/features/UserStoryImport/components/ProjectCard.js +1 -1
- package/dist/features/UserStoryImport/components/ResizeHandle.js +1 -1
- package/dist/features/UserStoryImport/components/ScopeDropdown.js +1 -1
- package/dist/features/UserStoryImport/components/SearchInput.js +1 -1
- package/dist/features/UserStoryImport/components/SectionHeading.js +1 -1
- package/dist/features/UserStoryImport/components/ShowMore.js +1 -1
- package/dist/features/UserStoryImport/components/Sidebar.js +1 -1
- package/dist/features/UserStoryImport/components/SidebarFavoritesList.js +1 -1
- package/dist/features/UserStoryImport/components/SidebarProjectList.js +1 -1
- package/dist/features/UserStoryImport/components/SidebarSection.js +1 -1
- package/dist/features/UserStoryImport/components/SortDropdown.js +1 -1
- package/dist/features/UserStoryImport/components/SplitLayout.js +1 -1
- package/dist/features/UserStoryImport/components/Toolbar.js +1 -1
- package/dist/features/UserStoryImport/components/TypeDropdown.js +1 -1
- package/dist/features/UserStoryImport/components/UserStoryCard.js +1 -1
- package/dist/features/UserStoryImport/components/UserStoryImportDialog.js +1 -1
- package/dist/features/UserStoryImport/components/UserStoryScopeDropdown.js +1 -1
- package/dist/features/UserStoryImport/components/usePanelResize.js +1 -1
- package/dist/features/UserStoryImport/hooks/useFilteredItems.js +1 -1
- package/dist/features/UserStoryImport/hooks/useUSPData.js +1 -1
- package/dist/features/UserStoryImport/hooks/useUserStoryPickerState.js +1 -1
- package/dist/features/UserStoryImport/index.js +1 -1
- package/dist/features/UserStoryImport/lib/CustomTooltip.js +1 -1
- package/dist/features/UserStoryImport/lib/Tooltip.js +1 -1
- package/dist/features/UserStoryImport/lib/cn.js +1 -1
- package/dist/features/UserStoryImport/lib/dialog.js +1 -1
- package/dist/index.js +1 -1
- package/dist/service/redlineService.js +2 -0
- package/dist/service/redlineService.js.map +1 -0
- package/dist/types/src/Background.d.ts +7 -0
- package/dist/types/src/Background.d.ts.map +1 -0
- package/dist/types/src/CognitiveCompareTest.d.ts.map +1 -1
- package/dist/types/src/DeviationSummaryTest.d.ts +2 -0
- package/dist/types/src/DeviationSummaryTest.d.ts.map +1 -0
- package/dist/types/src/RedlineEditorTest.d.ts +3 -0
- package/dist/types/src/RedlineEditorTest.d.ts.map +1 -0
- package/dist/types/src/RequirementAiTest.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/CognitiveCompare.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/CognitiveCompareTypes.d.ts +5 -0
- package/dist/types/src/features/CognitiveCompare/CognitiveCompareTypes.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/CognitiveComparehelpers.d.ts +9 -1
- package/dist/types/src/features/CognitiveCompare/CognitiveComparehelpers.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/components/SectionAccordion.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/components/SubSectionAccordion.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/hooks/useCompareData.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/hooks/useCompareLayout.d.ts +0 -1
- package/dist/types/src/features/CognitiveCompare/hooks/useCompareLayout.d.ts.map +1 -1
- package/dist/types/src/features/CognitiveCompare/hooks/useLinesCalculator.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitation.d.ts +10 -0
- package/dist/types/src/features/GptWebCitation/GptWebCitation.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationImageCitation.d.ts +9 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationImageCitation.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationImageFullScreenView.d.ts +3 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationImageFullScreenView.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationSkeleton.d.ts +12 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationSkeleton.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationTest.d.ts +1 -1
- package/dist/types/src/features/GptWebCitation/GptWebCitationTest.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/WebCitationSampleResponse.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/types.d.ts +313 -20
- package/dist/types/src/features/GptWebCitation/types.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/utils/citationData.utils.d.ts +2 -0
- package/dist/types/src/features/GptWebCitation/utils/citationData.utils.d.ts.map +1 -1
- package/dist/types/src/features/GptWebCitation/utils/fixedHeight.utils.d.ts +10 -0
- package/dist/types/src/features/GptWebCitation/utils/fixedHeight.utils.d.ts.map +1 -0
- package/dist/types/src/features/GptWebCitation/utils/styleOverrides.utils.d.ts +6 -0
- package/dist/types/src/features/GptWebCitation/utils/styleOverrides.utils.d.ts.map +1 -0
- package/dist/types/src/features/IngestionStatus/IngestionStatusComponent.d.ts +2 -0
- package/dist/types/src/features/IngestionStatus/IngestionStatusComponent.d.ts.map +1 -1
- package/dist/types/src/features/IngestionStatus/IngestionStatusComponentTest.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/GapRiskSidebar/components/StoryNode/StoryNode.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RequirementAIWrapper/RequirementAIWrapper.d.ts +156 -3
- package/dist/types/src/features/RequirementAI/components/RequirementAIWrapper/RequirementAIWrapper.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/Editor.d.ts +2 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/Editor.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/DeleteNode.d.ts +1 -4
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/DeleteNode.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.d.ts +44 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/HighlightNode.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/InitialHtml.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/InsertNode.d.ts +4 -3
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/InsertNode.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.d.ts +35 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/InvisibleNode.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.d.ts +25 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/ManualNode.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.d.ts +23 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/PreservedNode.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.d.ts +25 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/plugins/UpdateNode.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/theme/PlaygroundEditorTheme.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/Editor/theme/theme.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/RichTextEditor.d.ts +9 -1
- package/dist/types/src/features/RequirementAI/components/RichTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.d.ts +8 -0
- package/dist/types/src/features/RequirementAI/components/UnsavedChangesPopup/UnsavedChangesPopup.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.d.ts +29 -0
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/ClinicalTrialSection.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CognitiveComponent.d.ts +8 -3
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/CognitiveComponents/CognitiveComponent.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/DeviationSummary.d.ts +44 -4
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/DeviationSummary.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.d.ts +25 -0
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/ManualEditPopup.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/RedlineStatusCard.d.ts +17 -3
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/Popups/RedlineStatusCard.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/UserStoryCard.d.ts +35 -2
- package/dist/types/src/features/RequirementAI/components/UserStoryCard/UserStoryCard.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/ai-reasoning/AiReasonMarkdownWrapper.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.d.ts +12 -0
- package/dist/types/src/features/RequirementAI/components/citations/gpt-web-citation/GptWebCitationRenderer.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.d.ts +6 -0
- package/dist/types/src/features/RequirementAI/components/citations/gpt-web-citation/GptWebcitationPanel.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/cra/PartialRequirementContent.d.ts +1 -0
- package/dist/types/src/features/RequirementAI/components/cra/PartialRequirementContent.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/story-screen/CompletionPanel.d.ts +15 -0
- package/dist/types/src/features/RequirementAI/components/story-screen/CompletionPanel.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.d.ts +7 -1
- package/dist/types/src/features/RequirementAI/components/userstory-approval-screen/UserStoryApprovalScreen.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.d.ts +4 -1
- package/dist/types/src/features/RequirementAI/components/userstory-approval-screen/components/ContentSegment/ContentSegment.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.d.ts +14 -1
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/UserStoryWithCitation.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.d.ts +11 -0
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/HighlightButtonComponent.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.d.ts +10 -0
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/InlineManualComponent.d.ts.map +1 -0
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.d.ts +2 -1
- package/dist/types/src/features/RequirementAI/components/userstory-with-citation/components/InlineUpdatedComponent.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/icons/CDIcon.d.ts +4 -1
- package/dist/types/src/features/RequirementAI/icons/CDIcon.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/interfaces/citation.interface.d.ts +17 -2
- package/dist/types/src/features/RequirementAI/interfaces/citation.interface.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/interfaces/userstory.interface.d.ts +10 -0
- package/dist/types/src/features/RequirementAI/interfaces/userstory.interface.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/shared/UpdatedAnimationContent.d.ts +4 -1
- package/dist/types/src/features/RequirementAI/shared/UpdatedAnimationContent.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/types/aiReasoning.type.d.ts +22 -12
- package/dist/types/src/features/RequirementAI/types/aiReasoning.type.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/types/citation.type.d.ts +20 -0
- package/dist/types/src/features/RequirementAI/types/citation.type.d.ts.map +1 -1
- package/dist/types/src/features/RequirementAI/utils/userStoryAttachedContext.utils.d.ts.map +1 -1
- package/dist/types/src/features/RulebookCitations/RuleBookCitationApi.d.ts +2 -2
- package/dist/types/src/features/RulebookCitations/RuleBookCitationApi.d.ts.map +1 -1
- package/dist/types/src/features/RulebookCitations/RuleBookCitationWrapper.d.ts +1 -0
- package/dist/types/src/features/RulebookCitations/RuleBookCitationWrapper.d.ts.map +1 -1
- package/dist/types/src/features/RulebookCitations/RuleBookCitationWrapperTest.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/service/redlineService.d.ts +33 -0
- package/dist/types/src/service/redlineService.d.ts.map +1 -0
- package/package.json +10 -7
- package/dist/cjs/features/GptWebCitation/GptWebCitationMarkdown.js +0 -2
- package/dist/cjs/features/GptWebCitation/GptWebCitationMarkdown.js.map +0 -1
- package/dist/features/GptWebCitation/GptWebCitationMarkdown.js +0 -2
- package/dist/features/GptWebCitation/GptWebCitationMarkdown.js.map +0 -1
package/README.md
CHANGED
|
@@ -681,31 +681,68 @@ const reasoningData = {
|
|
|
681
681
|
|
|
682
682
|
`GptWebCitation` is a composite React component that wraps the GPT reasoning citation (`CognitiveInternalgptCoreComponent`) and adds an optional **Web Citation** view. Users can toggle between GPT and web-based citations without modifying the underlying GPT citation code.
|
|
683
683
|
|
|
684
|
-
In **GPT view**, the component renders the standard GPT citation panel with a **View Web Citation** button on the left and the document source link on the right (inside the GPT citation footer). In **Web Citation view**, it shows a
|
|
684
|
+
In **GPT view**, the component renders the standard GPT citation panel with a **View Web Citation** button on the left and the document source link on the right (inside the GPT citation footer). In **Web Citation view**, it shows a screenshot snapshot of the source page (when available), a relevance score badge, visit links, and a **View GPT Citation** toggle to switch back.
|
|
685
|
+
|
|
686
|
+
The component is **presentational** — it does not fetch web citations. The parent owns `webCitationData`, `webCitationStatus`, and view toggling via the required `citationType` prop.
|
|
687
|
+
|
|
688
|
+
### `CitationType`
|
|
689
|
+
|
|
690
|
+
Import from `@e-llm-studio/citation`:
|
|
691
|
+
|
|
692
|
+
```tsx
|
|
693
|
+
import { CitationType } from '@e-llm-studio/citation';
|
|
694
|
+
```
|
|
695
|
+
|
|
696
|
+
| Value | GPT view | Web view | Toggle | Default view |
|
|
697
|
+
| --- | --- | --- | --- | --- |
|
|
698
|
+
| `CitationType.GPT` | yes | no | no | GPT only |
|
|
699
|
+
| `CitationType.WEB` | no | yes | no | Web only |
|
|
700
|
+
| `CitationType.GPT_WEB` | yes | yes | yes | Web (uncontrolled) |
|
|
701
|
+
|
|
702
|
+
`citationType` is **required**. Use `CitationType.GPT_WEB` when users should switch between GPT reasoning and web screenshot citations.
|
|
685
703
|
|
|
686
704
|
### Features
|
|
687
705
|
|
|
688
706
|
- **Dual citation views** — Toggle between GPT reasoning and web-based citation
|
|
689
707
|
- **Non-invasive GPT integration** — Wraps `CognitiveInternalgptCoreComponent` via props; no changes to GPT citation code required
|
|
690
|
-
- **
|
|
691
|
-
- **
|
|
708
|
+
- **Screenshot web citations** — Renders `imageMetadata.signed_url` when the API returns a snapshot
|
|
709
|
+
- **Status-driven skeleton UI** — `"pending"` loading skeleton and `"error"` fallback with **Visit Link**
|
|
710
|
+
- **`defaultCitationUrl`** — Immediate visit link while fetch is in progress (before `highlightedUrl` arrives)
|
|
711
|
+
- **Visit link priority** — `highlightedUrl` from API response wins over `defaultCitationUrl` in pending/error states
|
|
692
712
|
- **Relevance score badge** — Auto-extracted from web citation content (e.g. "decision strength is 85%")
|
|
693
|
-
- **Loading skeleton** — Built-in loading state while web citation is being generated
|
|
694
713
|
- **Expand screenshot button** — Optional full-screen image view (`showExpandImageButton`)
|
|
714
|
+
- **Custom icons** — Override expand and external-link icons via `iconsConfig`
|
|
715
|
+
- **Fixed height mode** — Optional `isFixedHeight` keeps GPT and web panels the same size with contained screenshots
|
|
695
716
|
- **Style overrides** — Customize layout via the `styles` prop without editing component internals
|
|
696
717
|
|
|
697
718
|
### Installation / Import
|
|
698
719
|
|
|
699
720
|
```tsx
|
|
700
721
|
import GptWebCitation from '@e-llm-studio/citation/GptWebCitation';
|
|
722
|
+
|
|
723
|
+
// Optional utilities and types
|
|
724
|
+
import {
|
|
725
|
+
mapCitationDataToDisplay,
|
|
726
|
+
getWebCitationImageUrl,
|
|
727
|
+
resolveSkeletonVisitUrl,
|
|
728
|
+
type GptWebCitationStatus,
|
|
729
|
+
type IWebCitationApiResponse,
|
|
730
|
+
type IGptWebCitationStyleOverrides,
|
|
731
|
+
type IGptWebCitationImageStyles,
|
|
732
|
+
type IGptWebCitationSkeletonStyles,
|
|
733
|
+
type IGptWebCitationVisitLinkStyles,
|
|
734
|
+
type IGptWebCitationFullScreenStyles,
|
|
735
|
+
CitationType,
|
|
736
|
+
} from '@e-llm-studio/citation';
|
|
701
737
|
```
|
|
702
738
|
|
|
703
739
|
### Usage 1: Basic GPT + Web Citation Toggle
|
|
704
740
|
|
|
705
741
|
```tsx
|
|
706
742
|
import { useState } from 'react';
|
|
707
|
-
import { ChevronDown, ChevronUp, Maximize2, X } from 'lucide-react';
|
|
743
|
+
import { ChevronDown, ChevronUp, ExternalLink, Maximize2, X } from 'lucide-react';
|
|
708
744
|
import GptWebCitation from '@e-llm-studio/citation/GptWebCitation';
|
|
745
|
+
import { CitationType, type GptWebCitationStatus } from '@e-llm-studio/citation';
|
|
709
746
|
|
|
710
747
|
const gptCitation = {
|
|
711
748
|
item: {
|
|
@@ -727,31 +764,42 @@ const gptCitation = {
|
|
|
727
764
|
previewCallback: () => window.open('/preview/document'),
|
|
728
765
|
};
|
|
729
766
|
|
|
767
|
+
const webCitationIcons = {
|
|
768
|
+
MaximizeIcon: Maximize2,
|
|
769
|
+
ExternalLinkIcon: ExternalLink,
|
|
770
|
+
};
|
|
771
|
+
|
|
730
772
|
function CitationPanel() {
|
|
731
773
|
const [showWebCitation, setShowWebCitation] = useState(false);
|
|
732
774
|
const [webCitationData, setWebCitationData] = useState(undefined);
|
|
733
|
-
const [
|
|
775
|
+
const [webCitationStatus, setWebCitationStatus] =
|
|
776
|
+
useState<GptWebCitationStatus>('pending');
|
|
734
777
|
|
|
735
778
|
const handleGenerateWebCitation = async () => {
|
|
736
779
|
setShowWebCitation(true);
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
780
|
+
setWebCitationStatus('pending');
|
|
781
|
+
|
|
782
|
+
try {
|
|
783
|
+
const response = await fetch('/api/web-citation/generate');
|
|
784
|
+
const data = await response.json();
|
|
785
|
+
setWebCitationData(data);
|
|
786
|
+
setWebCitationStatus('success');
|
|
787
|
+
} catch {
|
|
788
|
+
setWebCitationStatus('error');
|
|
789
|
+
}
|
|
744
790
|
};
|
|
745
791
|
|
|
746
792
|
return (
|
|
747
793
|
<GptWebCitation
|
|
748
794
|
gptCitation={gptCitation}
|
|
749
|
-
|
|
795
|
+
defaultCitationUrl="https://example.com/article"
|
|
796
|
+
citationType={CitationType.GPT_WEB}
|
|
750
797
|
webCitationData={webCitationData}
|
|
798
|
+
webCitationStatus={webCitationStatus}
|
|
751
799
|
showWebCitation={showWebCitation}
|
|
752
|
-
isWebCitationLoading={isLoading}
|
|
753
800
|
onGenerateWebCitation={handleGenerateWebCitation}
|
|
754
801
|
onToggleCitationView={() => setShowWebCitation((prev) => !prev)}
|
|
802
|
+
iconsConfig={webCitationIcons}
|
|
755
803
|
/>
|
|
756
804
|
);
|
|
757
805
|
}
|
|
@@ -768,6 +816,8 @@ const webCitationData = {
|
|
|
768
816
|
'The decision strength is 85% because:<ol><li>The exact <a href="https://example.com/article">valuation of SpaceX</a> fluctuates between sources.</li></ol>',
|
|
769
817
|
citationType: 'web',
|
|
770
818
|
citationUrl: 'https://example.com/article',
|
|
819
|
+
highlightedUrl: 'https://example.com/article#highlight',
|
|
820
|
+
message: 'Citation processed successfully',
|
|
771
821
|
imageMetadata: {
|
|
772
822
|
signed_url: 'https://storage.example.com/image_citations/screenshot.png',
|
|
773
823
|
blob_path: 'image_citations/screenshot.png',
|
|
@@ -777,22 +827,48 @@ const webCitationData = {
|
|
|
777
827
|
|
|
778
828
|
<GptWebCitation
|
|
779
829
|
gptCitation={gptCitation}
|
|
780
|
-
|
|
830
|
+
defaultCitationUrl="https://example.com/article"
|
|
831
|
+
citationType={CitationType.GPT_WEB}
|
|
781
832
|
webCitationData={webCitationData}
|
|
833
|
+
webCitationStatus="success"
|
|
782
834
|
showWebCitation={true}
|
|
783
835
|
/>
|
|
784
836
|
```
|
|
785
837
|
|
|
786
|
-
When `imageMetadata.signed_url` is present
|
|
838
|
+
When `imageMetadata.signed_url` is present and `webCitationStatus` is `"success"`, the component renders a screenshot snapshot. If the image is unavailable or the fetch fails, an error skeleton is shown with a **Visit Link** (using `highlightedUrl` or `defaultCitationUrl`).
|
|
839
|
+
|
|
840
|
+
#### Visit link resolution
|
|
841
|
+
|
|
842
|
+
| UI state | Visit link source |
|
|
843
|
+
| --- | --- |
|
|
844
|
+
| Pending / error skeleton | `highlightedUrl` from `webCitationData` → else `defaultCitationUrl` prop |
|
|
845
|
+
| Screenshot footer (success) | `citationUrl` from `webCitationData` |
|
|
846
|
+
|
|
847
|
+
Use `resolveSkeletonVisitUrl(highlightedUrl, defaultCitationUrl)` from `@e-llm-studio/citation` if you need the same logic outside the component.
|
|
787
848
|
|
|
788
849
|
### Usage 3: GPT-Only Mode (No Web Citation)
|
|
789
850
|
|
|
790
|
-
Set `
|
|
851
|
+
Set `citationType={CitationType.GPT}` to render only the GPT citation with no toggle button. `defaultCitationUrl` is still required by the prop contract but is unused in GPT-only mode:
|
|
791
852
|
|
|
792
853
|
```tsx
|
|
793
854
|
<GptWebCitation
|
|
794
855
|
gptCitation={gptCitation}
|
|
795
|
-
|
|
856
|
+
defaultCitationUrl="https://example.com/article"
|
|
857
|
+
citationType={CitationType.GPT}
|
|
858
|
+
/>
|
|
859
|
+
```
|
|
860
|
+
|
|
861
|
+
### Usage 3b: Web-Only Mode (No GPT Citation)
|
|
862
|
+
|
|
863
|
+
Set `citationType={CitationType.WEB}` to render only the web citation panel with no toggle:
|
|
864
|
+
|
|
865
|
+
```tsx
|
|
866
|
+
<GptWebCitation
|
|
867
|
+
gptCitation={gptCitation}
|
|
868
|
+
defaultCitationUrl="https://example.com/article"
|
|
869
|
+
citationType={CitationType.WEB}
|
|
870
|
+
webCitationData={webCitationData}
|
|
871
|
+
webCitationStatus="success"
|
|
796
872
|
/>
|
|
797
873
|
```
|
|
798
874
|
|
|
@@ -803,8 +879,10 @@ Hide the web citation screenshot expand button:
|
|
|
803
879
|
```tsx
|
|
804
880
|
<GptWebCitation
|
|
805
881
|
gptCitation={gptCitation}
|
|
806
|
-
|
|
882
|
+
defaultCitationUrl="https://example.com/article"
|
|
883
|
+
citationType={CitationType.GPT_WEB}
|
|
807
884
|
webCitationData={webCitationData}
|
|
885
|
+
webCitationStatus="success"
|
|
808
886
|
showWebCitation={true}
|
|
809
887
|
showExpandImageButton={false}
|
|
810
888
|
/>
|
|
@@ -815,7 +893,8 @@ Hide the GPT citation header maximize/expand icon:
|
|
|
815
893
|
```tsx
|
|
816
894
|
<GptWebCitation
|
|
817
895
|
gptCitation={gptCitation}
|
|
818
|
-
|
|
896
|
+
defaultCitationUrl="https://example.com/article"
|
|
897
|
+
citationType={CitationType.GPT_WEB}
|
|
819
898
|
showGptMaximizeButton={false}
|
|
820
899
|
/>
|
|
821
900
|
```
|
|
@@ -824,7 +903,7 @@ You can also use `gptCitation.disableMaximize: true` directly on the GPT config.
|
|
|
824
903
|
|
|
825
904
|
### Usage 5: Custom Styling via Props (matched heights)
|
|
826
905
|
|
|
827
|
-
Layout, borders, and heights for **both GPT and web views** can be controlled from the parent without modifying component internals:
|
|
906
|
+
Layout, borders, and heights for **both GPT and web views** can be controlled from the parent without modifying component internals. Prefer **`isFixedHeight`** (Usage 6) when you only need equal panel size + contained screenshots; use `styles` when you need granular control over skeleton, image, visit-link, or full-screen elements:
|
|
828
907
|
|
|
829
908
|
```tsx
|
|
830
909
|
const sharedPanelHeight = '520px';
|
|
@@ -835,9 +914,15 @@ const sharedContentHeight = '384px';
|
|
|
835
914
|
...gptCitation,
|
|
836
915
|
bodyHeight: sharedContentHeight,
|
|
837
916
|
}}
|
|
838
|
-
|
|
917
|
+
defaultCitationUrl="https://example.com/article"
|
|
918
|
+
citationType={CitationType.GPT_WEB}
|
|
839
919
|
webCitationData={webCitationData}
|
|
920
|
+
webCitationStatus="success"
|
|
840
921
|
showGptMaximizeButton={true}
|
|
922
|
+
iconsConfig={{
|
|
923
|
+
MaximizeIcon: Maximize2,
|
|
924
|
+
ExternalLinkIcon: ExternalLink,
|
|
925
|
+
}}
|
|
841
926
|
styles={{
|
|
842
927
|
container: { maxWidth: 900 },
|
|
843
928
|
gptCitation: {
|
|
@@ -878,33 +963,143 @@ const sharedContentHeight = '384px';
|
|
|
878
963
|
| `gptCitation.footerAction` | GPT view | View Web Citation button row in footer |
|
|
879
964
|
| `gptCitation.toggleButton` | GPT view | View Web Citation button styles |
|
|
880
965
|
| `webCitation.panel` | Web view | Outer web citation card |
|
|
881
|
-
| `webCitation.header` | Web view | Source label +
|
|
882
|
-
| `webCitation.content` | Web view |
|
|
966
|
+
| `webCitation.header` | Web view | Source label + relevance score badge row |
|
|
967
|
+
| `webCitation.content` | Web view | Screenshot or loading/error skeleton |
|
|
883
968
|
| `webCitation.footer` | Web view | View GPT Citation + Learned From row |
|
|
884
969
|
| `webCitation.toggleButton` | Web view | View GPT Citation button styles |
|
|
885
970
|
| `webCitation.learnedFrom` | Web view | "Learned From …" text styles |
|
|
971
|
+
| `webCitation.visitLink.row` | Image + skeleton | Shared visit link row (merged with scoped overrides below) |
|
|
972
|
+
| `webCitation.visitLink.hint` | Image + skeleton | Shared visit link hint text |
|
|
973
|
+
| `webCitation.visitLink.link` | Image + skeleton | Shared visit link anchor styles |
|
|
974
|
+
| `webCitation.image.wrapper` | Screenshot view | Outer image citation wrapper |
|
|
975
|
+
| `webCitation.image.center` | Screenshot view | Center column (viewport or inline skeleton) |
|
|
976
|
+
| `webCitation.image.viewport` | Screenshot view | Viewport around scroll container |
|
|
977
|
+
| `webCitation.image.scrollContainer` | Screenshot view | Scrollable screenshot container |
|
|
978
|
+
| `webCitation.image.image` | Screenshot view | Screenshot `<img>` element |
|
|
979
|
+
| `webCitation.image.expandButton` | Screenshot view | Full-screen expand button |
|
|
980
|
+
| `webCitation.image.visitLink.*` | Screenshot footer | Image-specific visit link overrides (merged on top of `webCitation.visitLink`) |
|
|
981
|
+
| `webCitation.image.fullScreen.overlay` | Full-screen viewer | Portal overlay backdrop |
|
|
982
|
+
| `webCitation.image.fullScreen.content` | Full-screen viewer | Modal content card |
|
|
983
|
+
| `webCitation.image.fullScreen.closeButton` | Full-screen viewer | Close button |
|
|
984
|
+
| `webCitation.image.fullScreen.imageWrapper` | Full-screen viewer | Scrollable image wrapper |
|
|
985
|
+
| `webCitation.image.fullScreen.image` | Full-screen viewer | Full-screen `<img>` |
|
|
986
|
+
| `webCitation.skeleton.container` | Pending/error | Outer skeleton column |
|
|
987
|
+
| `webCitation.skeleton.frame` | Pending/error | Gray skeleton frame |
|
|
988
|
+
| `webCitation.skeleton.shimmer` | Pending | Shimmer animation overlay |
|
|
989
|
+
| `webCitation.skeleton.pending.content` | Pending | Centered pending content block |
|
|
990
|
+
| `webCitation.skeleton.pending.text` | Pending | Loading message text |
|
|
991
|
+
| `webCitation.skeleton.pending.actionRow` | Pending | Visit link row |
|
|
992
|
+
| `webCitation.skeleton.pending.actionHint` | Pending | "to view details" hint |
|
|
993
|
+
| `webCitation.skeleton.error.content` | Error | Error content block |
|
|
994
|
+
| `webCitation.skeleton.error.title` | Error | "No preview available" title |
|
|
995
|
+
| `webCitation.skeleton.error.message` | Error | Restriction message |
|
|
996
|
+
| `webCitation.skeleton.error.actionGroup` | Error | Action row wrapper |
|
|
997
|
+
| `webCitation.skeleton.error.detailsToggle` | Error | Error details expand button |
|
|
998
|
+
| `webCitation.skeleton.error.detailsMessage` | Error | Expanded error details text |
|
|
999
|
+
| `webCitation.skeleton.error.visitLinkGlow` | Error | Glowing visit link (merged on top of visit link styles) |
|
|
1000
|
+
| `webCitation.skeleton.visitLink.*` | Pending/error | Skeleton-specific visit link overrides (merged on top of `webCitation.visitLink`) |
|
|
886
1001
|
|
|
887
1002
|
Legacy flat keys (`gptCitationWrapper`, `footerAction`, `webCitationButton`) still work for backward compatibility.
|
|
888
1003
|
|
|
1004
|
+
#### Example: customize screenshot and pending skeleton
|
|
1005
|
+
|
|
1006
|
+
```tsx
|
|
1007
|
+
<GptWebCitation
|
|
1008
|
+
gptCitation={gptCitation}
|
|
1009
|
+
defaultCitationUrl="https://example.com/article"
|
|
1010
|
+
citationType={CitationType.GPT_WEB}
|
|
1011
|
+
webCitationData={data}
|
|
1012
|
+
webCitationStatus={status}
|
|
1013
|
+
styles={{
|
|
1014
|
+
webCitation: {
|
|
1015
|
+
visitLink: {
|
|
1016
|
+
link: { backgroundColor: 'rgba(37, 99, 235, 0.08)', borderRadius: 8 },
|
|
1017
|
+
},
|
|
1018
|
+
image: {
|
|
1019
|
+
scrollContainer: { borderRadius: 16, borderColor: '#d1d5db' },
|
|
1020
|
+
image: { objectFit: 'contain', maxHeight: 360 },
|
|
1021
|
+
expandButton: { backgroundColor: '#111827' },
|
|
1022
|
+
},
|
|
1023
|
+
skeleton: {
|
|
1024
|
+
frame: { minHeight: 320, backgroundColor: '#f8fafc' },
|
|
1025
|
+
pending: {
|
|
1026
|
+
text: { fontSize: 14, color: '#374151' },
|
|
1027
|
+
},
|
|
1028
|
+
error: {
|
|
1029
|
+
title: { color: '#dc2626' },
|
|
1030
|
+
visitLinkGlow: { borderColor: '#dc2626' },
|
|
1031
|
+
},
|
|
1032
|
+
},
|
|
1033
|
+
},
|
|
1034
|
+
}}
|
|
1035
|
+
/>
|
|
1036
|
+
```
|
|
1037
|
+
|
|
1038
|
+
### Usage 6: Fixed height mode (matched GPT + web panels)
|
|
1039
|
+
|
|
1040
|
+
Set `isFixedHeight={true}` when you want GPT and web citation views to share the same panel dimensions. Screenshots use `object-fit: contain` so tall pages stay inside the box without layout shift when toggling views.
|
|
1041
|
+
|
|
1042
|
+
```tsx
|
|
1043
|
+
<GptWebCitation
|
|
1044
|
+
gptCitation={{
|
|
1045
|
+
...gptCitation,
|
|
1046
|
+
bodyHeight: '384px', // optional — customizes inner content height
|
|
1047
|
+
}}
|
|
1048
|
+
defaultCitationUrl="https://example.com/article"
|
|
1049
|
+
citationType={CitationType.GPT_WEB}
|
|
1050
|
+
isFixedHeight
|
|
1051
|
+
webCitationData={webCitationData}
|
|
1052
|
+
webCitationStatus="success"
|
|
1053
|
+
showWebCitation={showWebCitation}
|
|
1054
|
+
onToggleCitationView={() => setShowWeb((v) => !v)}
|
|
1055
|
+
/>
|
|
1056
|
+
```
|
|
1057
|
+
|
|
1058
|
+
| Scenario | Panel height |
|
|
1059
|
+
| --- | --- |
|
|
1060
|
+
| `isFixedHeight` + `CitationType.GPT_WEB` (toggle footer present) | `520px` default, or `calc(bodyHeight + 3.25rem)` when `gptCitation.bodyHeight` is set |
|
|
1061
|
+
| `isFixedHeight` + `CitationType.GPT` or `CitationType.WEB` | `520px` default, or `gptCitation.bodyHeight` when set |
|
|
1062
|
+
|
|
1063
|
+
`isFixedHeight` applies flex layout and contained images automatically. For manual per-element styling without fixed dimensions, use `styles` (Usage 5) instead.
|
|
1064
|
+
|
|
889
1065
|
### Props
|
|
890
1066
|
|
|
891
1067
|
| Prop | Type | Default | Description |
|
|
892
1068
|
|------|------|---------|-------------|
|
|
893
|
-
| `gptCitation` | `IGptCitationConfig` | **required** | GPT citation config passed to `CognitiveInternalgptCoreComponent`
|
|
894
|
-
| `
|
|
895
|
-
| `
|
|
896
|
-
| `
|
|
897
|
-
| `
|
|
898
|
-
| `
|
|
1069
|
+
| `gptCitation` | `IGptCitationConfig` | **required** | GPT citation config passed to `CognitiveInternalgptCoreComponent` |
|
|
1070
|
+
| `defaultCitationUrl` | `string` | **required** | Fallback source URL for **Visit Link** in pending/error skeletons. Used when `webCitationData.highlightedUrl` is not yet available |
|
|
1071
|
+
| `citationType` | `CitationType` | **required** | `GPT` = GPT only, `WEB` = web only, `GPT_WEB` = both views with toggle (default web view when uncontrolled) |
|
|
1072
|
+
| `webCitationData` | `IWebCitationApiResponse` | — | Web citation API response (screenshot metadata, URLs, optional message) |
|
|
1073
|
+
| `webCitationStatus` | `"pending"` \| `"success"` \| `"error"` | inferred | Lifecycle status from parent API call. Inferred from `webCitationData` when omitted |
|
|
1074
|
+
| `showWebCitation` | `boolean` | web for `GPT_WEB` (uncontrolled) | Active view when `citationType` is `GPT_WEB`. Ignored for `GPT` / `WEB` |
|
|
1075
|
+
| `onGenerateWebCitation` | `() => void` | — | Called when the user clicks **View Web Citation** and no cached screenshot exists. Parent owns fetch lifecycle (when to call, deduplication, reset) |
|
|
899
1076
|
| `onToggleCitationView` | `() => void` | — | Called when user toggles between GPT and web views |
|
|
900
|
-
| `showExpandImageButton` | `boolean` | `true` | Show/hide
|
|
901
|
-
| `showGptMaximizeButton` | `boolean` | `true` | Show/hide
|
|
902
|
-
| `
|
|
1077
|
+
| `showExpandImageButton` | `boolean` | `true` | Show/hide full-screen expand on screenshot |
|
|
1078
|
+
| `showGptMaximizeButton` | `boolean` | `true` | Show/hide GPT header maximize icon (`gptCitation.disableMaximize: true` when `false`) |
|
|
1079
|
+
| `iconsConfig` | `IGptWebCitationImageIconsConfig` | — | `MaximizeIcon` and `ExternalLinkIcon` overrides for web view |
|
|
1080
|
+
| `topic` | `string` | auto | Override topic label in web header |
|
|
903
1081
|
| `sourceLabel` | `string` | auto | Override header source label in web view |
|
|
904
|
-
| `relevanceScore` | `number` | auto | Override relevance/decision strength
|
|
905
|
-
| `learnedFrom` | `string` | auto | Site name
|
|
1082
|
+
| `relevanceScore` | `number` | auto | Override relevance/decision strength badge (%) |
|
|
1083
|
+
| `learnedFrom` | `string` | auto | Site name in web footer (auto-derived from `citationUrl`) |
|
|
1084
|
+
| `sourceModel` | `string` | — | **Deprecated.** Use `sourceLabel` instead |
|
|
1085
|
+
| `isFixedHeight` | `boolean` | `false` | When `true`, GPT and web panels share the same fixed height/width; screenshot uses `object-fit: contain` |
|
|
906
1086
|
| `styles` | `IGptWebCitationStyleOverrides` | — | Style overrides for GPT and web citation views (see Usage 5) |
|
|
907
1087
|
|
|
1088
|
+
When `isFixedHeight` is `true`, both views use the same panel height (`520px` by default, or `gptCitation.bodyHeight` + toggle footer). Pair with `gptCitation.bodyHeight` to customize the content area (e.g. `"384px"`).
|
|
1089
|
+
|
|
1090
|
+
#### `webCitationStatus` inference
|
|
1091
|
+
|
|
1092
|
+
When `webCitationStatus` is omitted, the component derives it in this order:
|
|
1093
|
+
|
|
1094
|
+
| Priority | Condition | Status |
|
|
1095
|
+
| --- | --- | --- |
|
|
1096
|
+
| 1 | Valid screenshot URL in `webCitationData` (`signed_url` or `gs_uri`) | `"success"` (always — image wins over explicit status) |
|
|
1097
|
+
| 2 | Explicit `webCitationStatus` prop | uses prop value |
|
|
1098
|
+
| 3 | `webCitationData` present but no image URL | `"error"` |
|
|
1099
|
+
| 4 | No `webCitationData` | `"pending"` |
|
|
1100
|
+
|
|
1101
|
+
Pass `webCitationStatus="pending"` explicitly while your fetch is in flight (before the image URL is available).
|
|
1102
|
+
|
|
908
1103
|
### `IGptCitationConfig` (gptCitation prop)
|
|
909
1104
|
|
|
910
1105
|
| Field | Type | Description |
|
|
@@ -913,35 +1108,79 @@ Legacy flat keys (`gptCitationWrapper`, `footerAction`, `webCitationButton`) sti
|
|
|
913
1108
|
| `headerTitle` | `string` | Panel header title |
|
|
914
1109
|
| `index` | `number` | Citation index |
|
|
915
1110
|
| `iconsConfig` | `object` | Icon components (`ChevronDownIcon`, `ChevronUpIcon`, `MaximizeIcon`, `CloseIcon`) |
|
|
916
|
-
| `DocumentTitle` | `string` | Source document label shown in the GPT footer (right side) |
|
|
1111
|
+
| `DocumentTitle` | `string` | Source document label shown in the GPT footer (right side). Hidden when `citationType` is `GPT_WEB` or `WEB` |
|
|
917
1112
|
| `previewCallback` | `() => void` | Called when the source link is clicked |
|
|
918
|
-
| `bodyHeight` | `string` | Optional fixed GPT content body height (
|
|
1113
|
+
| `bodyHeight` | `string` | Optional fixed GPT content body height (pair with `styles.webCitation.content`) |
|
|
919
1114
|
| `disableMaximize` | `boolean` | Disable GPT header fullscreen maximize button (or use `showGptMaximizeButton={false}`) |
|
|
920
1115
|
|
|
1116
|
+
### `IGptWebCitationImageIconsConfig` (iconsConfig prop)
|
|
1117
|
+
|
|
1118
|
+
| Field | Type | Fallback |
|
|
1119
|
+
|-------|------|----------|
|
|
1120
|
+
| `MaximizeIcon` | `ElementType` | `gptCitation.iconsConfig.MaximizeIcon`, then `Maximize2` |
|
|
1121
|
+
| `ExternalLinkIcon` | `ElementType` | `ExternalLink` |
|
|
1122
|
+
|
|
1123
|
+
### Style override types (`styles` prop)
|
|
1124
|
+
|
|
1125
|
+
Nested under `styles.webCitation`:
|
|
1126
|
+
|
|
1127
|
+
| Type | Keys | Purpose |
|
|
1128
|
+
| --- | --- | --- |
|
|
1129
|
+
| `IGptWebCitationVisitLinkStyles` | `row`, `hint`, `link` | Visit link row shared by image footer and skeletons |
|
|
1130
|
+
| `IGptWebCitationImageStyles` | `wrapper`, `center`, `viewport`, `scrollContainer`, `image`, `expandButton`, `visitLink`, `fullScreen` | Screenshot view + inline loading skeleton while image decodes |
|
|
1131
|
+
| `IGptWebCitationSkeletonStyles` | `container`, `frame`, `shimmer`, `pending.*`, `error.*`, `visitLink` | Pending/error skeleton UI |
|
|
1132
|
+
| `IGptWebCitationFullScreenStyles` | `overlay`, `content`, `closeButton`, `imageWrapper`, `image` | Full-screen screenshot modal |
|
|
1133
|
+
|
|
1134
|
+
`webCitation.visitLink` merges with scoped `image.visitLink` or `skeleton.visitLink` overrides (scoped wins on conflict).
|
|
1135
|
+
|
|
921
1136
|
### `IWebCitationApiResponse` (webCitationData prop)
|
|
922
1137
|
|
|
923
1138
|
| Field | Type | Description |
|
|
924
1139
|
|-------|------|-------------|
|
|
925
1140
|
| `citationId` | `string` | Unique citation identifier |
|
|
926
|
-
| `content` | `string` | HTML/markdown
|
|
1141
|
+
| `content` | `string` | HTML/markdown explanation (used for topic/score extraction) |
|
|
927
1142
|
| `citationType` | `string` | Citation type (e.g. `"web"`) |
|
|
928
|
-
| `citationUrl` | `string` | Original source URL |
|
|
1143
|
+
| `citationUrl` | `string` | Original source URL (screenshot footer **Visit Link**) |
|
|
1144
|
+
| `highlightedUrl` | `string` | Highlighted URL from API (preferred for skeleton **Visit Link**) |
|
|
1145
|
+
| `message` | `string` | API status or error message |
|
|
929
1146
|
| `imageMetadata` | `object` | Image snapshot metadata |
|
|
930
|
-
| `imageMetadata.signed_url` | `string` | Signed URL for screenshot
|
|
1147
|
+
| `imageMetadata.signed_url` | `string` | Signed URL for screenshot (preferred) |
|
|
931
1148
|
| `imageMetadata.gs_uri` | `string` | GCS URI fallback for image |
|
|
932
1149
|
| `db` | `object` | Database metadata (`citation_id`, `blob_path`) |
|
|
933
1150
|
|
|
1151
|
+
### Utility helpers
|
|
1152
|
+
|
|
1153
|
+
Exported from `@e-llm-studio/citation`:
|
|
1154
|
+
|
|
1155
|
+
| Function | Purpose |
|
|
1156
|
+
| --- | --- |
|
|
1157
|
+
| `mapCitationDataToDisplay(data)` | Normalizes API response → display fields (`topic`, `highlightedUrl`, `relevanceScore`, etc.) |
|
|
1158
|
+
| `getWebCitationImageUrl(data)` | Resolves screenshot URL from `imageMetadata` |
|
|
1159
|
+
| `resolveSkeletonVisitUrl(highlightedUrl, defaultCitationUrl)` | Visit link for pending/error skeletons |
|
|
1160
|
+
| `extractTopicFromContent(content)` | First anchor text from content |
|
|
1161
|
+
| `extractRelevanceScoreFromContent(content)` | Parses decision strength / confidence % |
|
|
1162
|
+
| `extractLearnedFromUrl(citationUrl)` | Hostname → site name for footer |
|
|
1163
|
+
| `sanitizeExternalUrl(url)` | Safe http(s) URL for links |
|
|
1164
|
+
|
|
934
1165
|
### View Behavior
|
|
935
1166
|
|
|
936
1167
|
| State | What renders |
|
|
937
1168
|
|-------|--------------|
|
|
938
|
-
| `
|
|
939
|
-
| `
|
|
940
|
-
| `
|
|
1169
|
+
| `CitationType.GPT` | GPT citation only (no toggle) |
|
|
1170
|
+
| `CitationType.WEB` | Web citation only (no toggle) |
|
|
1171
|
+
| `CitationType.GPT_WEB`, `showWebCitation={false}` | GPT citation + **View Web Citation** button |
|
|
1172
|
+
| `CitationType.GPT_WEB`, `showWebCitation={true}`, `webCitationStatus="pending"` | Shimmer skeleton + optional **Visit Link** (`highlightedUrl` → `defaultCitationUrl`) |
|
|
1173
|
+
| `CitationType.GPT_WEB`, `showWebCitation={true}`, `webCitationStatus="success"` | Screenshot (pending skeleton while image loads) + footer **Visit Link** |
|
|
1174
|
+
| `CitationType.GPT_WEB`, `showWebCitation={true}`, `webCitationStatus="error"` | Error skeleton ("No preview available") + inline **Visit Link** |
|
|
1175
|
+
| `isFixedHeight={true}` | GPT and web outer panels share height; screenshot `object-fit: contain`; skeleton fills content area |
|
|
1176
|
+
|
|
1177
|
+
#### Error skeleton
|
|
1178
|
+
|
|
1179
|
+
The error state shows a fixed title ("No preview available"), a restriction message ("This website restricts external previews"), and an inline **Visit Link** when a source URL is available.
|
|
941
1180
|
|
|
942
1181
|
### Local Test Component
|
|
943
1182
|
|
|
944
|
-
A test harness is available at `src/features/GptWebCitation/GptWebCitationTest.tsx`. Run the citation dev server with `GptWebCitationTest` mounted in `src/index.tsx` to preview the component interactively.
|
|
1183
|
+
A test harness is available at `src/features/GptWebCitation/GptWebCitationTest.tsx`. Run the citation dev server with `GptWebCitationTest` mounted in `src/index.tsx` to preview the component interactively. The harness uses `sampleWebCitationApiResponse` from `WebCitationSampleResponse.ts`, simulates a 2s fetch delay when **View Web Citation** is clicked, and accepts `isFixedHeight`, `webCitationStatus`, `iconsConfig`, and `styles` props for local experimentation.
|
|
945
1184
|
|
|
946
1185
|
---
|
|
947
1186
|
|