@parhelia/core 0.3.12767 → 0.3.12768

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 (65) hide show
  1. package/dist/editor/FieldListField.js +4 -2
  2. package/dist/editor/FieldListField.js.map +1 -1
  3. package/dist/editor/bridge/protocol.d.ts +6 -0
  4. package/dist/editor/bridge/protocol.js.map +1 -1
  5. package/dist/editor/client/EditorShell.js +34 -7
  6. package/dist/editor/client/EditorShell.js.map +1 -1
  7. package/dist/editor/client/editContext.d.ts +4 -1
  8. package/dist/editor/client/editContext.js.map +1 -1
  9. package/dist/editor/client/hooks/useSocketMessageHandler.d.ts +1 -0
  10. package/dist/editor/client/hooks/useSocketMessageHandler.js +15 -5
  11. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  12. package/dist/editor/client/operations.d.ts +1 -1
  13. package/dist/editor/client/operations.js +61 -54
  14. package/dist/editor/client/operations.js.map +1 -1
  15. package/dist/editor/client/suggestedEditFieldQueue.d.ts +2 -0
  16. package/dist/editor/client/suggestedEditFieldQueue.js +16 -0
  17. package/dist/editor/client/suggestedEditFieldQueue.js.map +1 -0
  18. package/dist/editor/commands/deleteVersionCommand.js +1 -1
  19. package/dist/editor/commands/deleteVersionCommand.js.map +1 -1
  20. package/dist/editor/field-types/richtext/components/ReactSlate.js +14 -1
  21. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  22. package/dist/editor/menubar/VersionSelector.js +0 -1
  23. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  24. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +119 -27
  25. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
  26. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.d.ts +6 -0
  27. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.js +23 -0
  28. package/dist/editor/page-editor-chrome/SuggestionVariantSwitcher.js.map +1 -0
  29. package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +8 -1
  30. package/dist/editor/page-editor-chrome/overlay/geometry.js +30 -0
  31. package/dist/editor/page-editor-chrome/overlay/geometry.js.map +1 -1
  32. package/dist/editor/page-viewer/EditorForm.js +6 -1
  33. package/dist/editor/page-viewer/EditorForm.js.map +1 -1
  34. package/dist/editor/page-viewer/PageViewerFrame.js +69 -30
  35. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  36. package/dist/editor/personalization/PersonalizationPanel.js +93 -29
  37. package/dist/editor/personalization/PersonalizationPanel.js.map +1 -1
  38. package/dist/editor/reviews/SuggestedEdit.js +30 -64
  39. package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
  40. package/dist/editor/reviews/SuggestionDisplayPopover.js +76 -57
  41. package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
  42. package/dist/editor/reviews/applySuggestedEditActions.d.ts +21 -0
  43. package/dist/editor/reviews/applySuggestedEditActions.js +242 -0
  44. package/dist/editor/reviews/applySuggestedEditActions.js.map +1 -0
  45. package/dist/editor/reviews/feedbackScrollTarget.js +3 -2
  46. package/dist/editor/reviews/feedbackScrollTarget.js.map +1 -1
  47. package/dist/editor/reviews/suggestedEditState.js +12 -1
  48. package/dist/editor/reviews/suggestedEditState.js.map +1 -1
  49. package/dist/editor/reviews/suggestionDisplayValue.d.ts +38 -1
  50. package/dist/editor/reviews/suggestionDisplayValue.js +99 -21
  51. package/dist/editor/reviews/suggestionDisplayValue.js.map +1 -1
  52. package/dist/editor/reviews/suggestionPatch.d.ts +10 -0
  53. package/dist/editor/reviews/suggestionPatch.js +17 -0
  54. package/dist/editor/reviews/suggestionPatch.js.map +1 -0
  55. package/dist/editor/services/suggestedEditsService.d.ts +17 -5
  56. package/dist/editor/services/suggestedEditsService.js +23 -5
  57. package/dist/editor/services/suggestedEditsService.js.map +1 -1
  58. package/dist/editor/sidebar/DictionaryEditor.js +8 -8
  59. package/dist/editor/sidebar/DictionaryEditor.js.map +1 -1
  60. package/dist/editor/ui/SharedFolderSelectorDialog.js +17 -3
  61. package/dist/editor/ui/SharedFolderSelectorDialog.js.map +1 -1
  62. package/dist/revision.d.ts +2 -2
  63. package/dist/revision.js +2 -2
  64. package/dist/types.d.ts +2 -0
  65. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"suggestedEditState.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestedEditState.ts"],"names":[],"mappings":"AAkBA,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAmC,CAAC;AAE/E,6EAA6E;AAC7E,gFAAgF;AAChF,0EAA0E;AAC1E,4EAA4E;AAC5E,8EAA8E;AAC9E,mEAAmE;AACnE,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;AAElD,MAAM,UAAU,wBAAwB,CAAC,EAAU;IACjD,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChC,2BAA2B,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EAAU;IAC/C,OAAO,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,MAAM,CAAC,KAAyB;IACvC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IACrB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,OAAsB,EAAE,QAAuB;IACtE,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,WAAW,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,GAAG,YAAY,CAAC;AAC3E,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAmB;IACrD,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAmB;IACnD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,2BAA2B,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAsB,EACtB,QAAuB,EACvB,OAAmC;IAEnC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE9C,MAAM,KAAK,GAAG,2BAA2B,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAEvD,OAAO,CACL,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;QACnC,QAAQ,CAAC,MAAM,KAAK,SAAS;QAC7B,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAChC,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAClC,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAChC,QAAQ,CAAC,gBAAgB,KAAK,KAAK,CAAC,gBAAgB;QACpD,QAAQ,CAAC,eAAe,KAAK,KAAK,CAAC,eAAe,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CACtC,OAAkC,EAClC,QAAuB,EACvB,OAAmC;IAEnC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,IAAI,4BAA4B,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IACE,OAAO,CAAC,gBAAgB,KAAK,SAAS;QACtC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,gBAAgB,EAC7C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,cAA+B,EAC/B,QAAuB,EACvB,UAAsC,EAAE;IAExC,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACxC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE1E,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,YAAY,GAAG,+BAA+B,CAClD,cAAc,CAAC,KAAK,CAAC,EACrB,QAAQ,EACR,OAAO,CACR,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;QAC1B,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC/B,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,GAAG,cAAc,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,cAA+B,EAC/B,QAAuB;IAEvB,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACxC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,OAAO;QACL,GAAG,cAAc,CAAC,MAAM,CACtB,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,CACC,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU;YACvC,IAAI,CAAC,gBAAgB,KAAK,QAAQ,CAAC,gBAAgB;YACnD,IAAI,CAAC,eAAe,KAAK,QAAQ,CAAC,eAAe;YACjD,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YAC/B,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO;YACjC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAChC,CACJ;QACD,QAAQ;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"suggestedEditState.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestedEditState.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export type SuggestionDisplayField = {
7
7
  language: string;
8
8
  version: number;
9
9
  pageItemId?: string;
10
+ pageItemLanguage?: string;
10
11
  pageItemVersion?: number | null;
11
12
  };
12
13
  export type SuggestionDisplayModifiedField = {
@@ -21,10 +22,37 @@ export type SuggestionDisplayModifiedField = {
21
22
  export type SuggestionDisplayResult = {
22
23
  baselineValue: string;
23
24
  mergedValue: string;
25
+ selectedValue: string;
24
26
  displayValue: string;
25
27
  suggestions: SuggestedEdit[];
26
28
  hasSuggestions: boolean;
29
+ variants: SuggestionVariant[];
30
+ conflicts: SuggestedEdit[];
31
+ selectedVariantId?: string;
27
32
  };
33
+ export type SuggestionVariant = {
34
+ id: string;
35
+ value: string;
36
+ suggestion?: SuggestedEdit;
37
+ };
38
+ export type SuggestionMergeResult = {
39
+ mergedValue: string;
40
+ cleanSuggestions: SuggestedEdit[];
41
+ conflicts: SuggestedEdit[];
42
+ };
43
+ export declare function getSuggestedEditItemLanguage(suggestion: SuggestedEdit): string;
44
+ export declare function getSuggestedEditItemVersion(suggestion: SuggestedEdit): number;
45
+ export declare function getSuggestionFieldIdentityKey({ itemId, language, version, fieldId, }: {
46
+ itemId: string;
47
+ language: string;
48
+ version: number;
49
+ fieldId: string;
50
+ }): string;
51
+ export declare function getSuggestionSelectionKey({ itemId, language, fieldId, }: {
52
+ itemId: string;
53
+ language: string;
54
+ fieldId: string;
55
+ }): string;
28
56
  export declare function getPendingFieldSuggestions(suggestedEdits: SuggestedEdit[], field: SuggestionDisplayField): SuggestedEdit[];
29
57
  export declare function getBaselineFieldValue({ repositoryValue, modifiedFields, field, }: {
30
58
  repositoryValue: string | null | undefined;
@@ -32,12 +60,21 @@ export declare function getBaselineFieldValue({ repositoryValue, modifiedFields,
32
60
  field: SuggestionDisplayField;
33
61
  }): string;
34
62
  export declare function mergePendingSuggestionValues(baselineValue: string, suggestions: SuggestedEdit[]): string;
63
+ export declare function partitionPendingSuggestionValues(baselineValue: string, suggestions: SuggestedEdit[]): SuggestionMergeResult;
64
+ /**
65
+ * Returns the pending suggestions that cannot coexist with the requested
66
+ * suggestion. Conflict membership is deliberately pairwise and symmetric:
67
+ * the suggestion chosen as the fold baseline must not appear conflict-free
68
+ * merely because it sorted first.
69
+ */
70
+ export declare function getConflictingSuggestionPeers(suggestions: SuggestedEdit[], suggestionId: string): SuggestedEdit[];
35
71
  export declare function getSuggestionDiffHtml(baselineValue: string, mergedValue: string): string;
36
- export declare function getSuggestionDisplayValue({ repositoryValue, modifiedFields, suggestedEdits, field, mode, format, }: {
72
+ export declare function getSuggestionDisplayValue({ repositoryValue, modifiedFields, suggestedEdits, field, mode, format, selectedVariantId: requestedVariantId, }: {
37
73
  repositoryValue: string | null | undefined;
38
74
  modifiedFields?: SuggestionDisplayModifiedField[];
39
75
  suggestedEdits: SuggestedEdit[];
40
76
  field: SuggestionDisplayField;
41
77
  mode: SuggestionDisplayMode;
42
78
  format?: SuggestionDisplayFormat;
79
+ selectedVariantId?: string;
43
80
  }): SuggestionDisplayResult;
@@ -1,4 +1,29 @@
1
- import { applyPatch, createPatch, diffWords } from "diff";
1
+ import { diffWords } from "diff";
2
+ import { applySuggestionPatchToValue } from "./suggestionPatch";
3
+ export function getSuggestedEditItemLanguage(suggestion) {
4
+ return suggestion.itemLanguage ?? suggestion.mainItemLanguage;
5
+ }
6
+ export function getSuggestedEditItemVersion(suggestion) {
7
+ return suggestion.itemVersion ?? suggestion.mainItemVersion;
8
+ }
9
+ function normalizeIdentityPart(value) {
10
+ return (value ?? "").trim().toLowerCase().replace(/[{}]/g, "");
11
+ }
12
+ export function getSuggestionFieldIdentityKey({ itemId, language, version, fieldId, }) {
13
+ return [
14
+ normalizeIdentityPart(itemId),
15
+ normalizeIdentityPart(language),
16
+ version,
17
+ normalizeIdentityPart(fieldId),
18
+ ].join(":");
19
+ }
20
+ export function getSuggestionSelectionKey({ itemId, language, fieldId, }) {
21
+ return [
22
+ normalizeIdentityPart(itemId),
23
+ normalizeIdentityPart(language),
24
+ normalizeIdentityPart(fieldId),
25
+ ].join(":");
26
+ }
2
27
  function toTimestamp(value) {
3
28
  if (!value)
4
29
  return 0;
@@ -6,17 +31,20 @@ function toTimestamp(value) {
6
31
  return Number.isFinite(timestamp) ? timestamp : 0;
7
32
  }
8
33
  function matchesFieldSuggestion(suggestion, field) {
9
- const pageVersion = field.pageItemVersion;
10
- const versionMatches = pageVersion != null
11
- ? suggestion.mainItemVersion === pageVersion ||
12
- suggestion.mainItemVersion === 0
13
- : suggestion.mainItemVersion === field.version;
34
+ const pageVersionMatches = field.pageItemVersion == null ||
35
+ suggestion.mainItemVersion === 0 ||
36
+ suggestion.mainItemVersion === field.pageItemVersion;
37
+ const itemVersion = getSuggestedEditItemVersion(suggestion);
38
+ const fieldVersionMatches = itemVersion === 0 || itemVersion === field.version;
14
39
  return (suggestion.status === "pending" &&
15
40
  suggestion.fieldId === field.fieldId &&
16
41
  suggestion.itemId === field.itemId &&
17
- suggestion.mainItemLanguage === field.language &&
42
+ getSuggestedEditItemLanguage(suggestion) === field.language &&
18
43
  (!field.pageItemId || suggestion.mainItemId === field.pageItemId) &&
19
- versionMatches);
44
+ (!field.pageItemLanguage ||
45
+ suggestion.mainItemLanguage === field.pageItemLanguage) &&
46
+ pageVersionMatches &&
47
+ fieldVersionMatches);
20
48
  }
21
49
  export function getPendingFieldSuggestions(suggestedEdits, field) {
22
50
  return suggestedEdits
@@ -34,16 +62,43 @@ export function getBaselineFieldValue({ repositoryValue, modifiedFields, field,
34
62
  return modifiedField ? (modifiedField.value ?? "") : (repositoryValue ?? "");
35
63
  }
36
64
  export function mergePendingSuggestionValues(baselineValue, suggestions) {
65
+ return partitionPendingSuggestionValues(baselineValue, suggestions)
66
+ .mergedValue;
67
+ }
68
+ export function partitionPendingSuggestionValues(baselineValue, suggestions) {
37
69
  let mergedValue = baselineValue;
70
+ const cleanSuggestions = [];
71
+ const conflicts = [];
38
72
  for (const suggestion of suggestions) {
39
- const patch = createPatch("field", suggestion.oldValue, suggestion.newValue);
40
- const patchedCandidate = applyPatch(mergedValue, patch);
41
- mergedValue =
42
- patchedCandidate !== false && typeof patchedCandidate === "string"
43
- ? patchedCandidate
44
- : suggestion.newValue;
73
+ const patchedCandidate = applySuggestionPatchToValue(mergedValue, suggestion.oldValue, suggestion.newValue);
74
+ if (patchedCandidate === false || typeof patchedCandidate !== "string") {
75
+ conflicts.push(suggestion);
76
+ continue;
77
+ }
78
+ mergedValue = patchedCandidate;
79
+ cleanSuggestions.push(suggestion);
45
80
  }
46
- return mergedValue;
81
+ return { mergedValue, cleanSuggestions, conflicts };
82
+ }
83
+ /**
84
+ * Returns the pending suggestions that cannot coexist with the requested
85
+ * suggestion. Conflict membership is deliberately pairwise and symmetric:
86
+ * the suggestion chosen as the fold baseline must not appear conflict-free
87
+ * merely because it sorted first.
88
+ */
89
+ export function getConflictingSuggestionPeers(suggestions, suggestionId) {
90
+ const suggestion = suggestions.find((candidate) => candidate.id === suggestionId);
91
+ if (!suggestion)
92
+ return [];
93
+ return suggestions.filter((candidate) => {
94
+ if (candidate.id === suggestion.id)
95
+ return false;
96
+ if (candidate.newValue === suggestion.newValue)
97
+ return false;
98
+ const candidateAfterSuggestion = applySuggestionPatchToValue(suggestion.newValue, candidate.oldValue, candidate.newValue);
99
+ const suggestionAfterCandidate = applySuggestionPatchToValue(candidate.newValue, suggestion.oldValue, suggestion.newValue);
100
+ return (candidateAfterSuggestion === false && suggestionAfterCandidate === false);
101
+ });
47
102
  }
48
103
  function escapeHtml(value) {
49
104
  return value
@@ -67,7 +122,7 @@ export function getSuggestionDiffHtml(baselineValue, mergedValue) {
67
122
  })
68
123
  .join("");
69
124
  }
70
- export function getSuggestionDisplayValue({ repositoryValue, modifiedFields, suggestedEdits, field, mode, format = "plain", }) {
125
+ export function getSuggestionDisplayValue({ repositoryValue, modifiedFields, suggestedEdits, field, mode, format = "plain", selectedVariantId: requestedVariantId, }) {
71
126
  const baselineValue = getBaselineFieldValue({
72
127
  repositoryValue,
73
128
  modifiedFields,
@@ -76,18 +131,41 @@ export function getSuggestionDisplayValue({ repositoryValue, modifiedFields, sug
76
131
  const suggestions = mode === "suggestions"
77
132
  ? getPendingFieldSuggestions(suggestedEdits, field)
78
133
  : [];
79
- const mergedValue = suggestions.length
80
- ? mergePendingSuggestionValues(baselineValue, suggestions)
81
- : baselineValue;
134
+ const partition = suggestions.length
135
+ ? partitionPendingSuggestionValues(baselineValue, suggestions)
136
+ : { mergedValue: baselineValue, cleanSuggestions: [], conflicts: [] };
137
+ const mergedValue = partition.mergedValue;
138
+ const variants = partition.conflicts.length
139
+ ? [
140
+ { id: "merged", value: mergedValue },
141
+ ...partition.conflicts.map((suggestion) => ({
142
+ id: suggestion.id,
143
+ value: suggestion.newValue,
144
+ suggestion,
145
+ })),
146
+ ]
147
+ : [];
148
+ const fallbackVariantId = partition.cleanSuggestions.length
149
+ ? "merged"
150
+ : partition.conflicts[0]?.id;
151
+ const selectedVariantId = variants.some((variant) => variant.id === requestedVariantId)
152
+ ? requestedVariantId
153
+ : fallbackVariantId;
154
+ const selectedValue = variants.find((variant) => variant.id === selectedVariantId)?.value ??
155
+ mergedValue;
82
156
  const displayValue = mode === "suggestions" && suggestions.length && format === "diff"
83
- ? getSuggestionDiffHtml(baselineValue, mergedValue)
84
- : mergedValue;
157
+ ? getSuggestionDiffHtml(baselineValue, selectedValue)
158
+ : selectedValue;
85
159
  return {
86
160
  baselineValue,
87
161
  mergedValue,
162
+ selectedValue,
88
163
  displayValue,
89
164
  suggestions,
90
165
  hasSuggestions: suggestions.length > 0,
166
+ variants,
167
+ conflicts: partition.conflicts,
168
+ selectedVariantId,
91
169
  };
92
170
  }
93
171
  //# sourceMappingURL=suggestionDisplayValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"suggestionDisplayValue.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionDisplayValue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suggestionDisplayValue.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionDisplayValue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Applies a suggestion's line-based change to the current field value.
3
+ *
4
+ * Suggestion compatibility is determined by the lines the suggestion actually
5
+ * changes. Including diff's default surrounding context makes independent
6
+ * edits conflict on short fields (for example, changing line one and line
7
+ * three of a three-line value), because every unchanged line becomes part of
8
+ * both patches.
9
+ */
10
+ export declare function applySuggestionPatchToValue(currentValue: string, oldValue: string, newValue: string): string | false;
@@ -0,0 +1,17 @@
1
+ import { applyPatch, createPatch } from "diff";
2
+ /**
3
+ * Applies a suggestion's line-based change to the current field value.
4
+ *
5
+ * Suggestion compatibility is determined by the lines the suggestion actually
6
+ * changes. Including diff's default surrounding context makes independent
7
+ * edits conflict on short fields (for example, changing line one and line
8
+ * three of a three-line value), because every unchanged line becomes part of
9
+ * both patches.
10
+ */
11
+ export function applySuggestionPatchToValue(currentValue, oldValue, newValue) {
12
+ const patch = createPatch("field", oldValue, newValue, undefined, undefined, {
13
+ context: 0,
14
+ });
15
+ return applyPatch(currentValue, patch);
16
+ }
17
+ //# sourceMappingURL=suggestionPatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggestionPatch.js","sourceRoot":"","sources":["../../../src/editor/reviews/suggestionPatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CACzC,YAAoB,EACpB,QAAgB,EAChB,QAAgB;IAEhB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE;QAC3E,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC"}
@@ -1,18 +1,30 @@
1
+ import { type ExecutionResult } from "./serviceHelper";
1
2
  import { SuggestedEdit } from "../../types";
2
3
  /**
3
4
  * Creates or updates a suggested edit.
4
5
  */
5
- export declare function createOrUpdateSuggestedEdit(suggestedEdit: SuggestedEdit): Promise<import("./serviceHelper").ExecutionResult<unknown>>;
6
+ export type SuggestedEditConflictResult = {
7
+ type: "conflict";
8
+ response: Response;
9
+ summary?: string;
10
+ suggestion?: SuggestedEdit;
11
+ fieldValue?: string;
12
+ };
13
+ export type SuggestedEditSaveResult = ExecutionResult<SuggestedEdit> | SuggestedEditConflictResult;
14
+ export declare function createOrUpdateSuggestedEdit(suggestedEdit: SuggestedEdit, options?: {
15
+ expectedUpdated?: string;
16
+ expectedFieldHash?: string;
17
+ }): Promise<SuggestedEditSaveResult>;
6
18
  /**
7
19
  * Retrieves all suggested edits for a given main item based on its ID, language, and version.
8
20
  */
9
- export declare function getSuggestedEdits(mainItemId: string, mainItemLanguage: string, mainItemVersion: number, reviewId?: string): Promise<import("./serviceHelper").ExecutionResult<SuggestedEdit[]>>;
10
- export declare function getLatestSuggestedEdits(take?: number, language?: string): Promise<import("./serviceHelper").ExecutionResult<SuggestedEdit[]>>;
21
+ export declare function getSuggestedEdits(mainItemId: string, mainItemLanguage: string, mainItemVersion: number, reviewId?: string): Promise<ExecutionResult<SuggestedEdit[]>>;
22
+ export declare function getLatestSuggestedEdits(take?: number, language?: string): Promise<ExecutionResult<SuggestedEdit[]>>;
11
23
  /**
12
24
  * Retrieves a single suggested edit by its unique identifier.
13
25
  */
14
- export declare function getSuggestedEditById(id: string): Promise<import("./serviceHelper").ExecutionResult<SuggestedEdit>>;
26
+ export declare function getSuggestedEditById(id: string): Promise<ExecutionResult<SuggestedEdit>>;
15
27
  /**
16
28
  * Deletes the given suggested edit.
17
29
  */
18
- export declare function deleteSuggestedEdit(suggestedEdit: SuggestedEdit): Promise<import("./serviceHelper").ExecutionResult<unknown>>;
30
+ export declare function deleteSuggestedEdit(suggestedEdit: SuggestedEdit): Promise<ExecutionResult<unknown>>;
@@ -1,9 +1,27 @@
1
1
  import { get, post } from "./serviceHelper";
2
- /**
3
- * Creates or updates a suggested edit.
4
- */
5
- export function createOrUpdateSuggestedEdit(suggestedEdit) {
6
- return post("/parhelia/suggested-edits/add", suggestedEdit);
2
+ export async function createOrUpdateSuggestedEdit(suggestedEdit, options = {}) {
3
+ const params = new URLSearchParams();
4
+ if (options.expectedUpdated) {
5
+ params.set("expectedUpdated", options.expectedUpdated);
6
+ }
7
+ if (options.expectedFieldHash) {
8
+ params.set("expectedFieldHash", options.expectedFieldHash);
9
+ }
10
+ const query = params.toString();
11
+ const result = await post(`/parhelia/suggested-edits/add${query ? `?${query}` : ""}`, suggestedEdit);
12
+ if (result.response?.status !== 409)
13
+ return result;
14
+ try {
15
+ const payload = JSON.parse(result.rawDetails || "{}");
16
+ return { type: "conflict", response: result.response, ...payload };
17
+ }
18
+ catch {
19
+ return {
20
+ type: "conflict",
21
+ response: result.response,
22
+ summary: result.summary || "Suggestion changed while saving.",
23
+ };
24
+ }
7
25
  }
8
26
  /**
9
27
  * Retrieves all suggested edits for a given main item based on its ID, language, and version.
@@ -1 +1 @@
1
- {"version":3,"file":"suggestedEditsService.js","sourceRoot":"","sources":["../../../src/editor/services/suggestedEditsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAG5C;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,aAA4B;IACtE,OAAO,IAAI,CAAC,+BAA+B,EAAE,aAAa,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,gBAAwB,EACxB,eAAuB,EACvB,QAAiB;IAEjB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,UAAU;QACV,gBAAgB;QAChB,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;KAC5C,CAAC,CAAC;IACH,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,GAAG,CACR,mCAAmC,MAAM,CAAC,QAAQ,EAAE,EAAE,CACvD,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,uBAAuB,CAAC,IAAa,EAAE,QAAiB;IACtE,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,IAAI,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,OAAO,GAAG,CACR,mCAAmC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,GAAG,CAAgB,oCAAoC,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAA4B;IAC9D,OAAO,IAAI,CAAC,uCAAuC,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"suggestedEditsService.js","sourceRoot":"","sources":["../../../src/editor/services/suggestedEditsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAwB,MAAM,iBAAiB,CAAC;AAiBlE,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,aAA4B,EAC5B,UAAoE,EAAE;IAEtE,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CACvB,gCAAgC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1D,aAAa,CACd,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC;IAEnD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,IAAI,IAAI,CAInD,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,kCAAkC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,gBAAwB,EACxB,eAAuB,EACvB,QAAiB;IAEjB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,UAAU;QACV,gBAAgB;QAChB,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;KAC5C,CAAC,CAAC;IACH,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,GAAG,CACR,mCAAmC,MAAM,CAAC,QAAQ,EAAE,EAAE,CACvD,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,uBAAuB,CAAC,IAAa,EAAE,QAAiB;IACtE,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,IAAI,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,OAAO,GAAG,CACR,mCAAmC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,GAAG,CAAgB,oCAAoC,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAA4B;IAC9D,OAAO,IAAI,CAAC,uCAAuC,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC"}
@@ -22,12 +22,12 @@ export function DictionaryEditor({}) {
22
22
  const [siteName, setSiteName] = useState();
23
23
  const [loading, setLoading] = useState(false);
24
24
  const [error, setError] = useState();
25
+ const activeSiteName = context?.getActiveSlotContext()?.primaryPageViewContext?.site?.name;
25
26
  useEffect(() => {
26
- const pageViewContext = context?.getActiveSlotContext()?.primaryPageViewContext;
27
- if (!pageViewContext?.site)
27
+ if (!activeSiteName)
28
28
  return;
29
- setSiteName(pageViewContext.site.name);
30
- }, [context?.activeSlotId, context?.slotContexts]);
29
+ setSiteName(activeSiteName);
30
+ }, [context?.activeSlotId, activeSiteName]);
31
31
  useEffect(() => {
32
32
  const loadSites = async () => {
33
33
  setLoading(true);
@@ -46,9 +46,9 @@ export function DictionaryEditor({}) {
46
46
  };
47
47
  loadSites();
48
48
  }, []);
49
- const currentItemDescriptor = context?.currentItemDescriptor;
49
+ const currentItemLanguage = context?.currentItemDescriptor?.language;
50
50
  useEffect(() => {
51
- if (!siteName || !currentItemDescriptor)
51
+ if (!siteName || !currentItemLanguage)
52
52
  return;
53
53
  const loadDictionary = async (site, language) => {
54
54
  setLoading(true);
@@ -65,8 +65,8 @@ export function DictionaryEditor({}) {
65
65
  setLoading(false);
66
66
  }
67
67
  };
68
- loadDictionary(siteName, currentItemDescriptor.language);
69
- }, [siteName, currentItemDescriptor]);
68
+ loadDictionary(siteName, currentItemLanguage);
69
+ }, [siteName, currentItemLanguage]);
70
70
  useEffect(() => {
71
71
  const findAllKeys = (component, keys) => {
72
72
  component.renderedDictionaryKeys.forEach((k) => {
@@ -1 +1 @@
1
- {"version":3,"file":"DictionaryEditor.js","sourceRoot":"","sources":["../../../src/editor/sidebar/DictionaryEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DictionaryEditor.js","sourceRoot":"","sources":["../../../src/editor/sidebar/DictionaryEditor.tsx"],"names":[],"mappings":"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"}
@@ -18,12 +18,14 @@ export function SharedFolderSelectorDialog(props) {
18
18
  const normalizedInitialFolderId = normalizeItemId(props.initialFolderId);
19
19
  const openedAtRef = useRef(Date.now());
20
20
  const suppressNextImplicitCloseRef = useRef(false);
21
+ const selectionRequestRef = useRef(0);
21
22
  const [selectedItem, setSelectedItem] = useState(null);
22
23
  useEffect(() => {
23
24
  let isMounted = true;
24
25
  const initializeSelection = async () => {
25
26
  if (!normalizedInitialFolderId)
26
27
  return;
28
+ const requestId = ++selectionRequestRef.current;
27
29
  // Set immediate selection for visual highlight while permissions are loading.
28
30
  setSelectedItem({
29
31
  id: normalizedInitialFolderId,
@@ -36,7 +38,7 @@ export function SharedFolderSelectorDialog(props) {
36
38
  version: 0,
37
39
  language: props.language,
38
40
  });
39
- if (!isMounted)
41
+ if (!isMounted || selectionRequestRef.current !== requestId)
40
42
  return;
41
43
  setSelectedItem({
42
44
  id: normalizedInitialFolderId,
@@ -80,14 +82,26 @@ export function SharedFolderSelectorDialog(props) {
80
82
  suppressNextImplicitCloseRef.current = true;
81
83
  }, children: [_jsx(StyledDialogTitle, { icon: _jsx(FolderTree, { strokeWidth: 1 }), title: props.header ?? "Select Shared Folder" }), _jsxs("div", { className: "flex h-full flex-1 flex-col overflow-hidden", children: [_jsx("div", { className: "relative min-h-0 flex-1 px-6 pt-6 pb-0", children: _jsx("div", { className: "h-full overflow-hidden rounded-xl bg-white p-1", children: _jsx(ScrollingContentTree, { selectedItemId: selectedItem?.id ?? normalizedInitialFolderId, expandedItemId: normalizedInitialFolderId, rootItemId: rootItemId, onSelectionChange: async (node) => {
82
84
  if (!node[0]) {
85
+ selectionRequestRef.current += 1;
83
86
  setSelectedItem(null);
84
87
  return;
85
88
  }
86
- const item = await props.editContext.itemsRepository.getItem(node[0]);
87
- setSelectedItem({
89
+ const requestId = ++selectionRequestRef.current;
90
+ const nextSelection = {
88
91
  id: node[0].id,
89
92
  version: 0,
90
93
  language: props.language,
94
+ };
95
+ // The tree updates its selected row synchronously. Clear the
96
+ // previous folder's permission at the same time so the user
97
+ // cannot submit that stale folder while this lookup is in
98
+ // flight.
99
+ setSelectedItem({ ...nextSelection, canCreate: false });
100
+ const item = await props.editContext.itemsRepository.getItem(node[0]);
101
+ if (selectionRequestRef.current !== requestId)
102
+ return;
103
+ setSelectedItem({
104
+ ...nextSelection,
91
105
  canCreate: item?.canCreate ?? false,
92
106
  });
93
107
  } }) }) }), _jsxs(DialogButtons, { hideBorder: true, className: "mt-4", children: [_jsx(Button, { onClick: handleCancel, variant: "ghost", children: "Cancel" }), _jsx(Button, { onClick: handleOk, variant: "default", disabled: !selectedItem || !selectedItem.canCreate, className: "min-w-[140px]", children: props.label ?? "Use folder" })] })] })] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"SharedFolderSelectorDialog.js","sourceRoot":"","sources":["../../../src/editor/ui/SharedFolderSelectorDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SharedFolderSelectorDialog.js","sourceRoot":"","sources":["../../../src/editor/ui/SharedFolderSelectorDialog.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const version = "0.3.12767";
2
- export declare const buildDate = "2026-07-18 07:57:23";
1
+ export declare const version = "0.3.12768";
2
+ export declare const buildDate = "2026-07-19 21:10:33";
package/dist/revision.js CHANGED
@@ -1,3 +1,3 @@
1
- export const version = "0.3.12767";
2
- export const buildDate = "2026-07-18 07:57:23";
1
+ export const version = "0.3.12768";
2
+ export const buildDate = "2026-07-19 21:10:33";
3
3
  //# sourceMappingURL=revision.js.map
package/dist/types.d.ts CHANGED
@@ -781,6 +781,8 @@ export interface SuggestedEdit {
781
781
  mainItemVersion: number;
782
782
  mainItemName?: string;
783
783
  itemId: string;
784
+ itemLanguage?: string;
785
+ itemVersion?: number;
784
786
  itemName?: string;
785
787
  fieldId: string;
786
788
  oldValue: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@parhelia/core",
3
- "version": "0.3.12767",
3
+ "version": "0.3.12768",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },