@parhelia/core 0.2.12782 → 0.2.12786
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/editor/ai/AgentImageCopyButton.d.ts +6 -0
- package/dist/editor/ai/AgentImageCopyButton.js +93 -0
- package/dist/editor/ai/AgentImageCopyButton.js.map +1 -0
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.d.ts +24 -0
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.js +97 -0
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.js.map +1 -0
- package/dist/editor/ai/terminal/components/ValueDiff.d.ts +15 -0
- package/dist/editor/ai/terminal/components/ValueDiff.js +21 -0
- package/dist/editor/ai/terminal/components/ValueDiff.js.map +1 -0
- package/dist/editor/ai/terminal/components/agentThinkingStyles.d.ts +1 -0
- package/dist/editor/ai/terminal/components/agentThinkingStyles.js +2 -0
- package/dist/editor/ai/terminal/components/agentThinkingStyles.js.map +1 -0
- package/dist/editor/ai/terminal/components/toolCallContentRenderers.d.ts +15 -0
- package/dist/editor/ai/terminal/components/toolCallContentRenderers.js +12 -0
- package/dist/editor/ai/terminal/components/toolCallContentRenderers.js.map +1 -0
- package/dist/editor/bridge/protocol.d.ts +17 -0
- package/dist/editor/bridge/protocol.js.map +1 -1
- package/dist/editor/client/editContext.d.ts +10 -0
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/hooks/activeSessionSnapshots.d.ts +2 -0
- package/dist/editor/client/hooks/activeSessionSnapshots.js +43 -0
- package/dist/editor/client/hooks/activeSessionSnapshots.js.map +1 -0
- package/dist/editor/client/hooks/operationRefreshDeduplication.d.ts +22 -0
- package/dist/editor/client/hooks/operationRefreshDeduplication.js +45 -0
- package/dist/editor/client/hooks/operationRefreshDeduplication.js.map +1 -0
- package/dist/editor/client/hooks/socketMessageRetention.d.ts +7 -0
- package/dist/editor/client/hooks/socketMessageRetention.js +11 -0
- package/dist/editor/client/hooks/socketMessageRetention.js.map +1 -0
- package/dist/editor/client/hooks/useClientInfoRegistration.d.ts +13 -0
- package/dist/editor/client/hooks/useClientInfoRegistration.js +38 -0
- package/dist/editor/client/hooks/useClientInfoRegistration.js.map +1 -0
- package/dist/editor/client/undoTargetResolution.d.ts +28 -0
- package/dist/editor/client/undoTargetResolution.js +69 -0
- package/dist/editor/client/undoTargetResolution.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/conversion.d.ts +2 -1
- package/dist/editor/field-types/richtext/utils/conversion.js +3 -1
- package/dist/editor/field-types/richtext/utils/conversion.js.map +1 -1
- package/dist/editor/field-types/singleLineTextValue.d.ts +3 -0
- package/dist/editor/field-types/singleLineTextValue.js +9 -0
- package/dist/editor/field-types/singleLineTextValue.js.map +1 -0
- package/dist/editor/insertOptionCompatibility.d.ts +7 -0
- package/dist/editor/insertOptionCompatibility.js +15 -0
- package/dist/editor/insertOptionCompatibility.js.map +1 -0
- package/dist/editor/media-selector/mediaItemDrag.d.ts +28 -0
- package/dist/editor/media-selector/mediaItemDrag.js +42 -0
- package/dist/editor/media-selector/mediaItemDrag.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/PreviewModeControl.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/PreviewModeControl.js +14 -0
- package/dist/editor/menubar/toolbar-sections/PreviewModeControl.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/RefreshPageControl.d.ts +7 -0
- package/dist/editor/menubar/toolbar-sections/RefreshPageControl.js +44 -0
- package/dist/editor/menubar/toolbar-sections/RefreshPageControl.js.map +1 -0
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +26 -12
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.d.ts +58 -0
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js +731 -0
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js.map +1 -0
- package/dist/editor/page-editor-chrome/bridgeLinkValue.d.ts +10 -0
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js +55 -0
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js.map +1 -0
- package/dist/editor/page-viewer/bridgeInlineAiSelection.d.ts +17 -0
- package/dist/editor/page-viewer/bridgeInlineAiSelection.js +80 -0
- package/dist/editor/page-viewer/bridgeInlineAiSelection.js.map +1 -0
- package/dist/editor/page-viewer/bridgeInlineEditCommit.d.ts +18 -0
- package/dist/editor/page-viewer/bridgeInlineEditCommit.js +24 -0
- package/dist/editor/page-viewer/bridgeInlineEditCommit.js.map +1 -0
- package/dist/editor/page-viewer/bridgeItemChangeTarget.d.ts +9 -0
- package/dist/editor/page-viewer/bridgeItemChangeTarget.js +38 -0
- package/dist/editor/page-viewer/bridgeItemChangeTarget.js.map +1 -0
- package/dist/editor/page-viewer/bridgePointerDragRelease.d.ts +31 -0
- package/dist/editor/page-viewer/bridgePointerDragRelease.js +32 -0
- package/dist/editor/page-viewer/bridgePointerDragRelease.js.map +1 -0
- package/dist/editor/page-viewer/fullscreenPagePath.d.ts +1 -0
- package/dist/editor/page-viewer/fullscreenPagePath.js +11 -0
- package/dist/editor/page-viewer/fullscreenPagePath.js.map +1 -0
- package/dist/editor/page-viewer/internalLinkNavigation.d.ts +9 -0
- package/dist/editor/page-viewer/internalLinkNavigation.js +104 -0
- package/dist/editor/page-viewer/internalLinkNavigation.js.map +1 -0
- package/dist/editor/reviews/FeedbackFilters.d.ts +16 -0
- package/dist/editor/reviews/FeedbackFilters.js +45 -0
- package/dist/editor/reviews/FeedbackFilters.js.map +1 -0
- package/dist/editor/reviews/commentState.d.ts +4 -0
- package/dist/editor/reviews/commentState.js +15 -0
- package/dist/editor/reviews/commentState.js.map +1 -0
- package/dist/editor/settings/index/IndexGenerationsSection.d.ts +8 -0
- package/dist/editor/settings/index/IndexGenerationsSection.js +93 -0
- package/dist/editor/settings/index/IndexGenerationsSection.js.map +1 -0
- package/dist/editor/settings/panels/MemoriesPanel.d.ts +16 -0
- package/dist/editor/settings/panels/MemoriesPanel.js +292 -0
- package/dist/editor/settings/panels/MemoriesPanel.js.map +1 -0
- package/dist/editor/settings/panels/MemoryEntryDialog.d.ts +45 -0
- package/dist/editor/settings/panels/MemoryEntryDialog.js +167 -0
- package/dist/editor/settings/panels/MemoryEntryDialog.js.map +1 -0
- package/dist/editor/settings/panels/RenderingHostsPanel.d.ts +2 -0
- package/dist/editor/settings/panels/RenderingHostsPanel.js +63 -0
- package/dist/editor/settings/panels/RenderingHostsPanel.js.map +1 -0
- package/dist/editor/settings/panels/projectTemplateDuplication.d.ts +5 -0
- package/dist/editor/settings/panels/projectTemplateDuplication.js +57 -0
- package/dist/editor/settings/panels/projectTemplateDuplication.js.map +1 -0
- package/dist/editor/sidebar/WorkboxFilters.d.ts +11 -0
- package/dist/editor/sidebar/WorkboxFilters.js +61 -0
- package/dist/editor/sidebar/WorkboxFilters.js.map +1 -0
- package/dist/editor/version-diff/versionDiffGeometryKeys.d.ts +10 -0
- package/dist/editor/version-diff/versionDiffGeometryKeys.js +16 -0
- package/dist/editor/version-diff/versionDiffGeometryKeys.js.map +1 -0
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/package.json +1 -1
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.d.ts +0 -5
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js +0 -12
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js.map +0 -1
- package/dist/editor/ai/terminal/components/AgentThinkingDots.d.ts +0 -5
- package/dist/editor/ai/terminal/components/AgentThinkingDots.js +0 -9
- package/dist/editor/ai/terminal/components/AgentThinkingDots.js.map +0 -1
- package/dist/editor/reviews/CommentsAndFeedback.d.ts +0 -8
- package/dist/editor/reviews/CommentsAndFeedback.js +0 -17
- package/dist/editor/reviews/CommentsAndFeedback.js.map +0 -1
- package/dist/editor/reviews/CreateReviewDetailsStep.d.ts +0 -53
- package/dist/editor/reviews/CreateReviewDetailsStep.js +0 -77
- package/dist/editor/reviews/CreateReviewDetailsStep.js.map +0 -1
- package/dist/splash-screen/ParheliaAssistantChat.d.ts +0 -8
- package/dist/splash-screen/ParheliaAssistantChat.js +0 -507
- package/dist/splash-screen/ParheliaAssistantChat.js.map +0 -1
- package/dist/splash-screen/SplashScreenAgentContext.d.ts +0 -28
- package/dist/splash-screen/SplashScreenAgentContext.js +0 -51
- package/dist/splash-screen/SplashScreenAgentContext.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineFieldHistoryButton.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/InlineFieldHistoryButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Link } from "../LinkEditorDialog";
|
|
2
|
+
import type { BridgeSelectionLinkAttributes } from "../bridge/protocol";
|
|
3
|
+
/**
|
|
4
|
+
* Builds the LinkEditorDialog value for the anchor the canvas selection is
|
|
5
|
+
* inside, so re-opening the link dialog on the WYSIWYG toolbar hydrates the
|
|
6
|
+
* current link the same way the form editor does. Uses the rich text
|
|
7
|
+
* converter's anchor parsing, so internal-link detection (dynamic links,
|
|
8
|
+
* data attributes, editor-local hrefs) cannot drift between the two editors.
|
|
9
|
+
*/
|
|
10
|
+
export declare function buildLinkValueFromBridgeAttributes(attributes: BridgeSelectionLinkAttributes | undefined): Link | null;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { createLinkElementFromAnchor } from "../field-types/richtext/utils/conversion";
|
|
2
|
+
/**
|
|
3
|
+
* Builds the LinkEditorDialog value for the anchor the canvas selection is
|
|
4
|
+
* inside, so re-opening the link dialog on the WYSIWYG toolbar hydrates the
|
|
5
|
+
* current link the same way the form editor does. Uses the rich text
|
|
6
|
+
* converter's anchor parsing, so internal-link detection (dynamic links,
|
|
7
|
+
* data attributes, editor-local hrefs) cannot drift between the two editors.
|
|
8
|
+
*/
|
|
9
|
+
export function buildLinkValueFromBridgeAttributes(attributes) {
|
|
10
|
+
if (!attributes?.href || typeof document === "undefined") {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const anchor = document.createElement("a");
|
|
14
|
+
anchor.setAttribute("href", attributes.href);
|
|
15
|
+
if (attributes.target)
|
|
16
|
+
anchor.setAttribute("target", attributes.target);
|
|
17
|
+
if (attributes.title)
|
|
18
|
+
anchor.setAttribute("title", attributes.title);
|
|
19
|
+
if (attributes.rel)
|
|
20
|
+
anchor.setAttribute("rel", attributes.rel);
|
|
21
|
+
if (attributes.dataInternal) {
|
|
22
|
+
anchor.setAttribute("data-internal", attributes.dataInternal);
|
|
23
|
+
}
|
|
24
|
+
if (attributes.dataItemId) {
|
|
25
|
+
anchor.setAttribute("data-item-id", attributes.dataItemId);
|
|
26
|
+
}
|
|
27
|
+
if (attributes.dataQuerystring) {
|
|
28
|
+
anchor.setAttribute("data-querystring", attributes.dataQuerystring);
|
|
29
|
+
}
|
|
30
|
+
const linkElement = createLinkElementFromAnchor(anchor, []);
|
|
31
|
+
const link = linkElement.link;
|
|
32
|
+
if (!link) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
if (link.type === "internal") {
|
|
36
|
+
return {
|
|
37
|
+
type: "internal",
|
|
38
|
+
itemId: link.itemId || link.targetItemLongId?.split("/").pop() || "",
|
|
39
|
+
targetItemLongId: link.targetItemLongId || "",
|
|
40
|
+
target: link.target === "_self" ? "" : link.target || "",
|
|
41
|
+
queryString: link.queryString || "",
|
|
42
|
+
title: link.title || "",
|
|
43
|
+
nofollow: !!link.nofollow,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
type: "external",
|
|
48
|
+
url: linkElement.url || link.url || "",
|
|
49
|
+
target: link.target === "_self" ? "" : link.target || "",
|
|
50
|
+
queryString: link.queryString || "",
|
|
51
|
+
title: link.title || "",
|
|
52
|
+
nofollow: !!link.nofollow,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=bridgeLinkValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeLinkValue.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/bridgeLinkValue.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,UAAU,kCAAkC,CAChD,UAAqD;IAErD,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,MAAM;QAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACxE,IAAI,UAAU,CAAC,KAAK;QAAE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,UAAU,CAAC,GAAG;QAAE,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/D,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;QAC5B,MAAM,CAAC,YAAY,CAAC,eAAe,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QAC1B,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;QAC/B,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,WAAW,GAAG,2BAA2B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;YACpE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;YAC7C,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;YACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;SAC1B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE;QACtC,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;QACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;QACnC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;QACvB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SelectionRange } from "../client/editContext";
|
|
2
|
+
import type { BridgeItemDescriptor, BridgeSelectionSnapshot, InteractionEventPayload } from "../bridge/protocol";
|
|
3
|
+
type FrameRect = Pick<DOMRect, "left" | "top">;
|
|
4
|
+
type FallbackItem = Pick<BridgeItemDescriptor, "id" | "language" | "version">;
|
|
5
|
+
/**
|
|
6
|
+
* Resolves an Inline AI range from the event-time bridge payload. React's edit
|
|
7
|
+
* context can still contain the preceding selection for one render when the
|
|
8
|
+
* shortcut follows selectionchange immediately, so it must not be the source
|
|
9
|
+
* of truth for this command.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveBridgeInlineAiSelectionRange({ interaction, bridgeSelection, iframeRect, fallbackItem, }: {
|
|
12
|
+
interaction: InteractionEventPayload;
|
|
13
|
+
bridgeSelection?: BridgeSelectionSnapshot;
|
|
14
|
+
iframeRect: FrameRect;
|
|
15
|
+
fallbackItem?: FallbackItem;
|
|
16
|
+
}): SelectionRange | undefined;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { bridgeSelectionMatchesInteraction } from "./bridgeTextCompletion";
|
|
2
|
+
function isFiniteOffset(value) {
|
|
3
|
+
return typeof value === "number" && Number.isFinite(value);
|
|
4
|
+
}
|
|
5
|
+
function projectRectToEditor(rect, iframeRect) {
|
|
6
|
+
if (!rect)
|
|
7
|
+
return undefined;
|
|
8
|
+
return {
|
|
9
|
+
x: iframeRect.left + rect.left,
|
|
10
|
+
y: iframeRect.top + rect.top,
|
|
11
|
+
width: rect.width,
|
|
12
|
+
height: rect.height,
|
|
13
|
+
top: iframeRect.top + rect.top,
|
|
14
|
+
right: iframeRect.left + rect.right,
|
|
15
|
+
bottom: iframeRect.top + rect.bottom,
|
|
16
|
+
left: iframeRect.left + rect.left,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Resolves an Inline AI range from the event-time bridge payload. React's edit
|
|
21
|
+
* context can still contain the preceding selection for one render when the
|
|
22
|
+
* shortcut follows selectionchange immediately, so it must not be the source
|
|
23
|
+
* of truth for this command.
|
|
24
|
+
*/
|
|
25
|
+
export function resolveBridgeInlineAiSelectionRange({ interaction, bridgeSelection, iframeRect, fallbackItem, }) {
|
|
26
|
+
const snapshotMatches = bridgeSelectionMatchesInteraction(bridgeSelection, interaction);
|
|
27
|
+
const activeField = snapshotMatches
|
|
28
|
+
? bridgeSelection?.activeField
|
|
29
|
+
: undefined;
|
|
30
|
+
const item = interaction.item ?? activeField?.item ?? fallbackItem;
|
|
31
|
+
const elementKey = interaction.elementKey ?? activeField?.elementKey;
|
|
32
|
+
const fieldId = interaction.fieldId ?? activeField?.fieldId;
|
|
33
|
+
const liveText = interaction.selectedText;
|
|
34
|
+
const text = typeof liveText === "string" && liveText.trim()
|
|
35
|
+
? liveText
|
|
36
|
+
: snapshotMatches
|
|
37
|
+
? bridgeSelection?.text
|
|
38
|
+
: undefined;
|
|
39
|
+
const startOffset = isFiniteOffset(interaction.selectionStartOffset)
|
|
40
|
+
? interaction.selectionStartOffset
|
|
41
|
+
: snapshotMatches && isFiniteOffset(bridgeSelection?.startOffset)
|
|
42
|
+
? bridgeSelection.startOffset
|
|
43
|
+
: undefined;
|
|
44
|
+
const endOffset = isFiniteOffset(interaction.selectionEndOffset)
|
|
45
|
+
? interaction.selectionEndOffset
|
|
46
|
+
: snapshotMatches && isFiniteOffset(bridgeSelection?.endOffset)
|
|
47
|
+
? bridgeSelection.endOffset
|
|
48
|
+
: undefined;
|
|
49
|
+
if (!text?.trim() ||
|
|
50
|
+
!item?.id ||
|
|
51
|
+
!fieldId ||
|
|
52
|
+
!elementKey ||
|
|
53
|
+
startOffset === undefined ||
|
|
54
|
+
endOffset === undefined ||
|
|
55
|
+
endOffset <= startOffset) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
const metadata = snapshotMatches ? bridgeSelection?.metadata : undefined;
|
|
59
|
+
return {
|
|
60
|
+
itemId: item.id,
|
|
61
|
+
fieldId,
|
|
62
|
+
elementKey,
|
|
63
|
+
isRichText: activeField?.isRichText,
|
|
64
|
+
language: item.language,
|
|
65
|
+
version: item.version,
|
|
66
|
+
startOffset,
|
|
67
|
+
endOffset,
|
|
68
|
+
text,
|
|
69
|
+
contextBefore: typeof metadata?.contextBefore === "string"
|
|
70
|
+
? metadata.contextBefore
|
|
71
|
+
: undefined,
|
|
72
|
+
contextAfter: typeof metadata?.contextAfter === "string"
|
|
73
|
+
? metadata.contextAfter
|
|
74
|
+
: undefined,
|
|
75
|
+
formatting: snapshotMatches ? bridgeSelection?.formatting : undefined,
|
|
76
|
+
clientRect: projectRectToEditor(interaction.selectionRect ??
|
|
77
|
+
(snapshotMatches ? bridgeSelection?.rect : undefined), iframeRect),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=bridgeInlineAiSelection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeInlineAiSelection.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/bridgeInlineAiSelection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const BRIDGE_INLINE_EDIT_COMMIT_EVENT = "parhelia:bridge-inline-edit-commit";
|
|
2
|
+
export declare const BRIDGE_AUTHORITATIVE_REFRESH_EVENT = "parhelia:bridge-authoritative-refresh";
|
|
3
|
+
export type BridgeInlineEditCommitEventDetail = {
|
|
4
|
+
barriers: Promise<void>[];
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Commits any live inline-edit DOM value before editor chrome changes the
|
|
8
|
+
* surrounding selection or navigation state. Each mounted page frame adds
|
|
9
|
+
* its own persistence barrier synchronously while the event is dispatched.
|
|
10
|
+
*/
|
|
11
|
+
export declare function commitActiveBridgeInlineEdits(): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Marks the next canvas refresh as an authoritative server replacement. Undo
|
|
14
|
+
* and redo use this before they advance the refresh revision so every mounted
|
|
15
|
+
* frame discards a live pre-operation draft instead of restoring it over the
|
|
16
|
+
* value returned by the server.
|
|
17
|
+
*/
|
|
18
|
+
export declare function markNextBridgeRefreshAuthoritative(): void;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export const BRIDGE_INLINE_EDIT_COMMIT_EVENT = "parhelia:bridge-inline-edit-commit";
|
|
2
|
+
export const BRIDGE_AUTHORITATIVE_REFRESH_EVENT = "parhelia:bridge-authoritative-refresh";
|
|
3
|
+
/**
|
|
4
|
+
* Commits any live inline-edit DOM value before editor chrome changes the
|
|
5
|
+
* surrounding selection or navigation state. Each mounted page frame adds
|
|
6
|
+
* its own persistence barrier synchronously while the event is dispatched.
|
|
7
|
+
*/
|
|
8
|
+
export async function commitActiveBridgeInlineEdits() {
|
|
9
|
+
const detail = { barriers: [] };
|
|
10
|
+
window.dispatchEvent(new CustomEvent(BRIDGE_INLINE_EDIT_COMMIT_EVENT, { detail }));
|
|
11
|
+
await Promise.all(detail.barriers);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Marks the next canvas refresh as an authoritative server replacement. Undo
|
|
15
|
+
* and redo use this before they advance the refresh revision so every mounted
|
|
16
|
+
* frame discards a live pre-operation draft instead of restoring it over the
|
|
17
|
+
* value returned by the server.
|
|
18
|
+
*/
|
|
19
|
+
export function markNextBridgeRefreshAuthoritative() {
|
|
20
|
+
if (typeof window === "undefined")
|
|
21
|
+
return;
|
|
22
|
+
window.dispatchEvent(new Event(BRIDGE_AUTHORITATIVE_REFRESH_EVENT));
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=bridgeInlineEditCommit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeInlineEditCommit.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/bridgeInlineEditCommit.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAC1C,oCAAoC,CAAC;AACvC,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uCAAuC,CAAC;AAM1C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B;IACjD,MAAM,MAAM,GAAsC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACnE,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CACb,+BAA+B,EAC/B,EAAE,MAAM,EAAE,CACX,CACF,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kCAAkC;IAChD,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { BridgeItemDescriptor, SerializableField } from "../bridge/protocol";
|
|
2
|
+
import type { ItemDescriptor } from "../pageModel";
|
|
3
|
+
export declare function bridgeItemDescriptorMatchesItem(bridgeItem: BridgeItemDescriptor | undefined, item: ItemDescriptor): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Returns true only when a changed item can feed at least one field in the
|
|
6
|
+
* current canvas. Older bridges omitted the per-field item descriptor; those
|
|
7
|
+
* fields belong to the canvas page, not to every item visible to the user.
|
|
8
|
+
*/
|
|
9
|
+
export declare function bridgeStructureTargetsChangedItem(fields: readonly SerializableField[], changedItem: ItemDescriptor, pageItem: ItemDescriptor | undefined): boolean;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { normalizeMarkerId } from "../utils";
|
|
2
|
+
function idsMatch(left, right) {
|
|
3
|
+
const normalizedLeft = normalizeMarkerId(left);
|
|
4
|
+
const normalizedRight = normalizeMarkerId(right);
|
|
5
|
+
return (!!normalizedLeft && !!normalizedRight && normalizedLeft === normalizedRight);
|
|
6
|
+
}
|
|
7
|
+
export function bridgeItemDescriptorMatchesItem(bridgeItem, item) {
|
|
8
|
+
if (!bridgeItem?.id)
|
|
9
|
+
return true;
|
|
10
|
+
if (!idsMatch(bridgeItem.id, item.id))
|
|
11
|
+
return false;
|
|
12
|
+
if (bridgeItem.language &&
|
|
13
|
+
item.language &&
|
|
14
|
+
bridgeItem.language.toLowerCase() !== item.language.toLowerCase()) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
if (typeof bridgeItem.version === "number" &&
|
|
18
|
+
Number.isFinite(bridgeItem.version) &&
|
|
19
|
+
typeof item.version === "number" &&
|
|
20
|
+
Number.isFinite(item.version) &&
|
|
21
|
+
bridgeItem.version !== item.version) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Returns true only when a changed item can feed at least one field in the
|
|
28
|
+
* current canvas. Older bridges omitted the per-field item descriptor; those
|
|
29
|
+
* fields belong to the canvas page, not to every item visible to the user.
|
|
30
|
+
*/
|
|
31
|
+
export function bridgeStructureTargetsChangedItem(fields, changedItem, pageItem) {
|
|
32
|
+
return fields.some((field) => {
|
|
33
|
+
const targetItem = field.item?.id ? field.item : pageItem;
|
|
34
|
+
return (!!targetItem?.id &&
|
|
35
|
+
bridgeItemDescriptorMatchesItem(targetItem, changedItem));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=bridgeItemChangeTarget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeItemChangeTarget.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/bridgeItemChangeTarget.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,SAAS,QAAQ,CACf,IAA+B,EAC/B,KAAgC;IAEhC,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,CACL,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,eAAe,IAAI,cAAc,KAAK,eAAe,CAC5E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,UAA4C,EAC5C,IAAoB;IAEpB,IAAI,CAAC,UAAU,EAAE,EAAE;QAAE,OAAO,IAAI,CAAC;IACjC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IAEpD,IACE,UAAU,CAAC,QAAQ;QACnB,IAAI,CAAC,QAAQ;QACb,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EACjE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IACE,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ;QACtC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,UAAU,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,EACnC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iCAAiC,CAC/C,MAAoC,EACpC,WAA2B,EAC3B,QAAoC;IAEpC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1D,OAAO,CACL,CAAC,CAAC,UAAU,EAAE,EAAE;YAChB,+BAA+B,CAAC,UAAU,EAAE,WAAW,CAAC,CACzD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { DragGestureEndedEventPayload } from "../bridge/protocol";
|
|
2
|
+
export type ActiveBridgePointerDrag = {
|
|
3
|
+
pointerId: number;
|
|
4
|
+
clientX: number;
|
|
5
|
+
clientY: number;
|
|
6
|
+
};
|
|
7
|
+
type ParentPointerRelease = {
|
|
8
|
+
button: number;
|
|
9
|
+
pointerId?: number;
|
|
10
|
+
clientX: number;
|
|
11
|
+
clientY: number;
|
|
12
|
+
};
|
|
13
|
+
type FrameRect = {
|
|
14
|
+
left: number;
|
|
15
|
+
right: number;
|
|
16
|
+
top: number;
|
|
17
|
+
bottom: number;
|
|
18
|
+
width: number;
|
|
19
|
+
height: number;
|
|
20
|
+
};
|
|
21
|
+
type HostViewport = {
|
|
22
|
+
width: number;
|
|
23
|
+
height: number;
|
|
24
|
+
};
|
|
25
|
+
export declare function projectParentPointerToHost(clientX: number, clientY: number, frameRect: FrameRect, hostViewport: HostViewport | undefined): {
|
|
26
|
+
inside: boolean;
|
|
27
|
+
clientX: number;
|
|
28
|
+
clientY: number;
|
|
29
|
+
};
|
|
30
|
+
export declare function resolveParentBridgePointerRelease(active: ActiveBridgePointerDrag, event: ParentPointerRelease, frameRect: FrameRect, hostViewport: HostViewport | undefined): DragGestureEndedEventPayload | undefined;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export function projectParentPointerToHost(clientX, clientY, frameRect, hostViewport) {
|
|
2
|
+
const inside = clientX >= frameRect.left &&
|
|
3
|
+
clientX <= frameRect.right &&
|
|
4
|
+
clientY >= frameRect.top &&
|
|
5
|
+
clientY <= frameRect.bottom;
|
|
6
|
+
const scaleX = frameRect.width > 0 && hostViewport?.width
|
|
7
|
+
? hostViewport.width / frameRect.width
|
|
8
|
+
: 1;
|
|
9
|
+
const scaleY = frameRect.height > 0 && hostViewport?.height
|
|
10
|
+
? hostViewport.height / frameRect.height
|
|
11
|
+
: 1;
|
|
12
|
+
return {
|
|
13
|
+
inside,
|
|
14
|
+
clientX: (clientX - frameRect.left) * scaleX,
|
|
15
|
+
clientY: (clientY - frameRect.top) * scaleY,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export function resolveParentBridgePointerRelease(active, event, frameRect, hostViewport) {
|
|
19
|
+
if (event.button !== 0 ||
|
|
20
|
+
(typeof event.pointerId === "number" &&
|
|
21
|
+
event.pointerId !== active.pointerId)) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
const projected = projectParentPointerToHost(event.clientX, event.clientY, frameRect, hostViewport);
|
|
25
|
+
return {
|
|
26
|
+
pointerId: active.pointerId,
|
|
27
|
+
clientX: projected.inside ? projected.clientX : active.clientX,
|
|
28
|
+
clientY: projected.inside ? projected.clientY : active.clientY,
|
|
29
|
+
canceled: !projected.inside,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=bridgePointerDragRelease.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgePointerDragRelease.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/bridgePointerDragRelease.ts"],"names":[],"mappings":"AA6BA,MAAM,UAAU,0BAA0B,CACxC,OAAe,EACf,OAAe,EACf,SAAoB,EACpB,YAAsC;IAEtC,MAAM,MAAM,GACV,OAAO,IAAI,SAAS,CAAC,IAAI;QACzB,OAAO,IAAI,SAAS,CAAC,KAAK;QAC1B,OAAO,IAAI,SAAS,CAAC,GAAG;QACxB,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC;IAC9B,MAAM,MAAM,GACV,SAAS,CAAC,KAAK,GAAG,CAAC,IAAI,YAAY,EAAE,KAAK;QACxC,CAAC,CAAC,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;QACtC,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,MAAM,GACV,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,EAAE,MAAM;QAC1C,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;QACxC,CAAC,CAAC,CAAC,CAAC;IAER,OAAO;QACL,MAAM;QACN,OAAO,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM;QAC5C,OAAO,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,MAA+B,EAC/B,KAA2B,EAC3B,SAAoB,EACpB,YAAsC;IAEtC,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;QAClB,CAAC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YAClC,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,CAAC,EACvC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,0BAA0B,CAC1C,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,OAAO,EACb,SAAS,EACT,YAAY,CACb,CAAC;IAEF,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO;QAC9D,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO;QAC9D,QAAQ,EAAE,CAAC,SAAS,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getFullscreenPagePathPrefix(path?: string): string | undefined;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function getFullscreenPagePathPrefix(path) {
|
|
2
|
+
const normalizedPath = path?.trim();
|
|
3
|
+
if (!normalizedPath)
|
|
4
|
+
return undefined;
|
|
5
|
+
const segments = normalizedPath.split("/").filter(Boolean);
|
|
6
|
+
const contentIndex = segments.findIndex((segment) => segment.toLowerCase() === "content");
|
|
7
|
+
const itemSegments = contentIndex >= 0 ? segments.slice(contentIndex + 1) : segments;
|
|
8
|
+
const parentSegments = itemSegments.slice(0, -1);
|
|
9
|
+
return parentSegments.length > 0 ? `/${parentSegments.join("/")}/` : "/";
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=fullscreenPagePath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fullscreenPagePath.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/fullscreenPagePath.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,2BAA2B,CAAC,IAAa;IACvD,MAAM,cAAc,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;IACpC,IAAI,CAAC,cAAc;QAAE,OAAO,SAAS,CAAC;IAEtC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CACrC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,SAAS,CACjD,CAAC;IACF,MAAM,YAAY,GAChB,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEjD,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function extractInternalLinkPath(href: string | undefined, baseUrl: string): string | undefined;
|
|
2
|
+
export declare function shouldOpenInternalLinkInNewSlot(fullscreen: boolean): boolean;
|
|
3
|
+
export declare function extractInternalLinkTargetItemId(input: {
|
|
4
|
+
href?: string;
|
|
5
|
+
targetItemId?: string;
|
|
6
|
+
rawFieldValue?: string | null;
|
|
7
|
+
structuredFieldValue?: unknown;
|
|
8
|
+
anchorIndex?: number;
|
|
9
|
+
}): string | undefined;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { cleanId } from "../utils/id-helper";
|
|
2
|
+
const GUID_HEX_LENGTH = 32;
|
|
3
|
+
function normalizeTargetItemId(value) {
|
|
4
|
+
if (!value)
|
|
5
|
+
return undefined;
|
|
6
|
+
let decoded = value;
|
|
7
|
+
try {
|
|
8
|
+
decoded = decodeURIComponent(value);
|
|
9
|
+
}
|
|
10
|
+
catch {
|
|
11
|
+
// Keep the authored value when it contains malformed percent escapes.
|
|
12
|
+
}
|
|
13
|
+
const cleaned = cleanId(decoded);
|
|
14
|
+
if (!cleaned)
|
|
15
|
+
return undefined;
|
|
16
|
+
const compact = cleaned.replace(/-/g, "");
|
|
17
|
+
if (compact.length === GUID_HEX_LENGTH && /^[0-9a-f]+$/i.test(compact)) {
|
|
18
|
+
return [
|
|
19
|
+
compact.slice(0, 8),
|
|
20
|
+
compact.slice(8, 12),
|
|
21
|
+
compact.slice(12, 16),
|
|
22
|
+
compact.slice(16, 20),
|
|
23
|
+
compact.slice(20),
|
|
24
|
+
].join("-");
|
|
25
|
+
}
|
|
26
|
+
return cleaned;
|
|
27
|
+
}
|
|
28
|
+
function readAttribute(tag, attributeName) {
|
|
29
|
+
const escapedName = attributeName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
30
|
+
const match = tag.match(new RegExp(`\\b${escapedName}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s>]+))`, "i"));
|
|
31
|
+
return match?.[1] ?? match?.[2] ?? match?.[3];
|
|
32
|
+
}
|
|
33
|
+
function extractTargetItemIdFromHref(href) {
|
|
34
|
+
if (!href)
|
|
35
|
+
return undefined;
|
|
36
|
+
const normalizedHref = href.replace(/&/gi, "&");
|
|
37
|
+
const queryStart = normalizedHref.indexOf("?");
|
|
38
|
+
if (queryStart < 0)
|
|
39
|
+
return undefined;
|
|
40
|
+
const hashStart = normalizedHref.indexOf("#", queryStart);
|
|
41
|
+
const query = hashStart >= 0
|
|
42
|
+
? normalizedHref.slice(queryStart + 1, hashStart)
|
|
43
|
+
: normalizedHref.slice(queryStart + 1);
|
|
44
|
+
const params = new URLSearchParams(query);
|
|
45
|
+
for (const name of ["_id", "sc_itemid", "itemid"]) {
|
|
46
|
+
const itemId = normalizeTargetItemId(params.get(name));
|
|
47
|
+
if (itemId)
|
|
48
|
+
return itemId;
|
|
49
|
+
}
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
export function extractInternalLinkPath(href, baseUrl) {
|
|
53
|
+
if (!href)
|
|
54
|
+
return undefined;
|
|
55
|
+
try {
|
|
56
|
+
const resolved = new URL(href, baseUrl);
|
|
57
|
+
const base = new URL(baseUrl);
|
|
58
|
+
if (resolved.origin !== base.origin)
|
|
59
|
+
return undefined;
|
|
60
|
+
return resolved.pathname || "/";
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export function shouldOpenInternalLinkInNewSlot(fullscreen) {
|
|
67
|
+
return !fullscreen;
|
|
68
|
+
}
|
|
69
|
+
function extractGeneralLinkTargetItemId(rawValue) {
|
|
70
|
+
const linkTag = rawValue.match(/<link\b[^>]*>/i)?.[0];
|
|
71
|
+
if (!linkTag)
|
|
72
|
+
return undefined;
|
|
73
|
+
if (readAttribute(linkTag, "linktype")?.toLowerCase() !== "internal") {
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
return normalizeTargetItemId(readAttribute(linkTag, "id") ?? readAttribute(linkTag, "targetitemid"));
|
|
77
|
+
}
|
|
78
|
+
function extractRichTextTargetItemId(rawValue, anchorIndex) {
|
|
79
|
+
const anchors = [...rawValue.matchAll(/<a\b[^>]*>/gi)];
|
|
80
|
+
const anchor = anchors[anchorIndex ?? 0]?.[0];
|
|
81
|
+
if (!anchor)
|
|
82
|
+
return undefined;
|
|
83
|
+
return extractTargetItemIdFromHref(readAttribute(anchor, "href"));
|
|
84
|
+
}
|
|
85
|
+
export function extractInternalLinkTargetItemId(input) {
|
|
86
|
+
const explicitTarget = normalizeTargetItemId(input.targetItemId);
|
|
87
|
+
if (explicitTarget)
|
|
88
|
+
return explicitTarget;
|
|
89
|
+
const directHrefTarget = extractTargetItemIdFromHref(input.href);
|
|
90
|
+
if (directHrefTarget)
|
|
91
|
+
return directHrefTarget;
|
|
92
|
+
if (input.structuredFieldValue &&
|
|
93
|
+
typeof input.structuredFieldValue === "object") {
|
|
94
|
+
const targetItemId = normalizeTargetItemId(input.structuredFieldValue.targetItemId);
|
|
95
|
+
if (targetItemId)
|
|
96
|
+
return targetItemId;
|
|
97
|
+
}
|
|
98
|
+
const rawValue = input.rawFieldValue;
|
|
99
|
+
if (!rawValue)
|
|
100
|
+
return undefined;
|
|
101
|
+
return (extractGeneralLinkTargetItemId(rawValue) ??
|
|
102
|
+
extractRichTextTargetItemId(rawValue, input.anchorIndex));
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=internalLinkNavigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internalLinkNavigation.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/internalLinkNavigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
interface FeedbackAuthor {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
}
|
|
5
|
+
interface FeedbackFiltersProps {
|
|
6
|
+
showResolved: boolean;
|
|
7
|
+
selectedPeople: string[];
|
|
8
|
+
availableAuthors: FeedbackAuthor[];
|
|
9
|
+
sortField: "date" | "structure";
|
|
10
|
+
sortDirection: "asc" | "desc";
|
|
11
|
+
onShowResolvedChange: (showResolved: boolean) => void;
|
|
12
|
+
onSelectedPeopleChange: (people: string[]) => void;
|
|
13
|
+
onSortChange: (field: "date" | "structure") => void;
|
|
14
|
+
}
|
|
15
|
+
export declare function FeedbackFilters({ showResolved, selectedPeople, availableAuthors, sortField, sortDirection, onShowResolvedChange, onSelectedPeopleChange, onSortChange, }: FeedbackFiltersProps): import("react").JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ArrowDown, ArrowUp, Calendar, FolderTree, ListFilter, } from "lucide-react";
|
|
3
|
+
import { Button } from "../../components/ui/button";
|
|
4
|
+
import { Checkbox } from "../../components/ui/checkbox";
|
|
5
|
+
import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
|
|
6
|
+
import { Tooltip, TooltipContent, TooltipTrigger, } from "../../components/ui/tooltip";
|
|
7
|
+
import { SimpleIconButton } from "../ui/SimpleIconButton";
|
|
8
|
+
import { FEEDBACK_SIDEBAR_TEXT_CLASS } from "./feedbackSidebarText";
|
|
9
|
+
const filterIconProps = {
|
|
10
|
+
strokeWidth: 1,
|
|
11
|
+
absoluteStrokeWidth: true,
|
|
12
|
+
className: "m-0.5",
|
|
13
|
+
};
|
|
14
|
+
export function FeedbackFilters({ showResolved, selectedPeople, availableAuthors, sortField, sortDirection, onShowResolvedChange, onSelectedPeopleChange, onSortChange, }) {
|
|
15
|
+
const activeFilterCount = selectedPeople.length + (showResolved ? 1 : 0);
|
|
16
|
+
const filterLabel = activeFilterCount > 0
|
|
17
|
+
? `Filter and sort (${activeFilterCount} active filters)`
|
|
18
|
+
: "Filter and sort";
|
|
19
|
+
const togglePerson = (authorId) => {
|
|
20
|
+
onSelectedPeopleChange(selectedPeople.includes(authorId)
|
|
21
|
+
? selectedPeople.filter((id) => id !== authorId)
|
|
22
|
+
: [...selectedPeople, authorId]);
|
|
23
|
+
};
|
|
24
|
+
return (_jsxs(Tooltip, { delayDuration: 500, children: [_jsxs(Popover, { children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(TooltipTrigger, { asChild: true, children: _jsx(SimpleIconButton, { "data-testid": "feedback-filter-button", showTooltip: false, selected: activeFilterCount > 0, icon: _jsx(ListFilter, { size: 12, ...filterIconProps }), label: filterLabel, className: "relative", onClick: () => { }, children: activeFilterCount > 0 && (_jsx("span", { className: "bg-neutral-grey-100 absolute -top-1 -right-1 flex h-3 min-w-3 items-center justify-center rounded-full px-0.5 text-[8px] leading-none text-white", children: activeFilterCount })) }) }) }), _jsxs(PopoverContent, { className: `${FEEDBACK_SIDEBAR_TEXT_CLASS} w-72 p-3`, align: "end", "data-testid": "feedback-filter-popover", children: [_jsx("div", { className: "text-neutral-grey-100 mb-3 font-medium", children: "Filter and sort" }), _jsxs("label", { className: "hover:bg-neutral-grey-5 flex cursor-pointer items-start gap-2 rounded-md p-2", children: [_jsx(Checkbox, { checked: showResolved, onCheckedChange: (checked) => onShowResolvedChange(checked === true), "aria-label": showResolved
|
|
25
|
+
? "Hide Resolved Comments"
|
|
26
|
+
: "Show Resolved Comments" }), _jsxs("span", { className: "min-w-0", children: [_jsx("span", { className: "text-neutral-grey-100 block font-medium", children: "Show resolved feedback" }), _jsx("span", { className: "text-neutral-grey-50 block text-xs", children: "Include comments and suggestions that have been resolved." })] })] }), _jsxs("div", { className: "border-border-default mt-3 border-t pt-3", children: [_jsxs("div", { className: "text-neutral-grey-50 mb-2 flex items-center justify-between text-xs", children: [_jsx("span", { children: "People" }), selectedPeople.length > 0 && (_jsx(Button, { type: "button", size: "sm", variant: "ghost", className: "h-6 px-2 text-xs", onClick: () => onSelectedPeopleChange([]), children: "Clear" }))] }), availableAuthors.length > 0 ? (_jsx("div", { className: "flex flex-wrap gap-2", children: availableAuthors.map((author) => {
|
|
27
|
+
const isSelected = selectedPeople.includes(author.id);
|
|
28
|
+
return (_jsx(Button, { type: "button", size: "sm", variant: isSelected ? "secondary" : "outline", className: "h-6 px-2 text-xs", "aria-pressed": isSelected, onClick: () => togglePerson(author.id), children: author.name }, author.id));
|
|
29
|
+
}) })) : (_jsx("div", { className: "text-neutral-grey-50 text-xs", children: "No authors found" }))] }), _jsxs("div", { className: "border-border-default mt-3 border-t pt-3", children: [_jsx("div", { className: "text-neutral-grey-50 mb-2 text-xs", children: "Sort by" }), _jsx("div", { className: "grid grid-cols-2 gap-2", children: [
|
|
30
|
+
{
|
|
31
|
+
field: "structure",
|
|
32
|
+
label: "Structure",
|
|
33
|
+
icon: FolderTree,
|
|
34
|
+
},
|
|
35
|
+
{ field: "date", label: "Date", icon: Calendar },
|
|
36
|
+
].map((option) => {
|
|
37
|
+
const isSelected = sortField === option.field;
|
|
38
|
+
const SortIcon = option.icon;
|
|
39
|
+
const DirectionIcon = sortDirection === "asc" ? ArrowUp : ArrowDown;
|
|
40
|
+
return (_jsxs(Button, { type: "button", size: "sm", variant: isSelected ? "secondary" : "outline", className: "h-8 justify-start px-2 text-xs", "aria-label": `Sort by ${option.label.toLowerCase()}${isSelected
|
|
41
|
+
? `, ${sortDirection === "asc" ? "ascending" : "descending"}`
|
|
42
|
+
: ""}`, "aria-pressed": isSelected, onClick: () => onSortChange(option.field), children: [_jsx(SortIcon, { className: "h-3.5 w-3.5", strokeWidth: 1 }), _jsx("span", { children: option.label }), isSelected && (_jsx(DirectionIcon, { className: "ml-auto h-3.5 w-3.5", strokeWidth: 1 }))] }, option.field));
|
|
43
|
+
}) })] })] })] }), _jsx(TooltipContent, { className: FEEDBACK_SIDEBAR_TEXT_CLASS, children: filterLabel })] }));
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=FeedbackFilters.js.map
|