@parhelia/core 0.3.12831 → 0.4.12784
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/agents-view/AgentCard.js +1 -1
- package/dist/agents-view/AgentsWorkspaceView.js +8 -1
- package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
- package/dist/components/ui/checkbox.js +3 -2
- package/dist/components/ui/checkbox.js.map +1 -1
- package/dist/components/ui/context-menu.d.ts +9 -1
- package/dist/components/ui/context-menu.js +59 -12
- package/dist/components/ui/context-menu.js.map +1 -1
- package/dist/components/ui/select.js +16 -2
- package/dist/components/ui/select.js.map +1 -1
- package/dist/config/config.d.ts +2 -0
- package/dist/config/config.js +36 -4
- package/dist/config/config.js.map +1 -1
- package/dist/config/types.d.ts +24 -0
- package/dist/config/types.js.map +1 -1
- package/dist/editor/ContextMenu.js +59 -6
- package/dist/editor/ContextMenu.js.map +1 -1
- package/dist/editor/Editor.js +9 -2
- package/dist/editor/Editor.js.map +1 -1
- package/dist/editor/EditorWarning.d.ts +3 -1
- package/dist/editor/EditorWarning.js +24 -7
- package/dist/editor/EditorWarning.js.map +1 -1
- package/dist/editor/FieldList.js +1 -1
- package/dist/editor/FieldList.js.map +1 -1
- package/dist/editor/ai/AgentSharingSection.d.ts +1 -1
- package/dist/editor/ai/AgentSharingSection.js +7 -0
- package/dist/editor/ai/AgentSharingSection.js.map +1 -1
- package/dist/editor/ai/Agents.js +1 -1
- package/dist/editor/ai/Agents.js.map +1 -1
- package/dist/editor/ai/InlineAiDialog.d.ts +7 -1
- package/dist/editor/ai/InlineAiDialog.js +27 -7
- package/dist/editor/ai/InlineAiDialog.js.map +1 -1
- package/dist/editor/ai/InlineAiTrigger.js +63 -1
- package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
- 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/agentStartRequest.d.ts +1 -0
- package/dist/editor/ai/terminal/agentStartRequest.js +1 -0
- package/dist/editor/ai/terminal/agentStartRequest.js.map +1 -1
- package/dist/editor/ai/terminal/agentTurnTiming.d.ts +33 -0
- package/dist/editor/ai/terminal/agentTurnTiming.js +103 -0
- package/dist/editor/ai/terminal/agentTurnTiming.js.map +1 -0
- package/dist/editor/ai/terminal/components/AgentCostDisplay.d.ts +4 -1
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js +17 -25
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentProfileModelSettingsSection.d.ts +5 -1
- package/dist/editor/ai/terminal/components/AgentProfileModelSettingsSection.js +7 -2
- package/dist/editor/ai/terminal/components/AgentProfileModelSettingsSection.js.map +1 -1
- 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/AgentPromptComposer.js +1 -1
- package/dist/editor/ai/terminal/components/AgentSettingsContent.d.ts +5 -1
- package/dist/editor/ai/terminal/components/AgentSettingsContent.js +2 -2
- package/dist/editor/ai/terminal/components/AgentSettingsContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js +2 -2
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullPromptControls.d.ts +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullPromptControls.js +2 -2
- package/dist/editor/ai/terminal/components/AgentTerminalFullPromptControls.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js +10 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js +2 -1
- package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.d.ts +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js +67 -6
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js +2 -2
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentThinkingIndicator.d.ts +8 -1
- package/dist/editor/ai/terminal/components/AgentThinkingIndicator.js +8 -4
- package/dist/editor/ai/terminal/components/AgentThinkingIndicator.js.map +1 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.d.ts +3 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.js +66 -48
- package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/ApprovalCard.js +5 -6
- package/dist/editor/ai/terminal/components/ApprovalCard.js.map +1 -1
- package/dist/editor/ai/terminal/components/InitialThinkingSplash.js +2 -2
- package/dist/editor/ai/terminal/components/InitialThinkingSplash.js.map +1 -1
- package/dist/editor/ai/terminal/components/QueuedPromptsPanel.js +2 -2
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.d.ts +15 -0
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js +52 -0
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js.map +1 -0
- package/dist/editor/ai/terminal/components/ToolCallDisplay.js +32 -56
- package/dist/editor/ai/terminal/components/ToolCallDisplay.js.map +1 -1
- package/dist/editor/ai/terminal/components/UserMessage.js +1 -1
- package/dist/editor/ai/terminal/components/UserMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/agentThinkingStyles.d.ts +5 -1
- package/dist/editor/ai/terminal/components/agentThinkingStyles.js +5 -1
- package/dist/editor/ai/terminal/components/agentThinkingStyles.js.map +1 -1
- 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/types.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentModeState.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentProfileSelection.d.ts +10 -0
- package/dist/editor/ai/terminal/useAgentProfileSelection.js +10 -2
- package/dist/editor/ai/terminal/useAgentProfileSelection.js.map +1 -1
- 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/ai/terminal/useAgentSessionSync.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentSettingsCommands.d.ts +9 -0
- package/dist/editor/ai/terminal/useAgentSettingsCommands.js +63 -6
- package/dist/editor/ai/terminal/useAgentSettingsCommands.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsPanel.d.ts +5 -0
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js +8 -0
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSkillActions.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentSkillActions.js +1 -0
- package/dist/editor/ai/terminal/useAgentSkillActions.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.d.ts +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js +20 -4
- package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalControls.d.ts +4 -0
- package/dist/editor/ai/terminal/useAgentTerminalControls.js +5 -1
- package/dist/editor/ai/terminal/useAgentTerminalControls.js.map +1 -1
- package/dist/editor/ai-image-editor/AiImageEditorDialog.d.ts +6 -0
- package/dist/editor/ai-image-editor/AiImageEditorDialog.js +202 -64
- package/dist/editor/ai-image-editor/AiImageEditorDialog.js.map +1 -1
- package/dist/editor/client/EditorShell.js +30 -33
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/client/SandboxWelcomeOverlay.d.ts +4 -1
- package/dist/editor/client/SandboxWelcomeOverlay.js +6 -5
- package/dist/editor/client/SandboxWelcomeOverlay.js.map +1 -1
- 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/hooks/useSocketMessageHandler.js +4 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
- package/dist/editor/client/ui/DevModeIndicator.js +6 -4
- package/dist/editor/client/ui/DevModeIndicator.js.map +1 -1
- package/dist/editor/editor-warnings/ItemLocked.js +1 -1
- package/dist/editor/editor-warnings/ItemLocked.js.map +1 -1
- package/dist/editor/editor-warnings/NoLanguageWriteAccess.js +1 -1
- package/dist/editor/editor-warnings/NoLanguageWriteAccess.js.map +1 -1
- package/dist/editor/editor-warnings/NoWorkflowWriteAccess.js +1 -1
- package/dist/editor/editor-warnings/NoWorkflowWriteAccess.js.map +1 -1
- package/dist/editor/editor-warnings/NoWriteAccess.js +1 -1
- package/dist/editor/editor-warnings/NoWriteAccess.js.map +1 -1
- package/dist/editor/media-selector/MediaFolderBrowser.js +1 -1
- package/dist/editor/menubar/ActiveUsers.js +4 -1
- package/dist/editor/menubar/ActiveUsers.js.map +1 -1
- 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/WorkflowButton.js +77 -22
- package/dist/editor/menubar/WorkflowButton.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/PreviewModeControl.js +1 -1
- package/dist/editor/menubar/toolbar-sections/PreviewModeControl.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +8 -4
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +36 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.d.ts +19 -0
- package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js +14 -0
- package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.d.ts +3 -0
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js +18 -0
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js.map +1 -1
- package/dist/editor/page-viewer/DeviceToolbar.js +20 -8
- package/dist/editor/page-viewer/DeviceToolbar.js.map +1 -1
- package/dist/editor/page-viewer/EditorForm.js +8 -7
- package/dist/editor/page-viewer/EditorForm.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.js +10 -0
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- 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/pageViewContext.d.ts +5 -1
- package/dist/editor/page-viewer/pageViewContext.js +59 -2
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
- 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/pageModel.d.ts +1 -0
- package/dist/editor/services/agentService.d.ts +67 -0
- package/dist/editor/services/agentService.js +2 -0
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/aiService.d.ts +5 -0
- package/dist/editor/services/aiService.js.map +1 -1
- package/dist/editor/services/contentService.d.ts +9 -0
- package/dist/editor/services/contentService.js.map +1 -1
- package/dist/editor/services/editService.d.ts +13 -0
- package/dist/editor/services/editService.js +8 -0
- package/dist/editor/services/editService.js.map +1 -1
- 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/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/settings/About.js +71 -32
- package/dist/editor/settings/About.js.map +1 -1
- 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/QuotaUserPicker.js +1 -1
- package/dist/editor/settings/SettingsView.js +18 -5
- package/dist/editor/settings/SettingsView.js.map +1 -1
- package/dist/editor/settings/panels/ModelConfigPanel.js +2 -0
- package/dist/editor/settings/panels/ModelConfigPanel.js.map +1 -1
- 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/StatusPanel.js +2 -1
- package/dist/editor/settings/panels/StatusPanel.js.map +1 -1
- package/dist/editor/settings/panels/UserPreferencesPanel.js +4 -4
- package/dist/editor/settings/panels/UserPreferencesPanel.js.map +1 -1
- package/dist/editor/settings/panels/index.d.ts +1 -0
- package/dist/editor/settings/panels/index.js +1 -0
- package/dist/editor/settings/panels/index.js.map +1 -1
- 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/settings/status/coreStatusChecks.js +4 -0
- package/dist/editor/settings/status/coreStatusChecks.js.map +1 -1
- package/dist/editor/sidebar/Sessions.d.ts +3 -1
- package/dist/editor/sidebar/Sessions.js +2 -1
- package/dist/editor/sidebar/Sessions.js.map +1 -1
- package/dist/editor/sidebar/Workbox.js +22 -7
- package/dist/editor/sidebar/Workbox.js.map +1 -1
- package/dist/editor/ui/PerfectTree.js +10 -6
- package/dist/editor/ui/PerfectTree.js.map +1 -1
- package/dist/editor/ui/PublishDialog.d.ts +5 -2
- package/dist/editor/ui/PublishDialog.js +48 -31
- package/dist/editor/ui/PublishDialog.js.map +1 -1
- package/dist/editor/ui/PublishItemDialog.js +31 -20
- package/dist/editor/ui/PublishItemDialog.js.map +1 -1
- 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/TemplateSelectorDialog.js +27 -1
- package/dist/editor/ui/TemplateSelectorDialog.js.map +1 -1
- package/dist/editor/ui/publishReadiness.d.ts +65 -0
- package/dist/editor/ui/publishReadiness.js +211 -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/views/ItemEditor.js +15 -23
- package/dist/editor/views/ItemEditor.js.map +1 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- 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/setup/wizard/steps/ImportModelDialog.js +238 -176
- package/dist/setup/wizard/steps/ImportModelDialog.js.map +1 -1
- package/dist/task-board/components/ProjectSettingsDialog.js +4 -1
- package/dist/task-board/components/ProjectSettingsDialog.js.map +1 -1
- package/dist/tour/Tour.d.ts +10 -2
- package/dist/tour/Tour.js +136 -31
- package/dist/tour/Tour.js.map +1 -1
- package/dist/tour/default-tour.js +1 -12
- package/dist/tour/default-tour.js.map +1 -1
- package/dist/tour/sandbox-tour.js +3 -2
- 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/dist/types.d.ts +7 -0
- package/package.json +1 -1
|
@@ -0,0 +1,211 @@
|
|
|
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
|
+
function normalizeDescriptorId(id) {
|
|
35
|
+
return (id ?? "").replace(/[{}]/g, "").toLowerCase();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Compares descriptors the way the workbox does: ids without braces and
|
|
39
|
+
* case-insensitive, languages case-insensitive. A version of 0/undefined means
|
|
40
|
+
* "latest" (the editor keeps the *requested* descriptor when an item is opened
|
|
41
|
+
* from the tree) and matches any concrete version of that item.
|
|
42
|
+
*/
|
|
43
|
+
export function isSameDescriptor(a, b) {
|
|
44
|
+
return (normalizeDescriptorId(a.id) === normalizeDescriptorId(b.id) &&
|
|
45
|
+
(a.language ?? "").toLowerCase() === (b.language ?? "").toLowerCase() &&
|
|
46
|
+
(!a.version || !b.version || a.version === b.version));
|
|
47
|
+
}
|
|
48
|
+
/** The workbox row for the item currently open in the editor, if listed. */
|
|
49
|
+
export function findCurrentWorkboxItem(workboxItems, currentItem) {
|
|
50
|
+
return currentItem
|
|
51
|
+
? workboxItems.find((item) => isSameDescriptor(item.item, currentItem))
|
|
52
|
+
: undefined;
|
|
53
|
+
}
|
|
54
|
+
/** True when `path` lies strictly below `rootPath` (Sitecore paths are case-insensitive). */
|
|
55
|
+
export function isDescendantPath(path, rootPath) {
|
|
56
|
+
if (!path || !rootPath)
|
|
57
|
+
return false;
|
|
58
|
+
const root = rootPath.toLowerCase();
|
|
59
|
+
const prefix = root.endsWith("/") ? root : `${root}/`;
|
|
60
|
+
return path.toLowerCase() !== root && path.toLowerCase().startsWith(prefix);
|
|
61
|
+
}
|
|
62
|
+
const impactSeverity = {
|
|
63
|
+
none: 0,
|
|
64
|
+
unknown: 1,
|
|
65
|
+
"other-version": 2,
|
|
66
|
+
stale: 3,
|
|
67
|
+
"never-published": 4,
|
|
68
|
+
};
|
|
69
|
+
function getItemReadiness(item, blockedByWorkflow) {
|
|
70
|
+
const targets = Object.entries(item.publishStatus).map(([target, status]) => ({
|
|
71
|
+
target,
|
|
72
|
+
...classifyPublishStatus(status),
|
|
73
|
+
}));
|
|
74
|
+
const unpublished = targets.filter((target) => target.outcome !== "published");
|
|
75
|
+
const restricted = targets.filter((target) => target.outcome === "will-not-publish");
|
|
76
|
+
const worst = unpublished.reduce((result, target) => !result || impactSeverity[target.impact] > impactSeverity[result.impact]
|
|
77
|
+
? target
|
|
78
|
+
: result, undefined);
|
|
79
|
+
const restriction = restricted.reduce((result, target) => !result || impactSeverity[target.impact] > impactSeverity[result.impact]
|
|
80
|
+
? target
|
|
81
|
+
: result, undefined);
|
|
82
|
+
const reason = blockedByWorkflow
|
|
83
|
+
? { kind: "workflow", workflowState: item.workflowState }
|
|
84
|
+
: restriction
|
|
85
|
+
? restriction.impact === "other-version"
|
|
86
|
+
? { kind: "not-valid-version", validVersion: restriction.validVersion }
|
|
87
|
+
: { kind: "no-valid-version" }
|
|
88
|
+
: undefined;
|
|
89
|
+
return {
|
|
90
|
+
reason,
|
|
91
|
+
impact: worst?.impact ?? (targets.length ? "none" : "unknown"),
|
|
92
|
+
validVersion: worst?.validVersion,
|
|
93
|
+
affectedTargets: (blockedByWorkflow ? unpublished : restricted).map(({ target }) => target),
|
|
94
|
+
targetCount: targets.length,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
export function getPublishReadiness({ workboxItems, currentItem, pagePath, includeSubitems, }) {
|
|
98
|
+
const coveredBySubitems = (item) => includeSubitems &&
|
|
99
|
+
(item.item.language || currentItem?.language) === currentItem?.language &&
|
|
100
|
+
isDescendantPath(item.path, pagePath);
|
|
101
|
+
// Preserve the existing batch even when a target warns: other targets may
|
|
102
|
+
// still need publishing, or Sitecore may publish the valid version instead.
|
|
103
|
+
const batchDescriptors = workboxItems
|
|
104
|
+
.filter(isReadyToPublish)
|
|
105
|
+
.filter((item) => !coveredBySubitems(item))
|
|
106
|
+
.map((item) => ({
|
|
107
|
+
...item.item,
|
|
108
|
+
language: item.item.language || currentItem?.language,
|
|
109
|
+
}))
|
|
110
|
+
.filter((descriptor) => !!descriptor.language &&
|
|
111
|
+
(!currentItem ||
|
|
112
|
+
!isSameDescriptor(descriptor, currentItem)));
|
|
113
|
+
const page = findCurrentWorkboxItem(workboxItems, currentItem);
|
|
114
|
+
const blockedByWorkflow = !!page?.workflowState && !page.isPublishable;
|
|
115
|
+
const currentPage = page
|
|
116
|
+
? {
|
|
117
|
+
item: page,
|
|
118
|
+
blockedByWorkflow,
|
|
119
|
+
...getItemReadiness(page, blockedByWorkflow),
|
|
120
|
+
}
|
|
121
|
+
: undefined;
|
|
122
|
+
const entries = workboxItems
|
|
123
|
+
.filter((item) => !currentItem || !isSameDescriptor(item.item, currentItem))
|
|
124
|
+
.map((item) => {
|
|
125
|
+
const details = getItemReadiness(item, !item.isPublishable);
|
|
126
|
+
const category = item.isPublished
|
|
127
|
+
? "already-published"
|
|
128
|
+
: !item.isPublishable
|
|
129
|
+
? "blocked-by-workflow"
|
|
130
|
+
: details.reason
|
|
131
|
+
? "will-not-publish"
|
|
132
|
+
: coveredBySubitems(item)
|
|
133
|
+
? "covered-by-subitems"
|
|
134
|
+
: "will-publish";
|
|
135
|
+
const descriptor = {
|
|
136
|
+
...item.item,
|
|
137
|
+
language: item.item.language || currentItem?.language,
|
|
138
|
+
};
|
|
139
|
+
return {
|
|
140
|
+
item,
|
|
141
|
+
// Matches WorkboxItemsTable's row key; a future Show action can use it.
|
|
142
|
+
key: [
|
|
143
|
+
item.item.id?.toLowerCase(),
|
|
144
|
+
item.item.language?.toLowerCase(),
|
|
145
|
+
item.item.version ?? 0,
|
|
146
|
+
item.item.database?.toLowerCase() ?? "",
|
|
147
|
+
].join("|"),
|
|
148
|
+
category,
|
|
149
|
+
inBatch: isReadyToPublish(item) &&
|
|
150
|
+
!coveredBySubitems(item) &&
|
|
151
|
+
!!descriptor.language &&
|
|
152
|
+
(!currentItem ||
|
|
153
|
+
!isSameDescriptor(descriptor, currentItem)),
|
|
154
|
+
...details,
|
|
155
|
+
};
|
|
156
|
+
});
|
|
157
|
+
return {
|
|
158
|
+
currentPage,
|
|
159
|
+
entries,
|
|
160
|
+
batchDescriptors,
|
|
161
|
+
leftBehind: entries.filter((entry) => entry.category === "blocked-by-workflow" ||
|
|
162
|
+
entry.category === "will-not-publish"),
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
export function getPublishReasonText(reason, affectedTargets, targetCount) {
|
|
166
|
+
const prefix = targetCount > 1 && affectedTargets.length
|
|
167
|
+
? `On ${affectedTargets.join(", ")}: `
|
|
168
|
+
: "";
|
|
169
|
+
switch (reason.kind) {
|
|
170
|
+
case "workflow":
|
|
171
|
+
return (prefix +
|
|
172
|
+
(reason.workflowState
|
|
173
|
+
? `In workflow state "${reason.workflowState}".`
|
|
174
|
+
: "Not in a final workflow state."));
|
|
175
|
+
case "no-valid-version":
|
|
176
|
+
return prefix + "No valid version. Check its publish restrictions.";
|
|
177
|
+
case "not-valid-version":
|
|
178
|
+
return (prefix +
|
|
179
|
+
(reason.validVersion !== undefined
|
|
180
|
+
? `Version ${reason.validVersion} is the valid version, not this one.`
|
|
181
|
+
: "Not the valid version."));
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
export function getPublishImpactText(impact, validVersion) {
|
|
185
|
+
switch (impact) {
|
|
186
|
+
case "never-published":
|
|
187
|
+
return "Visitors will see nothing for this item until it is published.";
|
|
188
|
+
case "stale":
|
|
189
|
+
return "Visitors will still see the previous version.";
|
|
190
|
+
case "other-version":
|
|
191
|
+
return validVersion !== undefined
|
|
192
|
+
? `Visitors will see version ${validVersion} instead.`
|
|
193
|
+
: "Visitors will see a different version.";
|
|
194
|
+
default:
|
|
195
|
+
return undefined;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
export function getPublishReadinessHeadline(readiness) {
|
|
199
|
+
const count = readiness.leftBehind.length;
|
|
200
|
+
const related = `${count} related item${count === 1 ? "" : "s"}`;
|
|
201
|
+
if (readiness.currentPage?.blockedByWorkflow)
|
|
202
|
+
return count
|
|
203
|
+
? `This page cannot be published yet, and ${related} cannot either.`
|
|
204
|
+
: "This page cannot be published yet.";
|
|
205
|
+
if (readiness.currentPage?.reason)
|
|
206
|
+
return count
|
|
207
|
+
? `This page will not go live as it is, and ${related} cannot publish.`
|
|
208
|
+
: "This page will not go live as it is.";
|
|
209
|
+
return count ? `This page can publish, but ${related} cannot.` : undefined;
|
|
210
|
+
}
|
|
211
|
+
//# sourceMappingURL=publishReadiness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publishReadiness.js","sourceRoot":"","sources":["../../../src/editor/ui/publishReadiness.ts"],"names":[],"mappings":"AA6CA,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,OAAO,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAc;IAKlD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,IAAI,UAAU,KAAK,WAAW;QAC5B,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAClD,IACE,UAAU,CAAC,UAAU,CAAC,2BAA2B,CAAC;QAClD,UAAU,CAAC,UAAU,CAAC,wCAAwC,CAAC,EAC/D,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC3D,CAAC;IACD,IACE,UAAU,CAAC,UAAU,CACnB,4DAA4D,CAC7D;QACD,UAAU,CAAC,UAAU,CACnB,mDAAmD,CACpD;QACD,UAAU,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAC7D,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;IACD,IAAI,UAAU,CAAC,UAAU,CAAC,wCAAwC,CAAC,EAAE,CAAC;QACpE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1D,CAAC;IACD,IACE,UAAU,CAAC,UAAU,CACnB,2DAA2D,CAC5D,EACD,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IACpE,CAAC;IACD,IACE,UAAU,CAAC,UAAU,CACnB,0EAA0E,CAC3E;QACD,UAAU,CAAC,UAAU,CACnB,sDAAsD,CACvD,EACD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACtD,OAAO;YACL,OAAO,EAAE,kBAAkB;YAC3B,MAAM,EAAE,eAAe;YACvB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAsB;IACnD,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,CAAiB,EACjB,CAAiB;IAEjB,OAAO,CACL,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QACrE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,CACtD,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,sBAAsB,CACpC,YAA2B,EAC3B,WAAuC;IAEvC,OAAO,WAAW;QAChB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACvE,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,gBAAgB,CAAC,IAAa,EAAE,QAAiB;IAC/D,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IACtD,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,cAAc,GAAkC;IACpD,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,eAAe,EAAE,CAAC;IAClB,KAAK,EAAE,CAAC;IACR,iBAAiB,EAAE,CAAC;CACrB,CAAC;AAEF,SAAS,gBAAgB,CAAC,IAAiB,EAAE,iBAA0B;IACrE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACrB,MAAM;QACN,GAAG,qBAAqB,CAAC,MAAM,CAAC;KACjC,CAAC,CACH,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAChC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,WAAW,CAC3C,CAAC;IACF,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAC/B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,kBAAkB,CAClD,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAC9B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CACjB,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;QACtE,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,EACZ,SAAS,CACV,CAAC;IACF,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAGnC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CACjB,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;QACtE,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,EACZ,SAAS,CACV,CAAC;IACF,MAAM,MAAM,GAAmC,iBAAiB;QAC9D,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;QACzD,CAAC,CAAC,WAAW;YACX,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,eAAe;gBACtC,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,WAAW,CAAC,YAAY,EAAE;gBACvE,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAChC,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO;QACL,MAAM;QACN,MAAM,EACJ,KAAK,EAAE,MAAM,IAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAmB;QAC3E,YAAY,EAAE,KAAK,EAAE,YAAY;QACjC,eAAe,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CACjE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CACvB;QACD,WAAW,EAAE,OAAO,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAClC,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,GAMhB;IACC,MAAM,iBAAiB,GAAG,CAAC,IAAiB,EAAE,EAAE,CAC9C,eAAe;QACf,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE,QAAQ,CAAC,KAAK,WAAW,EAAE,QAAQ;QACvE,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,gBAAgB,GAAG,YAAY;SAClC,MAAM,CAAC,gBAAgB,CAAC;SACxB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,GAAG,IAAI,CAAC,IAAI;QACZ,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE,QAAQ;KACtD,CAAC,CAAC;SACF,MAAM,CACL,CAAC,UAAU,EAAgC,EAAE,CAC3C,CAAC,CAAC,UAAU,CAAC,QAAQ;QACrB,CAAC,CAAC,WAAW;YACX,CAAC,gBAAgB,CAAC,UAA4B,EAAE,WAAW,CAAC,CAAC,CAClE,CAAC;IACJ,MAAM,IAAI,GAAG,sBAAsB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,EAAE,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACvE,MAAM,WAAW,GAAG,IAAI;QACtB,CAAC,CAAC;YACE,IAAI,EAAE,IAAI;YACV,iBAAiB;YACjB,GAAG,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,CAAC;SAC7C;QACH,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,OAAO,GAAG,YAAY;SACzB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;SAC3E,GAAG,CAAC,CAAC,IAAI,EAAyB,EAAE;QACnC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAA6B,IAAI,CAAC,WAAW;YACzD,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa;gBACnB,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,OAAO,CAAC,MAAM;oBACd,CAAC,CAAC,kBAAkB;oBACpB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC;wBACvB,CAAC,CAAC,qBAAqB;wBACvB,CAAC,CAAC,cAAc,CAAC;QACzB,MAAM,UAAU,GAAG;YACjB,GAAG,IAAI,CAAC,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE,QAAQ;SACtD,CAAC;QACF,OAAO;YACL,IAAI;YACJ,wEAAwE;YACxE,GAAG,EAAE;gBACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE;gBAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE;aACxC,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,QAAQ;YACR,OAAO,EACL,gBAAgB,CAAC,IAAI,CAAC;gBACtB,CAAC,iBAAiB,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,UAAU,CAAC,QAAQ;gBACrB,CAAC,CAAC,WAAW;oBACX,CAAC,gBAAgB,CAAC,UAA4B,EAAE,WAAW,CAAC,CAAC;YACjE,GAAG,OAAO;SACX,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,OAAO;QACL,WAAW;QACX,OAAO;QACP,gBAAgB;QAChB,UAAU,EAAE,OAAO,CAAC,MAAM,CACxB,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,QAAQ,KAAK,qBAAqB;YACxC,KAAK,CAAC,QAAQ,KAAK,kBAAkB,CACxC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAA0B,EAC1B,eAAyB,EACzB,WAAmB;IAEnB,MAAM,MAAM,GACV,WAAW,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM;QACvC,CAAC,CAAC,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACtC,CAAC,CAAC,EAAE,CAAC;IACT,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,UAAU;YACb,OAAO,CACL,MAAM;gBACN,CAAC,MAAM,CAAC,aAAa;oBACnB,CAAC,CAAC,sBAAsB,MAAM,CAAC,aAAa,IAAI;oBAChD,CAAC,CAAC,gCAAgC,CAAC,CACtC,CAAC;QACJ,KAAK,kBAAkB;YACrB,OAAO,MAAM,GAAG,mDAAmD,CAAC;QACtE,KAAK,mBAAmB;YACtB,OAAO,CACL,MAAM;gBACN,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS;oBAChC,CAAC,CAAC,WAAW,MAAM,CAAC,YAAY,sCAAsC;oBACtE,CAAC,CAAC,wBAAwB,CAAC,CAC9B,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAqB,EACrB,YAAqB;IAErB,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,iBAAiB;YACpB,OAAO,gEAAgE,CAAC;QAC1E,KAAK,OAAO;YACV,OAAO,+CAA+C,CAAC;QACzD,KAAK,eAAe;YAClB,OAAO,YAAY,KAAK,SAAS;gBAC/B,CAAC,CAAC,6BAA6B,YAAY,WAAW;gBACtD,CAAC,CAAC,wCAAwC,CAAC;QAC/C;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,SAA2B;IAE3B,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC;IAC1C,MAAM,OAAO,GAAG,GAAG,KAAK,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACjE,IAAI,SAAS,CAAC,WAAW,EAAE,iBAAiB;QAC1C,OAAO,KAAK;YACV,CAAC,CAAC,0CAA0C,OAAO,iBAAiB;YACpE,CAAC,CAAC,oCAAoC,CAAC;IAC3C,IAAI,SAAS,CAAC,WAAW,EAAE,MAAM;QAC/B,OAAO,KAAK;YACV,CAAC,CAAC,4CAA4C,OAAO,kBAAkB;YACvE,CAAC,CAAC,sCAAsC,CAAC;IAC7C,OAAO,KAAK,CAAC,CAAC,CAAC,8BAA8B,OAAO,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC"}
|
|
@@ -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"}
|
|
@@ -4,7 +4,6 @@ import { EditorWarnings } from "../EditorWarnings";
|
|
|
4
4
|
import { FieldList } from "../FieldList";
|
|
5
5
|
import { ItemInfo } from "../ItemInfo";
|
|
6
6
|
import { useEditContext } from "../client/editContext";
|
|
7
|
-
import { LanguageSelector } from "../../components/ui/LanguageSelector";
|
|
8
7
|
import { useSlotContext } from "./editorSlotContext";
|
|
9
8
|
import { TemplateBuilderDialog } from "../template-wizard/TemplateBuilderDialog";
|
|
10
9
|
const TEMPLATE_TEMPLATE_ID = "AB86861A-6030-46C5-B394-E8F99E8B87DB";
|
|
@@ -20,6 +19,9 @@ export function ItemEditor({ item, compareToItem, itemVersions, itemLanguages, o
|
|
|
20
19
|
return;
|
|
21
20
|
const versions = itemVersions ?? editContext.itemVersions;
|
|
22
21
|
const languages = itemLanguages ?? editContext.itemLanguages;
|
|
22
|
+
const availableLanguages = languages
|
|
23
|
+
.filter((language) => language.versions > 0)
|
|
24
|
+
.sort((a, b) => a.name.localeCompare(b.name));
|
|
23
25
|
const pageValidators = editContext.validationResult?.find((x) => x.item.id === item?.id &&
|
|
24
26
|
x.item.language === item?.language &&
|
|
25
27
|
x.item.version === item?.version)?.results || [];
|
|
@@ -30,27 +32,17 @@ export function ItemEditor({ item, compareToItem, itemVersions, itemLanguages, o
|
|
|
30
32
|
return;
|
|
31
33
|
}
|
|
32
34
|
await editContext.operations.createVersion(item.descriptor);
|
|
33
|
-
}, children: ["Create First Version (", item.language, ")"] })),
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
id: item.descriptor.id,
|
|
46
|
-
language: language.languageCode,
|
|
47
|
-
version: 0,
|
|
48
|
-
};
|
|
49
|
-
if (onLanguageSelected) {
|
|
50
|
-
await onLanguageSelected(descriptor);
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
await editContext.loadItem(descriptor);
|
|
54
|
-
}, showAllLanguagesSwitch: false })] }))] })), isTemplateItem && versions.length > 0 && (_jsx(TemplateBuilderDialog, { item: item }))] }));
|
|
35
|
+
}, children: ["Create First Version (", item.language, ")"] })), availableLanguages.length > 0 && (_jsxs("div", { className: "flex flex-col items-center gap-2", children: [_jsx("div", { className: "text-neutral-grey-50 text-xs", children: "Or select a different language:" }), _jsx("div", { className: "flex flex-col gap-1", children: availableLanguages.map((language) => (_jsxs(Button, { type: "button", variant: "ghost", size: "xs", className: "justify-start gap-2 font-normal", "data-testid": `language-option-${language.languageCode}`, onClick: async () => {
|
|
36
|
+
const descriptor = {
|
|
37
|
+
id: item.descriptor.id,
|
|
38
|
+
language: language.languageCode,
|
|
39
|
+
version: 0,
|
|
40
|
+
};
|
|
41
|
+
if (onLanguageSelected) {
|
|
42
|
+
await onLanguageSelected(descriptor);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
await editContext.loadItem(descriptor);
|
|
46
|
+
}, children: [_jsx("img", { src: language.icon, alt: "", className: "h-4 w-4 shrink-0 object-contain" }), _jsxs("span", { children: [language.name, " (", language.versions, ")"] })] }, language.languageCode))) })] }))] })), isTemplateItem && versions.length > 0 && (_jsx(TemplateBuilderDialog, { item: item }))] }));
|
|
55
47
|
}
|
|
56
48
|
//# sourceMappingURL=ItemEditor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemEditor.js","sourceRoot":"","sources":["../../../src/editor/views/ItemEditor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAIvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ItemEditor.js","sourceRoot":"","sources":["../../../src/editor/views/ItemEditor.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,13 @@ export { useMediaQuery } from "./editor/client/hooks/useMediaQuery";
|
|
|
7
7
|
export { NavigationProvider, usePathname, useRouter, useSearchParams, } from "./editor/client/navigation";
|
|
8
8
|
export type { NavigationRouter } from "./editor/client/navigation";
|
|
9
9
|
export { Editor } from "./editor/Editor";
|
|
10
|
-
export { configureForUser, configureTour } from "./config/config";
|
|
10
|
+
export { configureForUser, configureTour, configureForModules } from "./config/config";
|
|
11
|
+
export { SettingsPanelLayout } from "./editor/settings/SettingsPanelLayout";
|
|
12
|
+
export { SettingsCard } from "./editor/settings/SettingsCard";
|
|
13
|
+
export { SettingsHeaderActionsContext, useSettingsHeaderActions, useRequiredSettingsHeaderActions } from "./editor/settings/SettingsHeaderActionsContext";
|
|
14
|
+
export { Switch } from "./components/ui/switch";
|
|
15
|
+
export { Checkbox } from "./components/ui/checkbox";
|
|
16
|
+
export { DialogDescription } from "./components/ui/dialog";
|
|
11
17
|
export type { DialogProps } from "./editor/client/editContext";
|
|
12
18
|
export { useCanvasSelection, useEditContext, } from "./editor/client/editContext";
|
|
13
19
|
export { createVersion, createVersionsBatch, } from "./editor/services/editService";
|
|
@@ -121,6 +127,8 @@ export { convertFullItemToStub, convertStubToFullItem, } from "./editor/utils/it
|
|
|
121
127
|
export { SimpleTable } from "./editor/ui/SimpleTable";
|
|
122
128
|
export { SimpleTabs } from "./editor/ui/SimpleTabs";
|
|
123
129
|
export type { Tab } from "./editor/ui/SimpleTabs";
|
|
130
|
+
export { ContentInspectorPopover } from "./editor/ai/ContentInspectorPopover";
|
|
131
|
+
export type { ContentInspectorPopoverProps, ContentInspectorSection, } from "./editor/ai/ContentInspectorPopover";
|
|
124
132
|
export { confirmCreateVersion } from "./editor/utils/itemutils";
|
|
125
133
|
export { cn } from "./lib/utils";
|
|
126
134
|
export { ModernSplashScreen } from "./splash-screen/ModernSplashScreen";
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,13 @@ export { useParheliaSettings, useItemNameValidation, } from "./editor/hooks/useP
|
|
|
6
6
|
export { useMediaQuery } from "./editor/client/hooks/useMediaQuery";
|
|
7
7
|
export { NavigationProvider, usePathname, useRouter, useSearchParams, } from "./editor/client/navigation";
|
|
8
8
|
export { Editor } from "./editor/Editor";
|
|
9
|
-
export { configureForUser, configureTour } from "./config/config";
|
|
9
|
+
export { configureForUser, configureTour, configureForModules } from "./config/config";
|
|
10
|
+
export { SettingsPanelLayout } from "./editor/settings/SettingsPanelLayout";
|
|
11
|
+
export { SettingsCard } from "./editor/settings/SettingsCard";
|
|
12
|
+
export { SettingsHeaderActionsContext, useSettingsHeaderActions, useRequiredSettingsHeaderActions } from "./editor/settings/SettingsHeaderActionsContext";
|
|
13
|
+
export { Switch } from "./components/ui/switch";
|
|
14
|
+
export { Checkbox } from "./components/ui/checkbox";
|
|
15
|
+
export { DialogDescription } from "./components/ui/dialog";
|
|
10
16
|
export { useCanvasSelection, useEditContext, } from "./editor/client/editContext";
|
|
11
17
|
export { createVersion, createVersionsBatch, } from "./editor/services/editService";
|
|
12
18
|
export { Card } from "./components/ui/card";
|
|
@@ -86,6 +92,7 @@ export { getPlaceholderCommands, openPlaceholderSettingsCommandProvider, } from
|
|
|
86
92
|
export { convertFullItemToStub, convertStubToFullItem, } from "./editor/utils/itemConverters";
|
|
87
93
|
export { SimpleTable } from "./editor/ui/SimpleTable";
|
|
88
94
|
export { SimpleTabs } from "./editor/ui/SimpleTabs";
|
|
95
|
+
export { ContentInspectorPopover } from "./editor/ai/ContentInspectorPopover";
|
|
89
96
|
export { confirmCreateVersion } from "./editor/utils/itemutils";
|
|
90
97
|
export { cn } from "./lib/utils";
|
|
91
98
|
export { ModernSplashScreen } from "./splash-screen/ModernSplashScreen";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,CAAC;AAEzC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,eAAe,GAChB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type ViewportClipBounds = {
|
|
2
|
+
left: number;
|
|
3
|
+
top: number;
|
|
4
|
+
right: number;
|
|
5
|
+
bottom: number;
|
|
6
|
+
};
|
|
7
|
+
export type ViewportClipRect = {
|
|
8
|
+
left: number;
|
|
9
|
+
top: number;
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
};
|
|
13
|
+
export type ViewportClipOptions = {
|
|
14
|
+
horizontal?: boolean;
|
|
15
|
+
vertical?: boolean;
|
|
16
|
+
};
|
|
17
|
+
/** Clips a fixed-position overlay to the viewport that owns its anchor. */
|
|
18
|
+
export declare function getViewportClipPath(rect: ViewportClipRect, bounds: ViewportClipBounds | undefined, options?: ViewportClipOptions): string | undefined;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** Clips a fixed-position overlay to the viewport that owns its anchor. */
|
|
2
|
+
export function getViewportClipPath(rect, bounds, options = {}) {
|
|
3
|
+
if (!bounds)
|
|
4
|
+
return undefined;
|
|
5
|
+
const clipHorizontal = options.horizontal !== false;
|
|
6
|
+
const clipVertical = options.vertical !== false;
|
|
7
|
+
const right = rect.left + rect.width;
|
|
8
|
+
const bottom = rect.top + rect.height;
|
|
9
|
+
if ((clipHorizontal && (right <= bounds.left || rect.left >= bounds.right)) ||
|
|
10
|
+
(clipVertical && (bottom <= bounds.top || rect.top >= bounds.bottom))) {
|
|
11
|
+
return "inset(100%)";
|
|
12
|
+
}
|
|
13
|
+
const top = clipVertical ? Math.max(0, bounds.top - rect.top) : 0;
|
|
14
|
+
const rightInset = clipHorizontal ? Math.max(0, right - bounds.right) : 0;
|
|
15
|
+
const bottomInset = clipVertical ? Math.max(0, bottom - bounds.bottom) : 0;
|
|
16
|
+
const left = clipHorizontal ? Math.max(0, bounds.left - rect.left) : 0;
|
|
17
|
+
if (top === 0 && rightInset === 0 && bottomInset === 0 && left === 0) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
return `inset(${top}px ${rightInset}px ${bottomInset}px ${left}px)`;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=viewportClip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewportClip.js","sourceRoot":"","sources":["../../src/lib/viewportClip.ts"],"names":[],"mappings":"AAmBA,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CACjC,IAAsB,EACtB,MAAsC,EACtC,OAAO,GAAwB,EAAE;IAEjC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC;IACpD,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACtC,IACE,CAAC,cAAc,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,EACrE,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvE,IAAI,GAAG,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,WAAW,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,GAAG,MAAM,UAAU,MAAM,WAAW,MAAM,IAAI,KAAK,CAAC;AACtE,CAAC"}
|
package/dist/revision.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.
|
|
2
|
-
export declare const buildDate = "2026-09-
|
|
1
|
+
export declare const version = "0.4.12784";
|
|
2
|
+
export declare const buildDate = "2026-09-06 21:13:26";
|
package/dist/revision.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export const version = "0.
|
|
2
|
-
export const buildDate = "2026-09-
|
|
1
|
+
export const version = "0.4.12784";
|
|
2
|
+
export const buildDate = "2026-09-06 21:13:26";
|
|
3
3
|
//# sourceMappingURL=revision.js.map
|