@parhelia/core 0.3.12767 → 0.3.12769

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.
Files changed (86) hide show
  1. package/dist/editor/FieldListField.js +4 -2
  2. package/dist/editor/FieldListField.js.map +1 -1
  3. package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js +1 -1
  4. package/dist/editor/ai/terminal/components/AgentModeSelector.js +2 -2
  5. package/dist/editor/ai/terminal/components/AgentModeSelector.js.map +1 -1
  6. package/dist/editor/ai/terminal/components/AgentProfileSwitcher.js +10 -4
  7. package/dist/editor/ai/terminal/components/AgentProfileSwitcher.js.map +1 -1
  8. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js +9 -14
  9. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js.map +1 -1
  10. package/dist/editor/ai/terminal/components/AgentSettingsPopover.js +1 -1
  11. package/dist/editor/ai/terminal/components/ContextInfoBar.js +1 -5
  12. package/dist/editor/ai/terminal/components/ContextInfoBar.js.map +1 -1
  13. package/dist/editor/bridge/protocol.d.ts +6 -0
  14. package/dist/editor/bridge/protocol.js.map +1 -1
  15. package/dist/editor/client/EditorShell.js +34 -7
  16. package/dist/editor/client/EditorShell.js.map +1 -1
  17. package/dist/editor/client/editContext.d.ts +4 -1
  18. package/dist/editor/client/editContext.js.map +1 -1
  19. package/dist/editor/client/hooks/useSocketMessageHandler.d.ts +1 -0
  20. package/dist/editor/client/hooks/useSocketMessageHandler.js +15 -5
  21. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  22. package/dist/editor/client/operations.d.ts +1 -1
  23. package/dist/editor/client/operations.js +61 -54
  24. package/dist/editor/client/operations.js.map +1 -1
  25. package/dist/editor/client/suggestedEditFieldQueue.d.ts +2 -0
  26. package/dist/editor/client/suggestedEditFieldQueue.js +16 -0
  27. package/dist/editor/client/suggestedEditFieldQueue.js.map +1 -0
  28. package/dist/editor/commands/deleteVersionCommand.js +1 -1
  29. package/dist/editor/commands/deleteVersionCommand.js.map +1 -1
  30. package/dist/editor/field-types/richtext/components/ReactSlate.js +14 -1
  31. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  32. package/dist/editor/menubar/VersionSelector.js +0 -1
  33. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  34. package/dist/editor/menubar/toolbar-sections/EditControls.js +1 -2
  35. package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
  36. package/dist/editor/page-editor-chrome/PageEditorChrome.js +1 -1
  37. package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
  38. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +12 -9
  39. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
  40. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +136 -33
  41. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
  42. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.d.ts +6 -0
  43. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.js +23 -0
  44. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.js.map +1 -0
  45. package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +8 -1
  46. package/dist/editor/page-editor-chrome/overlay/geometry.js +30 -0
  47. package/dist/editor/page-editor-chrome/overlay/geometry.js.map +1 -1
  48. package/dist/editor/page-viewer/EditorForm.js +6 -1
  49. package/dist/editor/page-viewer/EditorForm.js.map +1 -1
  50. package/dist/editor/page-viewer/MiniMap.js +1 -1
  51. package/dist/editor/page-viewer/MiniMap.js.map +1 -1
  52. package/dist/editor/page-viewer/PageViewerFrame.js +75 -46
  53. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  54. package/dist/editor/personalization/PersonalizationPanel.js +93 -29
  55. package/dist/editor/personalization/PersonalizationPanel.js.map +1 -1
  56. package/dist/editor/reviews/SuggestedEdit.js +30 -64
  57. package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
  58. package/dist/editor/reviews/SuggestionDisplayPopover.js +76 -57
  59. package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
  60. package/dist/editor/reviews/applySuggestedEditActions.d.ts +21 -0
  61. package/dist/editor/reviews/applySuggestedEditActions.js +242 -0
  62. package/dist/editor/reviews/applySuggestedEditActions.js.map +1 -0
  63. package/dist/editor/reviews/feedbackScrollTarget.d.ts +3 -0
  64. package/dist/editor/reviews/feedbackScrollTarget.js +20 -2
  65. package/dist/editor/reviews/feedbackScrollTarget.js.map +1 -1
  66. package/dist/editor/reviews/openCommentsFeedback.js +0 -3
  67. package/dist/editor/reviews/openCommentsFeedback.js.map +1 -1
  68. package/dist/editor/reviews/suggestedEditState.js +12 -1
  69. package/dist/editor/reviews/suggestedEditState.js.map +1 -1
  70. package/dist/editor/reviews/suggestionDisplayValue.d.ts +38 -1
  71. package/dist/editor/reviews/suggestionDisplayValue.js +99 -21
  72. package/dist/editor/reviews/suggestionDisplayValue.js.map +1 -1
  73. package/dist/editor/reviews/suggestionPatch.d.ts +10 -0
  74. package/dist/editor/reviews/suggestionPatch.js +17 -0
  75. package/dist/editor/reviews/suggestionPatch.js.map +1 -0
  76. package/dist/editor/services/suggestedEditsService.d.ts +17 -5
  77. package/dist/editor/services/suggestedEditsService.js +23 -5
  78. package/dist/editor/services/suggestedEditsService.js.map +1 -1
  79. package/dist/editor/sidebar/DictionaryEditor.js +8 -8
  80. package/dist/editor/sidebar/DictionaryEditor.js.map +1 -1
  81. package/dist/editor/ui/SharedFolderSelectorDialog.js +17 -3
  82. package/dist/editor/ui/SharedFolderSelectorDialog.js.map +1 -1
  83. package/dist/revision.d.ts +2 -2
  84. package/dist/revision.js +2 -2
  85. package/dist/types.d.ts +2 -0
  86. package/package.json +1 -1
@@ -162,7 +162,7 @@ export type EditContextType = {
162
162
  originatingSlotId?: string;
163
163
  }) => Promise<void>;
164
164
  updateRenderingParameters: (componentId: string, parameters: Record<string, string | null>) => Promise<void>;
165
- updateRenderingRules: (componentId: string, rules: unknown) => Promise<void>;
165
+ updateRenderingRules: (componentId: string, rules: unknown, pageItem?: ItemDescriptor) => Promise<void>;
166
166
  undo: (operationId?: string) => Promise<boolean>;
167
167
  undoOperations: (operationIds: string[]) => Promise<boolean>;
168
168
  redo: (operationId?: string) => Promise<boolean>;
@@ -185,6 +185,7 @@ export type EditContextType = {
185
185
  commentsLoaded: boolean;
186
186
  suggestedEdits: SuggestedEdit[];
187
187
  setSuggestedEdits: React.Dispatch<React.SetStateAction<SuggestedEdit[]>>;
188
+ getCurrentSuggestedEdits: () => SuggestedEdit[];
188
189
  availableCommentTags: {
189
190
  label: string;
190
191
  color: string;
@@ -290,6 +291,8 @@ export type EditContextType = {
290
291
  setLayoutMode: React.Dispatch<React.SetStateAction<LayoutMode>>;
291
292
  showSuggestedEdits: boolean;
292
293
  setShowSuggestedEdits: React.Dispatch<React.SetStateAction<boolean>>;
294
+ suggestionVariantSelection: Record<string, string>;
295
+ setSuggestionVariantSelection: React.Dispatch<React.SetStateAction<Record<string, string>>>;
293
296
  showSuggestedEditsDiff: boolean;
294
297
  setShowSuggestedEditsDiff: React.Dispatch<React.SetStateAction<boolean>>;
295
298
  showVersionDiffHighlighting: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"editContext.js","sourceRoot":"","sources":["../../../src/editor/client/editContext.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,EAAE,EAGZ,UAAU,EAEV,MAAM,GACP,MAAM,OAAO,CAAC;AAmzBf,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAA8B,SAAS,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC,QAAQ,CAAC;AAExD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAE5D,MAAM,UAAU,iBAAiB;IAC/B,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC;IAElC,OAAO,UAAU,CAAC;AACpB,CAAC;AAYD,MAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,CAC1C,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,QAAQ,CAAC;AAElE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEtE,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB;IAChC,OAAO,mBAAmB,EAAE,EAAE,SAAS,IAAI,eAAe,CAAC;AAC7D,CAAC;AAED,MAAM,eAAe,GAAa,EAAE,CAAC;AAoCrC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAE3C,SAAS,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC;AAEpE,mDAAmD;AACnD,MAAM,UAAU,uBAAuB;IACrC,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC;IAElC,OAAO,UAAU,CAAC;AACpB,CAAC;AAiBD,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAE3C,SAAS,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC"}
1
+ {"version":3,"file":"editContext.js","sourceRoot":"","sources":["../../../src/editor/client/editContext.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,EAAE,EAGZ,UAAU,EAEV,MAAM,GACP,MAAM,OAAO,CAAC;AAyzBf,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAA8B,SAAS,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC,QAAQ,CAAC;AAExD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAE5D,MAAM,UAAU,iBAAiB;IAC/B,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC;IAElC,OAAO,UAAU,CAAC;AACpB,CAAC;AAYD,MAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,CAC1C,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,QAAQ,CAAC;AAElE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEtE,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB;IAChC,OAAO,mBAAmB,EAAE,EAAE,SAAS,IAAI,eAAe,CAAC;AAC7D,CAAC;AAED,MAAM,eAAe,GAAa,EAAE,CAAC;AAoCrC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAE3C,SAAS,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC;AAEpE,mDAAmD;AACnD,MAAM,UAAU,uBAAuB;IACrC,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC;IAElC,OAAO,UAAU,CAAC;AACpB,CAAC;AAiBD,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAE3C,SAAS,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC"}
@@ -4,6 +4,7 @@ import type { EditOperation, EditSession, FieldDescriptor } from "../../../types
4
4
  export declare const SOCKET_DIAGNOSTIC_RAW_MESSAGE_MAX_LENGTH = 75000;
5
5
  export declare function safeStringifyForSocketDiagnostics(value: unknown): string;
6
6
  export declare function sameItemLanguage(a: any, b: any): boolean;
7
+ export declare function shouldRefreshNonLatestVersionAfterAddition(messageSessionId: string | null | undefined, currentSessionId: string): boolean;
7
8
  export declare function dispatchSocketMessageListeners(listeners: Iterable<(data: any) => void>, message: any): void;
8
9
  export declare function useSocketMessageHandler(deps: {
9
10
  sessionId: string;
@@ -2,7 +2,7 @@ import { useEffectEvent } from "react";
2
2
  import { toast } from "sonner";
3
3
  import { invalidateAiProfilesCache } from "../../services/aiService";
4
4
  import { cacheEditOperationTerminalResult, EDIT_OPERATION_TERMINAL_EVENT, } from "../waitForEditOperationTerminal";
5
- import { failOperationToast, succeedOperationToast, } from "../operationToasts";
5
+ import { failOperationToast, succeedOperationToast } from "../operationToasts";
6
6
  import { removeSuggestionAndLinkedComments, upsertSocketComment, } from "./feedbackSocketState";
7
7
  import { markSuggestedEditRemoved, replacePendingSuggestionForSameField, upsertSuggestedEdit, } from "../../reviews/suggestedEditState";
8
8
  import { isWorkflowMetadataField } from "../../workflowFields";
@@ -84,6 +84,13 @@ export function sameItemLanguage(a, b) {
84
84
  aId === bId &&
85
85
  aLanguage === bLanguage);
86
86
  }
87
+ export function shouldRefreshNonLatestVersionAfterAddition(messageSessionId, currentSessionId) {
88
+ // The command that created a version in this editor explicitly loads the
89
+ // newly-created descriptor after its HTTP response. Refreshing the old,
90
+ // pinned version from the earlier socket echo races that load and can leave
91
+ // the active page-view context stale. Other sessions still need a refresh.
92
+ return !messageSessionId || messageSessionId !== currentSessionId;
93
+ }
87
94
  export function dispatchSocketMessageListeners(listeners, message) {
88
95
  for (const listener of listeners) {
89
96
  try {
@@ -287,8 +294,12 @@ export function useSocketMessageHandler(deps) {
287
294
  // and that change will drive an iframe refresh without a race.
288
295
  }
289
296
  else {
290
- // Non-latest selections: refresh only the current view.
291
- requestRefresh("immediate");
297
+ // Non-latest selections changed elsewhere must refresh. For this
298
+ // session, the create-version command itself loads the new version;
299
+ // its socket echo arrives first and must not refresh the old pin.
300
+ if (shouldRefreshNonLatestVersionAfterAddition(message.payload.sessionId, sessionId)) {
301
+ requestRefresh("immediate");
302
+ }
292
303
  }
293
304
  }
294
305
  }
@@ -451,8 +462,7 @@ export function useSocketMessageHandler(deps) {
451
462
  // whose slide switches re-render from the app's layout data and
452
463
  // would revert an edit the app never refetched.
453
464
  if (isSamePage || isItemUsedInCurrentPage(targetItem)) {
454
- if (isOwnNonAiOperation &&
455
- !canvasHasChromeSuppressedTargets?.()) {
465
+ if (isOwnNonAiOperation && !canvasHasChromeSuppressedTargets?.()) {
456
466
  }
457
467
  else {
458
468
  requestRefresh(isPendingAiFieldOperation ? "waitForQuietPeriod" : "immediate");
@@ -1 +1 @@
1
- {"version":3,"file":"useSocketMessageHandler.js","sourceRoot":"","sources":["../../../../src/editor/client/hooks/useSocketMessageHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSocketMessageHandler.js","sourceRoot":"","sources":["../../../../src/editor/client/hooks/useSocketMessageHandler.ts"],"names":[],"mappings":"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"}
@@ -66,7 +66,7 @@ export declare function getOperationsContext(state: {
66
66
  originatingSlotId?: string;
67
67
  }) => Promise<void>;
68
68
  updateRenderingParameters: (componentId: string, parameters: Record<string, string | null>) => Promise<void>;
69
- updateRenderingRules: (componentId: string, rules: unknown) => Promise<void>;
69
+ updateRenderingRules: (componentId: string, rules: unknown, targetPageItem?: ItemDescriptor) => Promise<void>;
70
70
  undo: (operationId?: string) => Promise<boolean>;
71
71
  undoOperations: (operationIds: string[]) => Promise<boolean>;
72
72
  redo: (operationId?: string) => Promise<boolean>;
@@ -15,10 +15,10 @@ import { isWorkflowMetadataField } from "../workflowFields";
15
15
  import { ExternalChangesWarningContent, TreeOperationConfirmContent, UndoDifferentItemContent, } from "./OperationDialogContent";
16
16
  import { isSuggestedEditRemoved, markSuggestedEditRemoved, upsertSuggestedEdit, } from "../reviews/suggestedEditState";
17
17
  import { logFieldValueDiagnostic, summarizeFieldDescriptor, summarizeFieldValue, } from "../fieldValueDiagnostics";
18
+ import { getSuggestedEditItemLanguage, getSuggestedEditItemVersion, getSuggestionFieldIdentityKey, } from "../reviews/suggestionDisplayValue";
19
+ import { enqueueSuggestedEditFieldTask, waitForSuggestedEditFieldTasks, } from "./suggestedEditFieldQueue";
18
20
  /** When true, the delete dialog shows "permanently delete (bypass recycle bin)". */
19
21
  const ENABLE_HARD_DELETE_IN_DELETE_DIALOG = false;
20
- // Track pending suggested edit save requests to prevent race conditions
21
- const pendingSuggestedEditSaves = new Map();
22
22
  // Track pending suggested edits to prevent creating duplicates before server response
23
23
  const pendingSuggestedEdits = new Map();
24
24
  const SUGGESTED_EDIT_SAVE_DEBOUNCE_MS = 500;
@@ -80,28 +80,23 @@ function fieldsMatchForLock(left, right) {
80
80
  // Helper function to clean up pending operations for a deleted suggested edit
81
81
  export function cleanupPendingSuggestedEditOperations(suggestedEdit, user) {
82
82
  const userKey = user?.name || "unknown";
83
- const pendingFieldKey = `${suggestedEdit.itemId}:${suggestedEdit.mainItemLanguage}:${suggestedEdit.mainItemVersion}:${suggestedEdit.fieldId}:${userKey}`;
84
- const saveKey = `${suggestedEdit.itemId}:${suggestedEdit.mainItemLanguage}:${suggestedEdit.mainItemVersion}:${suggestedEdit.fieldId}`;
83
+ const pendingFieldKey = `${getSuggestionFieldIdentityKey({
84
+ itemId: suggestedEdit.itemId,
85
+ language: getSuggestedEditItemLanguage(suggestedEdit),
86
+ version: getSuggestedEditItemVersion(suggestedEdit),
87
+ fieldId: suggestedEdit.fieldId,
88
+ })}:${userKey}`;
85
89
  // Remove from pending operations
86
90
  pendingSuggestedEdits.delete(pendingFieldKey);
87
- pendingSuggestedEditSaves.delete(saveKey);
88
91
  }
89
92
  export async function waitForPendingSuggestedEditSave(suggestedEdit) {
90
- const saveKey = `${suggestedEdit.itemId}:${suggestedEdit.mainItemLanguage}:${suggestedEdit.mainItemVersion}:${suggestedEdit.fieldId}`;
91
- const pendingSave = pendingSuggestedEditSaves.get(saveKey);
92
- if (!pendingSave)
93
- return;
94
- try {
95
- await pendingSave;
96
- }
97
- catch (error) {
98
- console.warn("Pending suggested edit save failed before apply:", error);
99
- }
100
- finally {
101
- if (pendingSuggestedEditSaves.get(saveKey) === pendingSave) {
102
- pendingSuggestedEditSaves.delete(saveKey);
103
- }
104
- }
93
+ const saveKey = getSuggestionFieldIdentityKey({
94
+ itemId: suggestedEdit.itemId,
95
+ language: getSuggestedEditItemLanguage(suggestedEdit),
96
+ version: getSuggestedEditItemVersion(suggestedEdit),
97
+ fieldId: suggestedEdit.fieldId,
98
+ });
99
+ await waitForSuggestedEditFieldTasks(saveKey);
105
100
  }
106
101
  export function getOperationsContext(state, ui) {
107
102
  const [editOperationExecuted, setEditOperationExecuted] = useState();
@@ -287,10 +282,10 @@ export function getOperationsContext(state, ui) {
287
282
  throw new Error("Failed to update personalization rules");
288
283
  }
289
284
  }, [executeOp]);
290
- const updateRenderingRules = useCallback(async (componentId, rules) => {
291
- const pageItem = stateRef.current.page?.item?.descriptor;
285
+ const updateRenderingRules = useCallback(async (componentId, rules, targetPageItem) => {
286
+ const pageItem = targetPageItem ?? stateRef.current.page?.item?.descriptor;
292
287
  if (!pageItem) {
293
- return;
288
+ throw new Error("Cannot update personalization without a page item");
294
289
  }
295
290
  const op = {
296
291
  type: "update-rendering-rules",
@@ -303,7 +298,10 @@ export function getOperationsContext(state, ui) {
303
298
  };
304
299
  // waitForQuietPeriod debounces the iframe refresh so rapid auto-saves
305
300
  // (typing in a parameter input) don't make the page flicker on every keystroke.
306
- await executeOp(op, { refresh: "waitForQuietPeriod" });
301
+ const result = await executeOp(op, { refresh: "waitForQuietPeriod" });
302
+ if (result.executionStatus === "failed") {
303
+ throw new Error("Failed to update personalization rules");
304
+ }
307
305
  }, [executeOp]);
308
306
  const handleResult = (result, options) => {
309
307
  if (handleErrorResult(result, ui, stateRef.current)) {
@@ -532,7 +530,13 @@ export function getOperationsContext(state, ui) {
532
530
  if (effectiveMode === "suggestions" &&
533
531
  (stateRef.current.page || stateRef.current.currentItemDescriptor)) {
534
532
  // Create a unique key for this field to track pending saves
535
- const fieldKey = `${field.item.id}:${field.item.language}:${field.item.version}:${field.fieldId}`;
533
+ const fieldKey = getSuggestionFieldIdentityKey({
534
+ itemId: field.item.id,
535
+ language: field.item.language,
536
+ version: field.item.version,
537
+ fieldId: field.fieldId,
538
+ });
539
+ const pendingFieldKey = `${fieldKey}:${stateRef.current.user?.name || "unknown"}`;
536
540
  const op = await getOrMergeSuggestedEditOp(field, rawValue, value, {
537
541
  page: stateRef.current.page,
538
542
  currentItemDescriptor: stateRef.current.currentItemDescriptor,
@@ -555,26 +559,12 @@ export function getOperationsContext(state, ui) {
555
559
  });
556
560
  // Keep local suggestion state in step with typing immediately, then
557
561
  // serialize persistence behind any in-flight save for this field.
558
- const existingPromise = pendingSuggestedEditSaves.get(fieldKey);
559
- if (existingPromise) {
560
- try {
561
- await existingPromise;
562
- }
563
- catch (error) {
564
- // Continue processing even if the previous save failed
565
- console.warn("Previous suggested edit save failed:", error);
566
- }
567
- // Clean up any stale entries that may not have been properly removed
568
- if (pendingSuggestedEditSaves.get(fieldKey) === existingPromise) {
569
- pendingSuggestedEditSaves.delete(fieldKey);
570
- }
571
- }
572
562
  // Create and track the save promise. useDebouncedCallback can return
573
563
  // undefined before the trailing call runs, so this path uses a real
574
564
  // promise that resolves after the delayed save completes.
575
565
  const saveSnapshot = { ...op };
576
566
  const expectedNewValue = saveSnapshot.newValue;
577
- const savePromise = createDelayedSuggestedEditSave(saveSnapshot)
567
+ const savePromise = enqueueSuggestedEditFieldTask(fieldKey, () => createDelayedSuggestedEditSave(saveSnapshot))
578
568
  .then((result) => {
579
569
  // Update the suggested edits state with the result from the server
580
570
  if (result.type === "success" && result.data) {
@@ -594,6 +584,18 @@ export function getOperationsContext(state, ui) {
594
584
  source: "save-ack",
595
585
  }));
596
586
  }
587
+ else if (result.type === "conflict") {
588
+ if (result.suggestion) {
589
+ stateRef.current.setSuggestedEdits((current) => upsertSuggestedEdit(current, result.suggestion, {
590
+ source: "save-ack",
591
+ }));
592
+ if (result.suggestion.status !== "pending" &&
593
+ pendingSuggestedEdits.get(pendingFieldKey)?.id ===
594
+ result.suggestion.id) {
595
+ pendingSuggestedEdits.delete(pendingFieldKey);
596
+ }
597
+ }
598
+ }
597
599
  else if (result.type === "error" ||
598
600
  result.type === "unauthorized") {
599
601
  // Show error toast for failed suggested edit save — unless the
@@ -610,20 +612,14 @@ export function getOperationsContext(state, ui) {
610
612
  return result;
611
613
  })
612
614
  .finally(() => {
613
- // Remove from pending saves when complete
614
- if (pendingSuggestedEditSaves.get(fieldKey) === savePromise) {
615
- pendingSuggestedEditSaves.delete(fieldKey);
616
- }
617
615
  // Also remove from pending edits once this exact value is
618
616
  // persisted. If the user typed again, keep the newer draft.
619
- const pendingFieldKey = `${field.item.id}:${field.item.language}:${field.item.version}:${field.fieldId}:${stateRef.current.user?.name || "unknown"}`;
620
617
  const pendingEdit = pendingSuggestedEdits.get(pendingFieldKey);
621
618
  if (pendingEdit?.id === saveSnapshot.id &&
622
619
  pendingEdit.newValue === saveSnapshot.newValue) {
623
620
  pendingSuggestedEdits.delete(pendingFieldKey);
624
621
  }
625
622
  });
626
- pendingSuggestedEditSaves.set(fieldKey, savePromise);
627
623
  await savePromise;
628
624
  }
629
625
  logFieldValueDiagnostic("operations", "suggestions edit complete", {
@@ -1849,18 +1845,12 @@ function removeSuggestedEditFromState(edit, state, keys) {
1849
1845
  // removal is settling (e.g. an edit queued behind the in-flight save) would
1850
1846
  // otherwise fire after an early release and resurrect the suggestion.
1851
1847
  markSuggestedEditRemoved(edit.id);
1852
- // The saves map is keyed by the field's own item descriptor (which can have
1853
- // a different version/language than the page the suggestion is stored
1854
- // under), so the caller passes the exact keys it used.
1855
- const pendingSave = pendingSuggestedEditSaves.get(keys.saveKey);
1856
1848
  pendingSuggestedEdits.delete(keys.pendingFieldKey);
1857
1849
  cleanupPendingSuggestedEditOperations(edit, state.user);
1858
1850
  state.setSuggestedEdits((current) => current.filter((candidate) => candidate.id !== edit.id));
1859
1851
  // Delete on the server only after any in-flight save settles, otherwise the
1860
1852
  // delete can race ahead of a pending create and the suggestion comes back.
1861
- void Promise.resolve(pendingSave)
1862
- .catch(() => undefined)
1863
- .then(() => deleteSuggestedEdit(edit))
1853
+ void enqueueSuggestedEditFieldTask(keys.saveKey, () => deleteSuggestedEdit(edit))
1864
1854
  .then((result) => {
1865
1855
  if (result.type !== "success") {
1866
1856
  console.warn("Failed to delete no-op suggestion:", result.summary, result.details);
@@ -1895,7 +1885,12 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1895
1885
  // key format as editField (the field's own item descriptor — NOT the
1896
1886
  // suggestion's mainItem fields, which hold the page's language/version and
1897
1887
  // diverge for datasource items).
1898
- const saveKey = `${field.item.id}:${field.item.language}:${field.item.version}:${field.fieldId}`;
1888
+ const saveKey = getSuggestionFieldIdentityKey({
1889
+ itemId: field.item.id,
1890
+ language: field.item.language,
1891
+ version: field.item.version,
1892
+ fieldId: field.fieldId,
1893
+ });
1899
1894
  const fieldKey = `${saveKey}:${state.user?.name || "unknown"}`;
1900
1895
  const shouldRemoveAsNoOp = (edit, nextValue) =>
1901
1896
  // Comments load asynchronously; deleting on the strength of a not-yet-
@@ -1927,6 +1922,8 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1927
1922
  // Update the pending edit instead of creating a new one.
1928
1923
  const updatedEdit = {
1929
1924
  ...pendingEdit,
1925
+ itemLanguage: field.item.language,
1926
+ itemVersion: field.item.version,
1930
1927
  newValue: nextValue,
1931
1928
  updated: new Date().toISOString(),
1932
1929
  updatedBy: state.user?.name || "unknown",
@@ -1938,6 +1935,9 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1938
1935
  const matchingSuggestions = state.suggestedEdits.filter((edit) => edit.mainItemId === pageDescriptor.id &&
1939
1936
  edit.mainItemLanguage === pageDescriptor.language &&
1940
1937
  edit.itemId === item.id &&
1938
+ getSuggestedEditItemLanguage(edit) === field.item.language &&
1939
+ (getSuggestedEditItemVersion(edit) === 0 ||
1940
+ getSuggestedEditItemVersion(edit) === field.item.version) &&
1941
1941
  edit.fieldId === field.fieldId);
1942
1942
  // Attempt to find an existing suggested edit by the same user for this field.
1943
1943
  // Tombstoned ids are skipped: the state snapshot can still contain a
@@ -1947,6 +1947,9 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1947
1947
  edit.mainItemLanguage === pageDescriptor.language &&
1948
1948
  edit.mainItemVersion === pageDescriptor.version &&
1949
1949
  edit.itemId === item.id &&
1950
+ getSuggestedEditItemLanguage(edit) === field.item.language &&
1951
+ (getSuggestedEditItemVersion(edit) === 0 ||
1952
+ getSuggestedEditItemVersion(edit) === field.item.version) &&
1950
1953
  edit.fieldId === field.fieldId &&
1951
1954
  edit.author === (state.user?.name || "unknown") &&
1952
1955
  edit.status === "pending" && // or any status that indicates it's open for further editing.
@@ -1963,6 +1966,8 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1963
1966
  // Update the existing suggestion.
1964
1967
  const updatedEdit = {
1965
1968
  ...existing,
1969
+ itemLanguage: field.item.language,
1970
+ itemVersion: field.item.version,
1966
1971
  newValue: nextValue,
1967
1972
  updated: new Date().toISOString(),
1968
1973
  updatedBy: state.user?.name || "unknown",
@@ -1983,6 +1988,8 @@ async function getOrMergeSuggestedEditOp(field, rawValue, value, state) {
1983
1988
  mainItemLanguage: pageDescriptor.language,
1984
1989
  mainItemVersion: pageDescriptor.version,
1985
1990
  itemId: item.id,
1991
+ itemLanguage: field.item.language,
1992
+ itemVersion: field.item.version,
1986
1993
  fieldId: field.fieldId,
1987
1994
  oldValue: fieldItem.rawValue || "",
1988
1995
  newValue: newVal || "",