@parhelia/core 0.3.12831 → 0.3.12833
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/emoji/EmojiPicker.d.ts +18 -0
- package/dist/components/emoji/EmojiPicker.js +102 -0
- package/dist/components/emoji/EmojiPicker.js.map +1 -0
- package/dist/components/emoji/EmojiText.d.ts +19 -0
- package/dist/components/emoji/EmojiText.js +30 -0
- package/dist/components/emoji/EmojiText.js.map +1 -0
- package/dist/components/emoji/emojiData.generated.d.ts +2 -0
- package/dist/components/emoji/emojiData.generated.js +1878 -0
- package/dist/components/emoji/emojiData.generated.js.map +1 -0
- package/dist/components/emoji/emojiIndex.d.ts +46 -0
- package/dist/components/emoji/emojiIndex.js +173 -0
- package/dist/components/emoji/emojiIndex.js.map +1 -0
- package/dist/components/emoji/emoticons.d.ts +21 -0
- package/dist/components/emoji/emoticons.js +167 -0
- package/dist/components/emoji/emoticons.js.map +1 -0
- package/dist/components/emoji/textareaInsert.d.ts +19 -0
- package/dist/components/emoji/textareaInsert.js +29 -0
- package/dist/components/emoji/textareaInsert.js.map +1 -0
- package/dist/components/emoji/twemoji.d.ts +30 -0
- package/dist/components/emoji/twemoji.js +84 -0
- package/dist/components/emoji/twemoji.js.map +1 -0
- package/dist/editor/agent-changes/agentChangeTargets.d.ts +58 -0
- package/dist/editor/agent-changes/agentChangeTargets.js +180 -0
- package/dist/editor/agent-changes/agentChangeTargets.js.map +1 -0
- package/dist/editor/agent-changes/agentChangeTextHighlight.d.ts +101 -0
- package/dist/editor/agent-changes/agentChangeTextHighlight.js +167 -0
- package/dist/editor/agent-changes/agentChangeTextHighlight.js.map +1 -0
- package/dist/editor/ai/AgentImagePreview.d.ts +13 -0
- package/dist/editor/ai/AgentImagePreview.js +41 -0
- package/dist/editor/ai/AgentImagePreview.js.map +1 -0
- package/dist/editor/ai/activityRowNavigation.d.ts +28 -0
- package/dist/editor/ai/activityRowNavigation.js +53 -0
- package/dist/editor/ai/activityRowNavigation.js.map +1 -0
- package/dist/editor/ai/terminal/activeReasoningModel.d.ts +9 -0
- package/dist/editor/ai/terminal/activeReasoningModel.js +20 -0
- package/dist/editor/ai/terminal/activeReasoningModel.js.map +1 -0
- package/dist/editor/ai/terminal/agentDurations.d.ts +27 -0
- package/dist/editor/ai/terminal/agentDurations.js +89 -0
- package/dist/editor/ai/terminal/agentDurations.js.map +1 -0
- package/dist/editor/ai/terminal/agentTurnTiming.d.ts +35 -0
- package/dist/editor/ai/terminal/agentTurnTiming.js +128 -0
- package/dist/editor/ai/terminal/agentTurnTiming.js.map +1 -0
- package/dist/editor/ai/terminal/components/AgentMemorySettingsSection.d.ts +9 -0
- package/dist/editor/ai/terminal/components/AgentMemorySettingsSection.js +75 -0
- package/dist/editor/ai/terminal/components/AgentMemorySettingsSection.js.map +1 -0
- package/dist/editor/ai/terminal/components/AgentProfileRecovery.d.ts +10 -0
- package/dist/editor/ai/terminal/components/AgentProfileRecovery.js +12 -0
- package/dist/editor/ai/terminal/components/AgentProfileRecovery.js.map +1 -0
- package/dist/editor/ai/terminal/components/CreateItemToolCallContent.d.ts +3 -0
- package/dist/editor/ai/terminal/components/CreateItemToolCallContent.js +47 -0
- package/dist/editor/ai/terminal/components/CreateItemToolCallContent.js.map +1 -0
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.d.ts +15 -0
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js +62 -0
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js.map +1 -0
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.d.ts +6 -0
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.js +61 -0
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.js.map +1 -0
- package/dist/editor/ai/terminal/components/toolCallResultJson.d.ts +1 -0
- package/dist/editor/ai/terminal/components/toolCallResultJson.js +46 -0
- package/dist/editor/ai/terminal/components/toolCallResultJson.js.map +1 -0
- package/dist/editor/ai/terminal/reasoningEffortLevels.d.ts +8 -0
- package/dist/editor/ai/terminal/reasoningEffortLevels.js +54 -0
- package/dist/editor/ai/terminal/reasoningEffortLevels.js.map +1 -0
- package/dist/editor/ai/terminal/requestUsage.d.ts +3 -0
- package/dist/editor/ai/terminal/requestUsage.js +22 -0
- package/dist/editor/ai/terminal/requestUsage.js.map +1 -0
- package/dist/editor/ai/terminal/toolCallDiagnostics.d.ts +34 -0
- package/dist/editor/ai/terminal/toolCallDiagnostics.js +218 -0
- package/dist/editor/ai/terminal/toolCallDiagnostics.js.map +1 -0
- package/dist/editor/ai/terminal/useAgentProviderWait.d.ts +18 -0
- package/dist/editor/ai/terminal/useAgentProviderWait.js +23 -0
- package/dist/editor/ai/terminal/useAgentProviderWait.js.map +1 -0
- package/dist/editor/ai/terminal/useAgentReasoningEffortState.d.ts +5 -0
- package/dist/editor/ai/terminal/useAgentReasoningEffortState.js +10 -0
- package/dist/editor/ai/terminal/useAgentReasoningEffortState.js.map +1 -0
- package/dist/editor/bridge/bridgeKeys.d.ts +5 -0
- package/dist/editor/bridge/bridgeKeys.js +8 -0
- package/dist/editor/bridge/bridgeKeys.js.map +1 -0
- package/dist/editor/bridge/linkDownload.d.ts +3 -0
- package/dist/editor/bridge/linkDownload.js +52 -0
- package/dist/editor/bridge/linkDownload.js.map +1 -0
- package/dist/editor/client/SessionsDialog.d.ts +2 -0
- package/dist/editor/client/SessionsDialog.js +27 -0
- package/dist/editor/client/SessionsDialog.js.map +1 -0
- package/dist/editor/client/agentLoadItemPolicy.d.ts +22 -0
- package/dist/editor/client/agentLoadItemPolicy.js +60 -0
- package/dist/editor/client/agentLoadItemPolicy.js.map +1 -0
- package/dist/editor/client/clipboardStorage.d.ts +10 -0
- package/dist/editor/client/clipboardStorage.js +57 -0
- package/dist/editor/client/clipboardStorage.js.map +1 -0
- package/dist/editor/client/hooks/useRepositoryItemRefresh.d.ts +4 -0
- package/dist/editor/client/hooks/useRepositoryItemRefresh.js +62 -0
- package/dist/editor/client/hooks/useRepositoryItemRefresh.js.map +1 -0
- package/dist/editor/client/liveEditState.d.ts +16 -0
- package/dist/editor/client/liveEditState.js +25 -0
- package/dist/editor/client/liveEditState.js.map +1 -0
- package/dist/editor/client/liveSessionState.d.ts +6 -0
- package/dist/editor/client/liveSessionState.js +20 -0
- package/dist/editor/client/liveSessionState.js.map +1 -0
- package/dist/editor/client/localUserEditActivity.d.ts +3 -0
- package/dist/editor/client/localUserEditActivity.js +12 -0
- package/dist/editor/client/localUserEditActivity.js.map +1 -0
- package/dist/editor/client/valueStore.d.ts +22 -0
- package/dist/editor/client/valueStore.js +29 -0
- package/dist/editor/client/valueStore.js.map +1 -0
- package/dist/editor/commands/componentClipboardCommands.d.ts +35 -0
- package/dist/editor/commands/componentClipboardCommands.js +271 -0
- package/dist/editor/commands/componentClipboardCommands.js.map +1 -0
- package/dist/editor/commands/componentMenuGroups.d.ts +2 -0
- package/dist/editor/commands/componentMenuGroups.js +43 -0
- package/dist/editor/commands/componentMenuGroups.js.map +1 -0
- package/dist/editor/commands/mediaCommands.d.ts +5 -0
- package/dist/editor/commands/mediaCommands.js +59 -0
- package/dist/editor/commands/mediaCommands.js.map +1 -0
- package/dist/editor/component-conversion/ComponentTypePickerDialog.d.ts +12 -0
- package/dist/editor/component-conversion/ComponentTypePickerDialog.js +40 -0
- package/dist/editor/component-conversion/ComponentTypePickerDialog.js.map +1 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.d.ts +17 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.js +80 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.js.map +1 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.d.ts +28 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.js +633 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.js.map +1 -0
- package/dist/editor/component-conversion/conversionModel.d.ts +109 -0
- package/dist/editor/component-conversion/conversionModel.js +519 -0
- package/dist/editor/component-conversion/conversionModel.js.map +1 -0
- package/dist/editor/component-conversion/conversionService.d.ts +12 -0
- package/dist/editor/component-conversion/conversionService.js +16 -0
- package/dist/editor/component-conversion/conversionService.js.map +1 -0
- package/dist/editor/component-conversion/conversionTypes.d.ts +214 -0
- package/dist/editor/component-conversion/conversionTypes.js +2 -0
- package/dist/editor/component-conversion/conversionTypes.js.map +1 -0
- package/dist/editor/component-conversion/convertComponentsCommand.d.ts +25 -0
- package/dist/editor/component-conversion/convertComponentsCommand.js +196 -0
- package/dist/editor/component-conversion/convertComponentsCommand.js.map +1 -0
- package/dist/editor/componentVisualMode.d.ts +14 -0
- package/dist/editor/componentVisualMode.js +43 -0
- package/dist/editor/componentVisualMode.js.map +1 -0
- package/dist/editor/field-types/FieldHistoryBoundary.d.ts +7 -0
- package/dist/editor/field-types/FieldHistoryBoundary.js +40 -0
- package/dist/editor/field-types/FieldHistoryBoundary.js.map +1 -0
- package/dist/editor/field-types/fieldStyles.d.ts +21 -0
- package/dist/editor/field-types/fieldStyles.js +22 -0
- package/dist/editor/field-types/fieldStyles.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/changeHighlight.d.ts +32 -0
- package/dist/editor/field-types/richtext/utils/changeHighlight.js +68 -0
- package/dist/editor/field-types/richtext/utils/changeHighlight.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/spellCheckText.d.ts +31 -0
- package/dist/editor/field-types/richtext/utils/spellCheckText.js +82 -0
- package/dist/editor/field-types/richtext/utils/spellCheckText.js.map +1 -0
- package/dist/editor/field-types/useFocusedFieldInput.d.ts +13 -0
- package/dist/editor/field-types/useFocusedFieldInput.js +50 -0
- package/dist/editor/field-types/useFocusedFieldInput.js.map +1 -0
- package/dist/editor/field-types/useFormFieldSelectionRange.d.ts +43 -0
- package/dist/editor/field-types/useFormFieldSelectionRange.js +149 -0
- package/dist/editor/field-types/useFormFieldSelectionRange.js.map +1 -0
- package/dist/editor/find-replace/FindReplacePanel.d.ts +11 -0
- package/dist/editor/find-replace/FindReplacePanel.js +311 -0
- package/dist/editor/find-replace/FindReplacePanel.js.map +1 -0
- package/dist/editor/find-replace/findReplaceCommand.d.ts +8 -0
- package/dist/editor/find-replace/findReplaceCommand.js +25 -0
- package/dist/editor/find-replace/findReplaceCommand.js.map +1 -0
- package/dist/editor/find-replace/findReplaceMatches.d.ts +42 -0
- package/dist/editor/find-replace/findReplaceMatches.js +66 -0
- package/dist/editor/find-replace/findReplaceMatches.js.map +1 -0
- package/dist/editor/find-replace/findReplaceStore.d.ts +30 -0
- package/dist/editor/find-replace/findReplaceStore.js +61 -0
- package/dist/editor/find-replace/findReplaceStore.js.map +1 -0
- package/dist/editor/find-replace/findReplaceTargets.d.ts +51 -0
- package/dist/editor/find-replace/findReplaceTargets.js +110 -0
- package/dist/editor/find-replace/findReplaceTargets.js.map +1 -0
- package/dist/editor/find-replace/findReplaceText.d.ts +50 -0
- package/dist/editor/find-replace/findReplaceText.js +189 -0
- package/dist/editor/find-replace/findReplaceText.js.map +1 -0
- package/dist/editor/itemContextMenuGroups.d.ts +16 -0
- package/dist/editor/itemContextMenuGroups.js +57 -0
- package/dist/editor/itemContextMenuGroups.js.map +1 -0
- package/dist/editor/media-selector/MediaDetailsView.d.ts +14 -0
- package/dist/editor/media-selector/MediaDetailsView.js +152 -0
- package/dist/editor/media-selector/MediaDetailsView.js.map +1 -0
- package/dist/editor/media-selector/UploadMediaFileDialog.d.ts +5 -0
- package/dist/editor/media-selector/UploadMediaFileDialog.js +14 -0
- package/dist/editor/media-selector/UploadMediaFileDialog.js.map +1 -0
- package/dist/editor/media-selector/useMediaFolderDrag.d.ts +26 -0
- package/dist/editor/media-selector/useMediaFolderDrag.js +153 -0
- package/dist/editor/media-selector/useMediaFolderDrag.js.map +1 -0
- package/dist/editor/menubar/OpenPublishedPageButton.d.ts +1 -0
- package/dist/editor/menubar/OpenPublishedPageButton.js +22 -0
- package/dist/editor/menubar/OpenPublishedPageButton.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.d.ts +11 -0
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.js +65 -0
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/FindReplaceControls.d.ts +6 -0
- package/dist/editor/menubar/toolbar-sections/FindReplaceControls.js +31 -0
- package/dist/editor/menubar/toolbar-sections/FindReplaceControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.d.ts +5 -0
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.js +16 -0
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.js.map +1 -0
- package/dist/editor/mobileBottomPanel.d.ts +40 -0
- package/dist/editor/mobileBottomPanel.js +63 -0
- package/dist/editor/mobileBottomPanel.js.map +1 -0
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.d.ts +17 -0
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.js +33 -0
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.d.ts +6 -0
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.js +100 -0
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.js.map +1 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.d.ts +9 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.js +32 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.js.map +1 -0
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.d.ts +14 -0
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.js +110 -0
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.js.map +1 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.d.ts +8 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.js +75 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.js.map +1 -0
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.d.ts +29 -0
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.js +295 -0
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.js.map +1 -0
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.d.ts +15 -0
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.js +31 -0
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.js.map +1 -0
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.d.ts +11 -0
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js +120 -0
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.d.ts +12 -0
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.js +197 -0
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.d.ts +11 -0
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.js +56 -0
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.js.map +1 -0
- package/dist/editor/page-editor-chrome/diffRulerSegments.d.ts +18 -0
- package/dist/editor/page-editor-chrome/diffRulerSegments.js +37 -0
- package/dist/editor/page-editor-chrome/diffRulerSegments.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.d.ts +44 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.js +89 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.d.ts +17 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.js +53 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.d.ts +11 -0
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.js +84 -0
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.d.ts +34 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.js +229 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.d.ts +9 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.js +34 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.d.ts +49 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.js +241 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-viewer/CanvasOverviewRuler.d.ts +11 -0
- package/dist/editor/page-viewer/CanvasOverviewRuler.js +65 -0
- package/dist/editor/page-viewer/CanvasOverviewRuler.js.map +1 -0
- package/dist/editor/page-viewer/DynamicRenderingsBar.d.ts +23 -0
- package/dist/editor/page-viewer/DynamicRenderingsBar.js +28 -0
- package/dist/editor/page-viewer/DynamicRenderingsBar.js.map +1 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.d.ts +18 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.js +29 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMargin.d.ts +57 -0
- package/dist/editor/page-viewer/FeedbackMargin.js +377 -0
- package/dist/editor/page-viewer/FeedbackMargin.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginController.d.ts +76 -0
- package/dist/editor/page-viewer/FeedbackMarginController.js +241 -0
- package/dist/editor/page-viewer/FeedbackMarginController.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.d.ts +16 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.js +24 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.d.ts +23 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.js +105 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.js.map +1 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.d.ts +24 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.js +31 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.js.map +1 -0
- package/dist/editor/page-viewer/MobileCommentsPanel.d.ts +16 -0
- package/dist/editor/page-viewer/MobileCommentsPanel.js +112 -0
- package/dist/editor/page-viewer/MobileCommentsPanel.js.map +1 -0
- package/dist/editor/page-viewer/PreviewModeNotice.d.ts +7 -0
- package/dist/editor/page-viewer/PreviewModeNotice.js +19 -0
- package/dist/editor/page-viewer/PreviewModeNotice.js.map +1 -0
- package/dist/editor/page-viewer/RenderingAiCheck.d.ts +18 -0
- package/dist/editor/page-viewer/RenderingAiCheck.js +45 -0
- package/dist/editor/page-viewer/RenderingAiCheck.js.map +1 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.d.ts +32 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.js +191 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.js.map +1 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.d.ts +17 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.js +38 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.js.map +1 -0
- package/dist/editor/page-viewer/canvasFrameNavigation.d.ts +18 -0
- package/dist/editor/page-viewer/canvasFrameNavigation.js +36 -0
- package/dist/editor/page-viewer/canvasFrameNavigation.js.map +1 -0
- package/dist/editor/page-viewer/canvasLoadSettling.d.ts +42 -0
- package/dist/editor/page-viewer/canvasLoadSettling.js +46 -0
- package/dist/editor/page-viewer/canvasLoadSettling.js.map +1 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.d.ts +34 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.js +55 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.js.map +1 -0
- package/dist/editor/page-viewer/compareFrameWidth.d.ts +8 -0
- package/dist/editor/page-viewer/compareFrameWidth.js +25 -0
- package/dist/editor/page-viewer/compareFrameWidth.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.d.ts +119 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.js +155 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginSources.d.ts +36 -0
- package/dist/editor/page-viewer/feedbackMarginSources.js +196 -0
- package/dist/editor/page-viewer/feedbackMarginSources.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.d.ts +43 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.js +107 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.js.map +1 -0
- package/dist/editor/page-viewer/interactivePreview.d.ts +168 -0
- package/dist/editor/page-viewer/interactivePreview.js +344 -0
- package/dist/editor/page-viewer/interactivePreview.js.map +1 -0
- package/dist/editor/page-viewer/minimapViewport.d.ts +2 -0
- package/dist/editor/page-viewer/minimapViewport.js +34 -0
- package/dist/editor/page-viewer/minimapViewport.js.map +1 -0
- package/dist/editor/page-viewer/openPageItems.d.ts +29 -0
- package/dist/editor/page-viewer/openPageItems.js +73 -0
- package/dist/editor/page-viewer/openPageItems.js.map +1 -0
- package/dist/editor/page-viewer/overviewRuler.d.ts +128 -0
- package/dist/editor/page-viewer/overviewRuler.js +226 -0
- package/dist/editor/page-viewer/overviewRuler.js.map +1 -0
- package/dist/editor/page-viewer/previewEditAttempt.d.ts +31 -0
- package/dist/editor/page-viewer/previewEditAttempt.js +68 -0
- package/dist/editor/page-viewer/previewEditAttempt.js.map +1 -0
- package/dist/editor/page-viewer/renderingApproval.d.ts +59 -0
- package/dist/editor/page-viewer/renderingApproval.js +186 -0
- package/dist/editor/page-viewer/renderingApproval.js.map +1 -0
- package/dist/editor/page-viewer/renderingChanges.d.ts +29 -0
- package/dist/editor/page-viewer/renderingChanges.js +40 -0
- package/dist/editor/page-viewer/renderingChanges.js.map +1 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.d.ts +23 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.js +26 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.js.map +1 -0
- package/dist/editor/page-viewer/useInteractivePreview.d.ts +77 -0
- package/dist/editor/page-viewer/useInteractivePreview.js +210 -0
- package/dist/editor/page-viewer/useInteractivePreview.js.map +1 -0
- package/dist/editor/reviews/CollapsibleText.d.ts +13 -0
- package/dist/editor/reviews/CollapsibleText.js +41 -0
- package/dist/editor/reviews/CollapsibleText.js.map +1 -0
- package/dist/editor/reviews/CommentImageAttachments.d.ts +12 -0
- package/dist/editor/reviews/CommentImageAttachments.js +19 -0
- package/dist/editor/reviews/CommentImageAttachments.js.map +1 -0
- package/dist/editor/reviews/CommentQuote.d.ts +13 -0
- package/dist/editor/reviews/CommentQuote.js +35 -0
- package/dist/editor/reviews/CommentQuote.js.map +1 -0
- package/dist/editor/reviews/CommentTargetOutline.d.ts +13 -0
- package/dist/editor/reviews/CommentTargetOutline.js +21 -0
- package/dist/editor/reviews/CommentTargetOutline.js.map +1 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.d.ts +7 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.js +117 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.js.map +1 -0
- package/dist/editor/reviews/CommentThreadAgentLink.d.ts +28 -0
- package/dist/editor/reviews/CommentThreadAgentLink.js +37 -0
- package/dist/editor/reviews/CommentThreadAgentLink.js.map +1 -0
- package/dist/editor/reviews/CommentThreadCard.d.ts +34 -0
- package/dist/editor/reviews/CommentThreadCard.js +156 -0
- package/dist/editor/reviews/CommentThreadCard.js.map +1 -0
- package/dist/editor/reviews/SuggestionThreadCard.d.ts +19 -0
- package/dist/editor/reviews/SuggestionThreadCard.js +25 -0
- package/dist/editor/reviews/SuggestionThreadCard.js.map +1 -0
- package/dist/editor/reviews/addCommentOnTarget.d.ts +22 -0
- package/dist/editor/reviews/addCommentOnTarget.js +32 -0
- package/dist/editor/reviews/addCommentOnTarget.js.map +1 -0
- package/dist/editor/reviews/balloonLayout.d.ts +51 -0
- package/dist/editor/reviews/balloonLayout.js +101 -0
- package/dist/editor/reviews/balloonLayout.js.map +1 -0
- package/dist/editor/reviews/commentAgentAttachments.d.ts +5 -0
- package/dist/editor/reviews/commentAgentAttachments.js +51 -0
- package/dist/editor/reviews/commentAgentAttachments.js.map +1 -0
- package/dist/editor/reviews/commentImages.d.ts +48 -0
- package/dist/editor/reviews/commentImages.js +128 -0
- package/dist/editor/reviews/commentImages.js.map +1 -0
- package/dist/editor/reviews/commentTargetPicker.d.ts +114 -0
- package/dist/editor/reviews/commentTargetPicker.js +153 -0
- package/dist/editor/reviews/commentTargetPicker.js.map +1 -0
- package/dist/editor/reviews/feedbackBalloonDate.d.ts +8 -0
- package/dist/editor/reviews/feedbackBalloonDate.js +22 -0
- package/dist/editor/reviews/feedbackBalloonDate.js.map +1 -0
- package/dist/editor/reviews/feedbackDrafts.d.ts +49 -0
- package/dist/editor/reviews/feedbackDrafts.js +74 -0
- package/dist/editor/reviews/feedbackDrafts.js.map +1 -0
- package/dist/editor/reviews/feedbackHoverState.d.ts +18 -0
- package/dist/editor/reviews/feedbackHoverState.js +35 -0
- package/dist/editor/reviews/feedbackHoverState.js.map +1 -0
- package/dist/editor/reviews/feedbackPersonFilter.d.ts +3 -0
- package/dist/editor/reviews/feedbackPersonFilter.js +32 -0
- package/dist/editor/reviews/feedbackPersonFilter.js.map +1 -0
- package/dist/editor/reviews/feedbackThreadSelection.d.ts +10 -0
- package/dist/editor/reviews/feedbackThreadSelection.js +31 -0
- package/dist/editor/reviews/feedbackThreadSelection.js.map +1 -0
- package/dist/editor/reviews/feedbackThreads.d.ts +50 -0
- package/dist/editor/reviews/feedbackThreads.js +135 -0
- package/dist/editor/reviews/feedbackThreads.js.map +1 -0
- package/dist/editor/reviews/feedbackWheelForwarding.d.ts +34 -0
- package/dist/editor/reviews/feedbackWheelForwarding.js +108 -0
- package/dist/editor/reviews/feedbackWheelForwarding.js.map +1 -0
- package/dist/editor/reviews/reviewUrlScope.d.ts +23 -0
- package/dist/editor/reviews/reviewUrlScope.js +86 -0
- package/dist/editor/reviews/reviewUrlScope.js.map +1 -0
- package/dist/editor/reviews/scrollWithin.d.ts +29 -0
- package/dist/editor/reviews/scrollWithin.js +87 -0
- package/dist/editor/reviews/scrollWithin.js.map +1 -0
- package/dist/editor/reviews/subtreeFeedback.d.ts +57 -0
- package/dist/editor/reviews/subtreeFeedback.js +137 -0
- package/dist/editor/reviews/subtreeFeedback.js.map +1 -0
- package/dist/editor/reviews/useCommentImagePaste.d.ts +80 -0
- package/dist/editor/reviews/useCommentImagePaste.js +252 -0
- package/dist/editor/reviews/useCommentImagePaste.js.map +1 -0
- package/dist/editor/reviews/useFeedbackThreads.d.ts +35 -0
- package/dist/editor/reviews/useFeedbackThreads.js +137 -0
- package/dist/editor/reviews/useFeedbackThreads.js.map +1 -0
- package/dist/editor/reviews/useMeasuredHeights.d.ts +25 -0
- package/dist/editor/reviews/useMeasuredHeights.js +176 -0
- package/dist/editor/reviews/useMeasuredHeights.js.map +1 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.d.ts +7 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.js +42 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.js.map +1 -0
- package/dist/editor/services/mcpAccessService.d.ts +93 -0
- package/dist/editor/services/mcpAccessService.js +41 -0
- package/dist/editor/services/mcpAccessService.js.map +1 -0
- package/dist/editor/services/migrationService.d.ts +31 -0
- package/dist/editor/services/migrationService.js +22 -0
- package/dist/editor/services/migrationService.js.map +1 -0
- package/dist/editor/services/previewTokenService.d.ts +14 -0
- package/dist/editor/services/previewTokenService.js +34 -0
- package/dist/editor/services/previewTokenService.js.map +1 -0
- package/dist/editor/services/publicSiteService.d.ts +40 -0
- package/dist/editor/services/publicSiteService.js +5 -0
- package/dist/editor/services/publicSiteService.js.map +1 -0
- package/dist/editor/services/renderingsService.d.ts +117 -0
- package/dist/editor/services/renderingsService.js +245 -0
- package/dist/editor/services/renderingsService.js.map +1 -0
- package/dist/editor/services/spellCheckService.d.ts +13 -0
- package/dist/editor/services/spellCheckService.js +33 -0
- package/dist/editor/services/spellCheckService.js.map +1 -0
- package/dist/editor/settings/MigrationJournalCard.d.ts +12 -0
- package/dist/editor/settings/MigrationJournalCard.js +114 -0
- package/dist/editor/settings/MigrationJournalCard.js.map +1 -0
- package/dist/editor/settings/panels/McpAccessPanel.d.ts +7 -0
- package/dist/editor/settings/panels/McpAccessPanel.js +95 -0
- package/dist/editor/settings/panels/McpAccessPanel.js.map +1 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.d.ts +8 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.js +221 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.js.map +1 -0
- package/dist/editor/settings/panels/PublicSiteEntryDialog.d.ts +8 -0
- package/dist/editor/settings/panels/PublicSiteEntryDialog.js +113 -0
- package/dist/editor/settings/panels/PublicSiteEntryDialog.js.map +1 -0
- package/dist/editor/settings/panels/PublicSitesPanel.d.ts +1 -0
- package/dist/editor/settings/panels/PublicSitesPanel.js +153 -0
- package/dist/editor/settings/panels/PublicSitesPanel.js.map +1 -0
- package/dist/editor/settings/panels/SpellCheckPanel.d.ts +8 -0
- package/dist/editor/settings/panels/SpellCheckPanel.js +253 -0
- package/dist/editor/settings/panels/SpellCheckPanel.js.map +1 -0
- package/dist/editor/settings/panels/publicSiteHelpers.d.ts +6 -0
- package/dist/editor/settings/panels/publicSiteHelpers.js +30 -0
- package/dist/editor/settings/panels/publicSiteHelpers.js.map +1 -0
- package/dist/editor/sidebar/FeedbackSidebar.d.ts +7 -0
- package/dist/editor/sidebar/FeedbackSidebar.js +300 -0
- package/dist/editor/sidebar/FeedbackSidebar.js.map +1 -0
- package/dist/editor/sidebar/OperationDetailsContent.d.ts +14 -0
- package/dist/editor/sidebar/OperationDetailsContent.js +571 -0
- package/dist/editor/sidebar/OperationDetailsContent.js.map +1 -0
- package/dist/editor/sidebar/liveComponentThumbnails.d.ts +66 -0
- package/dist/editor/sidebar/liveComponentThumbnails.js +225 -0
- package/dist/editor/sidebar/liveComponentThumbnails.js.map +1 -0
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.d.ts +30 -0
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.js +69 -0
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.js.map +1 -0
- package/dist/editor/spellcheck/htmlSpellDocument.d.ts +60 -0
- package/dist/editor/spellcheck/htmlSpellDocument.js +181 -0
- package/dist/editor/spellcheck/htmlSpellDocument.js.map +1 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.d.ts +45 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.js +277 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.js.map +1 -0
- package/dist/editor/spellcheck/replacementGuard.d.ts +27 -0
- package/dist/editor/spellcheck/replacementGuard.js +29 -0
- package/dist/editor/spellcheck/replacementGuard.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.d.ts +17 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.js +37 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.d.ts +71 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.js +126 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckClient.d.ts +66 -0
- package/dist/editor/spellcheck/spellCheckClient.js +0 -0
- package/dist/editor/spellcheck/spellCheckClient.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.d.ts +52 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.js +120 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckReplace.d.ts +8 -0
- package/dist/editor/spellcheck/spellCheckReplace.js +20 -0
- package/dist/editor/spellcheck/spellCheckReplace.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckStyles.d.ts +11 -0
- package/dist/editor/spellcheck/spellCheckStyles.js +12 -0
- package/dist/editor/spellcheck/spellCheckStyles.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckTypes.d.ts +94 -0
- package/dist/editor/spellcheck/spellCheckTypes.js +2 -0
- package/dist/editor/spellcheck/spellCheckTypes.js.map +1 -0
- package/dist/editor/spellcheck/textMarkHitTest.d.ts +14 -0
- package/dist/editor/spellcheck/textMarkHitTest.js +39 -0
- package/dist/editor/spellcheck/textMarkHitTest.js.map +1 -0
- package/dist/editor/spellcheck/useSpellCheck.d.ts +16 -0
- package/dist/editor/spellcheck/useSpellCheck.js +57 -0
- package/dist/editor/spellcheck/useSpellCheck.js.map +1 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.d.ts +14 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.js +40 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.js.map +1 -0
- package/dist/editor/ui/ParheliaMark.d.ts +15 -0
- package/dist/editor/ui/ParheliaMark.js +12 -0
- package/dist/editor/ui/ParheliaMark.js.map +1 -0
- package/dist/editor/ui/PublishReadinessSummary.d.ts +12 -0
- package/dist/editor/ui/PublishReadinessSummary.js +34 -0
- package/dist/editor/ui/PublishReadinessSummary.js.map +1 -0
- package/dist/editor/ui/RootItemPicker.d.ts +18 -0
- package/dist/editor/ui/RootItemPicker.js +112 -0
- package/dist/editor/ui/RootItemPicker.js.map +1 -0
- package/dist/editor/ui/publishReadiness.d.ts +98 -0
- package/dist/editor/ui/publishReadiness.js +307 -0
- package/dist/editor/ui/publishReadiness.js.map +1 -0
- package/dist/editor/ui/usePublishingItem.d.ts +8 -0
- package/dist/editor/ui/usePublishingItem.js +47 -0
- package/dist/editor/ui/usePublishingItem.js.map +1 -0
- package/dist/editor/undoEligibility.d.ts +2 -0
- package/dist/editor/undoEligibility.js +8 -0
- package/dist/editor/undoEligibility.js.map +1 -0
- package/dist/editor/utils/dataTransferImages.d.ts +7 -0
- package/dist/editor/utils/dataTransferImages.js +43 -0
- package/dist/editor/utils/dataTransferImages.js.map +1 -0
- package/dist/editor/utils/linkDisplay.d.ts +12 -0
- package/dist/editor/utils/linkDisplay.js +23 -0
- package/dist/editor/utils/linkDisplay.js.map +1 -0
- package/dist/editor/validation/ValidationIssuesPopover.d.ts +39 -0
- package/dist/editor/validation/ValidationIssuesPopover.js +51 -0
- package/dist/editor/validation/ValidationIssuesPopover.js.map +1 -0
- package/dist/editor/validation/navigateToValidationIssue.d.ts +13 -0
- package/dist/editor/validation/navigateToValidationIssue.js +43 -0
- package/dist/editor/validation/navigateToValidationIssue.js.map +1 -0
- package/dist/editor/validation/validationFixAgent.d.ts +26 -0
- package/dist/editor/validation/validationFixAgent.js +124 -0
- package/dist/editor/validation/validationFixAgent.js.map +1 -0
- package/dist/editor/validation/validationRulerIssues.d.ts +17 -0
- package/dist/editor/validation/validationRulerIssues.js +44 -0
- package/dist/editor/validation/validationRulerIssues.js.map +1 -0
- package/dist/editor/validation/validationSeverity.d.ts +15 -0
- package/dist/editor/validation/validationSeverity.js +47 -0
- package/dist/editor/validation/validationSeverity.js.map +1 -0
- package/dist/lib/viewportClip.d.ts +18 -0
- package/dist/lib/viewportClip.js +22 -0
- package/dist/lib/viewportClip.js.map +1 -0
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/task-board/components/AttentionPromptDialog.d.ts +13 -0
- package/dist/task-board/components/AttentionPromptDialog.js +45 -0
- package/dist/task-board/components/AttentionPromptDialog.js.map +1 -0
- package/dist/task-board/components/GoalFindingsTable.d.ts +43 -0
- package/dist/task-board/components/GoalFindingsTable.js +160 -0
- package/dist/task-board/components/GoalFindingsTable.js.map +1 -0
- package/dist/task-board/components/IssuePanel.d.ts +31 -0
- package/dist/task-board/components/IssuePanel.js +268 -0
- package/dist/task-board/components/IssuePanel.js.map +1 -0
- package/dist/task-board/components/ProjectProgressIndicator.d.ts +8 -0
- package/dist/task-board/components/ProjectProgressIndicator.js +17 -0
- package/dist/task-board/components/ProjectProgressIndicator.js.map +1 -0
- package/dist/task-board/components/SubgoalFindings.d.ts +40 -0
- package/dist/task-board/components/SubgoalFindings.js +88 -0
- package/dist/task-board/components/SubgoalFindings.js.map +1 -0
- package/dist/task-board/components/commentAuthor.d.ts +14 -0
- package/dist/task-board/components/commentAuthor.js +25 -0
- package/dist/task-board/components/commentAuthor.js.map +1 -0
- package/dist/task-board/services/issueService.d.ts +193 -0
- package/dist/task-board/services/issueService.js +97 -0
- package/dist/task-board/services/issueService.js.map +1 -0
- package/dist/task-board/taskBlockers.d.ts +10 -0
- package/dist/task-board/taskBlockers.js +66 -0
- package/dist/task-board/taskBlockers.js.map +1 -0
- package/dist/task-board/utils/projectDashboardModel.d.ts +68 -0
- package/dist/task-board/utils/projectDashboardModel.js +369 -0
- package/dist/task-board/utils/projectDashboardModel.js.map +1 -0
- package/dist/task-board/views/ProjectDashboardView.d.ts +28 -0
- package/dist/task-board/views/ProjectDashboardView.js +308 -0
- package/dist/task-board/views/ProjectDashboardView.js.map +1 -0
- package/dist/tour/TourInputBoundary.d.ts +6 -0
- package/dist/tour/TourInputBoundary.js +82 -0
- package/dist/tour/TourInputBoundary.js.map +1 -0
- package/dist/tour/sandbox-tour-copy.d.ts +8 -0
- package/dist/tour/sandbox-tour-copy.js +8 -0
- package/dist/tour/sandbox-tour-copy.js.map +1 -1
- package/dist/tour/sandbox-tour.d.ts +3 -0
- package/dist/tour/sandbox-tour.js +112 -6
- package/dist/tour/sandbox-tour.js.map +1 -1
- package/dist/tour/tour-utils.d.ts +6 -0
- package/dist/tour/tour-utils.js +10 -0
- package/dist/tour/tour-utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/editor/page-editor-chrome/bridgeLinkValue.d.ts +0 -10
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js +0 -55
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js.map +0 -1
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
export function isReadyToPublish(item) {
|
|
2
|
+
return item.isPublishable && !item.isPublished;
|
|
3
|
+
}
|
|
4
|
+
export function classifyPublishStatus(status) {
|
|
5
|
+
const normalized = status.trim().toLowerCase();
|
|
6
|
+
if (normalized === "published")
|
|
7
|
+
return { outcome: "published", impact: "none" };
|
|
8
|
+
if (normalized.startsWith("item is not yet published") ||
|
|
9
|
+
normalized.startsWith("language version is not yet published.")) {
|
|
10
|
+
return { outcome: "pending", impact: "never-published" };
|
|
11
|
+
}
|
|
12
|
+
if (normalized.startsWith("version is not yet published: currently published version:") ||
|
|
13
|
+
normalized.startsWith("version is not yet published. published revision:") ||
|
|
14
|
+
normalized.startsWith("published item has a different name:")) {
|
|
15
|
+
return { outcome: "pending", impact: "stale" };
|
|
16
|
+
}
|
|
17
|
+
if (normalized.startsWith("item has no valid version, but version")) {
|
|
18
|
+
return { outcome: "will-not-publish", impact: "stale" };
|
|
19
|
+
}
|
|
20
|
+
if (normalized.startsWith("this item has no valid version and will not be published.")) {
|
|
21
|
+
return { outcome: "will-not-publish", impact: "never-published" };
|
|
22
|
+
}
|
|
23
|
+
if (normalized.startsWith("this version is still published even though it is not the valid version.") ||
|
|
24
|
+
normalized.startsWith("this version will not be published. valid version is")) {
|
|
25
|
+
const match = status.match(/valid version is (\d+)/i);
|
|
26
|
+
return {
|
|
27
|
+
outcome: "will-not-publish",
|
|
28
|
+
impact: "other-version",
|
|
29
|
+
...(match ? { validVersion: Number(match[1]) } : {}),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return { outcome: "unknown", impact: "unknown" };
|
|
33
|
+
}
|
|
34
|
+
const matchStatus = (status, pattern) => status.trim().match(pattern);
|
|
35
|
+
/**
|
|
36
|
+
* Turns a canonical Sitecore publish status into a short badge label plus an
|
|
37
|
+
* optional detail line, so the table stays scannable and the specifics
|
|
38
|
+
* (published revision, currently published version, valid version, published
|
|
39
|
+
* name) move into a tooltip. Unknown statuses are shown verbatim.
|
|
40
|
+
*/
|
|
41
|
+
export function describePublishStatus(status) {
|
|
42
|
+
const normalized = status.trim().toLowerCase();
|
|
43
|
+
let match;
|
|
44
|
+
if (normalized === "published")
|
|
45
|
+
return { label: "Published" };
|
|
46
|
+
if (normalized === "item is not yet published")
|
|
47
|
+
return { label: "Not yet published" };
|
|
48
|
+
if (normalized === "language version is not yet published.")
|
|
49
|
+
return {
|
|
50
|
+
label: "Not yet published",
|
|
51
|
+
detail: "This language version has never been published.",
|
|
52
|
+
};
|
|
53
|
+
if ((match = matchStatus(status, /^version is not yet published: currently published version: (\d+)/i)))
|
|
54
|
+
return {
|
|
55
|
+
label: "Not yet published",
|
|
56
|
+
detail: `Version ${match[1]} is currently published.`,
|
|
57
|
+
};
|
|
58
|
+
if ((match = matchStatus(status, /^version is not yet published\. published revision: (\S+)/i)))
|
|
59
|
+
return {
|
|
60
|
+
label: "Changes not published",
|
|
61
|
+
detail: `An earlier revision of this version is live. Published revision: ${match[1]}`,
|
|
62
|
+
};
|
|
63
|
+
if ((match = matchStatus(status, /^published item has a different name: (.+)$/i)))
|
|
64
|
+
return {
|
|
65
|
+
label: "Name changed",
|
|
66
|
+
detail: `The published item is still named "${(match[1] ?? "").trim()}".`,
|
|
67
|
+
};
|
|
68
|
+
if ((match = matchStatus(status, /^item has no valid version, but version (\d+) is still published/i)))
|
|
69
|
+
return {
|
|
70
|
+
label: "No valid version",
|
|
71
|
+
detail: `Version ${match[1]} is still published. Check the publish restrictions.`,
|
|
72
|
+
};
|
|
73
|
+
if (normalized.startsWith("this item has no valid version and will not be published"))
|
|
74
|
+
return {
|
|
75
|
+
label: "Will not publish",
|
|
76
|
+
detail: "No valid version. Check the publish restrictions.",
|
|
77
|
+
};
|
|
78
|
+
if ((match = matchStatus(status, /^this version is still published even though it is not the valid version\. valid version is (\d+)/i)))
|
|
79
|
+
return {
|
|
80
|
+
label: "Not the valid version",
|
|
81
|
+
detail: `This version is still published, but version ${match[1]} is the valid version.`,
|
|
82
|
+
};
|
|
83
|
+
if ((match = matchStatus(status, /^this version will not be published\. valid version is (\d+)/i)))
|
|
84
|
+
return {
|
|
85
|
+
label: "Will not publish",
|
|
86
|
+
detail: `Version ${match[1]} is the valid version, not this one.`,
|
|
87
|
+
};
|
|
88
|
+
return { label: status.trim() };
|
|
89
|
+
}
|
|
90
|
+
function normalizeDescriptorId(id) {
|
|
91
|
+
return (id ?? "").replace(/[{}]/g, "").toLowerCase();
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Compares descriptors the way the workbox does: ids without braces and
|
|
95
|
+
* case-insensitive, languages case-insensitive. A version of 0/undefined means
|
|
96
|
+
* "latest" (the editor keeps the *requested* descriptor when an item is opened
|
|
97
|
+
* from the tree) and matches any concrete version of that item.
|
|
98
|
+
*/
|
|
99
|
+
export function isSameDescriptor(a, b) {
|
|
100
|
+
return (normalizeDescriptorId(a.id) === normalizeDescriptorId(b.id) &&
|
|
101
|
+
(a.language ?? "").toLowerCase() === (b.language ?? "").toLowerCase() &&
|
|
102
|
+
(!a.version || !b.version || a.version === b.version));
|
|
103
|
+
}
|
|
104
|
+
/** The workbox row for the item currently open in the editor, if listed. */
|
|
105
|
+
export function findCurrentWorkboxItem(workboxItems, currentItem) {
|
|
106
|
+
return currentItem
|
|
107
|
+
? workboxItems.find((item) => isSameDescriptor(item.item, currentItem))
|
|
108
|
+
: undefined;
|
|
109
|
+
}
|
|
110
|
+
const compareText = (left, right) => (left ?? "").localeCompare(right ?? "", undefined, {
|
|
111
|
+
sensitivity: "base",
|
|
112
|
+
numeric: true,
|
|
113
|
+
});
|
|
114
|
+
/**
|
|
115
|
+
* Display order for the Publish dialog: the current item stays first, then the
|
|
116
|
+
* related items grouped by template name and ordered by item path, so media,
|
|
117
|
+
* layouts and datasources cluster together instead of following the link
|
|
118
|
+
* database's order. Returns a new array; the input is left untouched.
|
|
119
|
+
*/
|
|
120
|
+
export function sortWorkboxItemsForPublish(workboxItems, currentItem) {
|
|
121
|
+
const isCurrent = (item) => !!currentItem && isSameDescriptor(item.item, currentItem);
|
|
122
|
+
return [...workboxItems].sort((left, right) => Number(isCurrent(right)) - Number(isCurrent(left)) ||
|
|
123
|
+
compareText(left.templateName, right.templateName) ||
|
|
124
|
+
compareText(left.path, right.path) ||
|
|
125
|
+
compareText(left.name, right.name) ||
|
|
126
|
+
compareText(left.item.language, right.item.language) ||
|
|
127
|
+
(left.item.version ?? 0) - (right.item.version ?? 0));
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Counts the validation issues that affect the listed workbox items. The
|
|
131
|
+
* server only reports failing validators, so every result is an issue; a
|
|
132
|
+
* page's entry also carries results for its embedded components, which are
|
|
133
|
+
* counted with the page.
|
|
134
|
+
*/
|
|
135
|
+
export function getPublishValidationSummary(workboxItems, validationResults) {
|
|
136
|
+
if (!validationResults?.length)
|
|
137
|
+
return { itemCount: 0, issueCount: 0 };
|
|
138
|
+
return workboxItems.reduce((summary, item) => {
|
|
139
|
+
const issueCount = validationResults
|
|
140
|
+
.filter((result) => isSameDescriptor(result.item, item.item))
|
|
141
|
+
.reduce((count, result) => count + result.results.length, 0);
|
|
142
|
+
return issueCount
|
|
143
|
+
? {
|
|
144
|
+
itemCount: summary.itemCount + 1,
|
|
145
|
+
issueCount: summary.issueCount + issueCount,
|
|
146
|
+
}
|
|
147
|
+
: summary;
|
|
148
|
+
}, { itemCount: 0, issueCount: 0 });
|
|
149
|
+
}
|
|
150
|
+
/** True when `path` lies strictly below `rootPath` (Sitecore paths are case-insensitive). */
|
|
151
|
+
export function isDescendantPath(path, rootPath) {
|
|
152
|
+
if (!path || !rootPath)
|
|
153
|
+
return false;
|
|
154
|
+
const root = rootPath.toLowerCase();
|
|
155
|
+
const prefix = root.endsWith("/") ? root : `${root}/`;
|
|
156
|
+
return path.toLowerCase() !== root && path.toLowerCase().startsWith(prefix);
|
|
157
|
+
}
|
|
158
|
+
const impactSeverity = {
|
|
159
|
+
none: 0,
|
|
160
|
+
unknown: 1,
|
|
161
|
+
"other-version": 2,
|
|
162
|
+
stale: 3,
|
|
163
|
+
"never-published": 4,
|
|
164
|
+
};
|
|
165
|
+
function getItemReadiness(item, blockedByWorkflow) {
|
|
166
|
+
const targets = Object.entries(item.publishStatus).map(([target, status]) => ({
|
|
167
|
+
target,
|
|
168
|
+
...classifyPublishStatus(status),
|
|
169
|
+
}));
|
|
170
|
+
const unpublished = targets.filter((target) => target.outcome !== "published");
|
|
171
|
+
const restricted = targets.filter((target) => target.outcome === "will-not-publish");
|
|
172
|
+
const worst = unpublished.reduce((result, target) => !result || impactSeverity[target.impact] > impactSeverity[result.impact]
|
|
173
|
+
? target
|
|
174
|
+
: result, undefined);
|
|
175
|
+
const restriction = restricted.reduce((result, target) => !result || impactSeverity[target.impact] > impactSeverity[result.impact]
|
|
176
|
+
? target
|
|
177
|
+
: result, undefined);
|
|
178
|
+
const reason = blockedByWorkflow
|
|
179
|
+
? { kind: "workflow", workflowState: item.workflowState }
|
|
180
|
+
: restriction
|
|
181
|
+
? restriction.impact === "other-version"
|
|
182
|
+
? { kind: "not-valid-version", validVersion: restriction.validVersion }
|
|
183
|
+
: { kind: "no-valid-version" }
|
|
184
|
+
: undefined;
|
|
185
|
+
return {
|
|
186
|
+
reason,
|
|
187
|
+
impact: worst?.impact ?? (targets.length ? "none" : "unknown"),
|
|
188
|
+
validVersion: worst?.validVersion,
|
|
189
|
+
affectedTargets: (blockedByWorkflow ? unpublished : restricted).map(({ target }) => target),
|
|
190
|
+
targetCount: targets.length,
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
export function getPublishReadiness({ workboxItems, currentItem, pagePath, includeSubitems, }) {
|
|
194
|
+
const coveredBySubitems = (item) => includeSubitems &&
|
|
195
|
+
(item.item.language || currentItem?.language) === currentItem?.language &&
|
|
196
|
+
isDescendantPath(item.path, pagePath);
|
|
197
|
+
// Preserve the existing batch even when a target warns: other targets may
|
|
198
|
+
// still need publishing, or Sitecore may publish the valid version instead.
|
|
199
|
+
const batchDescriptors = workboxItems
|
|
200
|
+
.filter(isReadyToPublish)
|
|
201
|
+
.filter((item) => !coveredBySubitems(item))
|
|
202
|
+
.map((item) => ({
|
|
203
|
+
...item.item,
|
|
204
|
+
language: item.item.language || currentItem?.language,
|
|
205
|
+
}))
|
|
206
|
+
.filter((descriptor) => !!descriptor.language &&
|
|
207
|
+
(!currentItem ||
|
|
208
|
+
!isSameDescriptor(descriptor, currentItem)));
|
|
209
|
+
const page = findCurrentWorkboxItem(workboxItems, currentItem);
|
|
210
|
+
const blockedByWorkflow = !!page?.workflowState && !page.isPublishable;
|
|
211
|
+
const currentPage = page
|
|
212
|
+
? {
|
|
213
|
+
item: page,
|
|
214
|
+
blockedByWorkflow,
|
|
215
|
+
...getItemReadiness(page, blockedByWorkflow),
|
|
216
|
+
}
|
|
217
|
+
: undefined;
|
|
218
|
+
const entries = workboxItems
|
|
219
|
+
.filter((item) => !currentItem || !isSameDescriptor(item.item, currentItem))
|
|
220
|
+
.map((item) => {
|
|
221
|
+
const details = getItemReadiness(item, !item.isPublishable);
|
|
222
|
+
const category = item.isPublished
|
|
223
|
+
? "already-published"
|
|
224
|
+
: !item.isPublishable
|
|
225
|
+
? "blocked-by-workflow"
|
|
226
|
+
: details.reason
|
|
227
|
+
? "will-not-publish"
|
|
228
|
+
: coveredBySubitems(item)
|
|
229
|
+
? "covered-by-subitems"
|
|
230
|
+
: "will-publish";
|
|
231
|
+
const descriptor = {
|
|
232
|
+
...item.item,
|
|
233
|
+
language: item.item.language || currentItem?.language,
|
|
234
|
+
};
|
|
235
|
+
return {
|
|
236
|
+
item,
|
|
237
|
+
// Matches WorkboxItemsTable's row key; a future Show action can use it.
|
|
238
|
+
key: [
|
|
239
|
+
item.item.id?.toLowerCase(),
|
|
240
|
+
item.item.language?.toLowerCase(),
|
|
241
|
+
item.item.version ?? 0,
|
|
242
|
+
item.item.database?.toLowerCase() ?? "",
|
|
243
|
+
].join("|"),
|
|
244
|
+
category,
|
|
245
|
+
inBatch: isReadyToPublish(item) &&
|
|
246
|
+
!coveredBySubitems(item) &&
|
|
247
|
+
!!descriptor.language &&
|
|
248
|
+
(!currentItem ||
|
|
249
|
+
!isSameDescriptor(descriptor, currentItem)),
|
|
250
|
+
...details,
|
|
251
|
+
};
|
|
252
|
+
});
|
|
253
|
+
return {
|
|
254
|
+
currentPage,
|
|
255
|
+
entries,
|
|
256
|
+
batchDescriptors,
|
|
257
|
+
leftBehind: entries.filter((entry) => entry.category === "blocked-by-workflow" ||
|
|
258
|
+
entry.category === "will-not-publish"),
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
export function getPublishReasonText(reason, affectedTargets, targetCount) {
|
|
262
|
+
const prefix = targetCount > 1 && affectedTargets.length
|
|
263
|
+
? `On ${affectedTargets.join(", ")}: `
|
|
264
|
+
: "";
|
|
265
|
+
switch (reason.kind) {
|
|
266
|
+
case "workflow":
|
|
267
|
+
return (prefix +
|
|
268
|
+
(reason.workflowState
|
|
269
|
+
? `In workflow state "${reason.workflowState}".`
|
|
270
|
+
: "Not in a final workflow state."));
|
|
271
|
+
case "no-valid-version":
|
|
272
|
+
return prefix + "No valid version. Check its publish restrictions.";
|
|
273
|
+
case "not-valid-version":
|
|
274
|
+
return (prefix +
|
|
275
|
+
(reason.validVersion !== undefined
|
|
276
|
+
? `Version ${reason.validVersion} is the valid version, not this one.`
|
|
277
|
+
: "Not the valid version."));
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
export function getPublishImpactText(impact, validVersion) {
|
|
281
|
+
switch (impact) {
|
|
282
|
+
case "never-published":
|
|
283
|
+
return "Visitors will see nothing for this item until it is published.";
|
|
284
|
+
case "stale":
|
|
285
|
+
return "Visitors will still see the previous version.";
|
|
286
|
+
case "other-version":
|
|
287
|
+
return validVersion !== undefined
|
|
288
|
+
? `Visitors will see version ${validVersion} instead.`
|
|
289
|
+
: "Visitors will see a different version.";
|
|
290
|
+
default:
|
|
291
|
+
return undefined;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
export function getPublishReadinessHeadline(readiness) {
|
|
295
|
+
const count = readiness.leftBehind.length;
|
|
296
|
+
const related = `${count} related item${count === 1 ? "" : "s"}`;
|
|
297
|
+
if (readiness.currentPage?.blockedByWorkflow)
|
|
298
|
+
return count
|
|
299
|
+
? `This page cannot be published yet, and ${related} cannot either.`
|
|
300
|
+
: "This page cannot be published yet.";
|
|
301
|
+
if (readiness.currentPage?.reason)
|
|
302
|
+
return count
|
|
303
|
+
? `This page will not go live as it is, and ${related} cannot publish.`
|
|
304
|
+
: "This page will not go live as it is.";
|
|
305
|
+
return count ? `This page can publish, but ${related} cannot.` : undefined;
|
|
306
|
+
}
|
|
307
|
+
//# sourceMappingURL=publishReadiness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publishReadiness.js","sourceRoot":"","sources":["../../../src/editor/ui/publishReadiness.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { FullItem } from "../pageModel";
|
|
2
|
+
/** Resolve the owner before showing publish options or allowing a publish. */
|
|
3
|
+
export declare function usePublishingItem(source: FullItem | undefined): {
|
|
4
|
+
item: FullItem | undefined;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
error: string | undefined;
|
|
7
|
+
isEmbedded: boolean;
|
|
8
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
import { useEditContext } from "../client/editContext";
|
|
3
|
+
/** Resolve the owner before showing publish options or allowing a publish. */
|
|
4
|
+
export function usePublishingItem(source) {
|
|
5
|
+
const editContext = useEditContext();
|
|
6
|
+
const repository = editContext?.itemsRepository;
|
|
7
|
+
const mainItemId = source?.mainItemId;
|
|
8
|
+
const isEmbedded = !!mainItemId &&
|
|
9
|
+
mainItemId.replace(/[{}]/g, "").toLowerCase() !==
|
|
10
|
+
source?.id.replace(/[{}]/g, "").toLowerCase();
|
|
11
|
+
const [resolved, setResolved] = useState();
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
if (!isEmbedded || !source || !repository)
|
|
14
|
+
return;
|
|
15
|
+
let cancelled = false;
|
|
16
|
+
repository
|
|
17
|
+
.getItem({ ...source.descriptor, id: mainItemId })
|
|
18
|
+
.then((item) => {
|
|
19
|
+
if (!cancelled)
|
|
20
|
+
setResolved({
|
|
21
|
+
source,
|
|
22
|
+
item,
|
|
23
|
+
error: item
|
|
24
|
+
? undefined
|
|
25
|
+
: "Failed to load the main item for publishing.",
|
|
26
|
+
});
|
|
27
|
+
})
|
|
28
|
+
.catch(() => {
|
|
29
|
+
if (!cancelled)
|
|
30
|
+
setResolved({
|
|
31
|
+
source,
|
|
32
|
+
error: "Failed to load the main item for publishing.",
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
return () => {
|
|
36
|
+
cancelled = true;
|
|
37
|
+
};
|
|
38
|
+
}, [isEmbedded, source, mainItemId, repository]);
|
|
39
|
+
const current = resolved?.source === source ? resolved : undefined;
|
|
40
|
+
return {
|
|
41
|
+
item: isEmbedded ? current?.item : source,
|
|
42
|
+
isLoading: isEmbedded && !current,
|
|
43
|
+
error: isEmbedded ? current?.error : undefined,
|
|
44
|
+
isEmbedded,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=usePublishingItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePublishingItem.js","sourceRoot":"","sources":["../../../src/editor/ui/usePublishingItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,MAA4B;IAC5D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,WAAW,EAAE,eAAe,CAAC;IAChD,MAAM,UAAU,GAAG,MAAM,EAAE,UAAU,CAAC;IACtC,MAAM,UAAU,GACd,CAAC,CAAC,UAAU;QACZ,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE;YAC3C,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAIpC,CAAC;IAEL,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU;YAAE,OAAO;QAClD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,UAAU;aACP,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,UAAW,EAAE,CAAC;aAClD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,IAAI,CAAC,SAAS;gBACZ,WAAW,CAAC;oBACV,MAAM;oBACN,IAAI;oBACJ,KAAK,EAAE,IAAI;wBACT,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,8CAA8C;iBACnD,CAAC,CAAC;QACP,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,SAAS;gBACZ,WAAW,CAAC;oBACV,MAAM;oBACN,KAAK,EAAE,8CAA8C;iBACtD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM;QACzC,SAAS,EAAE,UAAU,IAAI,CAAC,OAAO;QACjC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS;QAC9C,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export function canUndoOperation(operation) {
|
|
2
|
+
return (operation.canUndo === true &&
|
|
3
|
+
operation.undoSupported !== false &&
|
|
4
|
+
!operation.undone &&
|
|
5
|
+
operation.executionStatus !== "executing" &&
|
|
6
|
+
operation.executionStatus !== "pending");
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=undoEligibility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undoEligibility.js","sourceRoot":"","sources":["../../src/editor/undoEligibility.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,SAAwB;IACvD,OAAO,CACL,SAAS,CAAC,OAAO,KAAK,IAAI;QAC1B,SAAS,CAAC,aAAa,KAAK,KAAK;QACjC,CAAC,SAAS,CAAC,MAAM;QACjB,SAAS,CAAC,eAAe,KAAK,WAAW;QACzC,SAAS,CAAC,eAAe,KAAK,SAAS,CACxC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Image files carried by a clipboard paste or a drag & drop. Shared by the
|
|
3
|
+
* comment composers and the media selector, which all accept Ctrl+V of an
|
|
4
|
+
* image (a screenshot, a copied picture) as an upload.
|
|
5
|
+
*/
|
|
6
|
+
/** Extracts pasted or dropped image files from a DataTransfer, ignoring plain text. */
|
|
7
|
+
export declare function getImageFilesFromDataTransfer(data: DataTransfer | null | undefined): File[];
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Image files carried by a clipboard paste or a drag & drop. Shared by the
|
|
3
|
+
* comment composers and the media selector, which all accept Ctrl+V of an
|
|
4
|
+
* image (a screenshot, a copied picture) as an upload.
|
|
5
|
+
*/
|
|
6
|
+
function extensionForType(type) {
|
|
7
|
+
const subtype = type.split("/")[1]?.toLowerCase() ?? "png";
|
|
8
|
+
return subtype === "jpeg" ? "jpg" : subtype;
|
|
9
|
+
}
|
|
10
|
+
/** Extracts pasted or dropped image files from a DataTransfer, ignoring plain text. */
|
|
11
|
+
export function getImageFilesFromDataTransfer(data) {
|
|
12
|
+
if (!data)
|
|
13
|
+
return [];
|
|
14
|
+
const files = [];
|
|
15
|
+
const items = data.items;
|
|
16
|
+
if (items && items.length > 0) {
|
|
17
|
+
for (let index = 0; index < items.length; index++) {
|
|
18
|
+
const item = items[index];
|
|
19
|
+
if (!item || item.kind !== "file" || !item.type.startsWith("image/")) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
const file = item.getAsFile();
|
|
23
|
+
if (file)
|
|
24
|
+
files.push(file);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
else if (data.files && data.files.length > 0) {
|
|
28
|
+
for (let index = 0; index < data.files.length; index++) {
|
|
29
|
+
const file = data.files[index];
|
|
30
|
+
if (file && file.type.startsWith("image/"))
|
|
31
|
+
files.push(file);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return files.map((file) => {
|
|
35
|
+
// Clipboard images arrive as a generic "image.png"; give them a distinct name.
|
|
36
|
+
if (!file.name || /^image\.[a-z]+$/i.test(file.name)) {
|
|
37
|
+
const stamp = new Date().toISOString().replace(/[:.]/g, "-");
|
|
38
|
+
return new File([file], `pasted-image-${stamp}.${extensionForType(file.type)}`, { type: file.type });
|
|
39
|
+
}
|
|
40
|
+
return file;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=dataTransferImages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTransferImages.js","sourceRoot":"","sources":["../../../src/editor/utils/dataTransferImages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IAC3D,OAAO,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;AAC9C,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,6BAA6B,CAC3C,IAAqC;IAErC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,KAAK,GAAW,EAAE,CAAC;IAEzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrE,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,IAAI,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,+EAA+E;QAC/E,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC7D,OAAO,IAAI,IAAI,CACb,CAAC,IAAI,CAAC,EACN,gBAAgB,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACtD,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CACpB,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the URL shown for a general link field: the resolved target URL with
|
|
3
|
+
* the configured anchor appended as a fragment.
|
|
4
|
+
*
|
|
5
|
+
* The backend keeps `url` and `anchor` separate so the link dialog can edit
|
|
6
|
+
* them independently; this is the read-only composition of the two.
|
|
7
|
+
*/
|
|
8
|
+
export declare function formatLinkDisplayUrl(value: {
|
|
9
|
+
url?: string | null;
|
|
10
|
+
anchor?: string | null;
|
|
11
|
+
type?: string;
|
|
12
|
+
}): string;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the URL shown for a general link field: the resolved target URL with
|
|
3
|
+
* the configured anchor appended as a fragment.
|
|
4
|
+
*
|
|
5
|
+
* The backend keeps `url` and `anchor` separate so the link dialog can edit
|
|
6
|
+
* them independently; this is the read-only composition of the two.
|
|
7
|
+
*/
|
|
8
|
+
export function formatLinkDisplayUrl(value) {
|
|
9
|
+
const url = value.url ?? "";
|
|
10
|
+
const anchor = (value.anchor ?? "").trim().replace(/^#/, "");
|
|
11
|
+
// Sitecore's own "anchor" link type stores the fragment name as the url.
|
|
12
|
+
if (value.type === "anchor") {
|
|
13
|
+
const name = anchor || url.replace(/^#/, "");
|
|
14
|
+
return name ? `#${name}` : "";
|
|
15
|
+
}
|
|
16
|
+
if (!anchor)
|
|
17
|
+
return url;
|
|
18
|
+
// Anchor-only links (url="#section") already carry their fragment.
|
|
19
|
+
if (url.includes("#"))
|
|
20
|
+
return url;
|
|
21
|
+
return `${url}#${anchor}`;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=linkDisplay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linkDisplay.js","sourceRoot":"","sources":["../../../src/editor/utils/linkDisplay.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAIpC;IACC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE7D,yEAAyE;IACzE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IACxB,mEAAmE;IACnE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAClC,OAAO,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ComponentProps, ReactNode } from "react";
|
|
2
|
+
import { PopoverContent } from "../../components/ui/popover";
|
|
3
|
+
import { SingleValidatorResult } from "../../types";
|
|
4
|
+
import { ItemDescriptor } from "../pageModel";
|
|
5
|
+
import { ValidationSeverity } from "./validationSeverity";
|
|
6
|
+
/** The coloured pill used as popover trigger on every surface. */
|
|
7
|
+
export declare const ValidationSeverityBadge: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "children"> & {
|
|
8
|
+
severity: ValidationSeverity;
|
|
9
|
+
label: ReactNode;
|
|
10
|
+
}, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
11
|
+
export type ValidationIssuesPopoverProps = {
|
|
12
|
+
/** Issues to list; pass them pre-filtered (filterValidationIssues). */
|
|
13
|
+
issues: readonly SingleValidatorResult[];
|
|
14
|
+
/** The item the issues belong to. */
|
|
15
|
+
item: ItemDescriptor;
|
|
16
|
+
/** Scope of the list when it was opened from a single field. */
|
|
17
|
+
field?: {
|
|
18
|
+
fieldId: string;
|
|
19
|
+
fieldName?: string;
|
|
20
|
+
};
|
|
21
|
+
trigger: ReactNode;
|
|
22
|
+
open?: boolean;
|
|
23
|
+
onOpenChange?: (open: boolean) => void;
|
|
24
|
+
/** Show each issue's field name (item-scoped lists). */
|
|
25
|
+
showFieldName?: boolean;
|
|
26
|
+
/** Row click; when set, rows render as buttons. */
|
|
27
|
+
onSelectIssue?: (issue: SingleValidatorResult) => void | Promise<void>;
|
|
28
|
+
/** Footer "Show all validation results". Default: opens the sidebar. */
|
|
29
|
+
showAllAction?: boolean;
|
|
30
|
+
onShowAll?: () => void;
|
|
31
|
+
/** Called after any footer or row action fired (e.g. to close a dialog). */
|
|
32
|
+
onAction?: () => void;
|
|
33
|
+
side?: ComponentProps<typeof PopoverContent>["side"];
|
|
34
|
+
align?: ComponentProps<typeof PopoverContent>["align"];
|
|
35
|
+
sideOffset?: number;
|
|
36
|
+
collisionPadding?: number;
|
|
37
|
+
contentClassName?: string;
|
|
38
|
+
};
|
|
39
|
+
export declare function ValidationIssuesPopover({ issues, item, field, trigger, open, onOpenChange, showFieldName, onSelectIssue, showAllAction, onShowAll, onAction, side, align, sideOffset, collisionPadding, contentClassName, }: ValidationIssuesPopoverProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
|
+
import { ListChecks, WandSparkles } from "lucide-react";
|
|
4
|
+
import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
|
|
5
|
+
import { cn } from "../../lib/utils";
|
|
6
|
+
import { useEditContext } from "../client/editContext";
|
|
7
|
+
import { hasAgentsPanel, openAiAgentForValidationIssues, } from "./validationFixAgent";
|
|
8
|
+
import { formatValidationIssueCount, getValidationSeverity, validationSeverityStyles, } from "./validationSeverity";
|
|
9
|
+
const footerButtonClassName = "hover:bg-neutral-grey-5 flex w-full items-center gap-2 rounded px-3 py-2 text-xs transition-colors";
|
|
10
|
+
/** The coloured pill used as popover trigger on every surface. */
|
|
11
|
+
export const ValidationSeverityBadge = forwardRef(function ValidationSeverityBadge({ severity, label, className, ...props }, ref) {
|
|
12
|
+
const style = validationSeverityStyles[severity];
|
|
13
|
+
const Icon = style.icon;
|
|
14
|
+
return (_jsxs("button", { ref: ref, type: "button", className: cn(style.badge, "inline-flex cursor-pointer items-center gap-1 rounded px-1 py-0.5 text-[10px] leading-none whitespace-nowrap transition-opacity hover:opacity-80", className), ...props, children: [_jsx(Icon, { className: "h-3 w-3 shrink-0", strokeWidth: 1.5 }), label] }));
|
|
15
|
+
});
|
|
16
|
+
export function ValidationIssuesPopover({ issues, item, field, trigger, open, onOpenChange, showFieldName, onSelectIssue, showAllAction = true, onShowAll, onAction, side = "bottom", align = "start", sideOffset, collisionPadding, contentClassName, }) {
|
|
17
|
+
const editContext = useEditContext();
|
|
18
|
+
const canFix = hasAgentsPanel(editContext) && issues.length > 0;
|
|
19
|
+
const close = () => onOpenChange?.(false);
|
|
20
|
+
const handleFix = () => {
|
|
21
|
+
const started = openAiAgentForValidationIssues({ item, issues, field }, editContext);
|
|
22
|
+
close();
|
|
23
|
+
if (started)
|
|
24
|
+
onAction?.();
|
|
25
|
+
};
|
|
26
|
+
const handleShowAll = () => {
|
|
27
|
+
if (onShowAll)
|
|
28
|
+
onShowAll();
|
|
29
|
+
else
|
|
30
|
+
editContext?.openSidebar("validation");
|
|
31
|
+
close();
|
|
32
|
+
onAction?.();
|
|
33
|
+
};
|
|
34
|
+
const handleSelect = (issue) => {
|
|
35
|
+
close();
|
|
36
|
+
onAction?.();
|
|
37
|
+
void onSelectIssue?.(issue);
|
|
38
|
+
};
|
|
39
|
+
return (_jsxs(Popover, { open: open, onOpenChange: onOpenChange, children: [_jsx(PopoverTrigger, { asChild: true, children: trigger }), _jsxs(PopoverContent, { className: cn("w-80 max-w-[calc(100vw-2rem)] p-0", contentClassName), side: side, align: align, sideOffset: sideOffset, collisionPadding: collisionPadding, "data-testid": "validation-issues-popover",
|
|
40
|
+
// The content is portaled, but React still bubbles its clicks to the
|
|
41
|
+
// React parent (e.g. a clickable table row). Keep them here.
|
|
42
|
+
onClick: (event) => event.stopPropagation(), children: [_jsxs("div", { className: "border-neutral-grey-10 flex items-center justify-between border-b px-3 py-2", children: [_jsx("span", { className: "text-xs font-medium", children: "Validation" }), _jsx("span", { className: "text-neutral-grey-50 text-[10px]", children: formatValidationIssueCount(issues.length) })] }), _jsx("ul", { className: "max-h-72 overflow-y-auto p-1", children: issues.map((issue) => {
|
|
43
|
+
const severity = getValidationSeverity(issue.result);
|
|
44
|
+
const style = validationSeverityStyles[severity];
|
|
45
|
+
const Icon = style.icon;
|
|
46
|
+
const body = (_jsxs(_Fragment, { children: [_jsx(Icon, { className: `${style.text} mt-0.5 h-3.5 w-3.5 shrink-0`, strokeWidth: 1.5 }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "text-neutral-grey-50 flex flex-wrap items-baseline gap-x-1.5 text-[10px] leading-tight", children: [showFieldName && issue.fieldName && (_jsx("span", { className: "text-neutral-grey-100 font-medium", children: issue.fieldName })), _jsx("span", { children: issue.validator })] }), _jsx("div", { className: "break-words select-text", children: issue.message })] })] }));
|
|
47
|
+
const key = `${issue.itemId}|${issue.fieldId}|${issue.validator}`;
|
|
48
|
+
return (_jsx("li", { "data-testid": "validation-issue-row", children: onSelectIssue ? (_jsx("button", { type: "button", className: "hover:bg-neutral-grey-5 flex w-full items-start gap-2 rounded px-2 py-1.5 text-left text-xs transition-colors", onClick: () => handleSelect(issue), children: body })) : (_jsx("div", { className: "flex items-start gap-2 rounded px-2 py-1.5 text-xs", children: body })) }, key));
|
|
49
|
+
}) }), (canFix || showAllAction) && (_jsxs("div", { className: "border-neutral-grey-10 border-t p-1", children: [canFix && (_jsxs("button", { type: "button", className: footerButtonClassName, onClick: handleFix, "data-testid": "validation-fix-with-agent", children: [_jsx(WandSparkles, { strokeWidth: 1, className: "h-4 w-4" }), "Fix with agent"] })), showAllAction && (_jsxs("button", { type: "button", className: footerButtonClassName, onClick: handleShowAll, "data-testid": "validation-show-all", children: [_jsx(ListChecks, { strokeWidth: 1, className: "h-4 w-4" }), "Show all validation results"] }))] }))] })] }));
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=ValidationIssuesPopover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidationIssuesPopover.js","sourceRoot":"","sources":["../../../src/editor/validation/ValidationIssuesPopover.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EditContextType, FieldsEditContextType } from "../client/editContext";
|
|
2
|
+
export declare const VALIDATION_SLOT_TAG = "validation";
|
|
3
|
+
export type ValidationIssueTarget = {
|
|
4
|
+
itemId: string;
|
|
5
|
+
language: string;
|
|
6
|
+
version: number;
|
|
7
|
+
fieldId?: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Opens the item a validation issue belongs to and focuses the field.
|
|
11
|
+
* Shared by the Validation sidebar rows and the issue popovers.
|
|
12
|
+
*/
|
|
13
|
+
export declare function navigateToValidationIssue(editContext: EditContextType, target: ValidationIssueTarget, setFocusedField: FieldsEditContextType["setFocusedField"] | undefined): Promise<void>;
|